summaryrefslogtreecommitdiff
path: root/languages
diff options
context:
space:
mode:
authorPierre Schmitz <pierre@archlinux.de>2008-08-15 01:29:47 +0200
committerPierre Schmitz <pierre@archlinux.de>2008-08-15 01:29:47 +0200
commit370e83bb0dfd0c70de268c93bf07ad5ee0897192 (patch)
tree491674f4c242e4d6ba0d04eafa305174c35a3391 /languages
parentf4debf0f12d0524d2b2427c55ea3f16b680fad97 (diff)
Update auf 1.13.0
Diffstat (limited to 'languages')
-rw-r--r--languages/Language.php445
-rw-r--r--languages/LanguageConverter.php896
-rw-r--r--languages/Names.php45
-rw-r--r--languages/classes/LanguageAr.php4
-rw-r--r--languages/classes/LanguageAz.php4
-rw-r--r--languages/classes/LanguageBat_smg.php5
-rw-r--r--languages/classes/LanguageBe.php5
-rw-r--r--languages/classes/LanguageBe_tarask.php26
-rw-r--r--languages/classes/LanguageBg.php8
-rw-r--r--languages/classes/LanguageBs.php11
-rw-r--r--languages/classes/LanguageCs.php71
-rw-r--r--languages/classes/LanguageCu.php11
-rw-r--r--languages/classes/LanguageCy.php2
-rw-r--r--languages/classes/LanguageDsb.php6
-rw-r--r--languages/classes/LanguageEo.php9
-rw-r--r--languages/classes/LanguageEt.php5
-rw-r--r--languages/classes/LanguageFi.php16
-rw-r--r--languages/classes/LanguageFr.php7
-rw-r--r--languages/classes/LanguageGa.php7
-rw-r--r--languages/classes/LanguageGsw.php9
-rw-r--r--languages/classes/LanguageHe.php6
-rw-r--r--languages/classes/LanguageHr.php5
-rw-r--r--languages/classes/LanguageHsb.php4
-rw-r--r--languages/classes/LanguageHu.php10
-rw-r--r--languages/classes/LanguageHy.php12
-rw-r--r--languages/classes/LanguageJa.php5
-rw-r--r--languages/classes/LanguageKaa.php31
-rw-r--r--languages/classes/LanguageKk.deps.php4
-rw-r--r--languages/classes/LanguageKk.php51
-rw-r--r--languages/classes/LanguageKk_cyrl.php22
-rw-r--r--languages/classes/LanguageKm.php17
-rw-r--r--languages/classes/LanguageKsh.php5
-rw-r--r--languages/classes/LanguageKu.deps.php5
-rw-r--r--languages/classes/LanguageKu.php29
-rw-r--r--languages/classes/LanguageKu_ku.php12
-rw-r--r--languages/classes/LanguageLa.php12
-rw-r--r--languages/classes/LanguageLt.php6
-rw-r--r--languages/classes/LanguageLv.php8
-rw-r--r--languages/classes/LanguageMt.php22
-rw-r--r--languages/classes/LanguagePl.php6
-rw-r--r--languages/classes/LanguagePt_br.php6
-rw-r--r--languages/classes/LanguageRmy.php5
-rw-r--r--languages/classes/LanguageRu.php7
-rw-r--r--languages/classes/LanguageSk.php5
-rw-r--r--languages/classes/LanguageSl.php7
-rw-r--r--languages/classes/LanguageSr.deps.php3
-rw-r--r--languages/classes/LanguageSr.php45
-rw-r--r--languages/classes/LanguageSr_ec.php12
-rw-r--r--languages/classes/LanguageSr_el.deps.php1
-rw-r--r--languages/classes/LanguageSr_el.php12
-rw-r--r--languages/classes/LanguageTg.php104
-rw-r--r--languages/classes/LanguageTr.php5
-rw-r--r--languages/classes/LanguageTyv.php18
-rw-r--r--languages/classes/LanguageUk.php15
-rw-r--r--languages/classes/LanguageWa.php10
-rw-r--r--languages/classes/LanguageYue.php4
-rw-r--r--languages/classes/LanguageZh.deps.php2
-rw-r--r--languages/classes/LanguageZh.php91
-rw-r--r--languages/classes/LanguageZh_hans.php5
-rw-r--r--languages/messages/MessagesAb.php13
-rw-r--r--languages/messages/MessagesAf.php1808
-rw-r--r--languages/messages/MessagesAk.php5
-rw-r--r--languages/messages/MessagesAln.php337
-rw-r--r--languages/messages/MessagesAls.php9
-rw-r--r--languages/messages/MessagesAm.php1838
-rw-r--r--languages/messages/MessagesAn.php1245
-rw-r--r--languages/messages/MessagesAng.php234
-rw-r--r--languages/messages/MessagesAr.php2068
-rw-r--r--languages/messages/MessagesArc.php39
-rw-r--r--languages/messages/MessagesArn.php108
-rw-r--r--languages/messages/MessagesArz.php2860
-rw-r--r--languages/messages/MessagesAs.php1007
-rw-r--r--languages/messages/MessagesAst.php1186
-rw-r--r--languages/messages/MessagesAv.php32
-rw-r--r--languages/messages/MessagesAvk.php960
-rw-r--r--languages/messages/MessagesAy.php26
-rw-r--r--languages/messages/MessagesAz.php128
-rw-r--r--languages/messages/MessagesBa.php167
-rw-r--r--languages/messages/MessagesBar.php36
-rw-r--r--languages/messages/MessagesBat_smg.php1446
-rw-r--r--languages/messages/MessagesBcc.php2838
-rw-r--r--languages/messages/MessagesBcl.php1248
-rw-r--r--languages/messages/MessagesBe.php1423
-rw-r--r--languages/messages/MessagesBe_tarask.php2244
-rw-r--r--languages/messages/MessagesBe_x_old.php9
-rw-r--r--languages/messages/MessagesBg.php1883
-rw-r--r--languages/messages/MessagesBh.php9
-rw-r--r--languages/messages/MessagesBi.php19
-rw-r--r--languages/messages/MessagesBm.php47
-rw-r--r--languages/messages/MessagesBn.php434
-rw-r--r--languages/messages/MessagesBo.php231
-rw-r--r--languages/messages/MessagesBpy.php631
-rw-r--r--languages/messages/MessagesBr.php915
-rw-r--r--languages/messages/MessagesBs.php742
-rw-r--r--languages/messages/MessagesBug.php107
-rw-r--r--languages/messages/MessagesCa.php1190
-rw-r--r--languages/messages/MessagesCbk_zam.php11
-rw-r--r--languages/messages/MessagesCdo.php152
-rw-r--r--languages/messages/MessagesCe.php58
-rw-r--r--languages/messages/MessagesCeb.php387
-rw-r--r--languages/messages/MessagesCh.php1148
-rw-r--r--languages/messages/MessagesChr.php26
-rw-r--r--languages/messages/MessagesCo.php87
-rw-r--r--languages/messages/MessagesCrh.php4
-rw-r--r--languages/messages/MessagesCrh_cyrl.php498
-rw-r--r--languages/messages/MessagesCrh_latn.php478
-rw-r--r--languages/messages/MessagesCs.php1280
-rw-r--r--languages/messages/MessagesCsb.php116
-rw-r--r--languages/messages/MessagesCu.php488
-rw-r--r--languages/messages/MessagesCv.php1236
-rw-r--r--languages/messages/MessagesCy.php1910
-rw-r--r--languages/messages/MessagesDa.php1366
-rw-r--r--languages/messages/MessagesDe.php1426
-rw-r--r--languages/messages/MessagesDe_formal.php239
-rw-r--r--languages/messages/MessagesDiq.php271
-rw-r--r--languages/messages/MessagesDk.php11
-rw-r--r--languages/messages/MessagesDsb.php1305
-rw-r--r--languages/messages/MessagesDv.php79
-rw-r--r--languages/messages/MessagesDz.php685
-rw-r--r--languages/messages/MessagesEe.php72
-rw-r--r--languages/messages/MessagesEl.php1255
-rw-r--r--languages/messages/MessagesEml.php25
-rw-r--r--languages/messages/MessagesEn.php2002
-rw-r--r--languages/messages/MessagesEnRTL.php9
-rw-r--r--languages/messages/MessagesEn_gb.php60
-rw-r--r--languages/messages/MessagesEo.php2220
-rw-r--r--languages/messages/MessagesEs.php1411
-rw-r--r--languages/messages/MessagesEt.php487
-rw-r--r--languages/messages/MessagesEu.php1370
-rw-r--r--languages/messages/MessagesExt.php808
-rw-r--r--languages/messages/MessagesFa.php1145
-rw-r--r--languages/messages/MessagesFf.php23
-rw-r--r--languages/messages/MessagesFi.php1228
-rw-r--r--languages/messages/MessagesFiu_vro.php464
-rw-r--r--languages/messages/MessagesFj.php38
-rw-r--r--languages/messages/MessagesFo.php403
-rw-r--r--languages/messages/MessagesFr.php1436
-rw-r--r--languages/messages/MessagesFrc.php117
-rw-r--r--languages/messages/MessagesFrp.php409
-rw-r--r--languages/messages/MessagesFur.php767
-rw-r--r--languages/messages/MessagesFy.php1393
-rw-r--r--languages/messages/MessagesGa.php670
-rw-r--r--languages/messages/MessagesGag.php146
-rw-r--r--languages/messages/MessagesGan.php631
-rw-r--r--languages/messages/MessagesGd.php151
-rw-r--r--languages/messages/MessagesGl.php1615
-rw-r--r--languages/messages/MessagesGlk.php19
-rw-r--r--languages/messages/MessagesGn.php462
-rw-r--r--languages/messages/MessagesGot.php476
-rw-r--r--languages/messages/MessagesGrc.php1487
-rw-r--r--languages/messages/MessagesGsw.php183
-rw-r--r--languages/messages/MessagesGu.php634
-rw-r--r--languages/messages/MessagesGv.php1062
-rw-r--r--languages/messages/MessagesHak.php401
-rw-r--r--languages/messages/MessagesHaw.php445
-rw-r--r--languages/messages/MessagesHe.php1409
-rw-r--r--languages/messages/MessagesHi.php2643
-rw-r--r--languages/messages/MessagesHif.php9
-rw-r--r--languages/messages/MessagesHif_latn.php1019
-rw-r--r--languages/messages/MessagesHil.php310
-rw-r--r--languages/messages/MessagesHr.php1143
-rw-r--r--languages/messages/MessagesHsb.php1325
-rw-r--r--languages/messages/MessagesHt.php777
-rw-r--r--languages/messages/MessagesHu.php1917
-rw-r--r--languages/messages/MessagesHy.php452
-rw-r--r--languages/messages/MessagesIa.php3042
-rw-r--r--languages/messages/MessagesId.php1174
-rw-r--r--languages/messages/MessagesIe.php247
-rw-r--r--languages/messages/MessagesIg.php12
-rw-r--r--languages/messages/MessagesIi.php7
-rw-r--r--languages/messages/MessagesIk.php11
-rw-r--r--languages/messages/MessagesIke_cans.php95
-rw-r--r--languages/messages/MessagesIke_latn.php82
-rw-r--r--languages/messages/MessagesIlo.php1988
-rw-r--r--languages/messages/MessagesInh.php49
-rw-r--r--languages/messages/MessagesIo.php763
-rw-r--r--languages/messages/MessagesIs.php1205
-rw-r--r--languages/messages/MessagesIt.php1342
-rw-r--r--languages/messages/MessagesIu.php5
-rw-r--r--languages/messages/MessagesJa.php855
-rw-r--r--languages/messages/MessagesJbo.php40
-rw-r--r--languages/messages/MessagesJut.php484
-rw-r--r--languages/messages/MessagesJv.php2568
-rw-r--r--languages/messages/MessagesKa.php516
-rw-r--r--languages/messages/MessagesKaa.php426
-rw-r--r--languages/messages/MessagesKab.php268
-rw-r--r--languages/messages/MessagesKg.php19
-rw-r--r--languages/messages/MessagesKk.php28
-rw-r--r--languages/messages/MessagesKk_arab.php2473
-rw-r--r--languages/messages/MessagesKk_cn.php12
-rw-r--r--languages/messages/MessagesKk_cyrl.php2444
-rw-r--r--languages/messages/MessagesKk_kz.php6
-rw-r--r--languages/messages/MessagesKk_latn.php2441
-rw-r--r--languages/messages/MessagesKk_tr.php8
-rw-r--r--languages/messages/MessagesKl.php108
-rw-r--r--languages/messages/MessagesKm.php2740
-rw-r--r--languages/messages/MessagesKn.php1667
-rw-r--r--languages/messages/MessagesKo.php953
-rw-r--r--languages/messages/MessagesKrj.php112
-rw-r--r--languages/messages/MessagesKs.php8
-rw-r--r--languages/messages/MessagesKsh.php2616
-rw-r--r--languages/messages/MessagesKu.php8
-rw-r--r--languages/messages/MessagesKu_arab.php25
-rw-r--r--languages/messages/MessagesKu_latn.php454
-rw-r--r--languages/messages/MessagesKv.php70
-rw-r--r--languages/messages/MessagesKw.php27
-rw-r--r--languages/messages/MessagesKy.php56
-rw-r--r--languages/messages/MessagesLa.php907
-rw-r--r--languages/messages/MessagesLad.php281
-rw-r--r--languages/messages/MessagesLb.php1996
-rw-r--r--languages/messages/MessagesLbe.php13
-rw-r--r--languages/messages/MessagesLfn.php359
-rw-r--r--languages/messages/MessagesLg.php107
-rw-r--r--languages/messages/MessagesLi.php1151
-rw-r--r--languages/messages/MessagesLij.php582
-rw-r--r--languages/messages/MessagesLld.php5
-rw-r--r--languages/messages/MessagesLmo.php237
-rw-r--r--languages/messages/MessagesLn.php287
-rw-r--r--languages/messages/MessagesLo.php673
-rw-r--r--languages/messages/MessagesLoz.php158
-rw-r--r--languages/messages/MessagesLt.php1074
-rw-r--r--languages/messages/MessagesLv.php1396
-rw-r--r--languages/messages/MessagesMai.php83
-rw-r--r--languages/messages/MessagesMap_bms.php74
-rw-r--r--languages/messages/MessagesMdf.php2008
-rw-r--r--languages/messages/MessagesMg.php195
-rw-r--r--languages/messages/MessagesMi.php29
-rw-r--r--languages/messages/MessagesMk.php1125
-rw-r--r--languages/messages/MessagesMl.php1660
-rw-r--r--languages/messages/MessagesMn.php2194
-rw-r--r--languages/messages/MessagesMo.php41
-rw-r--r--languages/messages/MessagesMr.php1257
-rw-r--r--languages/messages/MessagesMs.php1398
-rw-r--r--languages/messages/MessagesMt.php2615
-rw-r--r--languages/messages/MessagesMwl.php660
-rw-r--r--languages/messages/MessagesMy.php283
-rw-r--r--languages/messages/MessagesMyv.php1275
-rw-r--r--languages/messages/MessagesMzn.php6
-rw-r--r--languages/messages/MessagesNa.php32
-rw-r--r--languages/messages/MessagesNah.php1113
-rw-r--r--languages/messages/MessagesNan.php152
-rw-r--r--languages/messages/MessagesNap.php72
-rw-r--r--languages/messages/MessagesNb.php6
-rw-r--r--languages/messages/MessagesNds.php1775
-rw-r--r--languages/messages/MessagesNds_nl.php2254
-rw-r--r--languages/messages/MessagesNe.php82
-rw-r--r--languages/messages/MessagesNew.php139
-rw-r--r--languages/messages/MessagesNl.php1819
-rw-r--r--languages/messages/MessagesNn.php1089
-rw-r--r--languages/messages/MessagesNo.php1562
-rw-r--r--languages/messages/MessagesNov.php106
-rw-r--r--languages/messages/MessagesNso.php177
-rw-r--r--languages/messages/MessagesNv.php3
-rw-r--r--languages/messages/MessagesNy.php12
-rw-r--r--languages/messages/MessagesOc.php2302
-rw-r--r--languages/messages/MessagesOr.php9
-rw-r--r--languages/messages/MessagesOs.php467
-rw-r--r--languages/messages/MessagesPa.php408
-rw-r--r--languages/messages/MessagesPag.php68
-rw-r--r--languages/messages/MessagesPam.php2370
-rw-r--r--languages/messages/MessagesPap.php92
-rw-r--r--languages/messages/MessagesPdc.php19
-rw-r--r--languages/messages/MessagesPfl.php37
-rw-r--r--languages/messages/MessagesPi.php9
-rw-r--r--languages/messages/MessagesPih.php15
-rw-r--r--languages/messages/MessagesPl.php2775
-rw-r--r--languages/messages/MessagesPms.php474
-rw-r--r--languages/messages/MessagesPnt.php892
-rw-r--r--languages/messages/MessagesPs.php956
-rw-r--r--languages/messages/MessagesPt.php1419
-rw-r--r--languages/messages/MessagesPt_br.php2642
-rw-r--r--languages/messages/MessagesQu.php1126
-rw-r--r--languages/messages/MessagesRif.php646
-rw-r--r--languages/messages/MessagesRm.php296
-rw-r--r--languages/messages/MessagesRmy.php105
-rw-r--r--languages/messages/MessagesRo.php1711
-rw-r--r--languages/messages/MessagesRoa_rup.php44
-rw-r--r--languages/messages/MessagesRu.php1588
-rw-r--r--languages/messages/MessagesRuq.php5
-rw-r--r--languages/messages/MessagesRuq_cyrl.php122
-rw-r--r--languages/messages/MessagesRuq_grek.php5
-rw-r--r--languages/messages/MessagesRuq_latn.php122
-rw-r--r--languages/messages/MessagesSa.php41
-rw-r--r--languages/messages/MessagesSah.php1190
-rw-r--r--languages/messages/MessagesSc.php155
-rw-r--r--languages/messages/MessagesScn.php900
-rw-r--r--languages/messages/MessagesSco.php232
-rw-r--r--languages/messages/MessagesSd.php840
-rw-r--r--languages/messages/MessagesSdc.php473
-rw-r--r--languages/messages/MessagesSe.php221
-rw-r--r--languages/messages/MessagesSei.php208
-rw-r--r--languages/messages/MessagesSg.php7
-rw-r--r--languages/messages/MessagesShi.php134
-rw-r--r--languages/messages/MessagesSi.php268
-rw-r--r--languages/messages/MessagesSimple.php10
-rw-r--r--languages/messages/MessagesSk.php1279
-rw-r--r--languages/messages/MessagesSl.php336
-rw-r--r--languages/messages/MessagesSm.php64
-rw-r--r--languages/messages/MessagesSma.php268
-rw-r--r--languages/messages/MessagesSn.php31
-rw-r--r--languages/messages/MessagesSo.php110
-rw-r--r--languages/messages/MessagesSq.php1238
-rw-r--r--languages/messages/MessagesSr.php4
-rw-r--r--languages/messages/MessagesSr_ec.php1308
-rw-r--r--languages/messages/MessagesSr_el.php287
-rw-r--r--languages/messages/MessagesSrn.php1186
-rw-r--r--languages/messages/MessagesSs.php102
-rw-r--r--languages/messages/MessagesSt.php23
-rw-r--r--languages/messages/MessagesStq.php1270
-rw-r--r--languages/messages/MessagesSu.php1352
-rw-r--r--languages/messages/MessagesSv.php1745
-rw-r--r--languages/messages/MessagesSw.php226
-rw-r--r--languages/messages/MessagesSzl.php2465
-rw-r--r--languages/messages/MessagesTa.php1622
-rw-r--r--languages/messages/MessagesTe.php1218
-rw-r--r--languages/messages/MessagesTet.php335
-rw-r--r--languages/messages/MessagesTg.php2343
-rw-r--r--languages/messages/MessagesTg_cyrl.php2420
-rw-r--r--languages/messages/MessagesTh.php978
-rw-r--r--languages/messages/MessagesTi.php35
-rw-r--r--languages/messages/MessagesTk.php165
-rw-r--r--languages/messages/MessagesTl.php193
-rw-r--r--languages/messages/MessagesTlh.php10
-rw-r--r--languages/messages/MessagesTn.php40
-rw-r--r--languages/messages/MessagesTo.php194
-rw-r--r--languages/messages/MessagesTokipona.php43
-rw-r--r--languages/messages/MessagesTp.php10
-rw-r--r--languages/messages/MessagesTpi.php64
-rw-r--r--languages/messages/MessagesTr.php1358
-rw-r--r--languages/messages/MessagesTs.php356
-rw-r--r--languages/messages/MessagesTt.php700
-rw-r--r--languages/messages/MessagesTt_cyrl.php1024
-rw-r--r--languages/messages/MessagesTt_latn.php727
-rw-r--r--languages/messages/MessagesTy.php39
-rw-r--r--languages/messages/MessagesTyv.php113
-rw-r--r--languages/messages/MessagesUdm.php66
-rw-r--r--languages/messages/MessagesUg.php22
-rw-r--r--languages/messages/MessagesUk.php2438
-rw-r--r--languages/messages/MessagesUr.php149
-rw-r--r--languages/messages/MessagesUz.php264
-rw-r--r--languages/messages/MessagesVe.php8
-rw-r--r--languages/messages/MessagesVec.php2893
-rw-r--r--languages/messages/MessagesVi.php1377
-rw-r--r--languages/messages/MessagesVls.php11
-rw-r--r--languages/messages/MessagesVo.php1260
-rw-r--r--languages/messages/MessagesWa.php280
-rw-r--r--languages/messages/MessagesWar.php98
-rw-r--r--languages/messages/MessagesWo.php751
-rw-r--r--languages/messages/MessagesWuu.php138
-rw-r--r--languages/messages/MessagesXal.php9
-rw-r--r--languages/messages/MessagesXh.php33
-rw-r--r--languages/messages/MessagesXmf.php583
-rw-r--r--languages/messages/MessagesYdd.php5
-rw-r--r--languages/messages/MessagesYi.php1188
-rw-r--r--languages/messages/MessagesYo.php158
-rw-r--r--languages/messages/MessagesYue.php1190
-rw-r--r--languages/messages/MessagesZa.php35
-rw-r--r--languages/messages/MessagesZea.php1092
-rw-r--r--languages/messages/MessagesZh.php50
-rw-r--r--languages/messages/MessagesZh_classical.php1077
-rw-r--r--languages/messages/MessagesZh_cn.php10
-rw-r--r--languages/messages/MessagesZh_hans.php1149
-rw-r--r--languages/messages/MessagesZh_hant.php1150
-rw-r--r--languages/messages/MessagesZh_hk.php7
-rw-r--r--languages/messages/MessagesZh_min_nan.php8
-rw-r--r--languages/messages/MessagesZh_mo.php10
-rw-r--r--languages/messages/MessagesZh_my.php10
-rw-r--r--languages/messages/MessagesZh_sg.php9
-rw-r--r--languages/messages/MessagesZh_tw.php304
-rw-r--r--languages/messages/MessagesZh_yue.php8
-rw-r--r--languages/messages/MessagesZu.php36
371 files changed, 149555 insertions, 68513 deletions
diff --git a/languages/Language.php b/languages/Language.php
index 67ad0ca2..624e43d3 100644
--- a/languages/Language.php
+++ b/languages/Language.php
@@ -1,6 +1,9 @@
<?php
/**
- * @addtogroup Language
+ * @defgroup Language Language
+ *
+ * @file
+ * @ingroup Language
*/
if( !defined( 'MEDIAWIKI' ) ) {
@@ -24,7 +27,11 @@ if( function_exists( 'mb_strtoupper' ) ) {
mb_internal_encoding('UTF-8');
}
-/* a fake language converter */
+/**
+ * a fake language converter
+ *
+ * @ingroup Language
+ */
class FakeConverter {
var $mLang;
function FakeConverter($langobj) {$this->mLang = $langobj;}
@@ -41,24 +48,26 @@ class FakeConverter {
function armourMath($text){ return $text; }
}
-#--------------------------------------------------------------------------
-# Internationalisation code
-#--------------------------------------------------------------------------
-
+/**
+ * Internationalisation code
+ * @ingroup Language
+ */
class Language {
var $mConverter, $mVariants, $mCode, $mLoaded = false;
var $mMagicExtensions = array(), $mMagicHookDone = false;
static public $mLocalisationKeys = array( 'fallback', 'namespaceNames',
- 'skinNames', 'mathNames',
- 'bookstoreList', 'magicWords', 'messages', 'rtl', 'digitTransformTable',
+ 'skinNames', 'mathNames',
+ 'bookstoreList', 'magicWords', 'messages', 'rtl', 'digitTransformTable',
'separatorTransformTable', 'fallback8bitEncoding', 'linkPrefixExtension',
- 'defaultUserOptionOverrides', 'linkTrail', 'namespaceAliases',
- 'dateFormats', 'datePreferences', 'datePreferenceMigrationMap',
- 'defaultDateFormat', 'extraUserToggles', 'specialPageAliases' );
+ 'defaultUserOptionOverrides', 'linkTrail', 'namespaceAliases',
+ 'dateFormats', 'datePreferences', 'datePreferenceMigrationMap',
+ 'defaultDateFormat', 'extraUserToggles', 'specialPageAliases',
+ 'imageFiles'
+ );
- static public $mMergeableMapKeys = array( 'messages', 'namespaceNames', 'mathNames',
- 'dateFormats', 'defaultUserOptionOverrides', 'magicWords' );
+ static public $mMergeableMapKeys = array( 'messages', 'namespaceNames', 'mathNames',
+ 'dateFormats', 'defaultUserOptionOverrides', 'magicWords', 'imageFiles' );
static public $mMergeableListKeys = array( 'extraUserToggles' );
@@ -112,6 +121,13 @@ class Language {
'hebrew-calendar-m10-gen', 'hebrew-calendar-m11-gen', 'hebrew-calendar-m12-gen',
'hebrew-calendar-m6a-gen', 'hebrew-calendar-m6b-gen'
);
+
+ static public $mHijriCalendarMonthMsgs = array(
+ 'hijri-calendar-m1', 'hijri-calendar-m2', 'hijri-calendar-m3',
+ 'hijri-calendar-m4', 'hijri-calendar-m5', 'hijri-calendar-m6',
+ 'hijri-calendar-m7', 'hijri-calendar-m8', 'hijri-calendar-m9',
+ 'hijri-calendar-m10', 'hijri-calendar-m11', 'hijri-calendar-m12'
+ );
/**
* Create a language object for a given language code
@@ -167,17 +183,16 @@ class Language {
function initContLang() {}
/**
- * @deprecated
+ * @deprecated Use User::getDefaultOptions()
* @return array
*/
function getDefaultUserOptions() {
- trigger_error( 'Use of ' . __METHOD__ . ' is deprecated', E_USER_NOTICE );
+ wfDeprecated( __METHOD__ );
return User::getDefaultOptions();
}
function getFallbackLanguageCode() {
- $this->load();
- return $this->fallback;
+ return self::getFallbackFor( $this->mCode );
}
/**
@@ -220,7 +235,7 @@ class Language {
* echo $mw_ns; // prints 'MediaWiki'
* </code>
*
- * @param int $index the array key of the namespace to return
+ * @param $index Int: the array key of the namespace to return
* @return mixed, string if the namespace value exists, otherwise false
*/
function getNsText( $index ) {
@@ -245,7 +260,7 @@ class Language {
* Only matches namespace names for the current language, not the
* canonical ones defined in Namespace.php.
*
- * @param string $text
+ * @param $text String
* @return mixed An integer if $text is a valid value otherwise false
*/
function getLocalNsIndex( $text ) {
@@ -258,20 +273,20 @@ class Language {
* Get a namespace key by value, case insensitive. Canonical namespace
* names override custom ones defined for the current language.
*
- * @param string $text
+ * @param $text String
* @return mixed An integer if $text is a valid value otherwise false
*/
function getNsIndex( $text ) {
$this->load();
$lctext = $this->lc($text);
- if( ( $ns = Namespace::getCanonicalIndex( $lctext ) ) !== null ) return $ns;
+ if( ( $ns = MWNamespace::getCanonicalIndex( $lctext ) ) !== null ) return $ns;
return isset( $this->mNamespaceIds[$lctext] ) ? $this->mNamespaceIds[$lctext] : false;
}
/**
* short names for language variants used for language conversion links.
*
- * @param string $code
+ * @param $code String
* @return string
*/
function getVariantname( $code ) {
@@ -326,6 +341,11 @@ class Language {
return $this->datePreferenceMigrationMap;
}
+ function getImageFile( $image ) {
+ $this->load();
+ return $this->imageFiles[$image];
+ }
+
function getDefaultUserOptionOverrides() {
$this->load();
# XXX - apparently some languageas get empty arrays, didn't get to it yet -- midom
@@ -429,14 +449,17 @@ class Language {
function getHebrewCalendarMonthNameGen( $key ) {
return $this->getMessageFromDB( self::$mHebrewCalendarMonthGenMsgs[$key-1] );
}
-
-
+
+ function getHijriCalendarMonthName( $key ) {
+ return $this->getMessageFromDB( self::$mHijriCalendarMonthMsgs[$key-1] );
+ }
+
/**
* Used by date() and time() to adjust the time output.
- * @public
- * @param int $ts the time in date('YmdHis') format
- * @param mixed $tz adjust the time by this amount (default false,
- * mean we get user timecorrection setting)
+ *
+ * @param $ts Int the time in date('YmdHis') format
+ * @param $tz Mixed: adjust the time by this amount (default false, mean we
+ * get user timecorrection setting)
* @return int
*/
function userAdjust( $ts, $tz = false ) {
@@ -515,6 +538,11 @@ class Language {
* xjn n (month number) in Hebrew calendar
* xjY Y (full year) in Hebrew calendar
*
+ * xmj j (day number) in Hijri calendar
+ * xmF F (month name) in Hijri calendar
+ * xmn n (month number) in Hijri calendar
+ * xmY Y (full year) in Hijri calendar
+ *
* xkY Y (full year) in Thai solar calendar. Months and days are
* identical to the Gregorian calendar
*
@@ -530,8 +558,8 @@ class Language {
* Input timestamp is assumed to be pre-normalized to the desired local
* time zone, if any.
*
- * @param string $format
- * @param string $ts 14-character timestamp
+ * @param $format String
+ * @param $ts String: 14-character timestamp
* YYYYMMDDHHMMSS
* 01234567890123
*/
@@ -544,6 +572,7 @@ class Language {
$rawToggle = false;
$iranian = false;
$hebrew = false;
+ $hijri = false;
$thai = false;
for ( $p = 0; $p < strlen( $format ); $p++ ) {
$num = false;
@@ -552,7 +581,7 @@ class Language {
$code .= $format[++$p];
}
- if ( ( $code === 'xi' || $code == 'xj' || $code == 'xk' ) && $p < strlen( $format ) - 1 ) {
+ if ( ( $code === 'xi' || $code == 'xj' || $code == 'xk' || $code == 'xm' ) && $p < strlen( $format ) - 1 ) {
$code .= $format[++$p];
}
@@ -593,6 +622,10 @@ class Language {
if ( !$iranian ) $iranian = self::tsToIranian( $ts );
$num = $iranian[2];
break;
+ case 'xmj':
+ if ( !$hijri ) $hijri = self::tsToHijri( $ts );
+ $num = $hijri[2];
+ break;
case 'xjj':
if ( !$hebrew ) $hebrew = self::tsToHebrew( $ts );
$num = $hebrew[2];
@@ -625,6 +658,10 @@ class Language {
if ( !$iranian ) $iranian = self::tsToIranian( $ts );
$s .= $this->getIranianCalendarMonthName( $iranian[1] );
break;
+ case 'xmF':
+ if ( !$hijri ) $hijri = self::tsToHijri( $ts );
+ $s .= $this->getHijriCalendarMonthName( $hijri[1] );
+ break;
case 'xjF':
if ( !$hebrew ) $hebrew = self::tsToHebrew( $ts );
$s .= $this->getHebrewCalendarMonthName( $hebrew[1] );
@@ -642,6 +679,10 @@ class Language {
if ( !$iranian ) $iranian = self::tsToIranian( $ts );
$num = $iranian[1];
break;
+ case 'xmn':
+ if ( !$hijri ) $hijri = self::tsToHijri ( $ts );
+ $num = $hijri[1];
+ break;
case 'xjn':
if ( !$hebrew ) $hebrew = self::tsToHebrew( $ts );
$num = $hebrew[1];
@@ -665,6 +706,10 @@ class Language {
if ( !$iranian ) $iranian = self::tsToIranian( $ts );
$num = $iranian[0];
break;
+ case 'xmY':
+ if ( !$hijri ) $hijri = self::tsToHijri( $ts );
+ $num = $hijri[0];
+ break;
case 'xjY':
if ( !$hebrew ) $hebrew = self::tsToHebrew( $ts );
$num = $hebrew[0];
@@ -817,6 +862,47 @@ class Language {
return array($jy, $jm, $jd);
}
+ /**
+ * Converting Gregorian dates to Hijri dates.
+ *
+ * Based on a PHP-Nuke block by Sharjeel which is released under GNU/GPL license
+ *
+ * @link http://phpnuke.org/modules.php?name=News&file=article&sid=8234&mode=thread&order=0&thold=0
+ */
+ private static function tsToHijri ( $ts ) {
+ $year = substr( $ts, 0, 4 );
+ $month = substr( $ts, 4, 2 );
+ $day = substr( $ts, 6, 2 );
+
+ $zyr = $year;
+ $zd=$day;
+ $zm=$month;
+ $zy=$zyr;
+
+
+
+ if (($zy>1582)||(($zy==1582)&&($zm>10))||(($zy==1582)&&($zm==10)&&($zd>14)))
+ {
+
+
+ $zjd=(int)((1461*($zy + 4800 + (int)( ($zm-14) /12) ))/4) + (int)((367*($zm-2-12*((int)(($zm-14)/12))))/12)-(int)((3*(int)(( ($zy+4900+(int)(($zm-14)/12))/100)))/4)+$zd-32075;
+ }
+ else
+ {
+ $zjd = 367*$zy-(int)((7*($zy+5001+(int)(($zm-9)/7)))/4)+(int)((275*$zm)/9)+$zd+1729777;
+ }
+
+ $zl=$zjd-1948440+10632;
+ $zn=(int)(($zl-1)/10631);
+ $zl=$zl-10631*$zn+354;
+ $zj=((int)((10985-$zl)/5316))*((int)((50*$zl)/17719))+((int)($zl/5670))*((int)((43*$zl)/15238));
+ $zl=$zl-((int)((30-$zj)/15))*((int)((17719*$zj)/50))-((int)($zj/16))*((int)((15238*$zj)/43))+29;
+ $zm=(int)((24*$zl)/709);
+ $zd=$zl-(int)((709*$zm)/24);
+ $zy=30*$zn+$zj-30;
+
+ return array ($zy, $zm, $zd);
+ }
/**
* Converting Gregorian dates to Hebrew dates.
@@ -994,7 +1080,7 @@ class Language {
*
* Link: http://en.wikipedia.org/wiki/Thai_solar_calendar
*
- * @param string $ts 14-character timestamp
+ * @param $ts String: 14-character timestamp
* @return array converted year, month, day
*/
private static function tsToThai( $ts ) {
@@ -1107,7 +1193,7 @@ class Language {
* }
*</code>
*
- * @param mixed $usePrefs: if true, the user's preference is used
+ * @param $usePrefs Mixed: if true, the user's preference is used
* if false, the site/language default is used
* if int/string, assumed to be a format.
* @return string
@@ -1135,14 +1221,13 @@ class Language {
}
/**
- * @public
- * @param mixed $ts the time format which needs to be turned into a
- * date('YmdHis') format with wfTimestamp(TS_MW,$ts)
- * @param bool $adj whether to adjust the time output according to the
- * user configured offset ($timecorrection)
- * @param mixed $format true to use user's date format preference
- * @param string $timecorrection the time offset as returned by
- * validateTimeZone() in Special:Preferences
+ * @param $ts Mixed: the time format which needs to be turned into a
+ * date('YmdHis') format with wfTimestamp(TS_MW,$ts)
+ * @param $adj Bool: whether to adjust the time output according to the
+ * user configured offset ($timecorrection)
+ * @param $format Mixed: true to use user's date format preference
+ * @param $timecorrection String: the time offset as returned by
+ * validateTimeZone() in Special:Preferences
* @return string
*/
function date( $ts, $adj = false, $format = true, $timecorrection = false ) {
@@ -1159,16 +1244,15 @@ class Language {
}
/**
- * @public
- * @param mixed $ts the time format which needs to be turned into a
- * date('YmdHis') format with wfTimestamp(TS_MW,$ts)
- * @param bool $adj whether to adjust the time output according to the
- * user configured offset ($timecorrection)
- * @param mixed $format true to use user's date format preference
- * @param string $timecorrection the time offset as returned by
- * validateTimeZone() in Special:Preferences
- * @return string
- */
+ * @param $ts Mixed: the time format which needs to be turned into a
+ * date('YmdHis') format with wfTimestamp(TS_MW,$ts)
+ * @param $adj Bool: whether to adjust the time output according to the
+ * user configured offset ($timecorrection)
+ * @param $format Mixed: true to use user's date format preference
+ * @param $timecorrection String: the time offset as returned by
+ * validateTimeZone() in Special:Preferences
+ * @return string
+ */
function time( $ts, $adj = false, $format = true, $timecorrection = false ) {
$this->load();
if ( $adj ) {
@@ -1183,18 +1267,16 @@ class Language {
}
/**
- * @public
- * @param mixed $ts the time format which needs to be turned into a
- * date('YmdHis') format with wfTimestamp(TS_MW,$ts)
- * @param bool $adj whether to adjust the time output according to the
- * user configured offset ($timecorrection)
-
- * @param mixed $format what format to return, if it's false output the
- * default one (default true)
- * @param string $timecorrection the time offset as returned by
- * validateTimeZone() in Special:Preferences
- * @return string
- */
+ * @param $ts Mixed: the time format which needs to be turned into a
+ * date('YmdHis') format with wfTimestamp(TS_MW,$ts)
+ * @param $adj Bool: whether to adjust the time output according to the
+ * user configured offset ($timecorrection)
+ * @param $format Mixed: what format to return, if it's false output the
+ * default one (default true)
+ * @param $timecorrection String: the time offset as returned by
+ * validateTimeZone() in Special:Preferences
+ * @return string
+ */
function timeanddate( $ts, $adj = false, $format = true, $timecorrection = false) {
$this->load();
@@ -1419,8 +1501,8 @@ class Language {
* or characters which need to be converted for MySQL's
* indexing to grok it correctly. Make such changes here.
*
- * @param string $in
- * @return string
+ * @param $string String
+ * @return String
*/
function stripForSearch( $string ) {
global $wgDBtype;
@@ -1457,7 +1539,7 @@ class Language {
/**
* Get the first character of a string.
*
- * @param string $s
+ * @param $s string
* @return string
*/
function firstChar( $s ) {
@@ -1465,7 +1547,47 @@ class Language {
preg_match( '/^([\x00-\x7f]|[\xc0-\xdf][\x80-\xbf]|' .
'[\xe0-\xef][\x80-\xbf]{2}|[\xf0-\xf7][\x80-\xbf]{3})/', $s, $matches);
- return isset( $matches[1] ) ? $matches[1] : "";
+ if ( isset( $matches[1] ) ) {
+ if ( strlen( $matches[1] ) != 3 ) {
+ return $matches[1];
+ }
+
+ // Break down Hangul syllables to grab the first jamo
+ $code = utf8ToCodepoint( $matches[1] );
+ if ( $code < 0xac00 || 0xd7a4 <= $code) {
+ return $matches[1];
+ } elseif ( $code < 0xb098 ) {
+ return "\xe3\x84\xb1";
+ } elseif ( $code < 0xb2e4 ) {
+ return "\xe3\x84\xb4";
+ } elseif ( $code < 0xb77c ) {
+ return "\xe3\x84\xb7";
+ } elseif ( $code < 0xb9c8 ) {
+ return "\xe3\x84\xb9";
+ } elseif ( $code < 0xbc14 ) {
+ return "\xe3\x85\x81";
+ } elseif ( $code < 0xc0ac ) {
+ return "\xe3\x85\x82";
+ } elseif ( $code < 0xc544 ) {
+ return "\xe3\x85\x85";
+ } elseif ( $code < 0xc790 ) {
+ return "\xe3\x85\x87";
+ } elseif ( $code < 0xcc28 ) {
+ return "\xe3\x85\x88";
+ } elseif ( $code < 0xce74 ) {
+ return "\xe3\x85\x8a";
+ } elseif ( $code < 0xd0c0 ) {
+ return "\xe3\x85\x8b";
+ } elseif ( $code < 0xd30c ) {
+ return "\xe3\x85\x8c";
+ } elseif ( $code < 0xd558 ) {
+ return "\xe3\x85\x8d";
+ } else {
+ return "\xe3\x85\x8e";
+ }
+ } else {
+ return "";
+ }
}
function initEncoding() {
@@ -1564,6 +1686,7 @@ class Language {
} else {
# Fall back to English if local list is incomplete
$magicWords =& Language::getMagicWords();
+ if ( !isset($magicWords[$mw->mId]) ) { throw new MWException("Magic word not found" ); }
$rawEntry = $magicWords[$mw->mId];
}
}
@@ -1603,20 +1726,67 @@ class Language {
*/
function getSpecialPageAliases() {
$this->load();
+
+ // Cache aliases because it may be slow to load them
if ( !isset( $this->mExtendedSpecialPageAliases ) ) {
+
+ // Initialise array
$this->mExtendedSpecialPageAliases = $this->specialPageAliases;
- wfRunHooks( 'LanguageGetSpecialPageAliases',
+
+ global $wgExtensionAliasesFiles;
+ foreach ( $wgExtensionAliasesFiles as $file ) {
+
+ // Fail fast
+ if ( !file_exists($file) )
+ throw new MWException( 'Aliases file does not exist' );
+
+ $aliases = array();
+ require($file);
+
+ // Check the availability of aliases
+ if ( !isset($aliases['en']) )
+ throw new MWException( 'Malformed aliases file' );
+
+ // Merge all aliases in fallback chain
+ $code = $this->getCode();
+ do {
+ if ( !isset($aliases[$code]) ) continue;
+
+ $aliases[$code] = $this->fixSpecialPageAliases( $aliases[$code] );
+ /* Merge the aliases, THIS will break if there is special page name
+ * which looks like a numerical key, thanks to PHP...
+ * See the comments for wfArrayMerge in GlobalSettings.php. */
+ $this->mExtendedSpecialPageAliases = array_merge_recursive(
+ $this->mExtendedSpecialPageAliases, $aliases[$code] );
+
+ } while ( $code = self::getFallbackFor( $code ) );
+ }
+
+ wfRunHooks( 'LanguageGetSpecialPageAliases',
array( &$this->mExtendedSpecialPageAliases, $this->getCode() ) );
}
+
return $this->mExtendedSpecialPageAliases;
}
/**
+ * Function to fix special page aliases. Will convert the first letter to
+ * upper case and spaces to underscores. Can be given a full aliases array,
+ * in which case it will recursively fix all aliases.
+ */
+ public function fixSpecialPageAliases( $mixed ) {
+ // Work recursively until in string level
+ if ( is_array($mixed) ) {
+ $callback = array( $this, 'fixSpecialPageAliases' );
+ return array_map( $callback, $mixed );
+ }
+ return str_replace( ' ', '_', $this->ucfirst( $mixed ) );
+ }
+
+ /**
* Italic is unsuitable for some languages
*
- * @public
- *
- * @param string $text The text to be emphasized.
+ * @param $text String: the text to be emphasized.
* @return string
*/
function emphasize( $text ) {
@@ -1624,29 +1794,28 @@ class Language {
}
/**
- * Normally we output all numbers in plain en_US style, that is
- * 293,291.235 for twohundredninetythreethousand-twohundredninetyone
- * point twohundredthirtyfive. However this is not sutable for all
- * languages, some such as Pakaran want ੨੯੩,੨੯੫.੨੩੫ and others such as
- * Icelandic just want to use commas instead of dots, and dots instead
- * of commas like "293.291,235".
- *
- * An example of this function being called:
- * <code>
- * wfMsg( 'message', $wgLang->formatNum( $num ) )
- * </code>
- *
- * See LanguageGu.php for the Gujarati implementation and
- * LanguageIs.php for the , => . and . => , implementation.
- *
- * @todo check if it's viable to use localeconv() for the decimal
- * seperator thing.
- * @public
- * @param mixed $number the string to be formatted, should be an integer or
- * a floating point number.
- * @param bool $nocommafy Set to true for special numbers like dates
- * @return string
- */
+ * Normally we output all numbers in plain en_US style, that is
+ * 293,291.235 for twohundredninetythreethousand-twohundredninetyone
+ * point twohundredthirtyfive. However this is not sutable for all
+ * languages, some such as Pakaran want ੨੯੩,੨੯੫.੨੩੫ and others such as
+ * Icelandic just want to use commas instead of dots, and dots instead
+ * of commas like "293.291,235".
+ *
+ * An example of this function being called:
+ * <code>
+ * wfMsg( 'message', $wgLang->formatNum( $num ) )
+ * </code>
+ *
+ * See LanguageGu.php for the Gujarati implementation and
+ * LanguageIs.php for the , => . and . => , implementation.
+ *
+ * @todo check if it's viable to use localeconv() for the decimal
+ * seperator thing.
+ * @param $number Mixed: the string to be formatted, should be an integer
+ * or a floating point number.
+ * @param $nocommafy Bool: set to true for special numbers like dates
+ * @return string
+ */
function formatNum( $number, $nocommafy = false ) {
global $wgTranslateNumerals;
if (!$nocommafy) {
@@ -1677,7 +1846,7 @@ class Language {
/**
* Adds commas to a given number
*
- * @param mixed $_
+ * @param $_ mixed
* @return string
*/
function commafy($_) {
@@ -1698,7 +1867,7 @@ class Language {
/**
* For the credit list in includes/Credits.php (action=credits)
*
- * @param array $l
+ * @param $l Array
* @return string
*/
function listToText( $l ) {
@@ -1726,9 +1895,9 @@ class Language {
*
* If $length is negative, the string will be truncated from the beginning
*
- * @param string $string String to truncate
- * @param int $length Maximum length (excluding ellipses)
- * @param string $ellipses String to append to the truncated text
+ * @param $string String to truncate
+ * @param $length Int: maximum length (excluding ellipses)
+ * @param $ellipsis String to append to the truncated text
* @return string
*/
function truncate( $string, $length, $ellipsis = "" ) {
@@ -1767,8 +1936,8 @@ class Language {
* Grammatical transformations, needed for inflected languages
* Invoked by putting {{grammar:case|word}} in a message
*
- * @param string $word
- * @param string $case
+ * @param $word string
+ * @param $case string
* @return string
*/
function convertGrammar( $word, $case ) {
@@ -1790,8 +1959,8 @@ class Language {
*
* Example: {{plural:{{NUMBEROFARTICLES}}|article|articles}}
*
- * @param integer $count Non-localized number
- * @param array $forms Different plural forms
+ * @param $count Integer: non-localized number
+ * @param $forms Array: different plural forms
* @return string Correct form of plural for $count in this language
*/
function convertPlural( $count, $forms ) {
@@ -1805,8 +1974,8 @@ class Language {
* Checks that convertPlural was given an array and pads it to requested
* amound of forms by copying the last one.
*
- * @param integer $count How many forms should there be at least
- * @param array $forms Array of forms given to convertPlural
+ * @param $count Integer: How many forms should there be at least
+ * @param $forms Array of forms given to convertPlural
* @return array Padded array of forms or an exception if not an array
*/
protected function preConvertPlural( /* Array */ $forms, $count ) {
@@ -1818,7 +1987,7 @@ class Language {
/**
* For translaing of expiry times
- * @param string The validated block time in English
+ * @param $str String: the validated block time in English
* @return Somehow translated block time
* @see LanguageFi.php for example implementation
*/
@@ -1846,8 +2015,8 @@ class Language {
* languages like Chinese need to be segmented in order for the diff
* to be of any use
*
- * @param string $text
- * @return string
+ * @param $text String
+ * @return String
*/
function segmentForDiff( $text ) {
return $text;
@@ -1856,8 +2025,8 @@ class Language {
/**
* and unsegment to show the result
*
- * @param string $text
- * @return string
+ * @param $text String
+ * @return String
*/
function unsegmentForDiff( $text ) {
return $text;
@@ -1886,8 +2055,8 @@ class Language {
/**
* Perform output conversion on a string, and encode for safe HTML output.
- * @param string $text
- * @param bool $isTitle -- wtf?
+ * @param $text String
+ * @param $isTitle Bool -- wtf?
* @return string
* @todo this should get integrated somewhere sane
*/
@@ -1920,8 +2089,8 @@ class Language {
* actually exists in another variant. this function
* tries to find it. See e.g. LanguageZh.php
*
- * @param string $link the name of the link
- * @param mixed $nt the title object of the link
+ * @param $link String: the name of the link
+ * @param $nt Mixed: the title object of the link
* @return null the input parameters may be modified upon return
*/
function findVariantLink( &$link, &$nt ) {
@@ -1944,7 +2113,6 @@ class Language {
* for example, the preferred language variant
*
* @return string
- * @public
*/
function getExtraHashOptions() {
return $this->mConverter->getExtraHashOptions();
@@ -1965,9 +2133,10 @@ class Language {
* Enclose a string with the "no conversion" tag. This is used by
* various functions in the Parser
*
- * @param string $text text to be tagged for no conversion
+ * @param $text String: text to be tagged for no conversion
+ * @param $noParse
* @return string the tagged text
- */
+ */
function markNoConversion( $text, $noParse=false ) {
return $this->mConverter->markNoConversion( $text, $noParse );
}
@@ -1977,7 +2146,6 @@ class Language {
* which should be merged onto a link of the form [[foo]]bar.
*
* @return string
- * @public
*/
function linkTrail() {
$this->load();
@@ -2013,10 +2181,6 @@ class Language {
return self::getFileName( "$IP/languages/classes/Language", $code, '.php' );
}
- static function localisationExist( $code ){
- return ( file_exists( self::getMessagesFileName( $code ) ) || file_exists( self::getClassFileName( $code ) ) );
- }
-
static function getLocalisationArray( $code, $disableCache = false ) {
self::loadLocalisation( $code, $disableCache );
return self::$mLocalisationCache[$code];
@@ -2059,10 +2223,12 @@ class Language {
# Try the global cache
$memcKey = wfMemcKey('localisation', $code );
+ $fbMemcKey = wfMemcKey('fallback', $cache['fallback'] );
$cache = $wgMemc->get( $memcKey );
if ( $cache ) {
if ( self::isLocalisationOutOfDate( $cache ) ) {
$wgMemc->delete( $memcKey );
+ $wgMemc->delete( $fbMemcKey );
$cache = false;
wfDebug( "Language::loadLocalisation(): localisation cache for $code had expired\n" );
} else {
@@ -2087,12 +2253,12 @@ class Language {
$filename = self::getMessagesFileName( $code );
if ( !file_exists( $filename ) ) {
wfDebug( "Language::loadLocalisation(): no localisation file for $code, using implicit fallback to en\n" );
- $cache = array();
+ $cache = compact( self::$mLocalisationKeys ); // Set correct fallback
$deps = array();
} else {
$deps = array( $filename => filemtime( $filename ) );
require( $filename );
- $cache = compact( self::$mLocalisationKeys );
+ $cache = compact( self::$mLocalisationKeys );
wfDebug( "Language::loadLocalisation(): got localisation for $code from source\n" );
}
@@ -2151,6 +2317,7 @@ class Language {
self::$mLocalisationCache[$code] = $cache;
if ( !$disableCache ) {
$wgMemc->set( $memcKey, $cache );
+ $wgMemc->set( $fbMemcKey, (string) $cache['fallback'] );
}
wfProfileOut( __METHOD__ );
@@ -2184,8 +2351,36 @@ class Language {
* Get the fallback for a given language
*/
static function getFallbackFor( $code ) {
+ // Shortcut
+ if ( $code === 'en' ) return false;
+
+ // Local cache
+ static $cache = array();
+ // Quick return
+ if ( isset($cache[$code]) ) return $cache[$code];
+
+ // Try memcache
+ global $wgMemc;
+ $memcKey = wfMemcKey( 'fallback', $code );
+ $fbcode = $wgMemc->get( $memcKey );
+
+ if ( is_string($fbcode) ) {
+ // False is stored as a string to detect failures in memcache properly
+ if ( $fbcode === '' ) $fbcode = false;
+
+ // Update local cache and return
+ $cache[$code] = $fbcode;
+ return $fbcode;
+ }
+
+ // Nothing in caches, load and and update both caches
self::loadLocalisation( $code );
- return self::$mLocalisationCache[$code]['fallback'];
+ $fbcode = self::$mLocalisationCache[$code]['fallback'];
+
+ $cache[$code] = $fbcode;
+ $wgMemc->set( $memcKey, (string) $fbcode );
+
+ return $fbcode;
}
/**
diff --git a/languages/LanguageConverter.php b/languages/LanguageConverter.php
index 08171c0a..bbf15971 100644
--- a/languages/LanguageConverter.php
+++ b/languages/LanguageConverter.php
@@ -1,58 +1,95 @@
<?php
+
/**
- * @addtogroup Language
- *
- * @author Zhengzhu Feng <zhengzhu@gmail.com>
- * @license http://www.gnu.org/copyleft/gpl.html GNU General Public License
- */
+ * Contains the LanguageConverter class and ConverterRule class
+ * @ingroup Language
+ *
+ * @license http://www.gnu.org/copyleft/gpl.html GNU General Public License
+ * @file
+ */
+/**
+ * base class for language convert
+ * @ingroup Language
+ *
+ * @author Zhengzhu Feng <zhengzhu@gmail.com>
+ * @maintainers fdcn <fdcn64@gmail.com>, shinjiman <shinjiman@gmail.com>
+ */
class LanguageConverter {
var $mPreferredVariant='';
var $mMainLanguageCode;
- var $mVariants, $mVariantFallbacks;
+ var $mVariants, $mVariantFallbacks, $mVariantNames;
var $mTablesLoaded = false;
var $mTables;
var $mTitleDisplay='';
var $mDoTitleConvert=true, $mDoContentConvert=true;
+ var $mManualLevel; // 'bidirectional' 'unidirectional' 'disable' for each variants
var $mTitleFromFlag = false;
var $mCacheKey;
var $mLangObj;
var $mMarkup;
var $mFlags;
+ var $mDescCodeSep = ':',$mDescVarSep = ';';
var $mUcfirst = false;
- const CACHE_VERSION_KEY = 'VERSION 5';
+ const CACHE_VERSION_KEY = 'VERSION 6';
/**
- * Constructor
+ * Constructor
*
- * @param string $maincode the main language code of this language
- * @param array $variants the supported variants of this language
- * @param array $variantfallback the fallback language of each variant
- * @param array $markup array defining the markup used for manual conversion
+ * @param string $maincode the main language code of this language
+ * @param array $variants the supported variants of this language
+ * @param array $variantfallback the fallback language of each variant
+ * @param array $markup array defining the markup used for manual conversion
* @param array $flags array defining the custom strings that maps to the flags
- * @access public
- */
+ * @param array $manualLevel limit for supported variants
+ * @public
+ */
function __construct($langobj, $maincode,
$variants=array(),
$variantfallbacks=array(),
$markup=array(),
- $flags = array()) {
+ $flags = array(),
+ $manualLevel = array() ) {
$this->mLangObj = $langobj;
$this->mMainLanguageCode = $maincode;
$this->mVariants = $variants;
$this->mVariantFallbacks = $variantfallbacks;
+ global $wgLanguageNames;
+ $this->mVariantNames = $wgLanguageNames;
$this->mCacheKey = wfMemcKey( 'conversiontables', $maincode );
- $m = array('begin'=>'-{', 'flagsep'=>'|', 'codesep'=>':',
- 'varsep'=>';', 'end'=>'}-');
+ $m = array(
+ 'begin'=>'-{',
+ 'flagsep'=>'|',
+ 'unidsep'=>'=>', //for unidirectional conversion
+ 'codesep'=>':',
+ 'varsep'=>';',
+ 'end'=>'}-'
+ );
$this->mMarkup = array_merge($m, $markup);
- $f = array('A'=>'A', 'T'=>'T', 'R' => 'R');
+ $f = array(
+ // 'S' show converted text
+ // '+' add rules for alltext
+ // 'E' the gave flags is error
+ // these flags above are reserved for program
+ 'A'=>'A', // add rule for convert code (all text convert)
+ 'T'=>'T', // title convert
+ 'R'=>'R', // raw content
+ 'D'=>'D', // convert description (subclass implement)
+ '-'=>'-', // remove convert (not implement)
+ 'H'=>'H', // add rule for convert code (but no display in placed code )
+ 'N'=>'N' // current variant name
+ );
$this->mFlags = array_merge($f, $flags);
+ foreach( $this->mVariants as $v)
+ $this->mManualLevel[$v]=array_key_exists($v,$manualLevel)
+ ?$manualLevel[$v]
+ :'bidirectional';
}
/**
- * @access public
- */
+ * @public
+ */
function getVariants() {
return $this->mVariants;
}
@@ -60,31 +97,45 @@ class LanguageConverter {
/**
* in case some variant is not defined in the markup, we need
* to have some fallback. for example, in zh, normally people
- * will define zh-cn and zh-tw, but less so for zh-sg or zh-hk.
- * when zh-sg is preferred but not defined, we will pick zh-cn
+ * will define zh-hans and zh-hant, but less so for zh-sg or zh-hk.
+ * when zh-sg is preferred but not defined, we will pick zh-hans
* in this case. right now this is only used by zh.
*
* @param string $v the language code of the variant
- * @return string the code of the fallback language or false if there is no fallback
- * @private
- */
- function getVariantFallback($v) {
- return $this->mVariantFallbacks[$v];
+ * @return string array the code of the fallback language or false if there is no fallback
+ * @public
+ */
+ function getVariantFallbacks($v) {
+ if( isset( $this->mVariantFallbacks[$v] ) ) {
+ return $this->mVariantFallbacks[$v];
+ }
+ return $this->mMainLanguageCode;
}
-
/**
* get preferred language variants.
* @param boolean $fromUser Get it from $wgUser's preferences
- * @return string the preferred language code
- * @access public
- */
+ * @return string the preferred language code
+ * @public
+ */
function getPreferredVariant( $fromUser = true ) {
global $wgUser, $wgRequest, $wgVariantArticlePath, $wgDefaultLanguageVariant;
if($this->mPreferredVariant)
return $this->mPreferredVariant;
+ // figure out user lang without constructing wgLang to avoid infinite recursion
+ if( $fromUser )
+ $defaultUserLang = $wgUser->getOption( 'language' );
+ else
+ $defaultUserLang = $this->mMainLanguageCode;
+ $userLang = $wgRequest->getVal( 'uselang', $defaultUserLang );
+ // see if interface language is same as content, if not, prevent conversion
+ if( ! in_array( $userLang, $this->mVariants ) ){
+ $this->mPreferredVariant = $this->mMainLanguageCode; // no conversion
+ return $this->mPreferredVariant;
+ }
+
// see if the preference is set in the request
$req = $wgRequest->getText( 'variant' );
if( in_array( $req, $this->mVariants ) ) {
@@ -140,15 +191,15 @@ class LanguageConverter {
return $this->mMainLanguageCode;
}
-
+
/**
- * dictionary-based conversion
- *
- * @param string $text the text to be converted
- * @param string $toVariant the target language code
- * @return string the converted text
- * @private
- */
+ * dictionary-based conversion
+ *
+ * @param string $text the text to be converted
+ * @param string $toVariant the target language code
+ * @return string the converted text
+ * @private
+ */
function autoConvert($text, $toVariant=false) {
$fname="LanguageConverter::autoConvert";
@@ -168,9 +219,9 @@ class LanguageConverter {
3. place holders created by the parser
*/
global $wgParser;
- if (isset($wgParser))
+ if (isset($wgParser) && $wgParser->UniqPrefix()!=''){
$marker = '|' . $wgParser->UniqPrefix() . '[\-a-zA-Z0-9]+';
- else
+ } else
$marker = "";
// this one is needed when the text is inside an html markup
@@ -180,9 +231,11 @@ class LanguageConverter {
$codefix = '<code>.+?<\/code>|';
// disable convertsion of <script type="text/javascript"> ... </script>
$scriptfix = '<script.*?>.*?<\/script>|';
+ // disable conversion of <pre xxxx> ... </pre>
+ $prefix = '<pre.*?>.*?<\/pre>|';
+
+ $reg = '/'.$codefix . $scriptfix . $prefix . '<[^>]+>|&[a-zA-Z#][a-z0-9]+;' . $marker . $htmlfix . '/s';
- $reg = '/'.$codefix . $scriptfix . '<[^>]+>|&[a-zA-Z#][a-z0-9]+;' . $marker . $htmlfix . '/s';
-
$matches = preg_split($reg, $text, -1, PREG_SPLIT_OFFSET_CAPTURE);
$m = array_shift($matches);
@@ -205,6 +258,7 @@ class LanguageConverter {
* @param string $text Text to convert
* @param string $variant Variant language code
* @return string Translated text
+ * @private
*/
function translate( $text, $variant ) {
wfProfileIn( __METHOD__ );
@@ -216,12 +270,12 @@ class LanguageConverter {
}
/**
- * convert text to all supported variants
- *
- * @param string $text the text to be converted
- * @return array of string
- * @public
- */
+ * convert text to all supported variants
+ *
+ * @param string $text the text to be converted
+ * @return array of string
+ * @public
+ */
function autoConvertToAllVariants($text) {
$fname="LanguageConverter::autoConvertToAllVariants";
wfProfileIn( $fname );
@@ -238,12 +292,12 @@ class LanguageConverter {
}
/**
- * convert link text to all supported variants
- *
- * @param string $text the text to be converted
- * @return array of string
- * @public
- */
+ * convert link text to all supported variants
+ *
+ * @param string $text the text to be converted
+ * @return array of string
+ * @public
+ */
function convertLinkToAllVariants($text) {
if( !$this->mTablesLoaded )
$this->loadTables();
@@ -271,7 +325,32 @@ class LanguageConverter {
/**
+ * apply manual conversion
+ * @private
+ */
+ function applyManualConv($convRule){
+ // use syntax -{T|zh:TitleZh;zh-tw:TitleTw}- for custom conversion in title
+ $title = $convRule->getTitle();
+ if($title){
+ $this->mTitleFromFlag = true;
+ $this->mTitleDisplay = $title;
+ }
+
+ //apply manual conversion table to global table
+ $convTable = $convRule->getConvTable();
+ $action = $convRule->getRulesAction();
+ foreach($convTable as $v=>$t) {
+ if( !in_array($v,$this->mVariants) )continue;
+ if( $action=="add" )
+ $this->mTables[$v]->mergeArray($t);
+ elseif ( $action=="remove" )
+ $this->mTables[$v]->removeArray($t);
+ }
+ }
+
+ /**
* Convert text using a parser object for context
+ * @public
*/
function parserConvert( $text, &$parser ) {
global $wgDisableLangConversion;
@@ -291,39 +370,31 @@ class LanguageConverter {
}
/**
- * Parse flags with syntax -{FLAG| ... }-
- *
+ * convert title
+ * @private
*/
- function parseFlags($marked){
- $flags = array();
-
- // process flag only if the flag is valid
- if(strlen($marked) < 2 || !(in_array($marked[0],$this->mFlags) && $marked[1]=='|' ) )
- return array($marked,array());
-
- $tt = explode($this->mMarkup['flagsep'], $marked, 2);
-
- if(sizeof($tt) == 2) {
- $f = explode($this->mMarkup['varsep'], $tt[0]);
- foreach($f as $ff) {
- $ff = trim($ff);
- if(array_key_exists($ff, $this->mFlags) &&
- !array_key_exists($this->mFlags[$ff], $flags))
- $flags[] = $this->mFlags[$ff];
- }
- $rules = $tt[1];
- }
- else
- $rules = $marked;
+ function convertTitle($text){
+ // check for __NOTC__ tag
+ if( !$this->mDoTitleConvert ) {
+ $this->mTitleDisplay = $text;
+ return $text;
+ }
- if( !in_array('R',$flags) ){
- //FIXME: may cause trouble here...
- //strip &nbsp; since it interferes with the parsing, plus,
- //all spaces should be stripped in this tag anyway.
- $rules = str_replace('&nbsp;', '', $rules);
- }
+ // use the title from the T flag if any
+ if($this->mTitleFromFlag){
+ $this->mTitleFromFlag = false;
+ return $this->mTitleDisplay;
+ }
- return array($rules,$flags);
+ global $wgRequest;
+ $isredir = $wgRequest->getText( 'redirect', 'yes' );
+ $action = $wgRequest->getText( 'action' );
+ if ( $isredir == 'no' || $action == 'edit' ) {
+ return $text;
+ } else {
+ $this->mTitleDisplay = $this->convert($text);
+ return $this->mTitleDisplay;
+ }
}
/**
@@ -334,136 +405,50 @@ class LanguageConverter {
*
* syntax of the markup:
* -{code1:text1;code2:text2;...}- or
+ * -{flags|code1:text1;code2:text2;...}- or
* -{text}- in which case no conversion should take place for text
- *
- * @param string $text text to be converted
- * @param bool $isTitle whether this conversion is for the article title
- * @return string converted text
- * @access public
- */
+ *
+ * @param string $text text to be converted
+ * @param bool $isTitle whether this conversion is for the article title
+ * @return string converted text
+ * @public
+ */
function convert( $text , $isTitle=false) {
- $mw =& MagicWord::get( 'notitleconvert' );
+
+ $mw =& MagicWord::get( 'notitleconvert' );
if( $mw->matchAndRemove( $text ) )
$this->mDoTitleConvert = false;
-
- $mw =& MagicWord::get( 'nocontentconvert' );
+ $mw =& MagicWord::get( 'nocontentconvert' );
if( $mw->matchAndRemove( $text ) ) {
$this->mDoContentConvert = false;
}
// no conversion if redirecting
- $mw =& MagicWord::get( 'redirect' );
+ $mw =& MagicWord::get( 'redirect' );
if( $mw->matchStart( $text ))
return $text;
- if( $isTitle ) {
-
- // use the title from the T flag if any
- if($this->mTitleFromFlag){
- $this->mTitleFromFlag = false;
- return $this->mTitleDisplay;
- }
-
- // check for __NOTC__ tag
- if( !$this->mDoTitleConvert ) {
- $this->mTitleDisplay = $text;
- return $text;
- }
-
- global $wgRequest;
- $isredir = $wgRequest->getText( 'redirect', 'yes' );
- $action = $wgRequest->getText( 'action' );
- if ( $isredir == 'no' || $action == 'edit' ) {
- return $text;
- }
- else {
- $this->mTitleDisplay = $this->convert($text);
- return $this->mTitleDisplay;
- }
- }
+ // for title convertion
+ if ($isTitle) return $this->convertTitle($text);
$plang = $this->getPreferredVariant();
- if( isset( $this->mVariantFallbacks[$plang] ) ) {
- $fallback = $this->mVariantFallbacks[$plang];
- } else {
- $fallback = $this->mMainLanguageCode;
- }
-
- $tarray = explode($this->mMarkup['begin'], $text);
- $tfirst = array_shift($tarray);
- if($this->mDoContentConvert)
- $text = $this->autoConvert($tfirst);
- else
- $text = $tfirst;
- foreach($tarray as $txt) {
- $marked = explode($this->mMarkup['end'], $txt, 2);
-
- // strip the flags from syntax like -{T| ... }-
- list($rules,$flags) = $this->parseFlags($marked[0]);
-
- // proces R flag: output raw content of -{ ... }-
- if( in_array('R',$flags) ){
- $disp = $rules;
- } else if( $this->mDoContentConvert){
- // parse the contents -{ ... }-
- $carray = $this->parseManualRule($rules, $flags);
-
- $disp = '';
- if(array_key_exists($plang, $carray)) {
- $disp = $carray[$plang];
- } else if(array_key_exists($fallback, $carray)) {
- $disp = $carray[$fallback];
- }
- } else{
- // if we don't do content convert, still strip the -{}- tags
- $disp = $rules;
- $flags = array();
- }
-
- if($disp) {
- // use syntax -{T|zh:TitleZh;zh-tw:TitleTw}- for custom conversion in title
- if(in_array('T', $flags)){
- $this->mTitleFromFlag = true;
- $this->mTitleDisplay = $disp;
- }
- else
- $text .= $disp;
-
- // use syntax -{A|zh:WordZh;zh-tw:WordTw}- to introduce a custom mapping between
- // words WordZh and WordTw in the whole text
- if(in_array('A', $flags)) {
-
- /* fill in the missing variants, if any,
- with fallbacks */
- foreach($this->mVariants as $v) {
- if(!array_key_exists($v, $carray)) {
- $vf = $this->getVariantFallback($v);
- if(array_key_exists($vf, $carray))
- $carray[$v] = $carray[$vf];
- }
- }
+ $tarray = explode($this->mMarkup['end'], $text);
+ $text = '';
+ foreach($tarray as $txt) {
+ $marked = explode($this->mMarkup['begin'], $txt, 2);
- foreach($this->mVariants as $vfrom) {
- if(!array_key_exists($vfrom, $carray))
- continue;
- foreach($this->mVariants as $vto) {
- if($vfrom == $vto)
- continue;
- if(!array_key_exists($vto, $carray))
- continue;
- $this->mTables[$vto]->setPair($carray[$vfrom], $carray[$vto]);
- }
- }
- }
- }
- else {
+ if( $this->mDoContentConvert )
+ $text .= $this->autoConvert($marked[0],$plang);
+ else
$text .= $marked[0];
- }
+
if(array_key_exists(1, $marked)){
- if( $this->mDoContentConvert )
- $text .= $this->autoConvert($marked[1]);
- else
- $text .= $marked[1];
+ // strip the flags from syntax like -{T| ... }-
+ $crule = new ConverterRule($marked[1], $this);
+ $crule->parse($plang);
+
+ $text .= $crule->getDisplay();
+ $this->applyManualConv($crule);
}
}
@@ -471,32 +456,6 @@ class LanguageConverter {
}
/**
- * parse the manually marked conversion rule
- * @param string $rule the text of the rule
- * @return array of the translation in each variant
- * @private
- */
- function parseManualRule($rules, $flags=array()) {
-
- $choice = explode($this->mMarkup['varsep'], $rules);
- $carray = array();
- if(sizeof($choice) == 1) {
- /* a single choice */
- foreach($this->mVariants as $v)
- $carray[$v] = $choice[0];
- }
- else {
- foreach($choice as $c) {
- $v = explode($this->mMarkup['codesep'], $c);
- if(sizeof($v) != 2) // syntax error, skip
- continue;
- $carray[trim($v[0])] = trim($v[1]);
- }
- }
- return $carray;
- }
-
- /**
* if a language supports multiple variants, it is
* possible that non-existing link in one variant
* actually exists in another variant. this function
@@ -505,7 +464,7 @@ class LanguageConverter {
* @param string $link the name of the link
* @param mixed $nt the title object of the link
* @return null the input parameters may be modified upon return
- * @access public
+ * @public
*/
function findVariantLink( &$link, &$nt ) {
global $wgDisableLangConversion;
@@ -546,29 +505,29 @@ class LanguageConverter {
}
/**
- * returns language specific hash options
- *
- * @access public
- */
+ * returns language specific hash options
+ *
+ * @public
+ */
function getExtraHashOptions() {
$variant = $this->getPreferredVariant();
return '!' . $variant ;
}
/**
- * get title text as defined in the body of the article text
- *
- * @access public
- */
+ * get title text as defined in the body of the article text
+ *
+ * @public
+ */
function getParsedTitle() {
return $this->mTitleDisplay;
}
/**
- * a write lock to the cache
- *
- * @private
- */
+ * a write lock to the cache
+ *
+ * @private
+ */
function lockCache() {
global $wgMemc;
$success = false;
@@ -581,10 +540,10 @@ class LanguageConverter {
}
/**
- * unlock cache
- *
- * @private
- */
+ * unlock cache
+ *
+ * @private
+ */
function unlockCache() {
global $wgMemc;
$wgMemc->delete($this->mCacheKey . "lock");
@@ -592,20 +551,20 @@ class LanguageConverter {
/**
- * Load default conversion tables
- * This method must be implemented in derived class
- *
- * @private
- */
+ * Load default conversion tables
+ * This method must be implemented in derived class
+ *
+ * @private
+ */
function loadDefaultTables() {
$name = get_class($this);
wfDie("Must implement loadDefaultTables() method in class $name");
}
/**
- * load conversion tables either from the cache or the disk
- * @private
- */
+ * load conversion tables either from the cache or the disk
+ * @private
+ */
function loadTables($fromcache=true) {
global $wgMemc;
if( $this->mTablesLoaded )
@@ -642,16 +601,16 @@ class LanguageConverter {
}
/**
- * Hook for post processig after conversion tables are loaded
- *
- */
+ * Hook for post processig after conversion tables are loaded
+ *
+ */
function postLoadTables() {}
/**
- * Reload the conversion tables
- *
- * @private
- */
+ * Reload the conversion tables
+ *
+ * @private
+ */
function reloadTables() {
if($this->mTables)
unset($this->mTables);
@@ -661,20 +620,18 @@ class LanguageConverter {
/**
- * parse the conversion table stored in the cache
- *
- * the tables should be in blocks of the following form:
-
- * -{
- * word => word ;
- * word => word ;
- * ...
- * }-
- *
- * to make the tables more manageable, subpages are allowed
- * and will be parsed recursively if $recursive=true
- *
- * @private
+ * parse the conversion table stored in the cache
+ *
+ * the tables should be in blocks of the following form:
+ * -{
+ * word => word ;
+ * word => word ;
+ * ...
+ * }-
+ *
+ * to make the tables more manageable, subpages are allowed
+ * and will be parsed recursively if $recursive=true
+ *
*/
function parseCachedTable($code, $subpage='', $recursive=true) {
global $wgMessageCache;
@@ -690,8 +647,17 @@ class LanguageConverter {
if(array_key_exists($key, $parsed))
return array();
-
- $txt = $wgMessageCache->get( $key, true, true, true );
+ if ( strpos( $code, '/' ) === false ) {
+ $txt = $wgMessageCache->get( 'Conversiontable', true, $code );
+ } else {
+ $title = Title::makeTitleSafe( NS_MEDIAWIKI, "Conversiontable/$code" );
+ if ( $title && $title->exists() ) {
+ $article = new Article( $title );
+ $txt = $article->getContents();
+ } else {
+ $txt = '';
+ }
+ }
// get all subpage links of the form
// [[MediaWiki:conversiontable/zh-xx/...|...]]
@@ -757,37 +723,33 @@ class LanguageConverter {
*
* @param string $text text to be tagged for no conversion
* @return string the tagged text
- */
+ * @public
+ */
function markNoConversion($text, $noParse=false) {
# don't mark if already marked
if(strpos($text, $this->mMarkup['begin']) ||
strpos($text, $this->mMarkup['end']))
return $text;
- $ret = $this->mMarkup['begin'] . $text . $this->mMarkup['end'];
+ $ret = $this->mMarkup['begin'] .'R|'. $text . $this->mMarkup['end'];
return $ret;
}
/**
* convert the sorting key for category links. this should make different
* keys that are variants of each other map to the same key
- */
+ */
function convertCategoryKey( $key ) {
return $key;
}
/**
- * hook to refresh the cache of conversion tables when
- * MediaWiki:conversiontable* is updated
- * @private
- */
+ * hook to refresh the cache of conversion tables when
+ * MediaWiki:conversiontable* is updated
+ * @private
+ */
function OnArticleSaveComplete($article, $user, $text, $summary, $isminor, $iswatch, $section, $flags, $revision) {
$titleobj = $article->getTitle();
if($titleobj->getNamespace() == NS_MEDIAWIKI) {
- /*
- global $wgContLang; // should be an LanguageZh.
- if(get_class($wgContLang) != 'languagezh')
- return true;
- */
$title = $titleobj->getDBkey();
$t = explode('/', $title, 3);
$c = count($t);
@@ -803,11 +765,377 @@ class LanguageConverter {
/**
* Armour rendered math against conversion
* Wrap math into rawoutput -{R| math }- syntax
+ * @public
*/
function armourMath($text){
$ret = $this->mMarkup['begin'] . 'R|' . $text . $this->mMarkup['end'];
return $ret;
}
+}
+
+/**
+ * parser for rules of language conversion , parse rules in -{ }- tag
+ * @ingroup Language
+ * @author fdcn <fdcn64@gmail.com>
+ */
+class ConverterRule {
+ var $mText; // original text in -{text}-
+ var $mConverter; // LanguageConverter object
+ var $mManualCodeError='<strong class="error">code error!</strong>';
+ var $mRuleDisplay = '',$mRuleTitle=false;
+ var $mRules = '';// string : the text of the rules
+ var $mRulesAction = 'none';
+ var $mFlags = array();
+ var $mConvTable = array();
+ var $mBidtable = array();// array of the translation in each variant
+ var $mUnidtable = array();// array of the translation in each variant
+
+ /**
+ * Constructor
+ *
+ * @param string $text the text between -{ and }-
+ * @param object $converter a LanguageConverter object
+ * @access public
+ */
+ function __construct($text,$converter){
+ $this->mText = $text;
+ $this->mConverter=$converter;
+ foreach($converter->mVariants as $v){
+ $this->mConvTable[$v]=array();
+ }
+ }
+
+ /**
+ * check if variants array in convert array
+ *
+ * @param string $variant Variant language code
+ * @return string Translated text
+ * @public
+ */
+ function getTextInBidtable($variants){
+ if(is_string($variants)){ $variants=array($variants); }
+ if(!is_array($variants)) return false;
+ foreach ($variants as $variant){
+ if(array_key_exists($variant, $this->mBidtable)){
+ return $this->mBidtable[$variant];
+ }
+ }
+ return false;
+ }
+
+ /**
+ * Parse flags with syntax -{FLAG| ... }-
+ * @private
+ */
+ function parseFlags(){
+ $text = $this->mText;
+ if(strlen($text) < 2 ) {
+ $this->mFlags = array( 'R' );
+ $this->mRules = $text;
+ return;
+ }
+
+ $flags = array();
+ $markup = $this->mConverter->mMarkup;
+ $validFlags = $this->mConverter->mFlags;
+
+ $tt = explode($markup['flagsep'], $text, 2);
+ if(count($tt) == 2) {
+ $f = explode($markup['varsep'], $tt[0]);
+ foreach($f as $ff) {
+ $ff = trim($ff);
+ if(array_key_exists($ff, $validFlags) &&
+ !in_array($validFlags[$ff], $flags))
+ $flags[] = $validFlags[$ff];
+ }
+ $rules = $tt[1];
+ } else {
+ $rules = $text;
+ }
+
+ //check flags
+ if( in_array('R',$flags) ){
+ $flags = array('R');// remove other flags
+ } elseif ( in_array('N',$flags) ){
+ $flags = array('N');// remove other flags
+ } elseif ( in_array('-',$flags) ){
+ $flags = array('-');// remove other flags
+ } elseif (count($flags)==1 && $flags[0]=='T'){
+ $flags[]='H';
+ } elseif ( in_array('H',$flags) ){
+ // replace A flag, and remove other flags except T
+ $temp=array('+','H');
+ if(in_array('T',$flags)) $temp[] = 'T';
+ if(in_array('D',$flags)) $temp[] = 'D';
+ $flags = $temp;
+ } else {
+ if ( in_array('A',$flags)) {
+ $flags[]='+';
+ $flags[]='S';
+ }
+ if ( in_array('D',$flags) )
+ $flags=array_diff($flags,array('S'));
+ }
+ if ( count($flags)==0 )
+ $flags = array('S');
+ $this->mRules=$rules;
+ $this->mFlags=$flags;
+ }
+
+ /**
+ * generate conversion table
+ * @private
+ */
+ function parseRules() {
+ $rules = $this->mRules;
+ $flags = $this->mFlags;
+ $bidtable = array();
+ $unidtable = array();
+ $markup = $this->mConverter->mMarkup;
+
+ $choice = explode($markup['varsep'], $rules );
+ foreach($choice as $c) {
+ $v = explode($markup['codesep'], $c);
+ if(count($v) != 2)
+ continue;// syntax error, skip
+ $to=trim($v[1]);
+ $v=trim($v[0]);
+ $u = explode($markup['unidsep'], $v);
+ if(count($u) == 1) {
+ $bidtable[$v] = $to;
+ } else if(count($u) == 2){
+ $from=trim($u[0]);$v=trim($u[1]);
+ if( array_key_exists($v,$unidtable) && !is_array($unidtable[$v]) )
+ $unidtable[$v]=array($from=>$to);
+ else
+ $unidtable[$v][$from]=$to;
+ }
+ // syntax error, pass
+ if (!array_key_exists($v,$this->mConverter->mVariantNames)){
+ $bidtable = array();
+ $unidtable = array();
+ break;
+ }
+ }
+ $this->mBidtable = $bidtable;
+ $this->mUnidtable = $unidtable;
+ }
+
+ /**
+ * @private
+ */
+ function getRulesDesc(){
+ $codesep = $this->mConverter->mDescCodeSep;
+ $varsep = $this->mConverter->mDescVarSep;
+ $text='';
+ foreach($this->mBidtable as $k => $v)
+ $text .= $this->mConverter->mVariantNames[$k]."$codesep$v$varsep";
+ foreach($this->mUnidtable as $k => $a)
+ foreach($a as $from=>$to)
+ $text.=$from.'⇒'.$this->mConverter->mVariantNames[$k]."$codesep$to$varsep";
+ return $text;
+ }
+
+ /**
+ * Parse rules conversion
+ * @private
+ */
+ function getRuleConvertedStr($variant,$doConvert){
+ $bidtable = $this->mBidtable;
+ $unidtable = $this->mUnidtable;
+
+ if( count($bidtable) + count($unidtable) == 0 ){
+ return $this->mRules;
+ } elseif ($doConvert){// the text converted
+ // display current variant in bidirectional array
+ $disp = $this->getTextInBidtable($variant);
+ // or display current variant in fallbacks
+ if(!$disp)
+ $disp = $this->getTextInBidtable(
+ $this->mConverter->getVariantFallbacks($variant));
+ // or display current variant in unidirectional array
+ if(!$disp && array_key_exists($variant,$unidtable)){
+ $disp = array_values($unidtable[$variant]);
+ $disp = $disp[0];
+ }
+ // or display frist text under disable manual convert
+ if(!$disp && $this->mConverter->mManualLevel[$variant]=='disable') {
+ if(count($bidtable)>0){
+ $disp = array_values($bidtable);
+ $disp = $disp[0];
+ } else {
+ $disp = array_values($unidtable);
+ $disp = array_values($disp[0]);
+ $disp = $disp[0];
+ }
+ }
+ return $disp;
+ } else {// no convert
+ return $this->mRules;
+ }
+ }
+
+ /**
+ * generate conversion table for all text
+ * @private
+ */
+ function generateConvTable(){
+ $flags = $this->mFlags;
+ $bidtable = $this->mBidtable;
+ $unidtable = $this->mUnidtable;
+ $manLevel = $this->mConverter->mManualLevel;
+
+ $vmarked=array();
+ foreach($this->mConverter->mVariants as $v) {
+ /* for bidirectional array
+ fill in the missing variants, if any,
+ with fallbacks */
+ if(!array_key_exists($v, $bidtable)) {
+ $variantFallbacks = $this->mConverter->getVariantFallbacks($v);
+ $vf = $this->getTextInBidtable($variantFallbacks);
+ if($vf) $bidtable[$v] = $vf;
+ }
+
+ if(array_key_exists($v,$bidtable)){
+ foreach($vmarked as $vo){
+ // use syntax: -{A|zh:WordZh;zh-tw:WordTw}-
+ // or -{H|zh:WordZh;zh-tw:WordTw}- or -{-|zh:WordZh;zh-tw:WordTw}-
+ // to introduce a custom mapping between
+ // words WordZh and WordTw in the whole text
+ if($manLevel[$v]=='bidirectional'){
+ $this->mConvTable[$v][$bidtable[$vo]]=$bidtable[$v];
+ }
+ if($manLevel[$vo]=='bidirectional'){
+ $this->mConvTable[$vo][$bidtable[$v]]=$bidtable[$vo];
+ }
+ }
+ $vmarked[]=$v;
+ }
+ /*for unidirectional array
+ fill to convert tables */
+ $allow_unid = $manLevel[$v]=='bidirectional'
+ || $manLevel[$v]=='unidirectional';
+ if($allow_unid && array_key_exists($v,$unidtable)){
+ $ct=$this->mConvTable[$v];
+ $this->mConvTable[$v] = array_merge($ct,$unidtable[$v]);
+ }
+ }
+ }
+
+ /**
+ * Parse rules and flags
+ * @public
+ */
+ function parse($variant){
+ if(!$variant) $variant = $this->mConverter->getPreferredVariant();
+ $this->parseFlags();
+ $flags = $this->mFlags;
+ if( !in_array('R',$flags) || !in_array('N',$flags) ){
+ //FIXME: may cause trouble here...
+ //strip &nbsp; since it interferes with the parsing, plus,
+ //all spaces should be stripped in this tag anyway.
+ $this->mRules = str_replace('&nbsp;', '', $this->mRules);
+ // decode => HTML entities modified by Sanitizer::removeHTMLtags
+ $this->mRules = str_replace('=&gt;','=>',$this->mRules);
+
+ $this->parseRules();
+ }
+ $rules = $this->mRules;
+
+ if(count($this->mBidtable)==0 && count($this->mUnidtable)==0){
+ if(in_array('+',$flags) || in_array('-',$flags))
+ // fill all variants if text in -{A/H/-|text} without rules
+ foreach($this->mConverter->mVariants as $v)
+ $this->mBidtable[$v] = $rules;
+ elseif (!in_array('N',$flags) && !in_array('T',$flags) )
+ $this->mFlags = $flags = array('R');
+ }
+
+ if( in_array('R',$flags) ) {
+ // if we don't do content convert, still strip the -{}- tags
+ $this->mRuleDisplay = $rules;
+ } elseif ( in_array('N',$flags) ){
+ // proces N flag: output current variant name
+ $this->mRuleDisplay = $this->mConverter->mVariantNames[trim($rules)];
+ } elseif ( in_array('D',$flags) ){
+ // proces D flag: output rules description
+ $this->mRuleDisplay = $this->getRulesDesc();
+ } elseif ( in_array('H',$flags) || in_array('-',$flags) ) {
+ // proces H,- flag or T only: output nothing
+ $this->mRuleDisplay = '';
+ } elseif ( in_array('S',$flags) ){
+ $this->mRuleDisplay = $this->getRuleConvertedStr($variant,
+ $this->mConverter->mDoContentConvert);
+ } else {
+ $this->mRuleDisplay= $this->mManualCodeError;
+ }
+ // proces T flag
+ if ( in_array('T',$flags) ) {
+ $this->mRuleTitle = $this->getRuleConvertedStr($variant,
+ $this->mConverter->mDoTitleConvert);
+ }
+
+ if (in_array('-', $flags))
+ $this->mRulesAction='remove';
+ if (in_array('+', $flags))
+ $this->mRulesAction='add';
+
+ $this->generateConvTable();
+ }
+
+ /**
+ * @public
+ */
+ function hasRules(){
+ // TODO:
+ }
+
+ /**
+ * get display text on markup -{...}-
+ * @public
+ */
+ function getDisplay(){
+ return $this->mRuleDisplay;
+ }
+ /**
+ * get converted title
+ * @public
+ */
+ function getTitle(){
+ return $this->mRuleTitle;
+ }
+
+ /**
+ * return how deal with conversion rules
+ * @public
+ */
+ function getRulesAction(){
+ return $this->mRulesAction;
+ }
+
+ /**
+ * get conversion table ( bidirectional and unidirectional conversion table )
+ * @public
+ */
+ function getConvTable(){
+ return $this->mConvTable;
+ }
+
+ /**
+ * get conversion rules string
+ * @public
+ */
+ function getRules(){
+ return $this->mRules;
+ }
+
+ /**
+ * get conversion flags
+ * @public
+ */
+ function getFlags(){
+ return $this->mFlags;
+ }
}
diff --git a/languages/Names.php b/languages/Names.php
index 92eabc53..180be16d 100644
--- a/languages/Names.php
+++ b/languages/Names.php
@@ -3,7 +3,7 @@
* These determine things like interwikis, language selectors, and so on.
* Safe to change without running scripts on the respective sites.
*
- * @addtogroup Language
+ * @ingroup Language
*/
/* private */ $wgLanguageNames = array(
'aa' => 'Afar', # Afar
@@ -14,10 +14,11 @@
'als' => 'Alemannisch', # Alemannic -- not a valid code, for compatibility. See gsw.
'am' => 'አማርኛ', # Amharic
'an' => 'Aragonés', # Aragonese
- 'ang' => 'Anglo Saxon', # Old English
+ 'ang' => 'Anglo-Saxon', # Old English
'ar' => 'العربية', # Arabic
'arc' => 'ܐܪܡܝܐ', # Aramaic
'arn' => 'Mapudungun', # Mapuche, Mapudungu, Araucanian (Araucano)
+ 'arz' => 'مصرى', # Egyptian Spoken Arabic
'as' => 'অসমীয়া', # Assamese
'ast' => 'Asturianu', # Asturian
'av' => 'Авар', # Avar
@@ -27,6 +28,7 @@
'ba' => 'Башҡорт', # Bashkir
'bar' => 'Boarisch', # Bavarian (Austro-Bavarian and South Tyrolean)
'bat-smg' => 'Žemaitėška', # Samogitian
+ 'bcc' => 'بلوچی مکرانی', # Southern Balochi
'bcl' => 'Bikol Central', # Bikol: Central Bicolano language
'be' => 'Беларуская', # Belarusian normative
'be-tarask' => 'Беларуская (тарашкевіца)', # Belarusian in Taraskievica orthography
@@ -59,22 +61,22 @@
'crh-cyrl' => "\xE2\x80\xAAКъырымтатарджа (Кирилл)\xE2\x80\xAC", # Crimean Tatar (Cyrillic)
'cs' => 'Česky', # Czech
'csb' => 'Kaszëbsczi', # Cassubian
- 'cu' => 'Словѣньскъ', # Old Church Slavonic (ancient language)
+ 'cu' => 'Словѣ́ньскъ / ⰔⰎⰑⰂⰡⰐⰠⰔⰍⰟ', # Old Church Slavonic (ancient language)
'cv' => 'Чăвашла', # Chuvash
'cy' => 'Cymraeg', # Welsh
'da' => 'Dansk', # Danish
'de' => 'Deutsch', # German ("Du")
'de-formal' => 'Deutsch (Sie-Form)', # German - formal address ("Sie")
'diq' => 'Zazaki', # Zazaki
- 'dk' => 'Dansk (deprecated:da)', # Unused code currently redirecting to Danish, 'da' is correct for the language
+ 'dk' => 'Dansk (deprecated:da)', # Unused code currently falls back to Danish, 'da' is correct for the language
'dsb' => 'Dolnoserbski', # Lower Sorbian
- 'dum' => 'Middelnederlands', # Middle Dutch
'dv' => 'ދިވެހިބަސް', # Dhivehi
'dz' => 'ཇོང་ཁ', # Bhutani
'ee' => 'Eʋegbe', # Éwé
'el' => 'Ελληνικά', # Greek
'eml' => 'Emiliàn e rumagnòl', # Emiliano-Romagnolo / Sammarinese
'en' => 'English', # English
+ 'en-gb' => 'British English', # British English
'eo' => 'Esperanto', # Esperanto
'es' => 'Español', # Spanish
'et' => 'Eesti', # Estonian
@@ -108,6 +110,9 @@
'haw' => 'Hawai`i', # Hawaiian
'he' => 'עברית', # Hebrew
'hi' => 'हिन्दी', # Hindi
+ 'hif' => 'Fiji Hindi', # Fijian Hindi (falls back to hif-latn)
+ 'hif-deva' => 'फ़ीजी हिन्दी', # Fiji Hindi (devangari)
+ 'hif-latn' => 'Fiji Hindi', # Fiji Hindi (latin)
'hil' => 'Ilonggo', # Hiligaynon
'ho' => 'Hiri Motu', # Hiri Motu
'hr' => 'Hrvatski', # Croatian
@@ -181,20 +186,21 @@
'lzz' => 'Lazuri Nena', #Laz
'mai' => 'मैथिली', # Maithili
'map-bms' => 'Basa Banyumasan', # Banyumasan
- 'mdf' => 'мокшень кяль', # Moksha
+ 'mdf' => 'Мокшень', # Moksha
'mg' => 'Malagasy', # Malagasy
'mh' => 'Ebon', # Marshallese
'mi' => 'Māori', # Maori
'mk' => 'Македонски', # Macedonian
'ml' => 'മലയാളം', # Malayalam
- 'mn' => 'Монгол', # Mongolian, Peripheral
+ 'mn' => 'Монгол', # Halh Mongolian (Cyrillic) (ISO 639-3: khk)
'mo' => 'Молдовеняскэ', # Moldovan
'mr' => 'मराठी', # Marathi
'ms' => 'Bahasa Melayu', # Malay
'mt' => 'Malti', # Maltese
'mus' => 'Mvskoke', # Muskogee/Creek
+ 'mwl' => 'Mirandés', # Mirandese
'my' => 'Myanmasa', # Burmese
- 'myv' => 'эрзянь кель', # Erzya
+ 'myv' => 'Эрзянь', # Erzya
'mzn' => 'مَزِروني', # Mazanderani
'na' => 'Ekakairũ Naoero', # Nauruan
'nah' => 'Nahuatl', # Nahuatl, en:Wikipedia writes Nahuatlahtolli, while another form is Náhuatl
@@ -210,7 +216,6 @@
'nl' => 'Nederlands', # Dutch
'nn' => "\xE2\x80\xAANorsk (nynorsk)\xE2\x80\xAC", # Norwegian (Nynorsk)
'no' => "\xE2\x80\xAANorsk (bokmål)\xE2\x80\xAC", # Norwegian
- 'non' => 'Norrǿna', # Old Norse
'nov' => 'Novial', # Novial
'nrm' => 'Nouormand', # Norman
'nso' => 'Sesotho sa Leboa', # Northern Sotho
@@ -237,6 +242,7 @@
'pt' => 'Português', # Portuguese
'pt-br' => 'Português do Brasil', # Brazilian Portuguese
'qu' => 'Runa Simi', # Quechua
+ 'rif' => 'Tarifit', # Tarifit
'rm' => 'Rumantsch', # Raeto-Romance
'rmy' => 'Romani', # Vlax Romany
'rn' => 'Kirundi', # Rundi/Kirundi/Urundi
@@ -244,7 +250,7 @@
'roa-rup' => 'Armãneashce', # Aromanian
'roa-tara' => 'Tarandíne', # Tarantino
'ru' => 'Русский', # Russian
- 'ruq' => 'Vlăheşte', # Megleno-Romanian (redirects to ruq-latn)
+ 'ruq' => 'Vlăheşte', # Megleno-Romanian (falls back to ruq-latn)
'ruq-cyrl' => 'Влахесте', # Megleno-Romanian (Cyrillic script)
'ruq-grek' => 'Βλαεστε', # Megleno-Romanian (Greek script)
'ruq-latn' => 'Vlăheşte', # Megleno-Romanian (Latin script)
@@ -272,9 +278,7 @@
'sq' => 'Shqip', # Albanian
'sr' => 'Српски / Srpski', # Serbian
'sr-ec' => 'ћирилица', # Serbian cyrillic ekavian
- 'sr-jc' => 'ијекавица', # Serbian cyrillic iyekvian
'sr-el' => 'latinica', # Serbian latin ekavian
- 'sr-jl' => 'ijekavica', # Serbian latin iyekavian
'srn' => 'Sranantongo', # Sranan Tongo
'ss' => 'SiSwati', # Swati
'st' => 'Sesotho', # Southern Sotho
@@ -282,10 +286,13 @@
'su' => 'Basa Sunda', # Sundanese
'sv' => 'Svenska', # Swedish
'sw' => 'Kiswahili', # Swahili
+ 'szl' => 'Ślůnski', # Silesian
'ta' => 'தமிழ்', # Tamil
'te' => 'తెలుగు', # Telugu
'tet' => 'Tetun', # Tetun
- 'tg' => 'Тоҷикӣ', # Tajiki
+ 'tg' => 'Тоҷикӣ/tojikī', # Tajiki (falls back to tg-cyrl)
+ 'tg-cyrl' => 'Тоҷикӣ', # Tajiki (Cyrllic script) (default)
+ 'tg-latn' => 'tojikī', # Tajiki (Latin script)
'th' => 'ไทย', # Thai
'ti' => 'ትግርኛ', # Tigrinya
'tk' => 'Türkmen', # Turkmen
@@ -298,7 +305,9 @@
'tpi' => 'Tok Pisin', # Tok Pisin
'tr' => 'Türkçe', # Turkish
'ts' => 'Xitsonga', # Tsonga
- 'tt' => 'Tatarça', # Tatar
+ 'tt' => 'Tatarça/Татарча', # Tatar (multiple scripts - defaults to Latin)
+ 'tt-cyrl' => 'Татарча', # Tatar (Cyrillic script)
+ 'tt-latn' => 'Tatarça', # Tatar (Latin script)
'tum' => 'chiTumbuka', # Tumbuka
'tw' => 'Twi', # Twi, (FIXME!)
'ty' => 'Reo Mā`ohi', # Tahitian
@@ -328,14 +337,16 @@
'za' => '(Cuengh)', # Zhuang
'zea' => 'Zeêuws', # Zeeuws/Zeaws
'zh' => '中文', # (Zhōng Wén) - Chinese
- 'zh-classical' => '古文 / 文言文', # Classical Chinese/Literary Chinese
+ 'zh-classical' => '文言', # Classical Chinese/Literary Chinese
'zh-cn' => "\xE2\x80\xAA中文(中国大陆)\xE2\x80\xAC", # Chinese (PRC)
'zh-hans' => "\xE2\x80\xAA中文(简体)\xE2\x80\xAC", # Chinese written using the Simplified Chinese script
'zh-hant' => "\xE2\x80\xAA中文(繁體)\xE2\x80\xAC", # Chinese written using the Traditional Chinese script
- 'zh-hk' => "\xE2\x80\xAA中文(香港)\xE2\x80\xAC", # Chinese (Hong Kong)
+ 'zh-hk' => "\xE2\x80\xAA中文(香港)\xE2\x80\xAC", # Chinese (Hong Kong)
'zh-min-nan' => 'Bân-lâm-gú', # Min-nan -- (see bug 8217)
+ 'zh-mo' => "\xE2\x80\xAA中文(澳門)\xE2\x80\xAC", # Chinese (Macau)
+ 'zh-my' => "\xE2\x80\xAA中文(马来西亚)\xE2\x80\xAC", # Chinese (Malaysia)
'zh-sg' => "\xE2\x80\xAA中文(新加坡)\xE2\x80\xAC", # Chinese (Singapore)
- 'zh-tw' => "\xE2\x80\xAA中文(台灣)\xE2\x80\xAC", # Chinese (Taiwan)
+ 'zh-tw' => "\xE2\x80\xAA中文(台灣)\xE2\x80\xAC", # Chinese (Taiwan)
'zh-yue' => '粵語', # Cantonese -- (see bug 8217)
'zu' => 'isiZulu' # Zulu
);
diff --git a/languages/classes/LanguageAr.php b/languages/classes/LanguageAr.php
index 1b9ae7bf..01c921a0 100644
--- a/languages/classes/LanguageAr.php
+++ b/languages/classes/LanguageAr.php
@@ -1,7 +1,7 @@
<?php
/** Arabic (العربية)
*
- * @addtogroup Language
+ * @ingroup Language
*
* @author Niklas Laxström
*/
@@ -24,6 +24,4 @@ class LanguageAr extends Language {
}
return $forms[$index];
}
-
}
-
diff --git a/languages/classes/LanguageAz.php b/languages/classes/LanguageAz.php
index 84f0c7dd..13c50547 100644
--- a/languages/classes/LanguageAz.php
+++ b/languages/classes/LanguageAz.php
@@ -1,7 +1,7 @@
<?php
/** Azerbaijani (Azərbaycan)
*
- * @addtogroup Language
+ * @ingroup Language
*/
class LanguageAz extends Language {
function ucfirst ( $string ) {
@@ -11,6 +11,4 @@ class LanguageAz extends Language {
return parent::ucfirst( $string );
}
}
-
}
-
diff --git a/languages/classes/LanguageBat_smg.php b/languages/classes/LanguageBat_smg.php
index fc830cf5..8d3450ac 100644
--- a/languages/classes/LanguageBat_smg.php
+++ b/languages/classes/LanguageBat_smg.php
@@ -1,7 +1,7 @@
<?php
/** Samogitian (Žemaitėška)
*
- * @addtogroup Language
+ * @ingroup Language
*
* @author Niklas Laxström
*/
@@ -22,5 +22,4 @@ class LanguageBat_smg extends Language {
return $forms[3];
}
}
-
-} \ No newline at end of file
+}
diff --git a/languages/classes/LanguageBe.php b/languages/classes/LanguageBe.php
index cc3e4e37..7633f031 100644
--- a/languages/classes/LanguageBe.php
+++ b/languages/classes/LanguageBe.php
@@ -4,7 +4,7 @@
* This is still the version from Be-x-old, only duplicated for consistency of
* plural and grammar functions. If there are errors please send a patch.
*
- * @addtogroup Language
+ * @ingroup Language
*
* @author Ævar Arnfjörð Bjarmason <avarab@gmail.com>
* @bug 1638, 2135
@@ -88,7 +88,4 @@ class LanguageBe extends Language {
return $word; # this will return the original value for 'назоўны' (nominative) and all undefined case values
}
-
}
-
-
diff --git a/languages/classes/LanguageBe_tarask.php b/languages/classes/LanguageBe_tarask.php
index d2dd4825..312735da 100644
--- a/languages/classes/LanguageBe_tarask.php
+++ b/languages/classes/LanguageBe_tarask.php
@@ -1,7 +1,7 @@
<?php
/** Belarusian in Taraškievica orthography (Беларуская тарашкевіца)
*
- * @addtogroup Language
+ * @ingroup Language
*
* @author Ævar Arnfjörð Bjarmason <avarab@gmail.com>
* @bug 1638, 2135
@@ -12,21 +12,20 @@
class LanguageBe_tarask extends Language {
/**
- * Plural form transformations
- *
- * $wordform1 - singular form (for 1, 21, 31, 41...)
- * $wordform2 - plural form (for 2, 3, 4, 22, 23, 24, 32, 33, 34...)
- * $wordform3 - plural form (for 0, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 25, 26...)
- * $wordform4 - plural form for messages without number
- */
+ * Plural form transformations
+ *
+ * $wordform1 - singular form (for 1, 21, 31, 41...)
+ * $wordform2 - plural form (for 2, 3, 4, 22, 23, 24, 32, 33, 34...)
+ * $wordform3 - plural form (for 0, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 25, 26...)
+ */
function convertPlural( $count, $forms ) {
if ( !count($forms) ) { return ''; }
- $forms = $this->preConvertPlural( $forms, 3 );
- $count = abs( $count );
- if ( isset($forms[3]) && $count != 1 )
- return $forms[3];
+ //if no number with word, then use $form[0] for singular and $form[1] for plural or zero
+ if( count($forms) === 2 ) return $count == 1 ? $forms[0] : $forms[1];
+
+ $forms = $this->preConvertPlural( $forms, 3 );
if ($count > 10 && floor(($count % 100) / 10) == 1) {
return $forms[2];
@@ -97,7 +96,4 @@ class LanguageBe_tarask extends Language {
return $word; # this will return the original value for 'назоўны' (nominative) and all undefined case values
}
-
}
-
-
diff --git a/languages/classes/LanguageBg.php b/languages/classes/LanguageBg.php
index bf3ad5c8..bb10675a 100644
--- a/languages/classes/LanguageBg.php
+++ b/languages/classes/LanguageBg.php
@@ -1,11 +1,8 @@
<?php
+
/** Bulgarian (Български)
*
- * @addtogroup Language
- */
-
-/**
- * @addtogroup Language
+ * @ingroup Language
*/
class LanguageBg extends Language {
/**
@@ -20,4 +17,3 @@ class LanguageBg extends Language {
}
}
}
-
diff --git a/languages/classes/LanguageBs.php b/languages/classes/LanguageBs.php
index 410c3d62..ee2eb6a6 100644
--- a/languages/classes/LanguageBs.php
+++ b/languages/classes/LanguageBs.php
@@ -1,9 +1,9 @@
<?php
-/** Bosnian (bosanski)
- *
- * @addtogroup Language
- */
+/** Bosnian (bosanski)
+ *
+ * @ingroup Language
+ */
class LanguageBs extends Language {
function convertPlural( $count, $forms ) {
@@ -132,7 +132,4 @@ class LanguageBs extends Language {
return $word; # this will return the original value for 'nominativ' (nominative) and all undefined case values
}
-
}
-
-
diff --git a/languages/classes/LanguageCs.php b/languages/classes/LanguageCs.php
index 4a52368e..9c523d98 100644
--- a/languages/classes/LanguageCs.php
+++ b/languages/classes/LanguageCs.php
@@ -1,13 +1,9 @@
<?php
+
/** Czech (česky)
*
- * @addtogroup Language
+ * @ingroup Language
*/
-
-#--------------------------------------------------------------------------
-# Internationalisation code
-#--------------------------------------------------------------------------
-
class LanguageCs extends Language {
# Grammatical transformations, needed for inflected languages
# Invoked by putting {{grammar:case|word}} in a message
@@ -26,7 +22,7 @@ class LanguageCs extends Language {
return 'Wikiknih';
case '3sg':
return 'Wikiknihám';
- case '6sg';
+ case '6sg':
return 'Wikiknihách';
case '7sg':
return 'Wikiknihami';
@@ -45,22 +41,20 @@ class LanguageCs extends Language {
default:
return 'Wikipedie';
}
-
case 'Wiktionary':
case 'Wikcionář':
case 'Wikislovník':
switch ( $case ) {
case '2sg':
case '3sg':
- case '5sg';
- case '6sg';
+ case '5sg':
+ case '6sg':
return 'Wikislovníku';
case '7sg':
return 'Wikislovníkem';
default:
return 'Wikislovník';
}
-
case 'Wikiquote':
case 'Wikicitáty':
switch ( $case ) {
@@ -68,11 +62,54 @@ class LanguageCs extends Language {
return 'Wikicitátů';
case '3sg':
return 'Wikicitátům';
- case '6sg';
+ case '6sg':
return 'Wikicitátech';
default:
return 'Wikicitáty';
}
+ case 'Wikinews':
+ case 'Wikizprávy':
+ switch ( $case ) {
+ case '2sg':
+ return 'Wikizpráv';
+ case '3sg':
+ return 'Wikizprávám';
+ case '6sg':
+ return 'Wikizprávách';
+ case '7sg':
+ return 'Wikizprávami';
+ default:
+ return 'Wikizprávy';
+ }
+ case 'Wikiversity':
+ case 'Wikiverzita':
+ switch ( $case ) {
+ case '2sg':
+ return 'Wikiverzity';
+ case '3sg':
+ case '6sg':
+ return 'Wikiverzitě';
+ case '4sg':
+ return 'Wikiverzitu';
+ case '5sg':
+ return 'Wikiverzito';
+ case '7sg':
+ return 'Wikiverzitou';
+ default:
+ return 'Wikiverzita';
+ }
+ case 'Wikispecies':
+ case 'Wikidruhy':
+ switch ( $case ) {
+ case '2sg':
+ return 'Wikidruhů';
+ case '3sg':
+ return 'Wikidruhům';
+ case '6sg':
+ return 'Wikidruzích';
+ default:
+ return 'Wikidruhy';
+ }
}
# unknown
return $word;
@@ -83,12 +120,14 @@ class LanguageCs extends Language {
$forms = $this->preConvertPlural( $forms, 3 );
switch ( $count ) {
- case 1: return $forms[0];
+ case 1:
+ return $forms[0];
case 2:
case 3:
- case 4: return $forms[1];
- default: return $forms[2];
+ case 4:
+ return $forms[1];
+ default:
+ return $forms[2];
}
}
-
}
diff --git a/languages/classes/LanguageCu.php b/languages/classes/LanguageCu.php
index fba895ec..e4ef7b02 100644
--- a/languages/classes/LanguageCu.php
+++ b/languages/classes/LanguageCu.php
@@ -1,10 +1,9 @@
<?php
-/** Old Church Slavonic (Ѩзыкъ словѣньскъ)
- *
- * @addtogroup Language
- */
-/* Please, see Language.php for general function comments */
+/** Old Church Slavonic (Ѩзыкъ словѣньскъ)
+ *
+ * @ingroup Language
+ */
class LanguageCu extends Language {
# Convert from the nominative form of a noun to some other case
# Invoked with {{grammar:case|word}}
@@ -47,6 +46,4 @@ class LanguageCu extends Language {
default: return $forms[3];
}
}
-
}
-
diff --git a/languages/classes/LanguageCy.php b/languages/classes/LanguageCy.php
index aea24019..486f7a7c 100644
--- a/languages/classes/LanguageCy.php
+++ b/languages/classes/LanguageCy.php
@@ -1,7 +1,7 @@
<?php
/** Welsh (Cymraeg)
*
- * @addtogroup Language
+ * @ingroup Language
*
* @author Niklas Laxström
*/
diff --git a/languages/classes/LanguageDsb.php b/languages/classes/LanguageDsb.php
index 7408217e..88887998 100644
--- a/languages/classes/LanguageDsb.php
+++ b/languages/classes/LanguageDsb.php
@@ -1,9 +1,9 @@
<?php
+
/** Lower Sorbian (Dolnoserbski)
*
- * @addtogroup Language
+ * @ingroup Language
*/
-
class LanguageDsb extends Language {
# Convert from the nominative form of a noun to some other case
@@ -96,7 +96,7 @@ class LanguageDsb extends Language {
}
break;
}
-
+
return $word; # this will return the original value for 'nominatiw' (nominativ) and all undefined case values
}
diff --git a/languages/classes/LanguageEo.php b/languages/classes/LanguageEo.php
index f5a09897..c58d424f 100644
--- a/languages/classes/LanguageEo.php
+++ b/languages/classes/LanguageEo.php
@@ -1,8 +1,9 @@
<?php
-/** Esperanto (Esperanto)
- * @addtogroup Language
- */
+/** Esperanto (Esperanto)
+ *
+ * @ingroup Language
+ */
class LanguageEo extends Language {
function iconv( $in, $out, $string ) {
# For most languages, this is a wrapper for iconv
@@ -69,5 +70,3 @@ class LanguageEo extends Language {
$wgEditEncoding = 'x';
}
}
-
-
diff --git a/languages/classes/LanguageEt.php b/languages/classes/LanguageEt.php
index 8ed494f8..c6729d99 100644
--- a/languages/classes/LanguageEt.php
+++ b/languages/classes/LanguageEt.php
@@ -1,10 +1,10 @@
<?php
+
/** Estonian (Eesti)
*
- * @addtogroup Language
+ * @ingroup Language
*
*/
-
class LanguageEt extends Language {
/**
* Avoid grouping whole numbers between 0 to 9999
@@ -17,4 +17,3 @@ class LanguageEt extends Language {
}
}
}
-
diff --git a/languages/classes/LanguageFi.php b/languages/classes/LanguageFi.php
index 7c1778cc..d1348f03 100644
--- a/languages/classes/LanguageFi.php
+++ b/languages/classes/LanguageFi.php
@@ -1,21 +1,12 @@
<?php
+
/** Finnish (Suomi)
*
- * @addtogroup Language
+ * @ingroup Language
*
* @author Niklas Laxström
*/
class LanguageFi extends Language {
- /**
- * Avoid grouping whole numbers between 0 to 9999
- */
- function commafy($_) {
- if (!preg_match('/^-?\d{1,4}$/',$_)) {
- return strrev((string)preg_replace('/(\d{3})(?=\d)(?!\d*\.)/','$1,',strrev($_)));
- } else {
- return $_;
- }
- }
# Convert from the nominative form of a noun to some other case
# Invoked with {{GRAMMAR:case|word}}
@@ -141,7 +132,4 @@ class LanguageFi extends Language {
return htmlspecialchars( trim( $final ) );
}
-
}
-
-
diff --git a/languages/classes/LanguageFr.php b/languages/classes/LanguageFr.php
index dfd8af4b..7341bb86 100644
--- a/languages/classes/LanguageFr.php
+++ b/languages/classes/LanguageFr.php
@@ -1,10 +1,9 @@
<?php
+
/** French (Français)
*
- * @addtogroup Language
- *
+ * @ingroup Language
*/
-
class LanguageFr extends Language {
/**
* Use singular form for zero (see bug 7309)
@@ -15,6 +14,4 @@ class LanguageFr extends Language {
return ($count <= 1) ? $forms[0] : $forms[1];
}
-
}
-
diff --git a/languages/classes/LanguageGa.php b/languages/classes/LanguageGa.php
index 71b56e72..fc1546a8 100644
--- a/languages/classes/LanguageGa.php
+++ b/languages/classes/LanguageGa.php
@@ -1,9 +1,9 @@
<?php
+
/** Irish (Gaeilge)
*
- * @addtogroup Language
+ * @ingroup Language
*/
-
class LanguageGa extends Language {
# Convert day names
# Invoked with {{GRAMMAR:transformation|word}}
@@ -45,7 +45,4 @@ class LanguageGa extends Language {
}
return $word;
}
-
}
-
-
diff --git a/languages/classes/LanguageGsw.php b/languages/classes/LanguageGsw.php
index 0ee043dc..3a1b4139 100644
--- a/languages/classes/LanguageGsw.php
+++ b/languages/classes/LanguageGsw.php
@@ -1,9 +1,9 @@
<?php
+
/** Alemannic (Alemannisch)
*
- * @addtogroup Language
+ * @ingroup Language
*/
-
class LanguageGsw extends Language {
# Convert from the nominative form of a noun to some other case
# Invoked with result
@@ -59,10 +59,7 @@ class LanguageGsw extends Language {
$word = 'd Wikiquälle';
}
break;
- }
+ }
return $word;
}
-
}
-
-
diff --git a/languages/classes/LanguageHe.php b/languages/classes/LanguageHe.php
index 59b76333..d8256cb8 100644
--- a/languages/classes/LanguageHe.php
+++ b/languages/classes/LanguageHe.php
@@ -1,12 +1,12 @@
<?php
+
/**
* Hebrew (עברית)
*
- * @addtogroup Language
+ * @ingroup Language
*
* @author Rotem Liss
*/
-
class LanguageHe extends Language {
/**
* Convert grammar forms of words.
@@ -70,5 +70,3 @@ class LanguageHe extends Language {
}
}
}
-
-
diff --git a/languages/classes/LanguageHr.php b/languages/classes/LanguageHr.php
index 4a64f879..5fe6b3a7 100644
--- a/languages/classes/LanguageHr.php
+++ b/languages/classes/LanguageHr.php
@@ -1,7 +1,7 @@
<?php
/** Croatian (hrvatski)
*
- * @addtogroup Language
+ * @ingroup Language
*/
class LanguageHr extends Language {
@@ -22,7 +22,4 @@ class LanguageHr extends Language {
}
}
}
-
}
-
-
diff --git a/languages/classes/LanguageHsb.php b/languages/classes/LanguageHsb.php
index 68df96be..efbaab39 100644
--- a/languages/classes/LanguageHsb.php
+++ b/languages/classes/LanguageHsb.php
@@ -1,7 +1,7 @@
<?php
/** Upper Sorbian (Hornjoserbsce)
*
- * @addtogroup Language
+ * @ingroup Language
*/
class LanguageHsb extends Language {
@@ -96,7 +96,7 @@ class LanguageHsb extends Language {
}
break;
}
-
+
return $word; # this will return the original value for 'nominatiw' (nominativ) and all undefined case values
}
diff --git a/languages/classes/LanguageHu.php b/languages/classes/LanguageHu.php
index e4407f5b..d247b498 100644
--- a/languages/classes/LanguageHu.php
+++ b/languages/classes/LanguageHu.php
@@ -1,11 +1,9 @@
<?php
-/**
- * @addtogroup Language
- */
-#
-# Hungarian localisation for MediaWiki
-#
+/** Hungarian localisation for MediaWiki
+ *
+ * @ingroup Language
+ */
class LanguageHu extends Language {
function convertGrammar( $word, $case ) {
global $wgGrammarForms;
diff --git a/languages/classes/LanguageHy.php b/languages/classes/LanguageHy.php
index cc3492be..73777def 100644
--- a/languages/classes/LanguageHy.php
+++ b/languages/classes/LanguageHy.php
@@ -1,11 +1,10 @@
<?php
-/** Armenian (Հայերեն)
- *
- * @addtogroup Language
- * @author Ruben Vardanyan (Me@RubenVardanyan.com)
- */
-/* Please, see Language.php for general function comments */
+/** Armenian (Հայերեն)
+ *
+ * @ingroup Language
+ * @author Ruben Vardanyan (Me@RubenVardanyan.com)
+ */
class LanguageHy extends Language {
# Convert from the nominative form of a noun to some other case
# Invoked with {{grammar:case|word}}
@@ -68,4 +67,3 @@ class LanguageHy extends Language {
}
}
}
-
diff --git a/languages/classes/LanguageJa.php b/languages/classes/LanguageJa.php
index c56e6a9e..72c06e19 100644
--- a/languages/classes/LanguageJa.php
+++ b/languages/classes/LanguageJa.php
@@ -1,8 +1,9 @@
<?php
+
/**
* Japanese (日本語)
*
- * @addtogroup Language
+ * @ingroup Language
*/
class LanguageJa extends Language {
function stripForSearch( $string ) {
@@ -37,5 +38,3 @@ class LanguageJa extends Language {
return $text;
}
}
-
-
diff --git a/languages/classes/LanguageKaa.php b/languages/classes/LanguageKaa.php
index 4a451dcc..f9f61dbd 100644
--- a/languages/classes/LanguageKaa.php
+++ b/languages/classes/LanguageKaa.php
@@ -1,10 +1,9 @@
<?php
+
/** Karakalpak (Qaraqalpaqsha)
*
- *
- * @addtogroup Language
+ * @ingroup Language
*/
-
class LanguageKaa extends Language {
# Convert from the nominative form of a noun to some other case
@@ -20,13 +19,31 @@ class LanguageKaa extends Language {
/* Full code of function convertGrammar() is in development. Updates coming soon. */
return $word;
}
-
+ /*
+ * It fixes issue with ucfirst for transforming 'i' to 'İ'
+ *
+ */
function ucfirst ( $string ) {
if ( $string[0] == 'i' ) {
- return 'İ' . substr( $string, 1 );
+ $string = 'İ' . substr( $string, 1 );
+ } else {
+ $string = parent::ucfirst( $string );
+ }
+ return $string;
+
+ }
+
+ /*
+ * It fixes issue with lcfirst for transforming 'I' to 'ı'
+ *
+ */
+ function lcfirst ( $string ) {
+ if ( $string[0] == 'I' ) {
+ $string = 'ı' . substr( $string, 1 );
} else {
- return parent::ucfirst( $string );
+ $string = parent::lcfirst( $string );
}
+ return $string;
}
/**
@@ -40,4 +57,4 @@ class LanguageKaa extends Language {
}
}
-} \ No newline at end of file
+}
diff --git a/languages/classes/LanguageKk.deps.php b/languages/classes/LanguageKk.deps.php
index 2b96de96..aa7361bb 100644
--- a/languages/classes/LanguageKk.deps.php
+++ b/languages/classes/LanguageKk.deps.php
@@ -3,9 +3,7 @@
// LanguageKk.php is compiled, working around a bug in the APC opcode
// cache on PHP 5, where cached code can break if the include order
// changed on a subsequent page view.
-// see http://mail.wikipedia.org/pipermail/wikitech-l/2006-January/033660.html
-
+// see http://lists.wikimedia.org/pipermail/wikitech-l/2006-January/021311.html
require_once( dirname(__FILE__).'/../LanguageConverter.php' );
require_once( dirname(__FILE__).'/LanguageKk_cyrl.php' );
-
diff --git a/languages/classes/LanguageKk.php b/languages/classes/LanguageKk.php
index cf90e96e..34c5c39a 100644
--- a/languages/classes/LanguageKk.php
+++ b/languages/classes/LanguageKk.php
@@ -1,9 +1,4 @@
<?php
-/** Kazakh (Қазақша)
- * converter routines
- *
- * @addtogroup Language
- */
require_once( dirname(__FILE__).'/../LanguageConverter.php' );
require_once( dirname(__FILE__).'/LanguageKk_cyrl.php' );
@@ -16,8 +11,13 @@ define( 'KK_L_LC', 'aäbcçdeéfgğhıiïjklmnñoöpqrsştuüvwxyýz' ); # Kazak
define( 'H_HAMZA', 'ٴ' ); # U+0674 ARABIC LETTER HIGH HAMZA
//define( 'ZWNJ', '‌' ); # U+200C ZERO WIDTH NON-JOINER
+/** Kazakh (Қазақша)
+ * converter routines
+ *
+ * @ingroup Language
+ */
class KkConverter extends LanguageConverter {
-
+
function __construct($langobj, $maincode,
$variants=array(),
$variantfallbacks=array(),
@@ -25,7 +25,7 @@ class KkConverter extends LanguageConverter {
$flags = array()) {
parent::__construct( $langobj, $maincode,
$variants, $variantfallbacks, $markup, $flags );
-
+
// No point delaying this since they're in code.
// Waiting until loadDefaultTables() means they never get loaded
// when the tables themselves are loaded from cache.
@@ -60,7 +60,7 @@ class KkConverter extends LanguageConverter {
$this->mTables['kk-cn']->merge( $this->mTables['kk-arab'] );
}
- function loadRegs() {
+ function loadRegs() {
$this->mCyrl2Latn = array(
## Punctuation
@@ -73,8 +73,8 @@ class KkConverter extends LanguageConverter {
'/^Ю(['.KK_C_UC.']|$)/u' => 'YU$1', '/^Ю(['.KK_C_LC.']|$)/u' => 'Yu$1',
'/^Я(['.KK_C_UC.']|$)/u' => 'YA$1', '/^Я(['.KK_C_LC.']|$)/u' => 'Ya$1',
'/^Щ(['.KK_C_UC.']|$)/u' => 'ŞÇ$1', '/^Щ(['.KK_C_LC.']|$)/u' => 'Şç$1',
- ## other ЁЮЯ
- '/Ё/u' => 'YO', '/ё/u' => 'yo',
+ ## other ЁЮЯ
+ '/Ё/u' => 'YO', '/ё/u' => 'yo',
'/Ю/u' => 'YU', '/ю/u' => 'yu',
'/Я/u' => 'YA', '/я/u' => 'ya',
'/Щ/u' => 'ŞÇ', '/щ/u' => 'şç',
@@ -163,7 +163,7 @@ class KkConverter extends LanguageConverter {
'/Аллаһ/ui' => 'ﷲ',
'/([АӘЕЁИОӨҰҮЭЮЯЪЬ])е/ui' => '$1يە',
'/[еэ]/ui' => 'ە', '/[ъь]/ui' => '',
- '/[аә]/ui' => 'ا', '/[оө]/ui' => 'و', '/[ұү]/ui' => 'ۇ', '/[ыі]/ui' => 'ى',
+ '/[аә]/ui' => 'ا', '/[оө]/ui' => 'و', '/[ұү]/ui' => 'ۇ', '/[ыі]/ui' => 'ى',
'/[и]/ui' => 'ىي', '/ё/ui' => 'يو', '/ю/ui' => 'يۋ', '/я/ui' => 'يا', '/[й]/ui' => 'ي',
'/ц/ui' => 'تس', '/щ/ui' => 'شش',
'/һ/ui' => 'ح', '/ч/ui' => 'تش',
@@ -179,7 +179,7 @@ class KkConverter extends LanguageConverter {
'/[eé]/ui' => 'ە', '/[yý]/ui' => 'ي', '/[ʺʹ]/ui' => '',
'/[aä]/ui' => 'ا', '/[oö]/ui' => 'و', '/[uü]/ui' => 'ۇ',
'/[ï]/ui' => 'ىي', '/[ıIiİ]/u' => 'ى',
- '/c/ui' => 'تس',
+ '/c/ui' => 'تس',
'/ç/ui' => 'تش', '/h/ui' => 'ح',
#'/ç/ui' => 'چ', '/h/ui' => 'ھ',
'/b/ui' => 'ب','/d/ui' => 'د',
@@ -189,7 +189,6 @@ class KkConverter extends LanguageConverter {
'/r/ui' => 'ر', '/s/ui' => 'س', '/ş/ui' => 'ش', '/t/ui' => 'ت',
'/v/ui' => 'ۆ', '/w/ui' => 'ۋ', '/x/ui' => 'ح', '/z/ui' => 'ز',*/
);
-
}
/* rules should be defined as -{ekavian | iyekavian-} -or-
@@ -206,7 +205,7 @@ class KkConverter extends LanguageConverter {
foreach($this->mVariants as $v) {
$carray[$v] = $rule;
}
-
+
return $carray;
}
@@ -214,7 +213,7 @@ class KkConverter extends LanguageConverter {
function parserConvert( $text, &$parser ){
if(is_object($parser->getTitle() ) && $parser->getTitle()->isTalkPage())
$this->mDoContentConvert=false;
- else
+ else
$this->mDoContentConvert=true;
return parent::parserConvert($text, $parser );
@@ -222,7 +221,7 @@ class KkConverter extends LanguageConverter {
/*
* A function wrapper:
- * - if there is no selected variant, leave the link
+ * - if there is no selected variant, leave the link
* names as they were
* - do not try to find variants for usernames
*/
@@ -246,7 +245,7 @@ class KkConverter extends LanguageConverter {
*/
function autoConvert($text, $toVariant=false) {
global $wgTitle;
- if(is_object($wgTitle) && $wgTitle->getNameSpace()==NS_IMAGE){
+ if(is_object($wgTitle) && $wgTitle->getNameSpace()==NS_IMAGE){
$imagename = $wgTitle->getNsText();
if(preg_match("/^$imagename:/",$text)) return $text;
}
@@ -363,9 +362,12 @@ class KkConverter extends LanguageConverter {
}
-/* class that handles Cyrillic, Latin and Arabic scripts for Kazakh
- right now it only distinguish kk_cyrl, kk_latn, kk_arab and kk_kz, kk_tr, kk_cn.
-*/
+/**
+ * class that handles Cyrillic, Latin and Arabic scripts for Kazakh
+ * right now it only distinguish kk_cyrl, kk_latn, kk_arab and kk_kz, kk_tr, kk_cn.
+ *
+ * @ingroup Language
+ */
class LanguageKk extends LanguageKk_cyrl {
function __construct() {
@@ -374,7 +376,7 @@ class LanguageKk extends LanguageKk_cyrl {
$variants = array( 'kk', 'kk-cyrl', 'kk-latn', 'kk-arab', 'kk-kz', 'kk-tr', 'kk-cn' );
$variantfallbacks = array(
- 'kk' => 'kk-kz',
+ 'kk' => 'kk-cyrl',
'kk-cyrl' => 'kk',
'kk-latn' => 'kk',
'kk-arab' => 'kk',
@@ -393,7 +395,7 @@ class LanguageKk extends LanguageKk_cyrl {
*
* @return bool
*/
- function isRTL() {
+ function isRTL() {
$variant = $this->getPreferredVariant();
if ( $variant == 'kk-arab' || $variant == 'kk-cn' ) {
return true;
@@ -404,7 +406,7 @@ class LanguageKk extends LanguageKk_cyrl {
/*
* It fixes issue with ucfirst for transforming 'i' to 'İ'
- *
+ *
*/
function ucfirst ( $string ) {
$variant = $this->getPreferredVariant();
@@ -418,7 +420,7 @@ class LanguageKk extends LanguageKk_cyrl {
/*
* It fixes issue with lcfirst for transforming 'I' to 'ı'
- *
+ *
*/
function lcfirst ( $string ) {
$variant = $this->getPreferredVariant();
@@ -453,5 +455,4 @@ class LanguageKk extends LanguageKk_cyrl {
wfProfileOut( __METHOD__ );
return $word;
}
-
}
diff --git a/languages/classes/LanguageKk_cyrl.php b/languages/classes/LanguageKk_cyrl.php
index a7f07573..e0a1b125 100644
--- a/languages/classes/LanguageKk_cyrl.php
+++ b/languages/classes/LanguageKk_cyrl.php
@@ -1,10 +1,8 @@
<?php
/** Kazakh (Қазақша)
- *
- *
- * @addtogroup Language
- */
-
+ *
+ * @ingroup Language
+ */
class LanguageKk_cyrl extends Language {
@@ -153,7 +151,7 @@ class LanguageKk_cyrl extends Language {
} elseif ( in_array( $wordLastVowel, $backVowels ) ) {
$word = $word . "да";
}
- }
+ }
break;
case "dc41":
case "possessive locative": #täweldık + jatıs
@@ -169,7 +167,7 @@ class LanguageKk_cyrl extends Language {
} elseif ( in_array( $wordLastVowel, $backVowels ) ) {
$word = $word . "нда";
}
- }
+ }
break;
case "dc5":
case "ablative": #şığıs
@@ -373,7 +371,7 @@ class LanguageKk_cyrl extends Language {
} elseif ( in_array( $wordLastVowel, $backVowels ) ) {
$word = $word . "da";
}
- }
+ }
break;
case "dc41":
case "possessive locative": #täweldık + jatıs
@@ -389,7 +387,7 @@ class LanguageKk_cyrl extends Language {
} elseif ( in_array( $wordLastVowel, $backVowels ) ) {
$word = $word . "nda";
}
- }
+ }
break;
case "dc5":
case "ablative": #şığıs
@@ -593,7 +591,7 @@ class LanguageKk_cyrl extends Language {
} elseif ( in_array( $wordLastVowel, $backVowels ) ) {
$word = $word . "دا";
}
- }
+ }
break;
case "dc41":
case "possessive locative": #täweldık + jatıs
@@ -609,7 +607,7 @@ class LanguageKk_cyrl extends Language {
} elseif ( in_array( $wordLastVowel, $backVowels ) ) {
$word = $word . "ندا";
}
- }
+ }
break;
case "dc5":
case "ablative": #şığıs
@@ -681,7 +679,7 @@ class LanguageKk_cyrl extends Language {
// Put the word in a form we can play with since we're using UTF-8
$ar = preg_split('//u', parent::lc($word), -1, PREG_SPLIT_NO_EMPTY);
- // Here's an array with the order of the letters in the word reversed
+ // Here's an array with the order of the letters in the word reversed
// so we can find a match quicker *shrug*
$wordReversed = array_reverse( $ar );
diff --git a/languages/classes/LanguageKm.php b/languages/classes/LanguageKm.php
new file mode 100644
index 00000000..831feb9c
--- /dev/null
+++ b/languages/classes/LanguageKm.php
@@ -0,0 +1,17 @@
+<?php
+/** Khmer (ភាសាខ្មែរ)
+ *
+ * @ingroup Language
+ *
+ * @author Niklas Laxström
+ */
+class LanguageKm extends Language {
+ function commafy($_) {
+ /* NO-op for Khmer. Cannot use
+ * $separatorTransformTable = array( ',' => '' )
+ * That would break when parsing and doing strstr '' => 'foo';
+ */
+ return $_;
+ }
+
+}
diff --git a/languages/classes/LanguageKsh.php b/languages/classes/LanguageKsh.php
index f72046e7..b21cc4d7 100644
--- a/languages/classes/LanguageKsh.php
+++ b/languages/classes/LanguageKsh.php
@@ -1,11 +1,11 @@
<?php
+
/** Ripuarian (Ripoarėsh)
*
- * @addtogroup Language
+ * @ingroup Language
*
* @author Purodha Blissenbach
*/
-
class LanguageKsh extends Language {
/**
* Avoid grouping whole numbers between 0 to 9999
@@ -34,4 +34,3 @@ class LanguageKsh extends Language {
}
}
}
-
diff --git a/languages/classes/LanguageKu.deps.php b/languages/classes/LanguageKu.deps.php
index 7aeba604..43e2916c 100644
--- a/languages/classes/LanguageKu.deps.php
+++ b/languages/classes/LanguageKu.deps.php
@@ -3,10 +3,7 @@
// LanguageKu.php is compiled, working around a bug in the APC opcode
// cache on PHP 5, where cached code can break if the include order
// changed on a subsequent page view.
-// see http://mail.wikipedia.org/pipermail/wikitech-l/2006-January/033660.html
-
+// see http://lists.wikimedia.org/pipermail/wikitech-l/2006-January/021311.html
require_once( dirname(__FILE__).'/../LanguageConverter.php' );
require_once( dirname(__FILE__).'/LanguageKu_ku.php' );
-
-
diff --git a/languages/classes/LanguageKu.php b/languages/classes/LanguageKu.php
index d37d4287..55eb0d56 100644
--- a/languages/classes/LanguageKu.php
+++ b/languages/classes/LanguageKu.php
@@ -1,19 +1,18 @@
<?php
-/** Kurdish
- * converter routines
- *
- * @addtogroup Language
- */
-
require_once( dirname(__FILE__).'/../LanguageConverter.php' );
require_once( dirname(__FILE__).'/LanguageKu_ku.php' );
+/** Kurdish
+ * converter routines
+ *
+ * @ingroup Language
+ */
class KuConverter extends LanguageConverter {
var $mArabicToLatin = array(
'ب' => 'b', 'ج' => 'c', 'چ' => 'ç', 'د' => 'd', 'ف' => 'f', 'گ' => 'g', 'ھ' => 'h',
'ہ' => 'h', 'ه' => 'h', 'ح' => 'h', 'ژ' => 'j', 'ك' => 'k', 'ک' => 'k', 'ل' => 'l',
'م' => 'm', 'ن' => 'n', 'پ' => 'p', 'ق' => 'q', 'ر' => 'r', 'س' => 's', 'ش' => 'ş',
- 'ت' => 't', 'ڤ' => 'v', 'خ' => 'x', 'غ' => 'x', 'ز' => 'z',
+ 'ت' => 't', 'ڤ' => 'v', 'خ' => 'x', 'غ' => 'x', 'ز' => 'z',
// ک و => ku -- ist richtig
// و ك=> ku -- ist auch richtig
@@ -34,7 +33,7 @@ class KuConverter extends LanguageConverter {
'ۆ' => 'o',
'و' => 'w',
'ئ' => '', # initial hemze should not be shown
- '،' => ',',
+ '،' => ',',
'ع' => '\'', # ayn
'؟' => '?',
@@ -82,7 +81,7 @@ class KuConverter extends LanguageConverter {
'u' => 'و',
'û' => 'وو',
'w' => 'و',
- ',' => '،',
+ ',' => '،',
'?' => '؟',
# Try to replace the leading vowel
@@ -108,7 +107,7 @@ class KuConverter extends LanguageConverter {
' U' => 'ئو ',
' Û' => 'ئوو ',
# eyn erstmal deaktivieren, einfache Anführungsstriche sind einfach zu häufig, um sie als eyn zu interpretieren
- # '\'' => 'ع',
+ # '\'' => 'ع',
/* # deactivated for now, breaks links i.e. in header of Special:Recentchanges :-(
# digits
@@ -133,12 +132,11 @@ class KuConverter extends LanguageConverter {
);
}
-
// Do not convert content on talk pages
function parserConvert( $text, &$parser ){
if(is_object($parser->getTitle() ) && $parser->getTitle()->isTalkPage())
$this->mDoContentConvert=false;
- else
+ else
$this->mDoContentConvert=true;
return parent::parserConvert($text, $parser );
@@ -146,7 +144,7 @@ class KuConverter extends LanguageConverter {
/*
* A function wrapper:
- * - if there is no selected variant, leave the link
+ * - if there is no selected variant, leave the link
* names as they were
* - do not try to find variants for usernames
*/
@@ -180,7 +178,7 @@ class KuConverter extends LanguageConverter {
*/
function autoConvert($text, $toVariant=false) {
global $wgTitle;
- if(is_object($wgTitle) && $wgTitle->getNameSpace()==NS_IMAGE){
+ if(is_object($wgTitle) && $wgTitle->getNameSpace()==NS_IMAGE){
$imagename = $wgTitle->getNsText();
if(preg_match("/^$imagename:/",$text)) return $text;
}
@@ -227,6 +225,9 @@ class KuConverter extends LanguageConverter {
}
}
+/**
+ * @ingroup Language
+ */
class LanguageKu extends LanguageKu_ku {
function __construct() {
diff --git a/languages/classes/LanguageKu_ku.php b/languages/classes/LanguageKu_ku.php
index d8be6d9b..5dec67e6 100644
--- a/languages/classes/LanguageKu_ku.php
+++ b/languages/classes/LanguageKu_ku.php
@@ -1,11 +1,9 @@
<?php
-/** Kurdish
- *
- *
- * @addtogroup Language
- */
-
+/** Kurdish
+ *
+ * @ingroup Language
+ */
class LanguageKu_ku extends Language {
/** # Convert from the nominative form of a noun to some other case
@@ -31,5 +29,3 @@ class LanguageKu_ku extends Language {
}
}
}
-
-
diff --git a/languages/classes/LanguageLa.php b/languages/classes/LanguageLa.php
index 339eae15..c26d0e8e 100644
--- a/languages/classes/LanguageLa.php
+++ b/languages/classes/LanguageLa.php
@@ -1,9 +1,9 @@
<?php
-/** Latin (lingua Latina)
- *
- * @addtogroup Language
- */
+/** Latin (lingua Latina)
+ *
+ * @ingroup Language
+ */
class LanguageLa extends Language {
/**
* Convert from the nominative form of a noun to some other case
@@ -75,8 +75,4 @@ class LanguageLa extends Language {
return $word;
}
}
-
}
-
-
-
diff --git a/languages/classes/LanguageLt.php b/languages/classes/LanguageLt.php
index 0e14cbf8..87519d98 100644
--- a/languages/classes/LanguageLt.php
+++ b/languages/classes/LanguageLt.php
@@ -1,10 +1,9 @@
<?php
+
/** Lithuanian (Lietuvių)
*
- * @addtogroup Language
- *
+ * @ingroup Language
*/
-
class LanguageLt extends Language {
/* Word forms (with examples):
1 - vienas (1) lapas, dvidešimt vienas (21) lapas
@@ -24,4 +23,3 @@ class LanguageLt extends Language {
return $forms[2];
}
}
-
diff --git a/languages/classes/LanguageLv.php b/languages/classes/LanguageLv.php
index a3f076e8..1c82831c 100644
--- a/languages/classes/LanguageLv.php
+++ b/languages/classes/LanguageLv.php
@@ -1,14 +1,14 @@
<?php
+
/** Latvian (Latviešu)
*
- * @addtogroup Language
+ * @ingroup Language
*
* @author Niklas Laxström
*
* @copyright Copyright © 2006, Niklas Laxström
* @license http://www.gnu.org/copyleft/gpl.html GNU General Public License 2.0 or later
*/
-
class LanguageLv extends Language {
/**
* Plural form transformations. Using the first form for words with the last digit 1, but not for words with the last digits 11, and the second form for all the others.
@@ -45,15 +45,13 @@ class LanguageLv extends Language {
$wgGrammarForms['lv']['akuzatīvs']['Vikivārdnīca'] = 'Vikivārdnīcu';
$wgGrammarForms['lv']['lokatīvs' ]['Vikipēdija'] = 'Vikipēdijā';
$wgGrammarForms['lv']['lokatīvs' ]['Vikivārdnīca'] = 'Vikivārdnīcā';
-
+
if ( isset($wgGrammarForms['lv'][$case][$word]) ) {
return $wgGrammarForms['lv'][$case][$word];
}
return $word;
-
}
-
}
diff --git a/languages/classes/LanguageMt.php b/languages/classes/LanguageMt.php
new file mode 100644
index 00000000..fff779ac
--- /dev/null
+++ b/languages/classes/LanguageMt.php
@@ -0,0 +1,22 @@
+<?php
+
+/** Maltese (Malti)
+ *
+ * @ingroup Language
+ *
+ * @author Niklas Laxström
+ */
+
+class LanguageMt extends Language {
+ function convertPlural( $count, $forms ) {
+ if ( !count($forms) ) { return ''; }
+
+ $forms = $this->preConvertPlural( $forms, 4 );
+
+ if ( $count === 1 ) $index = 0;
+ elseif ( $count === 0 || ( $count%100>1 && $count%100<11) ) $index = 1;
+ elseif ( $count%100>10 && $count%100<20 ) $index = 2;
+ else $index = 3;
+ return $forms[$index];
+ }
+} \ No newline at end of file
diff --git a/languages/classes/LanguagePl.php b/languages/classes/LanguagePl.php
index 35b2a9c0..54314fab 100644
--- a/languages/classes/LanguagePl.php
+++ b/languages/classes/LanguagePl.php
@@ -1,9 +1,9 @@
<?php
+
/** Polish (polski)
*
- * @addtogroup Language
+ * @ingroup Language
*/
-
class LanguagePl extends Language {
function convertPlural( $count, $forms ) {
if ( !count($forms) ) { return ''; }
@@ -21,4 +21,4 @@ class LanguagePl extends Language {
return $forms[2]; // plural genitive
}
}
-} \ No newline at end of file
+}
diff --git a/languages/classes/LanguagePt_br.php b/languages/classes/LanguagePt_br.php
index 78965ae3..49726fe7 100644
--- a/languages/classes/LanguagePt_br.php
+++ b/languages/classes/LanguagePt_br.php
@@ -1,10 +1,9 @@
<?php
+
/** Brazilian Portugese (Portuguêsi do Brasil)
*
- * @addtogroup Language
- *
+ * @ingroup Language
*/
-
class LanguagePt_br extends Language {
/**
* Use singular form for zero (see bug 7309)
@@ -16,4 +15,3 @@ class LanguagePt_br extends Language {
return ($count <= 1) ? $forms[0] : $forms[1];
}
}
-
diff --git a/languages/classes/LanguageRmy.php b/languages/classes/LanguageRmy.php
index e6096348..e3cab8f4 100644
--- a/languages/classes/LanguageRmy.php
+++ b/languages/classes/LanguageRmy.php
@@ -1,5 +1,8 @@
<?php
+/**
+ * @ingroup Language
+ */
class LanguageRmy extends Language {
/**
* Convert from the nominative form of a noun to some other case
@@ -68,5 +71,3 @@ class LanguageRmy extends Language {
return $word; # this will return the original value for 'nominative' and all undefined case values
}
}
-
-
diff --git a/languages/classes/LanguageRu.php b/languages/classes/LanguageRu.php
index f6311b33..d857920a 100644
--- a/languages/classes/LanguageRu.php
+++ b/languages/classes/LanguageRu.php
@@ -1,12 +1,11 @@
<?php
+
/** Russian (русский язык)
*
* You can contact Alexander Sigachov (alexander.sigachov at Googgle Mail)
*
- * @addtogroup Language
+ * @ingroup Language
*/
-
-/* Please, see Language.php for general function comments */
class LanguageRu extends Language {
# Convert from the nominative form of a noun to some other case
# Invoked with {{grammar:case|word}}
@@ -104,5 +103,3 @@ class LanguageRu extends Language {
}
}
}
-
-
diff --git a/languages/classes/LanguageSk.php b/languages/classes/LanguageSk.php
index edbe011c..19e66bae 100644
--- a/languages/classes/LanguageSk.php
+++ b/languages/classes/LanguageSk.php
@@ -1,8 +1,9 @@
<?php
+
/**
* Slovak (Slovenčina)
*
- * @addtogroup Language
+ * @ingroup Language
*/
class LanguageSk extends Language {
# Convert from the nominative form of a noun to some other case
@@ -89,6 +90,4 @@ class LanguageSk extends Language {
}
return $forms[$index];
}
-
}
-
diff --git a/languages/classes/LanguageSl.php b/languages/classes/LanguageSl.php
index 9b1e5c2b..8c1b503b 100644
--- a/languages/classes/LanguageSl.php
+++ b/languages/classes/LanguageSl.php
@@ -1,8 +1,8 @@
<?php
+
/** Slovenian (Slovenščina)
*
- * @addtogroup Language
- *
+ * @ingroup Language
*/
class LanguageSl extends Language {
# Convert from the nominative form of a noun to some other case
@@ -88,7 +88,4 @@ class LanguageSl extends Language {
}
return $forms[$index];
}
-
-
}
-
diff --git a/languages/classes/LanguageSr.deps.php b/languages/classes/LanguageSr.deps.php
index 018a83c2..ffdd234b 100644
--- a/languages/classes/LanguageSr.deps.php
+++ b/languages/classes/LanguageSr.deps.php
@@ -3,8 +3,7 @@
// LanguageSr.php is compiled, working around a bug in the APC opcode
// cache on PHP 5, where cached code can break if the include order
// changed on a subsequent page view.
-// see http://mail.wikipedia.org/pipermail/wikitech-l/2006-January/033660.html
+// see http://lists.wikimedia.org/pipermail/wikitech-l/2006-January/021311.html
require_once( dirname(__FILE__).'/LanguageSr_ec.php' );
require_once( dirname(__FILE__).'/../LanguageConverter.php' );
-
diff --git a/languages/classes/LanguageSr.php b/languages/classes/LanguageSr.php
index 7fe67941..d57c733d 100644
--- a/languages/classes/LanguageSr.php
+++ b/languages/classes/LanguageSr.php
@@ -1,19 +1,18 @@
<?php
-/**
- * @addtogroup Language
- */
-
-/*
- There are two levels of conversion for Serbian: the script level
- (Cyrillics <-> Latin), and the variant level (ekavian
- <->iyekavian). The two are orthogonal. So we really only need two
- dictionaries: one for Cyrillics and Latin, and one for ekavian and
- iyekavian.
-*/
+
require_once( dirname(__FILE__).'/../LanguageConverter.php' );
require_once( dirname(__FILE__).'/LanguageSr_ec.php' );
require_once( dirname(__FILE__).'/LanguageSr_el.php' );
+/**
+ * There are two levels of conversion for Serbian: the script level
+ * (Cyrillics <-> Latin), and the variant level (ekavian
+ * <->iyekavian). The two are orthogonal. So we really only need two
+ * dictionaries: one for Cyrillics and Latin, and one for ekavian and
+ * iyekavian.
+ *
+ * @ingroup Language
+ */
class SrConverter extends LanguageConverter {
var $mToLatin = array(
'а' => 'a', 'б' => 'b', 'в' => 'v', 'г' => 'g', 'д' => 'd',
@@ -54,9 +53,7 @@ class SrConverter extends LanguageConverter {
function loadDefaultTables() {
$this->mTables = array(
'sr-ec' => new ReplacementArray( $this->mToCyrillics ),
- 'sr-jc' => new ReplacementArray( $this->mToCyrillics),
'sr-el' => new ReplacementArray( $this->mToLatin),
- 'sr-jl' => new ReplacementArray( $this->mToLatin),
'sr' => new ReplacementArray()
);
}
@@ -75,7 +72,7 @@ class SrConverter extends LanguageConverter {
foreach($this->mVariants as $v) {
$carray[$v] = $rule;
}
-
+
return $carray;
}
@@ -83,7 +80,7 @@ class SrConverter extends LanguageConverter {
function parserConvert( $text, &$parser ){
if(is_object($parser->getTitle() ) && $parser->getTitle()->isTalkPage())
$this->mDoContentConvert=false;
- else
+ else
$this->mDoContentConvert=true;
return parent::parserConvert($text, $parser );
@@ -91,7 +88,7 @@ class SrConverter extends LanguageConverter {
/*
* A function wrapper:
- * - if there is no selected variant, leave the link
+ * - if there is no selected variant, leave the link
* names as they were
* - do not try to find variants for usernames
*/
@@ -125,12 +122,12 @@ class SrConverter extends LanguageConverter {
*/
function autoConvert($text, $toVariant=false) {
global $wgTitle;
- if(is_object($wgTitle) && $wgTitle->getNameSpace()==NS_IMAGE){
+ if(is_object($wgTitle) && $wgTitle->getNameSpace()==NS_IMAGE){
$imagename = $wgTitle->getNsText();
if(preg_match("/^$imagename:/",$text)) return $text;
}
return parent::autoConvert($text,$toVariant);
- }
+ }
/**
* It translates text into variant, specials:
@@ -145,7 +142,7 @@ class SrConverter extends LanguageConverter {
$reg = '/^'.$roman.'$|^'.$roman.$breaks.'|'.$breaks.$roman.'$|'.$breaks.$roman.$breaks.'/';
$matches = preg_split($reg, $text, -1, PREG_SPLIT_OFFSET_CAPTURE);
-
+
$m = array_shift($matches);
if( !isset( $this->mTables[$toVariant] ) ) {
throw new MWException( "Broken variant table: " . implode( ',', array_keys( $this->mTables ) ) );
@@ -160,24 +157,23 @@ class SrConverter extends LanguageConverter {
return $ret;
}
-
}
+/**
+ * @ingroup Language
+ */
class LanguageSr extends LanguageSr_ec {
function __construct() {
global $wgHooks;
parent::__construct();
- // these variants are currently UNUSED:
- // 'sr-jc', 'sr-jl'
$variants = array('sr', 'sr-ec', 'sr-el');
$variantfallbacks = array(
'sr' => 'sr-ec',
'sr-ec' => 'sr',
'sr-el' => 'sr',
- );
-
+ );
$marker = array();//don't mess with these, leave them as they are
$flags = array(
@@ -188,4 +184,3 @@ class LanguageSr extends LanguageSr_ec {
$wgHooks['ArticleSaveComplete'][] = $this->mConverter;
}
}
-
diff --git a/languages/classes/LanguageSr_ec.php b/languages/classes/LanguageSr_ec.php
index 1f9bb716..c7300198 100644
--- a/languages/classes/LanguageSr_ec.php
+++ b/languages/classes/LanguageSr_ec.php
@@ -1,12 +1,8 @@
<?php
-/**
- * @addtogroup Language
- */
-
-#--------------------------------------------------------------------------
-# Internationalisation code
-#--------------------------------------------------------------------------
+/**
+ * @ingroup Language
+ */
class LanguageSr_ec extends Language {
function convertPlural( $count, $forms ) {
if ( !count($forms) ) { return ''; }
@@ -24,6 +20,4 @@ class LanguageSr_ec extends Language {
}
}
}
-
}
-
diff --git a/languages/classes/LanguageSr_el.deps.php b/languages/classes/LanguageSr_el.deps.php
index d73638f4..cec44dcc 100644
--- a/languages/classes/LanguageSr_el.deps.php
+++ b/languages/classes/LanguageSr_el.deps.php
@@ -6,4 +6,3 @@
// see http://mail.wikipedia.org/pipermail/wikitech-l/2006-January/033660.html
require_once( dirname(__FILE__).'/LanguageSr_ec.php' );
-
diff --git a/languages/classes/LanguageSr_el.php b/languages/classes/LanguageSr_el.php
index a444e3b7..6ad55f4d 100644
--- a/languages/classes/LanguageSr_el.php
+++ b/languages/classes/LanguageSr_el.php
@@ -1,12 +1,8 @@
<?php
-/**
- * @addtogroup Language
- */
-
-#--------------------------------------------------------------------------
-# Internationalisation code
-#--------------------------------------------------------------------------
+/**
+ * @ingroup Language
+ */
class LanguageSr_el extends Language {
function convertPlural( $count, $forms ) {
if ( !count($forms) ) { return ''; }
@@ -24,6 +20,4 @@ class LanguageSr_el extends Language {
}
}
}
-
}
-
diff --git a/languages/classes/LanguageTg.php b/languages/classes/LanguageTg.php
new file mode 100644
index 00000000..3a2840db
--- /dev/null
+++ b/languages/classes/LanguageTg.php
@@ -0,0 +1,104 @@
+<?php
+
+require_once( dirname(__FILE__).'/../LanguageConverter.php' );
+
+/**
+ * Converts Tajiki to latin orthography
+ * @ingroup Language
+ */
+class TgConverter extends LanguageConverter {
+ private $table = array(
+ 'а' => 'a',
+ 'б' => 'b',
+ 'в' => 'v',
+ 'г' => 'g',
+ 'д' => 'd',
+ 'е' => 'e',
+ 'ё' => 'jo',
+ 'ж' => 'ƶ',
+ 'з' => 'z',
+ 'ии ' => 'iji ',
+ 'и' => 'i',
+ 'й' => 'j',
+ 'к' => 'k',
+ 'л' => 'l',
+ 'м' => 'm',
+ 'н' => 'n',
+ 'о' => 'o',
+ 'п' => 'p',
+ 'р' => 'r',
+ 'с' => 's',
+ 'т' => 't',
+ 'у' => 'u',
+ 'ф' => 'f',
+ 'х' => 'x',
+ 'ч' => 'c',
+ 'ш' => 'ş',
+ 'ъ' => '\'',
+ 'э' => 'e',
+ 'ю' => 'ju',
+ 'я' => 'ja',
+ 'ғ' => 'ƣ',
+ 'ӣ' => 'ī',
+ 'қ' => 'q',
+ 'ӯ' => 'ū',
+ 'ҳ' => 'h',
+ 'ҷ' => 'ç',
+ 'ц' => 'ts',
+ 'А' => 'A',
+ 'Б' => 'B',
+ 'В' => 'V',
+ 'Г' => 'G',
+ 'Д' => 'D',
+ 'Е' => 'E',
+ 'Ё' => 'Jo',
+ 'Ж' => 'Ƶ',
+ 'З' => 'Z',
+ 'И' => 'I',
+ 'Й' => 'J',
+ 'К' => 'K',
+ 'Л' => 'L',
+ 'М' => 'M',
+ 'Н' => 'N',
+ 'О' => 'O',
+ 'П' => 'P',
+ 'Р' => 'R',
+ 'С' => 'S',
+ 'Т' => 'T',
+ 'У' => 'U',
+ 'Ф' => 'F',
+ 'Х' => 'X',
+ 'Ч' => 'C',
+ 'Ш' => 'Ş',
+ 'Ъ' => '\'',
+ 'Э' => 'E',
+ 'Ю' => 'Ju',
+ 'Я' => 'Ja',
+ 'Ғ' => 'Ƣ',
+ 'Ӣ' => 'Ī',
+ 'Қ' => 'Q',
+ 'Ӯ' => 'Ū',
+ 'Ҳ' => 'H',
+ 'Ҷ' => 'Ç',
+ 'Ц' => 'Ts',
+ );
+
+ function loadDefaultTables() {
+ $this->mTables = array(
+ 'tg-latn' => new ReplacementArray( $this->table ),
+ 'tg' => new ReplacementArray()
+ );
+ }
+
+}
+
+/**
+ * @ingroup Language
+ */
+class LanguageTg extends Language {
+ function __construct() {
+ parent::__construct();
+ $variants = array( 'tg', 'tg-latn' );
+ $this->mConverter = new TgConverter( $this, 'tg', $variants );
+ }
+}
diff --git a/languages/classes/LanguageTr.php b/languages/classes/LanguageTr.php
index 9a051a5c..8a2dee09 100644
--- a/languages/classes/LanguageTr.php
+++ b/languages/classes/LanguageTr.php
@@ -1,8 +1,9 @@
<?php
+
/**
* Turkish (Türkçe)
*
- * @addtogroup Language
+ * @ingroup Language
*/
class LanguageTr extends Language {
function ucfirst ( $string ) {
@@ -12,6 +13,4 @@ class LanguageTr extends Language {
return parent::ucfirst( $string );
}
}
-
}
-
diff --git a/languages/classes/LanguageTyv.php b/languages/classes/LanguageTyv.php
index fd0a18c6..d77f7966 100644
--- a/languages/classes/LanguageTyv.php
+++ b/languages/classes/LanguageTyv.php
@@ -1,21 +1,17 @@
<?php
+
/** Tyvan localization (Тыва дыл)
- * @addtogroup Language
+ * From friends at tyvawiki.org
+ *
+ * @ingroup Language
*/
-
-# From friends at tyvawiki.org
-
-#--------------------------------------------------------------------------
-# Internationalisation code
-#--------------------------------------------------------------------------
-
class LanguageTyv extends Language {
/**
* Grammatical transformations, needed for inflected languages
* Invoked by putting {{grammar:case|word}} in a message
*
- * @param string $word
- * @param string $case
+ * @param $word string
+ * @param $case string
* @return string
*/
function convertGrammar( $word, $case ) {
@@ -24,7 +20,6 @@ class LanguageTyv extends Language {
return $wgGrammarForms['tyv'][$case][$word];
}
-
// Set up some constants...
$allVowels = array("е", "и", "э", "ө", "ү", "а", "ё", "о", "у", "ы", "ю", "я", "a", "e", "i", "o", "ö", "u", "ü", "y");
$frontVowels = array("е", "и", "э", "ө", "ү", "e", "i", "ö", "ü");
@@ -229,4 +224,3 @@ class LanguageTyv extends Language {
return $word;
}
}
-
diff --git a/languages/classes/LanguageUk.php b/languages/classes/LanguageUk.php
index 7d2f58bf..dbebb134 100644
--- a/languages/classes/LanguageUk.php
+++ b/languages/classes/LanguageUk.php
@@ -1,11 +1,9 @@
<?php
-/** Ukrainian (українська мова)
- *
- * @package MediaWiki
- * @subpackage Language
- */
-/* Please, see Language.php for general function comments */
+/** Ukrainian (українська мова)
+ *
+ * @ingroup Language
+ */
class LanguageUk extends Language {
# Convert from the nominative form of a noun to some other case
# Invoked with {{grammar:case|word}}
@@ -60,6 +58,10 @@ class LanguageUk extends Language {
function convertPlural( $count, $forms ) {
if ( !count($forms) ) { return ''; }
+
+ //if no number with word, then use $form[0] for singular and $form[1] for plural or zero
+ if( count($forms) === 2 ) return $count == 1 ? $forms[0] : $forms[1];
+
$forms = $this->preConvertPlural( $forms, 3 );
if ($count > 10 && floor(($count % 100) / 10) == 1) {
@@ -87,4 +89,3 @@ class LanguageUk extends Language {
}
}
}
-
diff --git a/languages/classes/LanguageWa.php b/languages/classes/LanguageWa.php
index 194c7720..d97b2026 100644
--- a/languages/classes/LanguageWa.php
+++ b/languages/classes/LanguageWa.php
@@ -2,7 +2,7 @@
/**
* Walloon (Walon)
*
- * @addtogroup Language
+ * @ingroup Language
*/
# NOTE: cweri après "NOTE:" po des racsegnes so des ratournaedjes
@@ -27,13 +27,13 @@ class LanguageWa extends Language {
$d = substr($ts, 0, 4). '-' . substr($ts, 4, 2). '-' .substr($ts, 6, 2);
return $d;
}
-
+
# dd/mm/YYYY format
if ( $datePreference == 'walloon short' ) {
$d = substr($ts, 6, 2). '/' . substr($ts, 4, 2). '/' .substr($ts, 0, 4);
return $d;
}
-
+
# Walloon format
#
# we output this in all other cases
@@ -61,10 +61,8 @@ class LanguageWa extends Language {
if ( $datePreference == 'ISO 8601' ) {
return parent::timeanddate( $ts, $adj, $format, $tc );
} else {
- return $this->date( $ts, $adj, $format, $tc ) . ' a ' .
+ return $this->date( $ts, $adj, $format, $tc ) . ' a ' .
$this->time( $ts, $adj, $format, $tc );
}
}
}
-
-
diff --git a/languages/classes/LanguageYue.php b/languages/classes/LanguageYue.php
index 26e45984..fdc227b3 100644
--- a/languages/classes/LanguageYue.php
+++ b/languages/classes/LanguageYue.php
@@ -1,7 +1,7 @@
<?php
/**
- * @addtogroup Language
- */
+ * @ingroup Language
+ */
class LanguageYue extends Language {
function stripForSearch( $string ) {
# MySQL fulltext index doesn't grok utf-8, so we
diff --git a/languages/classes/LanguageZh.deps.php b/languages/classes/LanguageZh.deps.php
index 05e51799..542170a0 100644
--- a/languages/classes/LanguageZh.deps.php
+++ b/languages/classes/LanguageZh.deps.php
@@ -3,7 +3,7 @@
// LanguageZh.php is compiled, working around a bug in the APC opcode
// cache on PHP 5, where cached code can break if the include order
// changed on a subsequent page view.
-// see http://mail.wikipedia.org/pipermail/wikitech-l/2006-January/033660.html
+// see http://lists.wikimedia.org/pipermail/wikitech-l/2006-January/021311.html
require_once( dirname(__FILE__).'/LanguageZh_hans.php' );
require_once( dirname(__FILE__).'/../LanguageConverter.php' );
diff --git a/languages/classes/LanguageZh.php b/languages/classes/LanguageZh.php
index 337783a6..3d162a8e 100644
--- a/languages/classes/LanguageZh.php
+++ b/languages/classes/LanguageZh.php
@@ -1,35 +1,69 @@
<?php
-/**
- * @addtogroup Language
- */
+
require_once( dirname(__FILE__).'/../LanguageConverter.php' );
require_once( dirname(__FILE__).'/LanguageZh_hans.php' );
+/**
+ * @ingroup Language
+ */
class ZhConverter extends LanguageConverter {
+
+ function __construct($langobj, $maincode,
+ $variants=array(),
+ $variantfallbacks=array(),
+ $markup=array(),
+ $flags = array(),
+ $manualLevel = array() ) {
+ $this->mDescCodeSep = ':';
+ $this->mDescVarSep = ';';
+ parent::__construct($langobj, $maincode,
+ $variants,
+ $variantfallbacks,
+ $markup,
+ $flags,
+ $manualLevel);
+ $names = array(
+ 'zh' => '原文',
+ 'zh-hans' => '简体',
+ 'zh-hant' => '繁體',
+ 'zh-cn' => '大陆',
+ 'zh-tw' => '台灣',
+ 'zh-hk' => '香港',
+ 'zh-mo' => '澳門',
+ 'zh-sg' => '新加坡',
+ 'zh-my' => '大马',
+ );
+ $this->mVariantNames = array_merge($this->mVariantNames,$names);
+ }
+
function loadDefaultTables() {
require( dirname(__FILE__)."/../../includes/ZhConversion.php" );
$this->mTables = array(
'zh-hans' => new ReplacementArray( $zh2Hans ),
'zh-hant' => new ReplacementArray( $zh2Hant ),
'zh-cn' => new ReplacementArray( array_merge($zh2Hans, $zh2CN) ),
- 'zh-tw' => new ReplacementArray( array_merge($zh2Hant, $zh2TW) ),
- 'zh-sg' => new ReplacementArray( array_merge($zh2Hans, $zh2SG) ),
'zh-hk' => new ReplacementArray( array_merge($zh2Hant, $zh2HK) ),
+ 'zh-mo' => new ReplacementArray( array_merge($zh2Hant, $zh2HK) ),
+ 'zh-my' => new ReplacementArray( array_merge($zh2Hans, $zh2SG) ),
+ 'zh-sg' => new ReplacementArray( array_merge($zh2Hans, $zh2SG) ),
+ 'zh-tw' => new ReplacementArray( array_merge($zh2Hant, $zh2TW) ),
'zh' => new ReplacementArray
);
}
function postLoadTables() {
$this->mTables['zh-cn']->merge( $this->mTables['zh-hans'] );
- $this->mTables['zh-tw']->merge( $this->mTables['zh-hant'] );
- $this->mTables['zh-sg']->merge( $this->mTables['zh-hans'] );
$this->mTables['zh-hk']->merge( $this->mTables['zh-hant'] );
+ $this->mTables['zh-mo']->merge( $this->mTables['zh-hant'] );
+ $this->mTables['zh-my']->merge( $this->mTables['zh-hans'] );
+ $this->mTables['zh-sg']->merge( $this->mTables['zh-hans'] );
+ $this->mTables['zh-tw']->merge( $this->mTables['zh-hant'] );
}
/* there shouldn't be any latin text in Chinese conversion, so no need
to mark anything.
$noParse is there for compatibility with LanguageConvert::markNoConversion
- */
+ */
function markNoConversion($text, $noParse = false) {
return $text;
}
@@ -39,33 +73,44 @@ class ZhConverter extends LanguageConverter {
}
}
-
-/* class that handles both Traditional and Simplified Chinese
- right now it only distinguish zh_hans, zh_hant, zh_cn, zh_tw, zh_sg and zh_hk.
-*/
+/**
+ * class that handles both Traditional and Simplified Chinese
+ * right now it only distinguish zh_hans, zh_hant, zh_cn, zh_tw, zh_sg and zh_hk.
+ *
+ * @ingroup Language
+ */
class LanguageZh extends LanguageZh_hans {
function __construct() {
global $wgHooks;
parent::__construct();
- $variants = array('zh', 'zh-hans', 'zh-hant', 'zh-cn', 'zh-tw', 'zh-sg', 'zh-hk');
+ $variants = array('zh','zh-hans','zh-hant','zh-cn','zh-hk','zh-mo','zh-my','zh-sg','zh-tw');
$variantfallbacks = array(
- 'zh' => 'zh-hans',
- 'zh-hans' => 'zh',
- 'zh-hant' => 'zh',
- 'zh-cn' => 'zh-hans',
- 'zh-sg' => 'zh-hans',
- 'zh-tw' => 'zh-hant',
- 'zh-hk' => 'zh-hant',
+ 'zh' => array('zh-hans','zh-hant','zh-cn','zh-tw','zh-hk','zh-sg','zh-mo','zh-my'),
+ 'zh-hans' => array('zh-cn','zh-sg','zh-my'),
+ 'zh-hant' => array('zh-tw','zh-hk','zh-mo'),
+ 'zh-cn' => array('zh-hans','zh-sg','zh-my'),
+ 'zh-sg' => array('zh-hans','zh-cn','zh-my'),
+ 'zh-my' => array('zh-hans','zh-sg','zh-cn'),
+ 'zh-tw' => array('zh-hant','zh-hk','zh-mo'),
+ 'zh-hk' => array('zh-hant','zh-mo','zh-tw'),
+ 'zh-mo' => array('zh-hant','zh-hk','zh-tw'),
+ );
+ $ml=array(
+ 'zh' => 'disable',
+ 'zh-hans' => 'unidirectional',
+ 'zh-hant' => 'unidirectional',
);
- $this->mConverter = new ZhConverter( $this, 'zh', $variants, $variantfallbacks );
+ $this->mConverter = new ZhConverter( $this, 'zh',
+ $variants, $variantfallbacks,
+ array(),array(),
+ $ml);
$wgHooks['ArticleSaveComplete'][] = $this->mConverter;
}
-
# this should give much better diff info
function segmentForDiff( $text ) {
return preg_replace(
@@ -108,5 +153,5 @@ class LanguageZh extends LanguageZh_hans {
$ret = array_unique( explode('|', $terms) );
return $ret;
}
-
}
+
diff --git a/languages/classes/LanguageZh_hans.php b/languages/classes/LanguageZh_hans.php
index ed7da2b9..983dd485 100644
--- a/languages/classes/LanguageZh_hans.php
+++ b/languages/classes/LanguageZh_hans.php
@@ -1,7 +1,8 @@
<?php
+
/**
- * @addtogroup Language
- */
+ * @ingroup Language
+ */
class LanguageZh_hans extends Language {
function stripForSearch( $string ) {
# MySQL fulltext index doesn't grok utf-8, so we
diff --git a/languages/messages/MessagesAb.php b/languages/messages/MessagesAb.php
index 13873b77..deb003fb 100644
--- a/languages/messages/MessagesAb.php
+++ b/languages/messages/MessagesAb.php
@@ -1,9 +1,20 @@
<?php
/** Abkhazian (Аҧсуа)
*
- * @addtogroup Language
+ * @ingroup Language
+ * @file
*
+ * @author ОйЛ
*/
$fallback = 'ru';
+$messages = array(
+# All link text and link target definitions of links into project namespace that get used by other message strings, with the exception of user group pages (see grouppage) and the disambiguation template definition (see disambiguations).
+'mainpage' => 'Ихадоу адаҟьа',
+'mainpage-description' => 'Ихадоу адаҟьа',
+
+# Edit pages
+'summary' => 'Ятарлă саспаллисем:',
+
+);
diff --git a/languages/messages/MessagesAf.php b/languages/messages/MessagesAf.php
index fc2c47d3..355fa764 100644
--- a/languages/messages/MessagesAf.php
+++ b/languages/messages/MessagesAf.php
@@ -1,13 +1,16 @@
<?php
/** Afrikaans (Afrikaans)
*
- * @addtogroup Language
+ * @ingroup Language
+ * @file
*
- * @author SPQRobin
* @author Adriaan
- * @author Siebrand
- * @author Spacebirdy
+ * @author Anrie
+ * @author Arnobarnard
* @author Manie
+ * @author Naudefj
+ * @author SPQRobin
+ * @author Spacebirdy
*/
$skinNames = array(
@@ -52,8 +55,8 @@ $messages = array(
'tog-extendwatchlist' => 'Brei dophoulys uit om alle toepaslike wysigings te wys',
'tog-usenewrc' => 'Verbeterde onlangse wysigingslys (vir moderne blaaiers).',
'tog-numberheadings' => 'Nommer opskrifte outomaties',
-'tog-showtoolbar' => 'Wys redigeergereedskap',
-'tog-editondblclick' => 'Wysig blaaie met dubbelkliek (JavaScript).',
+'tog-showtoolbar' => 'Wys redigeergereedskap (vereis JavaScript)',
+'tog-editondblclick' => 'Dubbelkliek om blaaie te wysig (benodig JavaScript).',
'tog-editsection' => 'Wys [wysig]-skakels vir elke afdeling',
'tog-editsectiononrightclick' => 'Wysig afdeling met regskliek op afdeling se titel (JavaScript)',
'tog-showtoc' => 'Wys inhoudsopgawe (by bladsye met meer as drie opskrifte)',
@@ -65,14 +68,16 @@ $messages = array(
'tog-watchdeletion' => 'Voeg bladsye wat ek verwyder by my dophoulys',
'tog-minordefault' => 'Merk alle wysigings automaties as klein by verstek.',
'tog-previewontop' => 'Wys voorskou bo wysigingsboks.',
-'tog-previewonfirst' => 'Wys voorksou met eerste wysiging',
+'tog-previewonfirst' => 'Wys voorskou met eerste wysiging',
'tog-nocache' => 'Deaktiveer bladsykasstelsel (Engels: caching)',
-'tog-enotifwatchlistpages' => 'Stuur vir my epos met bladsyveranderings',
-'tog-enotifusertalkpages' => 'Stuur vir my epos as my eie besprekingsblad verander word',
-'tog-enotifminoredits' => 'Stuur ook epos vir klein bladsywysigings',
-'tog-enotifrevealaddr' => 'Stel my eposadres bloot in kennisgewingspos',
+'tog-enotifwatchlistpages' => 'Stuur vir my e-pos met bladsyveranderings',
+'tog-enotifusertalkpages' => 'Stuur vir my e-pos as my eie besprekingsblad verander word',
+'tog-enotifminoredits' => 'Stuur ook e-pos vir klein bladsywysigings',
+'tog-enotifrevealaddr' => 'Stel my e-posadres bloot in kennisgewingspos',
+'tog-shownumberswatching' => 'Wys die aantal gebruikers wat dophou',
'tog-fancysig' => 'Doodgewone handtekening (sonder outomatiese skakel)',
'tog-externaleditor' => "Gebruik outomaties 'n eksterne redigeringsprogram",
+'tog-externaldiff' => "Gebruik 'n eksterne vergelykingsprogram (net vir eksperts - benodig spesiale verstellings op jou rekenaar)",
'tog-showjumplinks' => 'Wys "spring na"-skakels vir toeganklikheid',
'tog-uselivepreview' => 'Gebruik lewendige voorskou (JavaScript) (eksperimenteel)',
'tog-forceeditsummary' => "Let my daarop as ek nie 'n opsomming van my wysiging gee nie",
@@ -81,6 +86,7 @@ $messages = array(
'tog-watchlisthideminor' => 'Versteek klein wysigings van my dophoulys',
'tog-ccmeonemails' => "Stuur my 'n kopie van die e-pos wat ek aan ander stuur",
'tog-diffonly' => "Moenie 'n bladsy se inhoud onder die wysigingsverskil wys nie",
+'tog-showhiddencats' => 'Wys versteekte kategorië',
'underline-always' => 'Altyd',
'underline-never' => 'Nooit',
@@ -140,15 +146,29 @@ $messages = array(
'nov' => 'Nov',
'dec' => 'Des',
-# Bits of text used by many pages
-'categories' => 'Kategorieë',
-'pagecategories' => '{{PLURAL:$1|Kategorie|Kategorieë}}',
-'category_header' => 'Artikels in "$1"-kategorie',
-'subcategories' => 'Subkategorieë',
-'category-media-header' => 'Media in kategorie "$1"',
-'category-empty' => "''Hierdie kategorie bevat geen artikels of media nie.''",
-
-'mainpagetext' => "<big>'''MediaWiki is suksesvol geïnstalleer.'''</big>",
+# Categories related messages
+'pagecategories' => '{{PLURAL:$1|Kategorie|Kategorieë}}',
+'category_header' => 'Bladsye in kategorie "$1"',
+'subcategories' => 'Subkategorieë',
+'category-media-header' => 'Media in kategorie "$1"',
+'category-empty' => "''Hierdie kategorie bevat geen bladsye of media nie.''",
+'hidden-categories' => '{{PLURAL:$1|Versteekte kategorie|Versteekte kategorië}}',
+'hidden-category-category' => 'Versteekte kategorië', # Name of the category where hidden categories will be listed
+'category-subcat-count' => "{{PLURAL:$2|Hierdie kategorie het slegs die volgende subkategorie.|Hierdie kategorie het die volgende {{PLURAL:$1|subkategorie|$1 subkategorië}}, uit 'n totaal van $2.}}",
+'category-subcat-count-limited' => 'Hierdie kategorie het die volgende {{PLURAL:$1|subkategorie|$1 subkategorië}}.',
+'category-article-count' => "{{PLURAL:$2|Hierdie kategorie bevat slegs die volgende bladsy.|Die volgende {{PLURAL:$1|bladsy|$1 bladsye}} is in hierdie kategorie, uit 'n totaal van $2.}}",
+'category-article-count-limited' => 'Die volgende {{PLURAL:$1|bladsy|$1 bladsye}} is in die huidige kategorie.',
+'category-file-count' => "{{PLURAL:$2|Hierdie kategorie bevat net die volgende lêer.|Die volgende {{PLURAL:$1|lêer|$1 lêers}} is in hierdie kategorie, uit 'n totaal van $2.}}",
+'category-file-count-limited' => 'Die volgende {{PLURAL:$1|lêer|$1 lêers}} is in die huidige kategorie.',
+'listingcontinuesabbrev' => 'vervolg',
+
+'mainpagetext' => "<big>'''MediaWiki is suksesvol geïnstalleer.'''</big>",
+'mainpagedocfooter' => "Konsulteer '''[http://meta.wikimedia.org/wiki/Help:Contents User's Guide]''' vir inligting oor hoe om die wikisagteware te gebruik.
+
+== Hoe om te Begin ==
+* [http://www.mediawiki.org/wiki/Manual:Configuration_settings Configuration settings list]
+* [http://www.mediawiki.org/wiki/Manual:FAQ MediaWiki FAQ]
+* [http://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki release mailing list]",
'about' => 'Omtrent',
'article' => 'Inhoudbladsy',
@@ -168,6 +188,9 @@ $messages = array(
'navigation' => 'Navigasie',
'and' => 'en',
+# Metadata in edit box
+'metadata_help' => 'Metadata:',
+
'errorpagetitle' => 'Fout',
'returnto' => 'Keer terug na $1.',
'tagline' => 'Vanuit {{SITENAME}}',
@@ -178,12 +201,15 @@ $messages = array(
'searcharticle' => 'Wys',
'history' => 'Ouer weergawes',
'history_short' => 'Geskiedenis',
+'updatedmarker' => 'opgedateer sedert my laaste besoek',
'info_short' => 'Inligting',
'printableversion' => 'Drukbare weergawe',
'permalink' => 'Permanente skakel',
'print' => 'Druk',
'edit' => 'Wysig',
+'create' => 'Skep',
'editthispage' => 'Wysig hierdie bladsy',
+'create-this-page' => 'Skep hierdie bladsy',
'delete' => 'Skrap',
'deletethispage' => 'Skrap bladsy',
'undelete_short' => 'Herstel {{PLURAL:$1|een wysiging|$1 wysigings}}',
@@ -197,6 +223,7 @@ $messages = array(
'talkpagelinktext' => 'Besprekings',
'specialpage' => 'Spesiale bladsy',
'personaltools' => 'Persoonlike gereedskap',
+'postcomment' => 'Lewer kommentaar',
'articlepage' => 'Lees artikel',
'talk' => 'Bespreking',
'views' => 'Aansigte',
@@ -213,54 +240,73 @@ $messages = array(
'redirectedfrom' => '(Aangestuur vanaf $1)',
'redirectpagesub' => 'Aanstuurblad',
'lastmodifiedat' => 'Laaste wysiging op $2, $1.', # $1 date, $2 time
-'viewcount' => 'Hierdie bladsy is al $1 keer aangevra.',
+'viewcount' => 'Hierdie bladsy is al {{PLURAL:$1|keer|$1 kere}} aangevra.',
'protectedpage' => 'Beskermde bladsy',
'jumpto' => 'Spring na:',
'jumptonavigation' => 'navigasie',
'jumptosearch' => 'soek',
# All link text and link target definitions of links into project namespace that get used by other message strings, with the exception of user group pages (see grouppage) and the disambiguation template definition (see disambiguations).
-'aboutsite' => 'Inligting oor {{SITENAME}}',
-'aboutpage' => 'Project:Omtrent',
-'bugreports' => 'Foutrapporte',
-'bugreportspage' => 'Project:FoutRapporte',
-'copyright' => 'Teks is beskikbaar onderhewig aan $1.',
-'copyrightpagename' => '{{SITENAME}} kopiereg',
-'copyrightpage' => '{{ns:project}}:kopiereg',
-'currentevents' => 'Huidige gebeure',
-'currentevents-url' => 'Project:Huidige gebeure',
-'disclaimers' => 'Voorbehoud',
-'disclaimerpage' => 'Project:Voorwaarden',
-'edithelp' => 'Wysighulp',
-'edithelppage' => 'Help:Wysig',
-'faq' => 'Gewilde vrae',
-'faqpage' => 'Project:GewildeVrae',
-'helppage' => 'Help:Hulp',
-'mainpage' => 'Tuisblad',
-'portal' => 'Gebruikersportaal',
-'portal-url' => 'Project:Gebruikersportaal',
-'privacy' => 'Privaatheidsbeleid',
-'privacypage' => 'Project:Privaatheidsbeleid',
-'sitesupport' => 'Skenkings',
-'sitesupport-url' => 'Project:Skenkings',
-
-'ok' => 'Aanvaar',
-'retrievedfrom' => 'Ontsluit van "$1"',
-'youhavenewmessages' => 'Jy het $1 (sien $2).',
-'newmessageslink' => 'nuwe boodskappe',
-'newmessagesdifflink' => 'die laaste wysiging',
-'editsection' => 'wysig',
-'editold' => 'wysig',
-'editsectionhint' => 'Wysig afdeling: $1',
-'toc' => 'Inhoud',
-'showtoc' => 'wys',
-'hidetoc' => 'versteek',
-'thisisdeleted' => 'Bekyk of herstel $1?',
-'viewdeleted' => 'Bekyk $1?',
-'restorelink' => '{{PLURAL:$1|die geskrapte wysiging|$1 geskrapte wysigings}}',
+'aboutsite' => 'Inligting oor {{SITENAME}}',
+'aboutpage' => 'Project:Omtrent',
+'bugreports' => 'Foutverslae',
+'bugreportspage' => 'Project:Foutverslae',
+'copyright' => 'Teks is beskikbaar onderhewig aan $1.',
+'copyrightpagename' => '{{SITENAME}} kopiereg',
+'copyrightpage' => '{{ns:project}}:kopiereg',
+'currentevents' => 'Huidige gebeure',
+'currentevents-url' => 'Project:Huidige gebeure',
+'disclaimers' => 'Voorbehoud',
+'disclaimerpage' => 'Project:Voorwaardes',
+'edithelp' => 'Wysighulp',
+'edithelppage' => 'Help:Wysig',
+'faq' => 'Gewilde vrae',
+'faqpage' => 'Project:GewildeVrae',
+'helppage' => 'Help:Hulp',
+'mainpage' => 'Tuisblad',
+'mainpage-description' => 'Tuisblad',
+'policy-url' => 'Project:Beleid',
+'portal' => 'Gebruikersportaal',
+'portal-url' => 'Project:Gebruikersportaal',
+'privacy' => 'Privaatheidsbeleid',
+'privacypage' => 'Project:Privaatheidsbeleid',
+
+'badaccess' => 'Toestemmingsfout',
+'badaccess-group0' => 'U is nie toegelaat om die aksie uit te voer wat U aangevra het nie.',
+'badaccess-group1' => 'Die gevraagde aksie is beperk tot gebruikers in die $1 groep.',
+'badaccess-group2' => 'Die aksie wat U aangevra het is beperk tot gebruikers in een van die groepe $1.',
+'badaccess-groups' => 'Die aksie wat U aangevra het is beperk tot gebruikers in een van die groepe $1.',
+
+'versionrequired' => 'Weergawe $1 van MediaWiki benodig',
+'versionrequiredtext' => 'Weergawe $1 van MediaWiki word benodig om hierdie bladsy te gebruik. Sien [[Special:Version|version page]].',
+
+'ok' => 'OK',
+'retrievedfrom' => 'Ontsluit van "$1"',
+'youhavenewmessages' => 'U het $1 (sien $2).',
+'newmessageslink' => 'nuwe boodskappe',
+'newmessagesdifflink' => 'die laaste wysiging',
+'youhavenewmessagesmulti' => 'U het nuwe boodskappe op $1',
+'editsection' => 'wysig',
+'editold' => 'wysig',
+'viewsourceold' => 'bekyk bronteks',
+'editsectionhint' => 'Wysig afdeling: $1',
+'toc' => 'Inhoud',
+'showtoc' => 'wys',
+'hidetoc' => 'versteek',
+'thisisdeleted' => 'Bekyk of herstel $1?',
+'viewdeleted' => 'Bekyk $1?',
+'restorelink' => '{{PLURAL:$1|die geskrapte wysiging|$1 geskrapte wysigings}}',
+'feedlinks' => 'Voer:',
+'feed-invalid' => 'Voertipe word nie ondersteun nie.',
+'feed-unavailable' => 'Sindikasievoer is nie beskikbaar op {{SITENAME}}',
+'site-rss-feed' => '$1 RSS-voer',
+'site-atom-feed' => '$1 Atom-voer',
+'page-rss-feed' => '"$1" RSS-voer',
+'page-atom-feed' => '"$1" Atom-voer',
+'red-link-title' => '$1 (nog nie geskryf nie)',
# Short words for each namespace, by default used in the namespace tab in monobook
-'nstab-main' => 'Artikel',
+'nstab-main' => 'Bladsy',
'nstab-user' => 'Gebruikerblad',
'nstab-media' => 'Mediablad',
'nstab-special' => 'Spesiaal',
@@ -278,115 +324,189 @@ $messages = array(
'nospecialpagetext' => 'Ongeldige spesiale bladsy gespesifeer.',
# General errors
-'error' => 'Fout',
-'databaseerror' => 'Databasisfout',
-'dberrortext' => 'Sintaksisfout in databasisnavraag.
+'error' => 'Fout',
+'databaseerror' => 'Databasisfout',
+'dberrortext' => 'Sintaksisfout in databasisnavraag.
+Die laaste navraag was:
+<blockquote><tt>$1</tt></blockquote>
+van funksie "<tt>$2</tt>".
+MySQL foutboodskap "<tt>$3: $4</tt>".',
+'dberrortextcl' => 'Sintaksisfout in databasisnavraag.
Die laaste navraag was:
<blockquote><tt>$1</tt></blockquote>
van funksie "<tt>$2</tt>".
MySQL foutboodskap "<tt>$3: $4</tt>".',
-'noconnect' => 'Kon nie met databasis op $1 konnekteer nie',
-'nodb' => 'Kon nie databasis $1 selekteer nie',
-'cachederror' => "Die volgende is 'n gekaste kopie van die aangevraagde blad, en is dalk nie op datum nie.",
-'readonly' => 'Databasis gesluit',
-'enterlockreason' => 'Rede vir die sluiting,
+'noconnect' => 'Kon nie met databasis op $1 konnekteer nie',
+'nodb' => 'Kon nie databasis $1 selekteer nie',
+'cachederror' => "Die volgende is 'n gekaste kopie van die aangevraagde blad, en is dalk nie op datum nie.",
+'laggedslavemode' => 'Waarskuwing: Onlangse wysigings dalk nie in bladsy vervat nie.',
+'readonly' => 'Databasis gesluit',
+'enterlockreason' => 'Rede vir die sluiting,
en beraming van wanneer ontsluiting sal plaas vind',
-'readonlytext' => 'Die {{SITENAME}} databasis is tans gesluit vir nuwe
+'readonlytext' => 'Die {{SITENAME}} databasis is tans gesluit vir nuwe
artikelwysigings, waarskynlik vir roetine databasisonderhoud,
waarna dit terug sal wees na normaal.
Die administreerder wat dit gesluit het se verduideliking:
$1',
-'missingarticle' => 'Die databasis het nie die teks van die veronderstelde bladsy "$1" gekry nie.
-Nie databasisfout nie, moontlik sagtewarefout.
-Raporteer die adres asseblief aan enige administrateur.',
-'readonly_lag' => 'Die databasis is outomaties gesluit terwyl die slaafdatabasisse sinchroniseer met die meester',
-'internalerror' => 'Interne fout',
-'filecopyerror' => 'Kon nie lêer van "$1" na "$2" kopieer nie.',
-'filerenameerror' => 'Kon nie lêernaam van "$1" na "$2" wysig nie.',
-'filedeleteerror' => 'Kon nie lêer "$1" skrap nie.',
-'filenotfound' => 'Kon nie lêer "$1" vind nie.',
-'unexpected' => 'Onverwagte waarde: "$1"="$2".',
-'formerror' => 'Fout: kon vorm nie stuur nie',
-'badarticleerror' => 'Die aksie kon nie op hierdie bladsy uitgevoer word nie.',
-'cannotdelete' => 'Kon nie die bladsy of prent skrap nie, iemand anders het dit miskien reeds geskrap.',
-'badtitle' => 'Ongeldige titel',
-'badtitletext' => "Die bladsytitel waarvoor gevra is, is ongeldig, leeg, of
+'missing-article' => 'Die databasis kon nie soos verwag die teks vir die bladsy genaamd "$1" $2 kry nie.
+
+Dit gebeur gewoonlik as mens \'n verouderde verskil- of geskiedenis-skakel volg na \'n bladsy wat reeds verwyder is.
+
+Indien dit nie die geval is nie, het u moontlik \'n fout in die sagteware ontdek. Rapporteer asseblief die probleem aan die administrateur, en maak \'n nota van die URL.',
+'missingarticle-rev' => '(weergawe#: $1)',
+'missingarticle-diff' => '(Wysiging: $1, $2)',
+'readonly_lag' => 'Die databasis is outomaties gesluit terwyl die slaafdatabasisse sinchroniseer met die meester',
+'internalerror' => 'Interne fout',
+'internalerror_info' => 'Interne fout: $1',
+'filecopyerror' => 'Kon nie lêer van "$1" na "$2" kopieer nie.',
+'filerenameerror' => 'Kon nie lêernaam van "$1" na "$2" wysig nie.',
+'filedeleteerror' => 'Kon nie lêer "$1" skrap nie.',
+'directorycreateerror' => 'Kon nie gids "$1" skep nie.',
+'filenotfound' => 'Kon nie lêer "$1" vind nie.',
+'fileexistserror' => 'Nie moontlik om na lêer "$1" te skryf: lêer bestaan reeds',
+'unexpected' => 'Onverwagte waarde: "$1"="$2".',
+'formerror' => 'Fout: kon vorm nie stuur nie',
+'badarticleerror' => 'Die aksie kon nie op hierdie bladsy uitgevoer word nie.',
+'cannotdelete' => 'Kon nie die bladsy of prent skrap nie, iemand anders het dit miskien reeds geskrap.',
+'badtitle' => 'Ongeldige titel',
+'badtitletext' => "Die bladsytitel waarvoor gevra is, is ongeldig, leeg, of
'n verkeerd geskakelde tussen-taal of tussen-wiki titel.",
-'perfdisabled' => 'Jammer, hierdie funksie is tydelik afgeskakel omdat dit die databasis soveel verstadig dat dit onbruikbaar vir andere raak.',
-'perfcached' => "ie volgende inligting is 'n gekaste kopie en mag dalk nie volledig op datum wees nie.",
-'perfcachedts' => 'Die volgende data is gekas. Laaste opdatering: $1',
-'viewsource' => 'Bekyk bronteks',
-'viewsourcefor' => 'vir $1',
-'editinginterface' => "'''Waarskuwing:''' Jy is besig om 'n bladsy te redigeer wat koppelvlakinligting aan die programmatuur voorsien. Wysigings aan hierdie bladsy sal die voorkoms van die gebruikerskoppelvlak vir ander gebruikers beïnvloed. Vir vertalings, overweeg om [http://translatewiki.net/wiki/Main_Page?setlang=af Betawiki] (die vertalingsprojek vir MediaWiki) te gebruik.",
-'namespaceprotected' => "U het nie die rechte nie om bladsye in die '''$1'''-naamruimte te wysig.",
+'perfdisabled' => 'Jammer, hierdie funksie is tydelik afgeskakel omdat dit die databasis soveel verstadig dat dit onbruikbaar vir andere raak.',
+'perfcached' => "Die volgende inligting is 'n gekaste kopie en mag dalk nie volledig op datum wees nie.",
+'perfcachedts' => 'Die volgende data is gekas. Laaste opdatering: $1',
+'querypage-no-updates' => 'Opdatering van hierdie bladsy is huidiglik afgeskakel. Inligting hier sal nie tans verfris word nie.',
+'wrong_wfQuery_params' => 'Foutiewe parameters na wfQuery()<br />
+Funksie: $1<br />
+Navraag: $2',
+'viewsource' => 'Bekyk bronteks',
+'viewsourcefor' => 'vir $1',
+'actionthrottled' => 'Outo-rem op aksie uitgevoer',
+'actionthrottledtext' => "As 'n teen-strooi aksie, word U beperk om hierdie aksie te veel keer in 'n kort tyd uit te voer, en U het hierdie limiet oorskry.
+Probeer asseblief weer oor 'n paar minute.",
+'protectedpagetext' => 'Hierdie bladsy is beskerm om redigering te verhoed.',
+'viewsourcetext' => 'U kan die bronteks van hierdie bladsy bekyk en wysig:',
+'protectedinterface' => 'Hierdie bladsy verskaf teks vir die koppelvlak van die sagteware, en is beskerm om misbruik te voorkom.',
+'editinginterface' => "'''Waarskuwing:''' U is besig om 'n bladsy te redigeer wat koppelvlakinligting aan die programmatuur voorsien. Wysigings aan hierdie bladsy sal die voorkoms van die gebruikerskoppelvlak vir ander gebruikers beïnvloed. Vir vertalings, oorweeg om eerder [http://translatewiki.net/wiki/Main_Page?setlang=af Betawiki] (die vertalingsprojek vir MediaWiki) te gebruik.",
+'sqlhidden' => '(SQL navraag versteek)',
+'cascadeprotected' => 'Hierdie bladsy is beskerm teen redigering omdat dit ingesluit is in die volgende {{PLURAL:$1|bladsy|bladsye}} wat beskerm is met die "kaskade" opsie aangeskakel: $2',
+'namespaceprotected' => "U het nie toestemming om bladsye in die '''$1'''-naamruimte te wysig nie.",
+'customcssjsprotected' => "U het nie toestemming om hierdie bladsy te redigeer nie, want dit bevat 'n ander gebruiker se persoonlike verstellings.",
+'ns-specialprotected' => 'Spesiale bladsye kan nie geredigeer word nie.',
+'titleprotected' => "Hierdie titel is beskerm teen skepping deur [[User:$1|$1]].
+Die rede gegee is ''$2''.",
+
+# Virus scanner
+'virus-badscanner' => 'Slegte konfigurasie: onbekende virusskandeerder: <i>$1</i>',
+'virus-scanfailed' => 'skandering het misluk (kode $1)',
+'virus-unknownscanner' => 'onbekende antivirus:',
# Login and logout pages
'logouttitle' => 'Teken uit',
-'logouttext' => "Jy is nou uitgeteken, en kan aanhou om
-{{SITENAME}} anoniem te gebruik; of jy kan inteken as dieselfde of 'n ander gebruiker.",
+'logouttext' => "U is nou uitgeteken, en kan aanhou om
+{{SITENAME}} anoniem te gebruik; of U kan inteken as dieselfde of 'n ander gebruiker.",
'welcomecreation' => '<h2>Welkom, $1.</h2>
Jou rekening is geskep;
moenie vergeet om jou persoonlike voorkeure te stel nie.',
'loginpagetitle' => 'Teken in',
-'yourname' => 'Gebruikersnaam',
-'yourpassword' => 'Wagwoord',
+'yourname' => 'Gebruikersnaam:',
+'yourpassword' => 'Wagwoord:',
'yourpasswordagain' => 'Herhaal wagwoord',
'remembermypassword' => 'Onthou my wagwoord oor sessies.',
+'yourdomainname' => 'U domein:',
+'externaldberror' => "'n Databasis fout het voorgekom tydens aanmelding of jy word nie toegelaat om jou eksterne rekening op te dateer nie.",
'loginproblem' => '<b>Daar was probleme met jou intekening.</b><br />Probeer weer.',
'login' => 'Teken in',
-'loginprompt' => 'U blaaier moet koekies toelaat om by {{SITENAME}} aan te teken.',
+'nav-login-createaccount' => 'Teken in',
+'loginprompt' => 'U blaaier moet koekies toelaat om by [[Special:Userlog|{{SITENAME}} te kan aanteken]].',
'userlogin' => 'Teken in',
'logout' => 'Teken uit',
'userlogout' => 'Teken uit',
+'notloggedin' => 'Nie ingeteken nie',
'nologin' => 'Nog nie geregistreer nie? $1.',
'nologinlink' => "Skep gerus 'n rekening",
'createaccount' => 'Skep nuwe rekening',
'gotaccount' => "Het u reeds 'n rekening? $1.",
-'gotaccountlink' => 'Teken gerus aan',
+'gotaccountlink' => 'Teken in',
'createaccountmail' => 'deur e-pos',
'badretype' => 'Die ingetikte wagwoorde is nie dieselfde nie.',
'userexists' => "Die gebruikersnaam wat jy gebruik het, is alreeds gebruik. Kies asseblief 'n ander gebruikersnaam.",
'youremail' => 'E-pos',
-'username' => 'Gebruikernaam:',
+'username' => 'Gebruikersnaam:',
'uid' => 'Gebruiker-ID:',
+'prefs-memberingroups' => 'Lid van {{PLURAL:$1|groep|groepe}}:',
'yourrealname' => 'Regte naam:',
'yourlanguage' => 'Taal:',
'yournick' => 'Bynaam (vir handtekening)',
'badsig' => 'Ongeldige handtekening; gaan HTML na.',
+'badsiglength' => 'Die handtekening is te lank.
+Dit moet minder as $1 {{PLURAL:$1|karakter|karakters}} wees.',
'email' => 'E-pos',
'prefs-help-realname' => 'Regte naam (opsioneel): as u hierdie verskaf, kan dit gebruik word om erkenning vir u werk te gee.',
'loginerror' => 'Intekenfout',
'prefs-help-email' => 'E-pos (opsioneel): Maak dit vir ander moontlik om u te kontak deur u gebruikerblad sonder dat u identiteit verraai word.',
+'prefs-help-email-required' => 'E-pos adres word benodig.',
+'nocookiesnew' => 'Die gebruikersrekening is geskep, maar u is nie ingeteken nie.
+{{SITENAME}} gebruik koekies om gebruikers in te teken.
+U rekenaar laat tans nie koekies toe nie.
+Stel u rekenaar om dit te aanvaar, dan kan u met u nuwe naam en wagwoord inteken.',
'nocookieslogin' => '{{SITENAME}} gebruik koekies vir die aanteken van gebruikers, maar u blaaier laat dit nie toe nie. Skakel dit asseblief aan en probeer weer.',
'noname' => 'Ongeldige gebruikersnaam.',
'loginsuccesstitle' => 'Suksesvolle intekening',
-'loginsuccess' => 'Jy is ingeteken by {{SITENAME}} as "$1".',
+'loginsuccess' => 'U is ingeteken by {{SITENAME}} as "$1".',
'nosuchuser' => 'Daar is geen gebruikersnaam "$1" nie. Maak seker dit is reg gespel, of gebruik die vorm hier onder om \'n nuwe rekening te skep.',
+'nosuchusershort' => 'Daar is geen gebruikersnaam "<nowiki>$1</nowiki>" nie. Maak seker dit is reg gespel.',
+'nouserspecified' => "U moet 'n gebruikersnaam spesifiseer.",
'wrongpassword' => 'Ongeldige wagwoord, probeer weer.',
'wrongpasswordempty' => 'Die wagwoord was leeg. Probeer asseblief weer.',
-'passwordtooshort' => 'U wagwoord is te kort. Dit moet ten minste $1 karakters hê.',
+'passwordtooshort' => 'U wagwoord is te kort.
+Dit moet ten minste {{PLURAL:$1|1 karakter|$1 karakters}} hê en kan nie jou gebruikersnaam insluit nie.',
'mailmypassword' => 'E-pos nuwe wagwoord',
'passwordremindertitle' => 'Wagwoordwenk van {{SITENAME}}',
-'passwordremindertext' => 'Iemand (waarskynlik jy, van IP-adres $1)
-het gevra dat ons vir jou \'n nuwe {{SITENAME}}-wagwoord ($4) stuur.
+'passwordremindertext' => 'Iemand (waarskynlik U, van IP-adres $1)
+het gevra dat ons vir U \'n nuwe {{SITENAME}}-wagwoord ($4) stuur.
Die wagwoord vir gebruiker "$2" is nou "$3".
-Teken asseblief in en verander jou wagwoord.',
+Teken asseblief in en verander U wagwoord.
+
+Indien iemand anders hierdie navraag gerig het of as U die wagwoord onthou en U nie meer die wagwoord wil wysig nie, kan U hierdie boodskap ignoreer en voortgaan om U ou wagwoord te gebruik.',
'noemail' => 'Daar is geen e-posadres vir gebruiker "$1" nie.',
'passwordsent' => 'Nuwe wagwoord gestuur na e-posadres vir "$1".
Teken asseblief in na jy dit ontvang het.',
+'blocked-mailpassword' => 'U IP-adres is tans teen wysigings geblokkeer. Om verdere misbruik te voorkom is dit dus nie moontlik om die wagwoordherwinningfunksie te gebruik nie.',
'eauthentsent' => "'n Bevestigingpos is gestuur na die gekose e-posadres.
Voordat ander pos na die adres gestuur word,
moet die instruksies in bogenoemde pos gevolg word om te bevestig dat die adres werklik u adres is.",
+'throttled-mailpassword' => "Daar is reeds 'n wagwoordwenk in die laaste {{PLURAL:$1|uur|$1 ure}} gestuur.
+Om misbruik te voorkom, word slegs een wagwoordwenk per {{PLURAL:$1|uur|$1 ure}} gestuur.",
+'mailerror' => 'Fout tydens e-pos versending: $1',
'acct_creation_throttle_hit' => 'Jammer. U het reeds $1 rekeninge geskep. U kan nie nog skep nie.',
'emailauthenticated' => 'U e-posadres is bevestig op $1.',
'emailnotauthenticated' => 'U e-poasadres is <strong>nog nie bevestig nie</strong>. Geen e-pos sal gestuur word vir die volgende funksies nie.',
'noemailprefs' => "Spesifiseer 'n eposadres vir hierdie funksies om te werk.",
'emailconfirmlink' => 'Bevestig u e-posadres',
+'invalidemailaddress' => "Die e-posadres kan nie aanvaar word nie, aangesien dit 'n ongeldige formaat blyk te hê.
+Voer asseblief 'n korrek geformateerde adres in, of verwyder die inhoud in daardie afdeling.",
'accountcreated' => 'Rekening geskep',
'accountcreatedtext' => 'Die rekening vir gebruiker $1 is geskep.',
+'createaccount-title' => 'Rekeningskepping vir {{SITENAME}}',
+'createaccount-text' => 'Iemand het \'n rekening vir u e-posadres geskep by {{SITENAME}} ($4), met die naam "$2" en "$3". as die wagwoord.
+U word aangeraai om in te teken so gou as moontlik u wagwoord te verander.
+
+Indien hierdie rekening foutief geskep is, kan u hierdie boodskap ignoreer.',
'loginlanguagelabel' => 'Taal: $1',
+# Password reset dialog
+'resetpass' => 'Herstel rekening wagwoord',
+'resetpass_announce' => "U het aangeteken met 'n tydelike e-poskode.
+Om voort te gaan moet u 'n nuwe wagwoord hier kies:",
+'resetpass_header' => 'Herstel wagwoord',
+'resetpass_submit' => 'Stel wagwoord en teken in',
+'resetpass_success' => 'U wagwoord is suksesvol gewysig! Besig om U in te teken ...',
+'resetpass_bad_temporary' => "Ongeldige tydelike wagwoord.
+U het u wagwoord al gewysig of 'n nuwe tydelike wagwoord aangevra.",
+'resetpass_forbidden' => 'Wagwoorde kannie op {{SITENAME}} gewysig word nie.',
+'resetpass_missing' => "U het nie 'n wagwoord verskaf nie.",
+
# Edit page toolbar
'bold_sample' => 'Vet teks',
'bold_tip' => 'Vetdruk',
@@ -394,7 +514,7 @@ moet die instruksies in bogenoemde pos gevolg word om te bevestig dat die adres
'italic_tip' => 'Skuinsdruk',
'link_sample' => 'Skakelnaam',
'link_tip' => 'Interne skakel',
-'extlink_sample' => 'http://www.voorbeeld.org skakel se titel',
+'extlink_sample' => 'http://www.example.com skakel se titel',
'extlink_tip' => 'Eksterne skakel (onthou http:// vooraan)',
'headline_sample' => 'Opskrif',
'headline_tip' => 'Vlak 2-opskrif',
@@ -410,93 +530,166 @@ moet die instruksies in bogenoemde pos gevolg word om te bevestig dat die adres
'hr_tip' => 'Horisontale streep (selde nodig)',
# Edit pages
-'summary' => 'Opsomming',
-'subject' => 'Onderwerp/opskrif',
-'minoredit' => 'Klein wysiging',
-'watchthis' => 'Hou bladsy dop',
-'savearticle' => 'Stoor bladsy',
-'preview' => 'Voorskou',
-'showpreview' => 'Wys voorskou',
-'showdiff' => 'Wys veranderings',
-'anoneditwarning' => "'''Waarskuwing:''' Aangesien u nie aangeteken is nie, sal u IP-adres in dié blad se wysigingsgeskiedenis gestoor word.",
-'missingsummary' => "'''Onthou:''' Geen opsomming van die wysiging is verskaf nie. As \"Stoor\" weer geklik word, word die wysiging sonder opsomming gestoor.",
-'missingcommenttext' => 'Tik die opsomming onder.',
-'summary-preview' => 'Opsomming nakijken',
-'blockedtitle' => 'Gebruiker is geblokkeer',
-'blockedtext' => "<big>'''Jou gebruikersnaam of IP-adres is geblokkeer.'''</big>
-
-The block was made by $1. The reason given is ''$2''.
-
-* Start of block: $8
-* Expiry of block: $6
-* Intended blockee: $7
-
-Jy mag $1 of een van die ander [[{{MediaWiki:Grouppage-sysop}}|administreerders]] kontak om dit te bespreek.
-You cannot use the 'email this user' feature unless a valid email address is specified in your
-[[Special:Preferences|account preferences]] and you have not been blocked from using it.
-Your current IP address is $3, and the block ID is #$5. Please include either or both of these in any queries.",
-'blockednoreason' => 'geen rede gegeef nie',
-'whitelistedittext' => 'U moet $1 om bladsye te wysig.',
-'confirmedittitle' => 'E-pos-bevestiging nodig om te redigeer',
-'confirmedittext' => 'U moet u e-posadres bevestig voor u bladsye wysig. Verstel en bevestig asseblief u e-posadres by u [[Special:Preferences|voorkeure]].',
-'accmailtitle' => 'Wagwoord gestuur.',
-'accmailtext' => "Die wagwoord van '$1' is gestuur aan $2.",
-'newarticle' => '(Nuut)',
-'newarticletext' => "Die bladsy waarna geskakel is, bestaan nie.
+'summary' => 'Opsomming',
+'subject' => 'Onderwerp/opskrif',
+'minoredit' => 'Klein wysiging',
+'watchthis' => 'Hou bladsy dop',
+'savearticle' => 'Stoor bladsy',
+'preview' => 'Voorskou',
+'showpreview' => 'Wys voorskou',
+'showlivepreview' => 'Lewendige voorskou',
+'showdiff' => 'Wys veranderings',
+'anoneditwarning' => "'''Waarskuwing:''' Aangesien u nie aangeteken is nie, sal u IP-adres in dié blad se wysigingsgeskiedenis gestoor word.",
+'missingsummary' => "'''Onthou:''' Geen opsomming van die wysiging is verskaf nie. As \"Stoor\" weer geklik word, word die wysiging sonder opsomming gestoor.",
+'missingcommenttext' => 'Tik die opsomming onder.',
+'missingcommentheader' => "'''Let op:''' U het geen onderwerp/opskrif vir die opmerking verskaf nie. As u weer op \"Stoor\" klik, sal u wysiging sonder die onderwerp/opskrif gestoor word.",
+'summary-preview' => 'Opsomming nakijken',
+'subject-preview' => 'Onderwerp/ opskrif voorskou',
+'blockedtitle' => 'Gebruiker is geblokkeer',
+'blockedtext' => "<big>'''U gebruikersnaam of IP-adres is geblokkeer.'''</big>
+
+Die blokkering is deur $1 gedoen. Die rede gegee is ''$2''.
+
+* Begin van blokkering: $8
+* Verval van blokkering: $6
+* Blokkering gemik op: $7
+
+U mag $1 of een van die ander [[{{MediaWiki:Grouppage-sysop}}|administreerders]] kontak om dit te bespreek.
+U kan nie die 'e-pos hierdie gebruiker' opsie gebruik tensy 'n geldige e-pos adres gespesifiseer is in U [[Special:Preferences|rekening voorkeure]] en U is nie geblokkeer om dit te gebruik nie. U huidige IP-adres is $3, en die blokkering ID is #$5. Sluit asseblief een of albei hierdie verwysings in by enige navrae.",
+'autoblockedtext' => "U IP-adres is outomaties geblok omdat dit deur 'n gebruiker gebruik was, wat deur $1 geblokkeer is.
+Die rede verskaf is:
+
+:''$2''
+
+* Aanvang van blok: $8
+* Einde van blok: $6
+* Bedoelde blokkeerder: $7
+
+U kan die blok met $1 of enige van die [[{{MediaWiki:Grouppage-sysop}}|administrateurs]] bespreek.
+
+Neem kennis dat u slegs die 'e-pos die gebruiker' funksionaliteit kan gebruik as u 'n geldige e-posadres het in u [[Special:Preferences|voorkeure]] het, en die gebruik daarvan is nie ook geblokkeer is nie.
+
+U huidige IP-adres is $3 en die blokkadenommer is #$5.
+Vermeld asseblief die bovermelde bloknommer as u die saak rapporteer,",
+'blockednoreason' => 'geen rede gegeef nie',
+'blockedoriginalsource' => "Die bronteks van '''$1''' word onder gewys:",
+'blockededitsource' => "Die teks van '''jou wysigings''' aan '''$1''' word hieronder vertoon:",
+'whitelistedittitle' => 'U moet [[Special:UserLogin|aanteken]] wees om te kan redigeer.',
+'whitelistedittext' => 'U moet $1 om bladsye te wysig.',
+'confirmedittitle' => 'E-pos-bevestiging nodig om te redigeer',
+'confirmedittext' => 'U moet u e-posadres bevestig voor u bladsye wysig. Verstel en bevestig asseblief u e-posadres by u [[Special:Preferences|voorkeure]].',
+'nosuchsectiontitle' => 'Afdeling bestaan nie',
+'nosuchsectiontext' => "U probeer 'n afdeling wysig wat nie bestaan nie.
+Omdat die afdeling $1 nie bestaan nie, kan u wysigings nie gestoor word nie.",
+'loginreqtitle' => 'Inteken Benodig',
+'loginreqlink' => 'teken in',
+'loginreqpagetext' => 'U moet $1 om ander bladsye te bekyk.',
+'accmailtitle' => 'Wagwoord gestuur.',
+'accmailtext' => "Die wagwoord van '$1' is gestuur aan $2.",
+'newarticle' => '(Nuut)',
+'newarticletext' => "Die bladsy waarna geskakel is, bestaan nie.
Om 'n nuwe bladsy te skep, tik in die invoerboks hier onder. Lees die [[{{MediaWiki:Helppage}}|hulpbladsy]]
vir meer inligting.
-Indien jy per ongeluk hier is, gebruik jou blaaier se '''terug''' knop.",
-'anontalkpagetext' => "----''Hierdie is die besprekingsblad vir 'n anonieme gebruiker wat nog nie 'n rekening geskep het nie of wat dit nie gebruik nie. Daarom moet ons sy/haar numeriese IP-adres gebruik vir identifikasie. Só 'n adres kan deur verskeie gebruikers gedeel word. Indien jy 'n anonieme gebruiker is wat voel dat ontoepaslike kommentaar teen jou gerig is, [[Special:Userlogin|skep 'n rekening of teken in]] om verwarring met ander anonieme gebruikers te voorkom.''",
-'noarticletext' => 'Daar is tans geen inligting vir hierdie artikel nie. Jy kan [[Special:Search/{{PAGENAME}}|soek vir hierdie bladsytitel]] in ander bladsye of [{{fullurl:{{FULLPAGENAME}}|action=edit}} wysig hierdie bladsy].',
-'clearyourcache' => "'''Let wel''': Na die voorkeure gestoor is, moet u blaaier se kasgeheue verfris word om die veranderinge te sien: '''Mozilla:''' klik ''Reload'' (of ''Ctrl-R''), '''IE / Opera:''' ''Ctrl-F5'', '''Safari:''' ''Cmd-R'', '''Konqueror''' ''Ctrl-R''.",
-'usercssjsyoucanpreview' => '<strong>Wenk:</strong> Gebruik die "Wys voorskou"-knoppie om u nuwe CSS/JS te toets voor u stoor.',
-'usercsspreview' => "'''Onthou hierdie is slegs 'n voorskou van u gebruiker-CSS, dit is nog nie gestoor nie.'''",
-'userjspreview' => "'''Onthou hierdie is slegs 'n toets/voorskou van u gebruiker-JavaScript, dit is nog nie gestoor nie.'''",
-'updated' => '(Gewysig)',
-'note' => '<strong>Nota:</strong>',
-'previewnote' => "<strong>Onthou dat hierdie slegs 'n voorskou is en nog nie gestoor is nie!</strong>",
-'previewconflict' => 'Hierdie voorskou vertoon die teks in die boonste teksarea soos dit sou lyk indien jy die bladsy stoor.',
-'session_fail_preview' => '<strong>Jammer! Weens verlies aan sessie-inligting is die wysiging nie verwerk nie.
+Indien jy per ongeluk hier is, gebruik jou blaaier se '''terug''' knoppie.",
+'anontalkpagetext' => "----''Hierdie is die besprekingsblad vir 'n anonieme gebruiker wat nog nie 'n rekening geskep het nie of wat dit nie gebruik nie. Daarom moet ons sy/haar numeriese IP-adres gebruik vir identifikasie. Só 'n adres kan deur verskeie gebruikers gedeel word. Indien jy 'n anonieme gebruiker is wat voel dat ontoepaslike kommentaar teen jou gerig is, [[Special:UserLogin|skep 'n rekening of teken in]] om verwarring met ander anonieme gebruikers te voorkom.''",
+'noarticletext' => 'Daar is tans geen inligting vir hierdie artikel nie. Jy kan [[Special:Search/{{PAGENAME}}|soek vir hierdie bladsytitel]] in ander bladsye of [{{fullurl:{{FULLPAGENAME}}|action=edit}} wysig hierdie bladsy].',
+'userpage-userdoesnotexist' => 'U is besig om \'n gebruikersblad wat nie bestaan nie te wysig (gebruiker "$1"). Maak asseblief seker of u die bladsy wil skep/ wysig.',
+'clearyourcache' => "'''Let wel''': Na die voorkeure gestoor is, moet u blaaier se kasgeheue verfris word om die veranderinge te sien: '''Mozilla:''' klik ''Reload'' (of ''Ctrl-R''), '''IE / Opera:''' ''Ctrl-F5'', '''Safari:''' ''Cmd-R'', '''Konqueror''' ''Ctrl-R''.",
+'usercssjsyoucanpreview' => '<strong>Wenk:</strong> Gebruik die "Wys voorskou"-knoppie om u nuwe CSS/JS te toets voor u stoor.',
+'usercsspreview' => "'''Onthou hierdie is slegs 'n voorskou van u gebruiker-CSS, dit is nog nie gestoor nie.'''",
+'userjspreview' => "'''Onthou hierdie is slegs 'n toets/voorskou van u gebruiker-JavaScript, dit is nog nie gestoor nie.'''",
+'updated' => '(Gewysig)',
+'note' => '<strong>Nota:</strong>',
+'previewnote' => "<strong>Onthou dat hierdie slegs 'n voorskou is en nog nie gestoor is nie!</strong>",
+'previewconflict' => 'Hierdie voorskou vertoon die teks in die boonste teksarea soos dit sou lyk indien jy die bladsy stoor.',
+'session_fail_preview' => '<strong>Jammer! Weens verlies aan sessie-inligting is die wysiging nie verwerk nie.
Probeer asseblief weer. As dit steeds nie werk nie, probeer om af en weer aan te teken.</strong>',
-'editing' => 'Besig om $1 te wysig',
-'editinguser' => "Besig om gebruikersrechte van gebruiker '''[[User:$1|$1]]''' ([[User talk:$1|{{int:talkpagelinktext}}]] | [[Special:Contributions/$1|{{int:contribslink}}]]) te wysig",
-'editingsection' => 'Besig om $1 (onderafdeling) te wysig',
-'editingcomment' => 'Besig om $1 (kommentaar) te wysig',
-'editconflict' => 'Wysigingskonflik: $1',
-'explainconflict' => 'Iemand anders het hierdie bladsy gewysig sedert jy dit begin verander het.
+'session_fail_preview_html' => "<strong>Jammer! U wysigings is nie verwerk nie omdat sessie-data verlore gegaan het.</strong>
+
+''Omrede rou HTML hier by {{SITENAME}} ingevoer kan word, kan die voorskou nie gesien word nie ter beskerming teen aanvalle met JavaScript.''
+
+<strong>As dit 'n regmatige wysiging is, probeer asseblief weer. As dit daarna nog nie werk nie, teen dan af en weer aan.</strong>",
+'editing' => 'Besig om $1 te wysig',
+'editingsection' => 'Besig om $1 (onderafdeling) te wysig',
+'editingcomment' => 'Besig om $1 (kommentaar) te wysig',
+'editconflict' => 'Wysigingskonflik: $1',
+'explainconflict' => 'Iemand anders het hierdie bladsy gewysig sedert jy dit begin verander het.
Die boonste invoerboks het die teks wat tans bestaan.
Jou wysigings word in die onderste invoerboks gewys.
Jy sal jou wysigings moet saamsmelt met die huidige teks.
<strong>Slegs</strong> die teks in die boonste invoerboks sal gestoor word wanneer jy "Stoor bladsy" druk.<br />',
-'yourtext' => 'Jou teks',
-'storedversion' => 'Gestoorde weergawe',
-'editingold' => "<strong>WAARSKUWING: Jy is besig om 'n ouer weergawe van hierdie bladsy te wysig.
+'yourtext' => 'Jou teks',
+'storedversion' => 'Gestoorde weergawe',
+'editingold' => "<strong>WAARSKUWING: Jy is besig om 'n ouer weergawe van hierdie bladsy te wysig.
As jy dit stoor, sal enige wysigings sedert hierdie een weer uitgewis word.</strong>",
-'yourdiff' => 'Wysigings',
-'longpagewarning' => 'WAARSKUWING: Hierdie bladsy is $1 kG groot.
+'yourdiff' => 'Wysigings',
+'copyrightwarning' => 'Alle bydraes aan {{SITENAME}} word beskou as beskikbaar gestel onder die $2 (lees $1 vir meer inligting).
+As u nie wil toelaat dat u teks deur ander persone gewysig of versprei word nie, moet dit asseblief nie hier invoer nie.<br />
+Hierdeur beloof u ons dat u die byvoegings self geskryf het, of gekopieer het van publieke domein of soortgelyke vrye bronne.
+<strong>MOENIE WERK WAT DEUR KOPIEREG BESKERM WORD HIER PLAAS SONDER TOESTEMMING NIE!</strong>',
+'copyrightwarning2' => 'Enige bydraes op {{SITENAME}} mag genadeloos gewysig of selfs verwyder word; indien u dit nie met u bydrae wil toelaat nie, moenie dit hier bylas nie.<br />
+Deur enigiets hier te plaas, beloof u dat u dit self geskryf het, of dat dit gekopieer is vanuit "publieke domein" of soortgelyke vrye bronne (sien $1 vir details).
+<strong>MOENIE WERK WAT DEUR KOPIEREG BESKERM WORD HIER PLAAS SONDER TOESTEMMING NIE!</strong>',
+'longpagewarning' => 'WAARSKUWING: Hierdie bladsy is $1 kG groot.
Probeer asseblief die bladsy verkort en die detail na subartikels skuif sodat dit nie 32 kG oorskry nie.',
-'readonlywarning' => "<strong>WAARSKUWING: Die databasis is gesluit vir onderhoud. Dus sal u nie nou u wysigings kan stoor nie. Dalk wil u die teks plak in 'n lêer en stoor vir later. </strong>",
-'protectedpagewarning' => '<strong>WAARSKUWING: Hierdie blad is beskerm, en slegs administrateurs kan die inhoud verander.</strong>',
-'semiprotectedpagewarning' => "'''Let wel:''' Hierdie artikel is beskerm sodat slegs ingetekende gebruikers dit kan wysig.",
-'templatesused' => 'Sjablone in gebruik op hierdie blad:',
-'template-protected' => '(beskermd)',
-'permissionserrorstext' => 'U het nie toestemming om hierdie te doen nie, om die volgende {{PLURAL:$1|rede|redes}}:',
+'longpageerror' => '<strong>FOUT: die teks wat u bygevoeg het is $1 kilogrepe groot, wat groter is as die maximum van $2 kilogrepe.
+Die bladsy kan nie gestoor word nie.</strong>',
+'readonlywarning' => "<strong>WAARSKUWING: Die databasis is gesluit vir onderhoud. Dus sal u nie nou u wysigings kan stoor nie. Dalk wil u die teks plak in 'n lêer en stoor vir later. </strong>",
+'protectedpagewarning' => '<strong>WAARSKUWING: Hierdie blad is beskerm, en slegs administrateurs kan die inhoud verander.</strong>',
+'semiprotectedpagewarning' => "'''Let wel:''' Hierdie artikel is beskerm sodat slegs ingetekende gebruikers dit kan wysig.",
+'cascadeprotectedwarning' => "'''Waarskuwing:''' Die bladsy was beveilig sodat dit slegs deur administrateurs gewysig kan word, omrede dit ingesluit is in die volgende {{PLURAL:$1|bladsy|bladsye}} wat kaskade-beskerming geniet:",
+'titleprotectedwarning' => '<strong>WAARSKUWING: Die bladsy is gesluit sodat net sekere gebruikers dit kan skep.</strong>',
+'templatesused' => 'Sjablone in gebruik op hierdie blad:',
+'templatesusedpreview' => 'Sjablone in hierdie voorskou gebruik:',
+'templatesusedsection' => 'Sjablone gebruik in hierdie afdeling:',
+'template-protected' => '(beskermd)',
+'template-semiprotected' => '(half-beskerm)',
+'hiddencategories' => "Hierdie bladsy is 'n lid van {{PLURAL:$1|1 versteekte kategorie|$1 versteekte kategorië}}:",
+'nocreatetitle' => 'Bladsy skepping beperk',
+'nocreatetext' => '{{SITENAME}} het die skep van nuwe bladsye beperk.
+U kan slegs bestaande bladsye wysig, of u kan [[Special:UserLogin|aanteken of registreer]].',
+'nocreate-loggedin' => 'U het nie regte om nuwe blaaie op {{SITENAME}} te skep nie.',
+'permissionserrors' => 'Toestemmings Foute',
+'permissionserrorstext' => 'U het nie toestemming om hierdie te doen nie, om die volgende {{PLURAL:$1|rede|redes}}:',
+'permissionserrorstext-withaction' => 'U het geen regte om $2, vir die volgende {{PLURAL:$1|rede|redes}}:',
+'recreate-deleted-warn' => "'''Waarskuwing: U skep 'n bladsy wat vantevore verwyder was.'''
+
+U moet besluit of dit wys is om voort te gaan en aan die bladsy te werk.
+Die verwyderingslogboek vir die blad word hieronder vertoon vir u gerief:",
+
+# Parser/template warnings
+'expensive-parserfunction-warning' => 'Waarskuwing: Die bladsy gebruik te veel duur ontlederfunksies.
+
+Daar is $1 funksies, terwyl die bladsy minder as $2 moet hê.',
+'expensive-parserfunction-category' => 'Bladsye wat te veel duur ontlederfunkies gebruik',
+'post-expand-template-inclusion-category' => 'Bladsye waar die maksimum sjabloon insluit grootte oorskry is',
+'post-expand-template-argument-category' => 'Bladsye met weggelate sjabloonargumente',
+
+# "Undo" feature
+'undo-failure' => 'Die wysiging kan nie ongedaan gemaak word nie omdat dit met intermediêre wysigings bots.',
+'undo-norev' => 'Die wysiging kon nie ongedaan gemaak word nie omdat dit nie bestaan nie of reeds verwyder is.',
+'undo-summary' => 'Rol weergawe $1 deur [[Special:Contributions/$2|$2]] terug. ([[User talk:$2|Bespreek]])',
+
+# Account creation failure
+'cantcreateaccounttitle' => 'Kan nie rekening skep nie',
+'cantcreateaccount-text' => "Die registrasie van nuwe rekeninge vanaf die IP-adres ('''$1''') is geblok deur [[User:$3|$3]].
+
+Die rede verskaf deur $3 is ''$2''",
# History pages
'viewpagelogs' => 'Bekyk logboeke vir hierdie bladsy',
'nohistory' => 'Daar is geen wysigingsgeskiedenis vir hierdie bladsy nie.',
'revnotfound' => 'Weergawe nie gevind nie',
'revnotfoundtext' => 'Die ou weergawe wat jy aangevra het kon nie gevind word nie. Gaan asseblief die URL na wat jy gebruik het.',
-'loadhist' => 'Besig om bladsy wysigingsgeskiedenis te laai.',
'currentrev' => 'Huidige wysiging',
'revisionasof' => 'Wysiging soos op $1',
+'revision-info' => 'Weergawe soos op $1 deur $2',
'previousrevision' => '← Ouer weergawe',
'nextrevision' => 'Nuwer weergawe →',
'currentrevisionlink' => 'bekyk huidige weergawe',
'cur' => 'huidige',
'next' => 'volgende',
'last' => 'vorige',
-'orig' => 'oorspronklike',
'page_first' => 'eerste',
'page_last' => 'laaste',
'histlegend' => 'Byskrif: (huidige) = verskil van huidige weergawe,
@@ -504,14 +697,68 @@ Probeer asseblief die bladsy verkort en die detail na subartikels skuif sodat di
'deletedrev' => '[geskrap]',
'histfirst' => 'Oudste',
'histlast' => 'Nuutste',
+'historysize' => '({{PLURAL:$1|1 greep|$1 grepe}})',
'historyempty' => '(leeg)',
# Revision feed
-'history-feed-title' => 'Weergawegeskiedenis',
+'history-feed-title' => 'Weergawegeskiedenis',
+'history-feed-description' => 'Wysigingsgeskiedenis vir die bladsy op die wiki',
+'history-feed-item-nocomment' => '$1 by $2', # user at time
# Revision deletion
-'rev-deleted-user' => '(gebruikersnaam geskrap)',
-'rev-delundel' => 'wys/versteek',
+'rev-deleted-comment' => '(opsomming geskrap)',
+'rev-deleted-user' => '(gebruikersnaam geskrap)',
+'rev-deleted-event' => '(stawingsaksie verwyder)',
+'rev-delundel' => 'wys/versteek',
+'revisiondelete' => 'Verwyder/herstel weergawes',
+'revdelete-nooldid-title' => 'Ongeldige teiken weergawe',
+'revdelete-selected' => 'Geselekteerde {{PLURAL:$2|wysiging|wysigings}} vir [[:$1]]:',
+'logdelete-selected' => 'Geselekteerde {{PLURAL:$1|logboek aksie|logboek aksies}}:',
+'revdelete-legend' => 'Stel sigbaarheid beperkinge',
+'revdelete-hide-text' => 'Steek hersiening teks weg',
+'revdelete-hide-name' => 'Steek aksie en teiken weg',
+'revdelete-hide-comment' => 'Versteek wysigopsomming',
+'revdelete-hide-user' => 'Steek redigeerder se gebruikersnaam/IP weg',
+'revdelete-hide-restricted' => 'Pas die beperkings op administrateurs toe en sluit die koppelvlak.',
+'revdelete-suppress' => 'Onderdruk data van administrateurs en ander.',
+'revdelete-hide-image' => 'Steek lêer inhoud weg',
+'revdelete-unsuppress' => 'Verwyder beperkinge op herstelde weergawes',
+'revdelete-log' => 'Boekstaaf opmerking:',
+'revdelete-submit' => 'Pas op gekose weergawe toe',
+'revdel-restore' => 'Verander sigbaarheid',
+'pagehist' => 'Bladsy geskiedenis',
+'deletedhist' => 'Verwyderde geskiedenis',
+'revdelete-content' => 'inhoud',
+'revdelete-summary' => 'redigeringsopsomming',
+'revdelete-uname' => 'gebruikersnaam',
+'revdelete-hid' => '$1 verskuil',
+'revdelete-unhid' => '$1 onverskuil',
+'revdelete-log-message' => '$1 vir $2 {{PLURAL:$2|weergawe|weergawes}}',
+'logdelete-log-message' => '$1 vir $2 {{PLURAL:$2|gebeurtenis|gebeurtenisse}}',
+
+# Suppression log
+'suppressionlog' => 'Verbergingslogboek',
+
+# History merging
+'mergehistory' => 'Geskiedenis van bladsy samesmeltings',
+'mergehistory-box' => 'Versmelt weergawes van twee bladsye:',
+'mergehistory-from' => 'Bronbladsy:',
+'mergehistory-into' => 'Bestemmingsbladsy:',
+'mergehistory-list' => 'Versmeltbare wysigingsgeskiedenis',
+'mergehistory-go' => 'Wys versmeltbare wysigings',
+'mergehistory-submit' => 'Versmelt weergawes',
+'mergehistory-empty' => 'Geen weergawes kan versmelt word nie.',
+'mergehistory-success' => '$3 {{PLURAL:$3|weergawe|weergawes}} van [[:$1]] is suksesvol versmelt met [[:$2]].',
+'mergehistory-no-source' => 'Bronbladsy $1 bestaan nie.',
+'mergehistory-no-destination' => 'Bestemmingsbladsy $1 bestaan nie.',
+'mergehistory-invalid-source' => "Bronbladsy moet 'n geldige titel wees.",
+'mergehistory-invalid-destination' => "Bestemmingsbladsy moet 'n geldige titel wees.",
+'mergehistory-autocomment' => '[[:$1]] saamgevoeg by [[:$2]]',
+'mergehistory-comment' => '[[:$1]] saamgevoeg by [[:$2]]: $3',
+
+# Merge log
+'mergelog' => 'Versmeltingslogboek',
+'pagemerge-logentry' => 'versmelt [[$1]] met [[$2]] (weergawes tot en met $3)',
# Diffs
'history-title' => 'Weergawegeskiedenis van "$1"',
@@ -519,40 +766,61 @@ Probeer asseblief die bladsy verkort en die detail na subartikels skuif sodat di
'lineno' => 'Lyn $1:',
'compareselectedversions' => 'Vergelyk gekose weergawes',
'editundo' => 'maak ongedaan',
+'diff-multi' => '({{PLURAL:$1|Een tussenin wysiging|$1 tussenin wysigings}} word nie gewys nie.)',
# Search results
-'searchresults' => 'soekresultate',
-'searchresulttext' => 'Vir meer inligting oor {{SITENAME}} soekresultate, lees [[{{MediaWiki:Helppage}}|{{int:help}}]].',
-'searchsubtitle' => 'Vir navraag "[[:$1]]"',
-'searchsubtitleinvalid' => 'Vir navraag "$1"',
-'noexactmatch' => "'''Geen bladsy met die titel \"\$1\" bestaan nie.''' Probeer 'n volteksnavraag of [[:\$1|maak die bladsy]].",
-'titlematches' => 'Artikeltitel resultate',
-'notitlematches' => 'Geen artikeltitel resultate nie',
-'textmatches' => 'Artikelteks resultate',
-'notextmatches' => 'Geen artikelteks resultate nie',
-'prevn' => 'vorige $1',
-'nextn' => 'volgende $1',
-'viewprevnext' => 'Kyk na ($1) ($2) ($3).',
-'showingresults' => 'Hier volg <b>$1</b> resultate vanaf #<b>$2</b>.',
-'nonefound' => "<strong>Nota</strong>: onsuksesvolle navrae word gewoonlik veroorsaak deur 'n soektog met algemene
+'searchresults' => 'soekresultate',
+'searchresulttext' => 'Vir meer inligting oor {{SITENAME}} soekresultate, lees [[{{MediaWiki:Helppage}}|{{int:help}}]].',
+'searchsubtitle' => 'Vir navraag "[[:$1]]"',
+'searchsubtitleinvalid' => 'Vir navraag "$1"',
+'noexactmatch' => "'''Geen bladsy met die titel \"\$1\" bestaan nie.''' Probeer 'n volteksnavraag of [[:\$1|skep die bladsy]].",
+'noexactmatch-nocreate' => "'''Daar bestaan geen bladsy met titel \"\$1\" nie.'''",
+'toomanymatches' => "Te veel resultate. Probeer asseblief 'n ander soektog.",
+'titlematches' => 'Artikeltitel resultate',
+'notitlematches' => 'Geen artikeltitel resultate nie',
+'textmatches' => 'Artikelteks resultate',
+'notextmatches' => 'Geen artikelteks resultate nie',
+'prevn' => 'vorige $1',
+'nextn' => 'volgende $1',
+'viewprevnext' => 'Kyk na ($1) ($2) ($3).',
+'search-result-size' => '$1 ({{PLURAL:$2|1 woord|$2 woorde}})',
+'search-result-score' => 'Relevansie: $1%',
+'search-redirect' => '(aanstuur $1)',
+'search-section' => '(afdeling $1)',
+'search-suggest' => 'Het U bedoel: $1',
+'search-interwiki-caption' => 'Suster projekte',
+'search-interwiki-default' => '$1 resultate:',
+'search-interwiki-more' => '(meer)',
+'search-mwsuggest-enabled' => 'met voorstelle',
+'search-mwsuggest-disabled' => 'geen voorstelle',
+'search-relatedarticle' => 'Verwante',
+'mwsuggest-disable' => 'Deaktiveer AJAX voorstelle',
+'searchrelated' => 'verwante',
+'searchall' => 'alle',
+'showingresults' => "Hier volg {{PLURAL:$1|'''1''' resultaat|'''$1''' resultate}} wat met #'''$2''' begin.",
+'showingresultsnum' => "Hieronder {{PLURAL:$3|is '''1''' resultaat|is '''$3''' resultate}} vanaf #'''$2'''.",
+'showingresultstotal' => "Hieronder is {{PLURAL:$3|resultaat '''$1''' van '''$3'''|resultate '''$1 - $2''' van '''$3'''}}",
+'nonefound' => "<strong>Nota</strong>: onsuksesvolle navrae word gewoonlik veroorsaak deur 'n soektog met algemene
woorde wat nie geindekseer word nie, of spesifisering van meer as een woord (slegs blaaie wat alle navraagwoorde
bevat, word gewys).",
-'powersearch' => 'Soek',
-'powersearchtext' => '
-Search in namespaces :<br />
-$1<br />
-$2 List redirects Search for $3 $9',
-'searchdisabled' => '{{SITENAME}} se soekfunksie is tans afgeskakel ter wille van werkverrigting. Gebruik gerus intussen Google of Yahoo! Let daarop dat hulle indekse van die {{SITENAME}}-inhoud verouderd mag wees.',
+'powersearch' => 'Soek',
+'powersearch-legend' => 'Gevorderde soektog',
+'powersearch-ns' => 'Soek in naamruimtes:',
+'powersearch-redir' => 'Wys aanstuurbladsye',
+'powersearch-field' => 'Soek vir',
+'search-external' => 'Eksterne soektog',
+'searchdisabled' => '{{SITENAME}} se soekfunksie is tans afgeskakel ter wille van werkverrigting. Gebruik gerus intussen Google of Yahoo! Let daarop dat hulle indekse van die {{SITENAME}}-inhoud verouderd mag wees.',
# Preferences page
'preferences' => 'Voorkeure',
'mypreferences' => 'My voorkeure',
+'prefs-edits' => 'Aantal wysigings:',
'prefsnologin' => 'Nie ingeteken nie',
-'prefsnologintext' => 'Jy moet [[Special:Userlogin|ingeteken wees]]
+'prefsnologintext' => 'Jy moet [[Special:UserLogin|ingeteken wees]]
om voorkeure te spesifiseer.',
'prefsreset' => 'Voorkeure is herstel.',
'qbsettings' => 'Snelbalkvoorkeure',
-'qbsettings-none' => 'Geen.',
+'qbsettings-none' => 'Geen',
'qbsettings-fixedleft' => 'Links vas.',
'qbsettings-fixedright' => 'Regs vas.',
'qbsettings-floatingleft' => 'Dryf links.',
@@ -596,78 +864,138 @@ om voorkeure te spesifiseer.',
'servertime' => 'Tyd op die bediener is nou',
'guesstimezone' => 'Vul in vanaf webblaaier',
'allowemail' => 'Laat e-pos van ander toe',
+'prefs-searchoptions' => 'Soekopsies',
+'prefs-namespaces' => 'Naamruimtes',
'defaultns' => 'Verstek naamruimtes vir soektog:',
'default' => 'verstek',
'files' => 'Lêers',
# User rights
-'userrights-lookup-user' => 'Beheer gebruikersgroepe',
-'editusergroup' => 'Wysig gebruikersgroepe',
-'userrights-editusergroup' => 'wysig gebruikersgroepe',
-'saveusergroups' => 'Stoor gebruikersgroepe',
-'userrights-groupsmember' => 'Lid van:',
-'userrights-groupsremovable' => 'Skrapbare groepen:',
-'userrights-groupsavailable' => 'Beskikbare groepen:',
-'userrights-reason' => 'Rede vir wysiging:',
+'userrights' => 'Bestuur gebruikersregte', # Not used as normal message but as header for the special page itself
+'userrights-lookup-user' => 'Beheer gebruikersgroepe',
+'userrights-user-editname' => 'Voer gebruikersnaam in:',
+'editusergroup' => 'Wysig gebruikersgroepe',
+'editinguser' => "Besig om gebruikersregte van gebruiker '''[[User:$1|$1]]''' ([[User talk:$1|{{int:talkpagelinktext}}]] | [[Special:Contributions/$1|{{int:contribslink}}]]) te wysig",
+'userrights-editusergroup' => 'wysig gebruikersgroepe',
+'saveusergroups' => 'Stoor gebruikersgroepe',
+'userrights-groupsmember' => 'Lid van:',
+'userrights-groups-help' => "U kan die groepe waarvan die gebruiker 'n lid is verander.
+* 'n Geselekteerde boks beteken dat die gebruiker lid is van die groep.
+* 'n Ongeselekteerde boks beteken dat die gebruiker nie 'n lid van die groep is nie.
+* 'n Ster (*) beteken dat u nie die gebruiker uit 'n groep kan verwyder as hy eers daaraan behoort nie, of vice versa.",
+'userrights-reason' => 'Rede vir wysiging:',
+'userrights-no-interwiki' => 'U het nie toestemming om gebruikersregte op ander wikis te verander nie.',
+'userrights-nodatabase' => 'Databasis $1 bestaan nie of is nie hier beskikbaar nie.',
+'userrights-notallowed' => 'U het nie die toestemming om gebruikersregte toe te ken nie.',
+'userrights-changeable-col' => 'Groepe wat u kan verander',
+'userrights-unchangeable-col' => 'Groepe wat u nie kan verander nie',
# Groups
-'group' => 'Groep:',
-'group-bot' => 'Robotte',
-'group-sysop' => 'Administrateurs',
-'group-bureaucrat' => 'Burokrate',
-'group-all' => '(alle)',
-
-'group-bot-member' => 'Robot',
-'group-sysop-member' => 'Administrateur',
-'group-bureaucrat-member' => 'Burokraat',
-
-'grouppage-bot' => '{{ns:project}}:Robotte',
-'grouppage-sysop' => '{{ns:project}}:Administrateurs',
-'grouppage-bureaucrat' => '{{ns:project}}:Burokrate',
+'group' => 'Groep:',
+'group-user' => 'Gebruikers',
+'group-autoconfirmed' => 'Bevestigde gebruikers',
+'group-bot' => 'Robotte',
+'group-sysop' => 'Administrateurs',
+'group-bureaucrat' => 'Burokrate',
+'group-suppress' => 'Toesighouers',
+'group-all' => '(alle)',
+
+'group-user-member' => 'Gebruiker',
+'group-autoconfirmed-member' => 'Geregistreerde gebruiker',
+'group-bot-member' => 'Robot',
+'group-sysop-member' => 'Administrateur',
+'group-bureaucrat-member' => 'Burokraat',
+'group-suppress-member' => 'Toesighouer',
+
+'grouppage-user' => '{{ns:project}}:Gebruikers',
+'grouppage-autoconfirmed' => '{{ns:project}}:Geregistreerde gebruikers',
+'grouppage-bot' => '{{ns:project}}:Robotte',
+'grouppage-sysop' => '{{ns:project}}:Administrateurs',
+'grouppage-bureaucrat' => '{{ns:project}}:Burokrate',
+
+# Rights
+'right-read' => 'Lees bladsye',
+'right-edit' => 'Wysig bladsye',
+'right-createpage' => 'Skep bladsye (nie besprekingsblaaie nie)',
+'right-createtalk' => 'Skep besprekingsbladsye',
+'right-createaccount' => 'Skep nuwe gebruikersrekeninge',
+'right-minoredit' => "Merk as 'n klein verandering",
+'right-move' => 'Skuif bladsye',
+'right-upload' => 'Laai lêers op',
+'right-reupload' => "Oorskryf 'n bestaande lêer",
+'right-reupload-own' => "Oorskryf 'n lêer wat u self opgelaai het",
+'right-delete' => 'Vee bladsye uit',
+'right-bigdelete' => 'Skrap bladsye met groot geskiedenisse',
+'right-deleterevision' => 'Skrap en ontskrap spesifieke hersienings van bladsye',
+'right-browsearchive' => 'Soek uigeveede bladsye',
+'right-undelete' => "Ontskrap 'n bladsy",
+'right-suppressionlog' => 'Besigtig privaat logboeke',
+'right-editinterface' => 'Wysig die gebruikerskoppelvlak',
+'right-import' => "Importeer bladsye vanaf ander wiki's",
+'right-importupload' => "Importeer bladsye vanaf 'n lêer",
+'right-patrol' => 'Merk ander se wysigings as gepatrolleer',
+'right-mergehistory' => 'Versmelt die geskiedenis van bladsye',
+'right-userrights' => 'Wysig alle gebruiker regte',
+'right-userrights-interwiki' => 'Wysig gebruikersregte van gebruikers op ander wikis',
+'right-siteadmin' => 'Sluit en ontsluit die datbasis',
# User rights log
-'rightslog' => 'Gebruikersrechtenlogboek',
-'rightsnone' => '(geen)',
+'rightslog' => 'Gebruikersregtelogboek',
+'rightslogtext' => 'Hieronder is die logboek van gebruikersregte wat verander is.',
+'rightslogentry' => 'groep lidmaatskap verander vir $1 van $2 na $3',
+'rightsnone' => '(geen)',
# Recent changes
-'nchanges' => '$1 {{PLURAL:$1|wysiging|wysigings}}',
-'recentchanges' => 'Onlangse wysigings',
-'rcnote' => "Hier volg die laaste {{PLURAL:$1|'''$1''' wysiging|'''$1''' wysigings}} gedurende die afgelope {{PLURAL:$2|dag|'''$2''' dae}}, op $3.",
-'rcnotefrom' => 'Hier onder is die wysigings sedert <b>$2</b> (tot by <b>$1</b> word gewys).',
-'rclistfrom' => 'Vertoon wysigings vanaf $1',
-'rcshowhideminor' => '$1 klein wysigings',
-'rcshowhidebots' => '$1 robotte',
-'rcshowhideliu' => '$1 aangetekende gebruikers',
-'rcshowhideanons' => '$1 anonieme gebruikers',
-'rcshowhidepatr' => '$1 gepatrolleerde wysigings',
-'rcshowhidemine' => '$1 my wysigings',
-'rclinks' => 'Vertoon die laaste $1 wysigings in die afgelope $2 dae<br />$3',
-'diff' => 'verskil',
-'hist' => 'geskiedenis',
-'hide' => 'versteek',
-'show' => 'wys',
-'minoreditletter' => 'k',
-'newpageletter' => 'N',
-'boteditletter' => 'b',
-'newsectionsummary' => '/* $1 */ nuwe afdeling',
+'nchanges' => '$1 {{PLURAL:$1|wysiging|wysigings}}',
+'recentchanges' => 'Onlangse wysigings',
+'recentchangestext' => 'Volg die mees onlangse wysigings aan die wiki op die bladsy.',
+'recentchanges-feed-description' => 'Spoor die mees onlangse wysigings op die wiki na in die voer.',
+'rcnote' => "Hier volg die laaste {{PLURAL:$1|'''$1''' wysiging|'''$1''' wysigings}} vir die afgelope {{PLURAL:$2|dag|'''$2''' dae}}, soos vanaf $4, $5.",
+'rcnotefrom' => 'Hier onder is die wysigings sedert <b>$2</b> (tot by <b>$1</b> word gewys).',
+'rclistfrom' => 'Vertoon wysigings vanaf $1',
+'rcshowhideminor' => '$1 klein wysigings',
+'rcshowhidebots' => '$1 robotte',
+'rcshowhideliu' => '$1 aangetekende gebruikers',
+'rcshowhideanons' => '$1 anonieme gebruikers',
+'rcshowhidepatr' => '$1 gepatrolleerde wysigings',
+'rcshowhidemine' => '$1 my wysigings',
+'rclinks' => 'Vertoon die laaste $1 wysigings in die afgelope $2 dae<br />$3',
+'diff' => 'verskil',
+'hist' => 'geskiedenis',
+'hide' => 'versteek',
+'show' => 'Wys',
+'minoreditletter' => 'k',
+'newpageletter' => 'N',
+'boteditletter' => 'b',
+'rc_categories' => 'Beperk tot kategorië (skei met "|")',
+'rc_categories_any' => 'Enige',
+'newsectionsummary' => '/* $1 */ nuwe afdeling',
# Recent changes linked
-'recentchangeslinked' => 'Verwante veranderings',
+'recentchangeslinked' => 'Verwante veranderings',
+'recentchangeslinked-title' => 'Wysigings verwant aan "$1"',
+'recentchangeslinked-noresult' => 'Geen veranderinge op geskakelde bladsye gedurende die periode nie.',
+'recentchangeslinked-summary' => "Hier volg 'n lys van wysigings wat onlangs gemaak is aan bladsye wat van die gespesifiseerde bladsy geskakel word (of van bladsye van die gespesifiseerde kategorie).
+Bladsye op [[Special:Watchlist|jou dophoulys]] word in '''vetdruk''' uitgewys.",
+'recentchangeslinked-page' => 'Bladsy naam:',
+'recentchangeslinked-to' => 'Besigtig wysigings aan bladsye met skakels na die bladsy',
# Upload
-'upload' => 'Laai lêer',
-'uploadbtn' => 'Laai lêer',
-'reupload' => 'Herlaai',
-'reuploaddesc' => 'Keer terug na die laaivorm.',
-'uploadnologin' => 'Nie ingeteken nie',
-'uploadnologintext' => 'Teken eers in [[Special:Userlogin|logged in]]
+'upload' => 'Laai lêer',
+'uploadbtn' => 'Laai lêer',
+'reupload' => 'Herlaai',
+'reuploaddesc' => 'Keer terug na die laaivorm.',
+'uploadnologin' => 'Nie ingeteken nie',
+'uploadnologintext' => 'Teken eers in [[Special:UserLogin|logged in]]
om lêers te laai.',
-'uploaderror' => 'Laaifout',
-'uploadtext' => "'''STOP!''' Voor jy hier laai, lees en volg {{SITENAME}} se
+'upload_directory_missing' => 'Die oplaaigids ($1) bestaan nie en kon nie deur die webbediener geskep word nie.',
+'upload_directory_read_only' => 'Die webbediener kan nie na die oplaai gids ($1) skryf nie.',
+'uploaderror' => 'Laaifout',
+'uploadtext' => "'''STOP!''' Voor jy hier laai, lees en volg {{SITENAME}} se
[[{{MediaWiki:Copyrightpage}}|beleid oor prentgebruik]].
Om prente wat voorheen gelaai is te sien of te soek, gaan na die
-[[Special:Imagelist|lys van gelaaide prente]].
+[[Special:ImageList|lys van gelaaide prente]].
Laai van lêers en skrappings word aangeteken in die
[[Special:Log/upload|laailog]].
@@ -685,96 +1013,159 @@ Om die prent in 'n artikel te gebruik, gebruik 'n skakel met die formaat '''<now
'''<nowiki>[[</nowiki>{{ns:media}}<nowiki>:file.ogg]]</nowiki>''' vir klanklêers.
Let asseblief op dat, soos met {{SITENAME}} bladsye, mag ander jou gelaaide lêers redigeer as hulle dink dit dien die ensiklopedie, en jy kan verhoed word om lêers te laai as jy die stelsel misbruik.",
-'uploadlog' => 'laailog',
-'uploadlogpage' => 'laai_log',
-'uploadlogpagetext' => "Hier volg 'n lys van die mees onlangse lêers wat gelaai is.",
-'filename' => 'Lêernaam',
-'filedesc' => 'Opsomming',
-'fileuploadsummary' => 'Opsomming:',
-'filestatus' => 'Outeursregsituasie',
-'filesource' => 'Bron',
-'uploadedfiles' => 'Gelaaide lêers',
-'ignorewarnings' => 'Ignoreer enige waarskuwings',
-'minlength1' => 'Prentname moet ten minste een letter lank wees.',
-'illegalfilename' => 'Die lêernaam "$1" bevat karakters wat nie toegelaat word in bladsytitels nie. Verander asseblief die naam en probeer die lêer weer laai.',
-'badfilename' => 'Prentnaam is verander na "$1".',
-'largefileserver' => 'Hierdie lêer is groter as wat die bediener se opstelling toelaat.',
-'emptyfile' => "Die lêer wat jy probeer oplaai het blyk leeg te wees. Dit mag wees omdat jy 'n tikfout in die lêernaam gemaak het. Gaan asseblief na en probeer weer.",
-'successfulupload' => 'Laai suksesvol',
-'uploadwarning' => 'Laaiwaarskuwing',
-'savefile' => 'Stoor lêer',
-'uploadedimage' => 'het "[[$1]]" gelaai',
-'overwroteimage' => 'het een nuwe weergawe van "[[$1]]" gelaai',
-'uploaddisabled' => 'Laai is uitgeskakel',
-'uploadcorrupt' => "Die lêer is foutief of is van 'n verkeerde tipe. Gaan asseblief die lêer na en laai weer op.",
-'sourcefilename' => 'Bronlêernaam',
-'destfilename' => 'Teikenlêernaam',
-'watchthisupload' => 'Hou hierdie bladsy dop',
-
-'license' => 'Lisensiëring',
-
-# Image list
-'imagelist' => 'Prentelys',
-'imagelisttext' => 'Hier onder is a lys van $1 prente gesorteer $2.',
-'getimagelist' => 'Besig om prentelys te haal',
-'ilsubmit' => 'Soek',
-'showlast' => 'Wys laaste $1 prente gesorteer $2.',
-'byname' => 'volgens naam',
-'bydate' => 'volgens datum',
-'bysize' => 'volgens grootte',
-'imgdelete' => 'skrap',
-'imgdesc' => 'beskrywing',
-'imgfile' => 'lêer',
-'filehist' => 'Lêergeskiedenis',
-'filehist-current' => 'huidig',
-'filehist-datetime' => 'Datum/Tyd',
-'filehist-user' => 'Gebruiker',
-'filehist-filesize' => 'Lêergrootte',
-'filehist-comment' => 'Opmerking',
-'imagelinks' => 'Prentskakels',
-'linkstoimage' => 'Die volgende bladsye gebruik hierdie prent:',
-'nolinkstoimage' => 'Daar is geen bladsye wat hierdie prent gebruik nie.',
-'noimage' => "Geen lêer met so 'n naam bestaan nie; $1 gerus.",
-'noimage-linktext' => 'laai dit',
-'uploadnewversion-linktext' => 'Laai een nuwe weergawe van hierdie lêer',
-'imagelist_date' => 'Datum',
-'imagelist_name' => 'Naam',
-'imagelist_user' => 'Gebruiker',
-'imagelist_size' => 'Grootte',
-'imagelist_description' => 'Beskryving',
-'imagelist_search_for' => 'Soek vir beeldnaam:',
+'upload-permitted' => 'Toegelate lêertipes: $1.',
+'upload-preferred' => 'Aanbevole lêertipes: $1.',
+'upload-prohibited' => 'Verbode lêertipes: $1.',
+'uploadlog' => 'laailog',
+'uploadlogpage' => 'laai_log',
+'uploadlogpagetext' => "Hier volg 'n lys van die mees onlangse lêers wat gelaai is.",
+'filename' => 'Lêernaam',
+'filedesc' => 'Opsomming',
+'fileuploadsummary' => 'Opsomming:',
+'filestatus' => 'Outeursregsituasie:',
+'filesource' => 'Bron:',
+'uploadedfiles' => 'Gelaaide lêers',
+'ignorewarning' => 'Ignoreer waarskuwings en stoor die lêer',
+'ignorewarnings' => 'Ignoreer enige waarskuwings',
+'minlength1' => 'Prentname moet ten minste een letter lank wees.',
+'illegalfilename' => 'Die lêernaam "$1" bevat karakters wat nie toegelaat word in bladsytitels nie. Verander asseblief die naam en probeer die lêer weer laai.',
+'badfilename' => 'Prentnaam is verander na "$1".',
+'filetype-badmime' => 'Lêers met MIME-tipe "$1" word nie toegelaat nie.',
+'filetype-unwanted-type' => "'''\".\$1\"''' is 'n ongewenste lêertipe.
+Aanbevole {{PLURAL:\$3|lêertipe|lêertipes}} is \$2.",
+'filetype-banned-type' => "'''\".\$1\"''' is nie 'n toegelate lêertipe nie.
+Toelaatbare {{PLURAL:\$3|lêertipes|lêertipes}} is \$2.",
+'filetype-missing' => 'Die lêer het geen uitbreiding (soos ".jpg").',
+'large-file' => 'Aanbeveling: maak lêer kleiner as $1;
+die lêer is $2.',
+'largefileserver' => 'Hierdie lêer is groter as wat die bediener se opstelling toelaat.',
+'emptyfile' => "Die lêer wat jy probeer oplaai het blyk leeg te wees. Dit mag wees omdat jy 'n tikfout in die lêernaam gemaak het. Gaan asseblief na en probeer weer.",
+'fileexists' => "'n Lêer met die naam bestaan reeds, kyk na <strong><tt>$1</tt></strong> as u nie seker is dat u dit wil wysig nie.",
+'fileexists-thumb' => "<center>'''Bestaande lêer'''</center>",
+'file-exists-duplicate' => "Die lêer is 'n duplikaat van die volgende {{PLURAL:$1|lêer|lêers}}:",
+'successfulupload' => 'Laai suksesvol',
+'uploadwarning' => 'Laaiwaarskuwing',
+'savefile' => 'Stoor lêer',
+'uploadedimage' => 'het "[[$1]]" gelaai',
+'overwroteimage' => 'het een nuwe weergawe van "[[$1]]" gelaai',
+'uploaddisabled' => 'Laai is uitgeskakel',
+'uploaddisabledtext' => 'Die oplaai van lêers is afgeskakel op {{SITENAME}}.',
+'uploadcorrupt' => "Die lêer is foutief of is van 'n verkeerde tipe. Gaan asseblief die lêer na en laai weer op.",
+'uploadvirus' => "Hierdie lêer bevat 'n virus! Inligting: $1",
+'sourcefilename' => 'Bronlêernaam:',
+'destfilename' => 'Teikenlêernaam:',
+'upload-maxfilesize' => 'Maksimum lêer grootte: $1',
+'watchthisupload' => 'Hou hierdie bladsy dop',
+
+'upload-proto-error' => 'Verkeerde protokol',
+'upload-file-error' => 'Interne fout',
+'upload-misc-error' => 'Onbekende laai fout',
+
+# Some likely curl errors. More could be added from <http://curl.haxx.se/libcurl/c/libcurl-errors.html>
+'upload-curl-error6' => 'Kon nie die URL bereik nie',
+'upload-curl-error28' => 'Oplaai neem te lank',
+
+'license' => 'Lisensiëring:',
+'nolicense' => 'Niks gekies',
+'license-nopreview' => '(Voorskou nie beskikbaar)',
+'upload_source_url' => " ('n geldige, publiek toeganklike URL)",
+'upload_source_file' => " ('n lêer op U rekenaar)",
+
+# Special:ImageList
+'imagelist-summary' => 'Die spesiale bladsy wys al die opgelaaide lêers.
+Die nuutste lêer word eerste vertoon.
+Klik op die opskrifte om die tabel anders te sorteer.',
+'imagelist_search_for' => 'Soek vir medianaam:',
+'imgfile' => 'lêer',
+'imagelist' => 'Prentelys',
+'imagelist_date' => 'Datum',
+'imagelist_name' => 'Naam',
+'imagelist_user' => 'Gebruiker',
+'imagelist_size' => 'Grootte',
+'imagelist_description' => 'Beskryving',
+
+# Image description page
+'filehist' => 'Lêergeskiedenis',
+'filehist-help' => 'Klik op die datum/tyd om te sien hoe die lêer destyds gelyk het.',
+'filehist-deleteall' => 'verwyder alles',
+'filehist-deleteone' => 'skrap',
+'filehist-revert' => 'rol terug',
+'filehist-current' => 'huidig',
+'filehist-datetime' => 'Datum/Tyd',
+'filehist-user' => 'Gebruiker',
+'filehist-dimensions' => 'Dimensies',
+'filehist-filesize' => 'Lêergrootte',
+'filehist-comment' => 'Opmerking',
+'imagelinks' => 'Prentskakels',
+'linkstoimage' => 'Die volgende {{PLURAL:$1|bladsy|$1 bladsye}} gebruik hierdie prent:',
+'nolinkstoimage' => 'Daar is geen bladsye wat hierdie prent gebruik nie.',
+'morelinkstoimage' => 'Wys [[Special:WhatLinksHere/$1|meer skakels]] na die lêer.',
+'redirectstofile' => "Die volgende {{PLURAL:$1|lêer is 'n aanstuur|$1 lêers is aansture}} na die lêer:",
+'duplicatesoffile' => "Die volgende {{PLURAL:$1|lêer is 'n duplikaat|$1 lêers is duplikate}} van die lêer:",
+'sharedupload' => 'Die lêer word gedeel en mag moontlik op ander projekte gebruik word.',
+'shareduploadwiki' => 'Sien $1 vir verdere inligting.',
+'shareduploadwiki-desc' => 'Die $1 uit die gedeelde lêerbank word hieronder weergegee.',
+'shareduploadwiki-linktext' => 'lêer beskrywingsbladsy',
+'shareduploadduplicate' => "Die lêer is 'n duplikaat van $1 uit die gedeelde mediabank.",
+'shareduploadduplicate-linktext' => "'n ander lêer",
+'shareduploadconflict' => 'Die lêer het dieselfde naam as $1 in die gedeelde mediabank.',
+'shareduploadconflict-linktext' => "'n ander lêer",
+'noimage' => "Geen lêer met so 'n naam bestaan nie; $1 gerus.",
+'noimage-linktext' => 'laai dit',
+'uploadnewversion-linktext' => 'Laai een nuwe weergawe van hierdie lêer',
+'imagepage-searchdupe' => 'Soek vir duplikaat lêers',
+
+# File reversion
+'filerevert' => 'Maak $1 ongedaan',
+'filerevert-comment' => 'Opmerking:',
+'filerevert-submit' => 'Rol terug',
# File deletion
'filedelete' => 'Skrap $1',
'filedelete-legend' => 'Skrap lêer',
+'filedelete-intro' => "U is besig om '''[[Media:$1|$1]]''' te verwyder.",
'filedelete-comment' => 'Rede vir skrapping:',
'filedelete-submit' => 'Skrap',
'filedelete-success' => "'''$1''' is geskrap.",
'filedelete-success-old' => '<span class="plainlinks">Die weergawe van \'\'\'[[Media:$1|$1]]\'\'\' op $3, $2 is geskrap.</span>',
+'filedelete-nofile' => "'''$1''' bestaan nie op {{SITENAME}} nie.",
+'filedelete-otherreason' => 'Ander/ekstra rede:',
'filedelete-reason-otherlist' => 'Andere rede',
+'filedelete-reason-dropdown' => '*Algemene skrappingsredes:
+** Kopieregskending
+** Duplikaatlêer',
+'filedelete-edit-reasonlist' => 'Wysig skrap redes',
# MIME search
-'mimesearch' => 'MIME-soek',
-'download' => 'laai af',
+'mimesearch' => 'MIME-soek',
+'mimesearch-summary' => 'Hierdie bladsy maak dit moontlik om lêers te filtreer volgens hulle MIME-tipe. Invoer: inhoudtipe/subtipe, byvoorbeeld <tt>image/jpeg</tt>.',
+'mimetype' => 'MIME-tipe:',
+'download' => 'laai af',
+
+# Unwatched pages
+'unwatchedpages' => 'Bladsye wat nie dopgehou word nie',
# List redirects
'listredirects' => 'Lys aansture',
# Unused templates
+'unusedtemplates' => 'Ongebruikte sjablone',
'unusedtemplatestext' => "Hierdie blad lys alle bladsye in die sjabloonnaamruimte wat nêrens in 'n ander blad ingesluit word nie. Onthou om ook ander skakels na die sjablone na te gaan voor verwydering.",
'unusedtemplateswlh' => 'ander skakels',
# Random page
-'randompage' => 'Lukrake bladsy',
+'randompage' => 'Lukrake bladsy',
+'randompage-nopages' => 'Daar is geen bladye in die naamspasie.',
# Random redirect
-'randomredirect' => 'Lukrake aanstuur',
+'randomredirect' => 'Lukrake aanstuur',
+'randomredirect-nopages' => 'Daar is geen aansture in die naamspasie.',
# Statistics
-'statistics' => 'Statistiek',
-'sitestats' => 'Werfstatistiek',
-'userstats' => 'Gebruikerstatistiek',
-'sitestatstext' => "Daar is {{PLURAL:\$1|'''1''' bladsy|'n totaal van '''\$1''' bladsye}} in die databasis.
+'statistics' => 'Statistiek',
+'sitestats' => 'Werfstatistiek',
+'userstats' => 'Gebruikerstatistiek',
+'sitestatstext' => "Daar is {{PLURAL:\$1|'''1''' bladsy|'n totaal van '''\$1''' bladsye}} in die databasis.
Dit sluit \"bespreek\"-bladsye in, bladsye oor {{SITENAME}}, minimale \"verkorte\"
bladsye, wegwysbladsye, en ander wat waarskynlik nie as artikels kwalifiseer nie.
Uitsluitend bogenoemde, is daar {{PLURAL:\$2|'''1''' bladsy|'''\$2''' bladsye}} wat waarskynlik {{PLURAL:\$2|bladsy|bladsye}} met ware inhoud is.
@@ -784,59 +1175,72 @@ Uitsluitend bogenoemde, is daar {{PLURAL:\$2|'''1''' bladsy|'''\$2''' bladsye}}
{{PLURAL:\$3|Bladsy is al '''1''' keer aangevra|Bladsye is al '''\$3''' kere aangevra}}, en '''\$4''' keer verander sedert hierdie wiki opgezet is.
Dit werk uit op gemiddeld '''\$5''' veranderings per bladsy, en bladsye word '''\$6''' keer per verandering aangevra.
-Die ''[http://meta.wikimedia.org/wiki/Help:Job_queue job queue]''-lengte is '''\$7'''.",
-'userstatstext' => 'Daar is <b>$1</b> geregistreerde gebruikers.
-<b>$2</b> van hulle is administrateurs (sien $3).',
+Die ''[http://www.mediawiki.org/wiki/Manual:Job_queue job queue]''-lengte is '''\$7'''.",
+'userstatstext' => "Daar is {{PLURAL:$1|'''1''' geregistreerde [[Special:ListUsers|gebruiker]]|'''$1''' geregistreerde [[Special:ListUsers|gebruikers]]}}, waarvan '''$2''' (of '''$4%''') $5 regte het.",
+'statistics-mostpopular' => 'Mees bekykte bladsye',
-'disambiguations' => 'Bladsye wat onduidelikhede opklaar',
-'disambiguationspage' => 'Template:Dubbelsinnig',
+'disambiguations' => 'Bladsye wat onduidelikhede opklaar',
+'disambiguationspage' => 'Template:Dubbelsinnig',
+'disambiguations-text' => "Die volgende bladsye skakel na '''dubbelsinnigheidsbladsye'''.
+Die bladsye moet gewysig word om eerder direk na die regte onderwerpe te skakel.<br />
+'n Bladsy word beskou as 'n dubbelsinnigheidsbladsy as dit 'n sjabloon bevat wat geskakel is vanaf [[MediaWiki:Disambiguationspage]]",
-'doubleredirects' => 'Dubbele aansture',
-'doubleredirectstext' => '<b>Let op:</b> Hierdie lys bevat moontlik false positiewe. Dit beteken gewoonlik dat daar nog teks met skakels onder die eerste #REDIRECT is.<br />
-Elke ry bevat skakels na die eerste en die tweede aanstuur, asook die eerste reël van van die tweede aanstuurteks, wat gewoonlik die "regte" teikenbladsy gee waarna die eerste aanstuur behoort te wys.',
+'doubleredirects' => 'Dubbele aansture',
+'doubleredirectstext' => '<b>Let op:</b> Hierdie lys bevat moontlik vals positiewes. Dit beteken gewoonlik dat daar nog teks met skakels onder die eerste #REDIRECT/#AANSTUUR is.<br />
+Elke ry bevat skakels na die eerste en die tweede aanstuur, asook die eerste reël van van die tweede aanstuur se teks, wat gewoonlik die "regte" teiken bladsy gee waarna die eerste aanstuur behoort te wys.',
+'double-redirect-fixer' => 'Aanstuur hersteller',
'brokenredirects' => 'Stukkende aansture',
'brokenredirectstext' => "Die volgende aansture skakel na 'n bladsy wat nie bestaan nie.",
'brokenredirects-edit' => '(wysig)',
'brokenredirects-delete' => '(skrap)',
-'withoutinterwiki' => 'Bladsye sonder taalskakels',
-'withoutinterwiki-submit' => 'Wys',
+'withoutinterwiki' => 'Bladsye sonder taalskakels',
+'withoutinterwiki-summary' => 'Die volgende bladsye het nie skakels na weergawes in ander tale nie:',
+'withoutinterwiki-legend' => 'Voorvoegsel',
+'withoutinterwiki-submit' => 'Wys',
'fewestrevisions' => 'Artikels met die minste wysigings',
# Miscellaneous special pages
-'nbytes' => '$1 grepe',
+'nbytes' => '$1 {{PLURAL:$1|greep|grepe}}',
'ncategories' => '$1 {{PLURAL:$1|kategorie|kategorieë}}',
-'nlinks' => '$1 skakels',
+'nlinks' => '$1 {{PLURAL:$1|skakel|skakels}}',
'nmembers' => '$1 {{PLURAL:$1|lid|lede}}',
'nrevisions' => '$1 {{PLURAL:$1|weergawe|weergawes}}',
-'nviews' => '$1 keer aangevra',
+'nviews' => '$1 {{PLURAL:$1|keer|kere}} aangevra',
+'specialpage-empty' => 'Die verslag lewer geen resultate nie.',
'lonelypages' => 'Weesbladsye',
+'lonelypagestext' => 'Die volgende bladsye is nie geskakel vanaf ander bladsye in {{SITENAME}} nie:',
'uncategorizedpages' => 'Ongekategoriseerde bladsye',
'uncategorizedcategories' => 'Ongekategoriseerde kategorieë',
-'uncategorizedimages' => 'Ongekategoriseerde beelde',
+'uncategorizedimages' => 'Ongekategoriseerde lêers',
'uncategorizedtemplates' => 'Ongekategoriseerde sjablone',
'unusedcategories' => 'Ongebruikte kategorieë',
'unusedimages' => 'Ongebruikte lêers',
'popularpages' => 'Gewilde bladsye',
'wantedcategories' => 'Gesoekte kategorieë',
'wantedpages' => 'Gesogte bladsye',
+'missingfiles' => 'Lêers wat nie bestaan nie',
'mostlinked' => 'Bladsye met meeste skakels daarheen',
'mostlinkedcategories' => 'Kategorieë met die meeste skakels daarheen',
'mostlinkedtemplates' => 'Sjablone met die meeste skakels daarheen',
'mostcategories' => 'Artikels met die meeste kategorieë',
'mostimages' => 'Beelde met meeste skakels daarheen',
'mostrevisions' => 'Artikels met meeste wysigings',
-'allpages' => 'Alle bladsye',
'prefixindex' => 'Alle bladsye (voorvoegselindeks)',
'shortpages' => 'Kort bladsye',
'longpages' => 'Lang bladsye',
'deadendpages' => 'Doodloopbladsye',
+'deadendpagestext' => 'Die volgende bladsye bevat nie skakels na ander bladsye in {{SITENAME}} nie:',
'protectedpages' => 'Beskermde bladsye',
+'protectedpages-indef' => 'Slegs blokkades sonder vervaldatum',
+'protectedpagestext' => 'Die volgende bladsye is beskerm teen verskuiwing of wysiging:',
+'protectedpagesempty' => 'Geen bladsye is tans met die parameters beveilig nie.',
+'protectedtitles' => 'Beskermde titels',
+'protectedtitlestext' => 'Die volgende titels is beveilig en kan nie geskep word nie',
+'protectedtitlesempty' => 'Geen titels is tans met die parameters beveilig nie.',
'listusers' => 'Gebruikerslys',
-'specialpages' => 'Spesiale bladsye',
-'spheading' => 'Spesiale bladsye',
'newpages' => 'Nuwe bladsye',
'newpages-username' => 'Gebruikersnaam:',
'ancientpages' => 'Oudste bladsye',
@@ -846,16 +1250,13 @@ Elke ry bevat skakels na die eerste en die tweede aanstuur, asook die eerste re
'unusedcategoriestext' => 'Die volgende kategoriebladsye bestaan alhoewel geen artikel of kategorie hulle gebruik nie.',
'notargettitle' => 'Geen teiken',
'notargettext' => "Jy het nie 'n teikenbladsy of gebruiker waarmee hierdie funksie moet werk, gespesifiseer nie.",
+'pager-newer-n' => '{{PLURAL:$1|nuwer 1|nuwer $1}}',
+'pager-older-n' => '{{PLURAL:$1|ouer 1|ouer $1}}',
# Book sources
'booksources' => 'Boekbronne',
'booksources-search-legend' => 'Soek vir boekbronne',
-'booksources-go' => 'Gaan',
-
-'categoriespagetext' => 'Die volgende kategorieë bestaan op die wiki.',
-'groups' => 'Gebruikersgroepe',
-'alphaindexline' => '$1 tot $2',
-'version' => 'Weergawe',
+'booksources-go' => 'Soek',
# Special:Log
'specialloguserlabel' => 'Gebruiker:',
@@ -864,10 +1265,14 @@ Elke ry bevat skakels na die eerste en die tweede aanstuur, asook die eerste re
'all-logs-page' => 'Alle logboeke',
'log-search-legend' => 'Soek vir logboeke',
'log-search-submit' => 'Gaan',
-'alllogstext' => "Vertoon 'n samestelling van laai-, skrap-, beskerm-, blok- en administrateurlogs van {{SITENAME}}.
-Jy kan die vertoning vernou deur 'n logtipe, gebruikersnaam of spesifieke blad te kies.",
-
-# Special:Allpages
+'alllogstext' => "Vertoon 'n samestelling van laai-, skrap-, beskerm-, versper- en administrateurboekstawings van {{SITENAME}}.
+U kan die resultate vernou deur 'n boekstaaftipe, gebruikersnaam of spesifieke blad te kies.",
+'logempty' => 'Geen inskrywings in die logboek voldoen aan die kriteria.',
+'log-title-wildcard' => 'Soek bladsye wat met die naam begin',
+
+# Special:AllPages
+'allpages' => 'Alle bladsye',
+'alphaindexline' => '$1 tot $2',
'nextpage' => 'Volgende blad ($1)',
'prevpage' => 'Vorige bladsye ($1)',
'allpagesfrom' => 'Wys bladsye vanaf:',
@@ -878,18 +1283,35 @@ Jy kan die vertoning vernou deur 'n logtipe, gebruikersnaam of spesifieke blad t
'allpagesnext' => 'Volgende',
'allpagessubmit' => 'Gaan',
'allpagesprefix' => 'Wys bladsye wat begin met:',
+'allpages-bad-ns' => '{{SITENAME}} het geen naamspasie "$1" nie.',
+
+# Special:Categories
+'categories' => 'Kategorieë',
+'categoriespagetext' => 'Die volgende kategorieë bestaan op die wiki.',
+'categoriesfrom' => 'Wys kategorieë vanaf:',
+'special-categories-sort-count' => 'sorteer volgens getal',
+'special-categories-sort-abc' => 'sorteer alfabeties',
-# Special:Listusers
+# Special:ListUsers
'listusersfrom' => 'Wys gebruikers, beginnende by:',
'listusers-submit' => 'Wys',
'listusers-noresult' => 'Geen gebruiker gevind.',
+# Special:ListGroupRights
+'listgrouprights' => 'Gebruikersgroepregte',
+'listgrouprights-summary' => "Hier volg 'n lys van gebruikersgroepe wat op die wiki gedefinieer is met hulle geassosieerde regte. Vir meer inligting oor individuele regte, sien [[{{MediaWiki:Listgrouprights-helppage}}]].",
+'listgrouprights-group' => 'Groep',
+'listgrouprights-rights' => 'Regte',
+'listgrouprights-helppage' => 'Help:Groep regte',
+'listgrouprights-members' => '(lys van lede)',
+
# E-mail user
'mailnologin' => 'Geen versendadres beskikbaar',
-'mailnologintext' => "U moet [[Special:Userlogin|ingeteken]] wees en 'n geldige e-posadres in die [[Special:Preferences|voorkeure]] hê om e-pos aan ander gebruikers te stuur.",
+'mailnologintext' => "U moet [[Special:UserLogin|ingeteken]] wees en 'n geldige e-posadres in die [[Special:Preferences|voorkeure]] hê om e-pos aan ander gebruikers te stuur.",
'emailuser' => 'Stuur e-pos na hierdie gebruiker',
'emailpage' => 'Stuur e-pos na gebruiker',
'emailpagetext' => 'As dié gerbuiker \'n geldige e-posadres in sy/haar gebruikersvoorkeure het, sal hierdie vorm \'n enkele boodskap stuur. Die e-posadres in jou gebruikersvoorkeure sal verkyn as die "Van"-adres van die pos. Dus sal die ontvanger kan terug antwoord.',
+'usermailererror' => 'Fout met versending van e-pos:',
'defemailsubject' => '{{SITENAME}}-epos',
'noemailtitle' => 'Geen e-posadres',
'noemailtext' => "Hierdie gebruiker het nie 'n geldige e-posadres gespesifiseer nie of het gekies om nie e-pos van ander gebruikers te ontvang nie.",
@@ -898,6 +1320,8 @@ Jy kan die vertoning vernou deur 'n logtipe, gebruikersnaam of spesifieke blad t
'emailsubject' => 'Onderwerp',
'emailmessage' => 'Boodskap',
'emailsend' => 'Stuur',
+'emailccme' => "E-pos vir my 'n kopie van my boodskap.",
+'emailccsubject' => 'Kopie van U boodskap aan $1: $2',
'emailsent' => 'E-pos gestuur',
'emailsenttext' => 'Jou e-pos is gestuur.',
@@ -907,11 +1331,11 @@ Jy kan die vertoning vernou deur 'n logtipe, gebruikersnaam of spesifieke blad t
'watchlistfor' => "(vir '''$1''')",
'nowatchlist' => 'Jy het geen items in jou dophoulys nie.',
'watchnologin' => 'Nie ingeteken nie',
-'watchnologintext' => 'Jy moet [[Special:Userlogin|ingeteken]]
+'watchnologintext' => 'Jy moet [[Special:UserLogin|ingeteken]]
wees om jou dophoulys te verander.',
'addedwatch' => 'Bygevoeg tot dophoulys',
'addedwatchtext' => 'Die bladsy "$1" is by u [[Special:Watchlist|dophoulys]] gevoeg.
-Die bladsy "$1" is by u [[Special:Watchlist|dophoulys]] gevoeg. Toekomstige veranderinge aan hierdie bladsy en sy verwante besprekingsblad sal daar verskyn en die bladsy sal in \'\'\'vetdruk\'\'\' verskyn in die [[Special:Recentchanges|lys van onlangse wysigings]], sodat u dit makliker kan raaksien.
+Die bladsy "$1" is by u [[Special:Watchlist|dophoulys]] gevoeg. Toekomstige veranderinge aan hierdie bladsy en sy verwante besprekingsblad sal daar verskyn en die bladsy sal in \'\'\'vetdruk\'\'\' verskyn in die [[Special:RecentChanges|lys van onlangse wysigings]], sodat u dit makliker kan raaksien.
As u die bladsy later van u dophoulys wil verwyder, kliek "verwyder van dophoulys" in die kieslys bo-aan die bladsy.',
'removedwatch' => 'Afgehaal van dophoulys',
@@ -921,21 +1345,59 @@ As u die bladsy later van u dophoulys wil verwyder, kliek "verwyder van dophouly
'unwatch' => 'Verwyder van dophoulys',
'unwatchthispage' => 'Moenie meer dophou',
'notanarticle' => "Nie 'n artikel",
+'notvisiblerev' => 'Weergawe is verwyder',
'watchnochange' => 'Geen item op die dophoulys is geredigeer in die gekose periode nie.',
-'watchlistcontains' => 'Jou dophoulys bevat $1 bladsye.',
-'wlnote' => 'Hier volg die laaste $1 veranderings binne die laaste <b>$2</b> ure.',
+'watchlist-details' => '{{PLURAL:$1|$1 bladsy|$1 bladsye}} in dophoulys, besprekingsbladsye uitgesluit.',
+'wlheader-enotif' => '* E-pos notifikasie is aangeskakel.',
+'wlheader-showupdated' => "* Bladsye wat verander is sedert u hulle laas besoek het word in '''vetdruk''' uitgewys",
+'watchmethod-recent' => 'Kontroleer onlangse wysigings aan bladsye op dophoulys',
+'watchlistcontains' => 'Jou dophoulys bevat $1 {{PLURAL:$1|bladsy|bladsye}}.',
+'iteminvalidname' => "Probleem met item '$1', ongeldige naam...",
+'wlnote' => "Hier volg die laaste {{PLURAL:$1|verandering|'''$1''' veranderings}} binne die laaste {{PLURAL:$2|uur|'''$2''' ure}}.",
'wlshowlast' => 'Wys afgelope $1 ure, $2 dae of $3',
+'watchlist-show-bots' => "Wys 'bot' wysigings",
'watchlist-hide-bots' => 'Versteek robotte',
+'watchlist-show-own' => 'Wys my wysigings',
'watchlist-hide-own' => 'Versteek my wysigings',
+'watchlist-show-minor' => 'Wys klein wysigings',
'watchlist-hide-minor' => 'Versteek klein wysigings',
-# Displayed when you click the "watch" button and it's in the process of watching
+# Displayed when you click the "watch" button and it is in the process of watching
'watching' => 'Plaas op dophoulys...',
'unwatching' => 'Verwyder van dophoulys...',
+'enotif_mailer' => '{{SITENAME}} E-pos kennisgewings',
+'enotif_reset' => 'Merk alle bladsye as besoek',
'enotif_newpagetext' => "Dis 'n nuwe bladsy.",
'enotif_impersonal_salutation' => '{{SITENAME}} gebruiker',
'changed' => 'verander',
+'created' => 'geskep',
+'enotif_subject' => 'Bladsy $PAGETITLE op {{SITENAME}} is $CHANGEDORCREATED deur $PAGEEDITOR',
+'enotif_lastvisited' => 'Sien $1 vir alle wysigings sedert U laaste besoek.',
+'enotif_lastdiff' => 'Sien $1 om hierdie wysiging te bekyk.',
+'enotif_anon_editor' => 'anonieme gebruiker $1',
+'enotif_body' => 'Beste $WATCHINGUSERNAME,
+
+Die bladsy $PAGETITLE op {{SITENAME}} is $CHANGEDORCREATED op $PAGEEDITDATE deur $PAGEEDITOR, sien $PAGETITLE_URL vir die nuutste weergawe.
+
+$NEWPAGE
+
+Samevatting van die wysiging: $PAGESUMMARY $PAGEMINOREDIT
+
+Outeur se kontakdetails:
+E-pos: $PAGEEDITOR_EMAIL
+Wiki: $PAGEEDITOR_WIKI
+
+Tensy u hierdie bladsy besoek, sal u geen verdere kennisgewings ontvang nie. U kan ook die waarskuwingsvlag op u dophoulys verstel.
+
+ Groete van die {{SITENAME}} waarskuwingssisteem.
+
+--
+U kan u dophoulys wysig by:
+{{fullurl:Special:Watchlist/edit}}
+
+Terugvoer en verdere bystand:
+{{fullurl:{{MediaWiki:Helppage}}}}',
# Delete/protect/revert
'deletepage' => 'Skrap bladsy',
@@ -946,6 +1408,7 @@ As u die bladsy later van u dophoulys wil verwyder, kliek "verwyder van dophouly
'exblank' => 'bladsy was leeg',
'delete-confirm' => 'Skrap "$1"',
'delete-legend' => 'Skrap',
+'historywarning' => "Waarskuwing: Die bladsy het 'n geskiedenis:",
'confirmdeletetext' => "Jy staan op die punt om 'n bladsy of prent asook al hulle geskiedenis uit die databasis te skrap.
Bevestig asseblief dat jy dit wil doen, dat jy die gevolge verstaan en dat jy dit doen in ooreenstemming met die [[{{MediaWiki:Policy-url}}]].",
'actioncomplete' => 'Aksie uitgevoer',
@@ -957,7 +1420,15 @@ Kyk na $2 vir \'n rekord van onlangse skrappings.',
'deletionlog' => 'skrappingslogboek',
'reverted' => 'Het terug gegaan na vroeëre weergawe',
'deletecomment' => 'Rede vir skrapping',
+'deleteotherreason' => 'Ander/ekstra rede:',
'deletereasonotherlist' => 'Andere rede',
+'deletereason-dropdown' => '*Algemene redes vir verwydering
+** Op aanvraag van outeur
+** Skending van kopieregte
+** Vandalisme',
+'delete-edit-reasonlist' => 'Wysig skrap redes',
+'delete-toobig' => "Die bladsy het 'n lang wysigingsgeskiedenis, meer as $1 {{PLURAL:$1|weergawe|weergawes}}.
+Verwydering van die soort blaaie is beperk om ontwrigting van {{SITENAME}} te voorkom.",
'rollback' => 'Rol veranderinge terug',
'rollback_short' => 'Rol terug',
'rollbacklink' => 'Rol terug',
@@ -969,32 +1440,70 @@ Kyk na $2 vir \'n rekord van onlangse skrappings.',
'protectlogpage' => 'Beskermlogboek',
'protectedarticle' => 'het [[$1]] beskerm',
'unprotectedarticle' => 'het beskerming van [[$1]] verwyder',
-'protectsub' => '(Beskerm "$1")',
-'confirmprotect' => 'Bevestig beskerming',
+'protect-title' => 'Beskerm "$1"',
+'protect-legend' => 'Bevestig beskerming',
'protectcomment' => 'Rede vir beskerming:',
'protectexpiry' => 'Verval:',
-'unprotectsub' => '(Verwyder beskerming van "$1")',
+'protect_expiry_invalid' => 'Vervaltyd is ongeldig.',
+'protect_expiry_old' => 'Vervaltyd is in die verlede.',
+'protect-unchain' => 'Gee regte om te skuif',
+'protect-text' => 'U kan die veiligheidsvlak vir blad <strong><nowiki>$1</nowiki></strong> hier bekyk of verander.',
+'protect-locked-access' => "Jou rekening het nie regte om 'n bladsy se veiligheidsvlakke te verander nie.
+Hier is die huidige verstellings vir bladsy <strong>$1</strong>:",
+'protect-cascadeon' => 'Die bladsy word beskerm want dit is ingesluit by die volgende {{PLURAL:$1|blad|blaaie}} wat kaskade-beskerming geniet. U kan die veiligheidsvlak van die bladsy verander, maar dit sal nie die ander kaskade blaaie beïnvloed nie.',
'protect-default' => '(normaal)',
+'protect-fallback' => 'Hiervoor is "$1" regte nodig',
'protect-level-autoconfirmed' => 'Beskerm teen anonieme wysigings',
'protect-level-sysop' => 'Slegs administrateurs',
+'protect-summary-cascade' => 'kaskade',
+'protect-expiring' => 'verval $1 (UTC)',
+'protect-cascade' => 'Beveilig bladsye insluitend die bladsy (kaskade effek)',
+'protect-cantedit' => 'U kan nie die veiligheidsvlak van die blad verander nie, want u het nie regte om dit te wysig nie.',
+'restriction-type' => 'Regte:',
+'restriction-level' => 'Beperkingsvlak:',
+'minimum-size' => 'Minimum grootte',
+'maximum-size' => 'Maksimum grootte:',
'pagesize' => '(grepe)',
# Restrictions (nouns)
-'restriction-edit' => 'Wysig',
-'restriction-move' => 'Skuif',
+'restriction-edit' => 'Wysig',
+'restriction-move' => 'Skuif',
+'restriction-create' => 'Skep',
+'restriction-upload' => 'Oplaai',
+
+# Restriction levels
+'restriction-level-sysop' => 'volledig beveilig',
+'restriction-level-autoconfirmed' => 'semibeveilig',
+'restriction-level-all' => 'enige vlak',
# Undelete
-'undelete' => 'Herstel geskrapte bladsy',
-'undeletepage' => 'Bekyk en herstel geskrapte bladsye',
-'undeletepagetext' => 'Die volgende bladsye is geskrap, maar hulle is nog in die argief en kan herstel word. Die argief kan periodiek skoongemaak word.',
-'undeleterevisions' => '$1 weergawes in argief',
-'undeletehistory' => "As jy die bladsy herstel, sal alle weergawes herstel word.
+'undelete' => 'Herstel geskrapte bladsy',
+'undeletepage' => 'Bekyk en herstel geskrapte bladsye',
+'undeletepagetitle' => "'''Hieronder is die verwyderde bydraes van [[:$1]]'''.",
+'viewdeletedpage' => 'Bekyk geskrapte bladsye',
+'undeletepagetext' => 'Die volgende bladsye is geskrap, maar hulle is nog in die argief en kan herstel word. Die argief kan periodiek skoongemaak word.',
+'undeleterevisions' => '$1 {{PLURAL:$1|weergawe|weergawes}} in argief',
+'undeletehistory' => "As jy die bladsy herstel, sal alle weergawes herstel word.
As 'n nuwe bladsy met dieselfde naam sedert die skrapping geskep is, sal die herstelde weergawes in die nuwe bladsy se voorgeskiedenis verskyn en die huidige weergawe van die lewendige bladsy sal nie outomaties vervang word nie.",
-'undeletebtn' => 'Herstel',
-'undeletelink' => 'herstel',
-'undeletedarticle' => 'het "$1" herstel',
-'cannotundelete' => 'Skrapping onsuksesvol; miskien het iemand anders dié bladsy al geskrap.',
-'undelete-search-submit' => 'Soek',
+'undeletehistorynoadmin' => 'Die bladsy is geskrap.
+Die rede hiervoor word onder in die opsomming aangedui, saam met besonderhede van die gebruikers wat die bladsy gewysig het voordat dit verwyder is.
+Die verwyderde inhoud is slegs vir administrateurs sigbaar.',
+'undelete-revision' => 'Verwyder weergawe van $1 (vanaf $2) deur $3:',
+'undelete-nodiff' => 'Geen vorige wysigings gevind.',
+'undeletebtn' => 'Herstel',
+'undeletelink' => 'herstel',
+'undeletereset' => 'Herstel',
+'undeletecomment' => 'Opmerking:',
+'undeletedarticle' => 'het "$1" herstel',
+'undeletedrevisions' => '{{PLURAL:$1|1 weergawe|$1 weergawes}} herstel',
+'undeletedrevisions-files' => '{{PLURAL:$1|1 weergawe|$1 weergawes}} en {{PLURAL:$2|1 lêer|$2 lêers}} herstel',
+'undeletedfiles' => '{{PLURAL:$1|1 lêer|$1 lêers}} herstel',
+'cannotundelete' => 'Skrapping onsuksesvol; miskien het iemand anders dié bladsy al geskrap.',
+'undelete-header' => 'Sien die [[Special:Log/delete|skraplogboek]] vir onlangs verwyderde bladsye.',
+'undelete-search-box' => 'Soek verwyderde bladsye',
+'undelete-search-prefix' => 'Wys bladsye wat begin met:',
+'undelete-search-submit' => 'Soek',
+'undelete-no-results' => 'Geen bladsye gevind in die argief van geskrapte bladsye.',
# Namespace form on various pages
'namespace' => 'Naamruimte:',
@@ -1006,8 +1515,6 @@ As 'n nuwe bladsy met dieselfde naam sedert die skrapping geskep is, sal die her
'mycontris' => 'My bydraes',
'contribsub2' => 'Vir $1 ($2)',
'nocontribs' => 'Geen veranderinge wat by hierdie kriteria pas, is gevind nie.',
-'ucnote' => 'Hier volg die gebruiker se laaste <b>$1</b> wysigings in die afgelope <b>$2</b> dae.',
-'uclinks' => 'Vertoon die laaste $1 veranderings; vertoon die afgelope $2 dae.',
'uctop' => ' (boontoe)',
'month' => 'Vanaf maand (en vroeër):',
'year' => 'Vanaf jaar (en vroeër):',
@@ -1016,31 +1523,40 @@ As 'n nuwe bladsy met dieselfde naam sedert die skrapping geskep is, sal die her
'sp-contributions-newbies-sub' => 'Vir nuwe gebruikers',
'sp-contributions-blocklog' => 'Blokkeerlogboek',
'sp-contributions-search' => 'Soek na bydraes',
+'sp-contributions-username' => 'IP-adres of gebruikersnaam:',
'sp-contributions-submit' => 'Vertoon',
# What links here
-'whatlinkshere' => 'Skakels hierheen',
-'whatlinkshere-title' => 'Bladsye die skakel na $1',
-'whatlinkshere-page' => 'Bladsy:',
-'linklistsub' => '(Lys van skakels)',
-'linkshere' => 'Die volgende bladsye skakel hierheen:',
-'nolinkshere' => 'Geen bladsye skakel hierheen nie.',
-'isredirect' => 'Stuur bladsy aan',
-'whatlinkshere-prev' => '{{PLURAL:$1|vorige|vorige $1}}',
-'whatlinkshere-next' => '{{PLURAL:$1|volgende|volgende $1}}',
-'whatlinkshere-links' => '← skakels',
+'whatlinkshere' => 'Skakels hierheen',
+'whatlinkshere-title' => 'Bladsye die skakel na $1',
+'whatlinkshere-page' => 'Bladsy:',
+'linklistsub' => '(Lys van skakels)',
+'linkshere' => "Die volgende bladsye skakel na '''[[:$1]]''':",
+'nolinkshere' => "Geen bladsye skakel na '''[[:$1]]'''.",
+'nolinkshere-ns' => "Geen bladsye skakel na '''[[:$1]]''' in die verkose naamruimte nie.",
+'isredirect' => 'Stuur bladsy aan',
+'istemplate' => 'insluiting',
+'isimage' => 'lêerskakel',
+'whatlinkshere-prev' => '{{PLURAL:$1|vorige|vorige $1}}',
+'whatlinkshere-next' => '{{PLURAL:$1|volgende|volgende $1}}',
+'whatlinkshere-links' => '← skakels',
+'whatlinkshere-hideredirs' => '$1 aansture',
+'whatlinkshere-hidelinks' => '$1 skakels',
+'whatlinkshere-hideimages' => '$1 beeldskakels',
+'whatlinkshere-filters' => 'Filters',
# Block/unblock
-'blockip' => 'Blok IP-adres',
-'blockiptext' => "Gebruik die vorm hier onder om skryftoegang van 'n sekere IP-adres te blok.
-Dit moet net gedoen word om vandalisme te voorkom en in ooreenstemming met [[{{MediaWiki:Policy-url}}|{{SITENAME}} policy]].
+'blockip' => 'Blok gebruiker',
+'blockip-legend' => 'Blok gebruiker of IP-adres',
+'blockiptext' => "Gebruik die vorm hier onder om skryftoegang van 'n sekere IP-adres te blok.
+Dit moet net gedoen word om vandalisme te voorkom en in ooreenstemming met [[{{MediaWiki:Policy-url}}|{{SITENAME}}-beleid]].
Vul 'n spesifieke rede hier onder in (haal byvoorbeeld spesifieke bladsye wat gevandaliseer is, aan).",
-'ipaddress' => 'IP-adres',
-'ipadressorusername' => 'IP-adres of gebruikernaam:',
-'ipbexpiry' => 'Duur:',
-'ipbreason' => 'Rede',
-'ipbreasonotherlist' => 'Ander rede',
-'ipbreason-dropdown' => '*Algemene redes vir blokkering
+'ipaddress' => 'IP-adres',
+'ipadressorusername' => 'IP-adres of gebruikernaam:',
+'ipbexpiry' => 'Duur:',
+'ipbreason' => 'Rede:',
+'ipbreasonotherlist' => 'Ander rede',
+'ipbreason-dropdown' => '*Algemene redes vir versperring
** Invoeg van valse inligting
** Skrap van bladsyinhoud
** "Spam" van skakels na eksterne webwerwe
@@ -1048,28 +1564,58 @@ Vul 'n spesifieke rede hier onder in (haal byvoorbeeld spesifieke bladsye wat ge
** Intimiderende gedrag (teistering)
** Misbruik van veelvuldige rekeninge
** Onaanvaarbare gebruikersnaam',
-'ipbsubmit' => 'Blok hierdie adres',
-'ipbother' => 'Ander tydperk:',
-'ipboptions' => '2 ure:2 hours,1 dag:1 day,3 dae:3 days,1 week:1 week,2 weke:2 weeks,1 maand:1 month,3 maande:3 months,6 maande:6 months,1 jaar:1 year,onbeperk:infinite', # display1:time1,display2:time2,...
-'ipbotheroption' => 'ander',
-'badipaddress' => 'Die IP-adres is nie in die regte formaat nie.',
-'blockipsuccesssub' => 'Blokkering het geslaag',
-'blockipsuccesstext' => 'Die IP-adres "$1" is geblok.
-<br />Kyk na [[Special:Ipblocklist|IP block list]] vir \'n oorsig van blokkerings.',
-'unblockip' => 'Maak IP-adres oop',
-'unblockiptext' => "Gebruik die vorm hier onder om skryftoegang te herstel vir 'n voorheen geblokkeerde IP-adres.",
-'ipusubmit' => 'Maak hierdie adres oop',
-'ipblocklist' => 'Lys van geblokkeerde IP-adresse',
-'ipblocklist-submit' => 'Soek',
-'blocklistline' => '$1, $2 het $3 geblok ($4)',
-'infiniteblock' => 'oneindig',
-'blocklink' => 'blok',
-'unblocklink' => 'maak oop',
-'contribslink' => 'bydraes',
-'blocklogpage' => 'Blokkeerlogboek',
-'blocklogentry' => '"[[$1]]" is geblokkeer vir \'n periode van $2',
-'unblocklogentry' => 'blokkade van $1 is opgehef:',
-'proxyblocker' => 'Proxyblokker',
+'ipbanononly' => 'Blokkeer slegs anonieme gebruikers',
+'ipbcreateaccount' => 'Blokkeer registrasie van gebruikers',
+'ipbemailban' => 'Verbied gebruiker om e-pos te stuur',
+'ipbsubmit' => 'Versper hierdie adres',
+'ipbother' => 'Ander tydperk:',
+'ipboptions' => '2 ure:2 hours,1 dag:1 day,3 dae:3 days,1 week:1 week,2 weke:2 weeks,1 maand:1 month,3 maande:3 months,6 maande:6 months,1 jaar:1 year,onbeperk:infinite', # display1:time1,display2:time2,...
+'ipbotheroption' => 'ander',
+'ipbotherreason' => 'Ander/ekstra rede:',
+'ipbwatchuser' => 'Hou die gebruiker se bladsy en besprekingsbladsy dop.',
+'badipaddress' => 'Die IP-adres is nie in die regte formaat nie.',
+'blockipsuccesssub' => 'Blokkering het geslaag',
+'blockipsuccesstext' => 'Die IP-adres "$1" is geblokkeer.
+<br />Sien die [[Special:IPBlockList|IP-bloklys]] vir \'n oorsig van blokkerings.',
+'ipb-edit-dropdown' => 'Werk lys van redes by',
+'ipb-unblock-addr' => 'Deblokkeer $1',
+'ipb-unblock' => "Deblokkeer 'n gebruiker of IP-adres",
+'ipb-blocklist-addr' => 'Wys bestaande blokkades vir $1',
+'ipb-blocklist' => 'Wys bestaande blokkades',
+'unblockip' => 'Maak IP-adres oop',
+'unblockiptext' => "Gebruik die vorm hier onder om skryftoegang te herstel vir 'n voorheen geblokkeerde IP-adres.",
+'ipusubmit' => 'Maak hierdie adres oop',
+'unblocked' => 'Blokkade van [[User:$1|$1]] is opgehef',
+'unblocked-id' => 'Blokkade $1 is opgehef',
+'ipblocklist' => 'Lys van geblokkeerde IP-adresse',
+'ipblocklist-legend' => "Soek 'n geblokkeerde gebruiker",
+'ipblocklist-username' => 'Gebruikersnaam of IP adres:',
+'ipblocklist-submit' => 'Soek',
+'blocklistline' => '$1, $2 het $3 geblok ($4)',
+'infiniteblock' => 'oneindig',
+'expiringblock' => 'verval op $1',
+'anononlyblock' => 'anoniem-alleen',
+'createaccountblock' => 'skep van gebruikersrekeninge is geblokkeer',
+'emailblock' => 'e-pos versper',
+'ipblocklist-empty' => 'Die blokkeerlys is leeg.',
+'ipblocklist-no-results' => 'Die IP-adres of gebruikersnaam is nie geblokkeer nie.',
+'blocklink' => 'blok',
+'unblocklink' => 'maak oop',
+'contribslink' => 'bydraes',
+'blocklogpage' => 'Blokkeerlogboek',
+'blocklogentry' => '"[[$1]]" is vir \'n periode van $2 $3 geblok',
+'blocklogtext' => "Hier is 'n lys van onlangse blokkeer en deblokkeer aksies. Outomaties geblokkeerde IP-adresse word nie vertoon nie.
+Sien die [[Special:IPBlockList|IP-bloklys]] vir geblokkeerde adresse.",
+'unblocklogentry' => 'blokkade van $1 is opgehef:',
+'block-log-flags-anononly' => 'anonieme gebruikers alleenlik',
+'block-log-flags-noemail' => 'e-pos versper',
+'ipb_expiry_invalid' => 'Ongeldige duur.',
+'ipb_already_blocked' => '"$1" is reeds geblok',
+'ip_range_invalid' => 'Ongeldige IP waardegebied.',
+'blockme' => 'Versper my',
+'proxyblocker' => 'Proxyblokker',
+'proxyblocker-disabled' => 'Die funksie is gedeaktiveer.',
+'proxyblocksuccess' => 'Voltooi.',
# Developer tools
'lockdb' => 'Sluit databasis',
@@ -1082,15 +1628,17 @@ Bevestig asseblief dat dit is wat jy wil doen.',
'unlockconfirm' => 'Ja, ek wil regtig die databasis ontsluit.',
'lockbtn' => 'Sluit die databasis',
'unlockbtn' => 'Ontsluit die databasis',
-'locknoconfirm' => 'Jy het nie die bevestigblokkie gemerk nie.',
+'locknoconfirm' => "Jy het nie die 'bevestig' blokkie gemerk nie.",
'lockdbsuccesssub' => 'Databasissluit het geslaag',
'unlockdbsuccesssub' => 'Databasisslot is verwyder',
'lockdbsuccesstext' => 'Die {{SITENAME}} databasis is gesluit.
<br />Onthou om dit te ontsluit wanneer jou onderhoud afgehandel is.',
'unlockdbsuccesstext' => 'Die {{SITENAME}}-databasis is ontsluit.',
+'databasenotlocked' => 'Die databasis is nie gesluit nie.',
# Move page
-'movepage' => 'Skuif bladsy',
+'move-page' => 'Skuif "$1"',
+'move-page-legend' => 'Skuif bladsy',
'movepagetext' => "Die vorm hieronder hernoem 'n bladsy en skuif die hele wysigingsgeskiedenis na die nuwe naam.
Die ou bladsy sal vervang word met 'n aanstuurblad na die nuwe titel.
'''Skakels na die ou bladsytitel sal nie outomaties verander word nie; maak seker dat dubbele aanstuurverwysings nie voorkom nie deur die \"wat skakel hierheen\"-funksie na die skuif te gebruik.''' Dit is jou verantwoordelikheid om seker te maak dat skakels steeds wys na waarheen hulle behoort te gaan.
@@ -1100,36 +1648,59 @@ Let daarop dat 'n bladsy '''nie''' geskuif sal word indien daar reeds 'n bladsy
<b>WAARSKUWING!</b>
Hierdie kan 'n drastiese en onverwagte verandering vir 'n populêre bladsy wees;
maak asseblief seker dat jy die gevolge van hierdie aksie verstaan voordat jy voortgaan. Gebruik ook die ooreenstemmende besprekingsbladsy om oorleg te pleeg met ander bydraers.",
+'movepagetalktext' => "Die ooreenstemmende besprekingsblad sal outomaties saam geskuif word, '''tensy:'''
+*'n Besprekengsblad met die nuwe naam reeds bestaan, of
+*U die keuse hieronder deselekteer.
+
+Indien wel sal u self die blad moet skuif of versmelt (indien nodig).",
'movearticle' => 'Skuif bladsy',
-'movenologin' => 'Nie ingeteken nie',
-'movenologintext' => "Jy moet 'n geregistreerde gebruiker wees en [[Special:Userlogin|ingeteken]]
-wees om 'n bladsy te skuif.",
+'movenotallowed' => 'U het nie regte om bladsye op {{SITENAME}} te skuif nie.',
'newtitle' => 'Na nuwe titel',
'move-watch' => 'Hou hierdie bladsy dop',
'movepagebtn' => 'Skuif bladsy',
'pagemovedsub' => 'Verskuiwing het geslaag',
-'movepage-moved' => '<big>\'\'\'"$1" geskuif na "$2"\'\'\'</big>', # The two titles are passed in plain text as $3 and $4 to allow additional goodies in the message.
+'movepage-moved' => '<big>\'\'\'"$1" is geskuif na "$2"\'\'\'</big>', # The two titles are passed in plain text as $3 and $4 to allow additional goodies in the message.
'articleexists' => "'n Bladsy met daardie naam bestaan reeds, of die naam wat jy gekies het, is nie geldig nie.
Kies asseblief 'n ander naam.",
+'cantmove-titleprotected' => "U kan nie 'n bladsy na die titel skuif nie, omdat die nuwe titel beskerm is teen die skep daarvan.",
'talkexists' => "'''Die bladsy self is suksesvol geskuif, maar die besprekingsbladsy is nie geskuif nie omdat een reeds bestaan met die nuwe titel. Smelt hulle asseblief met die hand saam.'''",
'movedto' => 'geskuif na',
'movetalk' => 'Skuif besprekingsblad ook, indien van toepassing.',
-'talkpagemoved' => 'Die ooreenkomstige besprekingsblad is ook geskuif.',
-'talkpagenotmoved' => 'Die ooreenkomstige besprekingsblad is <strong>nie</strong> geskuif nie.',
+'move-subpages' => 'Skuif al die subbladsye, indien toepaslik',
+'move-talk-subpages' => 'Skuif al die subbladsye van die besprekingsblad',
+'movepage-page-exists' => 'Die bladsy $1 bestaan reeds en kan nie outomaties oorskryf word nie.',
+'movepage-page-moved' => 'Die bladsy $1 was na $2 geskuif.',
+'movepage-page-unmoved' => 'Die bladsy $1 kon nie na $2 geskuif word nie.',
'1movedto2' => '[[$1]] geskuif na [[$2]]',
'1movedto2_redir' => '[[$1]] geskuif na [[$2]] oor bestaande aanstuur',
'movelogpage' => 'Skuiflogboek',
+'movelogpagetext' => "Hieronder is 'n lys van geskuifde bladsye.",
'movereason' => 'Rede:',
+'revertmove' => 'rol terug',
'delete_and_move' => 'Skrap en skuif',
'delete_and_move_text' => '==Skrapping benodig==
-Die teikenartikel "[[$1]]" bestaan reeds. Wil u dit skrap om plek te maak vir die skuif?',
+Die teikenartikel "[[:$1]]" bestaan reeds. Wil u dit skrap om plek te maak vir die skuif?',
'delete_and_move_confirm' => 'Ja, skrap die bladsy',
'delete_and_move_reason' => 'Geskrap om plek te maak vir skuif',
'selfmove' => 'Bron- en teikentitels is dieselfde; kan nie bladsy oor homself skuif nie.',
+'imageinvalidfilename' => 'Die nuwe lêernaam is ongeldig',
+'fix-double-redirects' => 'Opdateer alle aansture wat na die oorspronklike titel wys',
# Export
-'export' => 'Eksporteer bladsye',
+'export' => 'Eksporteer bladsye',
+'exporttext' => 'U kan die teks en geskiedenis van \'n bladsy of bladsye na XML-formaat eksporteer.
+Die eksportlêer kan daarna geïmporteer word na enige ander MediaWiki webwerf via die [[Special:Import|importeer bladsy]] skakel.
+
+Verskaf die name van die bladsye wat geëksporteer moet word in die onderstaande veld, een bladsy per lyn, en kies of u alle weergawes (met geskiedenis) of slegs die nuutste weergawe soek.
+
+In die laatste geval kan u ook \'n verwysing gebruik, byvoorbeeld [[{{ns:special}}:Export/{{MediaWiki:Mainpage}}]] vir die bladsy "{{Mediawiki:Mainpage}}".',
+'exportcuronly' => 'Slegs die nuutste weergawes, sonder volledige geskiedenis',
+'export-submit' => 'Eksporteer',
+'export-addcattext' => 'Voeg bladsye by van kategorie:',
+'export-addcat' => 'Voeg by',
+'export-download' => 'Stoor as lêer',
+'export-templates' => 'Sluit sjablone in',
# Namespace 8 related
'allmessages' => 'Stelselboodskappe',
@@ -1142,11 +1713,31 @@ Die teikenartikel "[[$1]]" bestaan reeds. Wil u dit skrap om plek te maak vir di
'allmessagesmodified' => 'Wys slegs gewysigdes',
# Thumbnails
-'thumbnail-more' => 'Vergroot',
+'thumbnail-more' => 'Vergroot',
+'filemissing' => 'Lêer is weg',
+'thumbnail_error' => 'Fout met die skep van duimnaelsketse: $1',
# Special:Import
-'import' => 'Voer bladsye in',
-'importfailed' => 'Intrek onsuksesvol: $1',
+'import' => 'Voer bladsye in',
+'import-interwiki-submit' => 'importeer',
+'import-interwiki-namespace' => 'Plaas bladsye in naamruimte:',
+'importstart' => 'Importeer bladsye...',
+'import-revision-count' => '$1 {{PLURAL:$1|weergawe|weergawes}}',
+'importnopages' => 'Geen bladsye om te importeer nie.',
+'importfailed' => 'Intrek onsuksesvol: $1',
+'importunknownsource' => 'Onbekende brontipe.',
+'importcantopen' => 'Kon nie lêer oopmaak nie',
+'importbadinterwiki' => 'Verkeerde interwiki skakel',
+'importnotext' => 'Leeg of geen teks',
+'importsuccess' => 'Klaar met importering!',
+'import-noarticle' => 'Geen bladsye om te importeer nie!',
+'xml-error-string' => '$1 op reël $2, kolom $3 (greep $4): $5',
+'import-upload' => 'Laai XML-data op',
+
+# Import log
+'importlogpage' => 'Invoer logboek',
+'import-logentry-upload-detail' => '$1 {{PLURAL:$1|weergawe|weergawes}}',
+'import-logentry-interwiki-detail' => '$1 {{PLURAL:$1|weergawe|weergawes}} vanaf $2',
# Tooltip help for the actions
'tooltip-pt-userpage' => 'My gebruikerbladsy',
@@ -1171,14 +1762,16 @@ Die teikenartikel "[[$1]]" bestaan reeds. Wil u dit skrap om plek te maak vir di
'tooltip-ca-watch' => 'Voeg hierdie bladsy tot u dophoulys',
'tooltip-ca-unwatch' => 'Verwyder hierdie bladsy van u dophoulys',
'tooltip-search' => 'Deursoek {{SITENAME}}',
+'tooltip-search-fulltext' => 'Deursoek die bladsye vir die teks',
'tooltip-p-logo' => 'Tuisblad',
'tooltip-n-mainpage' => 'Besoek die Tuisblad',
'tooltip-n-portal' => 'Meer oor die projek, wat jy kan doen, nuttige skakels',
+'tooltip-n-currentevents' => "'n Plek waar almal gesellig kan verkeer",
'tooltip-n-recentchanges' => "'n Lys van onlangse wysigings",
'tooltip-n-randompage' => "Laai 'n lukrake bladsye",
'tooltip-n-help' => 'Vind meer uit oor iets.',
-'tooltip-n-sitesupport' => 'Ondersteun ons',
'tooltip-t-whatlinkshere' => "'n Lys bladsye wat hierheen skakel",
+'tooltip-t-recentchangeslinked' => 'Onlangse wysigings aan bladsye wat vanaf hierdie bladsy geskakel is',
'tooltip-feed-rss' => 'RSS-voed vir hierdie bladsy',
'tooltip-feed-atom' => 'Atom-voed vir hierdie bladsy',
'tooltip-t-contributions' => "Bekyk 'n lys van bydraes deur hierdie gebruiker",
@@ -1210,15 +1803,20 @@ Die teikenartikel "[[$1]]" bestaan reeds. Wil u dit skrap om plek te maak vir di
'common.css' => '/** Gemeenskaplike CSS vir alle omslae */',
# Attribution
-'anonymous' => 'Anonieme gebruiker(s) van {{SITENAME}}',
-'siteuser' => '{{SITENAME}} gebruiker $1',
-'others' => 'ander',
-'siteusers' => '{{SITENAME}} gebruiker(s) $1',
-
-# Spam protection
-'subcategorycount' => 'Daar is {{PLURAL:$1|een subkategorie|$1 subkategorieë}} onder hierdie kategorie.',
-'categoryarticlecount' => 'Daar is {{PLURAL:$1|een artikel|$1 artikels}} in hierdie kategorie.',
-'listingcontinuesabbrev' => 'vervolg',
+'anonymous' => 'Anonieme gebruiker(s) van {{SITENAME}}',
+'siteuser' => '{{SITENAME}} gebruiker $1',
+'lastmodifiedatby' => 'Hierdie bladsy is laaste gewysig $2, $1 deur $3.', # $1 date, $2 time, $3 user
+'othercontribs' => 'Gebaseer op werk van $1.',
+'others' => 'ander',
+'siteusers' => '{{SITENAME}} gebruiker(s) $1',
+
+# Info page
+'infosubtitle' => 'Inligting vir bladsy',
+'numedits' => 'Aantal wysigings (bladsy): $1',
+'numtalkedits' => 'Aantal wysigings (besprekingsblad): $1',
+'numwatchers' => 'Aantal dophouers: $1',
+'numauthors' => 'Aantal outeurs (bladsy): $1',
+'numtalkauthors' => 'Aantal outeurs (besprekingsblad): $1',
# Math options
'mw_math_png' => 'Gebruik altyd PNG.',
@@ -1228,11 +1826,30 @@ Die teikenartikel "[[$1]]" bestaan reeds. Wil u dit skrap om plek te maak vir di
'mw_math_modern' => 'Moderne blaaiers.',
'mw_math_mathml' => 'MathML',
+# Patrolling
+'markaspatrolleddiff' => 'Merk as gekontroleerd',
+'markaspatrolledtext' => 'Merk hierdie bladsy as gekontroleerd',
+'markedaspatrolled' => 'As gekontroleerd gemerk',
+'markedaspatrolledtext' => 'Die gekose weergawe is as gekontroleerd gemerk.',
+'rcpatroldisabled' => 'Onlangse Wysigingskontrolering buiten staat gestel',
+'rcpatroldisabledtext' => 'Die Onlangse Wysigingskontroleringsfunksie is tans buiten staat gestel.',
+'markedaspatrollederror' => 'Kan nie as gekontroleerd merk nie',
+'markedaspatrollederrortext' => "U moet 'n weergawe spesifiseer om as gekontroleerd te merk.",
+'markedaspatrollederror-noautopatrol' => 'U kan nie u eie veranderinge as gekontroleerd merk nie.',
+
# Patrol log
'patrol-log-page' => 'Kontroleringslogboek',
+'patrol-log-line' => 'merk $1 van $2 as gepatrolleer $3',
+'patrol-log-auto' => '(outomaties)',
# Image deletion
-'deletedrevision' => 'Ou weergawe $1 geskrap',
+'deletedrevision' => 'Ou weergawe $1 geskrap',
+'filedeleteerror-short' => 'Fout met verwydering van lêer: $1',
+'filedeleteerror-long' => 'Foute het voorgekom by die skraping van die lêer:
+
+$1',
+'filedelete-missing' => 'Die lêer "$1" kan nie geskrap word nie, want dit bestaan nie.',
+'filedelete-current-unregistered' => 'Die gespesifiseerde lêer "$1" is nie in die databasis nie.',
# Browsing diffs
'previousdiff' => '← Ouer wysiging',
@@ -1240,50 +1857,178 @@ Die teikenartikel "[[$1]]" bestaan reeds. Wil u dit skrap om plek te maak vir di
# Media information
'imagemaxsize' => 'Beperk beelde op beeldbeskrywingsbladsye tot:',
+'widthheightpage' => '$1×$2, $3 {{PLURAL:$3|bladsy|bladsye}}',
+'file-info' => '(lêergrootte: $1, MIME-tipe: $2)',
+'file-info-size' => '($1 × $2 pixels, lêergrootte: $3, MIME type: $4)',
'file-nohires' => '<small>Geen hoëre resolusie beskikbaar nie.</small>',
+'svg-long-desc' => '(SVG-lêer, nominaal $1 × $2 pixels, lêergrootte: $3)',
'show-big-image' => 'Volle resolusie',
'show-big-image-thumb' => '<small>Grootte van hierdie voorskou: $1 × $2 pixels</small>',
-# Special:Newimages
-'newimages' => 'Gallery van nuwe beelde',
-'noimages' => 'Niks te sien nie.',
+# Special:NewImages
+'newimages' => 'Gallery van nuwe beelde',
+'imagelisttext' => "Hieronder is a lys van '''$1''' {{PLURAL:$1|lêer|lêers}}, $2 gesorteer.",
+'newimages-summary' => 'Die spesiale bladsy wys die nuutste lêers wat na die wiki opgelaai is.',
+'showhidebots' => '($1 robotte)',
+'noimages' => 'Niks te sien nie.',
+'ilsubmit' => 'Soek',
+'bydate' => 'volgens datum',
+'sp-newimages-showfrom' => 'Wys nuwe lêers vanaf $2, $1',
+
+# Bad image list
+'bad_image_list' => "Die formaat is as volg:
+
+Slegs lys-items (lyne wat met * begin) word verwerk.
+Die eerste skakel op 'n lyn moet na 'n ongewenste lêer skakel.
+Enige opeenvolgende skakels op dieselfde lyn word as uitsonderings beskou, b.v. blaaie waar die lêer inlyn kan voorkom.",
+
+# Metadata
+'metadata' => 'Metadata',
+'metadata-help' => "Die lêer bevat aanvullende inligting wat moontlik deur 'n digitale kamera of skandeerder bygevoeg is.
+As die lêer verander is, mag sekere inligting nie meer ooreenkom met die van die gewysigde lêer nie.",
+'metadata-expand' => 'Wys uitgebreide gegewens',
+'metadata-collapse' => 'Steek uitgebreide gegewens weg',
+'metadata-fields' => 'Die EXIF-metadatavelde wat in die boodskap gelys is sal op die beeld se bladsy ingesluit word as die metadatabel ingevou is.
+Ander velde sal versteek wees.
+* make
+* model
+* datetimeoriginal
+* exposuretime
+* fnumber
+* focallength', # Do not translate list items
# EXIF tags
-'exif-imagewidth' => 'Breedte',
+'exif-imagewidth' => 'Wydte',
'exif-imagelength' => 'Hoogte',
+'exif-orientation' => 'Oriëntasie',
+'exif-samplesperpixel' => 'Aantal komponente',
+'exif-ycbcrpositioning' => 'Y- en C-posisionering',
+'exif-xresolution' => 'Horisontale resolusie',
+'exif-yresolution' => 'Vertikale resolusie',
+'exif-resolutionunit' => 'Eenheid X en Y resolusie',
'exif-imagedescription' => 'Beeldtitel',
-'exif-artist' => 'Bewerker',
+'exif-make' => 'Kamera vervaardiger:',
+'exif-model' => 'Kamera model',
+'exif-software' => 'Sagteware gebruik',
+'exif-artist' => 'Outeur',
+'exif-copyright' => 'Kopiereghouer',
+'exif-exifversion' => 'Exif weergawe',
'exif-colorspace' => 'Kleurruimte',
+'exif-makernote' => 'Notas van vervaardiger',
+'exif-usercomment' => 'Opmerkings',
'exif-exposuretime' => 'Beligtingstyd',
'exif-exposuretime-format' => '$1 sek ($2)',
'exif-fnumber' => 'F-getal',
+'exif-shutterspeedvalue' => 'Sluitersnelheid',
+'exif-aperturevalue' => 'Diafragma',
+'exif-brightnessvalue' => 'Helderheid',
+'exif-lightsource' => 'Ligbron',
+'exif-flash' => 'Flits',
+'exif-flashenergy' => 'Flitssterkte',
+'exif-exposureindex' => 'Beligtingsindeks',
'exif-filesource' => 'Lêerbron',
+'exif-scenetype' => 'Soort toneel',
+'exif-whitebalance' => 'Witbalans',
+'exif-scenecapturetype' => 'Soort opname',
+'exif-gaincontrol' => 'Toneelbeheer',
+'exif-contrast' => 'Kontras',
+'exif-saturation' => 'Versadiging',
+'exif-sharpness' => 'Skerpte',
+'exif-imageuniqueid' => 'Unieke beeld ID',
'exif-gpsversionid' => 'GPS-merkerweergawe',
'exif-gpslatituderef' => 'Noorder- of suiderbreedte',
'exif-gpslatitude' => 'Breedtegraad',
'exif-gpslongituderef' => 'Ooster- of westerlengte',
'exif-gpslongitude' => 'Lengtegraad',
+'exif-gpsaltituderef' => 'Hoogteverwysing',
'exif-gpsaltitude' => 'Hoogte',
'exif-gpstimestamp' => 'GPS-tyd (atoomhorlosie)',
+'exif-gpssatellites' => 'Satelliete gebruik vir meting',
+'exif-gpsstatus' => 'Ontvangerstatus',
+'exif-gpsmeasuremode' => 'Meetmodus',
+'exif-gpsdop' => 'Meetpresisie',
+'exif-gpsspeedref' => 'Snelheid eenheid',
'exif-gpsspeed' => 'Snelheid van GPS-ontvanger',
+'exif-gpstrackref' => 'Verwysing vir bewegingsrigting',
+'exif-gpstrack' => 'Bewegingsrigting',
+'exif-gpsimgdirectionref' => 'Verwysing vir rigting van beeld',
+'exif-gpsimgdirection' => 'Rigting van beeld',
+'exif-gpsdestlatitude' => 'Breedtegraad bestemming',
+'exif-gpsdestlongitude' => 'Lengtegraad bestemming',
+'exif-gpsdestbearing' => 'Rigting na bestemming',
+'exif-gpsdestdistance' => 'Afstand na bestemming',
+'exif-gpsprocessingmethod' => 'GPS-verwerkingsmetode',
+'exif-gpsareainformation' => 'Naam van GPS-gebied',
+'exif-gpsdatestamp' => 'GPS-datum',
+'exif-gpsdifferential' => 'Differensiële GPS-korreksie',
+
+# EXIF attributes
+'exif-compression-1' => 'Ongekompakteerd',
+
+'exif-unknowndate' => 'Datum onbekend',
+
+'exif-orientation-1' => 'Normaal', # 0th row: top; 0th column: left
+'exif-orientation-3' => '180° gedraai', # 0th row: bottom; 0th column: right
+'exif-orientation-6' => '90° regs gedraai', # 0th row: right; 0th column: top
+'exif-orientation-8' => '90° links gedraai', # 0th row: left; 0th column: bottom
'exif-componentsconfiguration-0' => 'bestaan nie',
-'exif-subjectdistance-value' => '$1 meter',
+'exif-exposureprogram-0' => 'Nie bepaal',
+'exif-exposureprogram-1' => 'Handmatig',
+'exif-exposureprogram-4' => 'Sluiterprioriteit',
-'exif-meteringmode-0' => 'Onbekend',
+'exif-subjectdistance-value' => '$1 meter',
-'exif-lightsource-0' => 'Onbekend',
-'exif-lightsource-1' => 'Sonlig',
-'exif-lightsource-2' => 'Fluoresserend',
-'exif-lightsource-4' => 'Flits',
-'exif-lightsource-10' => 'Bewolkte weer',
-'exif-lightsource-11' => 'Skaduwee',
+'exif-meteringmode-0' => 'Onbekend',
+'exif-meteringmode-1' => 'Gemiddeld',
+'exif-meteringmode-5' => 'Patroon',
+'exif-meteringmode-6' => 'Gedeeltelik',
+'exif-meteringmode-255' => 'Ander',
+
+'exif-lightsource-0' => 'Onbekend',
+'exif-lightsource-1' => 'Sonlig',
+'exif-lightsource-2' => 'Fluoresserend',
+'exif-lightsource-4' => 'Flits',
+'exif-lightsource-9' => 'Mooi weer',
+'exif-lightsource-10' => 'Bewolkte weer',
+'exif-lightsource-11' => 'Skaduwee',
+'exif-lightsource-17' => 'Standaard lig A',
+'exif-lightsource-18' => 'Standaard lig B',
+'exif-lightsource-19' => 'Standaard lig C',
+'exif-lightsource-255' => 'Ander ligbron',
'exif-focalplaneresolutionunit-2' => 'duim',
+'exif-sensingmethod-1' => 'Ongedefineer',
+
+'exif-scenetype-1' => "'n Direk gefotografeerde beeld",
+
+'exif-exposuremode-0' => 'Outomatiese beligting',
+'exif-exposuremode-1' => 'Handmatige beligting',
+
+'exif-scenecapturetype-0' => 'Standaard',
'exif-scenecapturetype-1' => 'Landskap',
'exif-scenecapturetype-2' => 'Portret',
+'exif-scenecapturetype-3' => 'Nagtoneel',
+
+'exif-gaincontrol-0' => 'Geen',
+
+'exif-contrast-0' => 'Normaal',
+'exif-contrast-1' => 'Sag',
+'exif-contrast-2' => 'Hard',
+
+'exif-saturation-0' => 'Normaal',
+'exif-saturation-1' => 'Laag',
+'exif-saturation-2' => 'Hoog',
+
+'exif-sharpness-0' => 'Normaal',
+'exif-sharpness-1' => 'Sag',
+'exif-sharpness-2' => 'Hard',
+
+'exif-subjectdistancerange-0' => 'Onbekend',
+'exif-subjectdistancerange-2' => 'Naby',
+'exif-subjectdistancerange-3' => 'Vêr weg',
# Pseudotags used for GPSLatitudeRef and GPSDestLatitudeRef
'exif-gpslatitude-n' => 'Noorderbreedte',
@@ -1293,55 +2038,101 @@ Die teikenartikel "[[$1]]" bestaan reeds. Wil u dit skrap om plek te maak vir di
'exif-gpslongitude-e' => 'Oosterlengte',
'exif-gpslongitude-w' => 'Westerlengte',
+'exif-gpsstatus-a' => 'Besig met meting',
+
+'exif-gpsmeasuremode-2' => '2-dimensionele meting',
+'exif-gpsmeasuremode-3' => '3-dimensionele meting',
+
# Pseudotags used for GPSSpeedRef and GPSDestDistanceRef
'exif-gpsspeed-k' => 'Kilometer per huur',
'exif-gpsspeed-m' => 'Myl per huur',
'exif-gpsspeed-n' => 'Knope',
+# Pseudotags used for GPSTrackRef, GPSImgDirectionRef and GPSDestBearingRef
+'exif-gpsdirection-t' => 'Regte rigting',
+'exif-gpsdirection-m' => 'Magnetiese rigting',
+
# External editor support
'edit-externally' => "Wysig hierdie lêer met 'n eksterne program",
-'edit-externally-help' => 'Sien die [http://meta.wikimedia.org/wiki/Help:External_editors instruksies] (in Engels) vir meer inligting.',
+'edit-externally-help' => 'Sien die [http://www.mediawiki.org/wiki/Manual:External_editors instruksies] (in Engels) vir meer inligting.',
# 'all' in various places, this might be different for inflected languages
-'recentchangesall' => 'alle',
+'recentchangesall' => 'alles',
'imagelistall' => 'alle',
'watchlistall2' => 'alles',
'namespacesall' => 'alle',
'monthsall' => 'alle',
# E-mail address confirmation
-'confirmemail' => 'Bevestig e-posadres',
-'confirmemail_text' => "Hierdie wiki vereis dat u e-posadres bevestig word voordat epos-funksies gebruik word. Klik onderstaande knoppie om 'n bevestigingspos na u adres te stuur. Die pos sal 'n skakel met 'n kode insluit; maak hierdie skakel oop in u webblaaier om te bevestig dat die adres geldig is.",
-'confirmemail_send' => "Pos 'n bevestigingkode",
-'confirmemail_sent' => 'Bevestigingpos gestuur.',
-'confirmemail_invalid' => 'Ongeldige bevestigingkode. Die kode het moontlik verval.',
-'confirmemail_success' => 'U e-posadres is bevestig. U kan nou aanteken en die wiki gebruik.',
-'confirmemail_loggedin' => 'U e-posadres is nou bevestig.',
-'confirmemail_error' => 'Iets het foutgegaan met die stoor van u bevestiging.',
-'confirmemail_subject' => '{{SITENAME}}: E-posadres-bevestiging',
-'confirmemail_body' => 'Iemand, waarskynlik van u IP-adres ($1), het \'n rekening "$2" geregistreer met hierdie e-posadres by {{SITENAME}}.
+'confirmemail' => 'Bevestig e-posadres',
+'confirmemail_text' => "Hierdie wiki vereis dat u e-posadres bevestig word voordat epos-funksies gebruik word. Klik onderstaande knoppie om 'n bevestigingspos na u adres te stuur. Die pos sal 'n skakel met 'n kode insluit; maak hierdie skakel oop in u webblaaier om te bevestig dat die adres geldig is.",
+'confirmemail_send' => "Pos 'n bevestigingkode",
+'confirmemail_sent' => 'Bevestigingpos gestuur.',
+'confirmemail_invalid' => 'Ongeldige bevestigingkode. Die kode het moontlik verval.',
+'confirmemail_needlogin' => 'U moet $1 om u e-posadres te bevestig.',
+'confirmemail_success' => 'U e-posadres is bevestig. U kan nou aanteken en die wiki gebruik.',
+'confirmemail_loggedin' => 'U e-posadres is nou bevestig.',
+'confirmemail_error' => 'Iets het foutgegaan met die stoor van u bevestiging.',
+'confirmemail_subject' => '{{SITENAME}}: E-posadres-bevestiging',
+'confirmemail_body' => 'Iemand, waarskynlik van u IP-adres: $1, het \'n rekening "$2" geregistreer met hierdie e-posadres by {{SITENAME}}.
Om te bevestig dat hierdie adres werklik aan u behoort, en om die posfasiliteite by {{SITENAME}} te aktiveer, besoek hierdie skakel in u blaaier:
$3
-Indien dit nié u was nie, ignoreer bloot die skakel (en hierdie pos). Hierde bevestigingkode verval om $4.',
+Indien dit nié u was nie, ignoreer bloot die skakel (en hierdie pos).
+Follow this link to cancel the e-mail address confirmation:
+
+$5
+
+Hierde bevestigingkode verval om $4.',
+'confirmemail_invalidated' => 'Die e-pos bevestiging is gekanselleer.',
+'invalidateemail' => 'Kanselleer e-pos bevestiging',
+
+# Scary transclusion
+'scarytranscludedisabled' => '[Interwiki-invoeging van sjablone is afgeskakel]',
+'scarytranscludefailed' => '[Sjabloon $1 kon nie gelaai word nie; jammer]',
+'scarytranscludetoolong' => '[URL is te lank; jammer]',
+
+# Trackbacks
+'trackbackremove' => ' ([$1 Skrap])',
# Delete conflict
-'confirmrecreate' => "Gebruiker [[User:$1|$1]] ([[User talk:$1|bespreek]]) het hierdie blad uitgevee ná u begin redigeer het met rede: : ''$2''
+'deletedwhileediting' => 'Let op: die bladsy was verwyder terwyl u besig was om dit te wysig!',
+'confirmrecreate' => "Gebruiker [[User:$1|$1]] ([[User talk:$1|bespreek]]) het hierdie blad uitgevee ná u begin redigeer het met rede: : ''$2''
Bevestig asseblief dat u regtig hierdie blad oor wil skep.",
+'recreate' => 'Herskep',
# HTML dump
-'redirectingto' => 'Stuur aan na [[$1]]...',
+'redirectingto' => 'Stuur aan na [[:$1]]...',
# action=purge
'confirm_purge' => 'Verwyder die kas van hierdie blad?
$1',
-'confirm_purge_button' => 'Regso',
+'confirm_purge_button' => 'OK',
# AJAX search
-'articletitles' => "Artikels wat met ''$1'' begin",
+'searchcontaining' => "Soek na bladsye wat ''$1'' bevat.",
+'searchnamed' => "Soek vir bladsye genaamd ''$1''.",
+'articletitles' => "Artikels wat met ''$1'' begin",
+'hideresults' => 'Steek resultate weg',
+'useajaxsearch' => 'Gebruik AJAX-soek',
+
+# Multipage image navigation
+'imgmultipageprev' => '← vorige bladsy',
+'imgmultipagenext' => 'volgende bladsy →',
+'imgmultigo' => 'Gaan!',
+'imgmultigoto' => 'Gaan na bladsy $1',
+
+# Table pager
+'table_pager_next' => 'Volgende bladsy',
+'table_pager_prev' => 'Vorige bladsy',
+'table_pager_first' => 'Eerste bladsy',
+'table_pager_last' => 'Laaste bladsy',
+'table_pager_limit' => 'Wys $1 resultate per bladsy',
+'table_pager_limit_submit' => 'Gaan',
+'table_pager_empty' => 'Geen resultate',
# Auto-summaries
'autosumm-blank' => 'Alle inhoud uit bladsy verwyder',
@@ -1358,15 +2149,102 @@ $1',
# Live preview
'livepreview-loading' => 'Laai tans…',
'livepreview-ready' => 'Laai tans… Gereed!',
+'livepreview-failed' => 'Lewendige voorskou het gefaal.
+Probeer normale voorskou.',
+'livepreview-error' => 'Verbinding het misluk: $1 "$2".
+Probeer normale voorskou.',
+
+# Friendlier slave lag warnings
+'lag-warn-normal' => 'Veranderinge nuwer as $1 {{PLURAL:$1|sekonde|sekondes}} mag moontlik nie gewys word nie.',
+
+# Watchlist editor
+'watchlistedit-numitems' => 'U dophoulys bevat {{PLURAL:$1|1 bladsy|$1 bladsye}}, besprekingsbladsye uitgesluit.',
+'watchlistedit-noitems' => 'U dophoulys bevat geen bladsye.',
+'watchlistedit-normal-title' => 'Wysig dophoulys',
+'watchlistedit-normal-legend' => 'Verwyder titels van dophoulys',
+'watchlistedit-normal-explain' => "Die bladsye in u dophoulys word hieronder vertoon.
+Selekteer die titels wat verwyder moet word en klik op 'Verwyder Titels' onder aan die bladsy.
+Alternatiewelik kan u die [[Special:Watchlist/raw|bronkode wysig]].",
+'watchlistedit-normal-submit' => 'Verwyder Titels',
+'watchlistedit-normal-done' => 'Daar is {{PLURAL:$1|1 bladsy|$1 bladsye}} van u dophoulys verwyder:',
+'watchlistedit-raw-title' => 'Wysig u dophoulys se bronkode',
+'watchlistedit-raw-legend' => 'Wysig u dophoulys se bronkode',
+'watchlistedit-raw-explain' => "Die bladsye in u dophoulys word hieronder vertoon.
+U kan die lys wysig deur titels by te sit of te verwyder (een bladsy per lyn).
+As u klaar is, klik op 'Opdateer Dophoulys' onder aan die bladsy.
+U kan ook die [[Special:Watchlist/edit|standaard opdaterigskerm gebruik]].",
+'watchlistedit-raw-titles' => 'Titels:',
+'watchlistedit-raw-submit' => 'Opdateer Dophoulys',
+'watchlistedit-raw-done' => 'U dophoulys is opgedateer.',
+'watchlistedit-raw-added' => '{{PLURAL:$1|1 titel|$1 titels}} was bygevoeg:',
+'watchlistedit-raw-removed' => '{{PLURAL:$1|1 titel|$1 titels}} verwyder:',
# Watchlist editing tools
-'watchlisttools-view' => 'Besigtig ter saaklike veranderinge',
+'watchlisttools-view' => 'Besigtig veranderinge',
'watchlisttools-edit' => 'Bekyk en wysig dophoulys',
-'watchlisttools-raw' => 'Redigeer brondophoulys',
-
-# Special:Filepath
-'filepath' => 'Lêerpad',
-'filepath-page' => 'Lêer:',
-'filepath-submit' => 'Pad',
+'watchlisttools-raw' => 'Wysig bronkode',
+
+# Core parser functions
+'unknown_extension_tag' => 'Onbekende etiket "$1"',
+
+# Special:Version
+'version' => 'Weergawe', # Not used as normal message but as header for the special page itself
+'version-extensions' => 'Uitbreidings geïnstalleer',
+'version-specialpages' => 'Spesiale bladsye',
+'version-parserhooks' => 'Ontlederhoeke',
+'version-variables' => 'Veranderlikes',
+'version-other' => 'Ander',
+'version-mediahandlers' => 'Mediaverwerkers',
+'version-hooks' => 'Hoeke',
+'version-extension-functions' => 'Uitbreidingsfunksies',
+'version-parser-extensiontags' => 'Ontleder-uitbreidingsetikette',
+'version-parser-function-hooks' => 'Ontleder-funksiehoeke',
+'version-hook-name' => 'Hoek naam',
+'version-hook-subscribedby' => 'Gebruik deur',
+'version-version' => 'Weergawe',
+'version-license' => 'Lisensie',
+'version-software' => 'Geïnstalleerde sagteware',
+'version-software-product' => 'Produk',
+'version-software-version' => 'Weergawe',
+
+# Special:FilePath
+'filepath' => 'Lêerpad',
+'filepath-page' => 'Lêer:',
+'filepath-submit' => 'Pad',
+'filepath-summary' => 'Die spesiale bladsy wys die volledige pad vir \'n lêer.
+Beelde word in hulle volle resolusie gewys. Ander lêertipes word direk met hulle MIME-geskakelde programme geopen.
+
+Sleutel die lêernaam in sonder die "{{ns:image}}:" voorvoegsel.',
+
+# Special:FileDuplicateSearch
+'fileduplicatesearch' => 'Soek duplikaat lêers',
+'fileduplicatesearch-legend' => "Soek vir 'n duplikaat",
+'fileduplicatesearch-filename' => 'Lêernaam:',
+'fileduplicatesearch-submit' => 'Soek',
+'fileduplicatesearch-info' => '$1 × $2 pixels<br />Lêergrootte: $3<br />MIME-tipe: $4',
+'fileduplicatesearch-result-1' => 'Die lêer "$1" het geen identiese duplikate nie.',
+'fileduplicatesearch-result-n' => 'Die lêer "$1" het {{PLURAL:$2|een identiese duplikaat|$2 identiese duplikate}}.',
+
+# Special:SpecialPages
+'specialpages' => 'Spesiale bladsye',
+'specialpages-note' => '----
+* Normale spesiale bladsye.
+* <span class="mw-specialpagerestricted">Beperkte spesiale bladsye.</span>',
+'specialpages-group-maintenance' => 'Onderhoud verslae',
+'specialpages-group-other' => 'Ander spesiale bladsye',
+'specialpages-group-login' => 'Inteken / aansluit',
+'specialpages-group-changes' => 'Onlangse wysigings en boekstawings',
+'specialpages-group-media' => 'Media verslae en oplaai',
+'specialpages-group-users' => 'Gebruikers en regte',
+'specialpages-group-highuse' => 'Baie gebruikte bladsye',
+'specialpages-group-pages' => 'Lys van bladsye',
+'specialpages-group-pagetools' => 'Bladsyhulpmiddels',
+'specialpages-group-wiki' => 'Wiki data en hulpmiddels',
+'specialpages-group-redirects' => 'Aanstuur gewone bladsye',
+'specialpages-group-spam' => 'Spam-hulpmiddels',
+
+# Special:BlankPage
+'blankpage' => 'Leë bladsy',
+'intentionallyblankpage' => 'Die bladsy is bewustelik leeg gelaat',
);
diff --git a/languages/messages/MessagesAk.php b/languages/messages/MessagesAk.php
index 7547510d..f83d3b86 100644
--- a/languages/messages/MessagesAk.php
+++ b/languages/messages/MessagesAk.php
@@ -1,12 +1,11 @@
<?php
/** Akan (Akan)
*
- * @addtogroup Language
+ * @ingroup Language
+ * @file
*
* @author Natsubee
- * @author Siebrand
* @author Paa.kwesi
- * @author SPQRobin
*/
$messages = array(
diff --git a/languages/messages/MessagesAln.php b/languages/messages/MessagesAln.php
index 92a3e17e..bb076438 100644
--- a/languages/messages/MessagesAln.php
+++ b/languages/messages/MessagesAln.php
@@ -1,7 +1,8 @@
<?php
/** Gheg Albanian (Gegë)
*
- * @addtogroup Language
+ * @ingroup Language
+ * @file
*
* @author Cradel
* @author Dardan
@@ -49,6 +50,7 @@ $messages = array(
'tog-watchlisthideminor' => "M'sheh redaktimet e vogla nga lista mbikqyrëse",
'tog-ccmeonemails' => 'Më ço kopje të mesazhevé qi u dërgoj të tjerëve',
'tog-diffonly' => 'Mos e trego përmbájtjen e fáqes nën ndryshimin',
+'tog-showhiddencats' => "Trego katégoritë e m'shefta",
'underline-always' => 'gjithmonë',
'underline-never' => 'kurrë',
@@ -108,13 +110,15 @@ $messages = array(
'nov' => 'Nën',
'dec' => 'Dhj',
-# Bits of text used by many pages
-'categories' => 'Kategori',
-'pagecategories' => '{{PLURAL:$1|Kategoria|Kategoritë}}',
-'category_header' => 'Artikuj në kategorinë "$1"',
-'subcategories' => 'Nën-kategori',
-'category-media-header' => 'Skeda në kategori "$1"',
-'category-empty' => "''Kjo kategori tashpërtash nuk përmban asnji faqe apo media.''",
+# Categories related messages
+'pagecategories' => '{{PLURAL:$1|Kategoria|Kategoritë}}',
+'category_header' => 'Artikuj në kategorinë "$1"',
+'subcategories' => 'Nën-kategori',
+'category-media-header' => 'Skeda në kategori "$1"',
+'category-empty' => "''Kjo kategori tashpërtash nuk përmban asnji faqe apo media.''",
+'hidden-categories' => '{{PLURAL:$1|Kategoritë e mshehta|Kategoritë e mshehta}}',
+'hidden-category-category' => 'Kategori të mshehta', # Name of the category where hidden categories will be listed
+'listingcontinuesabbrev' => 'vazh.',
'mainpagetext' => 'Wiki software u instalue me sukses.',
'mainpagedocfooter' => 'Për ma shumë informata rreth përdorimit të softwerit wiki , ju lutem shikoni [http://meta.wikimedia.org/wiki/Help:Contents dokumentacionin përkatës].
@@ -201,29 +205,29 @@ $messages = array(
'jumptosearch' => 'kërko',
# All link text and link target definitions of links into project namespace that get used by other message strings, with the exception of user group pages (see grouppage) and the disambiguation template definition (see disambiguations).
-'aboutsite' => 'Rreth {{SITENAME}}',
-'aboutpage' => 'Project:Rreth',
-'bugreports' => 'Kontakt',
-'bugreportspage' => 'Projekt:Kontakt',
-'copyright' => 'Përmbajtja asht në disponim nëpërmjet liqencës $1.',
-'copyrightpagename' => '{{SITENAME}} Të drejta autori',
-'copyrightpage' => '{{ns:project}}:Të drejta autori',
-'currentevents' => 'Ngjarjet e tashme',
-'currentevents-url' => 'Project:Ngjarjet e tashme',
-'disclaimers' => 'Shfajësimet',
-'disclaimerpage' => 'Project:Shfajësimet e përgjithshme',
-'edithelp' => 'Ndihmë për redaktim',
-'edithelppage' => 'Help:Si me redaktue një faqe',
-'faq' => 'Pyetje e Përgjegjje',
-'faqpage' => 'Project:Pyetje e Përgjegjje',
-'helppage' => 'Help:Ndihmë',
-'mainpage' => 'Faqja Kryesore',
-'portal' => 'Wikiportal',
-'portal-url' => 'Project:Wikiportal',
-'privacy' => 'Rreth të dhanave vetjake',
-'privacypage' => 'Project:Politika vetjake',
-'sitesupport' => 'Dhurime',
-'sitesupport-url' => 'Project:Dhurime',
+'aboutsite' => 'Rreth {{SITENAME}}',
+'aboutpage' => 'Project:Rreth',
+'bugreports' => 'Kontakt',
+'bugreportspage' => 'Project:Kontakt',
+'copyright' => 'Përmbajtja asht në disponim nëpërmjet liqencës $1.',
+'copyrightpagename' => '{{SITENAME}} Të drejta autori',
+'copyrightpage' => '{{ns:project}}:Të drejta autori',
+'currentevents' => 'Ngjarjet e tashme',
+'currentevents-url' => 'Project:Ngjarjet e tashme',
+'disclaimers' => 'Shfajësimet',
+'disclaimerpage' => 'Project:Shfajësimet e përgjithshme',
+'edithelp' => 'Ndihmë për redaktim',
+'edithelppage' => 'Help:Si me redaktue një faqe',
+'faq' => 'Pyetje e Përgjegjje',
+'faqpage' => 'Project:Pyetje e Përgjegjje',
+'helppage' => 'Help:Ndihmë',
+'mainpage' => 'Faqja Kryesore',
+'mainpage-description' => 'Faqja Kryesore',
+'policy-url' => 'Project:Policy',
+'portal' => 'Wikiportal',
+'portal-url' => 'Project:Wikiportal',
+'privacy' => 'Rreth të dhanave vetjake',
+'privacypage' => 'Project:Politika vetjake',
'badaccess' => 'Gabim leje',
'badaccess-group0' => 'Nuk jeni lejue me e bá kët veprim.',
@@ -302,19 +306,13 @@ artikuj t'ri. Munet qi asht bllokuar për mirëmbajtje,
dhe do të kthehet në gjèndje normale mas mirëmbajtjes.
Mirëmbajtësi i cili e ka bllokue dha këtë arsye: $1",
-'missingarticle' => 'Regjistri nuk e gjeti tekstin e faqes që duhet ta kishte gjetur, të quajtem "$1".
-
-Kjo ndodh zakonisht kur ndjek një ndryshim ose lidhje historie te një
-faqe që asht grisur.
-
-Nëse ky nuk asht rasti, atëherë munet qi e keni gjetur një gabim në softuerin.
-Tregojani këtë përmbledhje një administruesi, tuj shënue edhe URL-në.',
'readonly_lag' => "Regjistri asht bllokue automatikisht për m'i dhánë kohë shërbyesve skllevër me arrit kryesorin. Ju lutemi provojeni prap ma vonë.",
'internalerror' => 'Gabim i brendshëm',
'internalerror_info' => 'Gabimi i brenshëm: $1',
'filecopyerror' => 'Nuk mujta me kopjue skedën "$1" te "$2".',
'filerenameerror' => 'Nuk mujta me ndërrue emrin e skedës "$1" në "$2".',
'filedeleteerror' => 'Nuk mujta me çky skedën "$1".',
+'directorycreateerror' => 'Nuk munet me u kriju direktoria "$1".',
'filenotfound' => 'Nuk mujta me gjetë skedën "$1".',
'fileexistserror' => 'Dosja "$1" nuk munet me u shkru : Kjo Dosje ekziston',
'unexpected' => 'Vlerë e papritur: "$1"="$2".',
@@ -339,47 +337,175 @@ Pyetja: $2',
'customcssjsprotected' => 'Nuk keni leje me ndryshu këtë faqe sepse përmban informata personale të një përdoruesi tjetër',
# Login and logout pages
-'logouttitle' => 'Përdoruesi ka dál',
-'logouttext' => 'Keni dálë jashtë {{SITENAME}}-s. Muneni me vazhdu me përdor {{SITENAME}}-n anonimisht, ose muneni me hy brenda prap.',
-'yourpassword' => 'Futni fjalëkalimin tuej',
-'yourdomainname' => 'Faqja juej',
-'login' => 'Hyni',
-'userlogin' => 'Hyni ose çeleni një llogari',
-'logout' => 'Dalje',
-'nologinlink' => 'Çeleni',
-'createaccountmail' => 'me email',
-'youremail' => 'Adresa e email-it*',
-'username' => 'Nofka e përdoruesit:',
-'uid' => 'Nr. i identifikimit:',
-'yourrealname' => 'Emri juej i vërtetë*',
-'yourlanguage' => 'Ndërfaqja gjuhësore',
+'logouttitle' => 'Përdoruesi ka dál',
+'logouttext' => 'Keni dálë jashtë {{SITENAME}}-s. Muneni me vazhdu me përdor {{SITENAME}}-n anonimisht, ose muneni me hy brenda prap.',
+'welcomecreation' => '== Mirësevini, $1! ==
+
+Llogaria juej asht hap. Mos harroni me ndryshu parapëlqimet e {{SITENAME}}-s.',
+'yourpassword' => 'Futni fjalëkalimin tuej',
+'yourpasswordagain' => 'Futni fjalëkalimin prap',
+'remembermypassword' => 'Mbaj mend fjalëkalimin tim për krejt vizitat e ardhshme.',
+'yourdomainname' => 'Faqja juej',
+'externaldberror' => 'Ose kishte një gabim te regjistri i identifikimit të jashtëm, ose nuk ju lejohet të përtërini llogarinë tuej të jashtme.',
+'login' => 'Hyni',
+'nav-login-createaccount' => 'Hyni ose çeleni një llogari',
+'userlogin' => 'Hyni ose çeleni një llogari',
+'logout' => 'Dalje',
+'userlogout' => 'Dalje',
+'notloggedin' => 'Nuk keni hy brenda',
+'nologinlink' => 'Çeleni',
+'gotaccount' => 'A keni një llogari? $1.',
+'gotaccountlink' => 'Hyni',
+'createaccountmail' => 'me email',
+'userexists' => 'Nofka që përdorët asht në përdorim. Zgjidhni një nofkë tjetër.',
+'youremail' => 'Adresa e email-it*',
+'username' => 'Nofka e përdoruesit:',
+'uid' => 'Nr. i identifikimit:',
+'yourrealname' => 'Emri juej i vërtetë*',
+'yourlanguage' => 'Ndërfaqja gjuhësore',
+'yournick' => 'Nofka :',
+'badsig' => 'Sintaksa e nënshkrimit asht e pavlefshme, kontrolloni HTML-n.',
+'badsiglength' => 'Emri i zgjedhun asht shumë i gjatë; duhet me pas ma pak se $1 shkronja',
+'email' => 'Email',
+'nocookieslogin' => '{{SITENAME}} përdor "biskota" për me futë brenda përdoruesit. Prandaj, duhet të pranoni "biskota" dhe të provoni prap.',
+
+# Edit page toolbar
+'bold_sample' => 'Tekst i trashë',
+'bold_tip' => 'Tekst i trashë',
+'italic_sample' => 'Tekst i pjerrët',
+'italic_tip' => 'Tekst i pjerrët',
+'link_sample' => 'Titulli i lidhjes',
+'link_tip' => 'Lidhje e brendshme',
+'extlink_sample' => 'http://www.example.com Titulli i lidhjes',
+'extlink_tip' => 'Lidhje e jashtme (mos e harro prefiksin http://)',
+'headline_sample' => 'Titull shembull',
+'headline_tip' => 'Titull i nivelit 2',
+'math_sample' => 'Vendos formulën këtu',
+'math_tip' => 'Formulë matematike (LaTeX)',
+'nowiki_sample' => 'Vendos tekst qi nuk duhet me u formatue',
+'nowiki_tip' => 'Mos përdor format wiki',
+'image_tip' => 'Vendose një figurë',
+'media_tip' => 'Lidhje media-skedave',
+'sig_tip' => 'Firma juej dhe koha e firmosjes',
+'hr_tip' => 'vijë horizontale (përdoreni rallë)',
+
+# Edit pages
+'summary' => 'Përmbledhje',
+'subject' => 'Subjekt/Titull',
+'minoredit' => 'Ky asht një redaktim i vogël',
+'watchthis' => 'Mbikqyre kët faqe',
+'showpreview' => 'Trego parapamjen',
+'showdiff' => 'Trego ndryshimet',
+'anoneditwarning' => 'Ju nuk jeni regjistruem. IP adresa juej do të regjistrohet në historinë e redaktimeve të kësaj faqe.',
+'newarticletext' => "{{SITENAME}} nuk ka një ''{{NAMESPACE}} faqe'' të quajtme '''{{PAGENAME}}'''. Shtypni '''redaktoni''' ma sipër ose [[Special:Search/{{PAGENAME}}|bani një kërkim për {{PAGENAME}}]]",
+'noarticletext' => 'Tash për tash nuk ka tekst në kët faqe, muneni me [[Special:Search/{{PAGENAME}}|kërkue]] kët titull në faqe të tjera ose muneni me [{{fullurl:{{FULLPAGENAME}}|action=edit}} fillu] atë.',
+'editing' => 'Tuj redaktue $1',
+'copyrightwarning' => "Kontributet te {{SITENAME}} janë të konsiderueme të dhana nën licensën $2 (shikoni $1 për hollësirat).<br />
+'''NDALOHET DHËNIA E PUNIMEVE PA PAS LEJE NGA AUTORI NË MOSPËRPUTHJE ME KËTË LICENSË!'''<br />",
+'template-protected' => '(e mbrojtme)',
+
+# History pages
+'revisionasof' => 'Versioni i $1',
+'revision-info' => 'Versioni me $1 nga $2',
+'previousrevision' => '← Verzion ma i vjetër',
+'cur' => 'tash',
+'last' => 'fund',
+
+# Diffs
+'lineno' => 'Rreshti $1:',
+'compareselectedversions' => 'Krahasoni versionet e zgjedhme',
+'editundo' => 'ktheje',
# Search results
-'powersearch' => 'Kërko',
+'noexactmatch' => '<span style="font-size: 135%; font-weight: bold; margin-left: .6em">Faqja me atë titull nuk asht krijue </span>
+
+<span style="display: block; margin: 1.5em 2em">
+Muneni me [[$1|fillu një artikull]] me kët titull.
+
+<span style="display:block; font-size: 89%; margin-left:.2em">Ju lutem kërkoni {{SITENAME}}-n para se me krijue një artikull të ri se munet me kánë nën një titull tjetër.</span>
+</span>',
+'viewprevnext' => 'Shikoni ($1) ($2) ($3).',
+'powersearch' => 'Kërko',
+
+# Preferences page
+'mypreferences' => 'Parapëlqimet',
+
+# Recent changes
+'recentchanges' => 'Ndryshimet e fundit',
+'rcnote' => 'Ma poshtë janë <strong>$1</strong> ndryshimt e fundit gjatë <strong>$2</strong> ditëve sipas të dhanave nga $3.',
+'rcshowhideminor' => '$1 redaktimet e vogla',
+'rcshowhidepatr' => '$1 redaktime të patrullueme',
+'rclinks' => 'Trego $1 ndryshime gjatë $2 ditëve<br />$3',
+'diff' => 'ndrysh',
+'hist' => 'hist',
+'hide' => 'msheh',
+'show' => 'kallzo',
+'minoreditletter' => 'v',
+'newpageletter' => 'R',
+'boteditletter' => 'b',
+
+# Recent changes linked
+'recentchangeslinked' => 'Ndryshimet fqinje',
+'recentchangeslinked-title' => 'Ndryshimet në lidhje me "$1"',
# Upload
'upload' => 'Ngarkoni skeda',
+# Image description page
+'filehist' => 'Historiku i dosjes',
+'filehist-datetime' => 'Data/Ora',
+'filehist-user' => 'Përdoruesi',
+'filehist-dimensions' => 'Dimenzionet',
+'filehist-filesize' => 'Madhësia e figurës/skedës',
+'filehist-comment' => 'Koment',
+'imagelinks' => 'Lidhje e skedave',
+'linkstoimage' => "K'to faqe lidhen te kjo figurë/skedë:",
+'sharedupload' => 'Kjo skedë asht një ngarkim i përbashkët dhe munet me u përdor nga projekte të tjera.',
+
# File deletion
'filedelete-reason-otherlist' => 'Arsyje tjera',
# MIME search
'download' => 'shkarkim',
+# Random page
+'randompage' => 'Artikull i rastit',
+
+# Statistics
+'statistics' => 'Statistika',
+
'withoutinterwiki' => 'Artikuj pa lidhje interwiki',
# Miscellaneous special pages
-'specialpages' => 'Faqet speciale',
+'nbytes' => '$1 bytes',
+'nlinks' => '$1 lidhje',
+'nmembers' => '$1 anëtarë',
+'move' => 'Zhvendose',
+# Special:AllPages
'alphaindexline' => '$1 deri në $2',
+'allpagessubmit' => 'Shko',
+
+# Special:Categories
+'categories' => 'Kategori',
# Watchlist
-'addedwatch' => 'U shtu te lista mbikqyrëse',
-'removedwatch' => 'U hjek nga lista mibkqyrëse',
-'removedwatchtext' => 'Faqja "<nowiki>$1</nowiki>" asht hjek nga lista mbikqyrëse e juej.',
+'mywatchlist' => 'Lista mbikqyrëse',
+'addedwatch' => 'U shtu te lista mbikqyrëse',
+'removedwatch' => 'U hjek nga lista mibkqyrëse',
+'removedwatchtext' => 'Faqja "<nowiki>$1</nowiki>" asht hjek nga lista mbikqyrëse e juej.',
+'watch' => 'Mbikqyre',
+'unwatch' => 'Çmbikqyre',
+'watchlist-hide-own' => 'Mshehi redaktimet e mija',
+'watchlist-hide-minor' => 'Mshehi redaktimet e vogla',
+
+# Displayed when you click the "watch" button and it is in the process of watching
+'watching' => 'Tuj mbikqyrë...',
+'unwatching' => 'Tuj çmbikqyrë...',
# Delete/protect/revert
-'confirmprotect' => 'Konfirmoni',
+'deletedarticle' => 'grisi "$1"',
+'protect-legend' => 'Konfirmoni',
'protectcomment' => 'Arsyja:',
'protectexpiry' => 'Afáti',
'protect_expiry_invalid' => 'Data e skadimit asht e pasaktë.',
@@ -396,26 +522,91 @@ Pyetja: $2',
'restriction-type' => 'Lejet:',
'restriction-level' => 'Mbrojtjet:',
+# Namespace form on various pages
+'namespace' => 'Hapësira:',
+'blanknamespace' => '(Artikujt)',
+
+# Contributions
+'contributions' => 'Kontributet',
+'mycontris' => 'Redaktimet e mia',
+
+# What links here
+'whatlinkshere' => "Lidhjet k'tu",
+'whatlinkshere-title' => 'Faqe qi lidhen me $1',
+'linklistsub' => '(Listë e lidhjeve)',
+'linkshere' => "Faqet e mëposhtme lidhen k'tu '''[[:$1]]''':",
+'isredirect' => 'faqe përcjellëse',
+'istemplate' => 'përfshirë',
+'whatlinkshere-links' => '← lidhje',
+
# Block/unblock
+'blocklink' => 'bllokoje',
'contribslink' => 'kontribute',
# Move page
-'movearticle' => 'Zhvendose faqen',
-'newtitle' => 'Te titulli i ri',
-'move-watch' => 'Mbikqyre kët faqe',
-'movepagebtn' => 'Zhvendose faqen',
-'movedto' => 'zhvendosur te',
-'talkpagenotmoved' => 'Faqja e diskutimeve korrespondente <strong>nuk</strong> u zhvendos.',
-'movereason' => 'Arsyja',
+'movearticle' => 'Zhvendose faqen',
+'newtitle' => 'Te titulli i ri',
+'move-watch' => 'Mbikqyre kët faqe',
+'movepagebtn' => 'Zhvendose faqen',
+'movedto' => 'zhvendosur te',
+'movereason' => 'Arsyja',
+
+# Thumbnails
+'thumbnail-more' => 'Zmadho',
+'thumbnail_error' => 'Gabim gjatë krijimit të figurës përmbledhëse: $1',
# Tooltip help for the actions
-'tooltip-search' => 'Kërko në projekt',
-'tooltip-n-mainpage' => 'Vizitojeni Faqen kryesore',
-'tooltip-n-portal' => 'Mbi projektin, çka muneni me bá për të dhe ku gjénden faqet.',
-'tooltip-n-recentchanges' => 'Lista e ndryshimeve të fundme në projekt',
-'tooltip-n-help' => 'Vendi ku muneni me gjetë ndihmë.',
-'tooltip-n-sitesupport' => 'Përkraheni projektin',
-'tooltip-t-upload' => 'Ngarkoni figura ose skeda tjera',
-'tooltip-t-specialpages' => 'Lista e krejt faqeve speciale.',
+'tooltip-pt-userpage' => 'Faqja juej e përdoruesit',
+'tooltip-pt-mytalk' => 'Faqja juej e diskutimeve',
+'tooltip-pt-preferences' => 'Parapëlqimet tuaja',
+'tooltip-pt-watchlist' => 'Lista e faqeve nën mbikqyrjen tuej.',
+'tooltip-pt-mycontris' => 'Lista e kontributeve tueja',
+'tooltip-pt-login' => 'Me hy brenda nuk asht e detyrueshme, po ká shumë përparësi.',
+'tooltip-pt-logout' => 'Dalje',
+'tooltip-ca-talk' => 'Diskuto për përmbajtjen e faqes',
+'tooltip-ca-edit' => "Ju muneni me redaktue kët faqe. Përdorni butonin >>Trego parapamjen<< para se t'i kryni ndryshimet.",
+'tooltip-ca-addsection' => "Nis një temë t're diskutimi.",
+'tooltip-ca-viewsource' => 'Kjo faqe asht e mbrojtme. Ju muneni veç ta shikoni burimin e tekstit.',
+'tooltip-ca-move' => 'Zhvendose faqen',
+'tooltip-ca-watch' => 'Shtoje kët faqe në lisën e faqeve nën mbikqyrje',
+'tooltip-search' => 'Kërko në projekt',
+'tooltip-n-mainpage' => 'Vizitojeni Faqen kryesore',
+'tooltip-n-portal' => 'Mbi projektin, çka muneni me bá për të dhe ku gjénden faqet.',
+'tooltip-n-currentevents' => 'Informacion rreth ngjarjeve aktuale.',
+'tooltip-n-recentchanges' => 'Lista e ndryshimeve të fundme në projekt',
+'tooltip-n-randompage' => 'Shikoni një artikull të rastit.',
+'tooltip-n-help' => 'Vendi ku muneni me gjetë ndihmë.',
+'tooltip-t-whatlinkshere' => 'Lista e faqeve qi lidhen te kjo faqe',
+'tooltip-t-upload' => 'Ngarkoni figura ose skeda tjera',
+'tooltip-t-specialpages' => 'Lista e krejt faqeve speciale.',
+'tooltip-ca-nstab-image' => 'Shikoni faqen e figurës',
+'tooltip-ca-nstab-category' => 'Shikoni faqen e kategorisë',
+'tooltip-save' => 'Kryej ndryshimet',
+'tooltip-preview' => 'Shiko parapamjen e ndryshimeve, përdore këtë para se me kry ndryshimet!',
+'tooltip-diff' => 'Trego ndryshimet që Ju i keni bá tekstit.',
+'tooltip-compareselectedversions' => 'Shikoni krahasimin midis dy versioneve të zgjedhme të kësaj faqe.',
+
+# Browsing diffs
+'previousdiff' => '← Nryshimi ma përpara',
+
+# Media information
+'file-nohires' => '<small>Rezolucioni i plotë.</small>',
+'show-big-image' => 'Rezolucion i plotë',
+
+# Metadata
+'metadata' => 'Metadata',
+'metadata-help' => 'Kjo skedë përmban hollësira tjera të cilat munen qi jan shtue nga kamera ose skaneri dixhital që është përdorur për ta krijuar. Nëse se skeda asht ndryshue nga gjendja origjinale, disa hollësira munen mos me pasqyru skedën e tashme.',
+'metadata-expand' => 'Tregoji detajet',
+
+# External editor support
+'edit-externally' => 'Ndryshoni kët figurë/skedë me një mjet të jashtëm',
+'edit-externally-help' => 'Shikoni [http://www.mediawiki.org/wiki/Manual:External_editors udhëzimet e instalimit] për ma shumë informacion.',
+
+# 'all' in various places, this might be different for inflected languages
+'watchlistall2' => 'krejt',
+'namespacesall' => 'krejt',
+
+# Special:SpecialPages
+'specialpages' => 'Faqet speciale',
);
diff --git a/languages/messages/MessagesAls.php b/languages/messages/MessagesAls.php
index 01477c39..9aa4427f 100644
--- a/languages/messages/MessagesAls.php
+++ b/languages/messages/MessagesAls.php
@@ -1,8 +1,9 @@
<?php
/** Alemannisch
- *
- * @addtogroup Language
- * @comment Deprecated code. Falls back to 'gsw'.
- */
+ *
+ * @ingroup Language
+ * @file
+ * @comment Deprecated code. Falls back to 'gsw'.
+ */
$fallback = 'gsw';
diff --git a/languages/messages/MessagesAm.php b/languages/messages/MessagesAm.php
index 036134b1..e85562b5 100644
--- a/languages/messages/MessagesAm.php
+++ b/languages/messages/MessagesAm.php
@@ -1,25 +1,38 @@
<?php
/** Amharic (አማርኛ)
*
- * @addtogroup Language
+ * @ingroup Language
+ * @file
*
* @author Codex Sinaiticus
- * @author Siebrand
- * @author Nike
- * @author G - ג
- * @author SPQRobin
* @author Teferra
- * @author לערי ריינהארט
*/
-
+$namespaceNames = array(
+ 'NS_MEDIA' => 'ፋይል',
+ 'NS_SPECIAL' => 'ልዩ',
+ 'NS_TALK' => 'ውይይት',
+ 'NS_USER' => 'አባል',
+ 'NS_USER_TALK' => 'አባል_ውይይት',
+ 'NS_PROJECT_TALK' => '$1_ውይይት',
+ 'NS_IMAGE' => 'ስዕል',
+ 'NS_IMAGE_TALK' => 'ስዕል_ውይይት',
+ 'NS_MEDIAWIKI' => 'መልዕክት',
+ 'NS_MEDIAWIKI_TALK' => 'መልዕክት_ውይይት',
+ 'NS_TEMPLATE' => 'መልጠፊያ',
+ 'NS_TEMPLATE_TALK' => 'መልጠፊያ_ውይይት',
+ 'NS_HELP' => 'እርዳታ',
+ 'NS_HELP_TALK' => 'እርዳታ_ውይይት',
+ 'NS_CATEGORY' => 'መደብ',
+ 'NS_CATEGORY_TALK' => 'መደብ_ውይይት',
+);
$messages = array(
# User preference toggles
'tog-underline' => 'በመያያዣ ስር አስምር',
-'tog-highlightbroken' => 'የተሰበረ (ቀይ) መያያዣን <a href="" class="new">እንዲህ</a>? አለዚያ: እንዲህ<a href="" class="internal">?</a>)',
+'tog-highlightbroken' => 'የተሰበረ (ቀይ) መያያዣን <a href="" class="new">እንዲህ</a>? አለዚያ: እንዲህ<a href="" class="internal">?</a>',
'tog-justify' => 'አንቀጾችን አስተካክል',
-'tog-hideminor' => 'አነስተኛ እርማቶችን ደብቅ',
+'tog-hideminor' => 'በቅርብ ጊዜ የተደረጉ አነስተኛ እርማቶችን ደብቅ',
'tog-extendwatchlist' => 'የሚደረጉ ለውጦችን ለማሳየት መቆጣጠሪያ-ዝርዝርን ዘርጋ',
'tog-usenewrc' => 'የተሻሻሉ የቅርብ ለውጦች (JavaScript)',
'tog-numberheadings' => 'አርዕስቶችን በራስገዝ ቁጥር ስጥ',
@@ -27,7 +40,7 @@ $messages = array(
'tog-editondblclick' => 'ሁለቴ መጫን ገጹን ማረም ያስችል (JavaScript)',
'tog-editsection' => 'በ[አርም] መያያዣ ክፍል ማረምን አስችል',
'tog-editsectiononrightclick' => 'የክፍል አርዕስት ላይ በቀኝ በመጫን ክፍል ማረምን አስችል (JavaScript)',
-'tog-showtoc' => 'ከ3 አርዕስቶች በላይ ሲሆን የማውጫጫ ሰንጠረዥ ይታይ',
+'tog-showtoc' => 'ከ3 አርዕስቶች በላይ ሲሆን የማውጫ ሰንጠረዥ ይታይ',
'tog-rememberpassword' => 'መግባቴን እዚህ አስሊ ላይ አስታውስ',
'tog-editwidth' => 'የማረሚያ ሳጥን ሙሉ ስፋት አለው',
'tog-watchcreations' => 'እኔ የፈጠርኳቸውን ገጾች ወደምከታተላቸው ገጾች ዝርዝር ውስጥ ጨምር',
@@ -35,7 +48,7 @@ $messages = array(
'tog-watchmoves' => 'ያዛወርኳቸውን ገጾች ወደምከታተላቸው ገጾች ዝርዝር ውስጥ ጨምር',
'tog-watchdeletion' => 'የሰረዝኳቸውን ገጾች ወደምከታተላቸው ገጾች ዝርዝር ውስጥ ጨምር',
'tog-minordefault' => 'ሁሉም እርማቶች በቀዳሚነት አነስተኛ ይባሉ',
-'tog-previewontop' => 'ከማረሚያው ገጽ በፊት ቅድመ-ማያ አሳይ',
+'tog-previewontop' => 'ከማረሚያው ሳጥን በፊት ቅድመ-ዕይታ አሳይ',
'tog-previewonfirst' => 'በመጀመሪያ እርማት ቅድመ-ዕይታ ይታይ',
'tog-nocache' => 'ገጽ መቆጠብን አታስችል',
'tog-enotifwatchlistpages' => 'የምከታተለው ገጽ ሲቀየር ኤመልዕክት ይላክልኝ',
@@ -45,12 +58,16 @@ $messages = array(
'tog-shownumberswatching' => 'የሚከታተሉ ተጠቃሚዎችን ቁጥር አሳይ',
'tog-fancysig' => 'ጥሬ ፊርማ (ያለራስገዝ ማያያዣ)',
'tog-externaleditor' => 'በቀዳሚነት ውጪያዊ አራሚን ተጠቀም',
+'tog-externaldiff' => 'በቀዳሚነት የውጭ ልዩነት-ማሳያን ተጠቀም',
+'tog-showjumplinks' => 'የ"ዝለል" አቅላይ መያያዣዎችን አስችል',
+'tog-uselivepreview' => 'ቀጥታ ቅድመ-ዕይታን ይጠቀሙ (JavaScript) (የሙከራ)',
'tog-forceeditsummary' => 'ማጠቃለያው ባዶ ከሆነ ማስታወሻ ይስጠኝ',
'tog-watchlisthideown' => 'የራስዎ ለውጦች ከሚከታተሉት ገጾች ይደበቁ',
'tog-watchlisthidebots' => 'የቦት (መሣርያ) ለውጦች ከሚከታተሉት ገጾች ይደበቁ',
'tog-watchlisthideminor' => 'ጥቃቅን ለውጦች ከሚከታተሉት ገጾች ይደበቁ',
'tog-ccmeonemails' => 'ወደ ሌላ ተጠቃሚ የምልከው ኢሜል ቅጂ ለኔም ይላክ',
'tog-diffonly' => 'ከለውጦቹ ስር የገጽ ይዞታ አታሳይ',
+'tog-showhiddencats' => 'የተደበቁ መደቦች ይታዩ',
'underline-always' => 'ሁሌም ይህን',
'underline-never' => 'ሁሌም አይሁን',
@@ -110,178 +127,322 @@ $messages = array(
'nov' => 'ኖቬም.',
'dec' => 'ዲሴም.',
-# Bits of text used by many pages
-'categories' => 'ምድቦች',
-'pagecategories' => '{{PLURAL:$1|ምድብ|ምድቦች}}',
-'category_header' => 'በምድብ «$1» ውስጥ የሚገኙ ገጾች',
-'subcategories' => 'ንዑስ-ምድቦች',
-'category-media-header' => 'በመደቡ «$1» የተገኙ ፋይሎች፦',
-'category-empty' => 'ይህ መደብ አሁን ባዶ ነው።',
+# Categories related messages
+'pagecategories' => '{{PLURAL:$1|ምድብ|ምድቦች}}',
+'category_header' => 'በምድብ «$1» ውስጥ የሚገኙ ገጾች',
+'subcategories' => 'ንዑስ-ምድቦች',
+'category-media-header' => 'በመደቡ «$1» የተገኙ ፋይሎች፦',
+'category-empty' => 'ይህ መደብ አሁን ባዶ ነው።',
+'hidden-categories' => '{{PLURAL:$1|የተደበቀ መደብ|የተደበቁ መደቦች}}',
+'hidden-category-category' => 'የተደበቁ መደቦች', # Name of the category where hidden categories will be listed
+'category-subcat-count' => '{{PLURAL:$2|በዚሁ መደብ ውስጥ አንድ ንዑስ-መደብ አለ|በዚሁ መደብ ውስጥ {{PLURAL:$1|የሚከተለው ንዕስ-መደብ አለ|የሚከተሉት $1 ንዑስ-መደቦች አሉ}} (በጠቅላላም ከነስውር መደቦች $2 አሉ)}}፦',
+'listingcontinuesabbrev' => '(ተቀጥሏል)',
+
+'mainpagetext' => "<big>'''MediaWiki በትክክል ማስገባቱ ተከናወነ።'''</big>",
+'mainpagedocfooter' => "ስለ ዊኪ ሶፍትዌር ጥቅም ለመረዳት፣ [http://meta.wikimedia.org/wiki/Help:Contents User's Guide] ያንብቡ።
+
+== ለመጀመር ==
+
+* [http://www.mediawiki.org/wiki/Manual:Configuration_settings Configuration settings list]
+* [http://www.mediawiki.org/wiki/Manual:FAQ MediaWiki FAQ]
+* [http://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki release mailing list]",
'about' => 'ስለ',
+'article' => 'መጣጥፍ',
'newwindow' => '(ባዲስ መስኮት ውስጥ ይከፈታል።)',
-'cancel' => 'ይጥፋ',
+'cancel' => 'ሰርዝ',
'qbfind' => 'አግኝ',
'qbbrowse' => 'ቃኝ',
'qbedit' => 'አርም',
'qbpageoptions' => 'ይህ ገጽ',
+'qbpageinfo' => 'አግባብ',
+'qbmyoptions' => 'የኔ ገጾች',
'qbspecialpages' => 'ልዩ ገጾች',
+'moredotdotdot' => 'ተጨማሪ...',
+'mypage' => 'የኔ ገጽ',
'mytalk' => 'የኔ ውይይት',
+'anontalk' => 'ውይይት ለዚሁ ቁ. አድራሻ',
'navigation' => 'መቃኘት',
-
-'errorpagetitle' => 'ስህተት',
-'returnto' => 'ወደ $1 ተመለስ',
-'tagline' => 'ከ{{SITENAME}}',
-'help' => 'መመሪያ',
-'search' => 'ፈልግ',
-'searchbutton' => 'ፈልግ',
-'go' => 'ሂድ',
-'searcharticle' => 'ሂድ',
-'history' => 'የገጽ ታሪክ',
-'history_short' => 'ታሪክ',
-'updatedmarker' => 'ከመጨረሻው ጉብኝቴ በኋላ የተሻሻለ',
-'info_short' => 'መረጃ',
-'printableversion' => 'የህትመት ዝርያ',
-'permalink' => 'ቋሚ መያያዣ',
-'edit' => 'አርም',
-'editthispage' => 'ይህን ገጽ አርም',
-'delete' => 'ስርዝ',
-'deletethispage' => 'ይህን ገጽ ሰርዝ',
-'protect' => 'ጠብቅ',
-'protect_change' => 'የመቆለፍ ደረጃ ለመቀይር',
-'newpage' => 'አዲስ ገጽ',
-'talkpage' => 'ስለዚሁ ገጽ ለመወያየት',
-'talkpagelinktext' => 'ውይይት',
-'specialpage' => 'ልዩ ገጽ',
-'personaltools' => 'የኔ መሣርያዎች',
-'talk' => 'ውይይት',
-'views' => 'ዕይታዎች',
-'toolbox' => 'ትዕዛዝ ማስጫ',
-'otherlanguages' => 'በሌሎች ቋንቋዎች',
-'redirectedfrom' => '(ከ$1 የተዛወረ)',
-'redirectpagesub' => 'መምሪያ መንገድ',
-'lastmodifiedat' => 'ይህ ገጽ መጨረሻ የተቀየረው እ.ኣ.አ በ$2፣ $1 ዓ.ም. ነበር።', # $1 date, $2 time
-'jumpto' => 'ዘልለው ለመሐድ፦',
-'jumptonavigation' => 'የማውጫ ቁልፎች',
-'jumptosearch' => 'ፍለጋ',
+'and' => 'እና',
+
+# Metadata in edit box
+'metadata_help' => 'ተጨማሪ መረጃ:',
+
+'errorpagetitle' => 'ስህተት',
+'returnto' => '(ወደ $1 ለመመለስ)',
+'tagline' => 'ከ{{SITENAME}}',
+'help' => 'እርዳታ ገጽ',
+'search' => 'ፈልግ',
+'searchbutton' => 'ፈልግ',
+'go' => 'ሂድ',
+'searcharticle' => 'ሂድ',
+'history' => 'የገጽ ታሪክ',
+'history_short' => 'ታሪክ',
+'updatedmarker' => 'ከመጨረሻው ጉብኝቴ በኋላ የተሻሻለ',
+'info_short' => 'መረጃ',
+'printableversion' => 'የህትመት ዝርያ',
+'permalink' => 'ቋሚ መያያዣ',
+'print' => 'ይታተም',
+'edit' => 'አርም',
+'create' => 'ለመፍጠር',
+'editthispage' => 'ይህን ገጽ አርም',
+'delete' => 'ይጥፋ',
+'deletethispage' => 'ይህን ገጽ ሰርዝ',
+'undelete_short' => '{{PLURAL:$1|አንድ ዕትም|$1 ዕትሞች}} ለመመልስ',
+'protect' => 'ጠብቅ',
+'protect_change' => 'የመቆለፍ ደረጃ ለመቀይር',
+'protectthispage' => 'ይህን ገጽ ለመቆለፍ',
+'unprotect' => 'አለመቆለፍ',
+'unprotectthispage' => 'ይህን ገጽ ለመፍታት',
+'newpage' => 'አዲስ ገጽ',
+'talkpage' => 'ስለዚሁ ገጽ ለመወያየት',
+'talkpagelinktext' => 'ውይይት',
+'specialpage' => 'ልዩ ገጽ',
+'personaltools' => 'የኔ መሣርያዎች',
+'postcomment' => 'አስተያየት ለማቅረብ',
+'articlepage' => 'መጣጥፉን ለማየት',
+'talk' => 'ውይይት',
+'views' => 'ዕይታዎች',
+'toolbox' => 'ትዕዛዝ ማስጫ',
+'userpage' => 'የአባል መኖሪያ ገጽ ለማየት',
+'projectpage' => 'ግብራዊ ገጹን ለማየት',
+'imagepage' => 'የፋይሉን ገጽ ለማየት',
+'mediawikipage' => 'የመልእክቱን ገጽ ለማየት',
+'templatepage' => 'የመልጠፊያውን ገጽ ለማየት',
+'viewhelppage' => 'የእርዳታ ገጽ ለማየት',
+'categorypage' => 'የመደቡን ገጽ ለማየት',
+'viewtalkpage' => 'ውይይቱን ለማየት',
+'otherlanguages' => 'በሌሎች ቋንቋዎች',
+'redirectedfrom' => '(ከ$1 የተዛወረ)',
+'redirectpagesub' => 'መምሪያ መንገድ',
+'lastmodifiedat' => 'ይህ ገጽ መጨረሻ የተቀየረው እ.ኣ.አ በ$2፣ $1 ዓ.ም. ነበር።', # $1 date, $2 time
+'viewcount' => 'ይህ ገጽ {{PLURAL:$1|አንዴ|$1 ጊዜ}} ታይቷል።',
+'protectedpage' => 'የተቆለፈ ገጽ',
+'jumpto' => 'ዘልለው ለመሐድ፦',
+'jumptonavigation' => 'የማውጫ ቁልፎች',
+'jumptosearch' => 'ፍለጋ',
# All link text and link target definitions of links into project namespace that get used by other message strings, with the exception of user group pages (see grouppage) and the disambiguation template definition (see disambiguations).
-'aboutsite' => 'ስለ {{SITENAME}} መርሃግብር',
-'aboutpage' => 'Project:ስለ',
-'bugreports' => 'የሶፍትዌሩን ችግር ዘግብ',
-'bugreportspage' => 'Project:የሶፍትዌር ችግሮች',
-'copyright' => '<br />ይዞታ በ$1 በሚለው ሕግ ሥር በነፃ የሚገኝ ነው።<br />',
-'copyrightpage' => '{{ns:project}}:የማብዛት መብት ደንብ',
-'currentevents' => 'ወቅታዊ ጉዳዮች',
-'currentevents-url' => 'Project:ወቅታዊ ጉዳዮች',
-'disclaimers' => 'የኃላፊነት ማስታወቂያ',
-'disclaimerpage' => 'Project:አጠቃላይ የሕግ ነጥቦች',
-'edithelp' => 'የማረም መመሪያ',
-'edithelppage' => 'Help:የማዘጋጀት እርዳታ',
-'faq' => 'ብጊየጥ (ብዙ ጊዜ የሚጠየቁ ጥያቀዎች)',
-'helppage' => 'Help:ይዞታ',
-'mainpage' => 'ዋና ገጽ',
-'portal' => 'የኅብረተሠቡ መረዳጃ',
-'portal-url' => 'Project:የኅብረተሠብ መረዳጃ',
-'privacy' => 'የሚስጥር ፖሊሲ',
-'privacypage' => 'Project:የግልነት ድንጋጌ',
-'sitesupport' => 'መዋጮ ለመስጠት',
-'sitesupport-url' => 'Project:መዋጮ ስለ መስጠት',
-
-'badaccess' => 'ያልተፈቀደ - አይቻልም',
-
-'ok' => 'እሺ',
-'retrievedfrom' => 'ከ «$1» ተወሰደ',
-'youhavenewmessages' => '$1 አለዎት ($2)።',
-'newmessageslink' => 'አዲስ መልእክቶች',
-'newmessagesdifflink' => 'የመጨረሻ ለውጥ',
-'editsection' => 'አርም',
-'editold' => 'አርም',
-'editsectionhint' => 'ክፍሉን «$1» ለማስተካከል',
-'toc' => 'ማውጫ',
-'showtoc' => 'አሳይ',
-'hidetoc' => 'ደብቅ',
-'thisisdeleted' => '($1ን ለመመልከት ወይም ለመመለስ)',
-'restorelink' => '{{PLURAL:$1|የጠፋ ዕትም|$1 የጠፉት ዕትሞች}}',
-'site-rss-feed' => '$1 R.S.S. Feed',
-'site-atom-feed' => '$1 አቶም Feed',
-'page-rss-feed' => '"$1" R.S.S. Feed',
+'aboutsite' => 'ስለ {{SITENAME}} መርሃግብር',
+'aboutpage' => 'Project:ስለ',
+'bugreports' => 'ተውሳክ ማመልከቻ',
+'bugreportspage' => 'Project:ተውሳክ ማመልከቻ',
+'copyright' => 'ይዘቱ በ$1 ሥር ይገኛል።',
+'copyrightpagename' => '{{SITENAME}} የቅጂ መብት',
+'copyrightpage' => '{{ns:project}}:የማብዛት መብት ደንብ',
+'currentevents' => 'ወቅታዊ ጉዳዮች',
+'currentevents-url' => 'Project:ወቅታዊ ጉዳዮች',
+'disclaimers' => 'የኃላፊነት ማስታወቂያ',
+'disclaimerpage' => 'Project:አጠቃላይ የሕግ ነጥቦች',
+'edithelp' => 'የማረም መመሪያ',
+'edithelppage' => 'Help:የማዘጋጀት እርዳታ',
+'faq' => 'ብጊየጥ (ብዙ ጊዜ የሚጠየቁ ጥያቀዎች)',
+'faqpage' => 'Project:ብጊየጥ',
+'helppage' => 'Help:ይዞታ',
+'mainpage' => 'ዋና ገጽ',
+'mainpage-description' => 'ዋና ገጽ',
+'policy-url' => 'Project:መርመርያዎች',
+'portal' => 'የኅብረተሠቡ መረዳጃ',
+'portal-url' => 'Project:የኅብረተሠብ መረዳጃ',
+'privacy' => 'የሚስጥር ፖሊሲ',
+'privacypage' => 'Project:የግልነት ድንጋጌ',
+
+'badaccess' => 'ያልተፈቀደ - አይቻልም',
+'badaccess-group0' => 'የጠየቁት አድራጎት እንዲፈጸም ፈቃድ የለዎም።',
+'badaccess-group1' => 'የጠየቁት አድራጎት ለ$1 ማዕረግ ላላቸው አባላት ብቻ ይፈቀዳል።',
+'badaccess-group2' => 'የጠየቁት አድራጎት ለ$1 ማዕረጎች ላሏቸው አባላት ብቻ ይፈቀዳል።',
+'badaccess-groups' => 'የጠየቁት አድራጎት ለ$1 ማዕረጎች ላሏቸው አባላት ብቻ ይፈቀዳል።',
+
+'versionrequired' => 'የMediaWiki ዝርያ $1 ያስፈልጋል።',
+'versionrequiredtext' => 'ይህንን ገጽ ለመጠቀም የMediaWiki ዝርያ $1 ያስፈልጋል። [[Special:Version|የዝርያውን ገጽ]] ይዩ።',
+
+'ok' => 'እሺ',
+'retrievedfrom' => 'ከ «$1» ተወሰደ',
+'youhavenewmessages' => '$1 አሉዎት ($2)።',
+'newmessageslink' => 'አዲስ መልእክቶች',
+'newmessagesdifflink' => 'የመጨረሻ ለውጥ',
+'youhavenewmessagesmulti' => 'በ$1 አዲስ መልእክቶች አሉዎት',
+'editsection' => 'አርም',
+'editold' => 'አርም',
+'editsectionhint' => 'ክፍሉን «$1» ለማስተካከል',
+'toc' => 'ማውጫ',
+'showtoc' => 'አሳይ',
+'hidetoc' => 'ደብቅ',
+'thisisdeleted' => '($1ን ለመመልከት ወይም ለመመለስ)',
+'viewdeleted' => '$1 ይታይ?',
+'restorelink' => '{{PLURAL:$1|የጠፋ ዕትም|$1 የጠፉት ዕትሞች}}',
+'feedlinks' => 'ማጉረስ (feed)፦',
+'feed-invalid' => 'የማይገባ የማጉረስ አይነት።',
+'feed-unavailable' => 'ማጉረስ በ{{SITENAME}} የለም።',
+'site-rss-feed' => '$1 R.S.S. Feed',
+'site-atom-feed' => '$1 አቶም Feed',
+'page-rss-feed' => '"$1" R.S.S. Feed',
+'page-atom-feed' => '"$1" አቶም Feed',
+'red-link-title' => '$1 (ገና አልተጻፈም)',
# Short words for each namespace, by default used in the namespace tab in monobook
'nstab-main' => 'ገጽ',
'nstab-user' => 'የአባል ገጽ',
+'nstab-media' => 'ፋይል',
'nstab-special' => 'ልዩ',
'nstab-project' => 'የፕሮጀክት ገጽ',
'nstab-image' => 'ፋይል',
'nstab-mediawiki' => 'መልዕክት',
-'nstab-template' => 'ሰም',
+'nstab-template' => 'መልጠፊያ',
'nstab-help' => 'የመመሪያ ገጽ',
'nstab-category' => 'ምድብ',
+# Main script and global functions
+'nosuchaction' => 'የማይሆን ተግባር',
+'nosuchactiontext' => 'በURL የተወሰነው ተግባር በዚህ ዊኪ አይታወቀም።',
+'nosuchspecialpage' => 'እንዲህ የተባለ ልዩ ገጽ የለም',
+'nospecialpagetext' => "<big>'''ለማይኖር ልዩ ገጽ ጠይቀዋል።'''</big>
+
+የሚኖሩ ልዩ ገጾች ዝርዝር በ[[Special:SpecialPages|{{int:specialpages}}]] ሊገኝ ይችላል።",
+
# General errors
+'error' => 'ስኅተት',
+'databaseerror' => 'የመረጃ-ቤት ስህተት',
+'dberrortext' => 'የመረጃ-ቤት ጥያቄ ስዋሰው ስህተት ሆኗል። ይህ ምናልባት በሶፍትዌሩ ወስጥ ያለ ተውሳክ ሊጠቆም ይችላል። መጨረሻ የተሞከረው መረጃ-ቤት ጥያቄ <blockquote><tt>$1</tt></blockquote> ከተግባሩ «<tt>$2</tt>» ውስጥ ነበረ። MySQL ስህተት «<tt>$3: $4</tt>» መለሰ።',
+'dberrortextcl' => 'የመረጃ-ቤት ጥያቄ ስዋሰው ስህተት ሆኗል። መጨረሻ የተሞከረው መረጃ-ቤት ጥያቄ <blockquote><tt>$1</tt></blockquote> ከተግባሩ «<tt>$2</tt>» ውስጥ ነበረ። MySQL ስህተት «<tt>$3: $4</tt>» መለሰ።',
+'noconnect' => 'ይቅርታ! ይህ ዊኪ አሁን የተግባር ችግር ስላጋጠመው የመረጃ-ቤቱን ሰርቨር ሊያገናኝ አይችልም። <br />
+$1',
+'nodb' => 'መረጃ-ቤት $1 ለመምረጥ አልተቻለም',
+'cachederror' => 'የሚከተለው ለተጠየቀው ገጽ የቆጠበው ቅጂ ሆኖ ምናልባት የታደሠ አይሆንም።',
+'laggedslavemode' => 'ማስጠንቀቂያ፦ ምናልባት የቅርብ ለውጦች በገጹ ላይ አይታዩም።',
+'readonly' => 'መረጃ-ቤት ተቆልፏል',
+'enterlockreason' => 'የመቆለፉን ምክንያትና የሚያልቅበትን ሰዓት (በግምት) ይጻፉ።',
+'readonlytext' => 'መረጃ-ቤቱ አሁን ከመቀየር ተቆልፏል። ይህ ለተራ አጠባበቅ ብቻ መሆኑ አይቀርም። ከዚያ በኋላ እንደ ወትሮ ሁኔታ ይኖራል።
+
+የቆለፉት መጋቢ ይህንን መግለጫ አቀረቡ፦ $1',
+'readonly_lag' => 'ተከታይ ሰርቨሮች ለቀዳሚው እስከሚደርሱ ድረስ መረጃ-ቤቱ በቀጥታ ተቆልፏል።',
+'internalerror' => 'የውስጥ ስህተት',
+'internalerror_info' => 'የውስጥ ስህተት፦ $1',
+'filecopyerror' => 'ፋይሉን «$1» ወደ «$2» መቅዳት አልተቻለም።',
+'filerenameerror' => 'የፋይሉን ስም ከ«$1» ወደ «$2» መቀየር አተቻለም።',
+'filedeleteerror' => 'ፋይሉን «$1» ለማጥፋት አልተቻለም።',
+'directorycreateerror' => 'ዶሴ «$1» መፍጠር አልተቻለም።',
+'filenotfound' => '«$1» የሚባል ፋይል አልተገኘም።',
+'fileexistserror' => 'ወደ ፋይሉ «$1» መጻፍ አይቻልም፦ ፋይሉ ይኖራል',
+'unexpected' => 'ያልተጠበቀ ዕሴት፦ «$1»=«$2»።',
+'formerror' => 'ስኅተት፦ ማመልከቻ ለማቅረብ አልተቻለም',
+'badarticleerror' => 'ይህ ተግባር በዚሁ ገጽ ላይ ሊደረግ አይቻልም።',
+'cannotdelete' => 'የተወሰነው ገጽ ወይም ፋይል ለማጥፋት አልተቻለም። (ምናልባት በሌላ ሰው እጅ ገና ጠፍቷል።)',
'badtitle' => 'መጥፎ አርዕስት',
'badtitletext' => 'የፈለጉት አርዕስት ልክ አልነበረም። ምናልባት ለአርዕስት የማይሆን የፊደል ምልክት አለበት።',
+'perfdisabled' => 'ይቅርታ! ማንም ዊኪውን ለመጠቀም እስከማይችል ድረስ መረጃ-ቤቱን ስለሚያዘገይ ይህ ተግባር ለግዜው እንደማይሰራ ተደርጓል።',
'perfcached' => 'ማስታወቂያ፡ ይህ መረጃ በየጊዜ የሚታደስ ስለሆነ ዘመናዊ ሳይሆን የቆየ ሊሆን ይችላል።',
'perfcachedts' => 'የሚቀጥለው መረጃ ተቆጥቧል፣ መጨረሻ የታደሠው $1 እ.ኤ.አ. ነው።',
'querypage-no-updates' => 'ይህ ገጽ አሁን የታደሠ አይደለም። ወደፊትም መታደሱ ቀርቷል። በቅርብ ግዜ አይታደስም።',
+'wrong_wfQuery_params' => 'ለwfQuery() ትክክለኛ ያልሆነ ግቤት<br />
+ተግባር፦ $1<br />
+ጥያቄ፦ $2',
'viewsource' => 'ምንጩን ተመልከት',
'viewsourcefor' => 'ለ«$1»',
+'actionthrottled' => 'ተግባሩ ተቋረጠ',
+'actionthrottledtext' => 'የስፓም መብዛት ለመቃወም፣ በአጭር ጊዜ ውስጥ ይህን ተግባር ብዙ ጊዜ ከመፈጽም ተክለክለዋል። አሁንም ከመጠኑ በላይ በልጠዋል። እባክዎ ከጥቂት ደቂቃ በኋላ እንደገና ይሞክሩ።',
'protectedpagetext' => 'ይኸው ገጽ እንዳይታረም ተጠብቋል።',
'viewsourcetext' => 'የዚህን ገጽ ምንጭ ማየትና መቅዳት ይችላሉ።',
'protectedinterface' => 'ይህ ገጽ ለስልቱ ገጽታ ጽሑፍን ያቀርባል፣፡ ስለዚህ እንዳይበላሽ ተጠብቋል።',
-'cascadeprotected' => "'''ማስጠንቀቂያ፦''' ይህ አርእስት ሊፈጠር ወይም ሊቀየር አይቻልም። ምክንያቱም ወደ ተከለከሉት አርእስቶች ተጨምሯል። <br />This page cannot be created or changed, because it is included in the following page that is under 'cascading protection': <br />$2",
+'editinginterface' => "'''ማስጠንቀቂያ፦''' ይህ ገጽ ለድረገጹ መልክ ጽሕፈት ይሰጣል። በዊኪ ሁሉ ላይ መላውን የድረገጽ መልክ በቀላል ለማስተርጎም [http://translatewiki.net/wiki/Main_Page?setlang=am Betawiki] ይጎብኙ።",
+'sqlhidden' => '(የመደበኛ-የመጠይቅ-ቋንቋ (SQL) ጥያቄ ተደበቀ)',
+'cascadeprotected' => "'''ማስጠንቀቂያ፦''' ይህ አርእስት ሊፈጠር ወይም ሊቀየር አይቻልም። ምክንያቱም ወደ {{PLURAL:$1|ተከታተለው አርዕስት|ተከታተሉት አርእስቶች}} ተጨምሯል።
+$2",
+'namespaceprotected' => "በ'''$1''' ክፍለ-ዊኪ ያሉትን ገጾች ለማዘጋጀት ፈቃድ የለዎም።",
+'customcssjsprotected' => 'ይህ ገጽ የሌላ ተጠቃሚ ምርጫዎች ስላሉበት እሱን ለማዘጋጀት ፈቃድ የለዎም።',
+'ns-specialprotected' => 'ልዩ ገጾችን ማረም አይፈቀድም።',
+'titleprotected' => "ይህ አርዕስት እንዳይፈጠር በ[[User:$1|$1]] ተጠብቋል። የተሰጠው ምክንያት ''$2'' ነው።",
# Login and logout pages
-'logouttext' => '<strong>አሁን ወጥተዋል።</strong><br /> አሁንም በቁጥር መታወቂያዎ ማዘጋጀት ይቻላል። ወይም ደግሞ እንደገና በብዕር ስምዎ መግባት ይችላሉ።
-----
+'logouttitle' => 'የአባል መውጫ',
+'logouttext' => '<strong>አሁን ወጥተዋል።</strong><br /> አሁንም በቁጥር መታወቂያዎ ማዘጋጀት ይቻላል። ወይም ደግሞ እንደገና በብዕር ስምዎ መግባት ይችላሉ።
+----
በጥቂት ሴኮንድ ውስጥ ወደሚከተለው ገጽ በቀጥታ ይመለሳል፦',
-'welcomecreation' => '== ሰላምታ፣ $1! ==
-
-የብዕር ስምዎ ተፈጥሯል። [[Special:Preferences|ምርጫዎችዎን]] ለማስተካከል ይችላሉ።',
-'yourname' => 'Username / የብዕር ስም:',
-'yourpassword' => 'Password / መግቢያ ቃል',
-'yourpasswordagain' => 'መግቢያ ቃልዎን ዳግመኛ ይስጡ',
-'remembermypassword' => '(መግቢያዎ እንዲታወስ ምልክት እዚህ ያድርጉ)',
-'login' => 'ለመግባት',
-'loginprompt' => '(You must have cookies enabled to log in to {{SITENAME}}.)',
-'userlogin' => 'መግቢያ',
-'logout' => 'ከብዕር ስምዎ ለመውጣት',
-'userlogout' => 'መውጫ',
-'nologin' => 'የብዕር ስም ገና የለዎም? $1!',
-'nologinlink' => 'አዲስ የብዕር ስም ያውጡ',
-'createaccount' => 'አዲስ አባል ለመሆን',
-'gotaccount' => '(አባልነት አሁን ካለዎ፥ $1 ይግቡ)',
-'gotaccountlink' => 'በዚህ',
-'youremail' => 'ኢ-ሜል *',
-'username' => 'የብዕር ስም:',
-'uid' => 'የገባበት ቁ.: #',
-'yourrealname' => 'ዕውነተኛ ስም፦',
-'yourlanguage' => 'የመልኩ ቋንቋ',
-'yournick' => 'ቁልምጫ ስም (ለፊርማ)',
-'email' => 'ኢ-ሜል',
-'prefs-help-realname' => 'ዕውነተኛ ስምዎን መግለጽ አስፈላጊነት አይደለም። ለመግለጽ ከመረጡ ለሥራዎ ደራሲነቱን ለማስታወቅ ይጠቅማል።',
-'prefs-help-email' => 'ኢሜል አድራሻን ማቅረብዎ አስፈላጊ አይደለም። ቢያቅርቡት ሌሎች አባላት አድራሻውን ሳያውቁ በፕሮግራሙ አማካኝነት ሊገናኙዎት ተቻለ።',
-'loginsuccesstitle' => 'መግባትዎ ተከናወነ!',
-'loginsuccess' => 'እንደ «$1» ሆነው አሁን {{SITENAME}}ን ገብተዋል።',
-'nosuchuser' => '«$1» የሚል ብዕር ስም አልተገኘም። አጻጻፉን ይመልከቱ ወይም አዲስ ብዕር ስም ያውጡ።',
-'nosuchusershort' => '«<nowiki>$1</nowiki>» የሚል ብዕር ስም አልተገኘም። አጻጻፉን ይመልከቱ።',
-'nouserspecified' => 'አንድ ብዕር ስም መጠቆም ያስፈልጋል።',
-'wrongpassword' => 'የተሰጠው መግቢያ ቃል ልክ አልነበረም። ዳግመኛ ይሞክሩ።',
-'wrongpasswordempty' => 'ምንም መግቢያ ቃል አልተሰጠም። ዳግመኛ ይሞክሩ።',
-'passwordtooshort' => 'የመረጡት መግቢያ ቃል ልክ አይሆንም። ቢያንስ $1 ፊደላትና ከብዕር ስምዎ የተለየ መሆን አለበት።',
-'mailmypassword' => 'Mail me a new password / መግቢያ ቃሌን ረስቼ አዲስ በኔ email ይላክልኝ።',
-'passwordremindertitle' => 'አዲስ ግዜያዊ መግቢያ ቃል (PASSWORD) ለ{{SITENAME}}',
-'passwordremindertext' => 'አንድ ሰው (ከቁጥር አድራሻ #$1 ሆኖ እርስዎ ይሆናሉ) አዲስ መግቢያ ቃል ለ{{SITENAME}} ጠይቋል ($4).
-ለ«$2» ይሆነው መግቢያ ቃል አሁን «$3» ነው። አሁን በዚህ መግቢያ ቃል ገብተው ወደ አዲስ መግቢያ ቃል መቀየር ይሻሎታል።
+'welcomecreation' => '== ሰላምታ፣ $1! ==
+
+የብዕር ስምዎ ተፈጥሯል። ምርጫዎችዎን ለማስተካከል ይችላሉ።',
+'loginpagetitle' => 'የአባል መግቢያ',
+'yourname' => 'Username / የብዕር ስም:',
+'yourpassword' => 'Password / መግቢያ ቃል',
+'yourpasswordagain' => 'መግቢያ ቃልዎን ዳግመኛ ይስጡ',
+'remembermypassword' => '(መግቢያዎ እንዲታወስ ምልክት እዚህ ያድርጉ)',
+'yourdomainname' => 'የእርስዎ ከባቢ (domain)፦',
+'externaldberror' => 'ወይም አፍአዊ የማረጋገጫ መረጃ-ቤት ስኅተት ነበረ፣ ወይም አፍአዊ አባልነትዎን ማሳደስ አልተፈቀዱም።',
+'loginproblem' => '<b>በመግባትዎ አንድ ችግር ኖሯል። </b><br />እንደገና ይሞክሩ!',
+'login' => 'ለመግባት',
+'nav-login-createaccount' => 'መግቢያ',
+'loginprompt' => '(You must have cookies enabled to log in to {{SITENAME}}.)',
+'userlogin' => 'መግቢያ',
+'logout' => 'ከብዕር ስምዎ ለመውጣት',
+'userlogout' => 'መውጫ',
+'notloggedin' => 'አልገቡም',
+'nologin' => 'የብዕር ስም ገና የለዎም? $1!',
+'nologinlink' => 'አዲስ የብዕር ስም ያውጡ',
+'createaccount' => 'አዲስ አባል ለመሆን',
+'gotaccount' => '(አባልነት አሁን ካለዎ፥ $1 ይግቡ)',
+'gotaccountlink' => 'በዚህ',
+'createaccountmail' => 'በኢ-ሜል',
+'badretype' => 'የጻፉት መግቢያ ቃሎች አይስማሙም።',
+'userexists' => 'ይህ ብዕር ስም አሁን ይኖራል። እባክዎ፣ ሌላ ብዕር ስም ይምረጡ።',
+'youremail' => 'ኢ-ሜል *',
+'username' => 'የብዕር ስም:',
+'uid' => 'የገባበት ቁ.: #',
+'yourrealname' => 'ዕውነተኛ ስም፦',
+'yourlanguage' => 'የመልኩ ቋንቋ',
+'yournick' => 'ቁልምጫ ስም (ለፊርማ)',
+'badsig' => 'ትክክለኛ ያልሆነ ጥሬ ፊርማ፤ HTML ተመልከት።',
+'badsiglength' => 'ያ ቁልምጫ ስም ከመጠን በላይ ይረዝማል፤ ከ$1 ፊደል በታች መሆን አለበት።',
+'email' => 'ኢ-ሜል',
+'prefs-help-realname' => 'ዕውነተኛ ስምዎን መግለጽ አስፈላጊነት አይደለም። ለመግለጽ ከመረጡ ለሥራዎ ደራሲነቱን ለማስታወቅ ይጠቅማል።',
+'loginerror' => 'የመግባት ስኅተት',
+'prefs-help-email' => 'ኢሜል አድራሻን ማቅረብዎ አስፈላጊ አይደለም። ቢያቅርቡት ሌሎች አባላት አድራሻውን ሳያውቁ በፕሮግራሙ አማካኝነት ሊገናኙዎት ተቻለ።',
+'prefs-help-email-required' => 'የኢ-ሜል አድራሻ ያስፈልጋል።',
+'nocookiesnew' => 'ብዕር ስም ተፈጠረ፣ እርስዎ ግን ገና አልገቡም። በ{{SITENAME}} ተጠቃሚዎች ለመግባት የቃኚ-ማስታወሻ (cookie) ይጠቀማል። በርስዎ ኮምፒውተር ግን የቃኚ-ማስታወሻ እንዳይሠራ ተደርጓል። እባክዎ እንዲሠራ ያድርጉና በአዲስ ብዕር ስምና መግቢያ ቃልዎ ይግቡ።።',
+'nocookieslogin' => 'በ{{SITENAME}} ተጠቃሚዎች ለመግባት የቃኚ-ማስታወሻ (cookie) ይጠቀማል። በርስዎ ኮምፒውተር ግን የቃኚ-ማስታወሻ እንዳይሠራ ተደርጓል። እባክዎ እንዲሠራ ያድርጉና እንደገና ይሞክሩ።',
+'noname' => 'የተወሰነው ብዕር ስም ትክክለኛ አይደለም።',
+'loginsuccesstitle' => 'መግባትዎ ተከናወነ!',
+'loginsuccess' => 'እንደ «$1» ሆነው አሁን {{SITENAME}}ን ገብተዋል።',
+'nosuchuser' => '«$1» የሚል ብዕር ስም አልተገኘም። አጻጻፉን ይመልከቱ ወይም አዲስ ብዕር ስም ያውጡ።',
+'nosuchusershort' => '«<nowiki>$1</nowiki>» የሚል ብዕር ስም አልተገኘም። አጻጻፉን ይመልከቱ።',
+'nouserspecified' => 'አንድ ብዕር ስም መጠቆም ያስፈልጋል።',
+'wrongpassword' => 'የተሰጠው መግቢያ ቃል ልክ አልነበረም። ዳግመኛ ይሞክሩ።',
+'wrongpasswordempty' => 'ምንም መግቢያ ቃል አልተሰጠም። ዳግመኛ ይሞክሩ።',
+'passwordtooshort' => 'የመረጡት መግቢያ ቃል ልክ አይሆንም። ቢያንስ $1 ፊደላትና ከብዕር ስምዎ የተለየ መሆን አለበት።',
+'mailmypassword' => 'Mail me a new password / መግቢያ ቃሌን ረስቼ አዲስ በኔ email ይላክልኝ።',
+'passwordremindertitle' => 'አዲስ ግዜያዊ መግቢያ ቃል (PASSWORD) ለ{{SITENAME}}',
+'passwordremindertext' => 'አንድ ሰው (ከቁጥር አድራሻ #$1 ሆኖ እርስዎ ይሆናሉ) አዲስ መግቢያ ቃል ለ{{SITENAME}} ጠይቋል ($4).
+ለ«$2» ይሆነው መግቢያ ቃል አሁን «$3» ነው። አሁን በዚህ መግቢያ ቃል ገብተው ወደ አዲስ መግቢያ ቃል መቀየር ይሻሎታል።
ይህ ጥያቄ የእርስዎ ካልሆነ፣ ወይም መግቢያ ቃልዎን ያስታወሱ እንደ ሆነ፣ ይህንን መልእክት ቸል ማለት ይችላሉ። የቆየው መግቢያ ቃል ከዚህ በኋላ ተግባራዊ ሆኖ ይቀጥላል።',
-'noemail' => 'ለብዕር ስም «$1» የተመዘገበ ኢ-ሜል የለም።',
-'passwordsent' => 'አዲስ መግቢያ ቃል ለ«$1» ወደ ተመዘገበው ኢ-ሜል ተልኳል። እባክዎ ከተቀበሉት በኋላ ዳግመኛ ይግቡ።',
-'eauthentsent' => 'የማረጋገጫ ኢ-ሜል ወዳቀረቡት አድራሻ ተልኳል። ያው አድራሻ በውነት የርስዎ እንደሆነ ለማረጋገጥ፣ እባክዎ በዚያ ደብዳቤ ውስጥ የተጻፈውን መያያዣ ይጫኑ። ከዚያ ቀጥሎ ኢ-ሜል ከሌሎች ተጠቃሚዎች መቀበል ይችላሉ።',
-'emailauthenticated' => 'የርስዎ ኢ-ሜል አድራሻ በ$1 ተረጋገጠ።',
-'emailnotauthenticated' => 'ያቀረቡት አድራሻ ገና አልተረጋገጠምና ከሌሎች ተጠቃሚዎች ኢሜል መቀበል አይችሉም።',
-'noemailprefs' => '(በ{{SITENAME}} በኩል ኢሜል ለመቀበል፣ የራስዎን አድራሻ አስቀድመው ማቅረብ ያስፈልጋል።)',
-'emailconfirmlink' => 'አድራሻዎን ለማረጋገጥ',
+'noemail' => 'ለብዕር ስም «$1» የተመዘገበ ኢ-ሜል የለም።',
+'passwordsent' => 'አዲስ መግቢያ ቃል ለ«$1» ወደ ተመዘገበው ኢ-ሜል ተልኳል። እባክዎ ከተቀበሉት በኋላ ዳግመኛ ይግቡ።',
+'blocked-mailpassword' => 'የርስዎ ቁጥር አድራሻ ከማዘጋጀት ታግዷልና፣ እንግዲህ ተንኮል ለመከልከል የመግቢያ ቃል ማግኘት ዘዴ ለመጠቀም አይፈቀደም።',
+'eauthentsent' => 'የማረጋገጫ ኢ-ሜል ወዳቀረቡት አድራሻ ተልኳል። ያው አድራሻ በውነት የርስዎ እንደሆነ ለማረጋገጥ፣ እባክዎ በዚያ ደብዳቤ ውስጥ የተጻፈውን መያያዣ ይጫኑ። ከዚያ ቀጥሎ ኢ-ሜል ከሌሎች ተጠቃሚዎች መቀበል ይችላሉ።',
+'throttled-mailpassword' => 'የመግቢያ ቃል ማስታወሻ ገና አሁን ባለፉት $1 ሰዓቶች ተልኳል። ተንኮልን ለመከልከል፣ በየ$1 ሰዓቶቹ አንድ የመግቢያ ቃል ማስታወሻ ብቻ ይላካል።',
+'mailerror' => 'ኢ-ሜልን የመላክ ስኅተት፦ $1',
+'acct_creation_throttle_hit' => 'ይቅርታ! $1 ብዕር ስሞች ከዚህ በፊት ፈጥረዋል። ከዚያ በላይ ለመፍጠር አይችሉም።',
+'emailauthenticated' => 'የርስዎ ኢ-ሜል አድራሻ በ$1 ተረጋገጠ።',
+'emailnotauthenticated' => 'ያቀረቡት አድራሻ ገና አልተረጋገጠምና ከሌሎች ተጠቃሚዎች ኢሜል መቀበል አይችሉም።',
+'noemailprefs' => '(በ{{SITENAME}} በኩል ኢሜል ለመቀበል፣ የራስዎን አድራሻ አስቀድመው ማቅረብ ያስፈልጋል።)',
+'emailconfirmlink' => 'አድራሻዎን ለማረጋገጥ',
+'invalidemailaddress' => 'ያው ኢ-ሜል አድራሻ ትክክለኛ አይመስልምና ልንቀበለው አይቻልም። እባክዎ ትክክለኛ አድራሻ ያስግቡ ወይም አለዚያ ጥያቄው ባዶ ይሁን።',
+'accountcreated' => 'ብዕር ስም ተፈጠረ',
+'accountcreatedtext' => 'ለ$1 ብዕር ስም ተፈጥሯል።',
+'createaccount-title' => 'ለ{{SITENAME}} የብዕር ስም መፍጠር',
+'createaccount-text' => 'አንድ ሰው ለኢሜል አድራሻዎ {{SITENAME}} ($4) «$2» የተባለውን ብዕር ስም በመግቢያ ቃል «$3» ፈጥሯል። አሁን ገብተው የመግቢያ ቃልዎን መቀየር ይቫልዎታል።
+
+ይህ ብዕር ስም በስህተት ከተፈጠረ፣ ይህን መልእክት ቸል ማለት ይችላሉ።',
+'loginlanguagelabel' => 'ቋምቋ፦ $1',
+
+# Password reset dialog
+'resetpass' => 'የአባል መግቢያ ቃል ለመቀየር',
+'resetpass_announce' => 'በኢ-ሜል በተላከ ጊዜያዊ ኮድ ገብተዋል። መግባትዎን ለመጨርስ፣ አዲስ መግቢያ ቃል እዚህ መምረጥ አለብዎ።',
+'resetpass_header' => 'መግቢያ ቃል ለመቀየር',
+'resetpass_submit' => 'መግቢያ ቃል ለመቀየርና ለመግባት',
+'resetpass_success' => 'የመግቢያ ቃልዎ መቀየሩ ተከናወነ! አሁን መግባት ይደረግልዎታል......',
+'resetpass_bad_temporary' => 'ትክክለኛ ያልሆነ ጊዜያዊ መግቢያ ቃል። ምናልባት ከዚህ በፊት መግቢያ ቃልዎን በመከናወን ቀየሩ፤ ወይም አዲስ ጊዜያዊ መግቢያ ቃል ጠይቀዋል።',
+'resetpass_forbidden' => 'በ{{SITENAME}} የመግቢያ ቃል መቀየር አይቻልም።',
+'resetpass_missing' => 'የማመልከቻ መረጃ የለም።',
# Edit page toolbar
'bold_sample' => 'ጨለማ ጽሕፈት',
@@ -290,7 +451,7 @@ $messages = array(
'italic_tip' => 'ያመለከቱትን ቃላት ባንጋደደ (ኢታሊክ) ለማድረግ',
'link_sample' => 'የመያያዣ ስም',
'link_tip' => 'ባመለከቱት ቃላት ላይ የዊኪ-ማያያዣ ለማድረግ',
-'extlink_sample' => 'http://www.lemisale.com የውጭ መያያዣ',
+'extlink_sample' => 'http://www.example.com የውጭ መያያዣ',
'extlink_tip' => "የውጭ መያያዣ ለመፍጠር (በ'http://' የሚቀደም)",
'headline_sample' => 'ንዑስ ክፍል',
'headline_tip' => 'የንዑስ-ክፍል አርዕስት ለመፍጠር',
@@ -304,18 +465,23 @@ $messages = array(
'hr_tip' => "አድማሳዊ መስመር (በ'----') ለመፍጠር",
# Edit pages
-'summary' => 'ማጠቃለያ',
-'subject' => 'ጥቅል ርዕስ',
-'minoredit' => 'ይህ ለውጥ ጥቃቅን ነው።',
-'watchthis' => 'ይህንን ገጽ ለመከታተል',
-'savearticle' => 'ገጹን አስቀምጥ',
-'preview' => 'ሙከራ / preview',
-'showpreview' => 'ቅድመ እይታ',
-'showdiff' => 'ማነጻጸሪያ',
-'anoneditwarning' => "'''ማስታወቂያ:''' እርስዎ አሁን በአባል ስምዎ ያልገቡ ነዎት። ማዘጋጀት ይቻሎታል፤ ነገር ግን ለውጦችዎ በአባል ስም ሳይሆን በቁጥር አድራሻዎ ይመዘገባሉ። ከፈለጉ፥ በአባልነት [[Special:Userlogin|መግባት]] ይችላሉ።",
-'missingsummary' => "'''ማስታወሻ፦''' ማጠቃለያ ገና አላቀረቡም። እንደገና «ገጹን ለማቅረብ» ቢጫኑ፣ ያለ ማጠቃለያ ይላካል።",
-'summary-preview' => 'የማጠቃለያ ቅድመ እይታ',
-'blockedtext' => "<big>'''የርስዎ ብዕር ስም ወይም ቁጥር አድራሻ ከማዘጋጀት ተከለክሏል።'''</big>
+'summary' => 'ማጠቃለያ',
+'subject' => 'ጥቅል ርዕስ',
+'minoredit' => 'ይህ ለውጥ ጥቃቅን ነው።',
+'watchthis' => 'ይህንን ገጽ ለመከታተል',
+'savearticle' => 'ገጹን አስቀምጥ',
+'preview' => 'ሙከራ / preview',
+'showpreview' => 'ቅድመ እይታ',
+'showlivepreview' => 'የቀጥታ ቅድመ-ዕይታ',
+'showdiff' => 'ማነጻጸሪያ',
+'anoneditwarning' => "'''ማስታወቂያ:''' እርስዎ አሁን በአባል ስምዎ ያልገቡ ነዎት። ማዘጋጀት ይቻሎታል፤ ነገር ግን ለውጦችዎ በአባል ስም ሳይሆን በቁጥር አድራሻዎ ይመዘገባሉ። ከፈለጉ፥ በአባልነት [[Special:UserLogin|መግባት]] ይችላሉ።",
+'missingsummary' => "'''ማስታወሻ፦''' ማጠቃለያ ገና አላቀረቡም። እንደገና «ገጹን ለማቅረብ» ቢጫኑ፣ ያለ ማጠቃለያ ይላካል።",
+'missingcommenttext' => 'እባክዎ አስተያየት ከዚህ በታች ያስግቡ።',
+'missingcommentheader' => "'''ማስታወሻ፦''' ለዚሁ አስተያየት ምንም አርእስት አላቀረቡም። 'ለማቅረብ' እንደገና ቢጫኑ ለውጥዎ ያለ አርዕስት ይሆናል።",
+'summary-preview' => 'የማጠቃለያ ቅድመ እይታ',
+'subject-preview' => 'የአርእስት ቅድመ-ዕይታ',
+'blockedtitle' => 'አባል ተከለክሏል',
+'blockedtext' => "<big>'''የርስዎ ብዕር ስም ወይም ቁጥር አድራሻ ከማዘጋጀት ተከለክሏል።'''</big>
በእርስዎ ላይ ማገጃ የጣለው መጋቢ $1 ነበረ። ምክንያቱም፦ ''$2''
@@ -324,35 +490,83 @@ $messages = array(
* የታገደው ተጠቃሚ፦ $7
$1ን ወይም ማንም ሌላ [[{{MediaWiki:Grouppage-sysop}}|መጋቢ]] ስለ ማገጃ ለመጠይቅ ይችላሉ። ነገር ግን በ[[Special:Preferences|ምርጫዎችዎ]] ትክክለኛ ኢሜል ካልኖረ ከጥቅሙም ካልተከለከሉ በቀር ለሰው ኢሜል ለመላክ አይችሉም። የአሁኑኑ ቁጥር አድራሻዎ $3 ህኖ የማገጃው ቁጥር #$5 ነው። ምንም ጥያቄ ካለዎ ይህን ቁጥር ይጨምሩ።",
-'newarticle' => '(አዲስ)',
-'newarticletext' => 'የተከተሉት መያያዣ እስካሁን ወደሌለ ገጽ ነው ያመጣዎት። ገጹን ለመፍጠር ከታች በሚገኘው ሳጥን ውስጥ መተየብ ይጀምሩ። ለተጨማሪ መረጃ፣ [[{{MediaWiki:Helppage}}|መመሪያ ገጽን]] ይመልከቱ።
+'autoblockedtext' => "የእርስዎ ቁጥር አድራሻ በቀጥታ ታግዷል። በ$1 የተገደ ተጠቃሚ ስለ ተጠቀመ ነው። የተሰጠው ምክንያት እንዲህ ነው፦
+
+:''$2''
+
+* ማገጃ የጀመረበት፦ $8
+* ማገጃ ያለቀበት፦ $6
+
+ስለ ማገጃው ለመወያየት፣ $1 ወይም ማንምን ሌላ [[{{MediaWiki:Grouppage-sysop}}|መጋቢ]] መጠይቅ ይችላሉ።
+
+በ[[Special:Preferences|ምርጫዎችዎ]] ትክክለኛ ኢ-ሜል አድራሻ ካልሰጡ፣ ወይም ከጥቅሙ ከታገዱ፣ ወደ ሌላ ሰው ኢ-ሜል መላክ እንዳልተቻለዎ ያስታውሱ።
+
+የማገጃዎ ቁጥር # $5 ነው። እባክዎ በማንኛውም ጥያቄ ይህን ቁጥር ይሰጡ።",
+'blockednoreason' => 'ምንም ምክንያት አልተሰጠም',
+'blockedoriginalsource' => "የ'''$1''' ጥሬ ኮድ ምንጭ ከዚህ ታች ይታያል፦",
+'blockededitsource' => "በ'''$1''' ላይ '''የእርስዎ ለውጦች''' ጽሕፈት ከዚህ ታች ይታያሉ፦",
+'whitelistedittitle' => 'ለማዘጋጀት መግባት አስቀድሞ ያስፈልጋል',
+'whitelistedittext' => 'ገጾችን ለማዘጋጀት $1 አስቀድሞ ያስፈልግዎታል።',
+'confirmedittitle' => 'ለማዘጋጀት የኢ-ሜል ማረጋገጫ ያስፈልጋል።',
+'confirmedittext' => 'ገጽ ማዘጋጀት ሳይችሉ፣ አስቀድመው የኢ-ሜል አድራሻዎን ማረጋገጥ አለብዎት። እባክዎ፣ በ[[Special:Preferences|ምርጫዎችዎ]] በኩል ኢ-ሜል አድራሻዎን ያረጋግጡ።',
+'nosuchsectiontitle' => 'የማይኖር ክፍል',
+'nosuchsectiontext' => 'የማይኖር ክፍል ለማዘጋጀት ሞክረዋል። ክፍሉ $1 ስለማይኖር፣ ለውጥዎን ለማስቀመጥ ምንም ሥፍራ የለም።',
+'loginreqtitle' => 'መግባት ያስፈልጋል።',
+'loginreqlink' => 'መግባት',
+'loginreqpagetext' => 'ሌሎች ገጾች ለመመልከት $1 ያስፈልግዎታል።',
+'accmailtitle' => 'የመግቢያ ቃል ተላከ።',
+'accmailtext' => 'የመግቢያ ቃል ለ«$1» ወደ $2 ተልኳል።',
+'newarticle' => '(አዲስ)',
+'newarticletext' => 'እርስዎ የተከተሉት መያያዣ እስካሁን ወደማይኖር ገጽ የሚወስድ ነው። ገጹን አሁን ለመፍጠር፣ ከታች በሚገኘው ሳጥን ውስጥ መተየብ ይጀምሩ። ለተጨማሪ መረጃ፣ [[{{MediaWiki:Helppage}}|የእርዳታ ገጽን]] ይመልከቱ።
ወደዚህ በስሕተት ከሆነ የመጡት፣ የቃኝውን «Back» ቁልፍ ይጫኑ።',
-'anontalkpagetext' => "----''ይኸው ገጽ ገና ያልገባ ወይም ብዕር ስም የሌለው ተጠቃሚ ውይይት ገጽ ነው። መታወቂያው በ[[ቁጥር አድራሻ]] እንዲሆን ያስፈልጋል። አንዳንዴ ግን አንድ የቁጥር አድራሻ በሁለት ወይም በብዙ ተጠቃሚዎች የጋራ ሊሆን ይችላል። ስለዚህ ለርስዎ የማይገባ ውይይት እንዳይደርስልዎ፣ [[Special:Userlogin|«መግቢያ»]] በመጫን የብዕር ስም ለማውጣት ይችላሉ።''",
-'noarticletext' => '(በዚሁ ገጽ ላይ ምንም ጽሕፈት ገና የለም።)',
-'previewnote' => 'ማስታወቂያ፦ <strong><big>ይህ ለሙከራው ብቻ ነው የሚታየው -- ምንም ለውጦች ገና አልተላኩም!</big></strong>',
-'session_fail_preview' => '<strong>ይቅርታ! ገጹን ለማቅረብ ስንሂድ፣ አንድ ትንሽ ችግር በመረቡ መረጃ ውስጥ ድንገት ገብቶበታል። እባክዎ፣ እንደገና ገጹን ለማቅረብ አንዴ ይሞክሩ። ከዚያ ገና ካልሠራ፣ ምናልባት ከአባል ስምዎ መውጣትና እንደገና መግባት ይሞክሩ።</strong>',
-'editing' => '«$1» ማዘጋጀት / ማስተካከል',
-'editingsection' => '«$1» (ክፍል) ማዘጋጀት / ማስተካከል',
-'editingcomment' => '$1 ማዘጋጀት (ውይይት መጨመር)',
-'yourtext' => 'የእርስዎ እትም',
-'editingold' => '<strong><big>ማስጠንቀቂያ፦</big>
-
+'anontalkpagetext' => "----''ይኸው ገጽ ገና ያልገባ ወይም ብዕር ስም የሌለው ተጠቃሚ ውይይት ገጽ ነው። መታወቂያው በ[[ቁጥር አድራሻ]] እንዲሆን ያስፈልጋል። አንዳንዴ ግን አንድ የቁጥር አድራሻ በሁለት ወይም በብዙ ተጠቃሚዎች የጋራ ሊሆን ይችላል። ስለዚህ ለርስዎ የማይገባ ውይይት እንዳይደርስልዎ፣ [[Special:UserLogin|«መግቢያ»]] በመጫን የብዕር ስም ለማውጣት ይችላሉ።''",
+'noarticletext' => 'በአሁኑ ወቅት በዚህ ገጽ ላይ ምንም ጽሑፍ የለም፤ በሌላ ገጾች [[Special:Search/{{PAGENAME}}|የዚህን ገጽ አርዕስት መፈለግ]] ወይም [{{fullurl:{{FULLPAGENAME}}|action=edit}} አዲስ ገፅ ማዘጋጀት ይችላሉ].',
+'userpage-userdoesnotexist' => 'የብዕር ስም «$1» አልተመዘገበም። እባክዎ ይህን ገጽ ለመፍጠር/ ለማስተካከል የፈለጉ እንደ ሆነ ያረጋግጡ።',
+'usercssjsyoucanpreview' => "<strong>ምክር፦</strong> ሳይቆጠብ አዲስ CSS/JSዎን ለመሞከር 'ቅድመ እይታ' የሚለውን ይጫኑ።",
+'usercsspreview' => "'''ማስታወሻ፦ CSS-ዎን ለሙከራ ብቻ እያዩ ነው፤ ገና አልተቆጠበም!'''",
+'userjspreview' => "'''ማስታወሻ፦ JavaScriptዎን ለሙከራ ብቻ እያዩ ነው፤ ገና አልተቆጠበም!'''",
+'userinvalidcssjstitle' => "'''ማስጠንቀቂያ፦''' «$1» የሚባል መልክ የለም። ልዩ .css እና .js ገጾች በትንንሽ እንግሊዝኛ ፊደል መጀመር እንዳለባቸው ያስታውሱ። ለምሳሌ፦ {{ns:user}}:Foo/monobook.css ልክ ነው እንጂ {{ns:user}}:Foo/Monobook.css አይደለም።",
+'updated' => '(የታደሰ)',
+'note' => '<strong>ማሳሰቢያ፦</strong>',
+'previewnote' => 'ማስታወቂያ፦ <strong><big>ይህ ለሙከራው ብቻ ነው የሚታየው -- ምንም ለውጦች ገና አልተላኩም!</big></strong>',
+'previewconflict' => 'ለማስቀምጥ የመረጡ እንደ ሆነ እንደሚታይ፣ ይህ ቅድመ-ዕይታ በላይኛ ጽሕፈት ማዘጋጀት ክፍል ያለውን ጽሕፈት ያንጸባርቃል።',
+'session_fail_preview' => '<strong>ይቅርታ! ገጹን ለማቅረብ ስንሂድ፣ አንድ ትንሽ ችግር በመረቡ መረጃ ውስጥ ድንገት ገብቶበታል። እባክዎ፣ እንደገና ገጹን ለማቅረብ አንዴ ይሞክሩ። ከዚያ ገና ካልሠራ፣ ምናልባት ከአባል ስምዎ መውጣትና እንደገና መግባት ይሞክሩ።</strong>',
+'editing' => '«$1» ማዘጋጀት / ማስተካከል',
+'editingsection' => '«$1» (ክፍል) ማዘጋጀት / ማስተካከል',
+'editingcomment' => '$1 ማዘጋጀት (ውይይት መጨመር)',
+'editconflict' => 'ተቃራኒ ለውጥ፦ $1',
+'explainconflict' => "ይህን ገጽ ለማዘጋጀት ከጀመሩ በኋላ የሌላ ሰው ለውጥ ገብቷል። ላይኛው ጽሕፈት የአሁኑ እትም ያሳያል፤ የርስዎም እትም ከዚያ በታች ይገኛል። ለውጦችዎን በአሁኑ ጽሕፈት ውስጥ ማዋሐድ ይኖርብዎታል። ገጹንም ባቀረቡበት ግዜ በላይኛው ክፍል ያለው ጽሕፈት '''ብቻ''' ይቀርባል።",
+'yourtext' => 'የእርስዎ እትም',
+'storedversion' => 'የተቆጠበው እትም',
+'editingold' => '<strong>ማስጠንቀቂያ፦
ይህ እትም የአሁኑ አይደለም፣ ከዚህ ሁናቴ ታድሷል።
-
ይህንን እንዳቀረቡ ከዚህ እትም በኋላ የተቀየረው ለውጥ ሁሉ ያልፋል።</strong>',
-'copyrightwarning' => "*<big> '''መጣጥፎችን ለመፍጠርና ለማሻሻል አይፈሩ''!''''' — </big>ሥራዎ ትክክለኛ ካልሆነ፣ በሌሎቹ አዘጋጆች ሊታረም ይችላል።",
-'longpagewarning' => '<strong>ማስጠንቀቂያ፦ የዚሁ ገጽ መጠን እስከ $1 kilobyte ድረስ ደርሷል፤ አንድ ጽሑፍ ከ32 kilobyte የበለጠ ሲሆን ይህ ግዙፍነት ለአንዳንድ ተጠቃሚ ዌብ-ብራውዘር ያስቸግራል። እባክዎን፣ ገጹን ወደ ተለያዩ ገጾች ማከፋፈልን ያስቡበት። </strong>',
-'readonlywarning' => ':<strong>ማስታወቂያ፦</strong> {{SITENAME}} አሁን ለአጭር ግዜ ተቆልፎ ገጹን ለማቅረብ አይቻልም። ጥቂት ደቂቃ ቆይተው እባክዎ እንደገና ይሞክሩት!
+'yourdiff' => 'ልዩነቶች',
+'copyrightwarning' => "*<big> '''መጣጥፎችን ለመፍጠርና ለማሻሻል አይፈሩ''!''''' — </big>ሥራዎ ትክክለኛ ካልሆነ፣ በሌሎቹ አዘጋጆች ሊታረም ይችላል።",
+'copyrightwarning2' => 'ወደ {{SITENAME}} የሚላከው አስተዋጽኦ ሁሉ በሌሎች ተጠቃሚዎች ሊታረም፣ ሊለወጥ፣ ወይም ሊጠፋ እንደሚቻል ያስታውሱ። ጽሕፈትዎ እንዲታረም ካልወደዱ፣ ወደዚህ አይልኩት።<br />
+ደግሞ ይህ የራስዎ ጽሕፈት ወይም ከነጻ ምንጭ የተቀዳ ጽሕፈት መሁኑን ያረጋግጣሉ። (ለዝርዝር $1 ይዩ)።
+<strong>አለፈቃድ፡ መብቱ የተጠበቀውን ሥራ አይልኩት!</strong>',
+'longpagewarning' => '<strong>ማስጠንቀቂያ፦ የዚሁ ገጽ መጠን እስከ $1 kilobyte ድረስ ደርሷል፤ አንድ ጽሑፍ ከ32 kilobyte የበለጠ ሲሆን ይህ ግዙፍነት ለአንዳንድ ተጠቃሚ ዌብ-ብራውዘር ያስቸግራል። እባክዎን፣ ገጹን ወደ ተለያዩ ገጾች ማከፋፈልን ያስቡበት። </strong>',
+'longpageerror' => '<strong>ስህተት፦ ያቀረቡት ጽሕፈት $1 kb ነው፤ ይህም ከተፈቀደው ወሰን $2 kb በላይ ነው። ሊቆጠብ አይችልም።</strong>',
+'readonlywarning' => ':<strong>ማስታወቂያ፦</strong> {{SITENAME}} አሁን ለአጭር ግዜ ተቆልፎ ገጹን ለማቅረብ አይቻልም። ጥቂት ደቂቃ ቆይተው እባክዎ እንደገና ይሞክሩት!
:(The database has been temporarily locked for maintenance, so you cannot save your edits at this time. You may wish to cut-&-paste the text into another file, and try again in a moment or two.)',
-'semiprotectedpagewarning' => "'''ማስታወቂያ፦''' ይኸው ገጽ ከቋሚ አዛጋጆች በተቀር በማንም እንዳይለወጥ ተቆልፏል።",
-'templatesused' => 'በዚሁ ገጽ ላይ የሚገኙት መልጠፊያዎች እነዚህ ናቸው፦',
-'templatesusedpreview' => 'በዚሁ ቅድመ-እይታ የሚገኙት መልጠፊያዎች እነዚህ ናቸው፦',
-'template-protected' => '(የተቆለፈ)',
-'template-semiprotected' => '(በከፊል የተቆለፈ)',
-'nocreatetext' => '{{SITENAME}} አዳዲስ ገጾችን ለመፍጠር ያሚያስችል ሁኔታ ከለክሏል። ተመልሰው የቆየውን ገጽ ማዘጋጀት ይችላሉ፤ አለዚያ [[Special:Userlogin|በብዕር ስም መግባት]] ይችላሉ።',
-'permissionserrorstext' => 'ያ አድራጎት አይቻልም - ምክንያቱም፦',
-'recreate-deleted-warn' => ":<strong><big>'''ማስጠንቀቂያ፦ ይኸው አርእስት ከዚህ በፊት የጠፋ ገጽ ነው!'''</big></strong>
+'protectedpagewarning' => '<strong>ማስጠንቀቂያ፦ ይህ ገጽ ከመጋቢ በስተቀር በማንም እንዳይለወጥ ተቆልፏል።</strong>',
+'semiprotectedpagewarning' => "'''ማስታወቂያ፦''' ይኸው ገጽ ከቋሚ አዛጋጆች በተቀር በማንም እንዳይለወጥ ተቆልፏል።",
+'cascadeprotectedwarning' => "'''ማስጠንቀቂያ፦''' ይህ ገጽ በመጋቢ ብቻ እንዲታረም ተቆልፏል። ምክንያቱም {{PLURAL:$1|በሚከተለው በውስጡ የሚያቆልፍ ገጽ|በሚከተሉ በውስጡ ይሚያቆልፉ ገጾች}} ውስጥ ይገኛል።",
+'titleprotectedwarning' => '<strong>ማስጠንቀቂያ፦ ይህ ገጽ አንዳንድ ተጠቃሚ ብቻ ሊፈጠር እንዲችል ተቆልፏል።</strong>',
+'templatesused' => 'በዚሁ ገጽ ላይ የሚገኙት መልጠፊያዎች እነዚህ ናቸው፦',
+'templatesusedpreview' => 'በዚሁ ቅድመ-እይታ የሚገኙት መልጠፊያዎች እነዚህ ናቸው፦',
+'templatesusedsection' => 'በዚሁ ክፍል የተጠቀሙት መልጠፊያዎች፦',
+'template-protected' => '(የተቆለፈ)',
+'template-semiprotected' => '(በከፊል የተቆለፈ)',
+'hiddencategories' => 'ይህ ገጽ በ{{PLURAL:$1|1 የተደበቀ መደብ|$1 የተደበቁ መድቦች}} ውስጥ ይገኛል።',
+'nocreatetitle' => 'የገጽ መፍጠር ተወሰነ',
+'nocreatetext' => '{{SITENAME}} አዳዲስ ገጾችን ለመፍጠር ያሚያስችል ሁኔታ ከለክሏል። ተመልሰው የቆየውን ገጽ ማዘጋጀት ይችላሉ፤ አለዚያ [[Special:UserLogin|በብዕር ስም መግባት]] ይችላሉ።',
+'nocreate-loggedin' => 'አዲስ ገጽ በ{{SITENAME}} ለመፍጠር ፈቃድ የለዎም።',
+'permissionserrors' => 'የፈቃድ ስሕተቶች',
+'permissionserrorstext' => 'ያ አድራጎት አይቻልም - {{PLURAL:$1|ምክንያቱም|ምክንያቶቹም}}፦',
+'recreate-deleted-warn' => ":<strong><big>'''ማስጠንቀቂያ፦ ይኸው አርእስት ከዚህ በፊት የጠፋ ገጽ ነው!'''</big></strong>
*እባክዎ፥ ገጹ እንደገና እንዲፈጠር የሚገባ መሆኑን ያረጋግጡ።
@@ -361,10 +575,19 @@ $1ን ወይም ማንም ሌላ [[{{MediaWiki:Grouppage-sysop}}|መጋቢ]] ስ
# "Undo" feature
'undo-success' => "ያ ለውጥ በቀጥታ ሊገለበጥ ይቻላል። እባክዎ ከታች ያለውን ማነጻጸርያ ተመልክተው ይህ እንደሚፈልጉ ያረጋግጡና ለውጡ እንዲገለበጥ '''ገጹን ለማቅረብ''' ይጫኑ።",
'undo-failure' => 'ከዚሁ ለውጥ በኋላ ቅራኔ ለውጦች ስለ ገቡ ሊገለበጥ አይቻልም።',
-'undo-summary' => 'አንድ ለውጥ ከ[[Special:Contributions/$2|$2]] ([[User talk:$2|ውይይት]]) ገለበጠ',
+'undo-summary' => 'አንድ ለውጥ $1 ከ[[Special:Contributions/$2|$2]] ([[User talk:$2|ውይይት]]) ገለበጠ',
+
+# Account creation failure
+'cantcreateaccounttitle' => 'ብዕር ስም ለመፍጠር አይቻልም',
+'cantcreateaccount-text' => "ከዚሁ የቁጥር አድራሻ ('''$1''') የብዕር ስም መፍጠር በ[[User:$3|$3]] ታግዷል።
+
+በ$3 የተሰጠው ምክንያት ''$2'' ነው።",
# History pages
'viewpagelogs' => 'መዝገቦች ለዚሁ ገጽ',
+'nohistory' => 'ለዚሁ ገጽ የዕትሞች ታሪክ የለም።',
+'revnotfound' => 'እትም አልተገኘም',
+'revnotfoundtext' => 'ለዚህ ገጽ የጠየቁት የቆየው ዕትም ሊገኝ አልቻለም። እባክዎ ይህን ገጽ ለማግኘት የተጠቀመው URL ይመልከቱ።',
'currentrev' => 'የአሁኑ እትም',
'revisionasof' => 'እትም በ$1',
'revision-info' => 'የ$1 ዕትም (ከ$2 ተዘጋጅቶ)',
@@ -377,13 +600,55 @@ $1ን ወይም ማንም ሌላ [[{{MediaWiki:Grouppage-sysop}}|መጋቢ]] ስ
'page_first' => 'ፊተኞች',
'page_last' => 'ኋለኞች',
'histlegend' => "ከ2 እትሞች መካከል ልዩነቶቹን ለመናበብ፦ በ2 ክብ ነገሮች ውስጥ ምልክት አድርገው «የተመረጡትን እትሞች ለማነፃፀር» የሚለውን ተጭነው የዛኔ በቀጥታ ይሄዳሉ።<br /> መግለጫ፦ (ከአሁን) - ከአሁኑ እትም ያለው ልዩነት፤ (ካለፈው) - ቀጥሎ ከቀደመው እትም ያለው ልዩነት፤<br /> «'''ጥ'''» ማለት ጥቃቅን ለውጥ ነው።",
+'deletedrev' => '[የተደለዘ]',
'histfirst' => 'ቀድመኞች',
'histlast' => 'ኋለኞች',
'historysize' => '($1 byte)',
'historyempty' => '(ባዶ)',
# Revision feed
+'history-feed-title' => 'የዕትሞች ታሪክ',
+'history-feed-description' => 'በዊኪ ላይ የዕትሞች ታሪክ ለዚሁ ገጽ',
'history-feed-item-nocomment' => '$1 በ$2', # user at time
+'history-feed-empty' => 'የተጠየቀው ገጽ አይኖርም። ምናልባት ከዊኪው ጠፍቷል፣ ወይም ወደ አዲስ ስም ተዛወረ። ለተመሳሳይ አዲስ ገጽ [[Special:Search|ፍለጋ]] ይሞክሩ።',
+
+# Revision deletion
+'rev-deleted-comment' => '(ማጠቃልያ ተደለዘ)',
+'rev-deleted-user' => '(ብዕር ስም ተደለዘ)',
+'rev-deleted-event' => '(መዝገቡ ድርጊት ተወግዷል)',
+'rev-delundel' => 'ይታይ/ይደበቅ',
+'revdelete-nooldid-title' => 'የማይሆን ግብ እትም',
+'revdelete-nooldid-text' => 'ይህ ተግባር የሚፈጸምበት ግብ (አላማ) እትም አልወሰኑም።',
+'revdelete-selected' => 'ከ [[:$1]] {{PLURAL:$2|የተመረጡ ዝርያዎች|የተመረጡ ዝርያዎች}}:',
+'logdelete-selected' => '{{PLURAL:$1|የተመረጠ መዝገብ ድርጊት|የተመረጡ መዝገብ ድርጊቶች}}፦',
+'revdelete-hide-text' => 'የእትሙ ጽሕፈት ይደበቅ',
+'revdelete-hide-name' => 'ድርጊትና ግቡ ይደበቅ',
+'revdelete-hide-comment' => 'ማጠቃለያ ይደበቅ',
+'revdelete-hide-user' => 'የአዘጋጁ ብዕር ስም ወይም ቁ. አድርሻ ይደበቅ',
+'revdelete-hide-image' => 'የፋይሉ ይዞታ ይደበቅ',
+'revdelete-log' => 'የመዝገቡ ማጠቃለያ፦',
+
+# History merging
+'mergehistory' => 'የገጽ ታሪኮች ለመዋሐድ',
+'mergehistory-box' => 'የሁለት ገጾች እትሞች ለማዋሐድ፦',
+'mergehistory-from' => 'መነሻው ገጽ፦',
+'mergehistory-into' => 'መድረሻው ገጽ፦',
+'mergehistory-list' => 'መዋሐድ የሚችሉ እትሞች ታሪክ',
+'mergehistory-go' => 'መዋሐድ የሚችሉ እትሞች ይታዩ',
+'mergehistory-submit' => 'እትሞቹን ለማዋሐድ',
+'mergehistory-empty' => 'ምንም ዕትም ማዋሐድ አይቻልም።',
+'mergehistory-success' => 'ከ[[:$1]] $3 {{PLURAL:$3|እትም|እትሞች}} ወደ [[:$2]] መዋሐዱ ተከናወነ።',
+'mergehistory-fail' => 'የታሪክ መዋሐድ አይቻልም፤ እባክዎ የገጽና የጊዜ ግቤቶች እንደገና ይመለከቱ።',
+'mergehistory-no-source' => 'መነሻው ገጽ $1 አይኖርም።',
+'mergehistory-no-destination' => 'መድረሻው ገጽ $1 አይኖርም።',
+'mergehistory-invalid-source' => 'መነሻው ገጽ ትክክለኛ አርእስት መሆን አለበት።',
+'mergehistory-invalid-destination' => 'መድረሻው ገጽ ትክክለኛ አርእስት መሆን አለበት።',
+
+# Merge log
+'mergelog' => 'የመዋሐድ መዝገብ',
+'pagemerge-logentry' => '[[$1]]ን ወደ [[$2]] አዋሐደ (እትሞች እስከ $3 ድረስ)',
+'revertmerge' => 'መዋሐዱን ለመገልበጥ',
+'mergelogpagetext' => 'የአንድ ገጽ ታሪክ ወደ ሌላው ሲዋሐድ ከዚህ ታች ያለው ዝርዝር ያሳያል።',
# Diffs
'history-title' => 'የ«$1» እትሞች ታሪክ',
@@ -391,94 +656,153 @@ $1ን ወይም ማንም ሌላ [[{{MediaWiki:Grouppage-sysop}}|መጋቢ]] ስ
'lineno' => 'መስመር፡ $1፦',
'compareselectedversions' => 'የተመረጡትን እትሞች ለማነፃፀር',
'editundo' => 'ለውጡ ይገለበጥ',
-'diff-multi' => '(ከነዚህ 2 እትሞች መካከል {{plural:$1|አንድ ለውጥ ነበር|$1 ለውጦች ነበሩ}}።)',
+'diff-multi' => '(ከነዚህ 2 እትሞች መካከል {{PLURAL:$1|አንድ ለውጥ ነበር|$1 ለውጦች ነበሩ}}።)',
# Search results
-'searchresulttext' => 'በተጨማሪ ስለ ፍለጋዎች ለመረዳት፣ [[{{MediaWiki:Helppage}}]] ያንብቡ።',
-'searchsubtitle' => "'''ፍለጋ ለ[[:$1]]፦'''",
-'noexactmatch' => "በ«$1» አርዕስት የሚሰየም መጣጥፍ '''አልተገኘም'''፤ እርሶ ግን [[:$1|ሊፈጥሩት ይችላሉ]]... ።",
-'prevn' => 'ፊተኛ $1',
-'nextn' => 'ቀጥሎ $1',
-'viewprevnext' => 'በቁጥር ለማየት፡ ($1) ($2) ($3).',
-'showingresults' => 'ከ ቁ.#<b>$2</b> ጀምሮ እስከ <b>$1</b> ውጤቶች ድረስ ከዚህ በታች ይታያሉ።',
-'powersearch' => 'ፍለጋ',
+'searchresults' => 'የፍለጋ ውጤቶች',
+'searchresulttext' => 'በተጨማሪ ስለ ፍለጋዎች ለመረዳት፣ [[{{MediaWiki:Helppage}}]] ያንብቡ።',
+'searchsubtitle' => "'''ፍለጋ ለ[[:$1]]፦'''",
+'searchsubtitleinvalid' => "ለ'''$1''' ፈለጉ",
+'noexactmatch' => "በ«$1» አርዕስት የሚሰየም መጣጥፍ '''አልተገኘም'''፤ እርሶ ግን [[:$1|ሊፈጥሩት ይችላሉ]]... ።",
+'noexactmatch-nocreate' => "'''«$1» የሚባል ገጽ የለም።'''",
+'toomanymatches' => 'ከመጠን በላይ ያሉ ስምምነቶች ተመለሱ፤ እባክዎ ሌላ ጥያቄ ይሞክሩ።',
+'titlematches' => 'የሚስማሙ አርዕስቶች',
+'notitlematches' => 'የሚስማሙ አርዕስቶች የሉም',
+'textmatches' => 'ጽሕፈት የሚስማማባቸው ገጾች',
+'notextmatches' => 'ጽሕፈት የሚስማማባቸው ገጾች የሉም',
+'prevn' => 'ፊተኛ $1',
+'nextn' => 'ቀጥሎ $1',
+'viewprevnext' => 'በቁጥር ለማየት፡ ($1) ($2) ($3).',
+'search-result-size' => '$1 ({{PLURAL:$2|1 ቃል|$2 ቃላት}})',
+'search-result-score' => 'ተገቢነት፦ $1%',
+'showingresults' => 'ከ ቁ.#<b>$2</b> ጀምሮ እስከ <b>$1</b> ውጤቶች ድረስ ከዚህ በታች ይታያሉ።',
+'showingresultsnum' => "ከ#'''$2''' ጀምሮ {{PLURAL:$3|'''1''' ውጤት|'''$3''' ውጤቶች}} ከዚህ ታች ማየት ይቻላል።",
+'powersearch' => 'ፍለጋ',
+'powersearch-legend' => 'ተጨማሪ ፍለጋ',
+'searchdisabled' => '{{SITENAME}} ፍለጋ አሁን እንዳይሠራ ተደርጓል። ለጊዜው ግን በGoogle ላይ መፈልግ ይችላሉ። የ{{SITENAME}} ይዞታ ማውጫ በዚያ እንዳልታደሰ ማቻሉ ያስታውሱ።',
# Preferences page
-'preferences' => 'ምርጫዎች፤',
-'mypreferences' => 'ምርጫዎች፤',
-'prefs-edits' => 'የለውጦች ቁጥር:',
-'changepassword' => 'መግቢያ ቃልዎን ለመቀየር',
-'skin' => 'የድህረ-ገጽ መልክ',
-'math' => 'የሂሳብ መልክ',
-'dateformat' => 'ያውሮፓ አቆጣጠር ዘመን ሥርዓት',
-'datedefault' => 'ግድ የለኝም',
-'datetime' => 'ዘመንና ሰዓት',
-'prefs-personal' => 'ያባል ዶሴ',
-'prefs-rc' => 'የቅርቡ ለውጦች ዝርዝር',
-'prefs-watchlist' => 'የሚከታተሉ ገጾች',
-'prefs-watchlist-days' => 'በሚከታተሉት ገጾች ዝርዝር ስንት ቀን ይታይ፤',
-'prefs-watchlist-edits' => 'በተደረጁት ዝርዝር ስንት ለውጥ ይታይ፤',
-'prefs-misc' => 'ልዩ ልዩ ምርጫዎች',
-'saveprefs' => 'ይቆጠብ',
-'resetprefs' => 'ይታደስ',
-'oldpassword' => 'የአሁኑ መግቢያ ቃልዎ',
-'newpassword' => 'አዲስ መግቢያ ቃል',
-'retypenew' => 'አዲስ መግቢያ ቃል ዳግመኛ',
-'textboxsize' => 'የማዘጋጀት ምርጫዎች',
-'rows' => 'በማዘጋጀቱ ሰንጠረዥ ስንት ተርታዎች?',
-'columns' => 'ስንት ዓምዶችስ?',
-'searchresultshead' => 'ፍለጋ',
-'resultsperpage' => 'ስንት ውጤቶች በየገጹ?',
-'contextlines' => 'ስንት መስመሮች በየውጤቱ?',
-'contextchars' => 'ስንት ፊደላት በየመስመሩ?',
-'recentchangesdays' => 'በቅርቡ ለውጦች ዝርዝር ስንት ቀን ይታይ?',
-'recentchangescount' => 'በዝርዝርዎ ላይ ስንት ለውጥ ይታይ? (እስከ 500)',
-'savedprefs' => 'ምርጫዎችህ ተቆጥበዋል።',
-'timezonelegend' => 'የሰዓት ክልል',
-'timezonetext' => 'ከ Server time (UTC) ያለው ልዩነት (በሰዓቶች ቁጥር) <br />(እንደ ኢትዮጵያ ጊዜ ለማድረግ እንደገና ስድስት ሰዓት ይጨምሩ።)',
-'timezoneoffset' => 'ኦፍ ሰት¹',
-'guesstimezone' => 'ከኮምፒውተርዎ መዝገብ ልዩነቱ ይገኝ',
-'allowemail' => 'ኢሜል ከሌሎች ተጠቃሚዎች ለመፍቀድ',
-'defaultns' => 'በመጀመርያው ፍለጋዎ በነዚህ ክፍለ-ዊኪዎች ብቻ ይደረግ:',
-'files' => 'የስዕሎች መጠን',
+'preferences' => 'ምርጫዎች፤',
+'mypreferences' => 'ምርጫዎች፤',
+'prefs-edits' => 'የለውጦች ቁጥር:',
+'prefsnologin' => 'ገና አልገቡም',
+'prefsnologintext' => 'ምርጫዎችዎን ለማስተካከል አስቀድሞ [[Special:UserLogin|መግባት]] ያስፈልግዎታል።',
+'prefsreset' => 'ምርጫዎች ከመቆጠቢያ ታድሰዋል።',
+'qbsettings-none' => 'የለም',
+'qbsettings-fixedleft' => 'በግራ የተለጠፈ',
+'qbsettings-fixedright' => 'በቀኝ የተለጠፈ',
+'qbsettings-floatingleft' => 'በግራ ተንሳፋፊ',
+'qbsettings-floatingright' => 'በቀኝ ተንሳፋፊ',
+'changepassword' => 'መግቢያ ቃልዎን ለመቀየር',
+'skin' => 'የድህረ-ገጽ መልክ',
+'math' => 'የሂሳብ መልክ',
+'dateformat' => 'ያውሮፓ አቆጣጠር ዘመን ሥርዓት',
+'datedefault' => 'ግድ የለኝም',
+'datetime' => 'ዘመንና ሰዓት',
+'math_failure' => 'ዘርዛሪው ተሳነው',
+'math_unknown_error' => 'የማይታወቅ ስኅተት',
+'math_unknown_function' => 'የማይታወቅ ተግባር',
+'math_lexing_error' => 'የlexing ስህተት',
+'math_syntax_error' => 'የሰዋሰው ስህተት',
+'math_bad_output' => 'ወደ math ውጤት ዶሴ መጻፍ ወይም መፍጠር አይቻልም',
+'prefs-personal' => 'ያባል ዶሴ',
+'prefs-rc' => 'የቅርቡ ለውጦች ዝርዝር',
+'prefs-watchlist' => 'የሚከታተሉ ገጾች',
+'prefs-watchlist-days' => 'በሚከታተሉት ገጾች ዝርዝር ስንት ቀን ይታይ፤',
+'prefs-watchlist-edits' => 'በተደረጁት ዝርዝር ስንት ለውጥ ይታይ፤',
+'prefs-misc' => 'ልዩ ልዩ ምርጫዎች',
+'saveprefs' => 'ይቆጠብ',
+'resetprefs' => 'እንደ በፊቱ ይታደስ',
+'oldpassword' => 'የአሁኑ መግቢያ ቃልዎ',
+'newpassword' => 'አዲስ መግቢያ ቃል',
+'retypenew' => 'አዲስ መግቢያ ቃል ዳግመኛ',
+'textboxsize' => 'የማዘጋጀት ምርጫዎች',
+'rows' => 'በማዘጋጀቱ ሰንጠረዥ ስንት ተርታዎች?',
+'columns' => 'ስንት ዓምዶችስ?',
+'searchresultshead' => 'ፍለጋ',
+'resultsperpage' => 'ስንት ውጤቶች በየገጹ?',
+'contextlines' => 'ስንት መስመሮች በየውጤቱ?',
+'contextchars' => 'ስንት ፊደላት በየመስመሩ?',
+'recentchangesdays' => 'በቅርቡ ለውጦች ዝርዝር ስንት ቀን ይታይ?',
+'recentchangescount' => 'በዝርዝርዎ ላይ ስንት ለውጥ ይታይ? (እስከ 500)',
+'savedprefs' => 'ምርጫዎችህ ተቆጥበዋል።',
+'timezonelegend' => 'የሰዓት ክልል',
+'timezonetext' => '¹ከ Server time (UTC) ያለው ልዩነት (በሰዓቶች ቁጥር) (እንደ ኢትዮጵያ ጊዜ ለማድረግ እንደገና ስድስት ሰዓት ይጨምሩ።)',
+'localtime' => 'የክልሉ ሰዓት (Local time)',
+'timezoneoffset' => 'ኦፍ ሰት¹',
+'servertime' => 'የሰርቨሩ ሰዓት',
+'guesstimezone' => 'ከኮምፒውተርዎ መዝገብ ልዩነቱ ይገኝ',
+'allowemail' => 'ኢሜል ከሌሎች ተጠቃሚዎች ለመፍቀድ',
+'defaultns' => 'በመጀመርያው ፍለጋዎ በነዚህ ክፍለ-ዊኪዎች ብቻ ይደረግ:',
+'default' => 'ቀዳሚ',
+'files' => 'የስዕሎች መጠን',
+
+# User rights
+'userrights' => 'የአባል መብቶች ለማስተዳደር', # Not used as normal message but as header for the special page itself
+'userrights-lookup-user' => 'የ1 አባል ማዕረግ ለማስተዳደር',
+'userrights-user-editname' => 'ለዚሁ ብዕር ስም፦',
+'editusergroup' => 'የአባሉ ማዕረግ ለማስተካከል',
+'editinguser' => "ይህ ማመልከቻ ለብዕር ስም '''[[User:$1|$1]]''' ([[User talk:$1|{{int:talkpagelinktext}}]] | [[Special:Contributions/$1|{{int:contribslink}}]]) መብቶቹን ለመቀየር ነው።",
+'userrights-editusergroup' => 'የአባሉ ማዕረግ ለማስተካከል',
+'saveusergroups' => 'ለውጦቹ ይቆጠቡ',
+'userrights-groupsmember' => 'አሁን ያሉባቸው ማዕረጎች፦',
+'userrights-reason' => 'የመቀየሩ ምክንያት፦',
+'userrights-no-interwiki' => 'ማዕረጎችን በሌላ ዊኪ ላይ ለማስተካከል ፈቃድ የለዎም።',
+'userrights-nodatabase' => 'መረጃ-ቤቱ $1 አይኖርም ወይም የቅርብ አካባቢ አይደለም።',
+'userrights-nologin' => 'የአባል መብቶች ለመወሰን መጋቢ ሆነው [[Special:UserLogin|መግባት]] ያስፈልግዎታል።',
+'userrights-notallowed' => 'የአባል መብቶች ለማስተካከል ፈቃድ የለዎም።',
# Groups
-'group' => 'ደረጃ፦',
-'group-sysop' => 'መጋቢ',
-
-'group-sysop-member' => 'መጋቢ',
-
-'grouppage-sysop' => '{{ns:project}}:መጋቢዎች',
+'group' => 'ደረጃ፦',
+'group-autoconfirmed' => 'የተረጋገጡ አባላት',
+'group-bot' => 'BOTS',
+'group-sysop' => 'መጋቢ',
+'group-bureaucrat' => 'አስተዳዳሪዎች',
+'group-all' => '(ሁሉ)',
+
+'group-autoconfirmed-member' => 'የተረጋገጠ ተጠቃሚ',
+'group-bot-member' => 'BOT',
+'group-sysop-member' => 'መጋቢ',
+'group-bureaucrat-member' => 'አስተዳዳሪ',
+
+'grouppage-autoconfirmed' => '{{ns:project}}:የተረጋገጡ ተጠቃሚዎች',
+'grouppage-bot' => '{{ns:project}}:BOTS',
+'grouppage-sysop' => '{{ns:project}}:መጋቢዎች',
+'grouppage-bureaucrat' => '{{ns:project}}:አስተዳዳሪዎች',
# User rights log
'rightslog' => 'የአባል መብቶች መዝገብ',
'rightslogtext' => 'ይህ መዝገብ የአባል መብቶች ሲለወጡ ይዘረዝራል።',
'rightslogentry' => 'የ$1 ማዕረግ ከ$2 ወደ $3 ለወጠ',
+'rightsnone' => '(የለም)',
# Recent changes
-'nchanges' => '$1 {{PLURAL:$1|ለውጥ|ለውጦች}}',
-'recentchanges' => 'በቅርብ ጊዜ የተለወጡ',
-'recentchangestext' => "በዚሁ ገጽ ላይ በቅርብ ጊዜ የወጡ አዳዲስ ለውጦች ለመከታተል ይችላሉ። <br /> ('''ጥ'''፦ ጥቃቅን ለውጥ፤ '''አ'''፦ አዲስ ገጽ)",
-'recentchanges-feed-description' => 'በዚህ ዊኪ ላይ በቅርብ ግዜ የተለወጠውን በዚሁ feed መከታተል ይችላሉ',
-'rcnote' => 'ከ$3 እ.ኤ.አ. ባለፉት <strong>$2</strong> ቀኖች የተደረጉት <strong>$1</strong> መጨረሻ ለውጦች እታች ይገኛሉ።
+'nchanges' => '$1 {{PLURAL:$1|ለውጥ|ለውጦች}}',
+'recentchanges' => 'በቅርብ ጊዜ የተለወጡ',
+'recentchangestext' => "በዚሁ ገጽ ላይ በቅርብ ጊዜ የወጡ አዳዲስ ለውጦች ለመከታተል ይችላሉ። <br /> ('''ጥ'''፦ ጥቃቅን ለውጥ፤ '''አ'''፦ አዲስ ገጽ)",
+'recentchanges-feed-description' => 'በዚህ ዊኪ ላይ በቅርብ ግዜ የተለወጠውን በዚሁ feed መከታተል ይችላሉ',
+'rcnote' => 'ከ$3 እ.ኤ.አ. ባለፉት <strong>$2</strong> ቀኖች የተደረጉት <strong>$1</strong> መጨረሻ ለውጦች እታች ይገኛሉ።
:<big>አ</big>ማራጮች፦',
-'rcnotefrom' => 'ከ<b>$2</b> ጀምሮ የተቀየሩትን ገጾች (እስከ <b>$1</b> ድረስ) ክዚህ በታች ይታያሉ።',
-'rclistfrom' => '(ከ $1 ጀምሮ አዲስ ለውጦቹን ለማየት)',
-'rcshowhideminor' => 'ጥቃቅን ለውጦች $1',
-'rcshowhidebots' => 'bots $1',
-'rcshowhideliu' => 'ያባላት ለውጦች $1',
-'rcshowhideanons' => 'የቁ. አድራሻ ለውጦች $1',
-'rcshowhidepatr' => 'የተቆጣጠሩ ለውጦች $1',
-'rcshowhidemine' => 'የኔ $1',
-'rclinks' => 'ባለፉት $2 ቀን ውስጥ የወጡት መጨረሻ $1 ለውጦች ይታዩ።<br />($3)',
-'diff' => 'ለውጡ',
-'hist' => 'ታሪክ',
-'hide' => 'ይደበቁ',
-'show' => 'ይታዩ',
-'minoreditletter' => 'ጥ',
-'newpageletter' => 'አ',
-'boteditletter' => 'B',
+'rcnotefrom' => "ከ'''$2''' ጀምሮ የተቀየሩትን ገጾች (እስከ '''$1''' ድረስ) ክዚህ በታች ይታያሉ።",
+'rclistfrom' => '(ከ $1 ጀምሮ አዲስ ለውጦቹን ለማየት)',
+'rcshowhideminor' => 'ጥቃቅን ለውጦች $1',
+'rcshowhidebots' => 'bots $1',
+'rcshowhideliu' => 'ያባላት ለውጦች $1',
+'rcshowhideanons' => 'የቁ. አድራሻ ለውጦች $1',
+'rcshowhidepatr' => 'የተቆጣጠሩ ለውጦች $1',
+'rcshowhidemine' => 'የኔ $1',
+'rclinks' => 'ባለፉት $2 ቀን ውስጥ የወጡት መጨረሻ $1 ለውጦች ይታዩ።<br />($3)',
+'diff' => 'ለውጡ',
+'hist' => 'ታሪክ',
+'hide' => 'ይደበቁ',
+'show' => 'ይታዩ',
+'minoreditletter' => 'ጥ',
+'newpageletter' => 'አ',
+'boteditletter' => 'B',
+'number_of_watching_users_pageview' => '[$1 የሚከታተሉ {{PLURAL:$1|ተጠቃሚ|ተጠቃሚዎች}}]',
+'rc_categories_any' => 'ማንኛውም',
+'newsectionsummary' => '/* $1 */ አዲስ ክፍል',
# Recent changes linked
'recentchangeslinked' => 'የተዛመዱ ለውጦች',
@@ -489,33 +813,97 @@ $1ን ወይም ማንም ሌላ [[{{MediaWiki:Grouppage-sysop}}|መጋቢ]] ስ
በሚከታተሉት ገጾች መካከል ያሉት ሁሉ በ'''ጨለማ ጽሕፈት''' ይታያሉ።",
# Upload
-'upload' => 'ፋይል / ሥዕል ለመላክ',
-'uploadbtn' => 'ፋይሉ ይላክ',
-'uploadtext' => "በዚህ ማመልከቻ ላይ ፋይል ለመላክ ይችላሉ። ቀድሞ የተላኩት ስዕሎች [[Special:Imagelist|በፋይል / ሥዕሎች ዝርዝር]] ናቸው፤ ከዚህ በላይ የሚጨመረው ፋይል ሁሉ [[Special:Log/upload|በፋይሎች መዝገብ]] ይዘረዝራሉ።
+'upload' => 'ፋይል / ሥዕል ለመላክ',
+'uploadbtn' => 'ፋይሉ ይላክ',
+'reupload' => 'እንደገና ለመላክ',
+'reuploaddesc' => 'ለመሰረዝና ወደ መላኪያ ማመልከቻ ለመመለስ',
+'uploadnologin' => 'ገና አልገቡም',
+'uploadnologintext' => 'ፋይል ለመላክ አስቀድሞ [[Special:UserLogin|መግባት]] ያስፈልግዎታል።',
+'uploaderror' => 'የመላክ ስሕተት',
+'uploadtext' => "በዚህ ማመልከቻ ላይ ፋይል ለመላክ ይችላሉ። ቀድሞ የተላኩት ስዕሎች [[Special:ImageList|በፋይል / ሥዕሎች ዝርዝር]] ናቸው፤ ከዚህ በላይ የሚጨመረው ፋይል ሁሉ [[Special:Log/upload|በፋይሎች መዝገብ]] ይዘረዝራሉ።
ስዕልዎ በጽሑፍ እንዲታይ '''<nowiki>[[</nowiki>{{ns:image}}<nowiki>:Filename.jpg]]</nowiki>''' ወይም
'''<nowiki>[[</nowiki>{{ns:image}}<nowiki>:Filename.png|thumb|ሌላ ጽሑፍ]]</nowiki>''' በሚመስል መልክ ይጠቅሙ።",
-'upload-permitted' => 'የተፈቀዱት የፋይል አይነቶች፦ $1 ብቻ ናቸው።',
-'uploadlogpage' => 'የፋይሎች መዝገብ (filelog)',
-'uploadlogpagetext' => 'ይህ መዝገብ በቅርቡ የተላኩት ፋይሎች ሁሉ ያሳያል።',
-'fileuploadsummary' => 'ማጠቃለያ፦',
-'ignorewarnings' => 'ማስጠንቀቂያ ቸል ይበል',
-'uploadedimage' => '«[[$1]]» ላከ',
-'overwroteimage' => 'የ«[[$1]]» አዲስ ዕትም ላከ',
-'sourcefilename' => 'የቆየው የፋይሉ ስም',
-'destfilename' => 'የፋይሉ አዲስ ስም',
-'watchthisupload' => 'ይህንን ገጽ ለመከታተል',
-
-# Image list
-'imagelist' => 'የፋይል / ሥዕሎች ዝርዝር',
-'imagelisttext' => '$1 የተጨመሩ ሥእሎች ወይም ፋይሎች ከታች ይዘረዝራሉ ($2)።',
-'ilsubmit' => 'ፍለጋ',
-'showlast' => 'ያለፉት $1 ፋይሎች $2 ተደርድረው ይታዩ።',
-'byname' => 'በፊደል (ሀ-ፐ) ተራ',
-'bydate' => 'በተጨመሩበት ወቅት',
-'bysize' => 'በትልቅነት መጠን',
-'imgdesc' => 'መግለጫ',
-'imgfile' => 'ፋይሉ',
+'upload-permitted' => 'የተፈቀዱት የፋይል አይነቶች፦ $1 ብቻ ናቸው።',
+'upload-preferred' => 'የተመረጡት የፋይል አይነቶች፦ $1።',
+'upload-prohibited' => 'ያልተፈቀዱት የፋይል አይነቶች፦ $1።',
+'uploadlog' => 'የፋይሎች መዝገብ',
+'uploadlogpage' => 'የፋይሎች መዝገብ',
+'uploadlogpagetext' => 'ይህ መዝገብ በቅርቡ የተላኩት ፋይሎች ሁሉ ያሳያል።',
+'filename' => 'የፋይል ስም',
+'filedesc' => 'ማጠቃለያ',
+'fileuploadsummary' => 'ማጠቃለያ፦',
+'filestatus' => 'የማብዛት መብት ሁኔታ፦',
+'filesource' => 'መነሻ፦',
+'uploadedfiles' => 'የተላኩ ፋይሎች',
+'ignorewarning' => 'ማስጠንቀቂያውን ቸል በማለት ፋይሉ ይላክ።',
+'ignorewarnings' => 'ማስጠንቀቂያ ቸል ይበል',
+'minlength1' => 'የፋይል ስም ቢያንስ አንድ ፊደል መሆን አለበት።',
+'illegalfilename' => 'የፋይሉ ስም «$1» በአርእስት ያልተፈቀደ ፊደል ወይም ምልክት አለበት። እባክዎ፣ ለፋይሉ አዲስ ስም ያውጡና እንደገና ይልኩት።',
+'badfilename' => 'የፋይል ስም ወደ «$1» ተቀይሯል።',
+'filetype-badmime' => 'የMIME አይነት «$1» ፋይሎች ሊላኩ አይፈቀዱም።',
+'filetype-unwanted-type' => "'''\".\$1\"''' ያልተፈለገ ፋይል አይነት ነው። የተመረጡት ፋይል አይነቶች \$2 ናቸው።",
+'filetype-banned-type' => "'''«.$1»''' ያልተፈቀደ ፋይል አይነት ነው። የተፈቀዱት ፋይል አይነቶች $2 ናቸው።",
+'filetype-missing' => 'ፋይሉ ምንም ቅጥያ (ለምሳሌ «.jpg») የለውም።',
+'large-file' => 'የፋይል መጠን ከ$1 በላይ እንዳይሆን ይመከራል፤ የዚህ ፋይል መጠን $2 ነው።',
+'largefileserver' => 'ይህ ፋይል ሰርቨሩ ከሚችለው መጠን በላይ ነው።',
+'emptyfile' => 'የላኩት ፋይል ባዶ እንደ ሆነ ይመስላል። ይህ ምናልባት በፋይሉ ስም አንድ ግድፋት ስላለ ይሆናል። እባክዎ ይህን ፋይል በውኑ መላክ እንደ ፈለጉ ያረጋግጡ።',
+'fileexists' => 'ይህ ስም ያለው ፋይል አሁን ይኖራል፤ እባክዎ እሱም ለመቀየር እንደፈለጉ እርግጥኛ ካልሆኑ <strong><tt>$1</tt></strong> ይመለከቱ።',
+'filepageexists' => 'የዚሁ ፋኡል መግለጫ ገጽ ከዚህ በፊት በ<strong><tt>$1</tt></strong> ተፈጥሯል፤ ነገር ግን ይህ ስም ያለበት ፋይል አሁን አይኖርም። ስለዚህ ያቀረቡት ማጠቃለያ በመግለጫው ገጽ አይታይም። መግለጫዎ በዚያ እንዲታይ በእጅ ማስገባት ይኖርብዎታል።',
+'fileexists-extension' => 'ተመሳሳይ ስም ያለበት ፋይል ይኖራል፦<br />
+የሚላክ ፋይል ስም፦ <strong><tt>$1</tt></strong><br />
+የሚኖር (የቆየው) ፋይል ስም፦ <strong><tt>$2</tt></strong><br />
+እባክዎ ሌላ ስም ይምረጡ።',
+'fileexists-thumb' => "<center>'''የሚኖር ፋይል'''</center>",
+'fileexists-thumbnail-yes' => 'ፋይሉ የተቀነሰ መጠን ያለበት ስዕል <i>(ናሙና)</i> እንደ ሆነ ይመስላል። እባክዎ ፋይሉን <strong><tt>$1</tt></strong> ይመለከቱ።<br /> ያው ፋይል ለዚሁ ፋይል አንድ አይነት በኦሪጂናሉ መጠን ቢሆን ኖሮ፣ ተጨማሪ ናሙና መላክ አያስፈልግም።',
+'file-thumbnail-no' => 'የፋይሉ ስም በ<strong><tt>$1</tt></strong> ይጀመራል። የተቀነሰ መጠን ያለበት ስዕል <i>(ናሙና)</i> እንደ ሆነ ይመስላል። ይህን ስዕል በሙሉ ማጉላት ካለዎ፣ ይህን ይላኩ፤ አለዚያ እባክዎ የፋይሉን ስም ይቀይሩ።',
+'fileexists-forbidden' => 'በዚህ ስም የሚኖር ፋይል ገና አለ፤ እባክዎ ተመልሰው ይህን ፋይል በአዲስ ስም ስር ይልኩት። [[Image:$1|thumb|center|$1]]',
+'fileexists-shared-forbidden' => 'ይህ ስም ያለበት ፋይል አሁን በጋራ ፋይል ምንጭ ይኖራል፤ እባክዎ ተመልሰው ፋይሉን በሌላ ስም ስር ይላኩት። [[Image:$1|thumb|center|$1]]',
+'successfulupload' => 'መላኩ ተከናወነ',
+'uploadwarning' => 'የመላክ ማስጠንቀቂያ',
+'savefile' => 'ፋይሉ ለመቆጠብ',
+'uploadedimage' => '«[[$1]]» ላከ',
+'overwroteimage' => 'የ«[[$1]]» አዲስ ዕትም ላከ',
+'uploaddisabled' => 'ፋይል መላክ አይቻልም',
+'uploaddisabledtext' => 'ፋይል መላክ በ{{SITENAME}} አይቻልም።',
+'uploadcorrupt' => 'ይህ ፋይል ብልሹ ነው፤ ወይም ትክክለኛ ያልሆነ ቅጥያ አለው። እባክዎ ፋይሉን ተመልክተው እንደገና ይላኩት።',
+'uploadvirus' => 'ፋይሉ ቫይረስ አለበት! ዝርዝር፦ $1',
+'sourcefilename' => 'የቆየው የፋይሉ ስም፦',
+'destfilename' => 'የፋይሉ አዲስ ስም፦',
+'watchthisupload' => 'ይህንን ገጽ ለመከታተል',
+'filewasdeleted' => 'በዚሁ ስም ያለው ፋይል ከዚህ በፊት ተልኮ እንደገና ጠፍቷል። ዳግመኛ ሳይልኩት $1 ማመልከት ያሻላል።',
+'upload-wasdeleted' => "'''ማስጠንቀቂያ፦ ቀድሞ የተደለዘ ፋይል እየላኩ ነው።'''
+
+ይህን ፋይል መላክ የሚገባ መሆኑን ይቆጠሩ። የፋይሉ ማጥፋት መዝገብ ከዚህ ታች ይታያል፦",
+'filename-bad-prefix' => 'የሚልኩት ፋይል ስም በ<strong>«$1»</strong> ይጀመራል፤ ይህ ብዙ ጊዜ በቁጥራዊ ካሜራ የተወሰነ ገላጭ ያልሆነ ስም ይሆናል። እባክዎ ለፋይልዎ ገላጭ የሆነ ስም ይምረጡ።',
+
+'upload-proto-error' => 'ትክክለኛ ያልሆነ ወግ (protocol)',
+'upload-proto-error-text' => 'የሩቅ መላክ እንዲቻል URL በ<code>http://</code> ወይም በ<code>ftp://</code> መጀመር አለበት።',
+'upload-file-error' => 'የውስጥ ስህተት',
+'upload-misc-error' => 'ያልታወቀ የመላክ ስህተት',
+'upload-misc-error-text' => 'በተላከበት ጊዜ ያልታወቀ ስህተት ተነሣ። እባክዎ URL ትክክለኛና የሚገኝ መሆኑን አረጋግጠው እንደገና ይሞክሩ። ችግሩ ቢቀጠል፣ መጋቢን ይጠይቁ።',
+
+# Some likely curl errors. More could be added from <http://curl.haxx.se/libcurl/c/libcurl-errors.html>
+'upload-curl-error6' => 'URLን መድረስ አልተቻለም',
+'upload-curl-error28' => 'የመላክ ጊዜ አልቋል',
+
+'license' => 'የፈቃድ አይነት፦',
+'nolicense' => 'ምንም አልተመረጠም',
+'license-nopreview' => '(ቅድመ-ዕይታ አይገኝም)',
+'upload_source_url' => ' (ትክክለኛ፣ በግልጽ የሚገኝ URL)',
+'upload_source_file' => ' (በኮምፒውተርዎ ላይ ያለበት ፋይል)',
+
+# Special:ImageList
+'imagelist_search_for' => 'ለMedia ፋይል ስም ፍለጋ፦',
+'imgfile' => 'ፋይሉ',
+'imagelist' => 'የፋይል / ሥዕሎች ዝርዝር',
+'imagelist_date' => 'ቀን እ.ኤ.አ',
+'imagelist_name' => 'የፋይል ስም',
+'imagelist_user' => 'አቅራቢው',
+'imagelist_size' => 'መጠን (byte)',
+'imagelist_description' => 'ማጠቃለያ',
+
+# Image description page
'filehist' => 'የፋይሉ ታሪክ',
'filehist-help' => 'የቀድሞው ዕትም ካለ ቀን/ሰዓቱን በመጫን መመልከት ይቻላል።',
'filehist-deleteall' => 'ሁሉን ለማጥፋት',
@@ -531,28 +919,45 @@ $1ን ወይም ማንም ሌላ [[{{MediaWiki:Grouppage-sysop}}|መጋቢ]] ስ
'linkstoimage' => 'የሚከተሉ ገጾች ወደዚሁ ፋይል ተያይዘዋል።',
'nolinkstoimage' => 'ወዲህ ፋይል የተያያዘ ገጽ የለም።',
'sharedupload' => 'ይህ ፋይል ከጋራ ምንጭ (Commons) የተቀሰመ ነው። በማንኛውም ዊኪ ላይ ሊጠቅም ይቻላል።',
+'shareduploadwiki' => 'በተጨማሪ ለመረዳት $1 ይዩ።',
'shareduploadwiki-desc' => 'በዚያ በ$1 የሚታየው መግለጫ እንዲህ ይላል፦',
'shareduploadwiki-linktext' => 'ፋይል መግለጫ ገጹ',
'noimage' => 'በዚህ ስም የሚታወቅ ፋይል የለም፤ እርስዎ ግን $1 ይችላሉ።',
'noimage-linktext' => 'ሊልኩት',
'uploadnewversion-linktext' => 'ለዚሁ ፋይል አዲስ ዕትም ለመላክ',
-'imagelist_date' => 'ቀን እ.ኤ.አ',
-'imagelist_name' => 'የፋይል ስም',
-'imagelist_user' => 'አቅራቢው',
-'imagelist_size' => 'መጠን (byte)',
-'imagelist_description' => 'ማጠቃለያ',
+
+# File reversion
+'filerevert' => '$1 ማገልበጥ',
+'filerevert-legend' => 'ፋይል ማገልበጥ',
+'filerevert-comment' => 'ማጠቃለያ፦',
+'filerevert-defaultcomment' => 'በ$2፣ $1 ወደ ነበረው ዕትም መለሰው',
+'filerevert-submit' => 'ማገልበጥ',
+'filerevert-success' => "'''[[Media:$1|$1]]''' [በ$3፣ $2 ወደ ነበረው $4 እትም] ተመልሷል።",
# File deletion
-'filedelete' => '$1 ለማጥፋት',
-'filedelete-legend' => 'ፋይልን ለማጥፋት',
-'filedelete-intro' => "'''[[Media:$1|$1]]''' ሊያጥፉ ነው።",
-'filedelete-intro-old' => '<span class="plainlinks">በ[$4 $3፣ $2] እ.ኤ.አ. የነበረው የ\'\'\'[[Media:$1|$1]]\'\'\' እትም ሊያጥፉ ነው።</span>',
-'filedelete-comment' => 'የማጥፋቱ ምክንያት፦',
-'filedelete-submit' => 'ይጥፋ',
-'filedelete-otherreason' => 'ሌላ / ተጨማሪ ምክንያት፦',
+'filedelete' => '$1 ለማጥፋት',
+'filedelete-legend' => 'ፋይልን ለማጥፋት',
+'filedelete-intro' => "'''[[Media:$1|$1]]''' ሊያጥፉ ነው።",
+'filedelete-intro-old' => "በ[$4 $3፣ $2] እ.ኤ.አ. የነበረው የ'''[[Media:$1|$1]]''' እትም ሊያጥፉ ነው።",
+'filedelete-comment' => 'የማጥፋቱ ምክንያት፦',
+'filedelete-submit' => 'ይጥፋ',
+'filedelete-success' => "'''$1''' ጠፍቷል።",
+'filedelete-success-old' => '<span class="plainlinks">በ$3፣ $2 የነበረው የ\'\'\'[[Media:$1|$1]]\'\'\' ዕትም ጠፍቷል።</span>',
+'filedelete-nofile' => "'''$1''' በ{{SITENAME}} የለም።",
+'filedelete-otherreason' => 'ሌላ / ተጨማሪ ምክንያት፦',
+'filedelete-reason-otherlist' => 'ሌላ ምክንያት',
+'filedelete-reason-dropdown' => '*ተራ የማጥፋት ምክንያቶች
+** የማብዛት ፈቃድ አለመኖር
+** የተዳገመ ፋይል ቅጂ',
+'filedelete-edit-reasonlist' => "'ተራ የማጥፋት ምክንያቶች' ለማስተካከል",
# MIME search
'mimesearch' => 'የMIME ፍለጋ',
+'mimetype' => 'የMIME አይነት፦',
+'download' => 'አውርድ',
+
+# Unwatched pages
+'unwatchedpages' => 'ያልተከታተሉ ገጾች',
# List redirects
'listredirects' => 'መምሪያ መንገዶች ሁሉ',
@@ -563,35 +968,41 @@ $1ን ወይም ማንም ሌላ [[{{MediaWiki:Grouppage-sysop}}|መጋቢ]] ስ
'unusedtemplateswlh' => 'ሌሎች መያያዣዎች',
# Random page
-'randompage' => 'ማናቸውንም ለማየት',
+'randompage' => 'ማናቸውንም ለማየት',
+'randompage-nopages' => 'በዚህ ክፍለ-ዊኪ ምንም ገጽ የለም።',
# Random redirect
-'randomredirect' => 'ማናቸውም መምሪያ መንገድ',
+'randomredirect' => 'ማናቸውም መምሪያ መንገድ',
+'randomredirect-nopages' => 'በዚህ ክፍለ-ዊኪ ምንም መምሪያ መንገድ የለም።',
# Statistics
-'statistics' => 'የዚሁ ሥራ እቅድ ዝርዝር ቁጥሮች',
-'sitestats' => 'የዚህ {{SITENAME}} ዝርዝር ቁጥሮች (Statistics)',
-'userstats' => 'ያባላት ዝርዝር ቁጥሮች',
-'sitestatstext' => "በጠቅላላው '''$1''' ገጾች በዚህ ሥራ ዕቅድ አሉ። ይኸኛው ድምር ቁጥር የሚጠቅልለው ውይይት ገጾች፣ ልዩ ገጾች፣ አጫጭር ፅሑፎች፣ መምሪያ ገጾች፣ እንዲሁም ሌሎች ይዞታ የሌለባቸው ገጾች ሁሉ ይሆናል። ከነዚህ ውጭ '''$2''' ይዞታ ያላቸው ተገቢ ፅሑፎች ይኖራሉ።
+'statistics' => 'የዚሁ ሥራ እቅድ ዝርዝር ቁጥሮች',
+'sitestats' => 'የዚህ {{SITENAME}} ዝርዝር ቁጥሮች (Statistics)',
+'userstats' => 'ያባላት ዝርዝር ቁጥሮች',
+'sitestatstext' => "በጠቅላላው '''$1''' ገጾች በዚህ ሥራ ዕቅድ አሉ። ይኸኛው ድምር ቁጥር የሚጠቅልለው ውይይት ገጾች፣ ልዩ ገጾች፣ አጫጭር ፅሑፎች፣ መምሪያ ገጾች፣ እንዲሁም ሌሎች ይዞታ የሌለባቸው ገጾች ሁሉ ይሆናል። ከነዚህ ውጭ '''$2''' ይዞታ ያላቸው ተገቢ ፅሑፎች ይኖራሉ።
ይህ ዊኪፔድያ ከተመሰረተ ጀምሮ '''$4''' ለውጦች ተደርገዋል። ስለዚህ ባማካኝ '''$5''' ለውጦች በየገጹ ይሆናል።",
-'userstatstext' => "እስከ ዛሬ ድረስ '''$1''' አባላት ገብተዋል። ከዚህ ቁጥር መካከል፣ '''$2''' (ማለት '''$4%''') መጋቢዎች ናቸው። There are '''$1''' registered users, of whom '''$2''' (or '''$4%''') are administrators (see $3).",
+'userstatstext' => "እስከ ዛሬ ድረስ '''$1''' አባላት ገብተዋል። ከዚህ ቁጥር መካከል፣ '''$2''' (ማለት '''$4%''') መጋቢዎች ናቸው። There are '''$1''' registered users, of whom '''$2''' (or '''$4%''') {{PLURAL:$2|has|have}} $5 rights.",
+'statistics-mostpopular' => 'ከሁሉ የታዩት ገጾች',
'disambiguations' => 'ወደ መንታ መንገድ የሚያያይዝ',
-'disambiguations-text' => "የሚከተሉት ጽሑፎች ወደ '''መንታ መንገድ''' እየተያያዙ ነውና ብዙ ጊዜ እንዲህ ሳይሆን ወደሚገባው ርዕስ ቢወስዱ ይሻላል። <br />መንታ መንገድ ማለት የመንታ መልጠፊያ ([[MediaWiki:disambiguationspage]]) ሲኖርበት ነው።",
+'disambiguationspage' => 'Template:መንታ',
+'disambiguations-text' => "የሚከተሉት ጽሑፎች ወደ '''መንታ መንገድ''' እየተያያዙ ነውና ብዙ ጊዜ እንዲህ ሳይሆን ወደሚገባው ርዕስ ቢወስዱ ይሻላል። <br />
+መንታ መንገድ ማለት የመንታ መልጠፊያ ([[MediaWiki:Disambiguationspage]]) ሲኖርበት ነው።",
'doubleredirects' => 'ድርብ መምሪያ መንገዶች',
'doubleredirectstext' => 'ይህ ድርብ መምሪያ መንገዶች ይዘርዘራል።
ድርብ መምሪያ መንገድ ካለ ወደ መጨረሻ መያያዣ እንዲሄድ ቢስተካከል ይሻላል።',
-'brokenredirects' => 'ሰባራ መምሪያ መንገዶች',
-'brokenredirectstext' => 'እነዚህ መምሪያ መንገዶች ወደማይኖር ጽሑፍ ይመራሉ።',
-'brokenredirects-edit' => '(ለማስተካከል)',
+'brokenredirects' => 'ሰባራ መምሪያ መንገዶች',
+'brokenredirectstext' => 'እነዚህ መምሪያ መንገዶች ወደማይኖር ጽሑፍ ይመራሉ።',
+'brokenredirects-edit' => '(ለማስተካከል)',
+'brokenredirects-delete' => '(ለማጥፋት)',
-'withoutinterwiki' => 'በሌሎች ቋንቋዎች ያልተያያዙ',
-'withoutinterwiki-header' => 'እነዚህ ጽሑፎች «በሌሎች ቋንቋዎች» ሥር ወደሆኑት ሌሎች ትርጉሞች ገና አልተያያዙም።',
-'withoutinterwiki-submit' => 'ይታዩ',
+'withoutinterwiki' => 'በሌሎች ቋንቋዎች ያልተያያዙ',
+'withoutinterwiki-summary' => 'እነዚህ ጽሑፎች «በሌሎች ቋንቋዎች» ሥር ወደሆኑት ሌሎች ትርጉሞች ገና አልተያያዙም።',
+'withoutinterwiki-submit' => 'ይታዩ',
'fewestrevisions' => 'ለውጦች ያነሱላቸው መጣጥፎች',
@@ -601,6 +1012,7 @@ $1ን ወይም ማንም ሌላ [[{{MediaWiki:Grouppage-sysop}}|መጋቢ]] ስ
'nlinks' => '$1 መያያዣዎች',
'nmembers' => '$1 {{PLURAL:$1|መጣጥፍ|መጣጥፎች}}',
'nrevisions' => '$1 ለውጦች',
+'nviews' => '$1 {{PLURAL:$1|ዕይታ|ዕይታዎች}}',
'specialpage-empty' => '(ይህ ገጽ ባዶ ነው።)',
'lonelypages' => 'ያልተያያዙ ፅሑፎች',
'lonelypagestext' => 'የሚቀጥሉት ገጾች በ{{SITENAME}} ውስጥ ከሚገኙ ሌሎች ገጾች ጋር አልተያያዙም።',
@@ -610,6 +1022,7 @@ $1ን ወይም ማንም ሌላ [[{{MediaWiki:Grouppage-sysop}}|መጋቢ]] ስ
'uncategorizedtemplates' => 'ያልተመደቡ መልጠፊያዎች',
'unusedcategories' => 'ባዶ መደቦች',
'unusedimages' => 'ያልተያያዙ ፋይሎች',
+'popularpages' => 'የሚወደዱ ገጾች',
'wantedcategories' => 'ቀይ መያያዣዎች የበዙላቸው መደቦች',
'wantedpages' => 'ቀይ መያያዣዎች የበዙላቸው አርእስቶች',
'mostlinked' => 'መያያዣዎች የበዙላቸው ገጾች',
@@ -618,23 +1031,27 @@ $1ን ወይም ማንም ሌላ [[{{MediaWiki:Grouppage-sysop}}|መጋቢ]] ስ
'mostcategories' => 'መደቦች የበዙላቸው መጣጥፎች',
'mostimages' => 'መያያዣዎች የበዙላቸው ስዕሎች',
'mostrevisions' => 'ለውጦች የበዙላቸው መጣጥፎች',
-'allpages' => 'ገጾች ሁሉ በሙሉ',
'prefixindex' => 'ገጾች በፊደል ለመፈልግ',
'shortpages' => 'ጽሁፎች ካጭሩ ተደርድረው',
'longpages' => 'ጽሁፎች ከረጅሙ ተደርድረው',
'deadendpages' => 'መያያዣ የሌለባቸው ፅሑፎች',
'deadendpagestext' => 'የሚቀጥሉት ገጾች በ{{SITENAME}} ውስጥ ከሚገኙ ሌሎች ገጾች ጋር አያያይዙም።',
'protectedpages' => 'የተቆለፉ ገጾች',
+'protectedpagestext' => 'የሚከተሉት ገጾች ከመዛወር ወይም ከመታረም ተቆልፈዋል።',
+'protectedpagesempty' => 'በዚያ ግቤት የሚቆለፍ ገጽ አሁን የለም።',
+'protectedtitles' => 'የተቆለፉ አርዕስቶች',
+'protectedtitlestext' => 'የሚከተሉት አርዕስቶች ከመፈጠር ተጠብቀዋል።',
+'protectedtitlesempty' => 'እንደዚህ አይነት አርእስት አሁን የሚቆለፍ ምንም የለም።',
'listusers' => 'አባላት',
-'specialpages' => 'ልዩ ገጾች',
-'spheading' => 'ለሰው ሁሉ የሚጠቅሙ ልዩ ገጾች',
'newpages' => 'አዳዲስ መጣጥፎች',
'newpages-username' => 'በአቅራቢው፦',
'ancientpages' => 'የቈዩ ፅሑፎች (በተለወጠበት ሰአት)',
'move' => 'ለማዛወር',
'movethispage' => 'ይህንን ገጽ ለማዛወር',
-'unusedimagestext' => '<p>እነኚህ ፋይሎች ከ{{SITENAME}} አልተያያዙም። ሆኖም ሳያጥፏቸው ከ{{SITENAME}} ውጭ በቀጥታ ተያይዘው የሚገኙ ድረ-ገጾች መኖራቸው እንደሚቻል ይገንዝቡ።</p>',
+'unusedimagestext' => 'እነኚህ ፋይሎች ከ{{SITENAME}} አልተያያዙም። ሆኖም ሳያጥፏቸው ከ{{SITENAME}} ውጭ በቀጥታ ተያይዘው የሚገኙ ድረ-ገጾች መኖራቸው እንደሚቻል ይገንዝቡ።',
'unusedcategoriestext' => 'እነዚህ መደብ ገጾች ባዶ ናቸው። ምንም ጽሑፍ ወይም ግንኙነት የለባቸውም።',
+'notargettitle' => 'ምንም ግብ የለም',
+'notargettext' => 'ይህ ተግባር የሚፈጽምበት ምንም ግብ (አላማ) ገጽ ወይም አባል አልወሰኑም።',
'pager-newer-n' => '{{PLURAL:$1|ኋለኛ 1|ኋለኛ $1}}',
'pager-older-n' => '{{PLURAL:$1|ፊተኛ 1|ፊተኛ $1}}',
@@ -643,56 +1060,76 @@ $1ን ወይም ማንም ሌላ [[{{MediaWiki:Grouppage-sysop}}|መጋቢ]] ስ
'booksources-search-legend' => 'የመጽሐፍ ቦታ ፍለጋ',
'booksources-isbn' => 'የመጽሐፉ ISBN #:',
'booksources-go' => 'ይሂድ',
-
-'categoriespagetext' => 'በዚሁ ሥራ ዕቅድ ውስጥ የሚከተሉ መደቦች ይኖራሉ።',
-'isbn' => 'በመጽሐፉ ISBN ቁጥር # ለመፈለግ',
-'alphaindexline' => '$1 እስከ $2 ድረስ',
-'version' => 'ዝርያ',
+'booksources-text' => 'ከዚህ ታች ያሉት ውጭ መያያዦች መጻሕፍት ይሸጣሉ፤ ስለ ተፈለጉት መጻሕፍት ተጨማሪ መረጃ እዚያ እንደሚገኝ ይሆናል።',
# Special:Log
'specialloguserlabel' => 'ብዕር ስም፡',
'speciallogtitlelabel' => 'አርዕስት፡',
'log' => 'Logs / መዝገቦች',
'all-logs-page' => 'All logs - መዝገቦች ሁሉ',
+'log-search-legend' => 'ለመዝገቦች መፈለግ',
+'log-search-submit' => 'ሂድ',
'alllogstext' => 'ይኸው መዝገብ ሁሉንም ያጠቅልላል። 1) የፋይሎች መዝገብ 2) የማጥፋት መዝገብ 3) የመቆለፍ መዝገብ 4) የማገድ መዝገብ 5) የመጋቢ አድራጎት መዝገቦች በያይነቱ ናቸው።
ከሳጥኑ የተወሰነ መዝገብ አይነት መምረጥ ይችላሉ። ከዚያ ጭምር በብዕር ስም ወይም በገጽ ስም መፈለግ ይቻላል።',
'logempty' => '(በመዝገቡ ምንም የለም...)',
+'log-title-wildcard' => 'ከዚህ ፊደል ጀምሮ አርዕስቶችን ለመፈልግ',
+
+# Special:AllPages
+'allpages' => 'ገጾች ሁሉ በሙሉ',
+'alphaindexline' => '$1 እስከ $2 ድረስ',
+'nextpage' => 'የሚቀጥለው ገጽ (ከ$1 ጀምሮ)',
+'prevpage' => 'ፊተኛው ገጽ (ከ$1 ጀምሮ)',
+'allpagesfrom' => 'ገጾች ከዚሁ ፊደል ጀምሮ ይታዩ፦',
+'allarticles' => 'የመጣጥፎች ማውጫ በሙሉ፣',
+'allinnamespace' => 'ገጾች ሁሉ (ክፍለ-ዊኪ፡$1)',
+'allnotinnamespace' => 'ገጾች ሁሉ (በክፍለ-ዊኪ፡$1 ያልሆኑት)',
+'allpagesprev' => 'ቀድመኛ',
+'allpagesnext' => 'ቀጥሎ',
+'allpagessubmit' => 'ይታይ',
+'allpagesprefix' => 'በዚሁ ፊደል የጀመሩት ገጾች:',
+'allpages-bad-ns' => 'በ{{SITENAME}} «$1» የሚባል ክፍለዊኪ የለም።',
+
+# Special:Categories
+'categories' => 'ምድቦች',
+'categoriespagetext' => 'በዚሁ ሥራ ዕቅድ ውስጥ የሚከተሉ መደቦች ይኖራሉ።',
-# Special:Allpages
-'nextpage' => 'የሚቀጥለው ገጽ (ከ$1 ጀምሮ)',
-'prevpage' => 'ፊተኛው ገጽ (ከ$1 ጀምሮ)',
-'allpagesfrom' => 'ገጾች ከዚሁ ፊደል ጀምሮ ይታዩ፦',
-'allarticles' => 'የመጣጥፎች ማውጫ በሙሉ፣',
-'allinnamespace' => 'ገጾች ሁሉ (ክፍለ-ዊኪ፡$1)',
-'allpagessubmit' => 'ይታይ',
-'allpagesprefix' => 'በዚሁ ፊደል የጀመሩት ገጾች:',
-
-# Special:Listusers
-'listusersfrom' => 'ከዚሁ ፊደል ጀምሮ፦',
+# Special:ListUsers
+'listusersfrom' => 'ከዚሁ ፊደል ጀምሮ፦',
+'listusers-submit' => 'ይታይ',
+'listusers-noresult' => 'ማንም ተጠቃሚ አልተገኘም።',
# E-mail user
-'emailuser' => 'ለዚህ/ች ሰው ኢሜል መላክ',
-'emailpage' => 'ወደዚህ/ች አባል ኢ-ሜል ለመላክ',
-'emailpagetext' => 'አባሉ በሳቸው «ምርጫዎች» ክፍል ተግባራዊ ኢ-ሜል አድራሻ ያስገቡ እንደሆነ፣ ከታች ያለው ማመልከቻ አንድን ደብዳቤ በቀጥታ ይልካቸዋል።
+'mailnologin' => 'ምንም መነሻ አድራሻ የለም',
+'mailnologintext' => 'ኢ-ሜል ወደ ሌላ አባል ለመላክ [[Special:UserLogin|መግባት]]ና በ[[Special:Preferences|ምርጫዎችዎ]] ትክክለኛ የኢሜል አድራሻዎ መኖር ያስፈልጋል።',
+'emailuser' => 'ለዚህ/ች ሰው ኢሜል መላክ',
+'emailpage' => 'ወደዚህ/ች አባል ኢ-ሜል ለመላክ',
+'emailpagetext' => 'አባሉ በሳቸው «ምርጫዎች» ክፍል ተግባራዊ ኢ-ሜል አድራሻ ያስገቡ እንደሆነ፣ ከታች ያለው ማመልከቻ አንድን ደብዳቤ በቀጥታ ይልካቸዋል።
ተቀባዩም መልስ በቀጥታ ሊሰጡዎ እንዲችሉ፣ በእርስዎ «ምርጫዎች» ክፍል ያስገቡት ኢ-ሜል አድራሻ በደብዳቤዎ «From:» መስመር ይታይላቸዋል።',
-'noemailtitle' => 'ኢ-ሜል አይቻልም',
-'noemailtext' => 'ለዚህ/ች አባል ኢ-ሜል መላክ አይቻልም። ወይም ተገቢ ኢ-ሜል አድራሻ የለንም፣ ወይም ከሰው ምንም ኢ-ሜል መቀበል አልወደደ/ችም።',
-'emailfrom' => 'ከ',
-'emailto' => 'ለ',
-'emailsubject' => 'ርዕሰ ጉዳይ',
-'emailmessage' => 'መልእክት',
-'emailsend' => 'ይላክ',
-'emailccme' => 'አንድ ቅጂ ደግሞ ለራስዎ ኢ-ሜል ይላክ።',
+'defemailsubject' => '{{SITENAME}} Email / ኢ-ሜል',
+'noemailtitle' => 'ኢ-ሜል አይቻልም',
+'noemailtext' => 'ለዚህ/ች አባል ኢ-ሜል መላክ አይቻልም። ወይም ተገቢ ኢ-ሜል አድራሻ የለንም፣ ወይም ከሰው ምንም ኢ-ሜል መቀበል አልወደደ/ችም።',
+'emailfrom' => 'ከ',
+'emailto' => 'ለ',
+'emailsubject' => 'ርዕሰ ጉዳይ',
+'emailmessage' => 'መልእክት',
+'emailsend' => 'ይላክ',
+'emailccme' => 'አንድ ቅጂ ደግሞ ለራስዎ ኢ-ሜል ይላክ።',
+'emailccsubject' => 'ወደ $1 የመልዕክትዎ ቅጂ፦ $2',
+'emailsent' => 'ኢ-ሜል ተልኳል።',
+'emailsenttext' => 'ኢ-ሜል መልዕክትዎ ተልኳል።',
# Watchlist
'watchlist' => 'የምከታተላቸው ገጾች፤',
'mywatchlist' => 'የምከታተላቸው ገጾች፤',
'watchlistfor' => "(ለ'''$1''')",
'nowatchlist' => 'ዝርዝርዎ ባዶ ነው። ምንም ገጽ ገና አልተጨመረም።',
+'watchlistanontext' => 'የሚከታተሉት ገጾች ዝርዝርዎን ለመመልከት ወይም ለማስተካከል እባክዎ $1።',
+'watchnologin' => 'ገና አልገቡም',
+'watchnologintext' => 'የሚከታተሏቸውን ገጾች ዝርዝር ለመቀየር [[Special:UserLogin|መግባት]] ይኖርብዎታል።',
'addedwatch' => 'ወደሚከታተሉት ገጾች ተጨመረ',
-'addedwatchtext' => "ገጹ «$1» [[Special:Watchlist|ለሚከታተሉት ገጾች]] ተጨምሯል። ወደፊት ይህ ገጽ ወይም የውይይቱ ገጽ ሲቀየር፣ በዚያ ዝርዝር ላይ ይታያል። በተጨማሪም [[Special:Recentchanges|«በቅርብ ጊዜ በተለወጡ» ገጾች]] ዝርዝር፣ በቀላሉ እንዲታይ በ'''ጨለማ ጽህፈት''' ተጽፎ ይገኛል።
+'addedwatchtext' => "ገጹ «$1» [[Special:Watchlist|ለሚከታተሉት ገጾች]] ተጨምሯል። ወደፊት ይህ ገጽ ወይም የውይይቱ ገጽ ሲቀየር፣ በዚያ ዝርዝር ላይ ይታያል። በተጨማሪም [[Special:RecentChanges|«በቅርብ ጊዜ በተለወጡ» ገጾች]] ዝርዝር፣ በቀላሉ እንዲታይ በ'''ጨለማ ጽህፈት''' ተጽፎ ይገኛል።
በኋላ ጊዜ ገጹን ከሚከታተሉት ገጾች ለማስወግድ የፈለጉ እንደሆነ፣ በጫፉ ዳርቻ «አለመከታተል» የሚለውን ይጫኑ።",
'removedwatch' => 'ከሚከታተሉት ገጾች ተወገደ',
@@ -700,8 +1137,15 @@ $1ን ወይም ማንም ሌላ [[{{MediaWiki:Grouppage-sysop}}|መጋቢ]] ስ
'watch' => 'ለመከታተል',
'watchthispage' => 'ይህንን ገጽ ለመከታተል',
'unwatch' => 'አለመከታተል',
+'unwatchthispage' => 'መከታተል ይቅር',
+'notanarticle' => 'መጣጥፍ አይደለም',
+'notvisiblerev' => 'ዕትሙ ጠፍቷል',
'watchnochange' => 'ከተካከሉት ገጾች አንዳችም በተወሰነው ጊዜ ውስጥ አልተለወጠም።',
'watchlist-details' => 'አሁን በሙሉ {{PLURAL:$1|$1 ገጽ|$1 ገጾች}} እየተከታተሉ ነው።',
+'wlheader-enotif' => '* የ-ኢሜል ማስታወቂያ እንዲሠራ ተደርጓል።',
+'wlheader-showupdated' => "* መጨረሻ ከጎበኟቸው ጀምሮ የተቀየሩት ገጾች በ'''ጨለማ ጽሕፈት''' ይታያሉ",
+'watchmethod-recent' => 'የቅርብ ለውጦችን ለሚከታተሉት ገጾች በመፈለግ',
+'watchmethod-list' => 'የሚከታተሉትን ገጾች ለቅርብ ለውጦች በመፈለግ',
'watchlistcontains' => 'አሁን በሙሉ $1 ገጾች እየተከታተሉ ነው።',
'wlnote' => 'ባለፉት <b>$2</b> ሰዓቶች የተደረጉት $1 መጨረሻ ለውጦች እታች ይገኛሉ።',
'wlshowlast' => 'ያለፉት $1 ሰዓት፤ $2 ቀን፤ $3 ይታዩ።',
@@ -712,16 +1156,50 @@ $1ን ወይም ማንም ሌላ [[{{MediaWiki:Grouppage-sysop}}|መጋቢ]] ስ
'watchlist-show-minor' => "'ጥ' (ጥቃቅን) ለውጦች ይታዩ",
'watchlist-hide-minor' => "'ጥ' (ጥቃቅን) ለውጦች ይደበቁ",
-# Displayed when you click the "watch" button and it's in the process of watching
+# Displayed when you click the "watch" button and it is in the process of watching
'watching' => 'እየተጨመረ ነው...',
'unwatching' => 'እየተወገደ ነው...',
+'enotif_mailer' => 'የ{{SITENAME}} ኢሜል-ማስታወቂያ',
+'enotif_reset' => 'ገጾች ሁሉ የተጎበኙ ሆነው ለማመልከት',
+'enotif_newpagetext' => 'ይህ አዲስ ገጽ ነው።',
+'enotif_impersonal_salutation' => '{{SITENAME}} ተጠቃሚ',
+'changed' => 'ተለወጠ',
+'created' => 'ተፈጠረ',
+'enotif_subject' => 'የ{{SITENAME}} ገጽ $PAGETITLE በ$PAGEEDITOR $CHANGEDORCREATED',
+'enotif_lastvisited' => 'መጨረሻ ከጎበኙ ጀምሮ ለውጦችን ሁሉ ለመመልከት $1 ይዩ።',
+'enotif_lastdiff' => 'ይህን ለውጥ ለማመልከት $1 ይዩ።',
+'enotif_anon_editor' => 'ቁጥር አድራሻ $1',
+'enotif_body' => 'ለ$WATCHINGUSERNAME ይድረስ፣
+
+
+የ{{SITENAME}} ገጽ $PAGETITLE በ$PAGEEDITDATE በ$PAGEEDITOR $CHANGEDORCREATED፤ ለአሁኑኑ እትም $PAGETITLE_URL ይዩ።
+
+$NEWPAGE
+
+የአዛጋጁ ማጠቃለያ፦ $PAGESUMMARY $PAGEMINOREDIT
+
+አዛጋጁን ለማገናኘት፦
+በኢ-ሜል፦ $PAGEEDITOR_EMAIL
+በዊኪ፦ $PAGEEDITOR_WIKI
+
+ገጹን ካልጎበኙ በቀር ምንም ሌላ ኢሜል-ማስታወቂያ አይሰጥም። ደግሞ በተከታተሉት ገጾች ዝርዝር ላለው ገጽ ሁሉ የኢሜል-ማስታወቂያውን ሁኔታ ማስተካከል ይችላሉ።
+
+ ከክብር ጋር፣ የ{{SITENAME}} ኢሜል-ማስታወቂያ መርሃግብር።
+
+--
+የሚከታተሉት ገጾች ዝርዝር ለመቀየር፣ {{fullurl:{{ns:special}}:Watchlist/edit}} ይጎበኙ።
+
+በተጨማሪ ለመረዳት፦
+{{fullurl:{{MediaWiki:Helppage}}}}',
+
# Delete/protect/revert
'deletepage' => 'ገጹ ይጥፋ',
'confirm' => 'ማረጋገጫ',
'excontent' => 'ይዞታ፦ «$1» አለ።',
'excontentauthor' => "ይዞታ '$1' አለ (የጻፈበትም '$2' ብቻ ነበር)",
'exbeforeblank' => 'ባዶ፤ ከተደመሰሰ በፊት ይዞታው «$1» አለ።',
+'exblank' => 'ገጹ ባዶ ነበረ።',
'delete-confirm' => '«$1» ለማጥፋት',
'delete-legend' => 'ለማጥፋት',
'historywarning' => 'ማስጠንቀቂያ፦ ለዚሁ ገጽ የዕትም ታሪክ ደግሞ ሊጠፋ ነው! :',
@@ -731,28 +1209,44 @@ $1ን ወይም ማንም ሌላ [[{{MediaWiki:Grouppage-sysop}}|መጋቢ]] ስ
(የጠፉትን ገጾች ሁሉ ለመመልከት $2 ይዩ።)',
'deletedarticle' => '«[[$1]]» አጠፋ',
-'dellogpage' => 'የማጥፋት መዝገብ (del log)',
+'dellogpage' => 'የማጥፋት መዝገብ',
'dellogpagetext' => 'በቅርቡ የጠፉት ገጾች ከዚህ ታች የዘረዝራሉ።',
'deletionlog' => 'የማጥፋት መዝገብ',
+'reverted' => 'ወደ ቀድመኛ ዕትም ገለበጠው።',
'deletecomment' => 'የማጥፋቱ ምክንያት፦',
'deleteotherreason' => 'ሌላ /ተጨማሪ ምክንያት',
'deletereasonotherlist' => 'ሌላ ምክንያት',
+'deletereason-dropdown' => '*ተራ የማጥፋት ምክንያቶች
+** በአቅራቢው ጥያቄ
+** ማብዛቱ ያልተፈቀደለት ጽሑፍ
+** ተንኮል',
+'delete-edit-reasonlist' => "'ተራ የማጥፋት ምክንያቶች' ለማዘጋጀት",
+'rollback' => 'ለውጦቹ ይገልበጡ',
+'rollback_short' => 'ይመለስ',
'rollbacklink' => 'ROLLBACK ይመለስ',
+'rollbackfailed' => 'መገልበጡ አልተከናወነም',
+'cantrollback' => 'ለውጡን መገልበጥ አይቻልም፦ አቅራቢው ብቻ ስላዘጋጁት ነው።',
+'alreadyrolled' => 'የ[[:$1]] መጨረሻ ለውጥ በ[[User:$2|$2]] ([[User talk:$2|ውይይት]]) መገልበት አይቻልም፤ ሌላ ሰው አሁን ገጹን መልሶታል።
+
+መጨረሻው ለውጥ በ[[User:$3|$3]] ([[User talk:$3|ውይይት]]) ነበረ።',
+'editcomment' => 'ማጠቃለያው፦ «<i>$1</i>» ነበረ።', # only shown if there is an edit comment
'revertpage' => 'የ$2ን ለውጦች ወደ $1 እትም መለሰ።', # Additional available: $3: revid of the revision reverted to, $4: timestamp of the revision reverted to, $5: revid of the revision reverted from, $6: timestamp of the revision reverted from
'rollback-success' => 'የ$1 ለውጦች ተገለበጡ፣ ወደ $2 ዕትም ተመልሷል።',
-'protectlogpage' => 'የማቆለፍ መዝገብ (prot. log)',
-'protectlogtext' => 'ይህ መዝገብ ገጽ ሲቆለፍ ወይም ሲከፈት ይዘረዝራል። ለአሁኑ የተቆለፈውን ለመመልከት፣ [[Special:Protectedpages|የቆለፉትን ገጾች]] ደግሞ ያዩ።',
+'protectlogpage' => 'የማቆለፍ መዝገብ',
+'protectlogtext' => 'ይህ መዝገብ ገጽ ሲቆለፍ ወይም ሲከፈት ይዘረዝራል። ለአሁኑ የተቆለፈውን ለመመልከት፣ [[Special:ProtectedPages|የቆለፉትን ገጾች]] ደግሞ ያዩ።',
'protectedarticle' => 'ገጹን «[[$1]]» ቆለፈው።',
'modifiedarticleprotection' => 'የመቆለፍ ደረጃ ለ«[[$1]]» ቀየረ።',
'unprotectedarticle' => 'ገጹን «[[$1]]» ፈታ።',
-'protectsub' => '(ለ«$1» የመቆለፍ ደረጃ ለማስተካከል)',
-'confirmprotect' => 'የመቆለፍ ማረጋገጫ',
+'protect-title' => 'ለ«$1» የመቆለፍ ደረጃ ለማስተካከል',
+'protect-legend' => 'የመቆለፍ ማረጋገጫ',
'protectcomment' => 'ማጠቃለያ፦',
'protectexpiry' => 'የሚያልቅበት ግዜ፦',
'protect_expiry_invalid' => "የተሰጠው 'የሚያልቅበት ጊዜ' ልክ አይደለም።",
'protect_expiry_old' => "የተሰጠው 'የሚያልቅበት ጊዜ' ባለፈው ግዜ ነበር።",
'protect-unchain' => 'ገጹን የማዛወር ፈቃዶች ለመፍታት',
'protect-text' => 'እዚህ ለገጹ «<strong><nowiki>$1</nowiki></strong>» የመቆለፍ ደረጃ መመልከት ወይም መቀይር ይችላሉ።',
+'protect-locked-blocked' => 'ማገጃ እያለብዎት የመቆለፍ ደረጃ ለመቀየር አይችሉም። ለገጹ <strong>$1</strong> የአሁኑኑ ደረጃ እንዲህ ነው፦',
+'protect-locked-dblock' => 'መረጃ-ቤቱ እራሱ አሁን ስለሚቆለፍ፣ የገጽ መቆለፍ ደረጃ ሊቀየር አይችልም። ለገጹ <strong>$1</strong> የአሁኑኑ ደረጃ እንዲህ ነው፦',
'protect-locked-access' => 'እርስዎ ገጽ የመቆለፍ ወይም የመፍታት ፈቃድ የለዎም።<br />አሁኑ የዚሁ ገጽ መቆለፍ ደረጃ እንዲህ ነው፦ <strong>$1</strong>:',
'protect-cascadeon' => 'ይህ ገጽ ወደ ተከለከሉት አርእስቶች ተጨምሯል። የመቆለፍ ደረጃ እዚህ መቀየር ቢቻልዎም ገጹ ግን በሚከተለው ድርብ የተቆለፈ ገጽ ውስጥ ይጨመራል።',
'protect-default' => '(እንደ ወትሮ)',
@@ -766,7 +1260,7 @@ $1ን ወይም ማንም ሌላ [[{{MediaWiki:Grouppage-sysop}}|መጋቢ]] ስ
'restriction-type' => 'ፈቃድ፦',
'restriction-level' => 'የመቆለፍ ደረጃ፦',
'minimum-size' => 'ቢያንስ',
-'maximum-size' => 'ቢበዛ',
+'maximum-size' => 'ቢበዛ፦',
'pagesize' => 'byte መጠን ያለው ሁሉ',
# Restrictions (nouns)
@@ -776,15 +1270,41 @@ $1ን ወይም ማንም ሌላ [[{{MediaWiki:Grouppage-sysop}}|መጋቢ]] ስ
# Restriction levels
'restriction-level-sysop' => 'በሙሉ ተቆልፎ',
'restriction-level-autoconfirmed' => 'በከፊል ተቆልፎ',
+'restriction-level-all' => 'ማንኛውም ደረጃ',
# Undelete
-'undelete' => 'የተደለዘ ገጽ ለመመለስ',
-'undeletepage' => 'የተደለዘ ገጽ ለመመለስ',
-'undeleteextrahelp' => "እትሞቹን በሙሉ ለመመልስ፣ ሳጥኖቹ ሁሉ ባዶ ሆነው ይቆዩና 'ይመለስ' የሚለውን ይጫኑ። <br/>አንዳንድ እትም ብቻ ለመመልስ፣ የተፈለገውን እትሞች በየሳጥኖቹ አመልክተው 'ይመለስ' ይጫኑ። <br/>'ባዶ ይደረግ' ቢጫን፣ ማጠቃልያውና ሳጥኖቹ ሁሉ እንደገና ባዶ ይሆናሉ።",
-'undeletebtn' => 'ይመለስ',
-'undeletelink' => 'ይመለስ',
-'undeletereset' => 'ባዶ ይደረግ',
-'undeletecomment' => 'ማጠቃልያ፦',
+'undelete' => 'የተደለዘ ገጽ ለመመለስ',
+'undeletepage' => 'የተደለዘ ገጽ ለመመለስ',
+'viewdeletedpage' => 'የተደለዙ ገጾች ለማየት',
+'undeletepagetext' => 'እነዚህ ገጾች ተደለዙ፣ እስካሁን ግን በመዝገቡ ውስጥ ይገኛሉና ሊመለሱ ይቻላል። ሆኖም መዝገቡ አንዳንዴ ሊደመስስ ይቻላል።',
+'undeleteextrahelp' => "እትሞቹን በሙሉ ለመመልስ፣ ሳጥኖቹ ሁሉ ባዶ ሆነው ይቆዩና 'ይመለስ' የሚለውን ይጫኑ። <br />አንዳንድ እትም ብቻ ለመመልስ፣ የተፈለገውን እትሞች በየሳጥኖቹ አመልክተው 'ይመለስ' ይጫኑ። <br />'ባዶ ይደረግ' ቢጫን፣ ማጠቃልያውና ሳጥኖቹ ሁሉ እንደገና ባዶ ይሆናሉ።",
+'undeleterevisions' => 'በመዝገቡ $1 {{PLURAL:$1|ዕትም አለ|ዕትሞች አሉ}}',
+'undeletehistory' => 'የተደለዘ ገጽ ሲመለስ፣ የተመለከቱት ዕትሞች ሁሉ ወደ ዕትሞች ታሪክ ደግሞ ይመልሳሉ። ገጹ ከጠፋ በኋላ በዚያ አርዕሥት ሌላ ገጽ ቢኖር፣ የተመለሱት ዕትሞች ወደ ዕትሞች ታሪክ አንድላይ ይጨመራሉ።',
+'undeletehistorynoadmin' => 'ይህ ገጽ ጠፍቷል። የመጥፋቱ ምክንያት ከዚህ በታች ይታያል። ደግሞ ከጠፋ በፊት ያዘጋጁት ተጠቃሚዎች ይዘረዘራሉ። የተደለዙት ዕትሞች ጽሕፈት ለመጋቢዎች ብቻ ሊታይ ይችላል።',
+'undelete-revision' => 'የ$1 የተደለዘ ዕትም በ$2 በ$3፦',
+'undelete-nodiff' => 'ቀድመኛ ዕትም አልተገኘም።',
+'undeletebtn' => 'ይመለስ',
+'undeletelink' => 'ይመለስ',
+'undeletereset' => 'ባዶ ይደረግ',
+'undeletecomment' => 'ማጠቃልያ፦',
+'undeletedarticle' => '«[[$1]]»ን መለሰ',
+'undeletedrevisions' => '{{PLURAL:$1|1 ዕትም|$1 ዕትሞች}} መለሰ',
+'undeletedrevisions-files' => '{{PLURAL:$1|1 ዕትም|$1 ዕትሞች}} እና {{PLURAL:$2|1 ፋይል|$2 ፋይሎች}} መለሰ',
+'undeletedfiles' => '{{PLURAL:$1|1 ፋይል|$1 ፋይሎች}} መለሰ',
+'cannotundelete' => 'መመለሱ አልተከናወነም፤ ምናልባት ሌላ ሰው ገጹን አስቀድሞ መልሶታል።',
+'undeletedpage' => "<big>'''$1 ተመልሷል'''</big>
+
+በቅርብ የጠፉና የተመለሱ ገጾች ለማመልከት [[Special:Log/delete|የማጥፋቱን መዝገብ]] ይዩ።",
+'undelete-header' => 'በቅርብ ግዜ የተደለዙትን ገጾች ለማመልከት [[Special:Log/delete|የማጥፋቱን መዝገብ]] ይዩ።',
+'undelete-search-box' => 'የተደለዙትን ገጾች ለመፈልግ',
+'undelete-search-prefix' => 'ከዚሁ ፊደል ጀምሮ፦',
+'undelete-search-submit' => 'ይታይ',
+'undelete-no-results' => 'በመዝገቡ ምንም ተመሳሳይ ገጽ አልተገኘም።',
+'undelete-filename-mismatch' => 'በጊዜ ማህተም $1 ያለው እትም መመልስ አልተቻለም፤ የፋይል ስም አለመስማማት',
+'undelete-error-short' => 'ፋይል የመመለስ ስኅተት፦ $1',
+'undelete-error-long' => 'ፋይሉ በመመለስ ስኅተቶች ተነሡ፦
+
+$1',
# Namespace form on various pages
'namespace' => 'ዓይነት፦',
@@ -807,16 +1327,14 @@ $1ን ወይም ማንም ሌላ [[{{MediaWiki:Grouppage-sysop}}|መጋቢ]] ስ
'sp-contributions-username' => 'ብዕር ስም ወይም የቁ. አድራሻ፦',
'sp-contributions-submit' => 'ፍለጋ',
-'sp-newimages-showfrom' => 'ከ$1 እኤአ ጀምሮ አዲስ ይታዩ',
-
# What links here
'whatlinkshere' => 'ወዲህ የሚያያዝ',
'whatlinkshere-title' => 'ወደ «$1» የሚያያዙት ገጾች',
'whatlinkshere-page' => 'ለገጽ (አርዕስት)፦',
'linklistsub' => '(ወዲህ የሚያያዝ)',
-'linkshere' => 'የሚከተሉት ገጾች ወደዚሁ ተያይዘዋል።',
-'nolinkshere' => 'ወዲህ የተያያዘ ገጽ የለም።',
-'nolinkshere-ns' => 'ባመለከቱት ክፍለ-ዊኪ ወዲህ የተያያዘ ገጽ የለም።',
+'linkshere' => "የሚከተሉት ገጾች ወደ '''[[:$1]]''' ተያይዘዋል።",
+'nolinkshere' => "ወደ '''[[:$1]]''' የተያያዘ ገጽ የለም።",
+'nolinkshere-ns' => "ባመለከቱት ክፍለ-ዊኪ ወደ '''[[:$1]]''' የተያያዘ ገጽ የለም።",
'isredirect' => 'መምሪያ መንገድ',
'istemplate' => 'የተሰካ',
'whatlinkshere-prev' => 'ፊተኛ $1',
@@ -824,94 +1342,193 @@ $1ን ወይም ማንም ሌላ [[{{MediaWiki:Grouppage-sysop}}|መጋቢ]] ስ
'whatlinkshere-links' => '← ወዲህም የሚያያዝ',
# Block/unblock
-'blockip' => 'ተጠቃሚውን ለማገድ',
-'blockiptext' => 'ከዚህ ታች ያለው ማመልከቻ በአንድ ቁጥር አድርሻ ወይም ብዕር ስም ላይ ማገጃ (ማዕቀብ) ለመጣል ይጠቀማል። ይህ በ[[{{MediaWiki:Policy-url}}|መርመርያዎቻችን]] መሠረት ተንኮል ወይም ጉዳት ለመከልከል ብቻ እንዲደረግ ይገባል። ከዚህ ታች የተለየ ምክንያት (ለምሣሌ የተጎዳው ገጽ በማጠቆም) ይጻፉ።',
-'ipadressorusername' => 'የቁ. አድራሻ ወይም የብዕር ስም፦',
-'ipbexpiry' => 'የሚያልቅበት፦',
-'ipbother' => 'ሌላ የተወሰነ ግዜ፦',
-'ipboptions' => '2 ሰዓቶች:2 hours,1 ቀን:1 day,3 ቀን:3 days,1 ሳምንት:1 week,2 ሳምንት:2 weeks,1 ወር:1 month,3 ወር:3 months,6 ወር:6 months,1 አመት:1 year,ዘላለም:infinite', # display1:time1,display2:time2,...
-'ipbotheroption' => 'ሌላ',
-'ipblocklist' => 'የአሁኑ ማገጃዎች ዝርዝር',
-'ipblocklist-legend' => 'አንድ የታገደውን ተጠቃሚ ለመፈለግ፦',
-'ipblocklist-username' => 'ይህ ብዕር ስም ወይም የቁጥር አድራሻ #፡',
-'ipblocklist-submit' => 'ይፈለግ',
-'blocklistline' => '$1 (እ.ኤ.አ.)፦ $2 በ$3 ላይ ማገጃ ጣለ ($4)',
-'expiringblock' => 'በ$1 እ.ኤ.አ. ያልቃል',
-'anononlyblock' => 'ያልገቡት የቁ.# ብቻ',
-'createaccountblock' => 'ስም ከማውጣት ተከለከለ',
-'blocklink' => 'ማገጃ',
-'unblocklink' => 'ማገጃ ለመንሣት',
-'contribslink' => 'አስተዋጽኦች',
-'blocklogpage' => 'የማገጃ መዝገብ (blocklog)',
-'blocklogentry' => 'እስከ $2 ድረስ [[$1]] አገዳ $3',
-'blocklogtext' => 'ይህ መዝገብ ተጠቃሚዎች መቸም ሲታገዱ ወይም ማገጃ ሲነሣ የሚዘረዝር ነው። ለአሁኑ የታገዱት ሰዎች [[Special:Ipblocklist|በአሁኑ ማገጃዎች ዝርዝር]] ይታያሉ።',
-'unblocklogentry' => 'የ$1 ማገጃ አነሣ',
-'block-log-flags-anononly' => 'ያልገቡት የቁ. አድራሻዎች ብቻ',
-'block-log-flags-nocreate' => 'አዲስ ብዕር ስም ከማውጣት ተከለከለ',
+'blockip' => 'ተጠቃሚውን ለማገድ',
+'blockip-legend' => 'ተጠቃሚ ለማገድ',
+'blockiptext' => 'ከዚህ ታች ያለው ማመልከቻ በአንድ ቁጥር አድርሻ ወይም ብዕር ስም ላይ ማገጃ (ማዕቀብ) ለመጣል ይጠቀማል። ይህ በ[[{{MediaWiki:Policy-url}}|መርመርያዎቻችን]] መሠረት ተንኮል ወይም ጉዳት ለመከልከል ብቻ እንዲደረግ ይገባል። ከዚህ ታች የተለየ ምክንያት (ለምሣሌ የተጎዳው ገጽ በማጠቆም) ይጻፉ።',
+'ipaddress' => 'የቁ. አድራሻ፦',
+'ipadressorusername' => 'የቁ. አድራሻ ወይም የብዕር ስም፦',
+'ipbexpiry' => 'የሚያልቅበት፦',
+'ipbreason' => 'ምክንያቱ፦',
+'ipbreasonotherlist' => 'ሌላ ምክንያት',
+'ipbreason-dropdown' => "*ተራ የማገጃ ምክንያቶች
+** የሀሠት መረጃ መጨምር
+** ከገጾች ይዞታውን መደምሰስ
+** የ'ስፓም' ማያያዣ ማብዛት
+** እንቶ ፈንቶ መጨምር
+** ዛቻ ማብዛት
+** በአድራሻዎች ብዛት መተንኮል
+** የማይገባ ብዕር ስም",
+'ipbanononly' => 'በቁ.# የሚታወቅ ተጠቃሚ ብቻ ለመከልከል',
+'ipbcreateaccount' => 'ብዕር ስም እንዳያውጣ ለመከልከል',
+'ipbemailban' => 'ተጠቃሚው ኢ-ሜል ከመላክ ይከለከል',
+'ipbenableautoblock' => 'በተጠቃሚው መጨረሻ ቁ.# እና ካሁን ወዲያ በሚጠቀመው አድራሻ ላይ ማገጃ ይጣል።',
+'ipbsubmit' => 'ማገጃ ለመጣል',
+'ipbother' => 'ሌላ የተወሰነ ግዜ፦',
+'ipboptions' => '2 ሰዓቶች:2 hours,1 ቀን:1 day,3 ቀን:3 days,1 ሳምንት:1 week,2 ሳምንት:2 weeks,1 ወር:1 month,3 ወር:3 months,6 ወር:6 months,1 አመት:1 year,ዘላለም:infinite', # display1:time1,display2:time2,...
+'ipbotheroption' => 'ሌላ',
+'ipbotherreason' => 'ሌላ/ተጨማሪ ምክንያት፦',
+'badipaddress' => 'የማይሆን የቁ. አድራሻ',
+'blockipsuccesssub' => 'ማገጃ ተከናወነ',
+'blockipsuccesstext' => '[[Special:Contributions/$1|$1]] ታግዷል።<br />
+ማገጃዎች ለማመልከት [[Special:IPBlockList|የማገጃ ዝርዝሩን]] ይዩ።',
+'ipb-edit-dropdown' => "'ተራ የማገጃ ምክንያቶች' ለማስተካከል",
+'ipb-unblock-addr' => 'ከ$1 መገጃ ለማንሣት',
+'ipb-unblock' => 'ከብዕር ስም ወይም ከቁ. አድራሻ ማገጃ ለማንሣት',
+'ipb-blocklist-addr' => 'በ$1 ላይ አሁን ያለውን ማገጃ ለመመልከት',
+'ipb-blocklist' => 'አሁን ያሉትን ማገጃዎች ለመመልከት',
+'unblockip' => 'ከተጠቃሚ ማገጃ ለማንሣት',
+'unblockiptext' => 'በዚህ ማመልከቻ ከታገደ ተጠቃሚ ማገጃውን ለማንሣት ይቻላል።',
+'ipusubmit' => 'ማገጃውን ለማንሣት',
+'unblocked' => 'ማገጃ ከ[[User:$1|$1]] ተነሣ',
+'unblocked-id' => 'ማገጃ $1 ተነሣ',
+'ipblocklist' => 'የአሁኑ ማገጃዎች ዝርዝር',
+'ipblocklist-legend' => 'አንድ የታገደውን ተጠቃሚ ለመፈለግ፦',
+'ipblocklist-username' => 'ይህ ብዕር ስም ወይም የቁጥር አድራሻ #፡',
+'ipblocklist-submit' => 'ይፈለግ',
+'blocklistline' => '$1 (እ.ኤ.አ.)፦ $2 በ$3 ላይ ማገጃ ጣለ ($4)',
+'infiniteblock' => 'መቸም ይማያልቅ',
+'expiringblock' => 'በ$1 እ.ኤ.አ. ያልቃል',
+'anononlyblock' => 'ያልገቡት የቁ.# ብቻ',
+'noautoblockblock' => 'የቀጥታ ማገጃ እንዳይሠራ ተደረገ',
+'createaccountblock' => 'ስም ከማውጣት ተከለከለ',
+'emailblock' => 'ኢ-ሜል ታገደ',
+'ipblocklist-empty' => 'የማገጃ ዝርዝር ባዶ ነው።',
+'ipblocklist-no-results' => 'የተጠየቀው ተጠቃሚ አሁን የታገደ አይደለም።',
+'blocklink' => 'ማገጃ',
+'unblocklink' => 'ማገጃ ለማንሣት',
+'contribslink' => 'አስተዋጽኦች',
+'blocklogpage' => 'የማገጃ መዝገብ',
+'blocklogentry' => 'እስከ $2 ድረስ [[$1]] አገዳ $3',
+'blocklogtext' => 'ይህ መዝገብ ተጠቃሚዎች መቸም ሲታገዱ ወይም ማገጃ ሲነሣ የሚዘረዝር ነው። ለአሁኑ የታገዱት ሰዎች [[Special:IPBlockList|በአሁኑ ማገጃዎች ዝርዝር]] ይታያሉ።',
+'unblocklogentry' => 'የ$1 ማገጃ አነሣ',
+'block-log-flags-anononly' => 'ያልገቡት የቁ. አድራሻዎች ብቻ',
+'block-log-flags-nocreate' => 'አዲስ ብዕር ስም ከማውጣት ተከለከለ',
+'block-log-flags-noautoblock' => 'የቀጥታ ማገጃ እንዳይሠራ ተደረገ',
+'block-log-flags-noemail' => 'ኢ-ሜል ታገደ',
+'ipb_expiry_invalid' => 'የሚያልቅበት ግዜ አይሆንም።',
+'ipb_already_blocked' => '«$1» ገና ከዚህ በፊት ታግዶ ነው።',
+'proxyblocker-disabled' => 'ይህ ተግባር እንደማይሠራ ተደርጓል።',
+'proxyblocksuccess' => 'ተደርጓል።',
+
+# Developer tools
+'lockdb' => 'መረጃ-ቤት ለመቆለፍ',
+'unlockdb' => 'መረጃ-ቤት ለመፍታት',
+'lockconfirm' => 'አዎ፣ መረጃ-ቤቱን ለማቆለፍ በውኑ እፈልጋለሁ።',
+'unlockconfirm' => 'አዎ፣ መረጃ-ቤቱን ለመፍታት በውኑ እፈልጋለሁ።',
+'lockbtn' => 'መረጃ-ቤቱ ይቆለፍ',
+'unlockbtn' => 'መረጃ-ቤቱ ይፈታ',
+'locknoconfirm' => 'በማረጋገጫ ሳትኑ ውስጥ ምልክት አላደረጉም።',
+'lockdbsuccesssub' => 'የመረጃ-ቤት መቆለፍ ተከናወነ',
+'unlockdbsuccesssub' => 'የመረጃ-ቤት መቆለፍ ተጨረሰ',
+'lockdbsuccesstext' => 'መረጃ-ቤቱ ተቆልፏል።<br />
+ሥራዎን እንደጨረሱ [[Special:UnlockDB|መቆለፉን ለመፍታት]] እንዳይረሱ።',
+'unlockdbsuccesstext' => 'መረጃ-ቤቱ ተፈታ።',
+'databasenotlocked' => 'መረጃ-ቤቱ የተቆለፈ አይደለም።',
# Move page
-'movepage' => 'የሚዛወር ገጽ',
-'movepagetext' => "ከታች የሚገኘው ማመልከቻ ለገጹ ይዞታ አዲስ አርእስት ያወጣል።
+'move-page' => '«$1»ን ለማዛወር',
+'move-page-legend' => 'የሚዛወር ገጽ',
+'movepagetext' => "ከታች የሚገኘው ማመልከቻ ለገጹ ይዞታ አዲስ አርእስት ያወጣል።
ከይዞታው ጋራ የእትሞች ታሪክ ደግሞ ወደ አዲሱ ገጽ ይዛወራል።
-የቆየው አርእስት እንደ መምሪያ መንገድ ለአዲሱ ገጽ ይሆናል።
+የቆየው አርእስት እንደ መምሪያ መንገድ ለአዲሱ ገጽ ይሆናል።
ይህ ማለት ወደዚያ የሚያያዝ መያያዣ ሁሉ በቀጥታ ወደ አዲሱ ሥፍራ ይወስዳል።
ነገር ግን ገጹን እርስዎ ካዛወሩ፣ መያያዣዎቹ ድርብ ወይም ሰባራ እንዳይሆኑ ለማረጋገጥ ኃላፊነትዎ ነው።
-ባዲሱ አርእስት ሥፍራ ሌላ ገጽ ቀድሞ ካለ፤ ሌላው ገጽ ታሪክ የሌለው፣ ባዶ ወይም መምሪያ መንገድ ካልሆነ በቀር፣
+ባዲሱ አርእስት ሥፍራ ሌላ ገጽ ቀድሞ ካለ፤ ሌላው ገጽ ታሪክ የሌለው፣ ባዶ ወይም መምሪያ መንገድ ካልሆነ በስተቀር፣
ይህ ገጽ ወደዚያ ለማዛወር '''የማይቻል''' ነው። ስለዚህ ስሕተት ካደረጉ ወደ ቆየው አርእስት ገጹን መመለስ ይችላሉ፤ የኖረውን ገጽ በስሕተት ለመደምሰስ አይቻልም ማለት ነው።
-'''ማስጠንቀቂያ፦'''
-በጣም ለተወደደ ወይም ብዙ ጊዜ ለሚነበብ ገጽ፣ እንዲህ ያለ ለውጥ በፍጹም ያልተጠበቀ ወይም ከባድ ውጤት ሊሆን ይችላል። ስለዚህ እባክዎ የሚገባ መደምደሚያ መሆኑን አስቀድመው ያረጋግጡ።",
-'movepagetalktext' => "አብዛኛው ጊዜ፣ ከዚሁ ገጽ ጋራ የሚገናኘው የውይይት ገጽ አንድላይ ይዛወራል፤ '''ነገር ግን፦'''
+'''ማስጠንቀቂያ፦'''
+በጣም ለተወደደ ወይም ብዙ ጊዜ ለሚነበብ ገጽ፣ እንዲህ ያለ ለውጥ በፍጹም ያልተጠበቀ ወይም ከባድ ውጤት ያለው ሊሆን ይችላል። ስለዚህ እባክዎ የሚገባ መደምደሚያ መሆኑን አስቀድመው ያረጋግጡ።",
+'movepagetalktext' => "አብዛኛው ጊዜ፣ ከዚሁ ገጽ ጋራ የሚገናኘው የውይይት ገጽ አንድላይ ይዛወራል፤ '''ነገር ግን፦'''
* ገጹን ወደማይመሳስል ክፍለ-ዊኪ (ለምሳሌ Mediawiki:) ቢያዛውሩት፤
* ባዶ ያልሆነ ውይይት ገጽ ቅድሞ ቢገኝ፤ ወይም
* እታች ከሚገኘውን ሳጥን ምልክቱን ካጠፉ፤
:
:ከነውይይቱ ገጽ አንድላይ አይዛወሩም። የዚያን ጊዜ የውይይቱን ገጽ ለማዛወር ከወደዱ በእጅ ማድረግ ያስፈልግዎታል።",
-'movearticle' => 'የቆየ አርእስት፡',
-'newtitle' => 'አዲሱ አርእስት',
-'move-watch' => 'ይህ ገጽ በተከታተሉት ገጾች ይጨመር',
-'movepagebtn' => 'ገጹ ይዛወር',
-'pagemovedsub' => 'መዛወሩ ተከናወነ',
-'movepage-moved' => "<big>'''«$1» ወደ «$2» ተዛውሯል'''</big>", # The two titles are passed in plain text as $3 and $4 to allow additional goodies in the message.
-'articleexists' => 'በዚያ አርዕሥት ሌላ ገጽ አሁን አለ። አለበለዚያ የመረጡት ስም ልክ አይደለም - ሌላ አርእስት ይምረጡ።',
-'talkexists' => "'''ገጹ ወደ አዲሱ አርዕስት ተዛወረ፤ እንጂ በአዲሱ አርዕስት የቆየ ውይይት ገጽ አስቀድሞ ስለ ኖረ የዚህ ውይይት ገጽ ሊዛወር አልተቻለም። እባክዎ፣ በእጅ ያጋጥሙአቸው።'''",
-'movedto' => 'የተዛወረ ወደ',
-'movetalk' => 'ከተቻለ፣ ከነውይይቱ ገጽ ጋራ ይዛወር',
-'talkpagemoved' => 'ተመሳሳዩ የውይይት ገጽ ደግሞ ተዛውሯል።',
-'talkpagenotmoved' => 'ተመሳሳዩ የውይይት ገጽ ግን <strong>አልተዛወረም</strong>።',
-'1movedto2' => '«$1» ወደ «[[$2]]» አዛወረ',
-'1movedto2_redir' => '«$1» ወደ «[[$2]]» አዛወረ -- በመምሪያ መንገድ ፈንታ',
-'movelogpage' => 'የማዛወር መዝገብ (movelog)',
-'movelogpagetext' => 'ይህ መዝገብ ገጽ ሲዛወር ይመዝገባል። <ይመለስ> ቢጫኑ ኖሮ መዛወሩን ይገለብጣል!',
-'movereason' => 'ምክንያት',
-'revertmove' => 'ይመለስ',
+'movearticle' => 'የቆየ አርእስት፡',
+'movenotallowed' => 'በ{{SITENAME}} ላይ ገጾችን ለማዛወር ፈቃድ የለዎም።',
+'newtitle' => 'አዲሱ አርእስት',
+'move-watch' => 'ይህ ገጽ በተከታተሉት ገጾች ይጨመር',
+'movepagebtn' => 'ገጹ ይዛወር',
+'pagemovedsub' => 'መዛወሩ ተከናወነ',
+'movepage-moved' => "<big>'''«$1» ወደ «$2» ተዛውሯል'''</big>", # The two titles are passed in plain text as $3 and $4 to allow additional goodies in the message.
+'articleexists' => 'በዚያ አርዕሥት ሌላ ገጽ አሁን አለ። አለበለዚያ የመረጡት ስም ልክ አይደለም - ሌላ አርእስት ይምረጡ።',
+'cantmove-titleprotected' => 'አዲሱ አርዕስት ከመፈጠር ስለተጠበቀ፣ ገጽ ወደዚያው ሥፍራ ለማዛወር አይችሉም።',
+'talkexists' => "'''ገጹ ወደ አዲሱ አርዕስት ተዛወረ፤ እንጂ በአዲሱ አርዕስት የቆየ ውይይት ገጽ አስቀድሞ ስለ ኖረ የዚህ ውይይት ገጽ ሊዛወር አልተቻለም። እባክዎ፣ በእጅ ያጋጥሙአቸው።'''",
+'movedto' => 'የተዛወረ ወደ',
+'movetalk' => 'ከተቻለ፣ ከነውይይቱ ገጽ ጋራ ይዛወር',
+'1movedto2' => '«$1» ወደ «[[$2]]» አዛወረ',
+'1movedto2_redir' => '«$1» ወደ «[[$2]]» አዛወረ -- በመምሪያ መንገድ ፈንታ',
+'movelogpage' => 'የማዛወር መዝገብ',
+'movelogpagetext' => 'ይህ መዝገብ ገጽ ሲዛወር ይመዝገባል። <ይመለስ> ቢጫኑ ኖሮ መዛወሩን ይገለብጣል!',
+'movereason' => 'ምክንያት',
+'revertmove' => 'ይመለስ',
+'delete_and_move' => 'ማጥፋትና ማዛወር',
+'delete_and_move_text' => '==ማጥፋት ያስፈልጋል==
+
+መድረሻው ገጽ ሥፍራ «[[:$1]]» የሚለው ገጽ አሁን ይኖራል። ሌላው ገጽ ወደዚያ እንዲዛወር እሱን ለማጥፋት ይወድዳሉ?',
+'delete_and_move_confirm' => 'አዎን፣ ገጹ ይጥፋ',
+'delete_and_move_reason' => 'ለመዛወሩ ሥፍራ እንዲገኝ ጠፋ',
+'selfmove' => 'የመነሻ እና የመድረሻ አርዕስቶች አንድ ናቸው፤ ገጽ ወደ ራሱ ለማዛወር አይቻልም።',
+'immobile_namespace' => 'የመነሻ ወይም የመድረሻ አርእስት ልዩ አይነት ነው፤ ከዚያው ወይም ወደዚያው ክፍለ-ዊኪ ገጽ ማዛወር አይቻልም።',
# Export
-'export' => 'ገጾች ወደ ሌላ ዊኪ ለመላክ',
+'export' => 'ገጾች ወደ ሌላ ዊኪ ለመላክ',
+'exportcuronly' => 'ሙሉ ታሪክ ሳይሆን ያሁኑኑን ዕትም ብቻ ይከተት',
+'export-submit' => 'ለመላክ',
+'export-addcattext' => 'ከዚሁ መደብ ገጾች ይጨመሩ፦',
+'export-addcat' => 'ለመጨምር',
+'export-download' => 'እንደ ፋይል ለመቆጠብ',
+'export-templates' => 'ከነመልጠፊያዎቹ',
# Namespace 8 related
-'allmessages' => 'የድረገጽ መልክ መልእክቶች',
-'allmessagesname' => 'የመልእክት ስም',
-'allmessagesdefault' => 'የቆየው ጽሕፈት',
-'allmessagescurrent' => 'ያሁኑ ጽሕፈት',
-'allmessagestext' => 'በ«MediaWiki» ክፍለ-ዊኪ ያሉት የድረገጽ መልክ መልእክቶች ሙሉ ዝርዝር ይህ ነው።',
+'allmessages' => 'የድረገጽ መልክ መልእክቶች',
+'allmessagesname' => 'የመልእክት ስም',
+'allmessagesdefault' => 'የቆየው ጽሕፈት',
+'allmessagescurrent' => 'ያሁኑ ጽሕፈት',
+'allmessagestext' => 'በ«MediaWiki» ክፍለ-ዊኪ ያሉት የድረገጽ መልክ መልእክቶች ሙሉ ዝርዝር ይህ ነው።
+Please visit [http://www.mediawiki.org/wiki/Localisation MediaWiki Localisation] and [http://translatewiki.net Betawiki] if you wish to contribute to the generic MediaWiki localisation.',
+'allmessagesnotsupportedDB' => "'''\$wgUseDatabaseMessages''' ስለ ተዘጋ '''{{ns:special}}:Allmessages''' ሊጠቀም አይችልም።",
+'allmessagesfilter' => 'የመልዕክት ስም ማጣሪያ፦',
+'allmessagesmodified' => 'የተቀየሩ ብቻ ይታዩ',
# Thumbnails
-'thumbnail-more' => 'አጎላ',
-'thumbnail_error' => 'ናሙና በመፍጠር ችግር አጋጠመ፦ $1',
+'thumbnail-more' => 'አጎላ',
+'filemissing' => 'ፋይሉ አልተገኘም',
+'thumbnail_error' => 'ናሙና በመፍጠር ችግር አጋጠመ፦ $1',
+'thumbnail_invalid_params' => 'ትክክለኛ ያልሆነ የናሙና ግቤት',
+
+# Special:Import
+'import' => 'ገጾች ከሌላ ዊኪ ለማስገባት',
+'importinterwiki' => 'ከሌላ ዊኪ ማስገባት',
+'import-interwiki-history' => 'ለዚህ ገጽ የታሪክ ዕትሞች ሁሉ ለመቅዳት',
+'import-interwiki-submit' => 'ለማስገባት',
+'import-revision-count' => '$1 {{PLURAL:$1|ዕትም|ዕትሞች}}',
+'importnopages' => 'ለማስገባት ምንም ገጽ የለም።',
+'importfailed' => 'ማስገባቱ አልተከናወነም፦ <nowiki>$1</nowiki>',
+'importunknownsource' => 'ያልታወቀ የማስገባት መነሻ አይነት',
+'importcantopen' => 'የማስገባት ፋይል መክፈት አልተቻለም',
+'importnotext' => 'ባዶ ወይም ጽሕፈት የለም',
+'importsuccess' => 'ማስገባቱ ጨረሰ!',
+'import-noarticle' => 'ለማስገባት ምንም ገጽ የለም!',
+'import-nonewrevisions' => 'ዕትሞቹ ሁሉ ከዚህ በፊት ገብተዋል',
# Import log
-'importlogpage' => 'የገጽ ማስገባት መዝገብ',
+'importlogpage' => 'የገጽ ማስገባት መዝገብ',
+'import-logentry-upload-detail' => '$1 {{PLURAL:$1|ዕትም|ዕትሞች}}',
+'import-logentry-interwiki-detail' => '$1 {{PLURAL:$1|ዕትም|ዕትሞች}} ከ$2',
# Tooltip help for the actions
'tooltip-pt-userpage' => 'የርስዎ መኖርያ ገጽ',
+'tooltip-pt-anonuserpage' => 'ለቁ. አድራሻዎ የመኖርያ ገጽ',
'tooltip-pt-mytalk' => 'የርስዎ መወያያ ገጽ',
+'tooltip-pt-anontalk' => 'ለቁ. አድራሻዎ የውይይት ገጽ',
'tooltip-pt-preferences' => 'የድረግጹን መልክ ለመምረጥ',
'tooltip-pt-watchlist' => 'እርስዎ ስለ ለውጦች የሚከታተሏቸው ገጾች',
'tooltip-pt-mycontris' => 'እርስዎ ያደረጓቸው ለውጦች በሙሉ',
'tooltip-pt-login' => 'በብዕር ስም መግባትዎ ጠቃሚ ቢሆንም አስፈላጊነት አይደለም',
+'tooltip-pt-anonlogin' => 'በብዕር ስም መግባትዎ ጠቃሚ ቢሆንም አስፈላጊነት አይደለም',
'tooltip-pt-logout' => 'ከብዕር ስምዎ ለመውጣት',
'tooltip-ca-talk' => 'ስለ ገጹ ለመወያየት',
'tooltip-ca-edit' => 'ይህን ገጽ ለማዘጋጀት ይችላሉ!',
@@ -920,27 +1537,37 @@ $1ን ወይም ማንም ሌላ [[{{MediaWiki:Grouppage-sysop}}|መጋቢ]] ስ
'tooltip-ca-history' => 'ለዚሁ ገጽ ያለፉትን እትሞች ለማየት',
'tooltip-ca-protect' => 'ይህንን ገጽ ለመቆለፍ',
'tooltip-ca-delete' => 'ይህንን ገጽ ለማጥፋት',
+'tooltip-ca-undelete' => 'በዚህ ገጽ ላይ ሳይጠፋ የተደረጉትን ዕትሞች ለመመልስ',
'tooltip-ca-move' => 'ይህ ገጽ ወደ ሌላ አርእስት ለማዋወር',
'tooltip-ca-watch' => 'ይህንን ገጽ ወደ ተከታተሉት ገጾች ዝርዝር ለመጨምር',
'tooltip-ca-unwatch' => 'ይህንን ገጽ ከተከታተሉት ገጾች ዝርዝር ለማስወግድ',
'tooltip-search' => 'ቃል ወይም አርዕስት በ{{SITENAME}} ለመፈለግ',
+'tooltip-search-go' => 'ከተገኘ በዚሁ አርዕስት ወዳለው ገጽ ለመሄድ',
+'tooltip-search-fulltext' => 'ይህ ጽሕፈት የሚገኝባቸውን ገጾች ለመፈልግ',
+'tooltip-p-logo' => 'ዋና ገጽ',
'tooltip-n-mainpage' => 'ወደ ዋናው ገጽ ለመሔድ',
'tooltip-n-portal' => 'ስለ መርሃገብሩ አጠቃቀም አለመረዳት',
'tooltip-n-currentevents' => 'ስለ ወቅታዊ ጉዳዮች / ዜና መረጃ ለማግኘት',
'tooltip-n-recentchanges' => 'በዚሁ ዊኪ ላይ በቅርቡ የተደረጉ ለውጦች',
'tooltip-n-randompage' => 'ወደ ማንኛውም ገጽ በነሲብ ለመሔድ',
'tooltip-n-help' => 'ረድኤት ለማግኘት',
-'tooltip-n-sitesupport' => 'የገንዘብ ስጦታ ለዊኪሜድያ ይስጡ',
'tooltip-t-whatlinkshere' => 'ወደዚሁ ገጽ የሚያያዙት ገጾች ዝርዝር በሙሉ',
+'tooltip-t-recentchangeslinked' => 'ከዚሁ ገጽ በተያያዙ ገጾች ላይ የቅርብ ግዜ ለውጦች',
+'tooltip-feed-rss' => 'የRSS ማጉረስ ለዚሁ ገጽ',
+'tooltip-feed-atom' => 'የAtom ማጉረስ ለዚሁ ገጽ',
'tooltip-t-contributions' => 'የዚሁ አባል ለውጦች ሁሉ ለመመልከት',
'tooltip-t-emailuser' => 'ወደዚሁ አባል ኢ-ሜል ለመላክ',
'tooltip-t-upload' => 'ፋይል ወይም ሥዕልን ወደ {{SITENAME}} ለመላክ',
'tooltip-t-specialpages' => 'የልዩ ገጾች ዝርዝር በሙሉ',
+'tooltip-t-print' => 'ይህ ገጽ ለህትመት እንዲስማማ',
+'tooltip-t-permalink' => 'ለዚሁ ዕትም ቋሚ መያያዣ',
'tooltip-ca-nstab-main' => 'መጣጥፉን ለማየት',
'tooltip-ca-nstab-user' => 'የአባል መኖሪያ ገጽ ለማየት',
+'tooltip-ca-nstab-media' => 'የፋይሉን ገጽ ለማየት',
'tooltip-ca-nstab-special' => 'ይህ ልዩ ገጽ ነው - ሊያዘጋጁት አይችሉም',
'tooltip-ca-nstab-project' => 'ግብራዊ ገጹን ለማየት',
'tooltip-ca-nstab-image' => 'የፋይሉን ገጽ ለማየት',
+'tooltip-ca-nstab-mediawiki' => 'መልእክቱን ለማየት',
'tooltip-ca-nstab-template' => 'የመልጠፊያውን ገጽ ለመመልከት',
'tooltip-ca-nstab-help' => 'የእርዳታ ገጽ ለማየት',
'tooltip-ca-nstab-category' => 'የመደቡን ገጽ ለማየት',
@@ -950,38 +1577,89 @@ $1ን ወይም ማንም ሌላ [[{{MediaWiki:Grouppage-sysop}}|መጋቢ]] ስ
'tooltip-diff' => 'እርስዎ የሚያደርጉት ለውጦች ከአሁኑ ዕትም ጋር ለማነጻጸር',
'tooltip-compareselectedversions' => 'ካመለከቱት ዕትሞች መካከል ያለውን ልዩነት ለማነጻጸር',
'tooltip-watch' => 'ይህንን ገጽ ወደተከታተሉት ገጾች ዝርዝር ለመጨምር',
+'tooltip-recreate' => 'ገጹ የጠፋ ሆኖም እንደገና ለመፍጠር',
'tooltip-upload' => 'ለመጀመር ይጫኑ',
+# Metadata
+'nodublincore' => 'Dublin Core RDF metadata ለዚህ ሰርቨር እንደማይሠራ ተደርጓል።',
+'nocreativecommons' => 'Creative Commons RDF metadata ለዚህ ሰርቨር እንደማይሠራ ተደርጓል።',
+
+# Attribution
+'anonymous' => 'የ{{SITENAME}} ቁ. አድራሻ ተጠቃሚ(ዎች)',
+'siteuser' => '{{SITENAME}} ተጠቃሚ $1',
+'lastmodifiedatby' => 'ይህ ገጽ መጨረሻ የተቀየረው $2፣ $1 በ$3 ነበር።', # $1 date, $2 time, $3 user
+'others' => 'ሌሎች',
+'siteusers' => '{{SITENAME}} ተጠቃሚ(ዎች) $1',
+
# Spam protection
-'subcategorycount' => 'በዚሁ መደብ ውስጥ {{PLURAL:$1|አንድ ንዑስ-መደብ አለ|$1 ንዑስ-መደቦች አሉ}}።',
-'categoryarticlecount' => 'በዚሁ መደብ ውስጥ {{PLURAL:$1|አንድ መጣጥፍ አለ|$1 መጣጥፎች አሉ}}።',
-'category-media-count' => 'በዚሁ መደብ {{PLURAL:$1|አንድ ፋይል አለ|$1 ፋይሎች አሉ}}።',
-'listingcontinuesabbrev' => '(ተቀጥሏል)',
+'spamprotectiontitle' => 'የስፓም መከላከል ማጣሪያ',
+'spambot_username' => 'MediaWiki የስፓም ማፅዳት',
+'spam_reverting' => 'ወደ $1 የሚወስድ መያያዣ ወደሌለበት መጨረሻ ዕትም መለሰው',
+
+# Info page
+'infosubtitle' => 'መረጃ ለገጹ',
+'numedits' => 'የእትሞች ቁጥር (ገጽ)፦ $1',
+'numtalkedits' => 'የእትሞች ቁጥር (የውይይት ገጽ)፦ $1',
+'numwatchers' => 'የሚከታተሉት ተጠቃሚዎች ቁጥር፦ $1',
+'numauthors' => 'የተለዩ አቅራቢዎች ቁጥር (ገጽ)፦ $1',
+'numtalkauthors' => 'የተለዩ አቅራቢዎች ቁጥር (የውይይት ገጽ)፦ $1',
+
+# Math options
+'mw_math_png' => 'ሁልጊዜ እንደ PNG',
+'mw_math_simple' => 'HTML ቀላል ከሆነ አለዚያ PNG',
+'mw_math_html' => 'HTML ከተቻለ አለዚያ PNG',
+'mw_math_modern' => 'ለዘመናዊ ብራውዘር የተሻለ',
+'mw_math_mathml' => 'MathML ከተቻለ (የሙከራ)',
# Patrolling
-'markaspatrolledtext' => 'ይህን ገጽ የተመለከተ ሆኖ ለማሳለፍ',
-'markedaspatrolled' => 'የተመለከተ ሆኖ ተሳለፈ',
-'markedaspatrolledtext' => 'የተመረጠው ዕትም የተመለከተ ሆኖ ተሳለፈ።',
+'markaspatrolleddiff' => 'የተሳለፈ ሆኖ ማመልከት',
+'markaspatrolledtext' => 'ይህን ገጽ የተመለከተ ሆኖ ለማሳለፍ',
+'markedaspatrolled' => 'የተመለከተ ሆኖ ተሳለፈ',
+'markedaspatrolledtext' => 'የተመረጠው ዕትም የተመለከተ ሆኖ ተሳለፈ።',
+'rcpatroldisabled' => 'የቅርብ ለውጦች ማሳለፊያ አይኖርም',
+'rcpatroldisabledtext' => 'የቅርብ ለውጦች ማሳለፊያ ተግባር አሁን አይሠራም።',
+'markedaspatrollederror' => 'የተመለከተ ሆኖ ለማሳለፍ አይቻልም',
+'markedaspatrollederrortext' => 'የተመለከተ ሆኖ ለማሳለፍ አንድን ዕትም መወሰን አለብዎት።',
+'markedaspatrollederror-noautopatrol' => 'የራስዎን ለውጥ የተመለከተ ሆኖ ለማሳለፍ አይችሉም።',
# Patrol log
-'patrol-log-line' => 'እትም $1 ከ$2 የተመለከተ ሆኖ አሳለፈ',
+'patrol-log-page' => 'የማሳለፊያ መዝገብ',
+'patrol-log-line' => 'እትም $1 ከ$2 የተመለከተ ሆኖ አሳለፈ $3',
'patrol-log-auto' => '(በቀጥታ)',
+# Image deletion
+'deletedrevision' => 'የቆየው ዕትም $1 አጠፋ',
+'filedeleteerror-short' => 'የፋይል ማጥፋት ስኅተት፦ $1',
+'filedeleteerror-long' => 'ፋይሉን በማጥፋት ስህተቶች ተነስተዋል፦
+
+$1',
+'filedelete-missing' => 'ፋይሉ «$1» ሰለማይኖር ሊጠፋ አይችልም።',
+'filedelete-old-unregistered' => 'የተወሰነው ፋይል ዕትም «$1» በመረጃ-ቤቱ የለም።',
+'filedelete-current-unregistered' => 'የተወሰነው ፋይል «$1» በመረጃ-ቤቱ የለም።',
+
# Browsing diffs
'previousdiff' => '← የፊተኛው ለውጥ',
'nextdiff' => 'የሚከተለው ለውጥ →',
# Media information
+'imagemaxsize' => 'በፋይል መግለጫ ገጽ ላይ የስዕል መጠን ወሰን ቢበዛ፦',
+'thumbsize' => 'የናሙና መጠን፦',
+'widthheightpage' => '$1 በ$2፣ $3 ገጾች',
+'file-info' => '(የፋይል መጠን፦ $1፣ የMIME አይነት፦ $2)',
'file-info-size' => '($1 × $2 ፒክስል፤ መጠን፦ $3፤ የMIME ዓይነት፦ $4)',
'file-nohires' => '<small>ከዚህ በላይ ማጉላት አይቻልም።</small>',
'svg-long-desc' => '(የSVG ፋይል፡ በተግባር $1 × $2 ፒክስል፤ መጠን፦ $3)',
'show-big-image' => 'በሙሉ ጒልህነት ለመመልከት',
'show-big-image-thumb' => '<small>የዚህ ናሙና ቅጂ ክልል፦ $1 × $2 ፒክሰል</small>',
-# Special:Newimages
-'newimages' => 'የአዳዲስ ሥዕሎች ማሳያ አዳራሽ',
-'showhidebots' => '(«bots» $1)',
-'noimages' => 'ምንም የለም!',
+# Special:NewImages
+'newimages' => 'የአዳዲስ ሥዕሎች ማሳያ አዳራሽ',
+'imagelisttext' => '$1 የተጨመሩ ሥእሎች ወይም ፋይሎች ከታች ይዘረዝራሉ ($2)።',
+'showhidebots' => '(«bots» $1)',
+'noimages' => 'ምንም የለም!',
+'ilsubmit' => 'ፍለጋ',
+'bydate' => 'በተጨመሩበት ወቅት',
+'sp-newimages-showfrom' => 'ከ$2፣ $1 እ.ኤ.አ. ጀምሮ አዲስ ይታዩ',
# Bad image list
'bad_image_list' => 'ሥርዓቱ እንዲህ ነው፦
@@ -1002,49 +1680,273 @@ $1ን ወይም ማንም ሌላ [[{{MediaWiki:Grouppage-sysop}}|መጋቢ]] ስ
* focallength", # Do not translate list items
# EXIF tags
-'exif-make' => 'የካሜራው ሠሪ ድርጅት',
-'exif-model' => 'የካሜራው ዝርያ',
+'exif-imagewidth' => 'ስፋት',
+'exif-imagelength' => 'ቁመት',
+'exif-compression' => 'የመጨመቅ ዘዴ',
+'exif-photometricinterpretation' => 'የPixel አሠራር',
+'exif-orientation' => 'አቀማመጥ',
+'exif-samplesperpixel' => 'የክፍለ ነገሮች ቁጥር',
+'exif-planarconfiguration' => 'የመረጃ አስተዳደር',
+'exif-ycbcrpositioning' => 'የY ና C አቀማመጥ',
+'exif-xresolution' => 'አድማሳዊ ማጉላት',
+'exif-yresolution' => 'ቁም ማጉላት',
+'exif-resolutionunit' => 'የX ና Y ማጉላት መስፈርያ',
+'exif-stripoffsets' => 'የስዕል መረጃ ሥፍራ',
+'exif-rowsperstrip' => 'የተርታዎች ቁጥር በየቁራጩ',
+'exif-stripbytecounts' => 'byte በየተጨመቀ ቁራጩ',
+'exif-jpeginterchangeformatlength' => 'የJPEG መረጃ byte',
+'exif-transferfunction' => 'የማሻገር ተግባር',
+'exif-datetime' => 'ፋይሉ የተቀየረበት ቀንና ሰዓት',
+'exif-imagedescription' => 'የስዕል አርዕስት',
+'exif-make' => 'የካሜራው ሠሪ ድርጅት',
+'exif-model' => 'የካሜራው ዝርያ',
+'exif-software' => 'የተጠቀመው ሶፍትዌር',
+'exif-artist' => 'ደራሲ',
+'exif-copyright' => 'ባለ መብቱ',
+'exif-exifversion' => 'የExif ዝርያ',
+'exif-flashpixversion' => 'የተደገፈ Flashpix ዝርያ',
+'exif-componentsconfiguration' => 'የየክፍለ ነገሩ ትርጉም',
+'exif-compressedbitsperpixel' => 'የስዕል መጨመቅ ዘዴ',
+'exif-pixelydimension' => 'እውነተኛ የስዕል ስፋት',
+'exif-pixelxdimension' => 'እውነተኛ የስዕል ቁመት',
+'exif-makernote' => 'የሠሪው ማሳሰቢያዎች',
+'exif-usercomment' => 'የተጠቃሚው ማጠቃለያ',
+'exif-relatedsoundfile' => 'የተዛመደ የድምጽ ፋይል',
+'exif-datetimeoriginal' => 'መረጃው የተፈጠረበት ቀንና ሰዓት',
+'exif-datetimedigitized' => 'ዲጂታል የተደረገበት ቀንና ሰዓት',
+'exif-exposuretime' => 'ማንሣት የሚፈጅበት ግዜ',
+'exif-exposuretime-format' => '$1 ሴኮንድ ($2)',
+'exif-fnumber' => 'የF ቁጥር',
+'exif-exposureprogram' => 'የማንሣት ፕሮግራም',
+'exif-shutterspeedvalue' => 'የመዝጊያ ፍጥነት',
+'exif-aperturevalue' => 'ቀዳዳ',
+'exif-brightnessvalue' => 'ብሩህነት',
+'exif-exposurebiasvalue' => 'የማንሣት ዝንባሌ',
+'exif-maxaperturevalue' => 'የየብስ ቀዳዳ ወሰን ቢበዛ',
+'exif-subjectdistance' => 'የጉዳዩ ርቀት',
+'exif-meteringmode' => 'የመመተር ዘዴ',
+'exif-lightsource' => 'የብርሃን ምንጭ',
+'exif-flash' => 'ብልጭታ',
+'exif-focallength' => 'የመስተዋት ትኩረት እርዝማኔ',
+'exif-subjectarea' => 'የጉዳዩ ክልል',
+'exif-flashenergy' => 'የብልጭታ ኅይል',
+'exif-subjectlocation' => 'የጉዳዩ ሥፍራ',
+'exif-exposureindex' => 'የማንሣት ማውጫ',
+'exif-sensingmethod' => 'የመሰማት ዘዴ',
+'exif-filesource' => 'የፋይል ምንጭ',
+'exif-scenetype' => 'የትርኢት አይነት',
+'exif-customrendered' => 'ልዩ የስዕል አገባብ',
+'exif-exposuremode' => 'የማንሣት ዘዴ',
+'exif-whitebalance' => 'የነጭ ዝንባሌ',
+'exif-digitalzoomratio' => 'ቁጥራዊ ማጉላት ውድር',
+'exif-focallengthin35mmfilm' => 'በ35 mm ፊልም የትኩረት እርዝማኔ',
+'exif-scenecapturetype' => 'የትርኢት መማረክ አይነት',
+'exif-gaincontrol' => 'የትርኢት ማሠልጠን',
+'exif-contrast' => 'የድምቀት አነጻጸር',
+'exif-sharpness' => 'ስለት',
+'exif-subjectdistancerange' => 'የጉዳዩ ርቀት',
+'exif-imageuniqueid' => 'የስዕሉ መታወቂያ ቁጥር',
+'exif-gpsversionid' => 'የGPS ምልክት ዝርያ',
+'exif-gpslatituderef' => 'ስሜን ወይም ደቡብ ኬክሮስ',
+'exif-gpslatitude' => 'ኬክሮስ',
+'exif-gpslongituderef' => 'ምስራቅ ወይም ምዕራብ ኬንትሮስ',
+'exif-gpslongitude' => 'ኬንትሮስ',
+'exif-gpsaltituderef' => 'የከፍታ መሰረት',
+'exif-gpsaltitude' => 'ከፍታ',
+'exif-gpstimestamp' => 'GPS ሰዓት (አቶማዊ ሰዓት)',
+'exif-gpssatellites' => 'ለመስፈር የተጠቀሙ ሰው ሰራሽ መንኮራኩር',
+'exif-gpsstatus' => 'የተቀባይ ሁኔታ',
+'exif-gpsmeasuremode' => 'የመስፈር ዘዴ',
+'exif-gpsdop' => 'የመስፈር ልክነት',
+'exif-gpsspeedref' => 'የፍጥነት መስፈርያ',
+'exif-gpsspeed' => 'የGPS ተቀባይ ፍጥነት',
+'exif-gpstrackref' => 'የስዕል እንቅስቃሴ መሰረት',
+'exif-gpstrack' => 'የእንቅስቃሴ አቅጣጫ',
+'exif-gpsimgdirectionref' => 'የስዕል አቅጣጫ መሠረት',
+'exif-gpsimgdirection' => 'የስዕል አቅጣጫ',
+'exif-gpsdestlatituderef' => 'የመድረሻ ኬክሮስ መሠረት',
+'exif-gpsdestlatitude' => 'የመድረሻ ኬክሮስ',
+'exif-gpsdestlongituderef' => 'የመድረሻ ኬንትሮስ መሠረት',
+'exif-gpsdestlongitude' => 'የመድረሻ ኬንትሮስ',
+'exif-gpsdestdistanceref' => 'የመድረሻ ርቀት መሠረት',
+'exif-gpsdestdistance' => 'ርቀት ከመድረሻ',
+'exif-gpsprocessingmethod' => 'የGPS አግባብ ዘዴ ስም',
+'exif-gpsareainformation' => 'የGPS ክልል ስም',
+'exif-gpsdatestamp' => 'የGPS ቀን',
+'exif-gpsdifferential' => 'GPS ልዩነት ማስተካከል',
+
+# EXIF attributes
+'exif-compression-1' => 'ያልተጨመቀ',
+
+'exif-unknowndate' => 'ያልታወቀ ቀን',
+
+'exif-orientation-1' => 'የተለመደ', # 0th row: top; 0th column: left
+'exif-orientation-2' => 'በአድማሱ ላይ ተገለበጠ', # 0th row: top; 0th column: right
+'exif-orientation-3' => '180° የዞረ', # 0th row: bottom; 0th column: right
+'exif-orientation-4' => 'በዋልታው ላይ ተገለበጠ', # 0th row: bottom; 0th column: left
+
+'exif-componentsconfiguration-0' => 'አይኖርም',
+
+'exif-exposureprogram-0' => 'አልተወሰነም',
+'exif-exposureprogram-1' => 'በዕጅ',
+'exif-exposureprogram-2' => 'የተለመደ ፕሮግራም',
+'exif-exposureprogram-3' => 'የቀዳዳ ቀዳሚነት',
+'exif-exposureprogram-4' => 'የመዝጊያ ቀዳሚነት',
+'exif-exposureprogram-6' => 'የድርጊት ፕሮግራም (ለፈጣን መዝጊያ ፍጥነት የዘነበለ)',
+
+'exif-subjectdistance-value' => '$1 ሜትር',
+
+'exif-meteringmode-0' => 'አይታወቅም',
+'exif-meteringmode-1' => 'አማካኝ',
+'exif-meteringmode-3' => 'ነጥብ',
+'exif-meteringmode-6' => 'በከፊል',
+'exif-meteringmode-255' => 'ሌላ',
+
+'exif-lightsource-0' => 'አይታወቅም',
+'exif-lightsource-1' => 'መዓልት',
+'exif-lightsource-3' => 'Tungsten (ቦግ ያለ መብራት)',
+'exif-lightsource-4' => 'ብልጭታ',
+'exif-lightsource-9' => 'መልካም አየር',
+'exif-lightsource-10' => 'ደመናም አየር',
+'exif-lightsource-11' => 'ጥላ',
+'exif-lightsource-17' => 'የተለመደ ብርሃን A',
+'exif-lightsource-18' => 'የተለመደ ብርሃን B',
+'exif-lightsource-19' => 'የተለመደ ብርሃን C',
+'exif-lightsource-255' => 'ሌላ የብርሃን ምንጭ',
+
+'exif-focalplaneresolutionunit-2' => 'inches (ኢንች)',
+
+'exif-sensingmethod-1' => 'ያልተወሰነ',
+'exif-sensingmethod-2' => 'የ1-ኤሌክትሮ-ገል ቀለም ክልል ሰሚ',
+'exif-sensingmethod-3' => 'የ2-ኤሌክትሮ-ገል ቀለም ክልል ሰሚ',
+'exif-sensingmethod-4' => 'የ3-ኤሌክትሮ-ገል ቀለም ክልል ሰሚ',
+'exif-sensingmethod-5' => 'ቀለም ተከታታይ ክልል ሰሚ',
+'exif-sensingmethod-7' => 'ሦስት መስመር ያለው ሰሚ',
+'exif-sensingmethod-8' => 'ቀለም ተከታታይ መስመር ሰሚ',
+
+'exif-scenetype-1' => 'በቀጥታ የተነሣ የፎቶ ስዕል',
+
+'exif-customrendered-0' => 'የተለመደ ሂደት',
+'exif-customrendered-1' => 'ልዩ ሂደት',
+
+'exif-exposuremode-0' => 'የቀጥታ ማንሣት',
+'exif-exposuremode-1' => 'በዕጅ ማንሣት',
+
+'exif-whitebalance-0' => 'የቀጥታ ነጭ ዝንባሌ',
+'exif-whitebalance-1' => 'በእጅ የተደረገ ነጭ ዝንባሌ',
+
+'exif-scenecapturetype-0' => 'የተለመደ',
+'exif-scenecapturetype-1' => 'አግድም',
+'exif-scenecapturetype-2' => 'ቁም',
+'exif-scenecapturetype-3' => 'የሌሊት ትርኢት',
+
+'exif-gaincontrol-0' => 'የለም',
+
+'exif-contrast-0' => 'የተለመደ',
+'exif-contrast-1' => 'ለስላሳ',
+'exif-contrast-2' => 'ጽኑዕ',
+
+'exif-saturation-0' => 'የተለመደ',
+
+'exif-sharpness-0' => 'የተለመደ',
+'exif-sharpness-1' => 'ለስላሳ',
+'exif-sharpness-2' => 'ጽኑዕ',
+
+'exif-subjectdistancerange-0' => 'አይታወቅም',
+'exif-subjectdistancerange-2' => 'ከቅርብ አስተያየት',
+'exif-subjectdistancerange-3' => 'ከሩቅ አስተያየት',
+
+# Pseudotags used for GPSLatitudeRef and GPSDestLatitudeRef
+'exif-gpslatitude-n' => 'ስሜን ኬክሮስ',
+'exif-gpslatitude-s' => 'ደቡብ ኬክሮስ',
+
+# Pseudotags used for GPSLongitudeRef and GPSDestLongitudeRef
+'exif-gpslongitude-e' => 'ምሥራቅ ኬንትሮስ',
+'exif-gpslongitude-w' => 'ምዕራብ ኬንትሮስ',
+
+'exif-gpsmeasuremode-2' => '2 አቅጣቻ ያለው መለኪያ',
+'exif-gpsmeasuremode-3' => '3 አቅጣቻ ያለው መለኪያ',
+
+# Pseudotags used for GPSSpeedRef and GPSDestDistanceRef
+'exif-gpsspeed-k' => 'ኪሎሜትር በየሰዓቱ',
+'exif-gpsspeed-m' => 'ማይል (mile) በየሰዓቱ',
+'exif-gpsspeed-n' => 'Knot (የመርከብ ፍጥነት መለኪያ)',
+
+# Pseudotags used for GPSTrackRef, GPSImgDirectionRef and GPSDestBearingRef
+'exif-gpsdirection-t' => 'ዕውነተኛ አቅጣጫ',
+'exif-gpsdirection-m' => 'መግነጢሳዊ አቅጣጫ',
# External editor support
'edit-externally' => 'ይህንን ፋይል በአፍአዊ ሶፍትዌር ለማዘጋጀት',
-'edit-externally-help' => 'ስለ አፍአዊ የስዕል ማዘጋጀት ሶፍትዌር በተጨማሪ ለመረዳት [http://meta.wikimedia.org/wiki/Help:External_editors የመመስረት ትዕዛዝ] ያንብቡ።',
+'edit-externally-help' => 'ስለ አፍአዊ የስዕል ማዘጋጀት ሶፍትዌር በተጨማሪ ለመረዳት [http://www.mediawiki.org/wiki/Manual:External_editors የመመስረት ትዕዛዝ] ያንብቡ።',
# 'all' in various places, this might be different for inflected languages
'recentchangesall' => 'ሁሉ',
+'imagelistall' => 'ሁሉ',
'watchlistall2' => 'ሁሉ',
'namespacesall' => 'ሁሉ (all)',
'monthsall' => 'ሁሉ',
# E-mail address confirmation
'confirmemail' => 'ኢ-ሜልዎን ለማረጋገጥ',
+'confirmemail_noemail' => 'በ[[Special:Preferences|ምርጫዎችዎ]] ትክክለኛ ኢሜል አድራሻ አልሰጡም።',
'confirmemail_text' => 'አሁን በ{{SITENAME}} በኩል «ኢ-ሜል» ለመላክም ሆነ ለመቀበል አድራሻዎን ማረጋገጥ ግዴታ ሆኗል። እታች ያለውን በተጫኑ ጊዜ አንድ የማረጋገጫ መልእክት ቀድሞ ወደ ሰጡት ኢሜል አድራሻ በቀጥታ ይላካል። በዚህ መልእክት ልዩ ኮድ ያለበት መያያዣ ይገኝበታል፣ ይህንን መያያዣ ከዚያ ቢጎብኙ ኢ-ሜል አድራሻዎ የዛኔ ይረጋግጣል።',
+'confirmemail_pending' => '<div class="error">ማረጋገጫ ኮድ ከዚህ በፊት ገና ተልኮልዎታል። ብዕር ስምዎን ያወጡ በቅርብ ጊዜ ከሆነ፣ አዲስ ኮድን ከመጠይቅ በፊት ምናልባት የተላከው እስከሚደርስ ድረስ ጥቂት ደቂቃ መቆየት ይሻላል።</div>',
'confirmemail_send' => 'የማረጋገጫ ኮድ ወደኔ ኢ-ሜል ይላክልኝ',
-'confirmemail_sent' => 'የማረጋገጫ ኢ-ሜል ቅድም ወደ ሰጡት አድራሻ አሁን ተልኳል! (ሁለተኛ መጫን የለብዎትም፣ ወደ [[{{MediaWiki:Mainpage}}|ዋናው ገጽ]] ይመልሱ።)',
+'confirmemail_sent' => 'የማረጋገጫ ኢ-ሜል ቅድም ወደ ሰጡት አድራሻ አሁን ተልኳል!',
+'confirmemail_oncreate' => 'ማረጋገጫ ኮድ ወደ ኢ-ሜል አድራሻዎ ተልኳል። ይኸው ኮድ ለመግባት አያስፈልግም፤ ነገር ግን የዊኪው ኢ-ሜል ተግባር እንዲሠራ ለማድረግ ያስፈልጋል።',
'confirmemail_sendfailed' => 'ወደሰጡት ኢሜል አድራሻ መላክ አልተቻለም። እባክዎ፣ ወደ [[Special:Preferences|«ምርጫዎች»]] ተመልሰው የጻፉትን አድራሻ ደንበኛነት ይመለከቱ።',
'confirmemail_invalid' => 'ይህ ኮድ አልተከናወነም። (ምናልባት ጊዜው አልፏል።) እንደገና ይሞክሩ!',
+'confirmemail_needlogin' => 'ኢሜል አድራሻዎን ለማረጋገጥ $1 ያስፈልግዎታል።',
+'confirmemail_success' => 'እ-ሜል አድራሻዎ ተረጋግጧል። አሁን ገብተው ዊኪውን መጠቀም ይችላሉ።',
'confirmemail_loggedin' => 'የርስዎ ኢ-ሜል አድራሻ ተረጋግጧል። አሁን ኢ-ሜል በ{{SITENAME}} በኩል ለመላክ ወይም ለመቀበል ይችላሉ።',
-'confirmemail_body' => 'Someone from IP address $1 (probably you), has registered an
-account with the user name "$2" with this e-mail address on {{SITENAME}}.
+'confirmemail_error' => 'ማረጋገጫዎን በመቆጠብ አንድ ችግር ተነሣ።',
+'confirmemail_subject' => '{{SITENAME}} email address confirmation / እ-ሜል አድራሻ ማረጋገጫ',
+'confirmemail_body' => 'ጤና ይስጥልኝ
+
+የርስዎ ኢ-ሜል አድራሻ በ$1 ለ{{SITENAME}} ብዕር ስም «$2» ቀርቧል።
-To confirm that this account really does belong to you, and to activate e-mail features on {{SITENAME}}, open this link in your browser:
+ይህ እርስዎ እንደ ሆኑ ለማረጋገጥና የ{{SITENAME}} ኢ-ሜል ጥቅም ለማግኘት፣ እባክዎን የሚከተለውን መያያዣ ይጎበኙ።
$3
-If for some reason this is *not* you, don\'t follow the link. This confirmation code will expire at $4.
+ይህ ምናልባት እርስዎ ካልሆኑ፣ መያያዣውን አይከተሉ።
-Amharic text follows:
+የዚህ መያያዣው ኮድ እስከ $4 ድረስ ይሠራል።',
-ጤና ይስጥልኝ
+# Scary transclusion
+'scarytranscludetoolong' => '[ይቅርታ፤ URL ከመጠን በላይ የረዘመ ነው]',
-የርስዎ ኢ-ሜል አድራሻ በ$1 ለ{{SITENAME}} ብዕር ስም «$2» ቀርቧል።
+# Trackbacks
+'trackbackremove' => ' ([$1 ማጥፋት])',
-ይህ እርስዎ እንደ ሆኑ ለማረጋገጥና የ{{SITENAME}} ኢ-ሜል ጥቅም ለማግኘት፣ እባክዎን የሚከተለውን መያያዣ ይጎበኙ።
+# Delete conflict
+'deletedwhileediting' => 'ማስጠንቀቂያ፦ መዘጋጀት ከጀመሩ በኋላ ገጹ ጠፍቷል!',
+'confirmrecreate' => "መዘጋጀት ከጀመሩ በኋላ፣ ተጠቃሚው [[User:$1|$1]] ([[User talk:$1|ውይይት]]) ገጹን አጠፍተው ይህን ምክንያት አቀረቡ፦
+: ''$2''
+እባክዎ ገጹን እንደገና ለመፍጠር በውኑ እንደ ፈለጉ ያረጋግጡ።",
+'recreate' => 'እንደገና ይፈጠር',
-$3
+# HTML dump
+'redirectingto' => 'ወደ [[:$1]] መምሪያ መንገድ ማድረግ...',
-ይህ ምናልባት እርስዎ ካልሆኑ፣ መያያዣውን አይከተሉ።
+# action=purge
+'confirm_purge' => 'የዚሁ ገጽ ካሽ (cache) ይጠረግ?
-የዚህ መያያዣው ኮድ እስከ $4 ድረስ ይሠራል።',
+$1',
+'confirm_purge_button' => 'እሺ',
+
+# AJAX search
+'searchcontaining' => "''$1'' ላለባቸው ገጾች ለመፈልግ።",
+'searchnamed' => "''$1'' ለተባሉት ገጾች ለመፈልግ።",
+'articletitles' => "በ''$1'' የሚጀመሩ ገጾች፦",
+'hideresults' => 'ውጤቶች ለመደብቅ',
+'useajaxsearch' => 'የAJAX ፍለጋ ይጠቀም',
+
+# Multipage image navigation
+'imgmultipageprev' => '← ፊተኛው ገጽ',
+'imgmultipagenext' => 'የሚቀጥለው ገጽ →',
+'imgmultigo' => 'ሂድ!',
# Table pager
'table_pager_next' => 'ቀጥሎ ገጽ',
@@ -1053,6 +1955,7 @@ $3
'table_pager_last' => 'መጨረሻው ገጽ',
'table_pager_limit' => 'በየገጹ $1 መስመሮች',
'table_pager_limit_submit' => 'ይታዩ',
+'table_pager_empty' => 'ምንም ውጤት የለም',
# Auto-summaries
'autosumm-blank' => 'ጽሑፉን በሙሉ ደመሰሰ።',
@@ -1060,18 +1963,28 @@ $3
'autoredircomment' => 'ወደ [[$1]] መምሪያ መንገድ ፈጠረ',
'autosumm-new' => 'አዲስ ገጽ ፈጠረ፦ «$1»',
+# Live preview
+'livepreview-loading' => 'በመጫን ላይ ነው...',
+'livepreview-ready' => 'በመጫን ላይ ነው... ዝግጁ!',
+'livepreview-failed' => 'የቀጥታ ቅድመ-ዕይታ አልተከናወነም! የተለመደ ቅድመ-ዕይታ ይሞክሩ።',
+'livepreview-error' => 'መገናኘት አልተከናወነም፦$1 «$2»። የተለመደ ቅድመ-ዕይታ ይሞክሩ።',
+
+# Friendlier slave lag warnings
+'lag-warn-normal' => 'ከ$1 ሴኮንድ በፊት ጀምሮ የቀረቡ ለውጦች ምናልባት በዚህ ዝርዝር አይታዩም።',
+'lag-warn-high' => 'የመረጃ-ቤት ሰርቨር በጣም ስለሚዘገይ፣ ከ$1 ሴኮንድ በፊት ጀምሮ የቀረቡ ለውጦች ምናልባት በዚህ ዝርዝር አይታዩም።',
+
# Watchlist editor
'watchlistedit-numitems' => 'አሁን በሙሉ {{PLURAL:$1|$1 ገጽ|$1 ገጾች}} እየተከታተሉ ነው።',
'watchlistedit-noitems' => 'ዝርዝርዎ ባዶ ነው።',
'watchlistedit-normal-title' => 'ዝርዝሩን ለማስተካከል',
'watchlistedit-normal-legend' => 'አርእስቶችን ከተካከሉት ገጾች ዝርዝር ለማስወግድ...',
-'watchlistedit-normal-explain' => 'ከዚህ ታች፣ የሚከታተሉት ገጾች ሁሉ በሙሉ ተዘርዝረው ይገኛሉ።
+'watchlistedit-normal-explain' => 'ከዚህ ታች፣ የሚከታተሉት ገጾች ሁሉ በሙሉ ተዘርዝረው ይገኛሉ።
አንዳንድ ገጽ ከዚህ ዝርዝር ለማስወግድ ያሠቡ እንደሆነ፣ በሳጥኑ ውስጥ ምልክት አድርገው በስተግርጌ በሚገኘው «ማስወግጃ» የሚለውን ተጭነው ከዚህ ዝርዝር ሊያስወግዷቸው ይቻላል። (ይህን በማድረግዎ ከገጹ ጋር የሚገናኘው ውይይት ገጽ ድግሞ ከዝርዝርዎ ይጠፋል።)
-ከዚህ ዘዴ ሌላ [[Special:Watchlist/raw|ጥሬውን ኮድ መቅዳት ወይም ማዘጋጀት]] ይቻላል። ወይም ደግሞ [[Special:Watchlist/clear|ዝርዝሩን በሙሉ ለማሟጠጥ]] ይቻላል።',
+ከዚህ ዘዴ ሌላ [[Special:Watchlist/raw|ጥሬውን ኮድ መቅዳት ወይም ማዘጋጀት]] ይቻላል።',
'watchlistedit-normal-submit' => 'ማስወገጃ',
-'watchlistedit-normal-done' => 'ከዝርዝርዎ እነዚህ አርእስቶች ተወግደዋል፦',
+'watchlistedit-normal-done' => 'ከዝርዝርዎ {{PLURAL:$1|1 አርዕስት ተወግዷል|$1 አርእስቶች ተወግደዋል}}፦',
'watchlistedit-raw-title' => 'የዝርዝሩ ጥሬ ኮድ',
'watchlistedit-raw-legend' => 'የዝርዝሩን ጥሬ ኮድ ለማዘጋጀት...',
'watchlistedit-raw-explain' => 'በተከታተሉት ገጾች ዝርዝር ላይ ያሉት አርእስቶች ሁሉ ከዚህ ታች ይታያሉ። በየመስመሩ አንድ አርእስት እንደሚኖር፣ ይህን ዝርዝር ለማዘጋጀት ይችላሉ። አዘጋጅተውት ከጨረሱ በኋላ በስተግርጌ «ዝርዝሩን ለማሳደስ» የሚለውን ይጫኑ። አለበለዚያ ቢሻልዎት፣ የተለመደውን ዘዴ ([[Special:Watchlist/edit|«ዝርዝሩን ለማስተካከል»]]) ይጠቀሙ።',
@@ -1086,4 +1999,39 @@ $3
'watchlisttools-edit' => 'ዝርዝሩን ለማስተካከል',
'watchlisttools-raw' => 'የዝርዝሩ ጥሬ ኮድ',
+# Core parser functions
+'unknown_extension_tag' => 'ያልታወቀ የቅጥያ ምልክት «$1»',
+
+# Special:Version
+'version' => 'ዝርያ', # Not used as normal message but as header for the special page itself
+'version-extensions' => 'የተሳኩ ቅጥያዎች',
+'version-specialpages' => 'ልዩ ገጾች',
+'version-parserhooks' => 'የዘርዛሪ ሜንጦዎች',
+'version-variables' => 'ተለዋጮች',
+'version-other' => 'ሌላ',
+'version-hooks' => 'ሜንጦዎች',
+'version-extension-functions' => 'የቅጥያ ሥራዎች',
+'version-parser-extensiontags' => 'የዝርዛሪ ቅጥያ ምልክቶች',
+'version-parser-function-hooks' => 'የዘርዛሪ ተግባር ሜጦዎች',
+'version-skin-extension-functions' => 'የመልክ ቅጥያ ተግባሮች',
+'version-hook-name' => 'የሜንጦ ስም',
+'version-hook-subscribedby' => 'የተጨመረበት',
+'version-version' => 'ዝርያ',
+'version-license' => 'ፈቃድ',
+'version-software' => 'የተሳካ ሶፍትዌር',
+'version-software-product' => 'ሶፍትዌር',
+'version-software-version' => 'ዝርያ',
+
+# Special:FilePath
+'filepath' => 'የፋይል መንገድ',
+'filepath-page' => 'ፋይሉ፦',
+'filepath-submit' => 'መንገድ',
+'filepath-summary' => 'ይህ ልዩ ገጽ ለ1 ፋይል ሙሉ መንገድ ይሰጣል።<br />
+ስዕል በሙሉ ማጉላት ይታያል፤ ሌላ አይነት ፋይል በሚገባው ፕሮግራም በቀጥታ ይጀመራል።
+
+የፋይሉ ስም («{{ns:image}}:» የሚለው ባዕድ መነሻ ሳይኖር) ከዚህ ታች ይግባ፦',
+
+# Special:SpecialPages
+'specialpages' => 'ልዩ ገጾች',
+
);
diff --git a/languages/messages/MessagesAn.php b/languages/messages/MessagesAn.php
index 9689cde7..0b2d6abf 100644
--- a/languages/messages/MessagesAn.php
+++ b/languages/messages/MessagesAn.php
@@ -1,13 +1,11 @@
<?php
/** Aragonese (Aragonés)
*
- * @addtogroup Language
+ * @ingroup Language
+ * @file
*
- * @author SPQRobin
* @author Juanpabl
* @author Willtron
- * @author Nike
- * @author Siebrand
* @author לערי ריינהארט
*/
@@ -137,14 +135,14 @@ $messages = array(
'tog-previewontop' => "Amostrar l'ambiesta prebia antes d'o cuatrón d'edizión",
'tog-previewonfirst' => "Amostrar l'ambiesta prebia de l'articlo en a primera edizión",
'tog-nocache' => "Desautibar a ''caché'' de pachinas",
-'tog-enotifwatchlistpages' => 'Nimbiar-me un correu cuan bi aiga cambeos en una pachina cosirata por yo',
+'tog-enotifwatchlistpages' => 'Rezibir un correu cuan se faigan cambios en una pachina cosirata por yo',
'tog-enotifusertalkpages' => 'Nimbiar-me un correu cuan cambee a mía pachina de descusión',
'tog-enotifminoredits' => 'Nimbiar-me un correu tamién cuan bi aiga edizions menors de pachinas',
'tog-enotifrevealaddr' => 'Fer beyer a mía adreza de correu-e en os correus de notificazión',
'tog-shownumberswatching' => "Amostrar o numero d'usuarios que cosiran un articlo",
'tog-fancysig' => 'Siñaduras simplas (sin de binclo automatico)',
-'tog-externaleditor' => 'Emplegar por defeuto á un editor esterno',
-'tog-externaldiff' => 'Emplegar por defeuto un bisualizador de cambeos esterno',
+'tog-externaleditor' => "Fer serbir l'editor esterno por defeuto (nomás ta espiertos, cal confegurar o suyo ordenador).",
+'tog-externaldiff' => 'Fer serbir o bisualizador de cambeos esterno por defeuto (nomás ta espiertos, cal confegurar o suyo ordenador)',
'tog-showjumplinks' => 'Autibar binclos d\'azesibilidat "blincar enta"',
'tog-uselivepreview' => 'Autibar prebisualizazión automatica (cal JavaScript) (Esperimental)',
'tog-forceeditsummary' => 'Abisar-me cuan o campo de resumen siga buedo.',
@@ -154,6 +152,7 @@ $messages = array(
'tog-nolangconversion' => 'Desautibar conversión de bariants',
'tog-ccmeonemails' => 'Rezibir copias de os correus que nimbío ta atros usuarios',
'tog-diffonly' => "No amostrar o conteniu d'a pachina debaxo d'as esferenzias",
+'tog-showhiddencats' => 'Amostrar categorías amagatas',
'underline-always' => 'Siempre',
'underline-never' => 'Nunca',
@@ -205,21 +204,29 @@ $messages = array(
'mar' => 'mar',
'apr' => 'abr',
'may' => 'may',
-'jun' => 'chn',
-'jul' => 'chl',
+'jun' => 'chun',
+'jul' => 'chul',
'aug' => 'ago',
'sep' => 'set',
'oct' => 'otu',
'nov' => 'nob',
'dec' => 'abi',
-# Bits of text used by many pages
-'categories' => 'Categorías',
-'pagecategories' => '{{PLURAL:$1|Categoría|Categorías}}',
-'category_header' => 'Articlos en a categoría "$1"',
-'subcategories' => 'Subcategorías',
-'category-media-header' => 'Contenius multimedia en a categoría "$1"',
-'category-empty' => "''Ista categoría no tiene por agora garra articlo ni conteniu multimedia''",
+# Categories related messages
+'pagecategories' => '{{PLURAL:$1|Categoría|Categorías}}',
+'category_header' => 'Articlos en a categoría "$1"',
+'subcategories' => 'Subcategorías',
+'category-media-header' => 'Contenius multimedia en a categoría "$1"',
+'category-empty' => "''Ista categoría no tiene por agora garra articlo ni conteniu multimedia''",
+'hidden-categories' => '{{PLURAL:$1|Categoría amagata|Categorías amagatas}}',
+'hidden-category-category' => 'Categorías amagatas', # Name of the category where hidden categories will be listed
+'category-subcat-count' => "{{PLURAL:$2|Ista categoría contiene nomás a siguient subcategoría.|Ista categoría encluye {{PLURAL:$1|a siguient subcategoría|as siguients $1 subcategorías}}, d'un total de $2.}}",
+'category-subcat-count-limited' => 'Ista categoría contiene {{PLURAL:$1|a siguient subcategoría|as siguients $1 subcategorías}}.',
+'category-article-count' => "{{PLURAL:$2|Ista categoría nomás encluye a pachina siguient.|{{PLURAL:$1|A pachina siguient fa parte|As pachinas siguients fan parte}} d'esta categoría, d'un total de $2.}}",
+'category-article-count-limited' => "{{PLURAL:$1|A pachina siguient fa parte|As $1 pachinas siguients fan parte}} d'ista categoría.",
+'category-file-count' => "{{PLURAL:$2|Ista categoría nomás contiene l'archibo siguient.|{{PLURAL:$1|L'archibo siguient fa parte|Os $1 archibos siguients fan parte}} d'ista categoría, d'un total de $2.}}",
+'category-file-count-limited' => "{{PLURAL:$1|L'archibo siguient fa parte|Os $1 archibos siguients fan parte}} d'ista categoría.",
+'listingcontinuesabbrev' => 'cont.',
'mainpagetext' => "O programa MediaWiki s'ha instalato correutament.",
'mainpagedocfooter' => "Consulta a [http://meta.wikimedia.org/wiki/Help:Contents Guía d'usuario] ta mirar informazión sobre cómo usar o software wiki.
@@ -267,7 +274,9 @@ $messages = array(
'permalink' => 'Binclo permanent',
'print' => 'Imprentar',
'edit' => 'Editar',
+'create' => 'Creyar',
'editthispage' => 'Editar ista pachina',
+'create-this-page' => 'Creyar ista pachina',
'delete' => 'Borrar',
'deletethispage' => 'Borrar ista pachina',
'undelete_short' => 'Restaurar {{PLURAL:$1|una edizión|$1 edizions}}',
@@ -305,30 +314,29 @@ $messages = array(
'jumptosearch' => 'busca',
# All link text and link target definitions of links into project namespace that get used by other message strings, with the exception of user group pages (see grouppage) and the disambiguation template definition (see disambiguations).
-'aboutsite' => 'Informazión sobre {{SITENAME}}',
-'aboutpage' => 'Project:Sobre',
-'bugreports' => "Informes d'errors d'o software",
-'bugreportspage' => "Project:Informes d'errors",
-'copyright' => 'O conteniu ye disponible baxo a lizenzia $1.',
-'copyrightpagename' => "Dreitos d'autor de {{SITENAME}}",
-'copyrightpage' => "{{ns:project}}:Dreitos d'autor",
-'currentevents' => 'Autualidat',
-'currentevents-url' => 'Project:Autualidat',
-'disclaimers' => 'Abiso legal',
-'disclaimerpage' => 'Project:Abiso legal',
-'edithelp' => 'Aduya ta editar pachinas',
-'edithelppage' => 'Help:Cómo se fa ta editar una pachina',
-'faq' => 'Preguntas cutianas',
-'faqpage' => 'Project:Preguntas cutianas',
-'helppage' => 'Help:Aduya',
-'mainpage' => 'Portalada',
-'policy-url' => 'Project:Politicas y normas',
-'portal' => "Portal d'a comunidat",
-'portal-url' => "Project:Portal d'a comunidat",
-'privacy' => 'Politica de pribazidat',
-'privacypage' => 'Project:Politica de pribazidat',
-'sitesupport' => 'Donazions',
-'sitesupport-url' => 'Project:Donazions',
+'aboutsite' => 'Informazión sobre {{SITENAME}}',
+'aboutpage' => 'Project:Sobre',
+'bugreports' => "Informes d'errors d'o software",
+'bugreportspage' => "Project:Informes d'errors",
+'copyright' => 'O conteniu ye disponible baxo a lizenzia $1.',
+'copyrightpagename' => "Dreitos d'autor de {{SITENAME}}",
+'copyrightpage' => "{{ns:project}}:Dreitos d'autor",
+'currentevents' => 'Autualidat',
+'currentevents-url' => 'Project:Autualidat',
+'disclaimers' => 'Abiso legal',
+'disclaimerpage' => 'Project:Abiso legal',
+'edithelp' => 'Aduya ta editar pachinas',
+'edithelppage' => "Help:Cómo s'edita una pachina",
+'faq' => 'Preguntas cutianas',
+'faqpage' => 'Project:Preguntas cutianas',
+'helppage' => 'Help:Aduya',
+'mainpage' => 'Portalada',
+'mainpage-description' => 'Portalada',
+'policy-url' => 'Project:Politicas y normas',
+'portal' => "Portal d'a comunidat",
+'portal-url' => "Project:Portal d'a comunidat",
+'privacy' => 'Politica de pribazidat',
+'privacypage' => 'Project:Politica de pribazidat',
'badaccess' => 'Error de premisos',
'badaccess-group0' => "No tiene premisos ta fer l'aizión que ha demandato.",
@@ -347,6 +355,7 @@ $messages = array(
'youhavenewmessagesmulti' => 'Tiene nuebos mensaches en $1',
'editsection' => 'editar',
'editold' => 'editar',
+'viewsourceold' => 'beyer codigo fuent',
'editsectionhint' => 'Editar a sezión: $1',
'toc' => 'Contenius',
'showtoc' => 'amostrar',
@@ -357,6 +366,10 @@ $messages = array(
'feedlinks' => 'Sendicazión como fuent de notizias:',
'feed-invalid' => 'Sendicazión como fuent de notizias no conforme.',
'feed-unavailable' => 'As fuents de sendicazión no son disponibles en {{SITENAME}}',
+'site-rss-feed' => 'Canal RSS $1',
+'site-atom-feed' => 'Canal Atom $1',
+'page-rss-feed' => 'Canal RSS "$1"',
+'page-atom-feed' => 'Canal Atom "$1"',
'red-link-title' => '$1 (encara no escrita)',
# Short words for each namespace, by default used in the namespace tab in monobook
@@ -377,16 +390,17 @@ $messages = array(
'nosuchspecialpage' => 'No esiste ixa pachina espezial',
'nospecialpagetext' => "<big>'''A pachina espezial que ha demandato no esiste.'''</big>
-Puede trobar una lista de pachinas espezials en [[Special:Specialpages]].",
+Puede trobar una lista de pachinas espezials en [[Special:SpecialPages|{{int:specialpages}}]].",
# General errors
+'error' => 'Error',
'databaseerror' => "Error d'a base de datos",
'dberrortext' => 'Ha escaizito una error de sintacsis en una consulta á la base de datos.
Isto podría endicar una error en o programa.
A zaguera consulta que se miró de fer estió: <blockquote><tt>$1</tt></blockquote> aintro d\'a funzión "<tt>$2</tt>". A error tornata por a base de datos estió "<tt>$3: $4</tt>".',
-'dberrortextcl' => 'Ha escaizito una error de sintacsis en una consulta á la base de datos. A zaguera consulta que se miró de fer estió:
-"$1"
-aintro d\'a funzión "$2".
+'dberrortextcl' => 'Ha escaizito una error de sintacsis en una consulta á la base de datos. A zaguera consulta que se miró de fer estió:
+"$1"
+aintro d\'a funzión "$2".
A base de datos retornó a error "<tt>$3: $4</tt>".',
'noconnect' => "A wiki tiene agora bellas dificultaz tecnicas, y no se podió contautar con o serbidor d'a base de datos. <br />
$1",
@@ -398,11 +412,13 @@ $1",
'readonlytext' => "A base de datos de {{SITENAME}} ye bloqueyata temporalment, probablement por mantenimiento rutinario, dimpués d'ixo tornará á la normalidat.
L'almenistrador que la bloqueyó dió ista esplicazión:
<p>$1",
-'missingarticle' => "A base de datos no trobó o testo d'a pachina \"\$1\", que abría d'aber trobato.
+'missing-article' => "No s'ha trobato en a base de datos o testo d'una pachina que abría d'estar-ie: \"\$1\" \$2.
-Isto gosa pasar si se sigue un binclo enta una esferenzia de bersions zircunduzita, u enta un istorial d'una pachina que ha estato borrata.
+Cal que a razón d'isto siga que s'ha seguito un diff masiau antigo u un binclo ta l'istorial d'una pachina que ya s'ha borrato.
-Si ista no ye a causa, podría aber trobato una error en o programa. Por fabor, informe d'isto á un almenistrador, endicando-le l'adreza URL.",
+Si no ye iste o caso, puede que aiga trobato un error en o software. Por fabor, informe d'isto á un [[Special:ListUsers/sysop|almenistrador]], endicando-le a URL.",
+'missingarticle-rev' => '(bersión#: $1)',
+'missingarticle-diff' => '(Esf: $1, $2)',
'readonly_lag' => 'A base de datos ye bloqueyata temporalment entre que os serbidors se sincronizan.',
'internalerror' => 'Error interna',
'internalerror_info' => 'Error interna: $1',
@@ -431,22 +447,29 @@ Consulta: $2',
'actionthrottledtext' => "Como mida anti-spam, bi ha un limite en o numero de begadas que puede fer ista aizión en un curto espazio de tiempo, y ha brincato d'iste limite. Aspere bels menutos y prebe de fer-lo nuebament.",
'protectedpagetext' => 'Ista pachina ha estato protechita ta aprebenir a suya edizión.',
'viewsourcetext' => "Puede beyer y copiar o codigo fuent d'ista pachina:",
-'protectedinterface' => "Ista pachina furne o testo d'a interfaz ta o software. Ye protechita ta pribar o bandalismo. Si creye que bi ha bella error, contaute con un [[{{MediaWiki:Grouppage-sysop}}|Almenistrador]].",
+'protectedinterface' => "Ista pachina furne o testo d'a interfaz ta o software. Ye protechita ta pribar o bandalismo. Si creye que bi ha bella error, contaute con un almenistrador.",
'editinginterface' => "'''Pare cuenta:''' Ye editando una pachina emplegata ta furnir o testo d'a interfaz de {{SITENAME}}. Os cambeos en ista pachina tendrán efeuto en l'aparenzia d'a interfaz ta os atros usuarios. Ta fer traduzions d'a interfaz, puede considerar fer serbir [http://translatewiki.net/wiki/Main_Page?setlang=an Betawiki], o procheuto de localizazión de MediaWiki.",
'sqlhidden' => '(Consulta SQL amagata)',
'cascadeprotected' => 'Ista pachina ye protechita y no se puede editar porque ye encluyita en {{PLURAL:$1|a siguient pachina|as siguients pachinas}}, que son protechitas con a opzión de "cascada": $2',
'namespaceprotected' => "No tiene premiso ta editar as pachinas d'o espazio de nombres '''$1'''.",
'customcssjsprotected' => "No tiene premiso ta editar ista pachina porque contiene a confegurazión presonal d'atro usuario.",
'ns-specialprotected' => "No ye posible editar as pachinas d'o espazio de nombres {{ns:special}}.",
-'titleprotected' => 'Iste títol no puede creyar-se porque ye estato protechito por [[User:$1|$1]]. A razón data ye <i>$2</i>.',
+'titleprotected' => "Iste títol no puede creyar-se porque ye estato protechito por [[User:$1|$1]].
+A razón data ye ''$2''.",
+
+# Virus scanner
+'virus-badscanner' => 'Confegurazión incorreuta: rastriador de birus esconoixito: <i>$1</i>',
+'virus-scanfailed' => 'o rastreyo ha fallato (codigo $1)',
+'virus-unknownscanner' => 'antibirus esconoixito:',
# Login and logout pages
'logouttitle' => "Fin d'a sesión",
-'logouttext' => "Ha rematato a sesión.
-Puede continar nabegando por {{SITENAME}} anonimament, u puede enzetar unatra sesión atra begada con o mesmo u atro usuario. Pare cuenta que bellas pachinas se pueden amostrar encara como si continase en a sesión anterior, dica que se limpie a caché d'o nabegador.",
-'welcomecreation' => "== ¡Bienbeniu(da), $1! ==
+'logouttext' => "<strong>Ha rematato a sesión.</strong>
-S'ha creyato a suya cuenta. No xublide presonalizar as [[Special:Preferences|preferenzias]].",
+Puede continar nabegando por {{SITENAME}} anonimament, u puede [[Special:UserLogin|enzetar]] una nueba sesión con o mesmo nombre d'usuario u unatro diferent. Pare cuenta que, entre que se limpia a caché d'o nabegador, puet estar que bellas pachinas s'amuestren como si encara continase en a sesión anterior.",
+'welcomecreation' => "== ¡Bienbeniu(da), $1! ==
+S'ha creyato a suya cuenta.
+No xublide presonalizar [[Special:Preferences|as suyas preferenzias en {{SITENAME}}]].",
'loginpagetitle' => 'Enzetar a sesión',
'yourname' => "Nombre d'usuario:",
'yourpassword' => 'Palabra de paso:',
@@ -456,7 +479,8 @@ S'ha creyato a suya cuenta. No xublide presonalizar as [[Special:Preferences|pre
'externaldberror' => "Bi abió una error d'autenticazión esterna d'a base de datos u bien no tiene premisos ta esbiellar a suya cuenta esterna.",
'loginproblem' => '<b>Escaizió un problema con a suya autenticazión.</b><br />¡Prebe unatra begada!',
'login' => 'Enzetar sesión',
-'loginprompt' => 'Ha de autibar as <i>cookies</i> en o nabegador ta rechistrar-se en {{SITENAME}}.',
+'nav-login-createaccount' => 'Enzetar una sesión / creyar cuenta',
+'loginprompt' => "Ta rechistrar-se en {{SITENAME}} ha d'autibar as cookies en o nabegador.",
'userlogin' => 'Enzetar una sesión / creyar cuenta',
'logout' => "Salir d'a sesión",
'userlogout' => 'Salir',
@@ -472,12 +496,13 @@ S'ha creyato a suya cuenta. No xublide presonalizar as [[Special:Preferences|pre
'youremail' => 'Adreza de correu electronico:',
'username' => "Nombre d'usuario:",
'uid' => "ID d'usuario:",
+'prefs-memberingroups' => "Miembro {{PLURAL:$1|d'a colla|d'as collas}}:",
'yourrealname' => 'Nombre reyal:',
'yourlanguage' => 'Luenga:',
'yourvariant' => 'Modalidat linguistica:',
-'yournick' => 'Embotada (ta siñar):',
+'yournick' => 'Siñadura:',
'badsig' => 'A suya siñadura no ye conforme; comprebe as etiquetas HTML.',
-'badsiglength' => 'Embotada masiau larga; no abría de tener más de $1 caráuters.',
+'badsiglength' => 'A siñadura ye masiau larga. No abría de tener más de $1 {{PLURAL:$1|caráuter|caráuters}}.',
'email' => 'Adreza de correu-e',
'prefs-help-realname' => "* Nombre reyal (opzional): si esliche escribir-lo, se ferá serbir ta l'atribuzión d'a suya faina.",
'loginerror' => 'Error en enzetar a sesión',
@@ -494,20 +519,20 @@ Comprebe si ha escrito bien o nombre u creye una nueba cuenta d\'usuario.',
'nouserspecified' => "Ha d'escribir un nombre d'usuario.",
'wrongpassword' => 'A palabra de paso endicata no ye correuta. Prebe unatra begada.',
'wrongpasswordempty' => 'No ha escrito garra palabra de paso. Prebe unatra begada.',
-'passwordtooshort' => "A palabra de paso no ye conforme u ye masiau curta. Ha de tener como menimo $1 caráuters y no ha d'estar a mesma que o nombre d'usuario.",
+'passwordtooshort' => "A suya palabra de paso no ye conforme u ye masiau curta. Ha de tener como menimo {{PLURAL:$1|1 caráuter|$1 caráuters}} y no puede estar o suyo nombre d'usuario.",
'mailmypassword' => 'Nimbía-me una nueba palabra de paso por correu electronico',
'passwordremindertitle' => 'Nueba palabra de paso temporal de {{SITENAME}}',
-'passwordremindertext' => 'Belún (probablement busté, dende l\'adreza IP $1) demandó que li nimbiásenos una nueba palabra de paso ta la suya cuenta en {{SITENAME}} ($4).
+'passwordremindertext' => 'Belún (probablement busté, dende l\'adreza IP $1) demandó que li nimbiásenos una nueba palabra de paso ta la suya cuenta en {{SITENAME}} ($4).
A palabra de paso ta l\'usuario "$2" ye agora "$3".
Li consellamos que enzete agora una sesión y cambee a suya palabra de paso.
Si iste mensache fue demandato por otri, u si ya se\'n ha alcordato d\'a palabra de paso y ya no deseya cambiar-la, puede innorar iste mensache y continar fendo serbir l\'antiga palabra de paso.',
'noemail' => 'No bi ha garra adreza de correu electronico rechistrada ta "$1".',
-'passwordsent' => 'Una nueba palabra de paso plega de nimbiar-se ta o correu electronico de "$1".
+'passwordsent' => 'Una nueba palabra de paso plega de nimbiar-se ta o correu electronico de "$1".
Por fabor, identifique-se unatra bez malas que la reculla.',
'blocked-mailpassword' => "A suya adreza IP ye bloqueyata y, ta pribar abusos, no se li premite emplegar d'a funzión de recuperazión de palabras de paso.",
'eauthentsent' => "S'ha nimbiato un correu electronico de confirmazión ta l'adreza espezificata. Antes que no se nimbíe dengún atro correu ta ixa cuenta, ha de confirmar que ixa adreza te pertenexe. Ta ixo, cal que siga as instruzions que trobará en o mensache.",
-'throttled-mailpassword' => "Ya s'ha nimbiato un correu recordatorio con a suya palabra de paso fa menos de $1 oras. Ta pribar abusos, sólo se nimbia un recordatorio cada $1 oras.",
+'throttled-mailpassword' => "Ya s'ha nimbiato un correu recordatorio con a suya palabra de paso fa menos de {{PLURAL:$1|1 ora|$1 oras}}. Ta escusar abusos, nomás se nimbia un recordatorio cada {{PLURAL:$1|ora|$1 oras}}.",
'mailerror' => 'Error en nimbiar o correu: $1',
'acct_creation_throttle_hit' => 'Lo sentimos, ya ha creyato $1 cuentas. No puede creyar más cuentas.',
'emailauthenticated' => 'A suya adreza de correu-e estió confirmata o $1.',
@@ -541,7 +566,7 @@ Si a cuenta s\'ha creyato por error, simplament innore iste mensache.',
'italic_tip' => 'Testo en cursiba',
'link_sample' => "Títol d'o binclo",
'link_tip' => 'Binclo interno',
-'extlink_sample' => "http://www.exemplo.com Títol d'o binclo",
+'extlink_sample' => "http://www.example.com Títol d'o binclo",
'extlink_tip' => "Binclo esterno (alcuerde-se d'adibir o prefixo http://)",
'headline_sample' => 'Testo de tetular',
'headline_tip' => 'Tetular de libel 2',
@@ -557,23 +582,23 @@ Si a cuenta s\'ha creyato por error, simplament innore iste mensache.',
'hr_tip' => 'Linia orizontal (en faiga un emplego amoderau)',
# Edit pages
-'summary' => 'Resumen',
-'subject' => 'Tema/títol',
-'minoredit' => 'He feito una edizión menor',
-'watchthis' => 'Cosirar ista pachina',
-'savearticle' => 'Alzar pachina',
-'preview' => 'Bisualizazión prebia',
-'showpreview' => 'Bisualizazión prebia',
-'showlivepreview' => 'Ambiesta prebia rapeda',
-'showdiff' => 'Amostrar cambeos',
-'anoneditwarning' => "''Pare cuenta:'' No s'ha identificato con un nombre d'usuario. A suya adreza IP s'alzará en o istorial d'a pachina.",
-'missingsummary' => "'''Pare cuenta:''' No ha escrito garra resumen d'edizión. Si fa clic nuebament en «{{MediaWiki:Savearticle}}» a suya edizión se grabará sin resumen.",
-'missingcommenttext' => 'Por fabor, escriba o testo astí baxo.',
-'missingcommentheader' => "'''Pare cuenta:''' No ha escrito garra títol ta iste comentario. Si puncha un atra bez en con a rateta en \"Alzar\", a suya edizión se grabará sin títol.",
-'summary-preview' => "Beyer ambiesta prebia d'o resumen",
-'subject-preview' => "Ambiesta prebia d'o tema/títol",
-'blockedtitle' => "L'usuario ye bloqueyato",
-'blockedtext' => "<big>'''O suyo nombre d'usuario u adreza IP ha estato bloqueyato.'''</big>
+'summary' => 'Resumen',
+'subject' => 'Tema/títol',
+'minoredit' => 'He feito una edizión menor',
+'watchthis' => 'Cosirar ista pachina',
+'savearticle' => 'Alzar pachina',
+'preview' => 'Bisualizazión prebia',
+'showpreview' => 'Bisualizazión prebia',
+'showlivepreview' => 'Ambiesta prebia rapeda',
+'showdiff' => 'Amostrar cambeos',
+'anoneditwarning' => "''Pare cuenta:'' No s'ha identificato con un nombre d'usuario. A suya adreza IP s'alzará en o istorial d'a pachina.",
+'missingsummary' => "'''Pare cuenta:''' No ha escrito garra resumen d'edizión. Si fa clic nuebament en «{{MediaWiki:Savearticle}}» a suya edizión se grabará sin resumen.",
+'missingcommenttext' => 'Por fabor, escriba o testo astí baxo.',
+'missingcommentheader' => "'''Pare cuenta:''' No ha escrito garra títol ta iste comentario. Si puncha un atra bez en con a rateta en \"Alzar\", a suya edizión se grabará sin títol.",
+'summary-preview' => "Beyer ambiesta prebia d'o resumen",
+'subject-preview' => "Ambiesta prebia d'o tema/títol",
+'blockedtitle' => "L'usuario ye bloqueyato",
+'blockedtext' => "<big>'''O suyo nombre d'usuario u adreza IP ha estato bloqueyato.'''</big>
O bloqueyo fue feito por \$1. A razón data ye ''\$2''.
@@ -584,7 +609,7 @@ O bloqueyo fue feito por \$1. A razón data ye ''\$2''.
Puede contautar con \$1 u con atro [[{{MediaWiki:Grouppage-sysop}}|almenistrador]] ta letigar sobre o bloqueyo.
No puede fer serbir o binclo \"nimbiar correu electronico ta iste usuario\" si no ha rechistrato una adreza conforme de correu electronico en as suyas [[Special:Preferences|preferenzias]]. A suya adreza IP autual ye \$3, y o identificador d'o bloqueyo ye #\$5. Por fabor encluiga belún u os dos datos cuan faga cualsiquier consulta.",
-'autoblockedtext' => "A suya adreza IP fue bloqueyata automaticament porque l'eba feito serbir un atro usuario bloqueyato por \$1.
+'autoblockedtext' => "A suya adreza IP fue bloqueyata automaticament porque l'eba feito serbir un atro usuario bloqueyato por \$1.
A razón d'o bloqueyo ye ista:
@@ -600,99 +625,110 @@ Puede contautar con \$1 u con atro d'os [[{{MediaWiki:Grouppage-sysop}}|almenist
Pare cuenta que no puede emplegar a funzión \"Nimbiar correu electronico ta iste usuario\" si no tiene una adreza de correu electronico conforme rechistrada en as suyas [[Special:Preferences|preferenzias d'usuario]] u si li ha estato biedata ista funzión.
O suyo identificador de bloqueyo ye \$5. Por fabor encluiga belún u os dos datos cuan faga cualsiquier consulta.",
-'blockednoreason' => "No s'ha dato garra causa",
-'blockedoriginalsource' => "Contino s'amuestra o codigo fuent de '''$1''':",
-'blockededitsource' => "Contino s'amuestra o testo d'as suyas '''edizions''' á '''$1''':",
-'whitelistedittitle' => 'Cal enzetar una sesión ta ta fer edizions.',
-'whitelistedittext' => 'Ha de $1 ta poder editar pachinas.',
-'whitelistreadtitle' => "Cal que s'identifique y que enzete una sesión ta poder leyer",
-'whitelistreadtext' => 'Ha de [[Special:Userlogin|identificar-se]] ta leyer as pachinas.',
-'whitelistacctitle' => 'No tiene premiso ta creyar una cuenta',
-'whitelistacctext' => 'Ta poder creyar cuentas en {{SITENAME}} li cal [[Special:Userlogin|enzetar una sesión]] y tener os premisos apropiatos.',
-'confirmedittitle' => 'Cal que confirme a suya adreza de correu-e ta poder editar',
-'confirmedittext' => "Ha de confirmar a suya adreza de correu-e antis de poder editar pachinas. Por fabor, establa y confirme una adreza de correu-e a trabiés d'as suyas [[Special:Preferences|preferenzias d'usuario]].",
-'nosuchsectiontitle' => 'No esiste ixa sezión',
-'nosuchsectiontext' => "Has prebato d'editar una sezión que no existe. Como no bi ha sezión $1, as suyas edizions no se pueden alzar en garra puesto.",
-'loginreqtitle' => 'Cal que enzete una sesión',
-'loginreqlink' => 'enzetar una sesión',
-'loginreqpagetext' => 'Ha de $1 ta beyer atras pachinas.',
-'accmailtitle' => 'A palabra de paso ha estato nimbiata.',
-'accmailtext' => "A palabra de paso de '$1' s'ha nimbiato á $2.",
-'newarticle' => '(Nuebo)',
-'newarticletext' => "Ha siguito un binclo ta una pachina que encara no esiste.
+'blockednoreason' => "No s'ha dato garra causa",
+'blockedoriginalsource' => "Contino s'amuestra o codigo fuent de '''$1''':",
+'blockededitsource' => "Contino s'amuestra o testo d'as suyas '''edizions''' á '''$1''':",
+'whitelistedittitle' => 'Cal enzetar una sesión ta poder editar.',
+'whitelistedittext' => 'Ha de $1 ta poder editar pachinas.',
+'confirmedittitle' => 'Cal que confirme a suya adreza de correu-e ta poder editar',
+'confirmedittext' => "Ha de confirmar a suya adreza de correu-e antis de poder editar pachinas. Por fabor, establa y confirme una adreza de correu-e a trabiés d'as suyas [[Special:Preferences|preferenzias d'usuario]].",
+'nosuchsectiontitle' => 'No esiste ixa sezión',
+'nosuchsectiontext' => "Has prebato d'editar una sezión que no existe. Como no bi ha sezión $1, as suyas edizions no se pueden alzar en garra puesto.",
+'loginreqtitle' => 'Cal que enzete una sesión',
+'loginreqlink' => 'enzetar una sesión',
+'loginreqpagetext' => 'Ha de $1 ta beyer atras pachinas.',
+'accmailtitle' => 'A palabra de paso ha estato nimbiata.',
+'accmailtext' => "A palabra de paso de '$1' s'ha nimbiato á $2.",
+'newarticle' => '(Nuebo)',
+'newarticletext' => "Ha siguito un binclo ta una pachina que encara no esiste.
Ta creyar a pachina, prenzipie á escribir en a caxa d'abaxo
(mire-se l'[[{{MediaWiki:Helppage}}|aduya]] ta más informazión).
Si bi ha plegau por error, punche o botón d'o suyo nabegador ta tornar entazaga.",
-'anontalkpagetext' => "---- ''Ista ye a pachina de descusión d'un usuario anonimo que encara no ha creyato una cuenta, u no l'ha feito serbir. Por ixo, hemos d'emplegar a suya adreza IP ta identificar-lo/a. Una adreza IP puede estar compartita entre diferens usuarios. Si busté ye un usuario anonimo y creye que s'han endrezato á busté con comentarios no relebants, [[Special:Userlogin|creye una cuenta u identifique-se]] ta pribar esdebenideras confusions con atros usuarios anonimos.''",
-'noarticletext' => 'Por agora no bi ha testo en ista pachina. Puede [[Special:Search/{{PAGENAME}}|mirar o títol]] en atras pachinas u [{{fullurl:{{FULLPAGENAME}}|action=edit}} prenzipiar á escribir en ista pachina].',
-'userpage-userdoesnotexist' => 'A cuenta d\'usuario "$1" no ye rechistrada. Piense si quiere creyar u editar ista pachina.',
-'clearyourcache' => "'''Nota:''' Si quiere beyer os cambeos dimpués d'alzar l'archibo, puede estar que tienga que refrescar a caché d'o suyo nabegador ta beyer os cambeos:
-*'''Mozilla:''' ''ctrl-shift-r'',
-*'''Internet Explorer:''' ''ctrl-f5'',
-*'''Safari:''' ''cmd-shift-r'',
-*'''Konqueror''' ''f5''.",
-'usercssjsyoucanpreview' => '<strong>Consello:</strong> Faga serbir o botón «Amostrar prebisualizazión» ta prebar o nuebo css/js antes de grabar-lo.',
-'usercsspreview' => "'''Remere que sólo ye prebisualizando o suyo css d'usuario y encara no ye grabato!'''",
-'userjspreview' => "'''Remere que sólo ye prebisualizando o suyo javascript d'usuario y encara no ye grabato!'''",
-'userinvalidcssjstitle' => "'''Pare cuenta:''' No bi ha garra aparenzia clamata \"\$1\". Remere que as pachinas presonalizatas .css y .js tienen un títol en minusclas, p.e. {{ns:user}}:Foo/monobook.css en cuenta de {{ns:user}}:Foo/Monobook.css.",
-'updated' => '(Esbiellato)',
-'note' => '<strong>Nota:</strong>',
-'previewnote' => "<strong>Pare cuenta que isto sólo ye que l'ambiesta prebia d'a pachina; os cambeos encara no han estato alzatos!</strong>",
-'previewconflict' => "L'ambiesta prebia li amostrará l'aparenzia d'o testo dimpués d'alzar os cambeos.",
-'session_fail_preview' => "<strong>Ya lo sentimos, pero no podiemos alzar a suya edizión por una perda d'os datos de sesion. Por fabor, prebe de fer-lo una atra bez, y si encara no funziona, salga d'a sesión y torne á identificar-se.</strong>",
-'session_fail_preview_html' => "<strong>Ya lo sentimos, pero no emos puesto prozesar a suya edizión porque os datos de sesión s'han acazegatos.</strong>
-
-''Como {{SITENAME}} tiene l'HTML puro autibato, s'ha amagato l'ambiesta prebia ta aprebenir ataques en JavaScript.''
-
-<strong>Si ye mirando d'editar lechitimament, por fabor, prebe una atra bez. Si encara no funzionase alabez, prebe-se de zarrar a sesión y i dentre identificando-se de nuebas.</strong>",
-'token_suffix_mismatch' => "<strong>S'ha refusato a suya edizión porque o suyo client ha esbarafundiato os caráuters de puntuazión en o editor. A edizión s'ha refusata ta pribar a corrompizión d'a pachina de testo. Isto gosa escaizer cuan se fa serbir un serbizio de proxy defeutuoso alazetato en a web.</strong>",
-'editing' => 'Editando $1',
-'editinguser' => "S'esta cambiando os dreitos de l'usuario '''[[User:$1|$1]]''' ([[User talk:$1|{{int:talkpagelinktext}}]] | [[Special:Contributions/$1|{{int:contribslink}}]])",
-'editingsection' => 'Editando $1 (sezión)',
-'editingcomment' => 'Editando $1 (comentario)',
-'editconflict' => "Conflito d'edizión: $1",
-'explainconflict' => "Bel atro usuario ha cambiato ista pachina dende que bustet prenzipió á editar-la. O cuatrón de testo superior contiene o testo d'a pachina como ye autualment. Os suyos cambeos s'amuestran en o cuatrón de testo inferior. Abrá d'encorporar os suyos cambeos en o testo esistent. <b>Nomás</b> o testo en o cuatrón superior s'alzará cuan prete o botón \"Alzar a pachina\". <br />",
-'yourtext' => 'O testo suyo',
-'storedversion' => 'Bersión almadazenata',
-'nonunicodebrowser' => "<strong>Pare cuenta: O suyo nabegador no cumple a norma Unicode. S'ha autibato un sistema d'edizión alternatibo que li premitirá d'editar articlos con seguridat: os caráuters no ASCII aparixerán en a caxa d'edizión como codigos exadezimals.</strong>",
-'editingold' => "<strong>PARE CUENTA: Ye editando una bersión antiga d'ista pachina. Si alza a pachina, toz os cambeos feitos dende ixa rebisión se tresbatirán.</strong>",
-'yourdiff' => 'Esferenzias',
-'copyrightwarning' => "Por fabor, pare cuenta que todas as contrebuzions á {{SITENAME}} se consideran publicatas baxo a lizenzia $2 (beyer detalles en $1). Si no deseya que atra chent corricha os suyos escritos sin piedat y los destribuiga librement, alabez, no debería meter-los aquí. En publicar aquí, tamién ye declarando que busté mesmo escribió iste testo y ye dueño d'os dreitos d'autor, u bien lo copió dende o dominio publico u cualsiquier atra fuent libre.
+'anontalkpagetext' => "----''Ista ye a pachina de descusión d'un usuario anonimo que encara no ha creyato una cuenta, u no l'ha feito serbir. Por ixo, emos d'emplegar a suya adreza IP ta identificar-lo/a.
+Barios usuarios pueden compartir una mesma adreza IP.
+Si busté ye un usuario anonimo y creye que l'han escrito comentarios no relebants, [[Special:UserLogin/signup|creye una cuenta]] u [[Special:UserLogin/signup|identifique-se]] ta pribar confusions futuras con atros usuarios anonimos.''",
+'noarticletext' => 'Por agora no bi ha testo en ista pachina. Puede [[Special:Search/{{PAGENAME}}|mirar o títol]] en atras pachinas u [{{fullurl:{{FULLPAGENAME}}|action=edit}} prenzipiar á escribir en ista pachina].',
+'userpage-userdoesnotexist' => 'A cuenta d\'usuario "$1" no ye rechistrada. Piense si quiere creyar u editar ista pachina.',
+'clearyourcache' => "'''Pare cuenta: Si quiere beyer os cambeos dimpués d'alzar l'archibo, puede estar que tienga que refrescar a caché d'o suyo nabegador ta beyer os cambeos.''' '''Mozilla / Firefox / Safari:''' prete a tecla de ''Mayusclas'' mientras puncha ''Reload,'' u prete '''Ctrl-Fr''' u '''Ctrl-R''' (''Command-R'' en un Macintosh); '''Konqueror: ''' punche ''Reload'' u prete ''F5;'' '''Opera:''' limpiar a caché en ''Tools → Preferences;'' '''Internet Explorer:''' prete ''Ctrl'' mientres puncha ''Refresh,'' u prete ''Ctrl-F5.''",
+'usercssjsyoucanpreview' => '<strong>Consello:</strong> Faga serbir o botón «Amostrar prebisualizazión» ta prebar o nuebo css/js antes de grabar-lo.',
+'usercsspreview' => "'''Remere que sólo ye prebisualizando o suyo css d'usuario y encara no ye grabato!'''",
+'userjspreview' => "'''Remere que sólo ye prebisualizando o suyo javascript d'usuario y encara no ye grabato!'''",
+'userinvalidcssjstitle' => "'''Pare cuenta:''' No bi ha garra aparenzia clamata \"\$1\". Remere que as pachinas presonalizatas .css y .js tienen un títol en minusclas, p.e. {{ns:user}}:Foo/monobook.css en cuenta de {{ns:user}}:Foo/Monobook.css.",
+'updated' => '(Esbiellato)',
+'note' => '<strong>Nota:</strong>',
+'previewnote' => "<strong>Pare cuenta que isto sólo ye que l'ambiesta prebia d'a pachina; os cambeos encara no han estato alzatos!</strong>",
+'previewconflict' => "L'ambiesta prebia li amostrará l'aparenzia d'o testo dimpués d'alzar os cambeos.",
+'session_fail_preview' => "<strong>Ya lo sentimos, pero no emos puesto alzar a suya edizión por una perduga d'os datos de sesion. Por fabor, prebe de fer-lo una atra bez, y si encara no funziona, [[Special:UserLogout|salga d'a sesión]] y torne á identificar-se.</strong>",
+'session_fail_preview_html' => "<strong>Ya lo sentimos, pero no emos puesto prozesar a suya edizión porque os datos de sesión s'han trafegatos.</strong>
+
+''Como {{SITENAME}} tiene l'HTML puro autibato, s'ha amagato l'ambiesta prebia ta aprebenir ataques en JavaScript.''
+
+<strong>Si ye mirando d'editar lechitimament, por fabor, prebe una atra bez. Si encara no funzionase alabez, prebe-se de [[Special:UserLogout|zarrar a sesión]] y dentrar-ie identificando-se de nuebas.</strong>",
+'token_suffix_mismatch' => "<strong>S'ha refusato a suya edizión porque o suyo client ha esbarafundiato os caráuters de puntuazión en o editor. A edizión s'ha refusata ta pribar a corrompizión d'a pachina de testo. Isto gosa escaizer cuan se fa serbir un serbizio de proxy defeutuoso alazetato en a web.</strong>",
+'editing' => 'Editando $1',
+'editingsection' => 'Editando $1 (sezión)',
+'editingcomment' => 'Editando $1 (comentario)',
+'editconflict' => "Conflito d'edizión: $1",
+'explainconflict' => "Bel atro usuario ha cambiato ista pachina dende que bustet prenzipió á editar-la.
+O cuatrón de testo superior contiene o testo d'a pachina como ye autualment.
+Os suyos cambeos s'amuestran en o cuatrón de testo inferior.
+Abrá d'encorporar os suyos cambeos en o testo esistent.
+'''Nomás''' o testo en o cuatrón superior s'alzará cuan prete o botón \"Alzar a pachina\".",
+'yourtext' => 'O testo suyo',
+'storedversion' => 'Bersión almadazenata',
+'nonunicodebrowser' => "<strong>Pare cuenta: O suyo nabegador no cumple a norma Unicode. S'ha autibato un sistema d'edizión alternatibo que li premitirá d'editar articlos con seguridat: os caráuters no ASCII aparixerán en a caxa d'edizión como codigos exadezimals.</strong>",
+'editingold' => "<strong>PARE CUENTA: Ye editando una bersión antiga d'ista pachina. Si alza a pachina, toz os cambeos feitos dende ixa rebisión se tresbatirán.</strong>",
+'yourdiff' => 'Esferenzias',
+'copyrightwarning' => "Por fabor, pare cuenta que todas as contrebuzions á {{SITENAME}} se consideran publicatas baxo a lizenzia $2 (beyer detalles en $1). Si no deseya que atra chent corricha os suyos escritos sin piedat y los destribuiga librement, alabez, no debería meter-los aquí. En publicar aquí, tamién ye declarando que busté mesmo escribió iste testo y ye dueño d'os dreitos d'autor, u bien lo copió dende o dominio publico u cualsiquier atra fuent libre.
<strong>NO COPIE SIN PREMISO ESCRITOS CON DREITOS D'AUTOR!</strong><br />",
-'copyrightwarning2' => "Por fabor, pare cuenta que todas as contrebuzions á {{SITENAME}} pueden estar editatas, cambiatas u borratas por atros colaboradors. Si no deseya que atra chent corricha os suyos escritos sin piedat y los destribuiga librement, alabez, no debería meter-los aquí. <br /> En publicar aquí, tamién ye declarando que busté mesmo escribió iste testo y ye o dueño d'os dreitos d'autor, u bien lo copió dende o dominio publico u cualsiquier atra fuent libre (beyer $1 ta más informazión). <br />
+'copyrightwarning2' => "Por fabor, pare cuenta que todas as contrebuzions á {{SITENAME}} pueden estar editatas, cambiatas u borratas por atros colaboradors. Si no deseya que atra chent corricha os suyos escritos sin piedat y los destribuiga librement, alabez, no debería meter-los aquí. <br /> En publicar aquí, tamién ye declarando que busté mesmo escribió iste testo y ye o dueño d'os dreitos d'autor, u bien lo copió dende o dominio publico u cualsiquier atra fuent libre (beyer $1 ta más informazión). <br />
<strong>NO COPIE SIN PREMISO ESCRITOS CON DREITOS D'AUTOR!</strong>",
-'longpagewarning' => '<strong>Pare cuenta: Ista pachina tiene ya $1 kilobytes; bels nabegadors pueden tener problemas en editar pachinas de 32KB o más.
+'longpagewarning' => '<strong>Pare cuenta: Ista pachina tiene ya $1 kilobytes; bels nabegadors pueden tener problemas en editar pachinas de 32KB o más.
Considere, por fabor, a posibilidat de troxar ista pachina en trestallos más chicoz.</strong>',
-'longpageerror' => '<strong>ERROR: O testo que ha escrito ye de $1 kilobytes, que ye mayor que a grandaria maisima de $2 kilobytes. No se puede alzar.</strong>',
-'readonlywarning' => '<strong>Pare cuenta: A base de datos ha estato bloqueyata por custions de mantenimiento. Por ixo, en iste inte ye imposible alzar as suyas edizions. Puede copiar y apegar o testo en un archibo y alzar-lo ta dimpués.</strong>',
-'protectedpagewarning' => "<strong>PARE CUENTA: Ista pachina ha estato protechita ta que sólo os usuarios con premisos d'almenistrador puedan editar-la.</strong>",
-'semiprotectedpagewarning' => "'''Nota:''' Ista pachina ha estato protechita ta que nomás usuarios rechistratos puedan editar-la.",
-'cascadeprotectedwarning' => "'''Pare cuenta:''' Ista pachina ye protechita ta que nomás os almenistrador puedan editar-la, porque ye encluyita en {{PLURAL:$1|a siguient pachina, protechita|as siguients pachinas, protechitas}} con a opzión de ''cascada'' :",
-'titleprotectedwarning' => '<strong>PARE CUENTA: Ista pachina ye bloqueyata ta que sólo bels usuarios puedan creyar-la.</strong>',
-'templatesused' => 'Plantillas emplegatas en ista pachina:',
-'templatesusedpreview' => 'Plantillas emplegatas en ista ambiesta prebia:',
-'templatesusedsection' => 'Plantillas usatas en ista sezión:',
-'template-protected' => '(protechita)',
-'template-semiprotected' => '(semiprotechita)',
-'edittools' => "<!-- Iste testo amanixerá baxo os formularios d'edizión y carga. -->",
-'nocreatetitle' => "S'ha restrinchito a creyazión de pachinas",
-'nocreatetext' => '{{SITENAME}} ha restrinchito a creyazión de nuebas pachinas. Puede tornar entazaga y editar una pachina ya esistent, [[Special:Userlogin|identificarse u creyar una cuenta]].',
-'nocreate-loggedin' => 'No tiene premisos ta creyar nuebas pachinas en {{SITENAME}}.',
-'permissionserrors' => 'Errors de premisos',
-'permissionserrorstext' => 'No tiene premisos ta fer-lo, por {{PLURAL:$1|ista razón|istas razons}}:',
-'recreate-deleted-warn' => "'''Pare cuenta: ye creyando una pachina que ya ha estato borrata denantes.'''
+'longpageerror' => '<strong>ERROR: O testo que ha escrito ye de $1 kilobytes, que ye mayor que a grandaria maisima de $2 kilobytes. No se puede alzar.</strong>',
+'readonlywarning' => '<strong>Pare cuenta: A base de datos ha estato bloqueyata por custions de mantenimiento. Por ixo, en iste inte ye imposible alzar as suyas edizions. Puede copiar y apegar o testo en un archibo y alzar-lo ta dimpués.</strong>',
+'protectedpagewarning' => "<strong>PARE CUENTA: Ista pachina ha estato protechita ta que sólo os usuarios con premisos d'almenistrador puedan editar-la.</strong>",
+'semiprotectedpagewarning' => "'''Nota:''' Ista pachina ha estato protechita ta que nomás usuarios rechistratos puedan editar-la.",
+'cascadeprotectedwarning' => "'''Pare cuenta:''' Ista pachina ye protechita ta que nomás os almenistrador puedan editar-la, porque ye encluyita en {{PLURAL:$1|a siguient pachina, protechita|as siguients pachinas, protechitas}} con a opzión de ''cascada'' :",
+'titleprotectedwarning' => '<strong>PARE CUENTA: Ista pachina ye bloqueyata ta que sólo bels usuarios puedan creyar-la.</strong>',
+'templatesused' => 'Plantillas emplegatas en ista pachina:',
+'templatesusedpreview' => 'Plantillas emplegatas en ista ambiesta prebia:',
+'templatesusedsection' => 'Plantillas usatas en ista sezión:',
+'template-protected' => '(protechita)',
+'template-semiprotected' => '(semiprotechita)',
+'hiddencategories' => 'Ista pachina fa parte de {{PLURAL:$1|1 categoría amagata|$1 categorías amagatas}}:',
+'edittools' => "<!-- Iste testo amanixerá baxo os formularios d'edizión y carga. -->",
+'nocreatetitle' => "S'ha restrinchito a creyazión de pachinas",
+'nocreatetext' => '{{SITENAME}} ha restrinchito a creyazión de nuebas pachinas. Puede tornar entazaga y editar una pachina ya esistent, [[Special:UserLogin|identificarse u creyar una cuenta]].',
+'nocreate-loggedin' => 'No tiene premisos ta creyar nuebas pachinas en {{SITENAME}}.',
+'permissionserrors' => 'Errors de premisos',
+'permissionserrorstext' => 'No tiene premisos ta fer-lo, por {{PLURAL:$1|ista razón|istas razons}}:',
+'permissionserrorstext-withaction' => 'No tiene premisos ta $2, por {{PLURAL:$1|ista razón|istas razons}}:',
+'recreate-deleted-warn' => "'''Pare cuenta: ye creyando una pachina que ya ha estato borrata denantes.'''
Abría de considerar si ye reyalment nezesario continar editando ista pachina.
Puede consultar o rechistro de borraus que s'amuestra a continuazión:",
+# Parser/template warnings
+'expensive-parserfunction-warning' => 'Pare cuenta: Ista pachina tiene masiadas cridas á funzions de preprozeso (parser functions) costosas.
+
+Abría de tener-ne menos de $2, por agora en tiene $1.',
+'expensive-parserfunction-category' => 'Pachinas con masiadas cridas á funzions de preprozeso (parser functions) costosas',
+'post-expand-template-inclusion-warning' => "Pare cuenta: A mida d'enclusión d'a plantilla ye masiau gran.
+Bellas plantillas no se bi encluyen.",
+'post-expand-template-inclusion-category' => "Pachinas an que se brinca a mida d'enclusión d'as plantillas",
+'post-expand-template-argument-warning' => "Pare cuenta: Ista pachina contiene á lo menos un argumento de plantilla con una mida d'espansión masiau gran. S'han omeso estos argumentos.",
+'post-expand-template-argument-category' => 'Pachinas con argumentos de plantilla omesos',
+
# "Undo" feature
'undo-success' => "A edizión puede esfer-se. Antis d'esfer a edizión, mire-se a siguient comparanza ta comprebar que ye ixo o que quiere fer reyalment. Alabez, puede alzar os cambeos ta esfer a edizión.",
'undo-failure' => 'No se puede esfer a edizión pues un atro usuario ha feito una edizión intermeya.',
-'undo-summary' => 'Esfeita la edizión $1 de [[Special:Contributions/$2|$2]] ([[User talk:$2|desc.]])',
+'undo-norev' => "No s'ha puesto esfer a edizión porque no esistiba u ya s'eba borrato.",
+'undo-summary' => 'Esfeita a edizión $1 de [[Special:Contributions/$2|$2]] ([[User talk:$2|desc.]])',
# Account creation failure
'cantcreateaccounttitle' => 'No se puede creyar a cuenta',
-'cantcreateaccount-text' => "A creyazión de cuentas dende ixa adreza IP (<b>$1</b>) estió bloqueyata por [[User:$3|$3]].
+'cantcreateaccount-text' => "A creyazión de cuentas dende ixa adreza IP ('''$1''') estió bloqueyata por [[User:$3|$3]].
A razón endicata por $3 ye ''$2''",
@@ -702,7 +738,6 @@ A razón endicata por $3 ye ''$2''",
'revnotfound' => 'Bersión no trobata',
'revnotfoundtext' => "No se pudo trobar a bersión antiga d'a pachina demandata.
Por fabor, rebise l'adreza que fazió serbir t'aczeder á ista pachina.",
-'loadhist' => "Cargando o istorial d'a pachina",
'currentrev' => 'Bersión autual',
'revisionasof' => "Bersión d'o $1",
'revision-info' => "Bersión d'o $1 feita por $2",
@@ -711,8 +746,7 @@ Por fabor, rebise l'adreza que fazió serbir t'aczeder á ista pachina.",
'currentrevisionlink' => 'Beyer bersión autual',
'cur' => 'aut',
'next' => 'siguient',
-'last' => 'zag',
-'orig' => 'orich',
+'last' => 'ant',
'page_first' => 'primeras',
'page_last' => 'zagueras',
'histlegend' => 'Leyenda: (aut) = esferenzias con a bersión autual,
@@ -720,6 +754,7 @@ Por fabor, rebise l'adreza que fazió serbir t'aczeder á ista pachina.",
'deletedrev' => '[borrato]',
'histfirst' => 'Primeras contrebuzions',
'histlast' => 'Zagueras',
+'historysize' => '({{PLURAL:$1|1 byte|$1 bytes}})',
'historyempty' => '(buedo)',
# Revision feed
@@ -733,31 +768,29 @@ Prebe de [[Special:Search|mirar en o wiki]] atras pachinas relebants.",
# Revision deletion
'rev-deleted-comment' => "(s'ha sacato iste comentario)",
'rev-deleted-user' => "(s'ha sacato iste nombre d'usuario)",
-'rev-deleted-event' => "(s'ha sacata ista dentrada)",
+'rev-deleted-event' => "(Aizión borrata d'o rechistro)",
'rev-deleted-text-permission' => '<div class="mw-warning plainlinks">
-Ista bersión d\'a pachina ye estata sacata d\'os archibos publicos.
-Puede trobar más detalles en o [{{fullurl:Special:Log/delete|page={{FULLPAGENAMEE}}}} rechistro de borrau].
-</div>',
+Ista bersión d\'a pachina ye estata sacata d\'os archibos publicos.
+Puede trobar más detalles en o [{{fullurl:Special:Log/delete|page={{FULLPAGENAMEE}}}} rechistro de borrau].</div>',
'rev-deleted-text-view' => "<div class=\"mw-warning plainlinks\">
-Ista bersión d'a pachina ye sacata d'os archibos publicos.
-Puede beyer-la porque ye almenistrador/a d'iste wiki;
-puede trobar más detalles en o [{{fullurl:Special:Log/delete|page={{PAGENAMEE}}}} rechistro de borrau].
-</div>",
+Ista bersión d'a pachina ye sacata d'os archibos publicos.
+Puede beyer-la porque ye almenistrador/a d'iste wiki;
+puede trobar más detalles en o [{{fullurl:Special:Log/delete|page={{PAGENAMEE}}}} rechistro de borrau].</div>",
'rev-delundel' => 'amostrar/amagar',
'revisiondelete' => 'Borrar/esfer borrau de bersions',
-'revdelete-nooldid-title' => 'No ha espezificato una bersión de destino',
-'revdelete-nooldid-text' => 'No ha espezificato una bersión u bersions ta aplicar ista funzión sobre ellas.',
+'revdelete-nooldid-title' => 'A bersión de destino no ye conforme',
+'revdelete-nooldid-text' => 'No ha espezificato garra bersión de destino ta aplicar-le ista funzión, a bersión espezificata no esiste u ye mirando de amagar a bersión autual.',
'revdelete-selected' => '{{PLURAL:$2|Bersión trigata|Bersions trigatas}} de [[:$1]]:',
-'logdelete-selected' => "{{PLURAL:$2|Aizión d'o rechistro trigata|$2 aizions d'o rechistro trigatas}} ta '''$1:'''",
+'logdelete-selected' => "{{PLURAL:$1|Escaizimiento d'o rechistro trigato|Escaizimientos d'o rechistro trigatos}}:",
'revdelete-text' => "As bersions borratas encara aparixerán en o istorial y o rechistro d'a pachina, pero os suyos contenius no serán azesibles ta o publico.
Atros almenistradors de {{SITENAME}} encara podrán azeder t'o contineiu amagato y podrán esfer o borrau á trabiés d'a mesma interfaz, fueras de si os operadors establen restrizions adizionals.",
-'revdelete-legend' => 'Definir restrizions de bersión:',
+'revdelete-legend' => 'Establir as restrizions de bisibilidat:',
'revdelete-hide-text' => "Amagar o testo d'a bersión",
'revdelete-hide-name' => 'Amagar aizión y obchetibo',
'revdelete-hide-comment' => "Amagar comentario d'edizión",
'revdelete-hide-user' => "Amagar o nombre/l'adreza IP d'o editor",
-'revdelete-hide-restricted' => "Aplicar istas restrizions á os almenistradors igual como á la resta d'usuarios",
+'revdelete-hide-restricted' => 'Aplicar istas restrizions á os almenistradors y bloqueyar ista interfaz',
'revdelete-suppress' => "Sacar os datos d'os almenistradors igual como os d'a resta d'usuarios",
'revdelete-hide-image' => "Amagar o conteniu de l'archibo",
'revdelete-unsuppress' => "Sacar restrizions d'as bersions restauradas",
@@ -765,21 +798,29 @@ Atros almenistradors de {{SITENAME}} encara podrán azeder t'o contineiu amagato
'revdelete-submit' => 'Aplicar á la bersión trigata',
'revdelete-logentry' => "S'ha cambiato a bisibilidat d'a bersión de [[$1]]",
'logdelete-logentry' => "S'ha cambiato a bisibilidat d'escaizimientos de [[$1]]",
-'revdelete-logaction' => '$1 {{PLURAL:$1|bersión|bersions}} en modo $2',
-'logdelete-logaction' => '$1 {{PLURAL:$1|escaizimiento|escaizimientos}} en [[$3]] {{PLURAL:$1|cambiato|cambiatos}} ta o modo $2',
-'revdelete-success' => "S'ha cambiato correutament a bisibilidat d'as bersions.",
-'logdelete-success' => "S'ha cambiato correutament a bisibilidat d'os escaizimientos.",
-
-# Oversight log
-'oversightlog' => "Rechistro d'escudios",
-'overlogpagetext' => "Contino s'amuestra una lista de borraus y bloqueyos más rezients relatibos á contenius amagatos d'os almenistradors d'o sistema. Consulte a [[Special:Ipblocklist|lista d'adrezas IP bloqueyatas]] ta beyer una lista d'os bloqueyos autuals.",
+'revdelete-success' => "'''S'ha cambiato correutament a bisibilidat d'as bersions.'''",
+'logdelete-success' => "'''S'ha cambiato correutament a bisibilidat d'os escaizimientos.'''",
+'revdel-restore' => 'Cambiar a bisibilidat',
+'pagehist' => 'Istorial',
+'deletedhist' => 'Istorial de borrau',
+'revdelete-content' => 'conteniu',
+'revdelete-summary' => 'editar resumen',
+'revdelete-uname' => "nombre d'usuario",
+'revdelete-restricted' => "S'han aplicato as restrizions ta almenistradors",
+'revdelete-unrestricted' => "S'han borrato as restrizions ta almenistradors",
+'revdelete-hid' => 'amagar $1',
+'revdelete-unhid' => 'amostrar $1',
+'revdelete-log-message' => '$1 ta $2 {{PLURAL:$2|bersión|bersions}}',
+'logdelete-log-message' => '$1 ta $2 {{PLURAL:$2|esdebenimiento|esdebenimientos}}',
+
+# Suppression log
+'suppressionlog' => 'Rechistro de supresions',
+'suppressionlogtext' => "En o cobaxo bi ye una lista de borraus y bloqueyos referitos á contenius amagaus ta os almenistradors. Mire-se a [[Special:IPBlockList|lista d'adrezas IP bloqueyatas]] ta beyer a lista de bloqueyos y bedas bichents.",
# History merging
'mergehistory' => 'Aunir istorials',
'mergehistory-header' => "Ista pachina li premite aunir bersions d'o istorial d'una pachina d'orichen con una nueba pachina.
-Asegure-se que iste cambio no crebará a continidat de l'istorial d'a pachina.
-
-'''Como menimo abría de remanir a bersión autual d'a pachina d'orichen.'''",
+Asegure-se que iste cambio no crebará a continidat de l'istorial d'a pachina.",
'mergehistory-box' => 'Aunir as bersions de dos pachinas:',
'mergehistory-from' => "Pachina d'orichen:",
'mergehistory-into' => 'Pachina de destino:',
@@ -787,13 +828,15 @@ Asegure-se que iste cambio no crebará a continidat de l'istorial d'a pachina.
'mergehistory-merge' => "As siguients bersions de [[:$1]] pueden aunir-se con [[:$2]]. Faiga serbir a columna de botons de radio ta aunir nomás as bersions creyadas antis d'un tiempo espezificato. Pare cuenta que si emplega os binclos de nabegazión meterá os botons en o suyo estau orichinal.",
'mergehistory-go' => 'Amostrar edizions aunibles',
'mergehistory-submit' => 'Aunir bersions',
-'mergehistory-empty' => 'No puede aunir-se garra rebisión',
-'mergehistory-success' => '$3 {{PLURAL:$3|rebisión|rebisions}} de [[:$1]] {{PLURAL:$3|aunita|aunitas}} correutament con [[:$2]].',
+'mergehistory-empty' => 'No puede aunir-se garra rebisión.',
+'mergehistory-success' => '$3 {{PLURAL:$3|rebisión|rebisions}} de [[:$1]] {{PLURAL:$3|combinata|combinatas}} correutament con [[:$2]].',
'mergehistory-fail' => "No s'ha puesto aunir os dos istorials, por fabor comprebe a pachina y os parametros de tiempo.",
'mergehistory-no-source' => "A pachina d'orichen $1 no esiste.",
'mergehistory-no-destination' => 'A pachina de destino $1 no esiste.',
'mergehistory-invalid-source' => "A pachina d'orichen ha de tener un títol correuto.",
'mergehistory-invalid-destination' => 'A pachina de destino ha de tener un títol correuto.',
+'mergehistory-autocomment' => "S'ha combinato [[:$1]] en [[:$2]]",
+'mergehistory-comment' => "S'ha combinato [[:$1]] en [[:$2]]: $3",
# Merge log
'mergelog' => "Rechistro d'unions",
@@ -807,39 +850,55 @@ Asegure-se que iste cambio no crebará a continidat de l'istorial d'a pachina.
'lineno' => 'Linia $1:',
'compareselectedversions' => 'Confrontar as bersions trigatas',
'editundo' => 'esfer',
-'diff-multi' => "(S'ha amagato {{plural:$1|una edizión entremeya|$1 edizions entremeyas}}.)",
+'diff-multi' => "(S'ha amagato {{PLURAL:$1|una edizión entremeya|$1 edizions entremeyas}}.)",
# Search results
-'searchresults' => 'Resultau de mirar',
-'searchresulttext' => "Ta más informazión sobre cómo mirar pachinas en {{SITENAME}}, consulte l'[[{{MediaWiki:Helppage}}|{{int:help}}]].",
-'searchsubtitle' => "Ha mirato '''[[:$1]]'''",
-'searchsubtitleinvalid' => 'Ha mirato "$1"',
-'noexactmatch' => "'''No esiste garra pachina tetulata \"\$1\".''' Puede aduyar [[:\$1|creyando-la]].",
-'noexactmatch-nocreate' => "'''No bi ha garra pachina tetulata \"\$1\".'''",
-'toomanymatches' => "S'ha retornato masiadas coinzidenzias, por fabor, torne á prebar con una consulta diferent",
-'titlematches' => 'Consonanzias de títols de pachina',
-'notitlematches' => "No bi ha garra consonanzia en os títols d'as pachinas",
-'textmatches' => "Consonanzias en o testo d'as pachinas",
-'notextmatches' => "No bi ha garra consonanzia en os testos d'as pachinas",
-'prevn' => 'anteriors $1',
-'nextn' => 'siguiens $1',
-'viewprevnext' => 'Beyer ($1) ($2) ($3)',
-'showingresults' => "Contino se bi {{PLURAL:$1|amuestra '''1''' resultau|amuestran '''$1''' resultaus}} prenzipiando por o numero '''$2'''.",
-'showingresultsnum' => "Contino se bi {{PLURAL:$3|amuestra '''1''' resultau|amuestran os '''$3''' resultaus}} prenzipiando por o numero '''$2'''.",
-'nonefound' => "'''Pare cuenta''': Os fallos en mirar pachinas son causatos á ormino por prebar de mirar palabras masiau comuns como \"o\", \"a\" u \"de\", que no i son en o endize, u por escribir más d'una palabra ta mirar (sólo amaneixen en o resultau as pachinas que contiengan todas as palabras).",
-'powersearch' => 'Mirar-lo',
-'powersearchtext' => 'Mirar en o espazio de nombres:<br />
-$1<br />
-$2 Fer lista de reendrezeras <br />
-Mirar $3 $9',
-'searchdisabled' => 'A busca en {{SITENAME}} ye temporalment desautibata. Entremistanto, puede mirar en {{SITENAME}} fendo serbir buscadors esternos, pero pare cuenta que os suyos endizes de {{SITENAME}} puede no estar esbiellatos.',
+'searchresults' => 'Resultau de mirar',
+'searchresulttext' => "Ta más informazión sobre cómo mirar pachinas en {{SITENAME}}, consulte l'[[{{MediaWiki:Helppage}}|{{int:help}}]].",
+'searchsubtitle' => 'Ha mirato \'\'\'[[:$1]]\'\'\' ([[Special:Prefixindex/$1|todas as pachinas que prenzipian con "$1"]] | [[Special:WhatLinksHere/$1|todas as pachinas con binclos enta "$1"]])',
+'searchsubtitleinvalid' => 'Ha mirato "$1"',
+'noexactmatch' => "'''No esiste garra pachina tetulata \"\$1\".''' Puede aduyar [[:\$1|creyando-la]].",
+'noexactmatch-nocreate' => "'''No bi ha garra pachina tetulata \"\$1\".'''",
+'toomanymatches' => "S'ha retornato masiadas coinzidenzias, por fabor, torne á prebar con una consulta diferent",
+'titlematches' => 'Consonanzias de títols de pachina',
+'notitlematches' => "No bi ha garra consonanzia en os títols d'as pachinas",
+'textmatches' => "Consonanzias en o testo d'as pachinas",
+'notextmatches' => "No bi ha garra consonanzia en os testos d'as pachinas",
+'prevn' => 'anteriors $1',
+'nextn' => 'siguiens $1',
+'viewprevnext' => 'Beyer ($1) ($2) ($3)',
+'search-result-size' => '$1 ({{PLURAL:$2|1 palabra|$2 palabras}})',
+'search-result-score' => 'Relebanzia: $1%',
+'search-redirect' => '(reendreza $1)',
+'search-section' => '(sezion $1)',
+'search-suggest' => 'Quereba dezir $1?',
+'search-interwiki-caption' => 'Procheutos chermans',
+'search-interwiki-default' => '$1 resultaus:',
+'search-interwiki-more' => '(más)',
+'search-mwsuggest-enabled' => 'con socherenzias',
+'search-mwsuggest-disabled' => 'Garra socherenzia',
+'search-relatedarticle' => 'Relazionato',
+'mwsuggest-disable' => "Desautibar as socherenzias d'AJAX",
+'searchrelated' => 'relazionato',
+'searchall' => 'toz',
+'showingresults' => "Contino se bi {{PLURAL:$1|amuestra '''1''' resultau|amuestran '''$1''' resultaus}} prenzipiando por o numero '''$2'''.",
+'showingresultsnum' => "Contino se bi {{PLURAL:$3|amuestra '''1''' resultau|amuestran os '''$3''' resultaus}} prenzipiando por o numero '''$2'''.",
+'showingresultstotal' => "{{PLURAL:$3|S'amuestra contino o resultau '''$1''' de '''$3'''|S'amuestran contino os resultaus '''$1 - $2''' de '''$3'''}}",
+'nonefound' => "'''Pare cuenta''': Por defeuto nomás se mira en bels espazios de nombres. Si quiere mirar en toz os contenius (encluyendo pachinas de descusión, plantillas, etc), adiba o prefixo ''all:'' u clabe como prefixo o espazio de nombres deseyau.",
+'powersearch' => 'Busca abanzata',
+'powersearch-legend' => 'Busca abanzata',
+'powersearch-ns' => 'Mirar en os espazios de nombres:',
+'powersearch-redir' => 'Listar reendrezeras',
+'powersearch-field' => 'Mirar',
+'search-external' => 'Busca externa',
+'searchdisabled' => 'A busca en {{SITENAME}} ye temporalment desautibata. Entremistanto, puede mirar en {{SITENAME}} fendo serbir buscadors esternos, pero pare cuenta que os suyos endizes de {{SITENAME}} puede no estar esbiellatos.',
# Preferences page
'preferences' => 'Preferenzias',
'mypreferences' => 'Preferenzias',
'prefs-edits' => "Numero d'edizions:",
'prefsnologin' => 'No ye identificato',
-'prefsnologintext' => "Ha d'estar [[{{ns:special}}:Userlogin|rechistrau]] y aber enzetau una sesión ta cambiar as preferenzias d'usuario.",
+'prefsnologintext' => "Ha d'estar [[Special:UserLogin|rechistrau]] y aber enzetau una sesión ta cambiar as preferenzias d'usuario.",
'prefsreset' => "S'ha tornato as preferenzias t'as suyas baluras almadazenatas.",
'qbsettings' => 'Preferenzias de "Quickbar"',
'qbsettings-none' => 'Denguna',
@@ -869,7 +928,7 @@ Mirar $3 $9',
'prefs-watchlist-edits' => "Numero d'edizions que s'amostrarán en a lista ixamplata:",
'prefs-misc' => 'Atras preferenzias',
'saveprefs' => 'Alzar preferenzias',
-'resetprefs' => 'Tornar á las preferenzias por defeuto',
+'resetprefs' => "Tornar t'as preferenzias por defeuto",
'oldpassword' => 'Palabra de paso antiga:',
'newpassword' => 'Nueba palabra de paso:',
'retypenew' => 'Torne á escribir a nueba palabra de paso:',
@@ -882,60 +941,122 @@ Mirar $3 $9',
'contextchars' => 'Caráuters de contesto por linia',
'stub-threshold' => 'Branquil superior ta o formateyo de <a href="#" class="stub">binclos ta borradors</a> (en bytes):',
'recentchangesdays' => "Días que s'amostrarán en ''zaguers cambeos'':",
-'recentchangescount' => "Numero d'edizions que s'amostrarán en ''zaguers cambeos''",
+'recentchangescount' => "Numero d'edizions que s'amostrarán en as pachinas de ''zaguers cambeos'', istorials y rechistros:",
'savedprefs' => "S'han alzato as suyas preferenzias.",
'timezonelegend' => 'Fuso orario',
-'timezonetext' => "Escriba a esferenzia (en oras) entre a suya ora local y a d'o serbidor (UTC).",
+'timezonetext' => "¹Escriba a esferenzia (en oras) entre a suya ora local y a d'o serbidor (UTC).",
'localtime' => 'Ora local',
'timezoneoffset' => 'Esferenzia¹',
'servertime' => 'A ora en o serbidor ye',
'guesstimezone' => "Emplir-lo con a ora d'o nabegador",
'allowemail' => "Autibar a rezepzión de correu d'atros usuarios",
+'prefs-searchoptions' => 'Opzions de busca',
+'prefs-namespaces' => 'Espazios de nombres',
'defaultns' => 'Mirar por defeuto en istos espazios de nombres:',
'default' => 'por defeuto',
'files' => 'Archibos',
# User rights
-'userrights-lookup-user' => "Confegurar collas d'usuarios",
-'userrights-user-editname' => "Escriba un nombre d'usuario:",
-'editusergroup' => "Editar as collas d'usuarios",
-'userrights-editusergroup' => "Editar as collas d'usuarios",
-'saveusergroups' => "Alzar as collas d'usuarios",
-'userrights-groupsmember' => 'Miembro de:',
-'userrights-groupsremovable' => 'Collas sacables:',
-'userrights-groupsavailable' => 'Collas disponibles:',
-'userrights-groupshelp' => "Selezione as collas d'as que quiere sacar u adibir bel usuario.
-As collas no trigatas no cambiarán. Puede sacar a selezión pretando de bez a tecla CTRL y o botón zurdo d'a rateta.",
-'userrights-reason' => 'Razón ta o cambeo:',
-'userrights-available-none' => "No puede cambiar a pertenenzia á las collas d'usuarios.",
-'userrights-available-add' => 'Puede adibir usuarios ta {{PLURAL:$2|ista colla|istas collas}}: $1.',
-'userrights-available-remove' => "Puede sacar usuarios d'{{PLURAL:$2|ista colla|istas collas}}: $1.",
-'userrights-available-add-self' => 'Puede adibir-se bustet mesmo ta {{PLURAL:$2|iste grupo|istos grupos}}: $1.',
-'userrights-available-remove-self' => "Puede sacar-se bustet mesmo d'{{PLURAL:$2|iste grupo|istos grupos}}: $1.",
-'userrights-no-interwiki' => "No tiene premiso ta editar os dreitos d'usuario en atras wikis.",
-'userrights-nodatabase' => 'A base de datos $1 no esiste u no ye local.',
-'userrights-nologin' => "Ha d'[[Special:Userlogin|enzetar una sesión]] con una cuenta d'almenistrador ta poder dar dreitos d'usuario.",
-'userrights-notallowed' => "A suya cuenta no tiene premisos ta dar dreitos d'usuario.",
+'userrights' => "Confegurazión d'os dreitos d'os usuarios", # Not used as normal message but as header for the special page itself
+'userrights-lookup-user' => "Confegurar collas d'usuarios",
+'userrights-user-editname' => "Escriba un nombre d'usuario:",
+'editusergroup' => "Editar as collas d'usuarios",
+'editinguser' => "S'esta cambiando os dreitos de l'usuario '''[[User:$1|$1]]''' ([[User talk:$1|{{int:talkpagelinktext}}]] | [[Special:Contributions/$1|{{int:contribslink}}]])",
+'userrights-editusergroup' => "Editar as collas d'usuarios",
+'saveusergroups' => "Alzar as collas d'usuarios",
+'userrights-groupsmember' => 'Miembro de:',
+'userrights-groups-help' => "Puede cambiar as collas an que bi ye iste usuario.
+* Un caxa siñalata sinnifica que l'usuario bi ye en ixa colla.
+* Una caxa no siñalata sinnifica que l'usuario no ye en ixa colla.
+* Un * endica que bustet no puede sacar a colla dimpués d'adibir-la, u bize-bersa.",
+'userrights-reason' => 'Razón ta o cambeo:',
+'userrights-no-interwiki' => "No tiene premiso ta editar os dreitos d'usuario en atras wikis.",
+'userrights-nodatabase' => 'A base de datos $1 no esiste u no ye local.',
+'userrights-nologin' => "Ha d'[[Special:UserLogin|enzetar una sesión]] con una cuenta d'almenistrador ta poder dar dreitos d'usuario.",
+'userrights-notallowed' => "A suya cuenta no tiene premisos ta dar dreitos d'usuario.",
+'userrights-changeable-col' => 'Grupos que puede cambiar',
+'userrights-unchangeable-col' => 'Collas que no puede cambiar',
# Groups
'group' => 'Colla:',
+'group-user' => 'Usuarios',
'group-autoconfirmed' => 'Usuarios Autoconfirmatos',
+'group-bot' => 'Bots',
'group-sysop' => 'Almenistradors',
'group-bureaucrat' => 'Burocratas',
+'group-suppress' => 'Superbisors',
'group-all' => '(toz)',
+'group-user-member' => 'Usuario',
'group-autoconfirmed-member' => 'Usuario autoconfirmato',
+'group-bot-member' => 'Bot',
'group-sysop-member' => 'Almenistrador',
'group-bureaucrat-member' => 'Burocrata',
+'group-suppress-member' => 'Superbisor',
+'grouppage-user' => '{{ns:project}}:Usuarios',
'grouppage-autoconfirmed' => '{{ns:project}}:Usuarios autoconfirmatos',
'grouppage-bot' => '{{ns:project}}:Bots',
'grouppage-sysop' => '{{ns:project}}:Almenistradors',
'grouppage-bureaucrat' => '{{ns:project}}:Burocratas',
+'grouppage-suppress' => '{{ns:project}}:Superbisors',
+
+# Rights
+'right-read' => 'Leyer pachinas',
+'right-edit' => 'Editar pachinas',
+'right-createpage' => 'Creyar pachinas (que no sían pachinas de descusión)',
+'right-createtalk' => 'Creyar pachinas de descusión',
+'right-createaccount' => "Creyar nuebas cuentas d'usuario",
+'right-minoredit' => 'Siñalar como edizions menors',
+'right-move' => 'Tresladar pachinas',
+'right-move-subpages' => 'Tresladar as pachinas con a suyas sozpachinas',
+'right-suppressredirect' => 'No creyar una reendrezera dende o nombre antigo cuan se treslade una pachina',
+'right-upload' => 'Cargar archibos',
+'right-reupload' => "Cargar denzima d'un archibo esistent",
+'right-reupload-own' => "Cargar denzima d'un archibo que ya eba cargau o mesmo usuario",
+'right-reupload-shared' => 'Cargar localment archibos con un nombre emplegato en o repositorio multimedia compartito',
+'right-upload_by_url' => 'Cargar un archibo dende una adreza URL',
+'right-purge' => 'Porgar a memoria caché ta una pachina sin nezesidat de confirmar-la',
+'right-autoconfirmed' => 'Editar pachinas semiprotechitas',
+'right-bot' => 'Ser tratato como un prozeso automatico (bot)',
+'right-nominornewtalk' => 'Fer que as edizions menors en pachinas de descusión no cheneren l\'abiso de "nuebos mensaches"',
+'right-apihighlimits' => 'Usar limites más altos en consultas API',
+'right-writeapi' => "Emplego de l'API d'escritura",
+'right-delete' => 'Borrar pachinas',
+'right-bigdelete' => 'Borrar pachinas con istorials largos',
+'right-deleterevision' => "Borrar y recuperar bersions espezificas d'una pachina",
+'right-deletedhistory' => "Beyer as dentradas borratas de l'istorial, sin o suyo testo asoziato",
+'right-browsearchive' => 'Mirar pachinas borratas',
+'right-undelete' => 'Recuperar una pachina',
+'right-suppressrevision' => 'Rebisar y recuperar bersions amagatas ta os Almenistradors',
+'right-suppressionlog' => 'Beyer os rechistros pribatos',
+'right-block' => "Bloqueyar á atros usuarios ta pribar-les d'editar",
+'right-blockemail' => 'Bloqueyar á un usuario ta pribar-le de nimbiar correus',
+'right-hideuser' => "Bloqueyar un nombre d'usuario, amagando-lo d'o publico",
+'right-ipblock-exempt' => "Inorar os bloqueyos d'adrezas IP, os autobloqueyos y os bloqueyos de rangos de IPs.",
+'right-proxyunbannable' => 'Inorar os bloqueyos automaticos de proxies',
+'right-protect' => 'Cambiar os libels de protezión y editar pachinas protechitas',
+'right-editprotected' => 'Editar pachinas protechitas (sin de protezión en cascada)',
+'right-editinterface' => "Editar a interfizie d'usuario",
+'right-editusercssjs' => "Editar os archibos CSS y JS d'atros usuarios",
+'right-rollback' => "Esfer á escape a edizión d'a zaguer usuario que cambió una pachina",
+'right-markbotedits' => 'Siñalar as edizions esfeitas como edizions de bot',
+'right-noratelimit' => "No se les aplican as tasas masimas d'edizions",
+'right-import' => 'Importar pachinas dende atros wikis',
+'right-importupload' => "Importar pacihnas d'archibos cargatos",
+'right-patrol' => 'Siñalar edizions como patrullatas',
+'right-autopatrol' => 'Siñalar automaticament as edizions como patrullatas',
+'right-patrolmarks' => 'Amostrar os siñals de patrullache en os zaguers cambeos',
+'right-unwatchedpages' => 'Amostrar una lista de pachinas sin cosirar',
+'right-trackback' => 'Adibir un trackback',
+'right-mergehistory' => "Combinar l'istorial d'as pachinas",
+'right-userrights' => "Editar toz os dreitos d'usuario",
+'right-userrights-interwiki' => "Editar os dreitos d'usuario d'os usuarios d'atros wikis",
+'right-siteadmin' => 'Trancar y estrancar a base de datos',
# User rights log
-'rightslog' => "Rechistro de premisos d'os usuarios",
-'rightslogtext' => "Iste ye un rechistro d'os cambios en os premisos d'os usuarios",
+'rightslog' => "Rechistro de cambios en os dreitos d'os usuarios",
+'rightslogtext' => "Iste ye un rechistro d'os cambios en os dreitos d'os usuarios",
'rightslogentry' => "ha cambiato os dreitos d'usuario de $1: de $2 a $3",
'rightsnone' => '(denguno)',
@@ -944,10 +1065,11 @@ As collas no trigatas no cambiarán. Puede sacar a selezión pretando de bez a t
'recentchanges' => 'Zaguers cambeos',
'recentchangestext' => "Siga os cambeos más rezients d'a wiki en ista pachina.",
'recentchanges-feed-description' => "Seguir en ista canal de notizias os cambeos más rezients d'o wiki.",
-'rcnote' => "Contino {{PLURAL:$1|s'amuestra o unico cambeo feito|s'amuestran os '''$1''' zaguers cambeos feitos}} en {{PLURAL:$2|o zaguer día|os zaguers '''$2''' días}}, dica as $3.",
-'rcnotefrom' => "Contino s'amuestran os cambeos dende <b>$2</b> (dica <b>$1</b>).",
+'rcnote' => "Contino {{PLURAL:$1|s'amuestra o unico cambeo feito|s'amuestran os zaguers '''$1''' cambeos feitos}} en {{PLURAL:$2|o zaguer día|os zaguers '''$2''' días}}, dica o $5, $4.",
+'rcnotefrom' => "Contino s'amuestran os cambeos dende '''$2''' (dica '''$1''').",
'rclistfrom' => 'Amostrar cambeos rezients dende $1',
'rcshowhideminor' => '$1 edizions menors',
+'rcshowhidebots' => '$1 bots',
'rcshowhideliu' => '$1 usuarios rechistraus',
'rcshowhideanons' => '$1 usuarios anonimos',
'rcshowhidepatr' => '$1 edizions controlatas',
@@ -957,6 +1079,9 @@ As collas no trigatas no cambiarán. Puede sacar a selezión pretando de bez a t
'hist' => 'ist',
'hide' => 'amagar',
'show' => 'Amostrar',
+'minoreditletter' => 'm',
+'newpageletter' => 'N',
+'boteditletter' => 'b',
'number_of_watching_users_pageview' => '[$1 {{PLURAL:$1|usuario|usuarios}} cosirando]',
'rc_categories' => 'Limite d\'as categorías (deseparatas por "|")',
'rc_categories_any' => 'Todas',
@@ -964,63 +1089,55 @@ As collas no trigatas no cambiarán. Puede sacar a selezión pretando de bez a t
# Recent changes linked
'recentchangeslinked' => 'Cambeos en pachinas relazionadas',
-'recentchangeslinked-title' => 'Cambeos relazionatos con $1',
+'recentchangeslinked-title' => 'Cambeos relazionatos con "$1"',
'recentchangeslinked-noresult' => 'No bi abió cambeos en as pachinas binculatas en o entrebalo de tiempo endicato.',
-'recentchangeslinked-summary' => "Ista pachina espezial amuestra os zaguers cambeos en as pachinas binculatas. As pachinas d'a suya lista de seguimiento son en '''negreta'''.",
+'recentchangeslinked-summary' => "Ista ye una lista de cambios rezients en pachinas con binclos dende una pachina espezifica (u a miembros d'una categoría espezificata). S'amuestran en '''negreta''' as pachinas d'a suya [[Special:Watchlist|lista de seguimiento]].",
+'recentchangeslinked-page' => "Nombre d'a pachina:",
+'recentchangeslinked-to' => 'Amostrar en cuenta os cambeos en pachinas binculatas con a pachina data',
# Upload
'upload' => 'Cargar archibo',
'uploadbtn' => 'Cargar un archibo',
'reupload' => 'Cargar un atra begada',
-'reuploaddesc' => "Tornar ta o formulario de carga d'archibos.",
+'reuploaddesc' => "Anular a carga y tornar ta o formulario de carga d'archibos.",
'uploadnologin' => 'No ha enzetato una sesión',
-'uploadnologintext' => "Ha d'estar [[{{ns:special}}:Userlogin|rechistrau]] ta cargar archibos.",
+'uploadnologintext' => "Ha d'estar [[Special:UserLogin|rechistrau]] ta cargar archibos.",
+'upload_directory_missing' => 'O direutorio de carga ($1) no esiste y no lo puede creyar o serbidor web.',
'upload_directory_read_only' => "O serbidor web no puede escribir en o direutorio de carga d'archibos ($1).",
'uploaderror' => "S'ha produzito una error en cargar l'archibo",
'uploadtext' => "Faiga serbir o formulario d'o cobaxo ta cargar archibos.
-Ta beyer u mirar imáchens cargatas denantes baiga t'a [[Special:Imagelist|lista d'archibos cargatos]]. As cargas y borraus d'archibos tamién son rechistratos en o [[Special:Log/upload|rechistro de cargas]].
-
-Ta encluyir un archibo u imachen en una pachina, emplegue un binclo d'una d'istas trazas '''<nowiki>[[</nowiki>{{ns:image}}<nowiki>:Archivo.jpg]]</nowiki>''', '''<nowiki>[[</nowiki>{{ns:image}}<nowiki>:Archivo.png|testo alternatibo]]</nowiki>''' u
-'''<nowiki>[[</nowiki>{{ns:media}}<nowiki>:Archivo.ogg]]</nowiki>''' ta fer o binclo dreitament ta l'archibo.
+Ta beyer u mirar imáchens cargatas denantes baiga t'a [[Special:ImageList|lista d'archibos cargatos]]. As cargas y recargas tamién se rechistran en o [[Special:Log/upload|rechistro de cargas]], y os borraus en o [[Special:Log/delete|rechistro de borraus]].
-
-To include a file in a page, use a link in the form
-'''<nowiki>[[</nowiki>{{ns:image}}<nowiki>:File.jpg]]</nowiki>''',
-'''<nowiki>[[</nowiki>{{ns:image}}<nowiki>:File.png|alt text]]</nowiki>''' or
-'''<nowiki>[[</nowiki>{{ns:media}}<nowiki>:File.ogg]]</nowiki>''' for directly linking to the file.",
+Ta encluyir un archibo u imachen en una pachina, emplegue un binclo d'una d'istas trazas
+*'''<tt><nowiki>[[</nowiki>{{ns:image}}<nowiki>:Archibo.jpg]]</nowiki></tt>''' ta usar a bersion completa de l'archibo,
+*'''<tt><nowiki>[[</nowiki>{{ns:image}}<nowiki>:Archibo.png|200px|thumb|left|testo alternatibo]]</nowiki></tt>''' ta usar una bersión de 200 píxels d'amplaria en una caixa a la marguin cucha con 'testo alternatibo' como descripzión
+*'''<tt><nowiki>[[</nowiki>{{ns:media}}<nowiki>:Archibo.ogg]]</nowiki></tt>''' ta fer un binclo dreitament ta l'archibo sin amostrar-lo.",
'upload-permitted' => "Tipos d'archibo premititos: $1.",
'upload-preferred' => "Tipos d'archibo preferitos: $1.",
'upload-prohibited' => "Tipos d'archibo biedatos: $1.",
'uploadlog' => 'rechistro de cargas',
'uploadlogpage' => "Rechistro de cargas d'archibos",
-'uploadlogpagetext' => "Contino ye una lista d'os zaguers archibos cargatos.",
+'uploadlogpagetext' => "Contino ye una lista d'os zaguers archibos cargatos. Mire-se a [[Special:NewImages|galería d'archibos nuebos]] ta tener una ambiesta más bisual.",
'filename' => "Nombre de l'archibo",
'filedesc' => 'Resumen',
'fileuploadsummary' => 'Resumen:',
-'filestatus' => "Situazión d'os dreitos d'autor (copyright)",
-'filesource' => 'Fuent',
+'filestatus' => "Estau d'os dreitos d'autor (copyright):",
+'filesource' => 'Fuent:',
'uploadedfiles' => 'Archibos cargatos',
-'ignorewarning' => "Inorar l'abiso y alzar l'archibo en cualsiquier caso.",
+'ignorewarning' => "Inorar l'abiso y alzar l'archibo en cualsiquier caso",
'ignorewarnings' => 'Inorar cualsiquier abiso',
'minlength1' => "Os nombres d'archibo han de tener á lo menos una letra.",
-'illegalfilename' => "O nombre d'archivo «$1» contiene caráuters no premititos en títols de pachinas. Por fabor, cambee o nombre de l'archibo y mire de tornar á cargarlo.",
+'illegalfilename' => "O nombre d'archibo «$1» tiene caráuters no premititos en títols de pachinas. Por fabor, cambee o nombre de l'archibo y mire de tornar á cargarlo.",
'badfilename' => 'O nombre d\'a imachen s\'ha cambiato por "$1".',
'filetype-badmime' => 'No se premite cargar archibos de tipo MIME "$1".',
-'filetype-unwanted-type' => "Os '''\".\$1\"''' son un tipo d'archibo no deseyato. Se prefieren os archibos de tipo \$2.",
-'filetype-banned-type' => "No se premiten os archibos de tipo '''\".\$1\"'''. Os tipos que se premiten son \$2.",
+'filetype-unwanted-type' => "Os '''\".\$1\"''' son un tipo d'archibo no deseyato. Se prefieren os archibos {{PLURAL:\$3|de tipo|d'os tipos}} \$2.",
+'filetype-banned-type' => "No se premiten os archibos de tipo '''\".\$1\"'''. {{PLURAL:\$3|O tipo premitito ye|Os tipos premititos son}} \$2.",
'filetype-missing' => 'L\'archibo no tiene garra estensión (como ".jpg").',
-'large-file' => 'Se consella que os archibos no sigan mayors de $1; iste archbo este archivo ocupa $2.',
+'large-file' => 'Se consella que os archibos no sigan mayors de $1; iste archibo ocupa $2.',
'largefileserver' => "A grandaria d'iste archibo ye mayor d'a que a confegurazión d'iste serbidor premite.",
'emptyfile' => "Parixe que l'archibo que se miraba de cargar ye buedo; por fabor, comprebe que ixe ye reyalment l'archibo que quereba cargar.",
-'fileexists' => "Ya bi ha un archibo con ixe nombre. Por fabor, Por favor mire-se l'archibo esistent $1 si no ye seguro de querer sustituyir-lo.
-
-
-'''Nota:''' Si sustituye finalment l'archibo, le caldrá esbiellar a caché d'o suyo nabegador ta beyer os cambeos:
-*'''Mozilla''' / '''Firefox''': Prete o botón '''Recargar''' (o '''ctrl-r''')
-*'''Internet Explorer''' / '''Opera''': '''ctrl-f5'''
-*'''Safari''': '''cmd-r'''
-*'''Konqueror''': '''ctrl-r''",
-'filepageexists' => 'Ya bi ha una pachina (no una imachen) con iste nombre, por fabor, mire-se <strong><tt>$1</tt></strong> si no ye seguro si quiere cambiar-la.',
+'fileexists' => "Ya bi ha un archibo con ixe nombre. Por fabor, Por favor mire-se l'archibo esistent <strong><tt>$1</tt></strong> si no ye seguro de querer sustituyir-lo.",
+'filepageexists' => "A pachina de descripzión ta iste archibo ya ye creyata en <strong><tt>$1</tt></strong>, pero no esiste garra archibo con iste nombre. O resumen que escriba no amaneixerá en a pachina de descripzión. Si quiere que o suyo resumen amaneixca aquí, abrá d'editar-lo manualment",
'fileexists-extension' => "Ya bi ha un archibo con un nombre parexiu:<br />
Nombre de l'archibo que ye cargando: <strong><tt>$1</tt></strong><br />
Nombre de l'archibo ya esistent: <strong><tt>$2</tt></strong><br />
@@ -1028,10 +1145,12 @@ Por fabor, trigue un nombre diferent.",
'fileexists-thumb' => "<center>'''Archibo esistent'''</center>",
'fileexists-thumbnail-yes' => "Parixe que l'archibo ye una imachen prou chicota <i>(miniatura)</i>. Comprebe por fabor l'archibo <strong><tt>$1</tt></strong>.<br />
Si l'archibo comprebato ye a mesma imachen en tamaño orichinal no cal cargar una nueba miniatura.",
-'file-thumbnail-no' => 'El nombre del archivo comienza con <strong><tt>$1</tt></strong>. Parece ser una imagen de tamaño reducido <i>(thumbnail)</i>.
-Si tienes esta imagen a toda resolución súbela, si no, por favor cambia el nombre del archivo.',
+'file-thumbnail-no' => "O nombre de l'archibo prenzipia con <strong><tt>$1</tt></strong>.
+Pareix que estase una imachen no guaire gran <i>(thumbnail)</i>.
+Si tiene ista imachen a toda resoluzión, cargue-la, si no, por fabor, cambee o nombre de l'archibo.",
'fileexists-forbidden' => "Ya bi ha un archibo con iste nombre. Por fabor, cambee o nombre de l'archibo y torne á cargar-lo. [[Image:$1|thumb|center|$1]]",
'fileexists-shared-forbidden' => "Ya bi ha un archibo con ixe nombre en o repositorio compartito; por fabor, torne t'a pachina anterior y cargue o suyo archibo con atro nombre. [[Image:$1|thumb|center|$1]]",
+'file-exists-duplicate' => "Iste archibo ye un duplicau {{PLURAL:$1|d'o siguient archibo|d'os siguients archibos}}:",
'successfulupload' => 'Cargata correutament',
'uploadwarning' => "Albertenzia de carga d'archibo",
'savefile' => 'Alzar archibo',
@@ -1042,8 +1161,9 @@ Si tienes esta imagen a toda resolución súbela, si no, por favor cambia el nom
'uploadscripted' => 'Iste archibo contiene codigo de script u HTML que puede estar interpretado incorreutament por un nabegador.',
'uploadcorrupt' => "Iste archibo ye corrompito u tiene una estensión incorreuta. Por fabor, comprebe l'archibo y cargue-lo una atra begada.",
'uploadvirus' => 'Iste archibo tiene un birus! Detalles: $1',
-'sourcefilename' => "Nombre de l'archivo d'orichen",
-'destfilename' => "Nombre de l'archibo de destino",
+'sourcefilename' => "Nombre de l'archibo d'orichen:",
+'destfilename' => "Nombre de l'archibo de destín:",
+'upload-maxfilesize' => "Masima grandaria de l'archibo: $1",
'watchthisupload' => 'Cosirar ista pachina',
'filewasdeleted' => 'Una archibo con iste mesmo nombre ya se cargó denantes y estió borrato dimpués. Abría de comprebar $1 antes de tornar á cargar-lo una atra begada.',
'upload-wasdeleted' => "'''Pare cuenta: Ye cargando un archibo que ya estió borrato d'antes más.'''
@@ -1051,7 +1171,7 @@ Si tienes esta imagen a toda resolución súbela, si no, por favor cambia el nom
Abría de repensar si ye apropiato continar con a carga d'iste archibo. Aquí tiene o rechistro de borrau d'iste archibo ta que pueda comprebar a razón que se dio ta borrar-lo:",
'filename-bad-prefix' => 'O nombre de l\'archibo que ye cargando prenzipia por <strong>"$1"</strong>, que ye un nombre no descriptibo que gosa clabar automaticament as camaras dichitals. Por fabor, trigue un nombre más descriptibo ta iste archibo.',
'filename-prefix-blacklist' => ' #<!-- dixe ista linia esautament igual como ye --> <pre>
-# A sintacsis ye asinas:
+# A sintacsis ye asinas:
# * Tot o que prenzipia por un caráuter "#" dica la fin d\'a linia ye un comentario
# * As atras linias tienen os prefixos que claban automaticament as camaras dichitals
CIMG # Casio
@@ -1068,9 +1188,9 @@ PICT # misz.
'upload-proto-error' => 'Protocolo incorreuto',
'upload-proto-error-text' => 'Si quiere cargar archibos dende atra pachina, a URL ha de prenzipiar por <code>http://</code> u <code>ftp://</code>.',
'upload-file-error' => 'Error interna',
-'upload-file-error-text' => "Ha escaizito una error interna entre que se prebaba de creyar un archibo temporal en o serbidor. Por fabor, contaute con un almenistrador d'o sistema.",
+'upload-file-error-text' => "Ha escaizito una error interna entre que se prebaba de creyar un archibo temporal en o serbidor. Por fabor, contaute con un [[Special:ListUsers/sysop|almenistrador]] d'o sistema.",
'upload-misc-error' => 'Error esconoixita en a carga',
-'upload-misc-error-text' => "Ha escaizito una error mientres a carga de l'archibo. Por fabor, comprebe que a URL ye conforme y aczesible y dimpués prebe de fer-lo una atra begada. Si o problema contina, contaute con un almenistrador d'o sistema.",
+'upload-misc-error-text' => "Ha escaizito una error entre que se cargaba l'archibo. Por fabor, comprebe que a URL ye conforme y aczesible y dimpués prebe de fer-lo una atra begada. Si o problema contina, contaute con un [[Special:ListUsers/sysop|almenistrador]] d'o sistema.",
# Some likely curl errors. More could be added from <http://curl.haxx.se/libcurl/c/libcurl-errors.html>
'upload-curl-error6' => 'No se podió aczeder dica la URL',
@@ -1078,67 +1198,71 @@ PICT # misz.
'upload-curl-error28' => "Tiempo d'aspera sobrexito",
'upload-curl-error28-text' => "O tiempo de respuesta d'a pachina ye masiau gran. Por fabor, comprebe si o serbidor ye funzionando, aspere bel tiempo y mire de tornar á fer-lo. Talment deseye prebar de nuebo cuan o rete tienga menos carga.",
-'license' => 'Lizenzia',
+'license' => 'Lizenzia:',
'nolicense' => "No s'en ha trigato garra",
'license-nopreview' => '(Ambiesta prebia no disponible)',
'upload_source_url' => ' (una URL conforme y publicament aczesible)',
'upload_source_file' => ' (un archibo en o suyo ordenador)',
-# Image list
-'imagelist' => 'Lista de imachens',
-'imagelisttext' => "Contino bi ha una lista de '''$1''' {{PLURAL:$1|imachen ordenata|imachens ordenatas}} $2.",
-'getimagelist' => "obtenindo a lista d'imachens",
-'ilsubmit' => 'Mirar',
-'showlast' => 'Amostrar as zagueras $1 imachens ordenatas $2.',
-'byname' => 'por o nombre',
-'bydate' => 'por a calendata',
-'bysize' => 'por a grandaria',
-'imgdelete' => 'borr',
-'imgdesc' => 'desc',
-'imgfile' => 'archibo',
-'filehist' => "Istorial de l'archibo",
-'filehist-help' => "Punche en una calendata/ora ta beyer l'archibo como amanixeba por ixas engüeltas.",
-'filehist-deleteall' => 'borrar-lo tot',
-'filehist-deleteone' => 'borrar isto',
-'filehist-revert' => 'esfer',
-'filehist-current' => 'autual',
-'filehist-datetime' => 'Calendata/Ora',
-'filehist-user' => 'Usuario',
-'filehist-dimensions' => 'Dimensions',
-'filehist-filesize' => "Grandaria d'o fichero",
-'filehist-comment' => 'Comentario',
-'imagelinks' => 'Binclos ta la imachen',
-'linkstoimage' => 'Istas son as pachinas que tienen binclos ta ista imachen:',
-'nolinkstoimage' => 'Denguna pachina tiene un binclo ta ista imachen.',
-'sharedupload' => 'Iste archibo ye compartito y puede estar que siga emplegato en atros procheutos.',
-'shareduploadwiki' => 'Ta más informazión, consulte $1.',
-'shareduploadwiki-desc' => "A descripzión d'o suyo $1 s'amuestra en o cobaxo.",
-'shareduploadwiki-linktext' => "pachina de descripzión de l'archibo",
-'noimage' => 'No bi ha garra archibo con ixe nombre, pero puede $1.',
-'noimage-linktext' => 'cargar-lo',
-'uploadnewversion-linktext' => "Cargar una nueba bersión d'iste archibo",
-'imagelist_date' => 'Calendata',
-'imagelist_name' => 'Nombre',
-'imagelist_user' => 'Usuario',
-'imagelist_size' => 'Grandaria (bytes)',
-'imagelist_description' => 'Descripzión',
-'imagelist_search_for' => "Mirar por nombre de l'archibo:",
+# Special:ImageList
+'imagelist-summary' => "Ista pachina espezial amuestra toz os archibos cargatos.
+Por defeuto os zaguers archibos cargatos s'amuestran en o cobalto d'a lista.
+Fendo click en un encabezau de colunna se cambia o criterio d'ordenazión.",
+'imagelist_search_for' => "Mirar por nombre de l'archibo:",
+'imgfile' => 'archibo',
+'imagelist' => 'Lista de imachens',
+'imagelist_date' => 'Calendata',
+'imagelist_name' => 'Nombre',
+'imagelist_user' => 'Usuario',
+'imagelist_size' => 'Grandaria (bytes)',
+'imagelist_description' => 'Descripzión',
+
+# Image description page
+'filehist' => "Istorial de l'archibo",
+'filehist-help' => "Punche en una calendata/ora ta beyer l'archibo como amanixeba por ixas engüeltas.",
+'filehist-deleteall' => 'borrar-lo tot',
+'filehist-deleteone' => 'borrar',
+'filehist-revert' => 'esfer',
+'filehist-current' => 'autual',
+'filehist-datetime' => 'Calendata/Ora',
+'filehist-user' => 'Usuario',
+'filehist-dimensions' => 'Dimensions',
+'filehist-filesize' => "Grandaria d'o fichero",
+'filehist-comment' => 'Comentario',
+'imagelinks' => 'Binclos ta la imachen',
+'linkstoimage' => "{{PLURAL:$1|A pachina siguient tiene|Contino s'amuestran $1 pachinas que tienen}} binclos ta iste archibo:",
+'nolinkstoimage' => 'Denguna pachina tiene un binclo ta ista imachen.',
+'morelinkstoimage' => 'Amostrar [[Special:WhatLinksHere/$1|más binclos]] ta iste archibo.',
+'redirectstofile' => '{{PLURAL:$1|O siguient archibo reendreza|Os siguients $1 archibos reendrezan}} enta iste archibo:',
+'duplicatesoffile' => "{{PLURAL:$1|O siguient archibo ye un duplicau|Os siguients $1 archibos son duplicaus}} d'iste archibo:",
+'sharedupload' => 'Iste archibo ye compartito y puede estar que siga emplegato en atros procheutos.',
+'shareduploadwiki' => 'Ta más informazión, consulte $1.',
+'shareduploadwiki-desc' => "A descripzión d'a $1 en o repositorio compartito s'amuestra en o cobaxo.",
+'shareduploadwiki-linktext' => "pachina de descripzión de l'archibo",
+'shareduploadduplicate' => "Este archibo ye un duplicato de $1 d'un repositorio compartito.",
+'shareduploadduplicate-linktext' => 'atro archibo',
+'shareduploadconflict' => "Iste archibo tiene o mesmo nombre que $1 d'o repositorio compartito.",
+'shareduploadconflict-linktext' => 'atro archibo',
+'noimage' => 'No bi ha garra archibo con ixe nombre, pero puede $1.',
+'noimage-linktext' => 'cargar-lo',
+'uploadnewversion-linktext' => "Cargar una nueba bersión d'iste archibo",
+'imagepage-searchdupe' => 'Mirar archibos duplicatos',
# File reversion
'filerevert' => 'Rebertir $1',
'filerevert-legend' => 'Rebertir fichero',
-'filerevert-intro' => '<span class="plainlinks">Ye rebertindo \'\'\'[[Media:$1|$1]]\'\'\' á la [$4 bersion de $3, $2].</span>',
+'filerevert-intro' => "Ye rebertindo '''[[Media:$1|$1]]''' á la [$4 bersion de $3, $2].",
'filerevert-comment' => 'Comentario:',
'filerevert-defaultcomment' => 'Rebertito á la bersión de $2, $1',
'filerevert-submit' => 'Rebertir',
-'filerevert-success' => '<span class="plainlinks">S\'ha rebertito \'\'\'[[Media:$1|$1]]\'\'\' á la [$4 bersión de $3, $2].</span>',
+'filerevert-success' => "S'ha rebertito '''[[Media:$1|$1]]''' á la [$4 bersión de $3, $2].",
'filerevert-badversion' => "No bi ha garra bersión antiga d'o archibo con ixa calendata y ora.",
# File deletion
'filedelete' => 'Borrar $1',
'filedelete-legend' => 'Borrar archibo',
'filedelete-intro' => "Ye borrando '''[[Media:$1|$1]]'''.",
-'filedelete-intro-old' => '<span class="plainlinks">Ye borrando a bersión de \'\'\'[[Media:$1|$1]]\'\'\' de [$4 $3, $2].</span>',
+'filedelete-intro-old' => "Ye borrando a bersión de '''[[Media:$1|$1]]''' de [$4 $3, $2].",
'filedelete-comment' => 'Causa:',
'filedelete-submit' => 'Borrar',
'filedelete-success' => "S'ha borrato '''$1'''.",
@@ -1151,6 +1275,7 @@ PICT # misz.
'filedelete-reason-dropdown' => "*Razons comuns ta borrar archibos
** Dreitos d'autor no respetatos
** Archibo duplicato",
+'filedelete-edit-reasonlist' => "Editar as razons d'o borrau",
# MIME search
'mimesearch' => 'Mirar por tipo MIME',
@@ -1179,37 +1304,42 @@ PICT # misz.
# Statistics
'statistics' => 'Estadisticas',
-'sitestats' => "Estadisticas d'a {{SITENAME}}",
+'sitestats' => 'Estadisticas de {{SITENAME}}',
'userstats' => "Estadisticas d'usuario",
'sitestatstext' => "Bi ha un total de {{PLURAL:$1|'''1''' pachina|'''$1''' pachinas}} en a base de datos.
Isto encluye pachinas de descusión, pachinas sobre {{SITENAME}}, borradors menimos, reendrezeras y atras que cal que no puedan estar consideratas pachinas de contenius.
Sacando ixas pachinas, regular que bi aiga {{PLURAL:$2|1 pachina|'''$2''' pachinas}} de conteniu lechitimo.
-Bi ha '''$8''' {{PLURAL:$8|archibo alzato|archivos alzatos}} en o serbidor.
+Bi ha '''$8''' {{PLURAL:$8|archibo alzato|archibos alzatos}} en o serbidor.
Dende a debantadera d'o wiki bi ha abito un total de '''$3''' {{PLURAL:$3|besitas|besitas}} y '''$4''' {{PLURAL:$4|edizión de pachina|edizions de pachinas}}.
Isto resulta en una meya de '''$5''' {{PLURAL:$5|edizión|edizions}} por pachina y '''$6''' {{PLURAL:$6|besita|besitas}} por edizión.
-A longaria d'a [http://meta.wikimedia.org/wiki/Help:Job_queue coda de quefers] ye de '''$7'''",
+A longaria d'a [http://www.mediawiki.org/wiki/Manual:Job_queue coda de quefers] ye de '''$7'''",
'userstatstext' => "Bi ha {{PLURAL:$1|'''1''' usuario rechistrato|'''$1''' usuarios rechistratos}},
d'os que '''$2''' (o '''$4%''') {{PLURAL:$1|en ye $5|en son $5}}.",
'statistics-mostpopular' => 'Pachinas más bistas',
'disambiguations' => 'Pachinas de desambigazión',
'disambiguationspage' => 'Template:Desambigazión',
-'disambiguations-text' => "As siguients pachinas tienen binclos ta una '''pachina de desambigazión'''. Ixos binclos abrían de ir millor t'a pachina espezifica apropiada.<br />Una pachina se considera pachina de desambigazión si fa serbir una plantilla probenient de [[MediaWiki:disambiguationspage]].",
+'disambiguations-text' => "As siguients pachinas tienen binclos ta una '''pachina de desambigazión'''.
+Ixos binclos abrían de ir millor t'a pachina espezifica apropiada.<br />
+Una pachina se considera pachina de desambigazión si fa serbir una plantilla probenient de [[MediaWiki:Disambiguationspage]].",
-'doubleredirects' => 'Reendrezeras dobles',
-'doubleredirectstext' => "En ista pachina s'amuestran as pachinas que son reendrezatas enta atras reendrezeras. Cada ringlera contiene o binclo t'a primer y segunda reendrezeras, y tamién o destino d'a segunda reendrezera, que ye á sobent a pachina \"reyal\" á la que a primer pachina abría d'endrezar.",
+'doubleredirects' => 'Reendrezeras dobles',
+'doubleredirectstext' => "En ista pachina s'amuestran as pachinas que son reendrezatas enta atras reendrezeras. Cada ringlera contiene o binclo t'a primer y segunda reendrezeras, y tamién o destino d'a segunda reendrezera, que ye á sobent a pachina \"reyal\" á la que a primer pachina abría d'endrezar.",
+'double-redirect-fixed-move' => "S'ha tresladau [[$1]], agora ye una endrezera ta [[$2]]",
+'double-redirect-fixer' => 'Apañador de reendrezeras',
'brokenredirects' => 'Reendrezeras crebatas',
'brokenredirectstext' => 'As siguients reendrezeras leban enta pachinas inesistents.',
'brokenredirects-edit' => '(editar)',
'brokenredirects-delete' => '(borrar)',
-'withoutinterwiki' => "Pachinas sin d'interwikis",
-'withoutinterwiki-header' => 'As siguients pachinas no tienen binclos ta bersions en atras luengas:',
-'withoutinterwiki-submit' => 'Amostrar',
+'withoutinterwiki' => "Pachinas sin d'interwikis",
+'withoutinterwiki-summary' => 'As siguients pachinas no tienen binclos ta bersions en atras luengas:',
+'withoutinterwiki-legend' => 'Prefixo',
+'withoutinterwiki-submit' => 'Amostrar',
'fewestrevisions' => 'Articlos con menos edizions',
@@ -1222,7 +1352,7 @@ d'os que '''$2''' (o '''$4%''') {{PLURAL:$1|en ye $5|en son $5}}.",
'nviews' => '$1 {{PLURAL:$1|besita|besitas}}',
'specialpage-empty' => 'Ista pachina ye bueda.',
'lonelypages' => 'Pachinas popiellas',
-'lonelypagestext' => "Garra pachina de {{SITENAME}} wiki tiene binclos t'as pachinas que se listan contino.",
+'lonelypagestext' => "Garra pachina de {{SITENAME}} tiene binclos t'as pachinas que se listan contino.",
'uncategorizedpages' => 'Pachinas sin categorizar',
'uncategorizedcategories' => 'Categorías sin categorizar',
'uncategorizedimages' => 'Archibos sin categorizar',
@@ -1232,40 +1362,40 @@ d'os que '''$2''' (o '''$4%''') {{PLURAL:$1|en ye $5|en son $5}}.",
'popularpages' => 'Pachinas populars',
'wantedcategories' => 'Categorías requiestas',
'wantedpages' => 'Pachinas requiestas',
+'missingfiles' => 'Archibos que faltan',
'mostlinked' => 'Pachinas más enlazadas',
'mostlinkedcategories' => 'Categorías más enlazadas',
'mostlinkedtemplates' => 'Plantillas más binculatas',
'mostcategories' => 'Pachinas con más categorías',
'mostimages' => 'Archibos más emplegatos',
'mostrevisions' => 'Pachinas con más edizions',
-'allpages' => 'Todas as pachinas',
'prefixindex' => 'Pachinas por prefixo',
'shortpages' => 'Pachinas más curtas',
'longpages' => 'Pachinas más largas',
'deadendpages' => 'Pachinas sin salida',
'deadendpagestext' => 'As siguients pachinas no tienen binclos ta denguna atra pachina de {{SITENAME}}.',
'protectedpages' => 'Pachinas protechitas',
+'protectedpages-indef' => 'Nomás protezions indefinitas',
'protectedpagestext' => 'As siguients pachinas son protechitas contra edizions u treslaus',
'protectedpagesempty' => 'En iste inte no bi ha garra pachina protechita con ixos parametros.',
'protectedtitles' => 'Títols protechitos',
'protectedtitlestext' => 'Os siguients títols son protechitos ta pribar a suya creyazión',
'protectedtitlesempty' => 'En iste inte no bi ha garra títol protechito con ixos parametros.',
'listusers' => "Lista d'usuarios",
-'specialpages' => 'Pachinas espezials',
-'spheading' => 'Pachinas espezials ta toz os usuarios',
-'restrictedpheading' => 'Pachinas espezials restrinchitas',
'newpages' => 'Pachinas nuebas',
'newpages-username' => "Nombre d'usuario",
'ancientpages' => 'Pachinas más biellas',
-'intl' => 'Binclos inter-luengas',
'move' => 'Tresladar',
'movethispage' => 'Tresladar ista pachina',
-'unusedimagestext' => '<p>Por fabor, pare cuenta que atros puestos web pueden tener binclos ta imachens con una URL dreita y, por ixo, podrían amanixer en ista lista encara que sí se faigan serbir autibament.</p>',
+'unusedimagestext' => 'Por fabor, pare cuenta que atros puestos web pueden tener binclos ta imachens con una URL dreita y, por ixo, podrían amanixer en ista lista encara que sí se faigan serbir autibament.',
'unusedcategoriestext' => 'As siguients categoría son creyatas, pero no bi ha garra articlo u categoría que las faiga serbir.',
'notargettitle' => 'No bi ha garra pachina de destino',
'notargettext' => 'No ha espezificato en que pachina quiere aplicar ista funzión.',
+'nopagetitle' => 'No esiste ixa pachina',
+'nopagetext' => 'A pachina que ha espezificato no esiste.',
'pager-newer-n' => '{{PLURAL:$1|1 más rezient|$1 más rezients}}',
'pager-older-n' => '{{PLURAL:$1|1 más antiga|$1 más antigas}}',
+'suppress' => 'Superbisión',
# Book sources
'booksources' => 'Fuents de libros',
@@ -1273,13 +1403,6 @@ d'os que '''$2''' (o '''$4%''') {{PLURAL:$1|en ye $5|en son $5}}.",
'booksources-go' => 'Ir-ie',
'booksources-text' => 'Contino ye una lista de binclos ta atros puestos an que benden libros nuebos y usatos, talment bi aiga más informazión sobre os libros que ye mirando.',
-'categoriespagetext' => 'En iste wiki bi son as siguients categorías.',
-'data' => 'Datos',
-'userrights' => "Confegurazión de premisos d'os usuarios",
-'groups' => "Grupos d'usuarios",
-'alphaindexline' => '$1 á $2',
-'version' => 'Bersión',
-
# Special:Log
'specialloguserlabel' => 'Usuario:',
'speciallogtitlelabel' => 'Títol:',
@@ -1292,7 +1415,9 @@ Ta reduzir o listau puede trigar un tipo de rechistro, o nombre de l'usuario u a
'logempty' => 'No bi ha garra elemento en o rechistro con ixas carauteristicas.',
'log-title-wildcard' => 'Mirar títols que prenzipien con iste testo',
-# Special:Allpages
+# Special:AllPages
+'allpages' => 'Todas as pachinas',
+'alphaindexline' => '$1 á $2',
'nextpage' => 'Siguient pachina ($1)',
'prevpage' => 'Pachina anterior ($1)',
'allpagesfrom' => 'Amostrar pachinas que prenzipien por:',
@@ -1306,18 +1431,33 @@ Ta reduzir o listau puede trigar un tipo de rechistro, o nombre de l'usuario u a
'allpagesbadtitle' => 'O títol yera incorreuto u teneba un prefixo de binclo inter-luenga u inter-wiki. Puede contener uno u más caráuters que no se pueden emplegar en títols.',
'allpages-bad-ns' => '{{SITENAME}} no tiene o espazio de nombres "$1".',
-# Special:Listusers
+# Special:Categories
+'categories' => 'Categorías',
+'categoriespagetext' => 'As siguients categorías contienen bella pachina u archibo',
+'categoriesfrom' => 'Amostrar as categoría que prenzipien por:',
+'special-categories-sort-count' => 'ordenar por recuento',
+'special-categories-sort-abc' => 'ordenar alfabeticament',
+
+# Special:ListUsers
'listusersfrom' => 'Amostrar usuarios que o nombre suyo prenzipie por:',
'listusers-submit' => 'Amostrar',
'listusers-noresult' => "No s'ha trobato ixe usuario.",
+# Special:ListGroupRights
+'listgrouprights' => "Dreitos d'a colla d'usuarios",
+'listgrouprights-summary' => "Contino bi ye una lista de collas d'usuario definitas en iste wiki, con os suyos dreitos d'aczeso asoziatos. Tamién puet trobar aquí [[{{MediaWiki:Listgrouprights-helppage}}|informazión adizional]] sobre os dreitos indibiduals.",
+'listgrouprights-group' => 'Colla',
+'listgrouprights-rights' => 'Dreitos',
+'listgrouprights-helppage' => "Help:Dreitos d'a colla",
+'listgrouprights-members' => '(listau de miembros)',
+
# E-mail user
'mailnologin' => "No nimbiar l'adreza",
-'mailnologintext' => "Ha d'aber [[Special:Userlogin|enzetato una sesión]] y tener una adreza de correu-e conforme en as suyas [[Special:Preferences|preferenzias]] ta nimbiar un correu eletronico ta atros usuarios.",
+'mailnologintext' => "Ha d'aber [[Special:UserLogin|enzetato una sesión]] y tener una adreza de correu-e conforme en as suyas [[Special:Preferences|preferenzias]] ta nimbiar un correu eletronico ta atros usuarios.",
'emailuser' => 'Nimbiar un correu electronico ta iste usuario',
'emailpage' => "Nimbiar correu ta l'usuario",
-'emailpagetext' => "Si iste usuario ese rechistrato una adreza de correu-e conforme en as suyas preferenzias d'usuario, iste formulario sirbe ta nimbiar-le un mensache.
-L'adreza de correu-e que endicó en as suyas preferenzias d'usuario amanixerá en o campo 'remitent' ta que o destinatario pueda responder-le.",
+'emailpagetext' => "Si iste usuario ese rechistrato una adreza de correu-e conforme en as suyas preferenzias d'usuario, puede nimbiar-le un mensache con iste formulario.
+L'adreza de correu-e que endicó en as suyas [[Special:Preferences|preferenzias d'usuario]] amaneixerá en o campo 'remitent' ta que o destinatario pueda responder-le.",
'usermailererror' => "L'ocheto de correu retornó una error:",
'defemailsubject' => 'Correu de {{SITENAME}}',
'noemailtitle' => 'No bi ha garra adreza de correu eletronico',
@@ -1331,6 +1471,7 @@ L'adreza de correu-e que endicó en as suyas preferenzias d'usuario amanixerá e
'emailccsubject' => "Copia d'o suyo mensache ta $1: $2",
'emailsent' => 'Mensache de correu nimbiato',
'emailsenttext' => "S'ha nimbiato o suyo correu.",
+'emailuserfooter' => 'Iste correu-e s\'ha nimbiato por $1 ta $2 fendo serbir a funzión "Email user" de {{SITENAME}}.',
# Watchlist
'watchlist' => 'Lista de seguimiento',
@@ -1339,9 +1480,9 @@ L'adreza de correu-e que endicó en as suyas preferenzias d'usuario amanixerá e
'nowatchlist' => 'No tiens denguna pachina en a lista de seguimiento.',
'watchlistanontext' => "Ha de $1 ta beyer u editar as dentradas d'a suya lista de seguimiento.",
'watchnologin' => 'No ha enzetato a sesión',
-'watchnologintext' => "Ha d'estar [[Special:Userlogin|identificato]] ta poder cambiar a suya lista de seguimiento.",
+'watchnologintext' => "Ha d'estar [[Special:UserLogin|identi