summaryrefslogtreecommitdiff
path: root/languages
diff options
context:
space:
mode:
authorPierre Schmitz <pierre@archlinux.de>2008-03-21 11:49:34 +0100
committerPierre Schmitz <pierre@archlinux.de>2008-03-21 11:49:34 +0100
commit086ae52d12011746a75f5588e877347bc0457352 (patch)
treee73263c7a29d0f94fafb874562610e16eb292ba8 /languages
parent749e7fb2bae7bbda855de3c9e319435b9f698ff7 (diff)
Update auf MediaWiki 1.12.0
Diffstat (limited to 'languages')
-rw-r--r--languages/Language.php563
-rw-r--r--languages/LanguageConverter.php9
-rw-r--r--languages/Names.php127
-rw-r--r--languages/classes/LanguageAr.php6
-rw-r--r--languages/classes/LanguageBat_smg.php26
-rw-r--r--languages/classes/LanguageBe.php15
-rw-r--r--languages/classes/LanguageBe_tarask.php29
-rw-r--r--languages/classes/LanguageBs.php14
-rw-r--r--languages/classes/LanguageCs.php50
-rw-r--r--languages/classes/LanguageCu.php15
-rw-r--r--languages/classes/LanguageCy.php21
-rw-r--r--languages/classes/LanguageDsb.php115
-rw-r--r--languages/classes/LanguageFi.php6
-rw-r--r--languages/classes/LanguageFr.php10
-rw-r--r--languages/classes/LanguageHe.php13
-rw-r--r--languages/classes/LanguageHr.php15
-rw-r--r--languages/classes/LanguageHsb.php17
-rw-r--r--languages/classes/LanguageHy.php12
-rw-r--r--languages/classes/LanguageKaa.php43
-rw-r--r--languages/classes/LanguageKk.deps.php3
-rw-r--r--languages/classes/LanguageKk.php498
-rw-r--r--languages/classes/LanguageKk_cyrl.php722
-rw-r--r--languages/classes/LanguageKsh.php16
-rw-r--r--languages/classes/LanguageKu.php32
-rw-r--r--languages/classes/LanguageLt.php16
-rw-r--r--languages/classes/LanguageLv.php7
-rw-r--r--languages/classes/LanguagePl.php24
-rw-r--r--languages/classes/LanguagePt_br.php9
-rw-r--r--languages/classes/LanguageRu.php34
-rw-r--r--languages/classes/LanguageSk.php7
-rw-r--r--languages/classes/LanguageSl.php7
-rw-r--r--languages/classes/LanguageSr_ec.php14
-rw-r--r--languages/classes/LanguageSr_el.php14
-rw-r--r--languages/classes/LanguageUk.php14
-rw-r--r--languages/classes/LanguageYue.php23
-rw-r--r--languages/classes/LanguageZh.deps.php3
-rw-r--r--languages/classes/LanguageZh.php56
-rw-r--r--languages/classes/LanguageZh_hans.php23
-rw-r--r--languages/messages/MessagesAb.php6
-rw-r--r--languages/messages/MessagesAf.php821
-rw-r--r--languages/messages/MessagesAk.php58
-rw-r--r--languages/messages/MessagesAln.php421
-rw-r--r--languages/messages/MessagesAls.php8
-rw-r--r--languages/messages/MessagesAm.php1089
-rw-r--r--languages/messages/MessagesAn.php2362
-rw-r--r--languages/messages/MessagesAng.php669
-rw-r--r--languages/messages/MessagesAr.php1647
-rw-r--r--languages/messages/MessagesArc.php221
-rw-r--r--languages/messages/MessagesArn.php297
-rw-r--r--languages/messages/MessagesAs.php40
-rw-r--r--languages/messages/MessagesAst.php2387
-rw-r--r--languages/messages/MessagesAv.php114
-rw-r--r--languages/messages/MessagesAvk.php1865
-rw-r--r--languages/messages/MessagesAy.php131
-rw-r--r--languages/messages/MessagesAz.php89
-rw-r--r--languages/messages/MessagesBa.php106
-rw-r--r--languages/messages/MessagesBar.php103
-rw-r--r--languages/messages/MessagesBat_smg.php152
-rw-r--r--languages/messages/MessagesBcl.php1982
-rw-r--r--languages/messages/MessagesBe.php1817
-rw-r--r--languages/messages/MessagesBe_tarask.php640
-rw-r--r--languages/messages/MessagesBe_x_old.php1026
-rw-r--r--languages/messages/MessagesBg.php656
-rw-r--r--languages/messages/MessagesBh.php10
-rw-r--r--languages/messages/MessagesBi.php147
-rw-r--r--languages/messages/MessagesBm.php122
-rw-r--r--languages/messages/MessagesBn.php2300
-rw-r--r--languages/messages/MessagesBo.php7
-rw-r--r--languages/messages/MessagesBpy.php273
-rw-r--r--languages/messages/MessagesBr.php1060
-rw-r--r--languages/messages/MessagesBs.php94
-rw-r--r--languages/messages/MessagesBug.php107
-rw-r--r--languages/messages/MessagesCa.php1364
-rw-r--r--languages/messages/MessagesCbk_zam.php62
-rw-r--r--languages/messages/MessagesCdo.php921
-rw-r--r--languages/messages/MessagesCe.php287
-rw-r--r--languages/messages/MessagesCeb.php110
-rw-r--r--languages/messages/MessagesChr.php72
-rw-r--r--languages/messages/MessagesCo.php501
-rw-r--r--languages/messages/MessagesCrh.php12
-rw-r--r--languages/messages/MessagesCrh_cyrl.php1805
-rw-r--r--languages/messages/MessagesCrh_latn.php1802
-rw-r--r--languages/messages/MessagesCs.php1367
-rw-r--r--languages/messages/MessagesCsb.php725
-rw-r--r--languages/messages/MessagesCu.php130
-rw-r--r--languages/messages/MessagesCv.php45
-rw-r--r--languages/messages/MessagesCy.php1914
-rw-r--r--languages/messages/MessagesDa.php623
-rw-r--r--languages/messages/MessagesDe.php819
-rw-r--r--languages/messages/MessagesDe_formal.php485
-rw-r--r--languages/messages/MessagesDiq.php365
-rw-r--r--languages/messages/MessagesDk.php8
-rw-r--r--languages/messages/MessagesDsb.php2440
-rw-r--r--languages/messages/MessagesDum.php120
-rw-r--r--languages/messages/MessagesDv.php398
-rw-r--r--languages/messages/MessagesDz.php14
-rw-r--r--languages/messages/MessagesEe.php201
-rw-r--r--languages/messages/MessagesEl.php920
-rw-r--r--languages/messages/MessagesEml.php151
-rw-r--r--languages/messages/MessagesEn.php1038
-rw-r--r--languages/messages/MessagesEnRTL.php6
-rw-r--r--languages/messages/MessagesEo.php1173
-rw-r--r--languages/messages/MessagesEs.php897
-rw-r--r--languages/messages/MessagesEt.php183
-rw-r--r--languages/messages/MessagesEu.php437
-rw-r--r--languages/messages/MessagesExt.php2121
-rw-r--r--languages/messages/MessagesFa.php1080
-rw-r--r--languages/messages/MessagesFf.php59
-rw-r--r--languages/messages/MessagesFi.php623
-rw-r--r--languages/messages/MessagesFiu_vro.php316
-rw-r--r--languages/messages/MessagesFj.php202
-rw-r--r--languages/messages/MessagesFo.php1178
-rw-r--r--languages/messages/MessagesFr.php940
-rw-r--r--languages/messages/MessagesFrc.php1242
-rw-r--r--languages/messages/MessagesFrp.php1078
-rw-r--r--languages/messages/MessagesFur.php504
-rw-r--r--languages/messages/MessagesFy.php1121
-rw-r--r--languages/messages/MessagesGa.php905
-rw-r--r--languages/messages/MessagesGag.php900
-rw-r--r--languages/messages/MessagesGan.php2157
-rw-r--r--languages/messages/MessagesGd.php386
-rw-r--r--languages/messages/MessagesGl.php2191
-rw-r--r--languages/messages/MessagesGlk.php36
-rw-r--r--languages/messages/MessagesGn.php20
-rw-r--r--languages/messages/MessagesGot.php86
-rw-r--r--languages/messages/MessagesGrc.php510
-rw-r--r--languages/messages/MessagesGsw.php136
-rw-r--r--languages/messages/MessagesGu.php406
-rw-r--r--languages/messages/MessagesHak.php154
-rw-r--r--languages/messages/MessagesHaw.php401
-rw-r--r--languages/messages/MessagesHe.php1088
-rw-r--r--languages/messages/MessagesHi.php136
-rw-r--r--languages/messages/MessagesHr.php1431
-rw-r--r--languages/messages/MessagesHsb.php673
-rw-r--r--languages/messages/MessagesHt.php641
-rw-r--r--languages/messages/MessagesHu.php2688
-rw-r--r--languages/messages/MessagesHy.php2092
-rw-r--r--languages/messages/MessagesIa.php128
-rw-r--r--languages/messages/MessagesId.php448
-rw-r--r--languages/messages/MessagesIe.php251
-rw-r--r--languages/messages/MessagesIg.php30
-rw-r--r--languages/messages/MessagesIi.php9
-rw-r--r--languages/messages/MessagesIk.php15
-rw-r--r--languages/messages/MessagesIke_cans.php402
-rw-r--r--languages/messages/MessagesIke_latn.php369
-rw-r--r--languages/messages/MessagesIlo.php269
-rw-r--r--languages/messages/MessagesInh.php221
-rw-r--r--languages/messages/MessagesIo.php865
-rw-r--r--languages/messages/MessagesIs.php1106
-rw-r--r--languages/messages/MessagesIt.php493
-rw-r--r--languages/messages/MessagesIu.php10
-rw-r--r--languages/messages/MessagesJa.php695
-rw-r--r--languages/messages/MessagesJbo.php177
-rw-r--r--languages/messages/MessagesJut.php637
-rw-r--r--languages/messages/MessagesJv.php100
-rw-r--r--languages/messages/MessagesKa.php1744
-rw-r--r--languages/messages/MessagesKaa.php1521
-rw-r--r--languages/messages/MessagesKab.php956
-rw-r--r--languages/messages/MessagesKg.php160
-rw-r--r--languages/messages/MessagesKk.php42
-rw-r--r--languages/messages/MessagesKk_arab.php2786
-rw-r--r--languages/messages/MessagesKk_cn.php2699
-rw-r--r--languages/messages/MessagesKk_cyrl.php2759
-rw-r--r--languages/messages/MessagesKk_kz.php2691
-rw-r--r--languages/messages/MessagesKk_latn.php2759
-rw-r--r--languages/messages/MessagesKk_tr.php2692
-rw-r--r--languages/messages/MessagesKl.php139
-rw-r--r--languages/messages/MessagesKm.php1598
-rw-r--r--languages/messages/MessagesKn.php908
-rw-r--r--languages/messages/MessagesKo.php573
-rw-r--r--languages/messages/MessagesKrj.php366
-rw-r--r--languages/messages/MessagesKs.php11
-rw-r--r--languages/messages/MessagesKsh.php258
-rw-r--r--languages/messages/MessagesKu.php11
-rw-r--r--languages/messages/MessagesKu_arab.php337
-rw-r--r--languages/messages/MessagesKu_latn.php1435
-rw-r--r--languages/messages/MessagesKv.php7
-rw-r--r--languages/messages/MessagesKw.php118
-rw-r--r--languages/messages/MessagesKy.php331
-rw-r--r--languages/messages/MessagesLa.php885
-rw-r--r--languages/messages/MessagesLad.php102
-rw-r--r--languages/messages/MessagesLb.php2068
-rw-r--r--languages/messages/MessagesLbe.php80
-rw-r--r--languages/messages/MessagesLfn.php821
-rw-r--r--languages/messages/MessagesLg.php482
-rw-r--r--languages/messages/MessagesLi.php2076
-rw-r--r--languages/messages/MessagesLij.php923
-rw-r--r--languages/messages/MessagesLld.php9
-rw-r--r--languages/messages/MessagesLmo.php524
-rw-r--r--languages/messages/MessagesLn.php131
-rw-r--r--languages/messages/MessagesLo.php112
-rw-r--r--languages/messages/MessagesLoz.php1127
-rw-r--r--languages/messages/MessagesLt.php499
-rw-r--r--languages/messages/MessagesLv.php91
-rw-r--r--languages/messages/MessagesMai.php267
-rw-r--r--languages/messages/MessagesMdf.php1594
-rw-r--r--languages/messages/MessagesMg.php1096
-rw-r--r--languages/messages/MessagesMi.php43
-rw-r--r--languages/messages/MessagesMk.php162
-rw-r--r--languages/messages/MessagesMl.php1950
-rw-r--r--languages/messages/MessagesMn.php110
-rw-r--r--languages/messages/MessagesMo.php150
-rw-r--r--languages/messages/MessagesMr.php2349
-rw-r--r--languages/messages/MessagesMs.php2849
-rw-r--r--languages/messages/MessagesMt.php53
-rw-r--r--languages/messages/MessagesMy.php23
-rw-r--r--languages/messages/MessagesMyv.php1005
-rw-r--r--languages/messages/MessagesMzn.php13
-rw-r--r--languages/messages/MessagesNa.php116
-rw-r--r--languages/messages/MessagesNah.php115
-rw-r--r--languages/messages/MessagesNan.php867
-rw-r--r--languages/messages/MessagesNap.php428
-rw-r--r--languages/messages/MessagesNb.php9
-rw-r--r--languages/messages/MessagesNds.php814
-rw-r--r--languages/messages/MessagesNds_nl.php335
-rw-r--r--languages/messages/MessagesNe.php610
-rw-r--r--languages/messages/MessagesNew.php108
-rw-r--r--languages/messages/MessagesNl.php1640
-rw-r--r--languages/messages/MessagesNn.php1647
-rw-r--r--languages/messages/MessagesNo.php884
-rw-r--r--languages/messages/MessagesNon.php25
-rw-r--r--languages/messages/MessagesNov.php371
-rw-r--r--languages/messages/MessagesNso.php1076
-rw-r--r--languages/messages/MessagesNv.php67
-rw-r--r--languages/messages/MessagesNy.php27
-rw-r--r--languages/messages/MessagesOc.php724
-rw-r--r--languages/messages/MessagesOr.php12
-rw-r--r--languages/messages/MessagesOs.php32
-rw-r--r--languages/messages/MessagesPa.php72
-rw-r--r--languages/messages/MessagesPag.php401
-rw-r--r--languages/messages/MessagesPam.php368
-rw-r--r--languages/messages/MessagesPap.php379
-rw-r--r--languages/messages/MessagesPdc.php100
-rw-r--r--languages/messages/MessagesPfl.php179
-rw-r--r--languages/messages/MessagesPi.php8
-rw-r--r--languages/messages/MessagesPih.php64
-rw-r--r--languages/messages/MessagesPl.php1203
-rw-r--r--languages/messages/MessagesPms.php661
-rw-r--r--languages/messages/MessagesPnt.php65
-rw-r--r--languages/messages/MessagesPs.php1058
-rw-r--r--languages/messages/MessagesPt.php736
-rw-r--r--languages/messages/MessagesPt_br.php1748
-rw-r--r--languages/messages/MessagesQu.php2286
-rw-r--r--languages/messages/MessagesRm.php643
-rw-r--r--languages/messages/MessagesRmy.php47
-rw-r--r--languages/messages/MessagesRo.php383
-rw-r--r--languages/messages/MessagesRoa_rup.php21
-rw-r--r--languages/messages/MessagesRu.php630
-rw-r--r--languages/messages/MessagesRuq.php10
-rw-r--r--languages/messages/MessagesRuq_cyrl.php318
-rw-r--r--languages/messages/MessagesRuq_grek.php9
-rw-r--r--languages/messages/MessagesRuq_latn.php318
-rw-r--r--languages/messages/MessagesSa.php60
-rw-r--r--languages/messages/MessagesSah.php1350
-rw-r--r--languages/messages/MessagesSc.php143
-rw-r--r--languages/messages/MessagesScn.php2104
-rw-r--r--languages/messages/MessagesSco.php1213
-rw-r--r--languages/messages/MessagesSd.php124
-rw-r--r--languages/messages/MessagesSdc.php1977
-rw-r--r--languages/messages/MessagesSe.php2685
-rw-r--r--languages/messages/MessagesSei.php1143
-rw-r--r--languages/messages/MessagesSg.php55
-rw-r--r--languages/messages/MessagesShi.php132
-rw-r--r--languages/messages/MessagesSi.php267
-rw-r--r--languages/messages/MessagesSimple.php9
-rw-r--r--languages/messages/MessagesSk.php1056
-rw-r--r--languages/messages/MessagesSl.php169
-rw-r--r--languages/messages/MessagesSm.php223
-rw-r--r--languages/messages/MessagesSma.php902
-rw-r--r--languages/messages/MessagesSn.php21
-rw-r--r--languages/messages/MessagesSo.php92
-rw-r--r--languages/messages/MessagesSq.php387
-rw-r--r--languages/messages/MessagesSr.php11
-rw-r--r--languages/messages/MessagesSr_ec.php1072
-rw-r--r--languages/messages/MessagesSr_el.php133
-rw-r--r--languages/messages/MessagesSr_jc.php9
-rw-r--r--languages/messages/MessagesSr_jl.php9
-rw-r--r--languages/messages/MessagesSrn.php1072
-rw-r--r--languages/messages/MessagesSs.php104
-rw-r--r--languages/messages/MessagesSt.php155
-rw-r--r--languages/messages/MessagesStq.php2313
-rw-r--r--languages/messages/MessagesSu.php737
-rw-r--r--languages/messages/MessagesSv.php731
-rw-r--r--languages/messages/MessagesSw.php753
-rw-r--r--languages/messages/MessagesTa.php1741
-rw-r--r--languages/messages/MessagesTe.php2344
-rw-r--r--languages/messages/MessagesTet.php595
-rw-r--r--languages/messages/MessagesTg.php2314
-rw-r--r--languages/messages/MessagesTh.php746
-rw-r--r--languages/messages/MessagesTi.php26
-rw-r--r--languages/messages/MessagesTk.php17
-rw-r--r--languages/messages/MessagesTl.php633
-rw-r--r--languages/messages/MessagesTn.php25
-rw-r--r--languages/messages/MessagesTo.php1238
-rw-r--r--languages/messages/MessagesTokipona.php155
-rw-r--r--languages/messages/MessagesTp.php9
-rw-r--r--languages/messages/MessagesTpi.php30
-rw-r--r--languages/messages/MessagesTr.php1406
-rw-r--r--languages/messages/MessagesTt.php81
-rw-r--r--languages/messages/MessagesTy.php163
-rw-r--r--languages/messages/MessagesTyv.php693
-rw-r--r--languages/messages/MessagesUdm.php27
-rw-r--r--languages/messages/MessagesUg.php117
-rw-r--r--languages/messages/MessagesUk.php262
-rw-r--r--languages/messages/MessagesUr.php267
-rw-r--r--languages/messages/MessagesUz.php305
-rw-r--r--languages/messages/MessagesVe.php41
-rw-r--r--languages/messages/MessagesVec.php220
-rw-r--r--languages/messages/MessagesVi.php2446
-rw-r--r--languages/messages/MessagesVls.php79
-rw-r--r--languages/messages/MessagesVo.php1892
-rw-r--r--languages/messages/MessagesWa.php691
-rw-r--r--languages/messages/MessagesWar.php401
-rw-r--r--languages/messages/MessagesWo.php1012
-rw-r--r--languages/messages/MessagesWuu.php855
-rw-r--r--languages/messages/MessagesXal.php50
-rw-r--r--languages/messages/MessagesXh.php147
-rw-r--r--languages/messages/MessagesXmf.php425
-rw-r--r--languages/messages/MessagesYdd.php10
-rw-r--r--languages/messages/MessagesYi.php438
-rw-r--r--languages/messages/MessagesYo.php146
-rw-r--r--languages/messages/MessagesYue.php2410
-rw-r--r--languages/messages/MessagesZa.php154
-rw-r--r--languages/messages/MessagesZea.php360
-rw-r--r--languages/messages/MessagesZh.php22
-rw-r--r--languages/messages/MessagesZh_classical.php1719
-rw-r--r--languages/messages/MessagesZh_cn.php2262
-rw-r--r--languages/messages/MessagesZh_hans.php2382
-rw-r--r--languages/messages/MessagesZh_hant.php2354
-rw-r--r--languages/messages/MessagesZh_hk.php42
-rw-r--r--languages/messages/MessagesZh_min_nan.php10
-rw-r--r--languages/messages/MessagesZh_sg.php12
-rw-r--r--languages/messages/MessagesZh_tw.php1035
-rw-r--r--languages/messages/MessagesZh_yue.php2370
-rw-r--r--languages/messages/MessagesZu.php353
335 files changed, 165572 insertions, 43856 deletions
diff --git a/languages/Language.php b/languages/Language.php
index 9bf1abab..67ad0ca2 100644
--- a/languages/Language.php
+++ b/languages/Language.php
@@ -8,18 +8,6 @@ if( !defined( 'MEDIAWIKI' ) ) {
exit( 1 );
}
-#
-# In general you should not make customizations in these language files
-# directly, but should use the MediaWiki: special namespace to customize
-# user interface messages through the wiki.
-# See http://meta.wikipedia.org/wiki/MediaWiki_namespace
-#
-# NOTE TO TRANSLATORS: Do not copy this whole file when making translations!
-# A lot of common constants and a base class with inheritable methods are
-# defined here, which should not be redefined. See the other LanguageXx.php
-# files for examples.
-#
-
# Read language names
global $wgLanguageNames;
require_once( dirname(__FILE__) . '/Names.php' ) ;
@@ -102,6 +90,29 @@ class Language {
'sep', 'oct', 'nov', 'dec'
);
+ static public $mIranianCalendarMonthMsgs = array(
+ 'iranian-calendar-m1', 'iranian-calendar-m2', 'iranian-calendar-m3',
+ 'iranian-calendar-m4', 'iranian-calendar-m5', 'iranian-calendar-m6',
+ 'iranian-calendar-m7', 'iranian-calendar-m8', 'iranian-calendar-m9',
+ 'iranian-calendar-m10', 'iranian-calendar-m11', 'iranian-calendar-m12'
+ );
+
+ static public $mHebrewCalendarMonthMsgs = array(
+ 'hebrew-calendar-m1', 'hebrew-calendar-m2', 'hebrew-calendar-m3',
+ 'hebrew-calendar-m4', 'hebrew-calendar-m5', 'hebrew-calendar-m6',
+ 'hebrew-calendar-m7', 'hebrew-calendar-m8', 'hebrew-calendar-m9',
+ 'hebrew-calendar-m10', 'hebrew-calendar-m11', 'hebrew-calendar-m12',
+ 'hebrew-calendar-m6a', 'hebrew-calendar-m6b'
+ );
+
+ static public $mHebrewCalendarMonthGenMsgs = array(
+ 'hebrew-calendar-m1-gen', 'hebrew-calendar-m2-gen', 'hebrew-calendar-m3-gen',
+ 'hebrew-calendar-m4-gen', 'hebrew-calendar-m5-gen', 'hebrew-calendar-m6-gen',
+ 'hebrew-calendar-m7-gen', 'hebrew-calendar-m8-gen', 'hebrew-calendar-m9-gen',
+ 'hebrew-calendar-m10-gen', 'hebrew-calendar-m11-gen', 'hebrew-calendar-m12-gen',
+ 'hebrew-calendar-m6a-gen', 'hebrew-calendar-m6b-gen'
+ );
+
/**
* Create a language object for a given language code
*/
@@ -160,6 +171,7 @@ class Language {
* @return array
*/
function getDefaultUserOptions() {
+ trigger_error( 'Use of ' . __METHOD__ . ' is deprecated', E_USER_NOTICE );
return User::getDefaultOptions();
}
@@ -316,7 +328,12 @@ class Language {
function getDefaultUserOptionOverrides() {
$this->load();
- return $this->defaultUserOptionOverrides;
+ # XXX - apparently some languageas get empty arrays, didn't get to it yet -- midom
+ if (is_array($this->defaultUserOptionOverrides)) {
+ return $this->defaultUserOptionOverrides;
+ } else {
+ return array();
+ }
}
function getExtraUserToggles() {
@@ -333,9 +350,10 @@ class Language {
* If $customisedOnly is true, only returns codes with a messages file
*/
public static function getLanguageNames( $customisedOnly = false ) {
- global $wgLanguageNames;
+ global $wgLanguageNames, $wgExtraLanguageNames;
+ $allNames = $wgExtraLanguageNames + $wgLanguageNames;
if ( !$customisedOnly ) {
- return $wgLanguageNames;
+ return $allNames;
}
global $IP;
@@ -345,8 +363,8 @@ class Language {
$m = array();
if( preg_match( '/Messages([A-Z][a-z_]+)\.php$/', $file, $m ) ) {
$code = str_replace( '_', '-', strtolower( $m[1] ) );
- if ( isset( $wgLanguageNames[$code] ) ) {
- $names[$code] = $wgLanguageNames[$code];
+ if ( isset( $allNames[$code] ) ) {
+ $names[$code] = $allNames[$code];
}
}
}
@@ -373,11 +391,11 @@ class Language {
}
function getLanguageName( $code ) {
- global $wgLanguageNames;
- if ( ! array_key_exists( $code, $wgLanguageNames ) ) {
+ $names = self::getLanguageNames();
+ if ( !array_key_exists( $code, $names ) ) {
return '';
}
- return $wgLanguageNames[$code];
+ return $names[$code];
}
function getMonthName( $key ) {
@@ -400,6 +418,19 @@ class Language {
return $this->getMessageFromDB( self::$mWeekdayAbbrevMsgs[$key-1] );
}
+ function getIranianCalendarMonthName( $key ) {
+ return $this->getMessageFromDB( self::$mIranianCalendarMonthMsgs[$key-1] );
+ }
+
+ function getHebrewCalendarMonthName( $key ) {
+ return $this->getMessageFromDB( self::$mHebrewCalendarMonthMsgs[$key-1] );
+ }
+
+ function getHebrewCalendarMonthNameGen( $key ) {
+ return $this->getMessageFromDB( self::$mHebrewCalendarMonthGenMsgs[$key-1] );
+ }
+
+
/**
* Used by date() and time() to adjust the time output.
* @public
@@ -468,9 +499,25 @@ class Language {
* xn Do not translate digits of the next numeric format character
* xN Toggle raw digit (xn) flag, stays set until explicitly unset
* xr Use roman numerals for the next numeric format character
+ * xh Use hebrew numerals for the next numeric format character
* xx Literal x
* xg Genitive month name
*
+ * xij j (day number) in Iranian calendar
+ * xiF F (month name) in Iranian calendar
+ * xin n (month number) in Iranian calendar
+ * xiY Y (full year) in Iranian calendar
+ *
+ * xjj j (day number) in Hebrew calendar
+ * xjF F (month name) in Hebrew calendar
+ * xjt t (days in month) in Hebrew calendar
+ * xjx xg (genitive month name) in Hebrew calendar
+ * xjn n (month number) in Hebrew calendar
+ * xjY Y (full year) in Hebrew calendar
+ *
+ * xkY Y (full year) in Thai solar calendar. Months and days are
+ * identical to the Gregorian calendar
+ *
* Characters enclosed in double quotes will be considered literal (with
* the quotes themselves removed). Unmatched quotes will be considered
* literal quotes. Example:
@@ -492,15 +539,23 @@ class Language {
$s = '';
$raw = false;
$roman = false;
+ $hebrewNum = false;
$unix = false;
$rawToggle = false;
+ $iranian = false;
+ $hebrew = false;
+ $thai = false;
for ( $p = 0; $p < strlen( $format ); $p++ ) {
$num = false;
$code = $format[$p];
if ( $code == 'x' && $p < strlen( $format ) - 1 ) {
$code .= $format[++$p];
}
-
+
+ if ( ( $code === 'xi' || $code == 'xj' || $code == 'xk' ) && $p < strlen( $format ) - 1 ) {
+ $code .= $format[++$p];
+ }
+
switch ( $code ) {
case 'xx':
$s .= 'x';
@@ -514,9 +569,16 @@ class Language {
case 'xr':
$roman = true;
break;
+ case 'xh':
+ $hebrewNum = true;
+ break;
case 'xg':
$s .= $this->getMonthNameGen( substr( $ts, 4, 2 ) );
break;
+ case 'xjx':
+ if ( !$hebrew ) $hebrew = self::tsToHebrew( $ts );
+ $s .= $this->getHebrewCalendarMonthNameGen( $hebrew[1] );
+ break;
case 'd':
$num = substr( $ts, 6, 2 );
break;
@@ -527,6 +589,14 @@ class Language {
case 'j':
$num = intval( substr( $ts, 6, 2 ) );
break;
+ case 'xij':
+ if ( !$iranian ) $iranian = self::tsToIranian( $ts );
+ $num = $iranian[2];
+ break;
+ case 'xjj':
+ if ( !$hebrew ) $hebrew = self::tsToHebrew( $ts );
+ $num = $hebrew[2];
+ break;
case 'l':
if ( !$unix ) $unix = wfTimestamp( TS_UNIX, $ts );
$s .= $this->getWeekdayName( gmdate( 'w', $unix ) + 1 );
@@ -547,10 +617,18 @@ class Language {
case 'W':
if ( !$unix ) $unix = wfTimestamp( TS_UNIX, $ts );
$num = gmdate( 'W', $unix );
- break;
+ break;
case 'F':
$s .= $this->getMonthName( substr( $ts, 4, 2 ) );
break;
+ case 'xiF':
+ if ( !$iranian ) $iranian = self::tsToIranian( $ts );
+ $s .= $this->getIranianCalendarMonthName( $iranian[1] );
+ break;
+ case 'xjF':
+ if ( !$hebrew ) $hebrew = self::tsToHebrew( $ts );
+ $s .= $this->getHebrewCalendarMonthName( $hebrew[1] );
+ break;
case 'm':
$num = substr( $ts, 4, 2 );
break;
@@ -560,17 +638,41 @@ class Language {
case 'n':
$num = intval( substr( $ts, 4, 2 ) );
break;
+ case 'xin':
+ if ( !$iranian ) $iranian = self::tsToIranian( $ts );
+ $num = $iranian[1];
+ break;
+ case 'xjn':
+ if ( !$hebrew ) $hebrew = self::tsToHebrew( $ts );
+ $num = $hebrew[1];
+ break;
case 't':
if ( !$unix ) $unix = wfTimestamp( TS_UNIX, $ts );
$num = gmdate( 't', $unix );
break;
+ case 'xjt':
+ if ( !$hebrew ) $hebrew = self::tsToHebrew( $ts );
+ $num = $hebrew[3];
+ break;
case 'L':
if ( !$unix ) $unix = wfTimestamp( TS_UNIX, $ts );
$num = gmdate( 'L', $unix );
- break;
+ break;
case 'Y':
$num = substr( $ts, 0, 4 );
break;
+ case 'xiY':
+ if ( !$iranian ) $iranian = self::tsToIranian( $ts );
+ $num = $iranian[0];
+ break;
+ case 'xjY':
+ if ( !$hebrew ) $hebrew = self::tsToHebrew( $ts );
+ $num = $hebrew[0];
+ break;
+ case 'xkY':
+ if ( !$thai ) $thai = self::tsToThai( $ts );
+ $num = $thai[0];
+ break;
case 'y':
$num = substr( $ts, 2, 2 );
break;
@@ -646,6 +748,9 @@ class Language {
} elseif ( $roman ) {
$s .= self::romanNumeral( $num );
$roman = false;
+ } elseif( $hebrewNum ) {
+ $s .= self::hebrewNumeral( $num );
+ $hebrewNum = false;
} else {
$s .= $this->formatNum( $num, true );
}
@@ -655,6 +760,256 @@ class Language {
return $s;
}
+ private static $GREG_DAYS = array( 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 );
+ private static $IRANIAN_DAYS = array( 31, 31, 31, 31, 31, 31, 30, 30, 30, 30, 30, 29 );
+ /**
+ * Algorithm by Roozbeh Pournader and Mohammad Toossi to convert
+ * Gregorian dates to Iranian dates. Originally written in C, it
+ * is released under the terms of GNU Lesser General Public
+ * License. Conversion to PHP was performed by Niklas Laxström.
+ *
+ * Link: http://www.farsiweb.info/jalali/jalali.c
+ */
+ private static function tsToIranian( $ts ) {
+ $gy = substr( $ts, 0, 4 ) -1600;
+ $gm = substr( $ts, 4, 2 ) -1;
+ $gd = substr( $ts, 6, 2 ) -1;
+
+ # Days passed from the beginning (including leap years)
+ $gDayNo = 365*$gy
+ + floor(($gy+3) / 4)
+ - floor(($gy+99) / 100)
+ + floor(($gy+399) / 400);
+
+
+ // Add days of the past months of this year
+ for( $i = 0; $i < $gm; $i++ ) {
+ $gDayNo += self::$GREG_DAYS[$i];
+ }
+
+ // Leap years
+ if ( $gm > 1 && (($gy%4===0 && $gy%100!==0 || ($gy%400==0)))) {
+ $gDayNo++;
+ }
+
+ // Days passed in current month
+ $gDayNo += $gd;
+
+ $jDayNo = $gDayNo - 79;
+
+ $jNp = floor($jDayNo / 12053);
+ $jDayNo %= 12053;
+
+ $jy = 979 + 33*$jNp + 4*floor($jDayNo/1461);
+ $jDayNo %= 1461;
+
+ if ( $jDayNo >= 366 ) {
+ $jy += floor(($jDayNo-1)/365);
+ $jDayNo = floor(($jDayNo-1)%365);
+ }
+
+ for ( $i = 0; $i < 11 && $jDayNo >= self::$IRANIAN_DAYS[$i]; $i++ ) {
+ $jDayNo -= self::$IRANIAN_DAYS[$i];
+ }
+
+ $jm= $i+1;
+ $jd= $jDayNo+1;
+
+ return array($jy, $jm, $jd);
+ }
+
+ /**
+ * Converting Gregorian dates to Hebrew dates.
+ *
+ * Based on a JavaScript code by Abu Mami and Yisrael Hersch
+ * (abu-mami@kaluach.net, http://www.kaluach.net), who permitted
+ * to translate the relevant functions into PHP and release them under
+ * GNU GPL.
+ */
+ private static function tsToHebrew( $ts ) {
+ # Parse date
+ $year = substr( $ts, 0, 4 );
+ $month = substr( $ts, 4, 2 );
+ $day = substr( $ts, 6, 2 );
+
+ # Calculate Hebrew year
+ $hebrewYear = $year + 3760;
+
+ # Month number when September = 1, August = 12
+ $month += 4;
+ if( $month > 12 ) {
+ # Next year
+ $month -= 12;
+ $year++;
+ $hebrewYear++;
+ }
+
+ # Calculate day of year from 1 September
+ $dayOfYear = $day;
+ for( $i = 1; $i < $month; $i++ ) {
+ if( $i == 6 ) {
+ # February
+ $dayOfYear += 28;
+ # Check if the year is leap
+ if( $year % 400 == 0 || ( $year % 4 == 0 && $year % 100 > 0 ) ) {
+ $dayOfYear++;
+ }
+ } elseif( $i == 8 || $i == 10 || $i == 1 || $i == 3 ) {
+ $dayOfYear += 30;
+ } else {
+ $dayOfYear += 31;
+ }
+ }
+
+ # Calculate the start of the Hebrew year
+ $start = self::hebrewYearStart( $hebrewYear );
+
+ # Calculate next year's start
+ if( $dayOfYear <= $start ) {
+ # Day is before the start of the year - it is the previous year
+ # Next year's start
+ $nextStart = $start;
+ # Previous year
+ $year--;
+ $hebrewYear--;
+ # Add days since previous year's 1 September
+ $dayOfYear += 365;
+ if( ( $year % 400 == 0 ) || ( $year % 100 != 0 && $year % 4 == 0 ) ) {
+ # Leap year
+ $dayOfYear++;
+ }
+ # Start of the new (previous) year
+ $start = self::hebrewYearStart( $hebrewYear );
+ } else {
+ # Next year's start
+ $nextStart = self::hebrewYearStart( $hebrewYear + 1 );
+ }
+
+ # Calculate Hebrew day of year
+ $hebrewDayOfYear = $dayOfYear - $start;
+
+ # Difference between year's days
+ $diff = $nextStart - $start;
+ # Add 12 (or 13 for leap years) days to ignore the difference between
+ # Hebrew and Gregorian year (353 at least vs. 365/6) - now the
+ # difference is only about the year type
+ if( ( $year % 400 == 0 ) || ( $year % 100 != 0 && $year % 4 == 0 ) ) {
+ $diff += 13;
+ } else {
+ $diff += 12;
+ }
+
+ # Check the year pattern, and is leap year
+ # 0 means an incomplete year, 1 means a regular year, 2 means a complete year
+ # This is mod 30, to work on both leap years (which add 30 days of Adar I)
+ # and non-leap years
+ $yearPattern = $diff % 30;
+ # Check if leap year
+ $isLeap = $diff >= 30;
+
+ # Calculate day in the month from number of day in the Hebrew year
+ # Don't check Adar - if the day is not in Adar, we will stop before;
+ # if it is in Adar, we will use it to check if it is Adar I or Adar II
+ $hebrewDay = $hebrewDayOfYear;
+ $hebrewMonth = 1;
+ $days = 0;
+ while( $hebrewMonth <= 12 ) {
+ # Calculate days in this month
+ if( $isLeap && $hebrewMonth == 6 ) {
+ # Adar in a leap year
+ if( $isLeap ) {
+ # Leap year - has Adar I, with 30 days, and Adar II, with 29 days
+ $days = 30;
+ if( $hebrewDay <= $days ) {
+ # Day in Adar I
+ $hebrewMonth = 13;
+ } else {
+ # Subtract the days of Adar I
+ $hebrewDay -= $days;
+ # Try Adar II
+ $days = 29;
+ if( $hebrewDay <= $days ) {
+ # Day in Adar II
+ $hebrewMonth = 14;
+ }
+ }
+ }
+ } elseif( $hebrewMonth == 2 && $yearPattern == 2 ) {
+ # Cheshvan in a complete year (otherwise as the rule below)
+ $days = 30;
+ } elseif( $hebrewMonth == 3 && $yearPattern == 0 ) {
+ # Kislev in an incomplete year (otherwise as the rule below)
+ $days = 29;
+ } else {
+ # Odd months have 30 days, even have 29
+ $days = 30 - ( $hebrewMonth - 1 ) % 2;
+ }
+ if( $hebrewDay <= $days ) {
+ # In the current month
+ break;
+ } else {
+ # Subtract the days of the current month
+ $hebrewDay -= $days;
+ # Try in the next month
+ $hebrewMonth++;
+ }
+ }
+
+ return array( $hebrewYear, $hebrewMonth, $hebrewDay, $days );
+ }
+
+ /**
+ * This calculates the Hebrew year start, as days since 1 September.
+ * Based on Carl Friedrich Gauss algorithm for finding Easter date.
+ * Used for Hebrew date.
+ */
+ private static function hebrewYearStart( $year ) {
+ $a = intval( ( 12 * ( $year - 1 ) + 17 ) % 19 );
+ $b = intval( ( $year - 1 ) % 4 );
+ $m = 32.044093161144 + 1.5542417966212 * $a + $b / 4.0 - 0.0031777940220923 * ( $year - 1 );
+ if( $m < 0 ) {
+ $m--;
+ }
+ $Mar = intval( $m );
+ if( $m < 0 ) {
+ $m++;
+ }
+ $m -= $Mar;
+
+ $c = intval( ( $Mar + 3 * ( $year - 1 ) + 5 * $b + 5 ) % 7);
+ if( $c == 0 && $a > 11 && $m >= 0.89772376543210 ) {
+ $Mar++;
+ } else if( $c == 1 && $a > 6 && $m >= 0.63287037037037 ) {
+ $Mar += 2;
+ } else if( $c == 2 || $c == 4 || $c == 6 ) {
+ $Mar++;
+ }
+
+ $Mar += intval( ( $year - 3761 ) / 100 ) - intval( ( $year - 3761 ) / 400 ) - 24;
+ return $Mar;
+ }
+
+ /**
+ * Algorithm to convert Gregorian dates to Thai solar dates.
+ *
+ * Link: http://en.wikipedia.org/wiki/Thai_solar_calendar
+ *
+ * @param string $ts 14-character timestamp
+ * @return array converted year, month, day
+ */
+ private static function tsToThai( $ts ) {
+ $gy = substr( $ts, 0, 4 );
+ $gm = substr( $ts, 4, 2 );
+ $gd = substr( $ts, 6, 2 );
+
+ # Add 543 years to the Gregorian calendar
+ # Months and days are identical
+ $gy_thai = $gy + 543;
+
+ return array( $gy_thai, $gm, $gd );
+ }
+
+
/**
* Roman number formatting up to 3000
*/
@@ -681,6 +1036,65 @@ class Language {
return $s;
}
+ /**
+ * Hebrew Gematria number formatting up to 9999
+ */
+ static function hebrewNumeral( $num ) {
+ static $table = array(
+ array( '', 'א', 'ב', 'ג', 'ד', 'ה', 'ו', 'ז', 'ח', 'ט', 'י' ),
+ array( '', 'י', 'כ', 'ל', 'מ', 'נ', 'ס', 'ע', 'פ', 'צ', 'ק' ),
+ array( '', 'ק', 'ר', 'ש', 'ת', 'תק', 'תר', 'תש', 'תת', 'תתק', 'תתר' ),
+ array( '', 'א', 'ב', 'ג', 'ד', 'ה', 'ו', 'ז', 'ח', 'ט', 'י' )
+ );
+
+ $num = intval( $num );
+ if ( $num > 9999 || $num <= 0 ) {
+ return $num;
+ }
+
+ $s = '';
+ for ( $pow10 = 1000, $i = 3; $i >= 0; $pow10 /= 10, $i-- ) {
+ if ( $num >= $pow10 ) {
+ if ( $num == 15 || $num == 16 ) {
+ $s .= $table[0][9] . $table[0][$num - 9];
+ $num = 0;
+ } else {
+ $s .= $table[$i][intval( ( $num / $pow10 ) )];
+ if( $pow10 == 1000 ) {
+ $s .= "'";
+ }
+ }
+ }
+ $num = $num % $pow10;
+ }
+ if( strlen( $s ) == 2 ) {
+ $str = $s . "'";
+ } else {
+ $str = substr( $s, 0, strlen( $s ) - 2 ) . '"';
+ $str .= substr( $s, strlen( $s ) - 2, 2 );
+ }
+ $start = substr( $str, 0, strlen( $str ) - 2 );
+ $end = substr( $str, strlen( $str ) - 2 );
+ switch( $end ) {
+ case 'כ':
+ $str = $start . 'ך';
+ break;
+ case 'מ':
+ $str = $start . 'ם';
+ break;
+ case 'נ':
+ $str = $start . 'ן';
+ break;
+ case 'פ':
+ $str = $start . 'ף';
+ break;
+ case 'צ':
+ $str = $start . 'ץ';
+ break;
+ }
+ return $str;
+ }
+
/**
* This is meant to be used by time(), date(), and timeanddate() to get
* the date preference they're supposed to use, it should be used in
@@ -842,7 +1256,9 @@ class Language {
}
function ucfirst( $str ) {
- return self::uc( $str, true );
+ if ( empty($str) ) return $str;
+ if ( ord($str[0]) < 128 ) return ucfirst($str);
+ else return self::uc($str,true); // fall back to more complex logic in case of multibyte strings
}
function uc( $str, $first = false ) {
@@ -872,7 +1288,13 @@ class Language {
}
function lcfirst( $str ) {
- return self::lc( $str, true );
+ if ( empty($str) ) return $str;
+ if ( is_string( $str ) && ord($str[0]) < 128 ) {
+ // editing string in place = cool
+ $str[0]=strtolower($str[0]);
+ return $str;
+ }
+ else return self::lc( $str, true );
}
function lc( $str, $first = false ) {
@@ -1148,9 +1570,10 @@ class Language {
if( !is_array( $rawEntry ) ) {
error_log( "\"$rawEntry\" is not a valid magic thingie for \"$mw->mId\"" );
+ } else {
+ $mw->mCaseSensitive = $rawEntry[0];
+ $mw->mSynonyms = array_slice( $rawEntry, 1 );
}
- $mw->mCaseSensitive = $rawEntry[0];
- $mw->mSynonyms = array_slice( $rawEntry, 1 );
}
/**
@@ -1163,6 +1586,9 @@ class Language {
$fallbackChain[] = $code;
$code = self::getFallbackFor( $code );
}
+ if ( !in_array( 'en', $fallbackChain ) ) {
+ $fallbackChain[] = 'en';
+ }
$fallbackChain = array_reverse( $fallbackChain );
foreach ( $fallbackChain as $code ) {
if ( isset( $newWords[$code] ) ) {
@@ -1347,15 +1773,15 @@ class Language {
*/
function convertGrammar( $word, $case ) {
global $wgGrammarForms;
- if ( isset($wgGrammarForms['en'][$case][$word]) ) {
- return $wgGrammarForms['en'][$case][$word];
+ if ( isset($wgGrammarForms[$this->getCode()][$case][$word]) ) {
+ return $wgGrammarForms[$this->getCode()][$case][$word];
}
return $word;
}
/**
* Plural form transformations, needed for some languages.
- * For example, where are 3 form of plural in Russian and Polish,
+ * For example, there are 3 form of plural in Russian and Polish,
* depending on "count mod 10". See [[w:Plural]]
* For English it is pretty simple.
*
@@ -1364,26 +1790,39 @@ class Language {
*
* Example: {{plural:{{NUMBEROFARTICLES}}|article|articles}}
*
- * @param integer $count
- * @param string $wordform1
- * @param string $wordform2
- * @param string $wordform3 (optional)
- * @param string $wordform4 (optional)
- * @param string $wordform5 (optional)
- * @return string
+ * @param integer $count Non-localized number
+ * @param array $forms Different plural forms
+ * @return string Correct form of plural for $count in this language
+ */
+ function convertPlural( $count, $forms ) {
+ if ( !count($forms) ) { return ''; }
+ $forms = $this->preConvertPlural( $forms, 2 );
+
+ return ( abs($count) == 1 ) ? $forms[0] : $forms[1];
+ }
+
+ /**
+ * 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
+ * @return array Padded array of forms or an exception if not an array
*/
- function convertPlural( $count, $w1, $w2, $w3, $w4, $w5) {
- return ( $count == '1' || $count == '-1' ) ? $w1 : $w2;
+ protected function preConvertPlural( /* Array */ $forms, $count ) {
+ while ( count($forms) < $count ) {
+ $forms[] = $forms[count($forms)-1];
+ }
+ return $forms;
}
/**
* For translaing of expiry times
* @param string The validated block time in English
- * @param $forContent, avoid html?
* @return Somehow translated block time
* @see LanguageFi.php for example implementation
*/
- function translateBlockExpiry( $str, $forContent=false ) {
+ function translateBlockExpiry( $str ) {
$scBlockExpiryOptions = $this->getMessageFromDB( 'ipboptions' );
@@ -1396,10 +1835,7 @@ class Language {
continue;
list($show, $value) = explode(":", $option);
if ( strcmp ( $str, $value) == 0 ) {
- if ( $forContent )
- return htmlspecialchars($str) . htmlspecialchars( trim( $show ) );
- else
- return '<span title="' . htmlspecialchars($str). '">' . htmlspecialchars( trim( $show ) ) . '</span>';
+ return htmlspecialchars( trim( $show ) );
}
}
@@ -1577,6 +2013,10 @@ 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];
@@ -1589,7 +2029,7 @@ class Language {
*/
static function loadLocalisation( $code, $disableCache = false ) {
static $recursionGuard = array();
- global $wgMemc;
+ global $wgMemc, $wgCheckSerialized;
if ( !$code ) {
throw new MWException( "Invalid language code requested" );
@@ -1606,26 +2046,25 @@ class Language {
# Try the serialized directory
$cache = wfGetPrecompiledData( self::getFileName( "Messages", $code, '.ser' ) );
if ( $cache ) {
- self::$mLocalisationCache[$code] = $cache;
- wfDebug( "Language::loadLocalisation(): got localisation for $code from precompiled data file\n" );
- wfProfileOut( __METHOD__ );
- return self::$mLocalisationCache[$code]['deps'];
+ if ( $wgCheckSerialized && self::isLocalisationOutOfDate( $cache ) ) {
+ $cache = false;
+ wfDebug( "Language::loadLocalisation(): precompiled data file for $code is out of date\n" );
+ } else {
+ self::$mLocalisationCache[$code] = $cache;
+ wfDebug( "Language::loadLocalisation(): got localisation for $code from precompiled data file\n" );
+ wfProfileOut( __METHOD__ );
+ return self::$mLocalisationCache[$code]['deps'];
+ }
}
# Try the global cache
$memcKey = wfMemcKey('localisation', $code );
$cache = $wgMemc->get( $memcKey );
if ( $cache ) {
- # Check file modification times
- foreach ( $cache['deps'] as $file => $mtime ) {
- if ( !file_exists( $file ) || filemtime( $file ) > $mtime ) {
- break;
- }
- }
if ( self::isLocalisationOutOfDate( $cache ) ) {
$wgMemc->delete( $memcKey );
$cache = false;
- wfDebug( "Language::loadLocalisation(): localisation cache for $code had expired due to update of $file\n" );
+ wfDebug( "Language::loadLocalisation(): localisation cache for $code had expired\n" );
} else {
self::$mLocalisationCache[$code] = $cache;
wfDebug( "Language::loadLocalisation(): got localisation for $code from cache\n" );
@@ -1700,6 +2139,13 @@ class Language {
# Replace spaces with underscores in namespace names
$cache['namespaceNames'] = str_replace( ' ', '_', $cache['namespaceNames'] );
+
+ # And do the same for specialpage aliases. $page is an array.
+ foreach ( $cache['specialPageAliases'] as &$page ) {
+ $page = str_replace( ' ', '_', $page );
+ }
+ # Decouple the reference to prevent accidental damage
+ unset($page);
# Save to both caches
self::$mLocalisationCache[$code] = $cache;
@@ -1918,6 +2364,3 @@ class Language {
return str_replace( '$1', $this->formatNum( $size ), $text );
}
}
-
-
-
diff --git a/languages/LanguageConverter.php b/languages/LanguageConverter.php
index 43f33ae6..08171c0a 100644
--- a/languages/LanguageConverter.php
+++ b/languages/LanguageConverter.php
@@ -20,6 +20,9 @@ class LanguageConverter {
var $mMarkup;
var $mFlags;
var $mUcfirst = false;
+
+ const CACHE_VERSION_KEY = 'VERSION 5';
+
/**
* Constructor
*
@@ -615,7 +618,7 @@ class LanguageConverter {
$this->mTables = $wgMemc->get( $this->mCacheKey );
wfProfileOut( __METHOD__.'-cache' );
}
- if ( !$this->mTables || !isset( $this->mTables['VERSION 2'] ) ) {
+ if ( !$this->mTables || !isset( $this->mTables[self::CACHE_VERSION_KEY] ) ) {
wfProfileIn( __METHOD__.'-recache' );
// not in cache, or we need a fresh reload.
// we will first load the default tables
@@ -627,7 +630,7 @@ class LanguageConverter {
}
$this->postLoadTables();
- $this->mTables['VERSION 2'] = true;
+ $this->mTables[self::CACHE_VERSION_KEY] = true;
if($this->lockCache()) {
$wgMemc->set($this->mCacheKey, $this->mTables, 43200);
@@ -808,5 +811,3 @@ class LanguageConverter {
}
-
-
diff --git a/languages/Names.php b/languages/Names.php
index 722822c7..92eabc53 100644
--- a/languages/Names.php
+++ b/languages/Names.php
@@ -9,16 +9,19 @@
'aa' => 'Afar', # Afar
'ab' => 'Аҧсуа', # Abkhaz, should possibly add ' бысжѡа'
'af' => 'Afrikaans', # Afrikaans
- 'ak' => 'Akana', # Akan
- 'als' => 'Alemannisch', # Alemannic -- not a valid code, for compatibility
+ 'ak' => 'Akan', # Akan
+ 'aln' => 'Gegë', # Gheg Albanian
+ 'als' => 'Alemannisch', # Alemannic -- not a valid code, for compatibility. See gsw.
'am' => 'አማርኛ', # Amharic
'an' => 'Aragonés', # Aragonese
'ang' => 'Anglo Saxon', # Old English
'ar' => 'العربية', # Arabic
'arc' => 'ܐܪܡܝܐ', # Aramaic
+ 'arn' => 'Mapudungun', # Mapuche, Mapudungu, Araucanian (Araucano)
'as' => 'অসমীয়া', # Assamese
'ast' => 'Asturianu', # Asturian
'av' => 'Авар', # Avar
+ 'avk' => 'Kotava', # Kotava
'ay' => 'Aymar', # Aymara, should possibly be Aymará
'az' => 'Azərbaycan', # Azerbaijani
'ba' => 'Башҡорт', # Bashkir
@@ -29,7 +32,7 @@
'be-tarask' => 'Беларуская (тарашкевіца)', # Belarusian in Taraskievica orthography
'be-x-old' => 'Беларуская (тарашкевіца)', # Belarusian in Taraskievica orthography; compat link
'bg' => 'Български', # Bulgarian
- 'bh' => 'भोजपुरी', # Bihara
+ 'bh' => 'भोजपुरी', # Bhojpuri
'bi' => 'Bislama', # Bislama
'bm' => 'Bamanankan', # Bambara
'bn' => 'বাংলা', # Bengali
@@ -37,10 +40,11 @@
'bpy' => 'ইমার ঠার/বিষ্ণুপ্রিয়া মণিপুরী', # Bishnupriya Manipuri
'br' => 'Brezhoneg', # Breton
'bs' => 'Bosanski', # Bosnian
- 'bug' => 'ᨅᨔ ᨕᨘᨁᨗ', # Buginese
+ 'bto' => 'Iriga Bicolano', # Iriga Bicolano/Rinconada Bikol
+ 'bug' => 'ᨅᨔ ᨕᨘᨁᨗ', # Bugis
'bxr' => 'Буряад', # Buryat (Russia)
'ca' => 'Català', # Catalan
- 'cbk-zam' => 'Zamboangueño', # Zamboanga Chavacano
+ 'cbk-zam' => 'Chavacano de Zamboanga', # Zamboanga Chavacano
'cdo' => 'Mìng-dĕ̤ng-ngṳ̄', # Min Dong
'ce' => 'Нохчийн', # Chechen
'ceb' => 'Cebuano', # Cebuano
@@ -52,21 +56,24 @@
'cr' => 'Nēhiyawēwin / ᓀᐦᐃᔭᐍᐏᐣ', # Cree
'crh' => 'Qırımtatarca', # Crimean Tatar
'crh-latn' => "\xE2\x80\xAAQırımtatarca (Latin)\xE2\x80\xAC", # Crimean Tatar (Latin)
- 'crh-cyrl' => "\xE2\x80\xAAQırımtatarca (Kiril)\xE2\x80\xAC", # Crimean Tatar (Cyrillic)
+ 'crh-cyrl' => "\xE2\x80\xAAКъырымтатарджа (Кирилл)\xE2\x80\xAC", # Crimean Tatar (Cyrillic)
'cs' => 'Česky', # Czech
'csb' => 'Kaszëbsczi', # Cassubian
'cu' => 'Словѣньскъ', # Old Church Slavonic (ancient language)
'cv' => 'Чăвашла', # Chuvash
'cy' => 'Cymraeg', # Welsh
'da' => 'Dansk', # Danish
- 'de' => 'Deutsch', # German
+ 'de' => 'Deutsch', # German ("Du")
+ 'de-formal' => 'Deutsch (Sie-Form)', # German - formal address ("Sie")
'diq' => 'Zazaki', # Zazaki
- 'dk' => 'Dansk', # Unused code currently redirecting to Danish, 'da' is correct for the language
+ 'dk' => 'Dansk (deprecated:da)', # Unused code currently redirecting to Danish, 'da' is correct for the language
+ 'dsb' => 'Dolnoserbski', # Lower Sorbian
+ 'dum' => 'Middelnederlands', # Middle Dutch
'dv' => 'ދިވެހިބަސް', # Dhivehi
'dz' => 'ཇོང་ཁ', # Bhutani
- 'ee' => 'Eʋegbe', # Ewe
+ 'ee' => 'Eʋegbe', # Éwé
'el' => 'Ελληνικά', # Greek
- 'eml' => 'Emiliàn e rumagnòl', # Emilian-Romagnol / Sammarinese
+ 'eml' => 'Emiliàn e rumagnòl', # Emiliano-Romagnolo / Sammarinese
'en' => 'English', # English
'eo' => 'Esperanto', # Esperanto
'es' => 'Español', # Spanish
@@ -74,7 +81,7 @@
'eu' => 'Euskara', # Basque
'ext' => 'Estremeñu', # Extremaduran
'fa' => 'فارسی', # Persian
- 'ff' => 'Fulfulde', # Fulah
+ 'ff' => 'Fulfulde', # Fulfulde, Maasina
'fi' => 'Suomi', # Finnish
'fiu-vro' => 'Võro', # Võro
'fj' => 'Na Vosa Vakaviti', # Fijian
@@ -85,11 +92,14 @@
'fur' => 'Furlan', # Friulian
'fy' => 'Frysk', # Frisian
'ga' => 'Gaeilge', # Irish
+ 'gag' => 'Gagauz', # Gagauz
+ 'gan' => '贛語', # Gan
'gd' => 'Gàidhlig', # Scots Gaelic
'gl' => 'Galego', # Galician
'glk' => 'گیلکی', # Gilaki
- 'gn' => 'Avañe\'ẽ', # Guarani
+ 'gn' => 'Avañe\'ẽ', # Guaraní, Paraguayan
'got' => '𐌲𐌿𐍄𐌹𐍃𐌺', # Gothic
+ 'grc' => 'Ἀρχαία ἑλληνικὴ', # Ancient Greece
'gsw' => 'Alemannisch', # Alemannic
'gu' => 'ગુજરાતી', # Gujarati
'gv' => 'Gaelg', # Manx
@@ -102,7 +112,7 @@
'ho' => 'Hiri Motu', # Hiri Motu
'hr' => 'Hrvatski', # Croatian
'hsb' => 'Hornjoserbsce', # Upper Sorbian
- 'ht' => 'Kreyòl ayisyen', # Haitian
+ 'ht' => 'Kreyòl ayisyen', # Haitian Creole French
'hu' => 'Magyar', # Hungarian
'hy' => 'Հայերեն', # Armenian
'hz' => 'Otsiherero', # Herero
@@ -111,43 +121,53 @@
'ie' => 'Interlingue', # Interlingue (Occidental)
'ig' => 'Igbo', # Igbo
'ii' => 'ꆇꉙ', # Sichuan Yi
- 'ik' => 'Iñupiak', # Inupiak
+ 'ik' => 'Iñupiak', # Inupiak (Inupiatun, Northwest Alaska / Inupiatun, North Alaskan)
+ 'ike-cans' => 'ᐃᓄᒃᑎᑐᑦ', # Inuktitut, Eastern Canadian/Eastern Canadian "Eskimo"/"Eastern Arctic Eskimo"/Inuit (Unified Canadian Aboriginal Syllabics)
+ 'ike-latn' => 'inuktitut', # Inuktitut, Eastern Canadian (Latin script)
'ilo' => 'Ilokano', # Ilokano
+ 'inh' => 'ГІалгІай Ğalğaj', # Ingush
'io' => 'Ido', # Ido
'is' => 'Íslenska', # Icelandic
'it' => 'Italiano', # Italian
- 'iu' => 'ᐃᓄᒃᑎᑐᑦ', # Inuktitut
+ 'iu' => 'ᐃᓄᒃᑎᑐᑦ/inuktitut', # Inuktitut (macro language - do no localise, see ike/ikt - falls back to ike-cans)
'ja' => '日本語', # Japanese
'jbo' => 'Lojban', # Lojban
+ 'jut' => 'Jysk', # Jutish / Jutlandic
'jv' => 'Basa Jawa', # Javanese
'ka' => 'ქართული', # Georgian
'kaa' => 'Qaraqalpaqsha', # Karakalpak
'kab' => 'Taqbaylit', # Kabyle
'kg' => 'Kongo', # Kongo, (FIXME!) should probaly be KiKongo or KiKoongo
- 'ki' => 'Gĩkũyũ', # Kikuyu, correctness not guaranteed
- 'kj' => 'Kuanyama', # Kuanyama (FIXME!)
+ 'ki' => 'Gĩkũyũ', # Gikuyu
+ 'kj' => 'Kwanyama', # Kwanyama
'kk' => 'Қазақша', # Kazakh
- 'kk-cn' => "\xE2\x80\xABقازاقشا (تٴوتە)\xE2\x80\xAC", # Kazakh Arabic
- 'kk-kz' => "\xE2\x80\xAAҚазақша (кирил)\xE2\x80\xAC", # Kazakh Cyrillic
- 'kk-tr' => "\xE2\x80\xAAQazaqşa (latın)\xE2\x80\xAC", # Kazakh Latin
- 'kl' => 'Kalaallisut', # Greenlandic
- 'km' => 'ភាសាខ្មែរ', # Cambodian
+ 'kk-arab' => "\xE2\x80\xABقازاقشا (تٴوتە)\xE2\x80\xAC", # Kazakh Arabic
+ 'kk-cyrl' => "\xE2\x80\xAAҚазақша (кирил)\xE2\x80\xAC", # Kazakh Cyrillic
+ 'kk-latn' => "\xE2\x80\xAAQazaqşa (latın)\xE2\x80\xAC", # Kazakh Latin
+ 'kk-cn' => "\xE2\x80\xABقازاقشا (جۇنگو)\xE2\x80\xAC", # Kazakh (China)
+ 'kk-kz' => "\xE2\x80\xAAҚазақша (Қазақстан)\xE2\x80\xAC", # Kazakh (Kazakhstan)
+ 'kk-tr' => "\xE2\x80\xAAQazaqşa (Türkïya)\xE2\x80\xAC", # Kazakh (Turkey)
+ 'kl' => 'Kalaallisut', # Inuktitut, Greenlandic/Greenlandic/Kalaallisut (kal)
+ 'km' => 'ភាសាខ្មែរ', # Khmer, Central
'kn' => 'ಕನ್ನಡ', # Kannada
'ko' => '한국어', # Korean
- 'kr' => 'Kanuri', # Kanuri (FIXME!)
+ 'kr' => 'Kanuri', # Kanuri, Central
+ 'kri' => 'Krio', # Krio
'krj' => 'Kinaray-a', # Kinaray-a
'ks' => 'कश्मीरी - (كشميري)', # Kashmiri
'ksh' => 'Ripoarisch', # Ripuarian
'ku' => 'Kurdî / كوردی', # Kurdish
- 'ku-latn' => "\xE2\x80\xAAKurdî (latînî)\xE2\x80\xAC", # Kurdish Latin script
- 'ku-arab' => "\xE2\x80\xABكوردي (عەرەبی)\xE2\x80\xAC", # Kurdish Arabic script
- 'kv' => 'Коми', # Komi, cyrillic is common script but also written in latin script
+ 'ku-latn' => "\xE2\x80\xAAKurdî (latînî)\xE2\x80\xAC", # Northern Kurdish Latin script
+ 'ku-arab' => "\xE2\x80\xABكوردي (عەرەبی)\xE2\x80\xAC", # Northern Kurdish Arabic script
+ 'kv' => 'Коми', # Komi-Zyrian, cyrillic is common script but also written in latin script
'kw' => 'Kernewek', # Cornish
'ky' => 'Кыргызча', # Kirghiz
'la' => 'Latina', # Latin
'lad' => 'Ladino', # Ladino
- 'lbe' => 'Лакку', # Lak
'lb' => 'Lëtzebuergesch', # Luxemburguish
+ 'lbe' => 'Лакку', # Lak
+ 'lez' => 'Лезги', # Lezgi
+ 'lfn' => 'Lingua Franca Nova', # Lingua Franca Nova
'lg' => 'Luganda', # Ganda
'li' => 'Limburgs', # Limburgian
'lij' => 'Líguru', # Ligurian
@@ -155,24 +175,27 @@
'lmo' => 'Lumbaart', # Lombard
'ln' => 'Lingála', # Lingala
'lo' => 'ລາວ',# Laotian
+ 'loz' => 'Silozi', # Lozi
'lt' => 'Lietuvių', # Lithuanian
'lv' => 'Latviešu', # Latvian
'lzz' => 'Lazuri Nena', #Laz
+ 'mai' => 'मैथिली', # Maithili
'map-bms' => 'Basa Banyumasan', # Banyumasan
+ 'mdf' => 'мокшень кяль', # Moksha
'mg' => 'Malagasy', # Malagasy
'mh' => 'Ebon', # Marshallese
'mi' => 'Māori', # Maori
- 'minnan' => 'Bân-lâm-gú', # Min-nan (also zh-min-nan)
'mk' => 'Македонски', # Macedonian
'ml' => 'മലയാളം', # Malayalam
- 'mn' => 'Монгол', # Mongoloian
+ 'mn' => 'Монгол', # Mongolian, Peripheral
'mo' => 'Молдовеняскэ', # Moldovan
'mr' => 'मराठी', # Marathi
'ms' => 'Bahasa Melayu', # Malay
'mt' => 'Malti', # Maltese
- 'mus' => 'Muscogee', # Creek, should possibly be Muskogee
+ 'mus' => 'Mvskoke', # Muskogee/Creek
'my' => 'Myanmasa', # Burmese
- 'mzn' => 'مَزِروني', # Mazandarin
+ 'myv' => 'эрзянь кель', # Erzya
+ 'mzn' => 'مَزِروني', # Mazanderani
'na' => 'Ekakairũ Naoero', # Nauruan
'nah' => 'Nahuatl', # Nahuatl, en:Wikipedia writes Nahuatlahtolli, while another form is Náhuatl
'nan' => 'Bân-lâm-gú', # Min-nan -- (bug 8217) nan instead of zh-min-nan, http://www.sil.org/iso639-3/codes.asp?order=639_3&letter=n
@@ -183,12 +206,14 @@
'ne' => 'नेपाली', # Nepali
'new' => 'नेपाल भाषा', # Newar / Nepal Bhasa
'ng' => 'Oshiwambo', # Ndonga
+ 'niu' => 'Niuē', # Niuean
'nl' => 'Nederlands', # Dutch
- 'nn' => "\xE2\x80\xAANorsk (nynorsk)\xE2\x80\xAC" , # Norwegian (Nynorsk)
+ '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
'nv' => 'Diné bizaad', # Navajo
'ny' => 'Chi-Chewa', # Chichewa
'oc' => 'Occitan', # Occitan
@@ -200,22 +225,29 @@
'pam' => 'Kapampangan', # Pampanga
'pap' => 'Papiamentu', # Papiamentu
'pdc' => 'Deitsch', # Pennsylvania German
+ 'pdt' => 'Plautdietsch', # Plautdietsch/Mennonite Low German
+ 'pfl' => 'Pfälzisch', # Palatinate German
'pi' => 'पािऴ', # Pali
'pih' => 'Norfuk / Pitkern', # Norfuk/Pitcairn/Norfolk
'pl' => 'Polski', # Polish
+ 'plm' => 'Palembang', # Palembang
'pms' => 'Piemontèis', # Piedmontese
- 'ps' => 'پښتو', # Pashto
+ 'pnt' => 'Ποντιακά', # Pontic/Pontic Greek
+ 'ps' => 'پښتو', # Pashto, Northern/Paktu/Pakhtu/Pakhtoo/Afghan/Pakhto/Pashtu/Pushto/Yusufzai Pashto
'pt' => 'Português', # Portuguese
'pt-br' => 'Português do Brasil', # Brazilian Portuguese
'qu' => 'Runa Simi', # Quechua
'rm' => 'Rumantsch', # Raeto-Romance
'rmy' => 'Romani', # Vlax Romany
- 'rn' => 'Kirundi', # Kirundi
+ 'rn' => 'Kirundi', # Rundi/Kirundi/Urundi
'ro' => 'Română', # Romanian
'roa-rup' => 'Armãneashce', # Aromanian
'roa-tara' => 'Tarandíne', # Tarantino
'ru' => 'Русский', # Russian
- 'ru-sib' => 'Сибирской', # Siberian/North Russian
+ 'ruq' => 'Vlăheşte', # Megleno-Romanian (redirects to ruq-latn)
+ 'ruq-cyrl' => 'Влахесте', # Megleno-Romanian (Cyrillic script)
+ 'ruq-grek' => 'Βλαεστε', # Megleno-Romanian (Greek script)
+ 'ruq-latn' => 'Vlăheşte', # Megleno-Romanian (Latin script)
'rw' => 'Kinyarwanda', # Kinyarwanda, should possibly be Kinyarwandi
'sa' => 'संस्कृत', # Sanskrit
'sah' => 'Саха тыла', # Sakha
@@ -223,14 +255,18 @@
'scn' => 'Sicilianu', # Sicilian
'sco' => 'Scots', # Scots
'sd' => 'سنڌي', # Sindhi
+ 'sdc' => 'Sassaresu', # Sassarese
'se' => 'Sámegiella', # Northern Sami
- 'sg' => 'Sängö', # Sango, possible alternative is Sangho
+ 'sei' => 'Cmique Itom', # Seri
+ 'sg' => 'Sängö', # Sango/Sangho
'sh' => 'Srpskohrvatski / Српскохрватски', # Serbocroatian
+ 'shi' => 'Tašlḥiyt', # Tachelhit
'si' => 'සිංහල', # Sinhalese
'simple' => 'Simple English', # Simple English
'sk' => 'Slovenčina', # Slovak
'sl' => 'Slovenščina', # Slovenian
'sm' => 'Gagana Samoa', # Samoan
+ 'sma' => 'Åarjelsaemien gïele', # Southern Sami
'sn' => 'chiShona', # Shona
'so' => 'Soomaaliga', # Somali
'sq' => 'Shqip', # Albanian
@@ -239,15 +275,17 @@
'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
+ 'st' => 'Sesotho', # Southern Sotho
+ 'stq' => 'Seeltersk', # Saterland Frisian
'su' => 'Basa Sunda', # Sundanese
'sv' => 'Svenska', # Swedish
'sw' => 'Kiswahili', # Swahili
'ta' => 'தமிழ்', # Tamil
'te' => 'తెలుగు', # Telugu
'tet' => 'Tetun', # Tetun
- 'tg' => 'Тоҷикӣ', # Tajik
+ 'tg' => 'Тоҷикӣ', # Tajiki
'th' => 'ไทย', # Thai
'ti' => 'ትግርኛ', # Tigrinya
'tk' => 'Türkmen', # Turkmen
@@ -256,7 +294,7 @@
'tn' => 'Setswana', # Setswana
'to' => 'faka-Tonga', # Tonga (Tonga Islands)
'tokipona' => 'Toki Pona', # Toki Pona
- 'tp' => 'Toki Pona', # Toki Pona - non-standard language code
+ 'tp' => 'Toki Pona (deprecated:tokipona)', # Toki Pona - non-standard language code
'tpi' => 'Tok Pisin', # Tok Pisin
'tr' => 'Türkçe', # Turkish
'ts' => 'Xitsonga', # Tsonga
@@ -265,6 +303,7 @@
'tw' => 'Twi', # Twi, (FIXME!)
'ty' => 'Reo Mā`ohi', # Tahitian
'tyv' => 'Тыва дыл', # Tyvan
+ 'tzm' => 'ⵜⴰⵎⴰⵣⵉⵖⵜ', # (Central Morocco) Tamazight
'udm' => 'Удмурт', # Udmurt
'ug' => 'Uyghurche‎ / ئۇيغۇرچە', # Uyghur
'uk' => 'Українська', # Ukrainian
@@ -278,16 +317,17 @@
'wa' => 'Walon', # Walloon
'war' => 'Winaray', # Waray-Waray
'wo' => 'Wolof', # Wolof
- 'wuu' => '吴语', # Wu
- 'xal' => 'Хальмг', # Kalmyk
+ 'wuu' => '吴语', # Wu Chinese
+ 'xal' => 'Хальмг', # Kalmyk-Oirat (Kalmuk, Kalmuck, Kalmack, Qalmaq, Kalmytskii Jazyk, Khal:mag, Oirat, Volga Oirat, European Oirat, Western Mongolian)
'xh' => 'isiXhosa', # Xhosan
+ 'xmf' => 'მარგალური', # Mingrelian
+ 'ydd' => 'מיזרח־ייִדיש', # Eastern Yiddish
'yi' => 'ייִדיש', # Yiddish
'yo' => 'Yorùbá', # Yoruba
'yue' => '粵語', # Cantonese -- (bug 8217) yue instead of zh-yue, http://www.sil.org/iso639-3/codes.asp?order=639_3&letter=y
'za' => '(Cuengh)', # Zhuang
- 'zea' => 'Zeêuws', # Zealandic
+ 'zea' => 'Zeêuws', # Zeeuws/Zeaws
'zh' => '中文', # (Zhōng Wén) - Chinese
- 'zh-cfr' => '閩南語', # Min-nan alias (site is at minnan)
'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
@@ -299,4 +339,3 @@
'zh-yue' => '粵語', # Cantonese -- (see bug 8217)
'zu' => 'isiZulu' # Zulu
);
-
diff --git a/languages/classes/LanguageAr.php b/languages/classes/LanguageAr.php
index 514ff028..1b9ae7bf 100644
--- a/languages/classes/LanguageAr.php
+++ b/languages/classes/LanguageAr.php
@@ -7,8 +7,10 @@
*/
class LanguageAr extends Language {
- function convertPlural( $count, $w1, $w2, $w3, $w4, $w5) {
- $forms = array($w1, $w2, $w3, $w4, $w5);
+ function convertPlural( $count, $forms ) {
+ if ( !count($forms) ) { return ''; }
+ $forms = $this->preConvertPlural( $forms, 5 );
+
if ( $count == 1 ) {
$index = 0;
} elseif( $count == 2 ) {
diff --git a/languages/classes/LanguageBat_smg.php b/languages/classes/LanguageBat_smg.php
new file mode 100644
index 00000000..fc830cf5
--- /dev/null
+++ b/languages/classes/LanguageBat_smg.php
@@ -0,0 +1,26 @@
+<?php
+/** Samogitian (Žemaitėška)
+ *
+ * @addtogroup Language
+ *
+ * @author Niklas Laxström
+ */
+class LanguageBat_smg extends Language {
+
+ function convertPlural( $count, $forms ) {
+ if ( !count($forms) ) { return ''; }
+ $forms = $this->preConvertPlural( $forms, 4 );
+
+ $count = abs( $count );
+ if ( $count === 0 || ($count%100 === 0 || ($count%100 >= 10 && $count%100 < 20)) ) {
+ return $forms[2];
+ } elseif ( $count%10 === 1 ) {
+ return $forms[0];
+ } elseif ( $count%10 === 2 ) {
+ return $forms[1];
+ } else {
+ return $forms[3];
+ }
+ }
+
+} \ No newline at end of file
diff --git a/languages/classes/LanguageBe.php b/languages/classes/LanguageBe.php
index e0665e68..cc3e4e37 100644
--- a/languages/classes/LanguageBe.php
+++ b/languages/classes/LanguageBe.php
@@ -14,17 +14,20 @@
*/
class LanguageBe extends Language {
- function convertPlural( $count, $wordform1, $wordform2, $wordform3, $w4, $w5) {
- $count = str_replace ('.', '', $count);
+
+ function convertPlural( $count, $forms ) {
+ if ( !count($forms) ) { return ''; }
+ $forms = $this->preConvertPlural( $forms, 3 );
+
if ($count > 10 && floor(($count % 100) / 10) == 1) {
- return $wordform3;
+ return $forms[2];
} else {
switch ($count % 10) {
- case 1: return $wordform1;
+ case 1: return $forms[0];
case 2:
case 3:
- case 4: return $wordform2;
- default: return $wordform3;
+ case 4: return $forms[1];
+ default: return $forms[2];
}
}
}
diff --git a/languages/classes/LanguageBe_tarask.php b/languages/classes/LanguageBe_tarask.php
index 5e168b7e..d2dd4825 100644
--- a/languages/classes/LanguageBe_tarask.php
+++ b/languages/classes/LanguageBe_tarask.php
@@ -1,5 +1,5 @@
<?php
-/** Belarusian in Taraskievica orthography (Беларуская тарашкевіца)
+/** Belarusian in Taraškievica orthography (Беларуская тарашкевіца)
*
* @addtogroup Language
*
@@ -11,17 +11,32 @@
*/
class LanguageBe_tarask extends Language {
- function convertPlural( $count, $wordform1, $wordform2, $wordform3, $w4, $w5) {
- $count = str_replace ('.', '', $count);
+ /**
+ * 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
+ */
+
+ 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 ($count > 10 && floor(($count % 100) / 10) == 1) {
- return $wordform3;
+ return $forms[2];
} else {
switch ($count % 10) {
- case 1: return $wordform1;
+ case 1: return $forms[0];
case 2:
case 3:
- case 4: return $wordform2;
- default: return $wordform3;
+ case 4: return $forms[1];
+ default: return $forms[2];
}
}
}
diff --git a/languages/classes/LanguageBs.php b/languages/classes/LanguageBs.php
index 119280e6..410c3d62 100644
--- a/languages/classes/LanguageBs.php
+++ b/languages/classes/LanguageBs.php
@@ -6,17 +6,19 @@
class LanguageBs extends Language {
- function convertPlural( $count, $wordform1, $wordform2, $wordform3, $w4, $w5) {
- $count = str_replace ('.', '', $count);
+ function convertPlural( $count, $forms ) {
+ if ( !count($forms) ) { return ''; }
+ $forms = $this->preConvertPlural( $forms, 3 );
+
if ($count > 10 && floor(($count % 100) / 10) == 1) {
- return $wordform3;
+ return $forms[2];
} else {
switch ($count % 10) {
- case 1: return $wordform1;
+ case 1: return $forms[0];
case 2:
case 3:
- case 4: return $wordform2;
- default: return $wordform3;
+ case 4: return $forms[1];
+ default: return $forms[2];
}
}
}
diff --git a/languages/classes/LanguageCs.php b/languages/classes/LanguageCs.php
index ac80f296..4a52368e 100644
--- a/languages/classes/LanguageCs.php
+++ b/languages/classes/LanguageCs.php
@@ -19,6 +19,20 @@ class LanguageCs extends Language {
# allowed values for $case:
# 1sg, 2sg, ..., 7sg -- nominative, genitive, ... (in singular)
switch ( $word ) {
+ case 'Wikibooks':
+ case 'Wikiknihy':
+ switch ( $case ) {
+ case '2sg':
+ return 'Wikiknih';
+ case '3sg':
+ return 'Wikiknihám';
+ case '6sg';
+ return 'Wikiknihách';
+ case '7sg':
+ return 'Wikiknihami';
+ default:
+ return 'Wikiknihy';
+ }
case 'Wikipedia':
case 'Wikipedie':
switch ( $case ) {
@@ -34,17 +48,17 @@ class LanguageCs extends Language {
case 'Wiktionary':
case 'Wikcionář':
+ case 'Wikislovník':
switch ( $case ) {
case '2sg':
- return 'Wikcionáře';
case '3sg':
case '5sg';
case '6sg';
- return 'Wikcionáři';
+ return 'Wikislovníku';
case '7sg':
- return 'Wikcionářem';
+ return 'Wikislovníkem';
default:
- return 'Wikcionář';
+ return 'Wikislovník';
}
case 'Wikiquote':
@@ -64,23 +78,17 @@ class LanguageCs extends Language {
return $word;
}
- # Plural form transformations, needed for some languages.
- # Invoked by {{plural:count|wordform1|wordform2|wordform3}}
- function convertPlural( $count, $wordform1, $wordform2, $wordform3, $w4, $w5) {
- $count = str_replace( '\xc2\xa0', '', $count );
- switch ( $count ) {
- case 1:
- return $wordform1;
+ function convertPlural( $count, $forms ) {
+ if ( !count($forms) ) { return ''; }
+ $forms = $this->preConvertPlural( $forms, 3 );
- case 2:
- case 3:
- case 4:
- return $wordform2;
+ switch ( $count ) {
+ case 1: return $forms[0];
+ case 2:
+ case 3:
+ case 4: return $forms[1];
+ default: return $forms[2];
+ }
+ }
- default:
- return $wordform3;
- };
- }
}
-
-
diff --git a/languages/classes/LanguageCu.php b/languages/classes/LanguageCu.php
index 61128f24..fba895ec 100644
--- a/languages/classes/LanguageCu.php
+++ b/languages/classes/LanguageCu.php
@@ -35,13 +35,16 @@ class LanguageCu extends Language {
return $word;
}
- function convertPlural( $count, $wordform1, $wordform2, $wordform3, $wordform4, $w5) {
+ function convertPlural( $count, $forms ) {
+ if ( !count($forms) ) { return ''; }
+ $forms = $this->preConvertPlural( $forms, 4 );
+
switch ($count % 10) {
- case 1: return $wordform1;
- case 2: return $wordform2;
- case 3: return $wordform3;
- case 4: return $wordform3;
- default: return $wordform4;
+ case 1: return $forms[0];
+ case 2: return $forms[1];
+ case 3:
+ case 4: return $forms[2];
+ default: return $forms[3];
}
}
diff --git a/languages/classes/LanguageCy.php b/languages/classes/LanguageCy.php
new file mode 100644
index 00000000..aea24019
--- /dev/null
+++ b/languages/classes/LanguageCy.php
@@ -0,0 +1,21 @@
+<?php
+/** Welsh (Cymraeg)
+ *
+ * @addtogroup Language
+ *
+ * @author Niklas Laxström
+ */
+class LanguageCy extends Language {
+ function convertPlural( $count, $forms ) {
+ if ( !count($forms) ) { return ''; }
+ $forms = $this->preConvertPlural( $forms, 6 );
+ $count = abs( $count );
+ if ( $count >= 0 && $count <= 3 ) {
+ return $forms[$count];
+ } elseif ( $count == 6 ) {
+ return $forms[4];
+ } else {
+ return $forms[5];
+ }
+ }
+}
diff --git a/languages/classes/LanguageDsb.php b/languages/classes/LanguageDsb.php
new file mode 100644
index 00000000..7408217e
--- /dev/null
+++ b/languages/classes/LanguageDsb.php
@@ -0,0 +1,115 @@
+<?php
+/** Lower Sorbian (Dolnoserbski)
+ *
+ * @addtogroup Language
+ */
+
+class LanguageDsb extends Language {
+
+ # Convert from the nominative form of a noun to some other case
+ # Invoked with {{GRAMMAR:case|word}}
+
+ function convertGrammar( $word, $case ) {
+ global $wgGrammarForms;
+ if ( isset( $wgGrammarForms['hsb'][$case][$word] ) ) {
+ return $wgGrammarForms['hsb'][$case][$word];
+ }
+
+ switch ( $case ) {
+ case 'genitiw': # genitive
+ if ( $word == 'Wikipedija' ) {
+ $word = 'Wikipedije';
+ } elseif ( $word == 'Wikiknihi' ) {
+ $word = 'Wikiknih';
+ } elseif ( $word == 'Wikinowiny' ) {
+ $word = 'Wikinowin';
+ } elseif ( $word == 'Wikižórło' ) {
+ $word = 'Wikižórła';
+ } elseif ( $word == 'Wikicitaty' ) {
+ $word = 'Wikicitatow';
+ } elseif ( $word == 'Wikisłownik' ) {
+ $word = 'Wikisłownika';
+ }
+ break;
+ case 'datiw': # dativ
+ if ( $word == 'Wikipedija' ) {
+ $word = 'Wikipediji';
+ } elseif ( $word == 'Wikiknihi' ) {
+ $word = 'Wikikniham';
+ } elseif ( $word == 'Wikinowiny' ) {
+ $word = 'Wikinowinam';
+ } elseif ( $word == 'Wikižórło' ) {
+ $word = 'Wikižórłu';
+ } elseif ( $word == 'Wikicitaty' ) {
+ $word = 'Wikicitatam';
+ } elseif ( $word == 'Wikisłownik' ) {
+ $word = 'Wikisłownikej';
+ }
+ break;
+ case 'akuzativ': # akuzativ
+ if ( $word == 'Wikipedija' ) {
+ $word = 'Wikipediju';
+ } elseif ( $word == 'Wikiknihi' ) {
+ $word = 'Wikiknknihi';
+ } elseif ( $word == 'Wikinowiny' ) {
+ $word = 'Wikinowiny';
+ } elseif ( $word == 'Wikižórło' ) {
+ $word = 'Wikižórło';
+ } elseif ( $word == 'Wikicitaty' ) {
+ $word = 'Wikicitaty';
+ } elseif ( $word == 'Wikisłownik' ) {
+ $word = 'Wikisłownik';
+ }
+ break;
+ case 'instrumental': # instrumental
+ if ( $word == 'Wikipedija' ) {
+ $word = 'Wikipediju';
+ } elseif ( $word == 'Wikiknihi' ) {
+ $word = 'Wikiknihami';
+ } elseif ( $word == 'Wikinowiny' ) {
+ $word = 'Wikinowinami';
+ } elseif ( $word == 'Wikižórło' ) {
+ $word = 'Wikižórłom';
+ } elseif ( $word == 'Wikicitaty' ) {
+ $word = 'Wikicitatami';
+ } elseif ( $word == 'Wikisłownik' ) {
+ $word = 'Wikisłownikom';
+ } else {
+ $word = 'z ' . $word;
+ }
+ break;
+ case 'lokatiw': # lokatiw
+ if ( $word == 'Wikipedija' ) {
+ $word = 'Wikipediji';
+ } elseif ( $word == 'Wikiknihi' ) {
+ $word = 'Wikiknihach';
+ } elseif ( $word == 'Wikinowiny' ) {
+ $word = 'Wikinowinach';
+ } elseif ( $word == 'Wikižórło' ) {
+ $word = 'Wikižórłu';
+ } elseif ( $word == 'Wikicitaty' ) {
+ $word = 'Wikicitatach';
+ } elseif ( $word == 'Wikisłownik' ) {
+ $word = 'Wikisłowniku';
+ } else {
+ $word = 'wo ' . $word;
+ }
+ break;
+ }
+
+ return $word; # this will return the original value for 'nominatiw' (nominativ) and all undefined case values
+ }
+
+ function convertPlural( $count, $forms ) {
+ if ( !count($forms) ) { return ''; }
+ $forms = $this->preConvertPlural( $forms, 4 );
+
+ switch ( abs( $count ) % 100 ) {
+ case 1: return $forms[0]; // singular
+ case 2: return $forms[1]; // dual
+ case 3:
+ case 4: return $forms[2]; // plural
+ default: return $forms[3]; // pluralgen
+ }
+ }
+}
diff --git a/languages/classes/LanguageFi.php b/languages/classes/LanguageFi.php
index 0d02dfe7..7c1778cc 100644
--- a/languages/classes/LanguageFi.php
+++ b/languages/classes/LanguageFi.php
@@ -139,11 +139,7 @@ class LanguageFi extends Language {
$final .= ' ' . $item;
}
- if ( $forContent ) {
- return htmlspecialchars( trim( $final ) );
- } else {
- return '<span class="blockexpiry" title="' . htmlspecialchars($str). '">”' . trim( $final ) . '”</span>';
- }
+ return htmlspecialchars( trim( $final ) );
}
}
diff --git a/languages/classes/LanguageFr.php b/languages/classes/LanguageFr.php
index 87d28b22..dfd8af4b 100644
--- a/languages/classes/LanguageFr.php
+++ b/languages/classes/LanguageFr.php
@@ -9,8 +9,12 @@ class LanguageFr extends Language {
/**
* Use singular form for zero (see bug 7309)
*/
- function convertPlural( $count, $w1, $w2, $w3, $w4, $w5) {
- return $count <= '1' ? $w1 : $w2;
- }
+ function convertPlural( $count, $forms ) {
+ if ( !count($forms) ) { return ''; }
+ $forms = $this->preConvertPlural( $forms, 2 );
+
+ return ($count <= 1) ? $forms[0] : $forms[1];
+ }
+
}
diff --git a/languages/classes/LanguageHe.php b/languages/classes/LanguageHe.php
index ca760c1a..59b76333 100644
--- a/languages/classes/LanguageHe.php
+++ b/languages/classes/LanguageHe.php
@@ -57,13 +57,16 @@ class LanguageHe extends Language {
*
* @return string of the suited form of word
*/
- public function convertPlural( $count, $w1, $w2, $w3, $w4, $w5) {
+ function convertPlural( $count, $forms ) {
+ if ( !count($forms) ) { return ''; }
+ $forms = $this->preConvertPlural( $forms, 3 );
+
if ( $count == '1' ) {
- return $w1;
- } elseif ( $count == '2' && $w3 ) {
- return $w3;
+ return $forms[0];
+ } elseif ( $count == '2' && isset($forms[2]) ) {
+ return $forms[2];
} else {
- return $w2;
+ return $forms[1];
}
}
}
diff --git a/languages/classes/LanguageHr.php b/languages/classes/LanguageHr.php
index 5a875a71..4a64f879 100644
--- a/languages/classes/LanguageHr.php
+++ b/languages/classes/LanguageHr.php
@@ -5,17 +5,20 @@
*/
class LanguageHr extends Language {
- function convertPlural( $count, $wordform1, $wordform2, $wordform3, $w4, $w5) {
- $count = str_replace ('.', '', $count);
+
+ function convertPlural( $count, $forms ) {
+ if ( !count($forms) ) { return ''; }
+ $forms = $this->preConvertPlural( $forms, 3 );
+
if ($count > 10 && floor(($count % 100) / 10) == 1) {
- return $wordform3;
+ return $forms[2];
} else {
switch ($count % 10) {
- case 1: return $wordform1;
+ case 1: return $forms[0];
case 2:
case 3:
- case 4: return $wordform2;
- default: return $wordform3;
+ case 4: return $forms[1];
+ default: return $forms[2];
}
}
}
diff --git a/languages/classes/LanguageHsb.php b/languages/classes/LanguageHsb.php
index 7cbc17de..68df96be 100644
--- a/languages/classes/LanguageHsb.php
+++ b/languages/classes/LanguageHsb.php
@@ -100,17 +100,16 @@ class LanguageHsb extends Language {
return $word; # this will return the original value for 'nominatiw' (nominativ) and all undefined case values
}
- function convertPlural( $count, $singular, $dual, $plural, $pluralgen, $w5 ) {
+ function convertPlural( $count, $forms ) {
+ if ( !count($forms) ) { return ''; }
+ $forms = $this->preConvertPlural( $forms, 4 );
+
switch ( abs( $count ) % 100 ) {
- case 1:
- return $singular;
- case 2:
- return $dual;
+ case 1: return $forms[0]; // singular
+ case 2: return $forms[1]; // dual
case 3:
- case 4:
- return $plural;
- default:
- return $pluralgen;
+ case 4: return $forms[2]; // plural
+ default: return $forms[3]; // pluralgen
}
}
}
diff --git a/languages/classes/LanguageHy.php b/languages/classes/LanguageHy.php
index 34fb6c74..cc3492be 100644
--- a/languages/classes/LanguageHy.php
+++ b/languages/classes/LanguageHy.php
@@ -49,13 +49,11 @@ class LanguageHy extends Language {
return $word;
}
- function convertPlural( $count, $wordform1, $wordform2) {
- $count = str_replace (' ', '', $count);
- if (abs($count) <= 1) {
- return $wordform1;
- } else {
- return $wordform2;
- }
+ function convertPlural( $count, $forms ) {
+ if ( !count($forms) ) { return ''; }
+ $forms = $this->preConvertPlural( $forms, 2 );
+
+ return (abs($count) <= 1) ? $forms[0] : $forms[1];
}
/*
diff --git a/languages/classes/LanguageKaa.php b/languages/classes/LanguageKaa.php
new file mode 100644
index 00000000..4a451dcc
--- /dev/null
+++ b/languages/classes/LanguageKaa.php
@@ -0,0 +1,43 @@
+<?php
+/** Karakalpak (Qaraqalpaqsha)
+ *
+ *
+ * @addtogroup Language
+ */
+
+class LanguageKaa extends Language {
+
+ # Convert from the nominative form of a noun to some other case
+ # Invoked with {{GRAMMAR:case|word}}
+ /**
+ * Cases: genitive, dative, accusative, locative, ablative, comitative + possessive forms
+ */
+ function convertGrammar( $word, $case ) {
+ global $wgGrammarForms;
+ if ( isset( $wgGrammarForms['kaa'][$case][$word] ) ) {
+ return $wgGrammarForms['kaa'][$case][$word];
+ }
+ /* Full code of function convertGrammar() is in development. Updates coming soon. */
+ return $word;
+ }
+
+ function ucfirst ( $string ) {
+ if ( $string[0] == 'i' ) {
+ return 'İ' . substr( $string, 1 );
+ } else {
+ return parent::ucfirst( $string );
+ }
+ }
+
+ /**
+ * 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 $_;
+ }
+ }
+
+} \ No newline at end of file
diff --git a/languages/classes/LanguageKk.deps.php b/languages/classes/LanguageKk.deps.php
index 336692a2..2b96de96 100644
--- a/languages/classes/LanguageKk.deps.php
+++ b/languages/classes/LanguageKk.deps.php
@@ -7,6 +7,5 @@
require_once( dirname(__FILE__).'/../LanguageConverter.php' );
-require_once( dirname(__FILE__).'/LanguageKk_kz.php' );
-
+require_once( dirname(__FILE__).'/LanguageKk_cyrl.php' );
diff --git a/languages/classes/LanguageKk.php b/languages/classes/LanguageKk.php
index 68775b3a..cf90e96e 100644
--- a/languages/classes/LanguageKk.php
+++ b/languages/classes/LanguageKk.php
@@ -6,105 +6,196 @@
*/
require_once( dirname(__FILE__).'/../LanguageConverter.php' );
-require_once( dirname(__FILE__).'/LanguageKk_kz.php' );
+require_once( dirname(__FILE__).'/LanguageKk_cyrl.php' );
+
+define( 'KK_C_UC', 'АӘБВГҒДЕЁЖЗИЙКҚЛМНҢОӨПРСТУҰҮФХҺЦЧШЩЪЫІЬЭЮЯ' ); # Kazakh Cyrillic uppercase
+define( 'KK_C_LC', 'аәбвгғдеёжзийкқлмнңоөпрстуұүфхһцчшщъыіьэюя' ); # Kazakh Cyrillic lowercase
+define( 'KK_L_UC', 'AÄBCÇDEÉFGĞHIİÏJKLMNÑOÖPQRSŞTUÜVWXYÝZ' ); # Kazakh Latin uppercase
+define( 'KK_L_LC', 'aäbcçdeéfgğhıiïjklmnñoöpqrsştuüvwxyýz' ); # Kazakh Latin lowercase
+//define( 'KK_A', 'ٴابپتجحدرزسشعفقكلمنڭەوۇۋۆىيچھ' ); # Kazakh Arabic
+define( 'H_HAMZA', 'ٴ' ); # U+0674 ARABIC LETTER HIGH HAMZA
+//define( 'ZWNJ', '‌' ); # U+200C ZERO WIDTH NON-JOINER
class KkConverter extends LanguageConverter {
- var $mLatinToCyrillic = array(
- 'YA' => 'Я', 'Ya' => 'Я', 'ya' => 'я', 'YE' => 'Е', 'Ye' => 'У', 'ye' => 'е',
- 'YO' => 'Ё', 'Yo' => 'Ё', 'yo' => 'ё', 'YU' => 'Ю', 'Yu' => 'Ю', 'yu' => 'ю',
- 'YW' => 'Ю', 'Yw' => 'Ю', 'yw' => 'ю',
-
- 'bʺ' => 'бъ', 'dʺ' => 'дъ', 'fʺ' => 'фъ', 'gʺ' => 'гъ', 'kʺ' => 'къ', 'lʺ' => 'лъ',
- 'mʺ' => 'мъ', 'nʺ' => 'нъ', 'pʺ' => 'пъ', 'rʺ' => 'ръ', 'sʺ' => 'съ', 'tʺ' => 'тъ',
- 'vʺ' => 'въ', 'zʺ' => 'зъ',
- /* 'jʺ' => 'жъ', 'cʺ' => 'цъ', 'çʺ' => 'чъ', 'şʺ' => 'шъ', */
-
- 'ŞÇʹ'=> 'ЩЬ', 'Şçʹ'=> 'Щь', 'Bʺ' => 'БЪ', 'Dʺ' => 'ДЪ', 'Fʺ' => 'ФЪ', 'Gʺ' => 'ГЪ', 'Kʺ' => 'КЪ', 'Lʺ' => 'ЛЪ',
- 'Mʺ' => 'МЪ', 'Nʺ' => 'НЪ', 'Pʺ' => 'ПЪ', 'Rʺ' => 'РЪ', 'Sʺ' => 'СЪ', 'Tʺ' => 'ТЪ',
- 'Vʺ' => 'ВЪ', 'Zʺ' => 'ЗЪ',
- /* 'Jʺ' => 'ЖЪ', 'Cʺ' => 'ЦЪ', 'Çʺ' => 'ЧЪ', 'Şʺ' => 'ШЪ', */
-
- 'şçʹ'=> 'щь', 'bʹ' => 'бь', 'dʹ' => 'дь', 'fʹ' => 'фь', 'gʹ' => 'гь', 'kʹ' => 'кь', 'lʹ' => 'ль',
- 'mʹ' => 'мь', 'nʹ' => 'нь', 'pʹ' => 'пь', 'rʹ' => 'рь', 'sʹ' => 'сь', 'tʹ' => 'ть',
- 'vʹ' => 'вь', 'zʹ' => 'зь', 'jʹ' => 'жь', 'cʹ' => 'ць', 'çʹ' => 'чь', 'şʹ' => 'шь',
-
- 'Bʹ' => 'БЬ', 'Dʹ' => 'ДЬ', 'Fʹ' => 'ФЬ', 'Gʹ' => 'ГЬ', 'Kʹ' => 'КЬ', 'Lʹ' => 'ЛЬ',
- 'Mʹ' => 'МЬ', 'Nʹ' => 'НЬ', 'Pʹ' => 'ПЬ', 'Rʹ' => 'РЬ', 'Sʹ' => 'СЬ', 'Tʹ' => 'ТЬ',
- 'Vʹ' => 'ВЬ', 'Zʹ' => 'ЗЬ', 'Jʹ' => 'ЖЬ', 'Cʹ' => 'ЦЬ', 'Çʹ' => 'ЧЬ', 'Şʹ' => 'ШЬ',
-
- 'ŞÇ' => 'Щ', 'Şç' => 'Щ', 'şç' => 'щ',
-
- 'a' => 'а', 'ä' => 'ә', 'b' => 'б', 'c' => 'ц', 'ç' => 'ч', 'd' => 'д', 'e' => 'е',
- 'é' => 'э', 'f' => 'ф', 'g' => 'г', 'ğ' => 'ғ', 'h' => 'һ', 'i' => 'і', 'ı' => 'ы',
- 'ï' => 'и', 'j' => 'ж', 'k' => 'к', 'l' => 'л', 'm' => 'м', 'n' => 'н', 'ñ' => 'ң',
- 'o' => 'о', 'ö' => 'ө', 'p' => 'п', 'q' => 'қ', 'r' => 'р', 's' => 'с', 'ş' => 'ш',
- 't' => 'т', 'u' => 'ұ', 'ü' => 'ү', 'v' => 'в', 'w' => 'у', 'x' => 'х', 'ý' => 'й',
- 'z' => 'з',
-
- 'A' => 'А', 'Ä' => 'Ә', 'B' => 'Б', 'C' => 'Ц', 'Ç' => 'Ч', 'D' => 'Д', 'E' => 'Е',
- 'É' => 'Э', 'F' => 'Ф', 'G' => 'Г', 'Ğ' => 'Ғ', 'H' => 'Һ', 'İ' => 'І', 'I' => 'Ы',
- 'Ï' => 'И', 'J' => 'Ж', 'K' => 'К', 'L' => 'Л', 'M' => 'М', 'N' => 'Н', 'Ñ' => 'Ң',
- 'O' => 'О', 'Ö' => 'Ө', 'P' => 'П', 'Q' => 'Қ', 'R' => 'Р', 'S' => 'С', 'Ş' => 'Ш',
- 'T' => 'Т', 'U' => 'Ұ', 'Ü' => 'Ү', 'V' => 'В', 'W' => 'У', 'Ý' => 'Й', 'X' => 'Х',
- 'Z' => 'З'
- );
-
- var $mCyrillicToLatin = array(
- 'а' => 'a', 'ә' => 'ä', 'б' => 'b', 'в' => 'v', 'г' => 'g', 'ғ' => 'ğ',
- 'д' => 'd', 'е' => 'e', 'ё' => 'yo', 'ж' => 'j', 'з' => 'z', 'и' => 'ï',
- 'й' => 'ý', 'к' => 'k', 'қ' => 'q', 'л' => 'l', 'м' => 'm', 'н' => 'n',
- 'ң' => 'ñ', 'о' => 'o', 'ө' => 'ö', 'п' => 'p', 'р' => 'r', 'с' => 's',
- 'т' => 't', 'у' => 'w', 'ұ' => 'u', 'ү' => 'ü', 'ф' => 'f', 'х' => 'x',
- 'һ' => 'h', 'ц' => 'c', 'ч' => 'ç', 'ш' => 'ş', 'щ' => 'şç', 'ъ' => 'ʺ',
- 'ы' => 'ı', 'ь' => 'ʹ', 'і' => 'i', 'э' => 'é', 'ю' => 'yw', 'я' => 'ya',
-
- 'А' => 'A', 'Ә' => 'Ä', 'Б' => 'B', 'В' => 'V', 'Г' => 'G', 'Ғ' => 'Ğ',
- 'Д' => 'D', 'Е' => 'E', 'Ё' => 'Yo', 'Ж' => 'J', 'З' => 'Z', 'И' => 'Ï',
- 'Й' => 'Ý', 'К' => 'K', 'Қ' => 'Q', 'Л' => 'L', 'М' => 'M', 'Н' => 'N',
- 'Ң' => 'Ñ', 'О' => 'O', 'Ө' => 'Ö', 'П' => 'P', 'Р' => 'R', 'С' => 'S',
- 'Т' => 'T', 'У' => 'W', 'Ұ' => 'U', 'Ү' => 'Ü', 'Ф' => 'F', 'Х' => 'X',
- 'Һ' => 'H', 'Ц' => 'C', 'Ч' => 'Ç', 'Ш' => 'Ş', 'Щ' => 'Şç', 'Ъ' => 'ʺ',
- 'Ы' => 'I', 'Ь' => 'ʹ', 'І' => 'İ', 'Э' => 'É', 'Ю' => 'Yw', 'Я' => 'Ya'
- );
-
- var $mCyrillicToArabic = array(
- 'ла' => 'لا', 'лА' => 'لا', 'ЛА' => 'لا', 'Ла' => 'لا',
-
- 'а' => 'ا', 'ә' => 'ٵ', 'б' => 'ب', 'в' => 'ۆ', 'г' => 'گ', 'ғ' => 'ع',
- 'д' => 'د', 'е' => 'ە', 'ё' => 'يو', 'ж' => 'ج', 'з' => 'ز', 'и' => 'ي',
- 'й' => 'ي', 'к' => 'ك', 'қ' => 'ق', 'л' => 'ل', 'м' => 'م', 'н' => 'ن',
- 'ң' => 'ڭ', 'о' => 'و', 'ө' => 'ٶ', 'п' => 'پ', 'р' => 'ر', 'с' => 'س',
- 'т' => 'ت', 'у' => 'ۋ', 'ұ' => 'ۇ', 'ү' => 'ٷ', 'ф' => 'ف', 'х' => 'ح',
- 'һ' => 'ھ', 'ц' => 'تس', 'ч' => 'چ', 'ш' => 'ش', 'щ' => 'شش', 'ъ' => 'ي',
- 'ы' => 'ى', 'ь' => 'ي', 'і' => 'ٸ', 'э' => 'ە', 'ю' => 'يۋ', 'я' => 'يا',
-
- 'А' => 'ا', 'Ә' => 'ٵ', 'Б' => 'ب', 'В' => 'ۆ', 'Г' => 'گ', 'Ғ' => 'ع',
- 'Д' => 'د', 'Е' => 'ە', 'Ё' => 'يو', 'Ж' => 'ج', 'З' => 'ز', 'И' => 'ي',
- 'Й' => 'ي', 'К' => 'ك', 'Қ' => 'ق', 'Л' => 'ل', 'М' => 'م', 'Н' => 'ن',
- 'Ң' => 'ڭ', 'О' => 'و', 'Ө' => 'ٶ', 'П' => 'پ', 'Р' => 'ر', 'С' => 'س',
- 'Т' => 'ت', 'У' => 'ۋ', 'Ұ' => 'ۇ', 'Ү' => 'ٷ', 'Ф' => 'ف', 'Х' => 'ح',
- 'Һ' => 'ھ', 'Ц' => 'تس', 'Ч' => 'چ', 'Ш' => 'ش', 'Щ' => 'شش', 'Ъ' => 'ي',
- 'Ы' => 'ى', 'Ь' => 'ي', 'І' => 'ٸ', 'Э' => 'ە', 'Ю' => 'يۋ', 'Я' => 'يا',
-
- '?' => '؟',
- '%' => '٪',
- ',' => '،',
- ';' => '؛'
- );
+
+ function __construct($langobj, $maincode,
+ $variants=array(),
+ $variantfallbacks=array(),
+ $markup=array(),
+ $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.
+ $this->loadRegs();
+ }
function loadDefaultTables() {
+ // require( dirname(__FILE__)."/../../includes/KkConversion.php" );
+ // Placeholder for future implementing. Remove variables declarations
+ // after generating KkConversion.php
+ $kk2Cyrl = array();
+ $kk2Latn = array();
+ $kk2Arab = array();
+ $kk2KZ = array();
+ $kk2TR = array();
+ $kk2CN = array();
+
$this->mTables = array(
- 'kk-kz' => new ReplacementArray( $this->mLatinToCyrillic ),
- 'kk-tr' => new ReplacementArray( $this->mCyrillicToLatin ),
- 'kk-cn' => new ReplacementArray( $this->mCyrillicToArabic ),
- 'kk' => new ReplacementArray()
+ 'kk-cyrl' => new ReplacementArray( $kk2Cyrl ),
+ 'kk-latn' => new ReplacementArray( $kk2Latn ),
+ 'kk-arab' => new ReplacementArray( $kk2Arab ),
+ 'kk-kz' => new ReplacementArray( array_merge($kk2Cyrl, $kk2KZ) ),
+ 'kk-tr' => new ReplacementArray( array_merge($kk2Latn, $kk2TR) ),
+ 'kk-cn' => new ReplacementArray( array_merge($kk2Arab, $kk2CN) ),
+ 'kk' => new ReplacementArray()
);
}
+ function postLoadTables() {
+ $this->mTables['kk-kz']->merge( $this->mTables['kk-cyrl'] );
+ $this->mTables['kk-tr']->merge( $this->mTables['kk-latn'] );
+ $this->mTables['kk-cn']->merge( $this->mTables['kk-arab'] );
+ }
+
+ function loadRegs() {
+
+ $this->mCyrl2Latn = array(
+ ## Punctuation
+ '/№/u' => 'No.',
+ ## Е after vowels
+ '/([АӘЕЁИОӨҰҮЭЮЯЪЬ])Е/u' => '$1YE',
+ '/([АӘЕЁИОӨҰҮЭЮЯЪЬ])е/ui' => '$1ye',
+ ## leading ЁЮЯЩ
+ '/^Ё(['.KK_C_UC.']|$)/u' => 'YO$1', '/^Ё(['.KK_C_LC.']|$)/u' => 'Yo$1',
+ '/^Ю(['.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',
+ '/Ю/u' => 'YU', '/ю/u' => 'yu',
+ '/Я/u' => 'YA', '/я/u' => 'ya',
+ '/Щ/u' => 'ŞÇ', '/щ/u' => 'şç',
+ ## soft and hard signs
+ '/[ъЪ]/u' => 'ʺ', '/[ьЬ]/u' => 'ʹ',
+ ## other characters
+ '/А/u' => 'A', '/а/u' => 'a', '/Ә/u' => 'Ä', '/ә/u' => 'ä',
+ '/Б/u' => 'B', '/б/u' => 'b', '/В/u' => 'V', '/в/u' => 'v',
+ '/Г/u' => 'G', '/г/u' => 'g', '/Ғ/u' => 'Ğ', '/ғ/u' => 'ğ',
+ '/Д/u' => 'D', '/д/u' => 'd', '/Е/u' => 'E', '/е/u' => 'e',
+ '/Ж/u' => 'J', '/ж/u' => 'j', '/З/u' => 'Z', '/з/u' => 'z',
+ '/И/u' => 'Ï', '/и/u' => 'ï', '/Й/u' => 'Ý', '/й/u' => 'ý',
+ '/К/u' => 'K', '/к/u' => 'k', '/Қ/u' => 'Q', '/қ/u' => 'q',
+ '/Л/u' => 'L', '/л/u' => 'l', '/М/u' => 'M', '/м/u' => 'm',
+ '/Н/u' => 'N', '/н/u' => 'n', '/Ң/u' => 'Ñ', '/ң/u' => 'ñ',
+ '/О/u' => 'O', '/о/u' => 'o', '/Ө/u' => 'Ö', '/ө/u' => 'ö',
+ '/П/u' => 'P', '/п/u' => 'p', '/Р/u' => 'R', '/р/u' => 'r',
+ '/С/u' => 'S', '/с/u' => 's', '/Т/u' => 'T', '/т/u' => 't',
+ '/У/u' => 'W', '/у/u' => 'w', '/Ұ/u' => 'U', '/ұ/u' => 'u',
+ '/Ү/u' => 'Ü', '/ү/u' => 'ü', '/Ф/u' => 'F', '/ф/u' => 'f',
+ '/Х/u' => 'X', '/х/u' => 'x', '/Һ/u' => 'H', '/һ/u' => 'h',
+ '/Ц/u' => 'C', '/ц/u' => 'c', '/Ч/u' => 'Ç', '/ч/u' => 'ç',
+ '/Ш/u' => 'Ş', '/ш/u' => 'ş', '/Ы/u' => 'I', '/ы/u' => 'ı',
+ '/І/u' => 'İ', '/і/u' => 'i', '/Э/u' => 'É', '/э/u' => 'é',
+ );
+
+ $this->mLatn2Cyrl = array(
+ ## Punctuation
+ '/#|No\./' => '№',
+ ## Şç
+ '/ŞÇʹ/u'=> 'ЩЬ', '/Şçʹ/u'=> 'Щь', '/Şçʹ/u'=> 'Щь',
+ '/Ş[Çç]/u' => 'Щ', '/şç/u' => 'щ',
+ ## soft and hard signs
+ '/(['.KK_L_UC.'])ʺ(['.KK_L_UC.'])/u' => '$1Ъ$2',
+ '/ʺ(['.KK_L_LC.'])/u' => 'ъ$1',
+ '/(['.KK_L_UC.'])ʹ(['.KK_L_UC.'])/u' => '$1Ь$2',
+ '/ʹ(['.KK_L_LC.'])/u' => 'ь$1',
+ '/ʺ/u' => 'ъ',
+ '/ʹ/u' => 'ь',
+ ## Ye Yo Yu Ya.
+ '/Y[Ee]/u' => 'Е', '/ye/u' => 'е',
+ '/Y[Oo]/u' => 'Ё', '/yo/u' => 'ё',
+ '/Y[UWuw]/u' => 'Ю', '/y[uw]/u' => 'ю',
+ '/Y[Aa]/u' => 'Я', '/ya/u' => 'я',
+ ## other characters
+ '/A/u' => 'А', '/a/u' => 'а', '/Ä/u' => 'Ә', '/ä/u' => 'ә',
+ '/B/u' => 'Б', '/b/u' => 'б', '/C/u' => 'Ц', '/c/u' => 'ц',
+ '/Ç/u' => 'Ч', '/ç/u' => 'ч', '/D/u' => 'Д', '/d/u' => 'д',
+ '/E/u' => 'Е', '/e/u' => 'е', '/É/u' => 'Э', '/é/u' => 'э',
+ '/F/u' => 'Ф', '/f/u' => 'ф', '/G/u' => 'Г', '/g/u' => 'г',
+ '/Ğ/u' => 'Ғ', '/ğ/u' => 'ғ', '/H/u' => 'Һ', '/h/u' => 'һ',
+ '/I/u' => 'Ы', '/ı/u' => 'ы', '/İ/u' => 'І', '/i/u' => 'і',
+ '/Ï/u' => 'И', '/ï/u' => 'и', '/J/u' => 'Ж', '/j/u' => 'ж',
+ '/K/u' => 'К', '/k/u' => 'к', '/L/u' => 'Л', '/l/u' => 'л',
+ '/M/u' => 'М', '/m/u' => 'м', '/N/u' => 'Н', '/n/u' => 'н',
+ '/Ñ/u' => 'Ң', '/ñ/u' => 'ң', '/O/u' => 'О', '/o/u' => 'о',
+ '/Ö/u' => 'Ө', '/ö/u' => 'ө', '/P/u' => 'П', '/p/u' => 'п',
+ '/Q/u' => 'Қ', '/q/u' => 'қ', '/R/u' => 'Р', '/r/u' => 'р',
+ '/S/u' => 'С', '/s/u' => 'с', '/Ş/u' => 'Ш', '/ş/u' => 'ш',
+ '/T/u' => 'Т', '/t/u' => 'т', '/U/u' => 'Ұ', '/u/u' => 'ұ',
+ '/Ü/u' => 'Ү', '/ü/u' => 'ү', '/V/u' => 'В', '/v/u' => 'в',
+ '/W/u' => 'У', '/w/u' => 'у', '/Ý/u' => 'Й', '/ý/u' => 'й',
+ '/X/u' => 'Х', '/x/u' => 'х', '/Z/u' => 'З', '/z/u' => 'з',
+ );
+
+ $this->mCyLa2Arab = array(
+ ## Punctuation -> Arabic
+ '/#|№|No\./u' => '؀', # &#x0600;
+ '/\,/' => '،', # &#x060C;
+ '/;/' => '؛', # &#x061B;
+ '/\?/' => '؟', # &#x061F;
+ '/%/' => '٪', # &#x066A;
+ '/\*/' => '٭', # &#x066D;
+ ## Digits -> Arabic
+ '/0/' => '۰', # &#x06F0;
+ '/1/' => '۱', # &#x06F1;
+ '/2/' => '۲', # &#x06F2;
+ '/3/' => '۳', # &#x06F3;
+ '/4/' => '۴', # &#x06F4;
+ '/5/' => '۵', # &#x06F5;
+ '/6/' => '۶', # &#x06F6;
+ '/7/' => '۷', # &#x06F7;
+ '/8/' => '۸', # &#x06F8;
+ '/9/' => '۹', # &#x06F9;
+ ## Cyrillic -> Arabic
+ '/Аллаһ/ui' => 'ﷲ',
+ '/([АӘЕЁИОӨҰҮЭЮЯЪЬ])е/ui' => '$1يە',
+ '/[еэ]/ui' => 'ە', '/[ъь]/ui' => '',
+ '/[аә]/ui' => 'ا', '/[оө]/ui' => 'و', '/[ұү]/ui' => 'ۇ', '/[ыі]/ui' => 'ى',
+ '/[и]/ui' => 'ىي', '/ё/ui' => 'يو', '/ю/ui' => 'يۋ', '/я/ui' => 'يا', '/[й]/ui' => 'ي',
+ '/ц/ui' => 'تس', '/щ/ui' => 'شش',
+ '/һ/ui' => 'ح', '/ч/ui' => 'تش',
+ #'/һ/ui' => 'ھ', '/ч/ui' => 'چ',
+ '/б/ui' => 'ب', '/в/ui' => 'ۆ', '/г/ui' => 'گ', '/ғ/ui' => 'ع',
+ '/д/ui' => 'د', '/ж/ui' => 'ج', '/з/ui' => 'ز', '/к/ui' => 'ك',
+ '/қ/ui' => 'ق', '/л/ui' => 'ل', '/м/ui' => 'م', '/н/ui' => 'ن',
+ '/ң/ui' => 'ڭ', '/п/ui' => 'پ', '/р/ui' => 'ر', '/с/ui' => 'س',
+ '/т/ui' => 'ت', '/у/ui' => 'ۋ', '/ф/ui' => 'ف', '/х/ui' => 'ح',
+ '/ш/ui' => 'ش',
+ ## Latin -> Arabic // commented for now...
+ /*'/Allah/ui' => 'ﷲ',
+ '/[eé]/ui' => 'ە', '/[yý]/ui' => 'ي', '/[ʺʹ]/ui' => '',
+ '/[aä]/ui' => 'ا', '/[oö]/ui' => 'و', '/[uü]/ui' => 'ۇ',
+ '/[ï]/ui' => 'ىي', '/[ıIiİ]/u' => 'ى',
+ '/c/ui' => 'تس',
+ '/ç/ui' => 'تش', '/h/ui' => 'ح',
+ #'/ç/ui' => 'چ', '/h/ui' => 'ھ',
+ '/b/ui' => 'ب','/d/ui' => 'د',
+ '/f/ui' => 'ف', '/g/ui' => 'گ', '/ğ/ui' => 'ع',
+ '/j/ui' => 'ج', '/k/ui' => 'ك', '/l/ui' => 'ل', '/m/ui' => 'م',
+ '/n/ui' => 'ن', '/ñ/ui' => 'ڭ', '/p/ui' => 'پ', '/q/ui' => 'ق',
+ '/r/ui' => 'ر', '/s/ui' => 'س', '/ş/ui' => 'ش', '/t/ui' => 'ت',
+ '/v/ui' => 'ۆ', '/w/ui' => 'ۋ', '/x/ui' => 'ح', '/z/ui' => 'ز',*/
+ );
+
+ }
+
/* rules should be defined as -{ekavian | iyekavian-} -or-
-{code:text | code:text | ...}-
update: delete all rule parsing because it's not used
- currently, and just produces a couple of bugs
+ currently, and just produces a couple of bugs
*/
function parseManualRule($rule, $flags=array()) {
if(in_array('T',$flags)){
@@ -131,9 +222,9 @@ class KkConverter extends LanguageConverter {
/*
* A function wrapper:
- * - if there is no selected variant, leave the link
- * names as they were
- * - do not try to find variants for usernames
+ * - if there is no selected variant, leave the link
+ * names as they were
+ * - do not try to find variants for usernames
*/
function findVariantLink( &$link, &$nt ) {
// check for user namespace
@@ -150,16 +241,6 @@ class KkConverter extends LanguageConverter {
}
/*
- * We want our external link captions to be converted in variants,
- * so we return the original text instead -{$text}-, except for URLs
- */
- function markNoConversion($text, $noParse=false) {
- if($noParse || preg_match("/^https?:\/\/|ftp:\/\/|irc:\/\//",$text))
- return parent::markNoConversion($text);
- return $text;
- }
-
- /*
* An ugly function wrapper for parsing Image titles
* (to prevent image name conversion)
*/
@@ -173,71 +254,204 @@ class KkConverter extends LanguageConverter {
}
/**
- * It translates text into variant, specials:
- * - ommiting roman numbers
+ * It translates text into variant
*/
- function translate($text, $toVariant){
- $breaks = '[^\w\x80-\xff]';
-
- // regexp for roman numbers
- $roman = 'M{0,4}(CM|CD|D?C{0,3})(XC|XL|L?X{0,3})(IX|IV|V?I{0,3})';
-
- $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 ) ) );
+ function translate( $text, $toVariant ){
+ global $wgContLanguageCode;
+ $text = parent::translate( $text, $toVariant );
+
+ $letters = '';
+ switch( $toVariant ) {
+ case 'kk-cyrl':
+ case 'kk-kz':
+ $letters = KK_L_UC . KK_L_LC . 'ʺʹ#0123456789';
+ $wgContLanguageCode = 'kk';
+ break;
+ case 'kk-latn':
+ case 'kk-tr':
+ $letters = KK_C_UC . KK_C_LC . '№0123456789';
+ $wgContLanguageCode = 'kk-Latn';
+ break;
+ case 'kk-arab':
+ case 'kk-cn':
+ $letters = KK_C_UC.KK_C_LC./*KK_L_UC.KK_L_LC.'ʺʹ'.*/',;\?%\*№0123456789';
+ $wgContLanguageCode = 'kk-Arab';
+ break;
+ default:
+ $wgContLanguageCode = 'kk';
+ return $text;
}
- $ret = $this->mTables[$toVariant]->replace( $m[0] );
- $mstart = $m[1]+strlen($m[0]);
- foreach($matches as $m) {
- $ret .= substr($text, $mstart, $m[1]-$mstart);
- $ret .= parent::translate($m[0], $toVariant);
+ // disable conversion variables like $1, $2...
+ $varsfix = '\$[0-9]';
+
+ $matches = preg_split( '/' . $varsfix . '[^' . $letters . ']+/u', $text, -1, PREG_SPLIT_OFFSET_CAPTURE);
+ $mstart = 0;
+ $ret = '';
+ foreach( $matches as $m ) {
+ $ret .= substr( $text, $mstart, $m[1]-$mstart );
+ $ret .= $this->regsConverter( $m[0], $toVariant );
$mstart = $m[1] + strlen($m[0]);
}
-
return $ret;
}
+ function regsConverter( $text, $toVariant ) {
+ if ($text == '') return $text;
+
+ $pat = array();
+ $rep = array();
+ switch( $toVariant ) {
+ case 'kk-arab':
+ case 'kk-cn':
+ $letters = KK_C_LC.KK_C_UC/*.KK_L_LC.KK_L_UC*/;
+ $front = 'әөүіӘӨҮІ'/*.'äöüiÄÖÜİ'*/;
+ $excludes = 'еэгғкқЕЭГҒКҚ'/*.'eégğkqEÉGĞKQ'*/;
+ // split text to words
+ $matches = preg_split( '/[\b\s\-\.:]+/', $text, -1, PREG_SPLIT_OFFSET_CAPTURE);
+ $mstart = 0;
+ $ret = '';
+ foreach( $matches as $m ) {
+ $ret .= substr( $text, $mstart, $m[1] - $mstart );
+ // is matched the word to front vowels?
+ // exclude a words matched to е, э, г, к, к, қ,
+ // them should be without hamza
+ if ( preg_match('/['.$front.']/u', $m[0]) && !preg_match('/['.$excludes.']/u', $m[0]) ) {
+ $ret .= preg_replace('/['.$letters.']+/u', H_HAMZA.'$0', $m[0]);
+ } else {
+ $ret .= $m[0];
+ }
+ $mstart = $m[1] + strlen($m[0]);
+ }
+ $text =& $ret;
+ foreach( $this->mCyLa2Arab as $pat => $rep ) {
+ $text = preg_replace( $pat, $rep, $text );
+ }
+ return $text;
+ break;
+ case 'kk-latn':
+ case 'kk-tr':
+ foreach( $this->mCyrl2Latn as $pat => $rep ) {
+ $text = preg_replace( $pat, $rep, $text );
+ }
+ return $text;
+ break;
+ case 'kk-cyrl':
+ case 'kk-kz':
+ foreach( $this->mLatn2Cyrl as $pat => $rep ) {
+ $text = preg_replace( $pat, $rep, $text );
+ }
+ return $text;
+ break;
+ default:
+ return $text;
+ }
+ }
+
+ /*
+ * We want our external link captions to be converted in variants,
+ * so we return the original text instead -{$text}-, except for URLs
+ */
+ function markNoConversion( $text, $noParse=false ) {
+ if( $noParse || preg_match( "/^https?:\/\/|ftp:\/\/|irc:\/\//", $text ) )
+ return parent::markNoConversion( $text );
+ return $text;
+ }
+
+ function convertCategoryKey( $key ) {
+ return $this->autoConvert( $key, 'kk' );
+ }
+
}
-class LanguageKk extends LanguageKk_kz {
+/* 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 LanguageKk extends LanguageKk_cyrl {
function __construct() {
global $wgHooks;
parent::__construct();
- $variants = array( 'kk', 'kk-kz', 'kk-tr', 'kk-cn' );
+ $variants = array( 'kk', 'kk-cyrl', 'kk-latn', 'kk-arab', 'kk-kz', 'kk-tr', 'kk-cn' );
$variantfallbacks = array(
- 'kk' => 'kk-kz',
- 'kk-kz' => 'kk',
- 'kk-tr' => 'kk',
- 'kk-cn' => 'kk'
+ 'kk' => 'kk-kz',
+ 'kk-cyrl' => 'kk',
+ 'kk-latn' => 'kk',
+ 'kk-arab' => 'kk',
+ 'kk-kz' => 'kk-cyrl',
+ 'kk-tr' => 'kk-latn',
+ 'kk-cn' => 'kk-arab'
);
$this->mConverter = new KkConverter( $this, 'kk', $variants, $variantfallbacks );
+
$wgHooks['ArticleSaveComplete'][] = $this->mConverter;
}
+ /**
+ * Work around for right-to-left direction support in kk-arab and kk-cn
+ *
+ * @return bool
+ */
+ function isRTL() {
+ $variant = $this->getPreferredVariant();
+ if ( $variant == 'kk-arab' || $variant == 'kk-cn' ) {
+ return true;
+ } else {
+ return parent::isRTL();
+ }
+ }
+
+ /*
+ * It fixes issue with ucfirst for transforming 'i' to 'İ'
+ *
+ */
+ function ucfirst ( $string ) {
+ $variant = $this->getPreferredVariant();
+ if ( ($variant == 'kk-latn' || $variant == 'kk-tr') && $string[0] == 'i' ) {
+ $string = 'İ' . substr( $string, 1 );
+ } else {
+ $string = parent::ucfirst( $string );
+ }
+ return $string;
+ }
+
+ /*
+ * It fixes issue with lcfirst for transforming 'I' to 'ı'
+ *
+ */
+ function lcfirst ( $string ) {
+ $variant = $this->getPreferredVariant();
+ if ( ($variant == 'kk-latn' || $variant == 'kk-tr') && $string[0] == 'I' ) {
+ $string = 'ı' . substr( $string, 1 );
+ } else {
+ $string = parent::lcfirst( $string );
+ }
+ return $string;
+ }
+
function convertGrammar( $word, $case ) {
- $fname="LanguageKk::convertGrammar";
- wfProfileIn( $fname );
-
- //always convert to kk-kz before convertGrammar
- $w1 = $word;
- $word = $this->mConverter->autoConvert( $word, 'kk-kz' );
- $w2 = $word;
- $word = parent::convertGrammar( $word, $case );
- //restore encoding
- if( $w1 != $w2 ) {
- $word = $this->mConverter->translate( $word, 'kk-tr' );
+ wfProfileIn( __METHOD__ );
+
+ $variant = $this->getPreferredVariant();
+ switch ( $variant ) {
+ case 'kk-arab':
+ case 'kk-cn':
+ $word = parent::convertGrammarKk_arab( $word, $case );
+ break;
+ case 'kk-latn':
+ case 'kk-tr':
+ $word = parent::convertGrammarKk_latn( $word, $case );
+ break;
+ case 'kk-cyrl':
+ case 'kk-kz':
+ case 'kk':
+ default:
+ $word = parent::convertGrammarKk_cyrl( $word, $case );
}
- wfProfileOut( $fname );
+
+ wfProfileOut( __METHOD__ );
return $word;
}
}
-
-
diff --git a/languages/classes/LanguageKk_cyrl.php b/languages/classes/LanguageKk_cyrl.php
new file mode 100644
index 00000000..a7f07573
--- /dev/null
+++ b/languages/classes/LanguageKk_cyrl.php
@@ -0,0 +1,722 @@
+<?php
+/** Kazakh (Қазақша)
+ *
+ *
+ * @addtogroup Language
+ */
+
+
+class LanguageKk_cyrl extends Language {
+
+ # Convert from the nominative form of a noun to some other case
+ # Invoked with {{GRAMMAR:case|word}}
+ /**
+ * Cases: genitive, dative, accusative, locative, ablative, comitative + possessive forms
+ */
+
+ function convertGrammarKk_cyrl( $word, $case ) {
+ global $wgGrammarForms;
+ if ( isset( $wgGrammarForms['kk-kz'][$case][$word] ) ) {
+ return $wgGrammarForms['kk-kz'][$case][$word];
+ }
+ if ( isset( $wgGrammarForms['kk-cyrl'][$case][$word] ) ) {
+ return $wgGrammarForms['kk-cyrl'][$case][$word];
+ }
+ // Set up some constants...
+ // Vowels in last syllable
+ $frontVowels = array( "е", "ө", "ү", "і", "ә", "э", "я", "ё", "и" );
+ $backVowels = array( "а", "о", "ұ", "ы" );
+ $allVowels = array( "е", "ө", "ү", "і", "ә", "э", "а", "о", "ұ", "ы", "я", "ё", "и" );
+ // Preceding letters
+ $Nasals = array( "м", "н", "ң" );
+ $Sonants = array( "и", "й", "л", "р", "у", "ю");
+ $Consonants = array( "п", "ф", "к", "қ", "т", "ш", "с", "х", "ц", "ч", "щ", "б", "в", "г", "д" );
+ $Sibilants = array( "ж", "з" );
+ $Sonorants = array( "и", "й", "л", "р", "у", "ю", "м", "н", "ң", "ж", "з");
+
+ // Possessives
+ $firstPerson = array( "м", "ң" ); // 1st singular, 2nd unformal
+ $secondPerson = array( "з" ); // 1st plural, 2nd formal
+ $thirdPerson = array( "ы", "і" ); // 3rd
+
+ $lastLetter = self::lastLetter( $word, $allVowels );
+ $wordEnding =& $lastLetter[0];
+ $wordLastVowel =& $lastLetter[1];
+
+ // Now convert the word
+ switch ( $case ) {
+ case "dc1":
+ case "genitive": #ilik
+ if ( in_array( $wordEnding, $Consonants ) ) {
+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
+ $word = $word . "тің";
+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
+ $word = $word . "тың";
+ }
+ } elseif ( in_array( $wordEnding, $allVowels ) || in_array( $wordEnding, $Nasals ) ) {
+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
+ $word = $word . "нің";
+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
+ $word = $word . "ның";
+ }
+ } elseif ( in_array( $wordEnding, $Sonants ) || in_array( $wordEnding, $Sibilants )) {
+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
+ $word = $word . "дің";
+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
+ $word = $word . "дың";
+ }
+ }
+ break;
+ case "dc2":
+ case "dative": #barıs
+ if ( in_array( $wordEnding, $Consonants ) ) {
+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
+ $word = $word . "ке";
+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
+ $word = $word . "қа";
+ }
+ } elseif ( in_array( $wordEnding, $allVowels ) || in_array( $wordEnding, $Sonorants ) ) {
+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
+ $word = $word . "ге";
+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
+ $word = $word . "ға";
+ }
+ }
+ break;
+ case "dc21":
+ case "possessive dative": #täweldık + barıs
+ if ( in_array( $wordEnding, $firstPerson ) ) {
+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
+ $word = $word . "е";
+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
+ $word = $word . "а";
+ }
+ } elseif ( in_array( $wordEnding, $secondPerson ) ) {
+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
+ $word = $word . "ге";
+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
+ $word = $word . "ға";
+ }
+ } elseif ( in_array( $wordEnding, $thirdPerson ) ) {
+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
+ $word = $word . "не";
+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
+ $word = $word . "на";
+ }
+ }
+ break;
+ case "dc3":
+ case "accusative": #tabıs
+ if ( in_array( $wordEnding, $Consonants ) ) {
+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
+ $word = $word . "ті";
+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
+ $word = $word . "ты";
+ }
+ } elseif ( in_array( $wordEnding, $allVowels ) ) {
+ if ( in_array($wordLastVowel, $frontVowels ) ) {
+ $word = $word . "ні";
+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
+ $word = $word . "ны";
+ }
+ } elseif ( in_array( $wordEnding, $Sonorants) ) {
+ if ( in_array( $wordLastVowel, $frontVowels) ) {
+ $word = $word . "ді";
+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
+ $word = $word . "ды";
+ }
+ }
+ break;
+ case "dc31":
+ case "possessive accusative": #täweldık + tabıs
+ if ( in_array( $wordEnding, $firstPerson ) || in_array( $wordEnding, $secondPerson ) ) {
+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
+ $word = $word . "ді";
+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
+ $word = $word . "ды";
+ }
+ } elseif ( in_array( $wordEnding, $thirdPerson ) ) {
+ $word = $word . "н";
+ }
+ break;
+ case "dc4":
+ case "locative": #jatıs
+ if ( in_array( $wordEnding, $Consonants ) ) {
+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
+ $word = $word . "те";
+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
+ $word = $word . "та";
+ }
+ } elseif ( in_array( $wordEnding, $allVowels ) || in_array( $wordEnding, $Sonorants ) ) {
+ if ( in_array( $wordLastVowel, $frontVowels) ) {
+ $word = $word . "де";
+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
+ $word = $word . "да";
+ }
+ }
+ break;
+ case "dc41":
+ case "possessive locative": #täweldık + jatıs
+ if ( in_array( $wordEnding, $firstPerson ) || in_array( $wordEnding, $secondPerson ) ) {
+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
+ $word = $word . "де";
+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
+ $word = $word . "да";
+ }
+ } elseif ( in_array( $wordEnding, $thirdPerson ) ) {
+ if ( in_array( $wordLastVowel, $frontVowels) ) {
+ $word = $word . "нде";
+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
+ $word = $word . "нда";
+ }
+ }
+ break;
+ case "dc5":
+ case "ablative": #şığıs
+ if ( in_array( $wordEnding, $Consonants ) ) {
+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
+ $word = $word . "тен";
+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
+ $word = $word . "тан";
+ }
+ } elseif ( in_array($wordEnding, $allVowels ) || in_array($wordEnding, $Sonants ) || in_array($wordEnding, $Sibilants ) ) {
+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
+ $word = $word . "ден";
+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
+ $word = $word . "дан";
+ }
+ } elseif ( in_array($wordEnding, $Nasals ) ) {
+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
+ $word = $word . "нен";
+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
+ $word = $word . "нан";
+ }
+ }
+ break;
+ case "dc51":
+ case "possessive ablative": #täweldık + şığıs
+ if ( in_array( $wordEnding, $firstPerson ) || in_array( $wordEnding, $thirdPerson ) ) {
+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
+ $word = $word . "нен";
+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
+ $word = $word . "нан";
+ }
+ } elseif ( in_array($wordEnding, $secondPerson ) ) {
+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
+ $word = $word . "ден";
+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
+ $word = $word . "дан";
+ }
+ }
+ break;
+ case "dc6":
+ case "comitative": #kömektes
+ if ( in_array( $wordEnding, $Consonants ) ) {
+ $word = $word . "пен";
+ } elseif ( in_array( $wordEnding, $allVowels ) || in_array( $wordEnding, $Nasals ) || in_array( $wordEnding, $Sonants ) ) {
+ $word = $word . "мен";
+ } elseif ( in_array( $wordEnding, $Sibilants ) ) {
+ $word = $word . "бен";
+ }
+ break;
+ case "dc61":
+ case "possessive comitative": #täweldık + kömektes
+ if ( in_array( $wordEnding, $Consonants ) ) {
+ $word = $word . "пенен";
+ } elseif ( in_array( $wordEnding, $allVowels ) || in_array( $wordEnding, $Nasals ) || in_array( $wordEnding, $Sonants ) ) {
+ $word = $word . "менен";
+ } elseif ( in_array( $wordEnding, $Sibilants ) ) {
+ $word = $word . "бенен";
+ }
+ break;
+ default: #dc0 #nominative #ataw
+ }
+ return $word;
+ }
+
+ function convertGrammarKk_latn( $word, $case ) {
+ global $wgGrammarForms;
+ if ( isset( $wgGrammarForms['kk-tr'][$case][$word] ) ) {
+ return $wgGrammarForms['kk-tr'][$case][$word];
+ }
+ if ( isset( $wgGrammarForms['kk-latn'][$case][$word] ) ) {
+ return $wgGrammarForms['kk-latn'][$case][$word];
+ }
+ // Set up some constants...
+ // Vowels in last syllable
+ $frontVowels = array( "e", "ö", "ü", "i", "ä", "é" );
+ $backVowels = array( "a", "o", "u", "ı" );
+ $allVowels = array( "e", "ö", "ü", "i", "ä", "é", "a", "o", "u", "ı" );
+ // Preceding letters
+ $Nasals = array( "m", "n", "ñ" );
+ $Sonants = array( "ï", "y", "ý", "l", "r", "w");
+ $Consonants = array( "p", "f", "k", "q", "t", "ş", "s", "x", "c", "ç", "b", "v", "g", "d" );
+ $Sibilants = array( "j", "z" );
+ $Sonorants = array( "ï", "y", "ý", "l", "r", "w", "m", "n", "ñ", "j", "z");
+
+ // Possessives
+ $firstPerson = array( "m", "ñ" ); // 1st singular, 2nd unformal
+ $secondPerson = array( "z" ); // 1st plural, 2nd formal
+ $thirdPerson = array( "ı", "i" ); // 3rd
+
+ $lastLetter = self::lastLetter( $word, $allVowels );
+ $wordEnding =& $lastLetter[0];
+ $wordLastVowel =& $lastLetter[1];
+
+ // Now convert the word
+ switch ( $case ) {
+ case "dc1":
+ case "genitive": #ilik
+ if ( in_array( $wordEnding, $Consonants ) ) {
+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
+ $word = $word . "tiñ";
+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
+ $word = $word . "tıñ";
+ }
+ } elseif ( in_array( $wordEnding, $allVowels ) || in_array( $wordEnding, $Nasals ) ) {
+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
+ $word = $word . "niñ";
+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
+ $word = $word . "nıñ";
+ }
+ } elseif ( in_array( $wordEnding, $Sonants ) || in_array( $wordEnding, $Sibilants )) {
+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
+ $word = $word . "diñ";
+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
+ $word = $word . "dıñ";
+ }
+ }
+ break;
+ case "dc2":
+ case "dative": #barıs
+ if ( in_array( $wordEnding, $Consonants ) ) {
+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
+ $word = $word . "ke";
+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
+ $word = $word . "qa";
+ }
+ } elseif ( in_array( $wordEnding, $allVowels ) || in_array( $wordEnding, $Sonorants ) ) {
+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
+ $word = $word . "ge";
+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
+ $word = $word . "ğa";
+ }
+ }
+ break;
+ case "dc21":
+ case "possessive dative": #täweldık + barıs
+ if ( in_array( $wordEnding, $firstPerson ) ) {
+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
+ $word = $word . "e";
+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
+ $word = $word . "a";
+ }
+ } elseif ( in_array( $wordEnding, $secondPerson ) ) {
+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
+ $word = $word . "ge";
+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
+ $word = $word . "ğa";
+ }
+ } elseif ( in_array( $wordEnding, $thirdPerson ) ) {
+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
+ $word = $word . "ne";
+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
+ $word = $word . "na";
+ }
+ }
+ break;
+ case "dc3":
+ case "accusative": #tabıs
+ if ( in_array( $wordEnding, $Consonants ) ) {
+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
+ $word = $word . "ti";
+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
+ $word = $word . "tı";
+ }
+ } elseif ( in_array( $wordEnding, $allVowels ) ) {
+ if ( in_array($wordLastVowel, $frontVowels ) ) {
+ $word = $word . "ni";
+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
+ $word = $word . "nı";
+ }
+ } elseif ( in_array( $wordEnding, $Sonorants) ) {
+ if ( in_array( $wordLastVowel, $frontVowels) ) {
+ $word = $word . "di";
+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
+ $word = $word . "dı";
+ }
+ }
+ break;
+ case "dc31":
+ case "possessive accusative": #täweldık + tabıs
+ if ( in_array( $wordEnding, $firstPerson ) || in_array( $wordEnding, $secondPerson ) ) {
+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
+ $word = $word . "di";
+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
+ $word = $word . "dı";
+ }
+ } elseif ( in_array( $wordEnding, $thirdPerson ) ) {
+ $word = $word . "n";
+ }
+ break;
+ case "dc4":
+ case "locative": #jatıs
+ if ( in_array( $wordEnding, $Consonants ) ) {
+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
+ $word = $word . "te";
+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
+ $word = $word . "ta";
+ }
+ } elseif ( in_array( $wordEnding, $allVowels ) || in_array( $wordEnding, $Sonorants ) ) {
+ if ( in_array( $wordLastVowel, $frontVowels) ) {
+ $word = $word . "de";
+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
+ $word = $word . "da";
+ }
+ }
+ break;
+ case "dc41":
+ case "possessive locative": #täweldık + jatıs
+ if ( in_array( $wordEnding, $firstPerson ) || in_array( $wordEnding, $secondPerson ) ) {
+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
+ $word = $word . "de";
+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
+ $word = $word . "da";
+ }
+ } elseif ( in_array( $wordEnding, $thirdPerson ) ) {
+ if ( in_array( $wordLastVowel, $frontVowels) ) {
+ $word = $word . "nde";
+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
+ $word = $word . "nda";
+ }
+ }
+ break;
+ case "dc5":
+ case "ablative": #şığıs
+ if ( in_array( $wordEnding, $Consonants ) ) {
+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
+ $word = $word . "ten";
+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
+ $word = $word . "tan";
+ }
+ } elseif ( in_array($wordEnding, $allVowels ) || in_array($wordEnding, $Sonants ) || in_array($wordEnding, $Sibilants ) ) {
+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
+ $word = $word . "den";
+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
+ $word = $word . "dan";
+ }
+ } elseif ( in_array($wordEnding, $Nasals ) ) {
+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
+ $word = $word . "nen";
+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
+ $word = $word . "nan";
+ }
+ }
+ break;
+ case "dc51":
+ case "possessive ablative": #täweldık + şığıs
+ if ( in_array( $wordEnding, $firstPerson ) || in_array( $wordEnding, $thirdPerson ) ) {
+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
+ $word = $word . "nen";
+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
+ $word = $word . "nan";
+ }
+ } elseif ( in_array($wordEnding, $secondPerson ) ) {
+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
+ $word = $word . "den";
+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
+ $word = $word . "dan";
+ }
+ }
+ break;
+ case "dc6":
+ case "comitative": #kömektes
+ if ( in_array( $wordEnding, $Consonants ) ) {
+ $word = $word . "pen";
+ } elseif ( in_array( $wordEnding, $allVowels ) || in_array( $wordEnding, $Nasals ) || in_array( $wordEnding, $Sonants ) ) {
+ $word = $word . "men";
+ } elseif ( in_array( $wordEnding, $Sibilants ) ) {
+ $word = $word . "ben";
+ }
+ break;
+ case "dc61":
+ case "possessive comitative": #täweldık + kömektes
+ if ( in_array( $wordEnding, $Consonants ) ) {
+ $word = $word . "penen";
+ } elseif ( in_array( $wordEnding, $allVowels ) || in_array( $wordEnding, $Nasals ) || in_array( $wordEnding, $Sonants ) ) {
+ $word = $word . "menen";
+ } elseif ( in_array( $wordEnding, $Sibilants ) ) {
+ $word = $word . "benen";
+ }
+ break;
+ default: #dc0 #nominative #ataw
+ }
+ return $word;
+ }
+
+ function convertGrammarKk_arab( $word, $case ) {
+ global $wgGrammarForms;
+ if ( isset( $wgGrammarForms['kk-cn'][$case][$word] ) ) {
+ return $wgGrammarForms['kk-cn'][$case][$word];
+ }
+ if ( isset( $wgGrammarForms['kk-arab'][$case][$word] ) ) {
+ return $wgGrammarForms['kk-arab'][$case][$word];
+ }
+ // Set up some constants...
+ // Vowels in last syllable
+ $frontVowels = array( "ە", "ٶ", "ٷ", "ٸ", "ٵ", "ە" );
+ $backVowels = array( "ا", "و", "ۇ", "ى" );
+ $allVowels = array( "ە", "ٶ", "ٷ", "ٸ", "ٵ", "ە", "ا", "و", "ۇ", "ى" );
+ // Preceding letters
+ $Nasals = array( "م", "ن", "ڭ" );
+ $Sonants = array( "ي", "ي", "ل", "ر", "ۋ");
+ $Consonants = array( "پ", "ف", "ك", "ق", "ت", "ش", "س", "ح", "تس", "چ", "ب", "ۆ", "گ", "د" );
+ $Sibilants = array( "ج", "ز" );
+ $Sonorants = array( "ي", "ي", "ل", "ر", "ۋ", "م", "ن", "ڭ", "ج", "ز");
+
+ // Possessives
+ $firstPerson = array( "م", "ڭ" ); // 1st singular, 2nd unformal
+ $secondPerson = array( "ز" ); // 1st plural, 2nd formal
+ $thirdPerson = array( "ى", "ٸ" ); // 3rd
+
+ $lastLetter = self::lastLetter( $word, $allVowels );
+ $wordEnding =& $lastLetter[0];
+ $wordLastVowel =& $lastLetter[1];
+
+ // Now convert the word
+ switch ( $case ) {
+ case "dc1":
+ case "genitive": #ilik
+ if ( in_array( $wordEnding, $Consonants ) ) {
+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
+ $word = $word . "تٸڭ";
+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
+ $word = $word . "تىڭ";
+ }
+ } elseif ( in_array( $wordEnding, $allVowels ) || in_array( $wordEnding, $Nasals ) ) {
+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
+ $word = $word . "نٸڭ";
+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
+ $word = $word . "نىڭ";
+ }
+ } elseif ( in_array( $wordEnding, $Sonants ) || in_array( $wordEnding, $Sibilants )) {
+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
+ $word = $word . "دٸڭ";
+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
+ $word = $word . "دىڭ";
+ }
+ }
+ break;
+ case "dc2":
+ case "dative": #barıs
+ if ( in_array( $wordEnding, $Consonants ) ) {
+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
+ $word = $word . "كە";
+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
+ $word = $word . "قا";
+ }
+ } elseif ( in_array( $wordEnding, $allVowels ) || in_array( $wordEnding, $Sonorants ) ) {
+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
+ $word = $word . "گە";
+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
+ $word = $word . "عا";
+ }
+ }
+ break;
+ case "dc21":
+ case "possessive dative": #täweldık + barıs
+ if ( in_array( $wordEnding, $firstPerson ) ) {
+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
+ $word = $word . "ە";
+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
+ $word = $word . "ا";
+ }
+ } elseif ( in_array( $wordEnding, $secondPerson ) ) {
+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
+ $word = $word . "گە";
+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
+ $word = $word . "عا";
+ }
+ } elseif ( in_array( $wordEnding, $thirdPerson ) ) {
+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
+ $word = $word . "نە";
+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
+ $word = $word . "نا";
+ }
+ }
+ break;
+ case "dc3":
+ case "accusative": #tabıs
+ if ( in_array( $wordEnding, $Consonants ) ) {
+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
+ $word = $word . "تٸ";
+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
+ $word = $word . "تى";
+ }
+ } elseif ( in_array( $wordEnding, $allVowels ) ) {
+ if ( in_array($wordLastVowel, $frontVowels ) ) {
+ $word = $word . "نٸ";
+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
+ $word = $word . "نى";
+ }
+ } elseif ( in_array( $wordEnding, $Sonorants) ) {
+ if ( in_array( $wordLastVowel, $frontVowels) ) {
+ $word = $word . "دٸ";
+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
+ $word = $word . "دى";
+ }
+ }
+ break;
+ case "dc31":
+ case "possessive accusative": #täweldık + tabıs
+ if ( in_array( $wordEnding, $firstPerson ) || in_array( $wordEnding, $secondPerson ) ) {
+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
+ $word = $word . "دٸ";
+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
+ $word = $word . "دى";
+ }
+ } elseif ( in_array( $wordEnding, $thirdPerson ) ) {
+ $word = $word . "ن";
+ }
+ break;
+ case "dc4":
+ case "locative": #jatıs
+ if ( in_array( $wordEnding, $Consonants ) ) {
+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
+ $word = $word . "تە";
+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
+ $word = $word . "تا";
+ }
+ } elseif ( in_array( $wordEnding, $allVowels ) || in_array( $wordEnding, $Sonorants ) ) {
+ if ( in_array( $wordLastVowel, $frontVowels) ) {
+ $word = $word . "دە";
+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
+ $word = $word . "دا";
+ }
+ }
+ break;
+ case "dc41":
+ case "possessive locative": #täweldık + jatıs
+ if ( in_array( $wordEnding, $firstPerson ) || in_array( $wordEnding, $secondPerson ) ) {
+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
+ $word = $word . "دە";
+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
+ $word = $word . "دا";
+ }
+ } elseif ( in_array( $wordEnding, $thirdPerson ) ) {
+ if ( in_array( $wordLastVowel, $frontVowels) ) {
+ $word = $word . "ندە";
+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
+ $word = $word . "ندا";
+ }
+ }
+ break;
+ case "dc5":
+ case "ablative": #şığıs
+ if ( in_array( $wordEnding, $Consonants ) ) {
+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
+ $word = $word . "تەن";
+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
+ $word = $word . "تان";
+ }
+ } elseif ( in_array($wordEnding, $allVowels ) || in_array($wordEnding, $Sonants ) || in_array($wordEnding, $Sibilants ) ) {
+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
+ $word = $word . "دەن";
+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
+ $word = $word . "دان";
+ }
+ } elseif ( in_array($wordEnding, $Nasals ) ) {
+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
+ $word = $word . "نەن";
+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
+ $word = $word . "نان";
+ }
+ }
+ break;
+ case "dc51":
+ case "possessive ablative": #täweldık + şığıs
+ if ( in_array( $wordEnding, $firstPerson ) || in_array( $wordEnding, $thirdPerson ) ) {
+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
+ $word = $word . "نەن";
+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
+ $word = $word . "نان";
+ }
+ } elseif ( in_array($wordEnding, $secondPerson ) ) {
+ if ( in_array( $wordLastVowel, $frontVowels ) ) {
+ $word = $word . "دەن";
+ } elseif ( in_array( $wordLastVowel, $backVowels ) ) {
+ $word = $word . "دان";
+ }
+ }
+ break;
+ case "dc6":
+ case "comitative": #kömektes
+ if ( in_array( $wordEnding, $Consonants ) ) {
+ $word = $word . "پەن";
+ } elseif ( in_array( $wordEnding, $allVowels ) || in_array( $wordEnding, $Nasals ) || in_array( $wordEnding, $Sonants ) ) {
+ $word = $word . "مەن";
+ } elseif ( in_array( $wordEnding, $Sibilants ) ) {
+ $word = $word . "بەن";
+ }
+ break;
+ case "dc61":
+ case "possessive comitative": #täweldık + kömektes
+ if ( in_array( $wordEnding, $Consonants ) ) {
+ $word = $word . "پەنەن";
+ } elseif ( in_array( $wordEnding, $allVowels ) || in_array( $wordEnding, $Nasals ) || in_array( $wordEnding, $Sonants ) ) {
+ $word = $word . "مەنەن";
+ } elseif ( in_array( $wordEnding, $Sibilants ) ) {
+ $word = $word . "بەنەن";
+ }
+ break;
+ default: #dc0 #nominative #ataw
+ }
+ return $word;
+ }
+
+ function lastLetter( $word, $allVowels ) {
+ $lastLetter = array();
+ $ar = array();
+
+ // 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
+ // so we can find a match quicker *shrug*
+ $wordReversed = array_reverse( $ar );
+
+ // Here's the last letter in the word
+ $lastLetter[0] = $ar[count( $ar ) - 1];
+
+ // Find the last vowel in the word
+ $lastLetter[1] = NULL;
+ foreach ( $wordReversed as $xvalue ) {
+ foreach ( $allVowels as $yvalue ) {
+ if ( strcmp( $xvalue, $yvalue ) == 0 ) {
+ $lastLetter[1] = $xvalue;
+ break;
+ } else {
+ continue;
+ }
+ }
+ if ( $lastLetter[1] !== NULL ) {
+ break;
+ } else {
+ continue;
+ }
+ }
+
+ return $lastLetter;
+ }
+
+ /**
+ * 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 $_;
+ }
+ }
+}
diff --git a/languages/classes/LanguageKsh.php b/languages/classes/LanguageKsh.php
index c53667cf..f72046e7 100644
--- a/languages/classes/LanguageKsh.php
+++ b/languages/classes/LanguageKsh.php
@@ -21,14 +21,16 @@ class LanguageKsh extends Language {
/**
* Handle cases of (1, other, 0) or (1, other)
*/
- public function convertPlural( $count, $w1, $w2, $w3, $w4, $w5 ) {
- $count = str_replace (' ', '', $count);
- if ( $count == '1' ) {
- return $w1;
- } elseif ( $count == '0' && $w3 ) {
- return $w3;
+ function convertPlural( $count, $forms ) {
+ if ( !count($forms) ) { return ''; }
+ $forms = $this->preConvertPlural( $forms, 3 );
+
+ if ( $count == 1 ) {
+ return $forms[0];
+ } elseif ( $count == 0 ) {
+ return $forms[2];
} else {
- return $w2;
+ return $forms[1];
}
}
}
diff --git a/languages/classes/LanguageKu.php b/languages/classes/LanguageKu.php
index a08d3d73..d37d4287 100644
--- a/languages/classes/LanguageKu.php
+++ b/languages/classes/LanguageKu.php
@@ -15,6 +15,9 @@ class KuConverter extends LanguageConverter {
'م' => 'm', 'ن' => 'n', 'پ' => 'p', 'ق' => 'q', 'ر' => 'r', 'س' => 's', 'ش' => 'ş',
'ت' => 't', 'ڤ' => 'v', 'خ' => 'x', 'غ' => 'x', 'ز' => 'z',
+// ک و => ku -- ist richtig
+// و ك=> ku -- ist auch richtig
+
/* Doppel- und Halbvokale */
'ڵ' => 'll', #ll
'ڕ' => 'rr', #rr
@@ -34,6 +37,18 @@ class KuConverter extends LanguageConverter {
'،' => ',',
'ع' => '\'', # ayn
'؟' => '?',
+
+ # digits
+ '٠' => '0', # &#x0660;
+ '١' => '1', # &#x0661;
+ '٢' => '2', # &#x0662;
+ '٣' => '3', # &#x0663;
+ '٤' => '4', # &#x0664;
+ '٥' => '5', # &#x0665;
+ '٦' => '6', # &#x0666;
+ '٧' => '7', # &#x0667;
+ '٨' => '8', # &#x0668;
+ '٩' => '9', # &#x0669;
);
var $mLatinToArabic = array(
@@ -95,7 +110,20 @@ class KuConverter extends LanguageConverter {
# 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
+ '0' => '٠', # &#x0660;
+ '1' => '١', # &#x0661;
+ '2' => '٢', # &#x0662;
+ '3' => '٣', # &#x0663;
+ '4' => '٤', # &#x0664;
+ '5' => '٥', # &#x0665;
+ '6' => '٦', # &#x0666;
+ '7' => '٧', # &#x0667;
+ '8' => '٨', # &#x0668;
+ '9' => '٩', # &#x0669;
+*/
+ );
function loadDefaultTables() {
$this->mTables = array(
@@ -236,5 +264,3 @@ class LanguageKu extends LanguageKu_ku {
}
*/
}
-
-
diff --git a/languages/classes/LanguageLt.php b/languages/classes/LanguageLt.php
index f2b29cad..0e14cbf8 100644
--- a/languages/classes/LanguageLt.php
+++ b/languages/classes/LanguageLt.php
@@ -11,11 +11,17 @@ class LanguageLt extends Language {
2 - trys (3) lapai
3 - penkiolika (15) lapų
*/
- function convertPlural( $count, $wordform1, $wordform2, $wordform3, $w4, $w5) {
- if ($count%10==1 && $count%100!=11) return $wordform1;
- if ($count%10>=2 && ($count%100<10 || $count%100>=20)) return $wordform2;
- //if third form not specified, then use second form
- return empty($wordform3)?$wordform2:$wordform3;
+ 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==1 && $count%100!=11) return $forms[0];
+ if ($count%10>=2 && ($count%100<10 || $count%100>=20)) return $forms[1];
+ return $forms[2];
}
}
diff --git a/languages/classes/LanguageLv.php b/languages/classes/LanguageLv.php
index 8a46bb9d..a3f076e8 100644
--- a/languages/classes/LanguageLv.php
+++ b/languages/classes/LanguageLv.php
@@ -21,8 +21,11 @@ class LanguageLv extends Language {
* @param string $wordform3 (not used)
* @return string
*/
- function convertPlural( $count, $wordform1, $wordform2, $wordform3, $w4, $w5 ) {
- return ( ( $count % 10 == 1 ) && ( $count % 100 != 11 ) ) ? $wordform1 : $wordform2;
+ function convertPlural( $count, $forms ) {
+ if ( !count($forms) ) { return ''; }
+ $forms = $this->preConvertPlural( $forms, 2 );
+
+ return ( ( $count % 10 == 1 ) && ( $count % 100 != 11 ) ) ? $forms[0] : $forms[1];
}
# Convert from the nominative form of a noun to some other case
diff --git a/languages/classes/LanguagePl.php b/languages/classes/LanguagePl.php
new file mode 100644
index 00000000..35b2a9c0
--- /dev/null
+++ b/languages/classes/LanguagePl.php
@@ -0,0 +1,24 @@
+<?php
+/** Polish (polski)
+ *
+ * @addtogroup Language
+ */
+
+class LanguagePl extends Language {
+ function convertPlural( $count, $forms ) {
+ if ( !count($forms) ) { return ''; }
+ $forms = $this->preConvertPlural( $forms, 3 );
+ $count = abs( $count );
+ if ( $count == 1 )
+ return $forms[0]; // singular
+ switch ( $count % 10 ) {
+ case 2:
+ case 3:
+ case 4:
+ if ( $count / 10 % 10 != 1 )
+ return $forms[1]; // plural
+ default:
+ 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 31574ed8..78965ae3 100644
--- a/languages/classes/LanguagePt_br.php
+++ b/languages/classes/LanguagePt_br.php
@@ -9,8 +9,11 @@ class LanguagePt_br extends Language {
/**
* Use singular form for zero (see bug 7309)
*/
- function convertPlural( $count, $w1, $w2, $w3, $w4, $w5) {
- return $count <= '1' ? $w1 : $w2;
- }
+ function convertPlural( $count, $forms ) {
+ if ( !count($forms) ) { return ''; }
+ $forms = $this->preConvertPlural( $forms, 2 );
+
+ return ($count <= 1) ? $forms[0] : $forms[1];
+ }
}
diff --git a/languages/classes/LanguageRu.php b/languages/classes/LanguageRu.php
index 7d088053..f6311b33 100644
--- a/languages/classes/LanguageRu.php
+++ b/languages/classes/LanguageRu.php
@@ -56,17 +56,38 @@ class LanguageRu extends Language {
return $word;
}
- function convertPlural( $count, $wordform1, $wordform2, $wordform3, $w4, $w5) {
- $count = str_replace (' ', '', $count);
+ /**
+ * Plural form transformations
+ *
+ * $forms[0] - singular form (for 1, 21, 31, 41...)
+ * $forms[1] - paucal form (for 2, 3, 4, 22, 23, 24, 32, 33, 34...)
+ * $forms[2] - plural form (for 0, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 25, 26...)
+ *
+ * Examples:
+ * message with number
+ * "Сделано $1 {{PLURAL:$1|изменение|изменения|изменений}}"
+ * message without number
+ * "Действие не может быть выполнено по {{PLURAL:$1|следующей причине|следующим причинам}}:"
+ *
+ */
+
+ 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) {
- return $wordform3;
+ return $forms[2];
} else {
switch ($count % 10) {
- case 1: return $wordform1;
+ case 1: return $forms[0];
case 2:
case 3:
- case 4: return $wordform2;
- default: return $wordform3;
+ case 4: return $forms[1];
+ default: return $forms[2];
}
}
}
@@ -84,3 +105,4 @@ class LanguageRu extends Language {
}
}
+
diff --git a/languages/classes/LanguageSk.php b/languages/classes/LanguageSk.php
index 1b9832cc..edbe011c 100644
--- a/languages/classes/LanguageSk.php
+++ b/languages/classes/LanguageSk.php
@@ -76,9 +76,10 @@ class LanguageSk extends Language {
return $word;
}
- function convertPlural( $count, $w1, $w2, $w3, $w4, $w5) {
- $count = str_replace ('.', '', $count);
- $forms = array( $w1, $w2, $w3);
+ function convertPlural( $count, $forms ) {
+ if ( !count($forms) ) { return ''; }
+ $forms = $this->preConvertPlural( $forms, 3 );
+
if ( $count == 1 ) {
$index = 0;
} elseif ( $count == 2 || $count == 3 || $count == 4 ) {
diff --git a/languages/classes/LanguageSl.php b/languages/classes/LanguageSl.php
index 2513d6bd..9b1e5c2b 100644
--- a/languages/classes/LanguageSl.php
+++ b/languages/classes/LanguageSl.php
@@ -71,9 +71,10 @@ class LanguageSl extends Language {
return $word; # this will return the original value for 'imenovalnik' (nominativ) and all undefined case values
}
- function convertPlural( $count, $w1, $w2, $w3, $w4, $w5) {
- $count = str_replace ('.', '', $count);
- $forms = array( $w1, $w2, $w3, $w4, $w5 );
+ function convertPlural( $count, $forms ) {
+ if ( !count($forms) ) { return ''; }
+ $forms = $this->preConvertPlural( $forms, 5 );
+
if ( $count % 100 == 1 ) {
$index = 0;
} elseif ( $count % 100 == 2 ) {
diff --git a/languages/classes/LanguageSr_ec.php b/languages/classes/LanguageSr_ec.php
index 42647ae6..1f9bb716 100644
--- a/languages/classes/LanguageSr_ec.php
+++ b/languages/classes/LanguageSr_ec.php
@@ -8,17 +8,19 @@
#--------------------------------------------------------------------------
class LanguageSr_ec extends Language {
- function convertPlural( $count, $wordform1, $wordform2, $wordform3, $w4, $w5) {
- $count = str_replace ('.', '', $count);
+ function convertPlural( $count, $forms ) {
+ if ( !count($forms) ) { return ''; }
+ $forms = $this->preConvertPlural( $forms, 3 );
+
if ($count > 10 && floor(($count % 100) / 10) == 1) {
- return $wordform3;
+ return $forms[2];
} else {
switch ($count % 10) {
- case 1: return $wordform1;
+ case 1: return $forms[0];
case 2:
case 3:
- case 4: return $wordform2;
- default: return $wordform3;
+ case 4: return $forms[1];
+ default: return $forms[2];
}
}
}
diff --git a/languages/classes/LanguageSr_el.php b/languages/classes/LanguageSr_el.php
index 66118cc9..a444e3b7 100644
--- a/languages/classes/LanguageSr_el.php
+++ b/languages/classes/LanguageSr_el.php
@@ -8,17 +8,19 @@
#--------------------------------------------------------------------------
class LanguageSr_el extends Language {
- function convertPlural( $count, $wordform1, $wordform2, $wordform3, $w4, $w5) {
- $count = str_replace ('.', '', $count);
+ function convertPlural( $count, $forms ) {
+ if ( !count($forms) ) { return ''; }
+ $forms = $this->preConvertPlural( $forms, 3 );
+
if ($count > 10 && floor(($count % 100) / 10) == 1) {
- return $wordform3;
+ return $forms[2];
} else {
switch ($count % 10) {
- case 1: return $wordform1;
+ case 1: return $forms[0];
case 2:
case 3:
- case 4: return $wordform2;
- default: return $wordform3;
+ case 4: return $forms[1];
+ default: return $forms[2];
}
}
}
diff --git a/languages/classes/LanguageUk.php b/languages/classes/LanguageUk.php
index d87b7f58..7d2f58bf 100644
--- a/languages/classes/LanguageUk.php
+++ b/languages/classes/LanguageUk.php
@@ -58,17 +58,19 @@ class LanguageUk extends Language {
return $word;
}
- function convertPlural( $count, $wordform1, $wordform2, $wordform3, $w4, $w5) {
- $count = str_replace (' ', '', $count);
+ function convertPlural( $count, $forms ) {
+ if ( !count($forms) ) { return ''; }
+ $forms = $this->preConvertPlural( $forms, 3 );
+
if ($count > 10 && floor(($count % 100) / 10) == 1) {
- return $wordform3;
+ return $forms[2];
} else {
switch ($count % 10) {
- case 1: return $wordform1;
+ case 1: return $forms[0];
case 2:
case 3:
- case 4: return $wordform2;
- default: return $wordform3;
+ case 4: return $forms[1];
+ default: return $forms[2];
}
}
}
diff --git a/languages/classes/LanguageYue.php b/languages/classes/LanguageYue.php
new file mode 100644
index 00000000..26e45984
--- /dev/null
+++ b/languages/classes/LanguageYue.php
@@ -0,0 +1,23 @@
+<?php
+/**
+ * @addtogroup Language
+ */
+class LanguageYue extends Language {
+ function stripForSearch( $string ) {
+ # MySQL fulltext index doesn't grok utf-8, so we
+ # need to fold cases and convert to hex
+ # we also separate characters as "words"
+ if( function_exists( 'mb_strtolower' ) ) {
+ return preg_replace(
+ "/([\\xc0-\\xff][\\x80-\\xbf]*)/e",
+ "' U8' . bin2hex( \"$1\" )",
+ mb_strtolower( $string ) );
+ } else {
+ list( , $wikiLowerChars ) = Language::getCaseMaps();
+ return preg_replace(
+ "/([\\xc0-\\xff][\\x80-\\xbf]*)/e",
+ "' U8' . bin2hex( strtr( \"\$1\", \$wikiLowerChars ) )",
+ $string );
+ }
+ }
+}
diff --git a/languages/classes/LanguageZh.deps.php b/languages/classes/LanguageZh.deps.php
index 9a9dacb1..05e51799 100644
--- a/languages/classes/LanguageZh.deps.php
+++ b/languages/classes/LanguageZh.deps.php
@@ -5,6 +5,5 @@
// changed on a subsequent page view.
// see http://mail.wikipedia.org/pipermail/wikitech-l/2006-January/033660.html
-require_once( dirname(__FILE__).'/LanguageZh_cn.php' );
+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 bcdf7dd8..337783a6 100644
--- a/languages/classes/LanguageZh.php
+++ b/languages/classes/LanguageZh.php
@@ -3,24 +3,28 @@
* @addtogroup Language
*/
require_once( dirname(__FILE__).'/../LanguageConverter.php' );
-require_once( dirname(__FILE__).'/LanguageZh_cn.php' );
+require_once( dirname(__FILE__).'/LanguageZh_hans.php' );
class ZhConverter extends LanguageConverter {
function loadDefaultTables() {
require( dirname(__FILE__)."/../../includes/ZhConversion.php" );
$this->mTables = array(
- 'zh-cn' => new ReplacementArray( $zh2CN ),
- 'zh-tw' => new ReplacementArray( $zh2TW ),
- 'zh-sg' => new ReplacementArray( array_merge($zh2CN, $zh2SG) ),
- 'zh-hk' => new ReplacementArray( array_merge($zh2TW, $zh2HK) ),
- 'zh' => new ReplacementArray
+ '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' => new ReplacementArray
);
}
function postLoadTables() {
- $this->mTables['zh-sg']->merge( $this->mTables['zh-cn'] );
- $this->mTables['zh-hk']->merge( $this->mTables['zh-tw'] );
- }
+ $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'] );
+ }
/* there shouldn't be any latin text in Chinese conversion, so no need
to mark anything.
@@ -31,26 +35,33 @@ class ZhConverter extends LanguageConverter {
}
function convertCategoryKey( $key ) {
- return $this->autoConvert( $key, 'zh-cn' );
+ return $this->autoConvert( $key, 'zh' );
}
}
/* class that handles both Traditional and Simplified Chinese
- right now it only distinguish zh_cn, zh_tw, zh_sg and zh_hk.
+ right now it only distinguish zh_hans, zh_hant, zh_cn, zh_tw, zh_sg and zh_hk.
*/
-class LanguageZh extends LanguageZh_cn {
+class LanguageZh extends LanguageZh_hans {
function __construct() {
global $wgHooks;
parent::__construct();
- $this->mConverter = new ZhConverter($this, 'zh',
- array('zh', 'zh-cn', 'zh-tw', 'zh-sg', 'zh-hk'),
- array('zh'=>'zh-cn',
- 'zh-cn'=>'zh-sg',
- 'zh-sg'=>'zh-cn',
- 'zh-tw'=>'zh-hk',
- 'zh-hk'=>'zh-tw'));
+
+ $variants = array('zh', 'zh-hans', 'zh-hant', 'zh-cn', 'zh-tw', 'zh-sg', 'zh-hk');
+ $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',
+ );
+
+ $this->mConverter = new ZhConverter( $this, 'zh', $variants, $variantfallbacks );
+
$wgHooks['ArticleSaveComplete'][] = $this->mConverter;
}
@@ -79,12 +90,12 @@ class LanguageZh extends LanguageZh_cn {
"/([\\xc0-\\xff][\\x80-\\xbf]*)/e",
"' ' .\"$1\"", $string);
- //always convert to zh-cn before indexing. it should be
- //better to use zh-cn for search, since conversion from
+ //always convert to zh-hans before indexing. it should be
+ //better to use zh-hans for search, since conversion from
//Traditional to Simplified is less ambiguous than the
//other way around
- $t = $this->mConverter->autoConvert($t, 'zh-cn');
+ $t = $this->mConverter->autoConvert($t, 'zh-hans');
$t = parent::stripForSearch( $t );
wfProfileOut( $fname );
return $t;
@@ -99,4 +110,3 @@ class LanguageZh extends LanguageZh_cn {
}
}
-
diff --git a/languages/classes/LanguageZh_hans.php b/languages/classes/LanguageZh_hans.php
new file mode 100644
index 00000000..ed7da2b9
--- /dev/null
+++ b/languages/classes/LanguageZh_hans.php
@@ -0,0 +1,23 @@
+<?php
+/**
+ * @addtogroup Language
+ */
+class LanguageZh_hans extends Language {
+ function stripForSearch( $string ) {
+ # MySQL fulltext index doesn't grok utf-8, so we
+ # need to fold cases and convert to hex
+ # we also separate characters as "words"
+ if( function_exists( 'mb_strtolower' ) ) {
+ return preg_replace(
+ "/([\\xc0-\\xff][\\x80-\\xbf]*)/e",
+ "' U8' . bin2hex( \"$1\" )",
+ mb_strtolower( $string ) );
+ } else {
+ list( , $wikiLowerChars ) = Language::getCaseMaps();
+ return preg_replace(
+ "/([\\xc0-\\xff][\\x80-\\xbf]*)/e",
+ "' U8' . bin2hex( strtr( \"\$1\", \$wikiLowerChars ) )",
+ $string );
+ }
+ }
+}
diff --git a/languages/messages/MessagesAb.php b/languages/messages/MessagesAb.php
index 09d5ea24..13873b77 100644
--- a/languages/messages/MessagesAb.php
+++ b/languages/messages/MessagesAb.php
@@ -1,5 +1,9 @@
<?php
+/** Abkhazian (Аҧсуа)
+ *
+ * @addtogroup Language
+ *
+ */
$fallback = 'ru';
-
diff --git a/languages/messages/MessagesAf.php b/languages/messages/MessagesAf.php
index b7c17324..fc2c47d3 100644
--- a/languages/messages/MessagesAf.php
+++ b/languages/messages/MessagesAf.php
@@ -1,4 +1,14 @@
-<?php
+<?php
+/** Afrikaans (Afrikaans)
+ *
+ * @addtogroup Language
+ *
+ * @author SPQRobin
+ * @author Adriaan
+ * @author Siebrand
+ * @author Spacebirdy
+ * @author Manie
+ */
$skinNames = array(
'standard' => 'Standaard',
@@ -79,52 +89,69 @@ $messages = array(
'skinpreview' => '(Voorskou)',
# Dates
-'sunday' => 'Sondag',
-'monday' => 'Maandag',
-'tuesday' => 'Dinsdag',
-'wednesday' => 'Woensdag',
-'thursday' => 'Donderdag',
-'friday' => 'Vrydag',
-'saturday' => 'Saterdag',
-'sun' => 'So',
-'mon' => 'Ma',
-'tue' => 'Di',
-'wed' => 'Wo',
-'thu' => 'Do',
-'fri' => 'Vr',
-'sat' => 'Sa',
-'january' => 'Januarie',
-'february' => 'Februarie',
-'march' => 'Maart',
-'april' => 'April',
-'may_long' => 'Mei',
-'june' => 'Junie',
-'july' => 'Julie',
-'august' => 'Augustus',
-'september' => 'September',
-'october' => 'Oktober',
-'november' => 'November',
-'december' => 'Desember',
-'jan' => 'Jan',
-'feb' => 'Feb',
-'mar' => 'Mrt',
-'apr' => 'Apr',
-'may' => 'Mei',
-'jun' => 'Jun',
-'jul' => 'Jul',
-'aug' => 'Aug',
-'sep' => 'Sep',
-'oct' => 'Okt',
-'nov' => 'Nov',
-'dec' => 'Des',
+'sunday' => 'Sondag',
+'monday' => 'Maandag',
+'tuesday' => 'Dinsdag',
+'wednesday' => 'Woensdag',
+'thursday' => 'Donderdag',
+'friday' => 'Vrydag',
+'saturday' => 'Saterdag',
+'sun' => 'So',
+'mon' => 'Ma',
+'tue' => 'Di',
+'wed' => 'Wo',
+'thu' => 'Do',
+'fri' => 'Vr',
+'sat' => 'Sa',
+'january' => 'Januarie',
+'february' => 'Februarie',
+'march' => 'Maart',
+'april' => 'April',
+'may_long' => 'Mei',
+'june' => 'Junie',
+'july' => 'Julie',
+'august' => 'Augustus',
+'september' => 'September',
+'october' => 'Oktober',
+'november' => 'November',
+'december' => 'Desember',
+'january-gen' => 'Januarie',
+'february-gen' => 'Februarie',
+'march-gen' => 'Maart',
+'april-gen' => 'April',
+'may-gen' => 'Mei',
+'june-gen' => 'Junie',
+'july-gen' => 'Julie',
+'august-gen' => 'Augustus',
+'september-gen' => 'September',
+'october-gen' => 'Oktober',
+'november-gen' => 'November',
+'december-gen' => 'Desember',
+'jan' => 'Jan',
+'feb' => 'Feb',
+'mar' => 'Mrt',
+'apr' => 'Apr',
+'may' => 'Mei',
+'jun' => 'Jun',
+'jul' => 'Jul',
+'aug' => 'Aug',
+'sep' => 'Sep',
+'oct' => 'Okt',
+'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ë',
+'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>",
'about' => 'Omtrent',
+'article' => 'Inhoudbladsy',
'newwindow' => '(verskyn in nuwe venster)',
'cancel' => 'Kanselleer',
'qbfind' => 'Vind',
@@ -139,6 +166,7 @@ $messages = array(
'mytalk' => 'My besprekings',
'anontalk' => 'Besprekingsblad vir hierdie IP',
'navigation' => 'Navigasie',
+'and' => 'en',
'errorpagetitle' => 'Fout',
'returnto' => 'Keer terug na $1.',
@@ -150,6 +178,7 @@ $messages = array(
'searcharticle' => 'Wys',
'history' => 'Ouer weergawes',
'history_short' => 'Geskiedenis',
+'info_short' => 'Inligting',
'printableversion' => 'Drukbare weergawe',
'permalink' => 'Permanente skakel',
'print' => 'Druk',
@@ -159,6 +188,7 @@ $messages = array(
'deletethispage' => 'Skrap bladsy',
'undelete_short' => 'Herstel {{PLURAL:$1|een wysiging|$1 wysigings}}',
'protect' => 'Beskerm',
+'protect_change' => 'wysig beskerming',
'protectthispage' => 'Beskerm hierdie bladsy',
'unprotect' => 'Verwyder beskerming',
'unprotectthispage' => 'Verwyder beskerming',
@@ -174,6 +204,9 @@ $messages = array(
'userpage' => 'Lees gebruikersbladsy',
'projectpage' => 'Lees metabladsy',
'imagepage' => 'Lees bladsy oor prent',
+'mediawikipage' => 'Bekyk boodskapsbladsy',
+'templatepage' => 'Bekyk sjabloonsbladsy',
+'viewhelppage' => 'Bekyk hulpbladsy',
'categorypage' => 'Bekyk kategorieblad',
'viewtalkpage' => 'Lees bespreking',
'otherlanguages' => 'Ander tale',
@@ -188,26 +221,28 @@ $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).
'aboutsite' => 'Inligting oor {{SITENAME}}',
-'aboutpage' => '{{ns:4}}:Omtrent',
+'aboutpage' => 'Project:Omtrent',
'bugreports' => 'Foutrapporte',
-'bugreportspage' => '{{ns:4}}:FoutRapporte',
+'bugreportspage' => 'Project:FoutRapporte',
'copyright' => 'Teks is beskikbaar onderhewig aan $1.',
'copyrightpagename' => '{{SITENAME}} kopiereg',
-'copyrightpage' => '{{ns:4}}:kopiereg',
+'copyrightpage' => '{{ns:project}}:kopiereg',
'currentevents' => 'Huidige gebeure',
+'currentevents-url' => 'Project:Huidige gebeure',
'disclaimers' => 'Voorbehoud',
+'disclaimerpage' => 'Project:Voorwaarden',
'edithelp' => 'Wysighulp',
-'edithelppage' => '{{ns:4}}:Redigeer',
+'edithelppage' => 'Help:Wysig',
'faq' => 'Gewilde vrae',
-'faqpage' => '{{ns:4}}:GewildeVrae',
-'helppage' => '{{ns:4}}:Hulp',
+'faqpage' => 'Project:GewildeVrae',
+'helppage' => 'Help:Hulp',
'mainpage' => 'Tuisblad',
-'policy-url' => 'Project:Policy',
'portal' => 'Gebruikersportaal',
'portal-url' => 'Project:Gebruikersportaal',
'privacy' => 'Privaatheidsbeleid',
'privacypage' => 'Project:Privaatheidsbeleid',
'sitesupport' => 'Skenkings',
+'sitesupport-url' => 'Project:Skenkings',
'ok' => 'Aanvaar',
'retrievedfrom' => 'Ontsluit van "$1"',
@@ -221,9 +256,10 @@ $messages = array(
'showtoc' => 'wys',
'hidetoc' => 'versteek',
'thisisdeleted' => 'Bekyk of herstel $1?',
-'restorelink' => '{{PLURAL:$1|die een geskrapte wysiging|$1 geskrapte wysiging}}',
+'viewdeleted' => 'Bekyk $1?',
+'restorelink' => '{{PLURAL:$1|die geskrapte wysiging|$1 geskrapte wysigings}}',
-# Short words for each namespace, by default used in the 'article' tab in monobook
+# Short words for each namespace, by default used in the namespace tab in monobook
'nstab-main' => 'Artikel',
'nstab-user' => 'Gebruikerblad',
'nstab-media' => 'Mediablad',
@@ -242,50 +278,55 @@ $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>".',
-'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.",
+'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:
-<p>$1',
-'missingarticle' => 'Die databasis het nie die teks van die veronderstelde bladsy "$1" gekry nie.
+
+$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
+'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
'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',
+'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.",
# 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.",
-'welcomecreation' => '<h2>Welkom, $1.</h2><p>Jou rekening is geskep;
+'welcomecreation' => '<h2>Welkom, $1.</h2>
+Jou rekening is geskep;
moenie vergeet om jou persoonlike voorkeure te stel nie.',
'loginpagetitle' => 'Teken in',
'yourname' => 'Gebruikersnaam',
@@ -293,7 +334,6 @@ moenie vergeet om jou persoonlike voorkeure te stel nie.',
'yourpasswordagain' => 'Herhaal wagwoord',
'remembermypassword' => 'Onthou my wagwoord oor sessies.',
'loginproblem' => '<b>Daar was probleme met jou intekening.</b><br />Probeer weer.',
-'alreadyloggedin' => '<strong>Gebruiker $1, jy is reeds ingeteken.</strong><br />',
'login' => 'Teken in',
'loginprompt' => 'U blaaier moet koekies toelaat om by {{SITENAME}} aan te teken.',
'userlogin' => 'Teken in',
@@ -304,6 +344,7 @@ moenie vergeet om jou persoonlike voorkeure te stel nie.',
'createaccount' => 'Skep nuwe rekening',
'gotaccount' => "Het u reeds 'n rekening? $1.",
'gotaccountlink' => 'Teken gerus aan',
+'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',
@@ -314,7 +355,9 @@ moenie vergeet om jou persoonlike voorkeure te stel nie.',
'yournick' => 'Bynaam (vir handtekening)',
'badsig' => 'Ongeldige handtekening; gaan HTML na.',
'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.',
'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',
@@ -322,10 +365,11 @@ moenie vergeet om jou persoonlike voorkeure te stel nie.',
'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.',
'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ê.',
'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 stuur.
+het gevra dat ons vir jou \'n nuwe {{SITENAME}}-wagwoord ($4) stuur.
Die wagwoord vir gebruiker "$2" is nou "$3".
Teken asseblief in en verander jou wagwoord.',
'noemail' => 'Daar is geen e-posadres vir gebruiker "$1" nie.',
@@ -341,6 +385,7 @@ moet die instruksies in bogenoemde pos gevolg word om te bevestig dat die adres
'emailconfirmlink' => 'Bevestig u e-posadres',
'accountcreated' => 'Rekening geskep',
'accountcreatedtext' => 'Die rekening vir gebruiker $1 is geskep.',
+'loginlanguagelabel' => 'Taal: $1',
# Edit page toolbar
'bold_sample' => 'Vet teks',
@@ -376,34 +421,45 @@ moet die instruksies in bogenoemde pos gevolg word om te bevestig dat die adres
'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' => 'Summary preview',
+'summary-preview' => 'Opsomming nakijken',
'blockedtitle' => 'Gebruiker is geblokkeer',
-'blockedtext' => "Jou gebruikersnaam of IP-adres is deur $1 geblokkeer:
-<br />''$2''<p>Jy mag $1 of een van die ander [[{{MediaWiki:grouppage-sysop}}|administreerders]] kontak
-om dit te bespreek.",
+'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 [[Spesiaal:Preferences|voorkeure]].',
+'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.
-Om 'n nuwe bladsy te skep, tik in die invoerboks hier onder. Lees die [[{{MediaWiki:helppage}}|hulp bladsy]]
+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, [[Spesiaal: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.)',
+'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' => "Onthou dat hierdie slegs 'n voorskou is en nog nie gestoor is nie!",
+'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 $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',
@@ -423,9 +479,11 @@ Probeer asseblief die bladsy verkort en die detail na subartikels skuif sodat di
'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}}:',
# History pages
-'revhistory' => 'Wysigingsgeskiedenis',
+'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.',
@@ -439,30 +497,35 @@ Probeer asseblief die bladsy verkort en die detail na subartikels skuif sodat di
'next' => 'volgende',
'last' => 'vorige',
'orig' => 'oorspronklike',
+'page_first' => 'eerste',
+'page_last' => 'laaste',
'histlegend' => 'Byskrif: (huidige) = verskil van huidige weergawe,
(vorige) = verskil van vorige weergawe, M = klein wysiging',
+'deletedrev' => '[geskrap]',
'histfirst' => 'Oudste',
'histlast' => 'Nuutste',
+'historyempty' => '(leeg)',
+
+# Revision feed
+'history-feed-title' => 'Weergawegeskiedenis',
+
+# Revision deletion
+'rev-deleted-user' => '(gebruikersnaam geskrap)',
+'rev-delundel' => 'wys/versteek',
# Diffs
-'difference' => '(Verskil tussen weergawes)',
-'loadingrev' => 'Besig om weergawe van verskil te laai.',
-'lineno' => 'Lyn $1:',
-'editcurrent' => 'Wysig die huidige weergawe van hierdie bladsy.',
-'selectnewerversionfordiff' => "Kies 'n nuwer weergawe vir vergelyking",
-'selectolderversionfordiff' => "Kies 'n ouer weergawe vir vergelyking",
-'compareselectedversions' => 'Vergelyk gekose weergawes',
+'history-title' => 'Weergawegeskiedenis van "$1"',
+'difference' => '(Verskil tussen weergawes)',
+'lineno' => 'Lyn $1:',
+'compareselectedversions' => 'Vergelyk gekose weergawes',
+'editundo' => 'maak ongedaan',
# Search results
'searchresults' => 'soekresultate',
-'searchresulttext' => 'Vir meer inligting oor {{SITENAME}} soekresultate, lees [[{{MediaWiki:helppage}}|{{int:help}}]].',
+'searchresulttext' => 'Vir meer inligting oor {{SITENAME}} soekresultate, lees [[{{MediaWiki:Helppage}}|{{int:help}}]].',
'searchsubtitle' => 'Vir navraag "[[:$1]]"',
'searchsubtitleinvalid' => 'Vir navraag "$1"',
-'badquery' => 'Verkeerd gestelde navraag',
-'badquerytext' => 'Die navraag kon nie verwerk word nie. Dit kan wees dat die soektog minder as drie letters bevat het, of dat die navraag verkeerd ingetik is.',
-'matchtotals' => 'Die navraag "$1" pas $2 artikeltitels
-en teks in $3 artikels.',
-'noexactmatch' => "Geen bladsy met hierdie presiese titel bestaan nie, probeer 'n volteksnavraag.",
+'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',
@@ -480,7 +543,6 @@ 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.',
-'blanknamespace' => '(Hoof)',
# Preferences page
'preferences' => 'Voorkeure',
@@ -538,25 +600,56 @@ om voorkeure te spesifiseer.',
'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:',
+
+# 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',
+
+# User rights log
+'rightslog' => 'Gebruikersrechtenlogboek',
+'rightsnone' => '(geen)',
+
# Recent changes
-'nchanges' => '$1 {{PLURAL:$1|wysiging|wysigings}}',
-'recentchanges' => 'Onlangse wysigings',
-'rcnote' => 'Hier volg die laaste <strong>$1</strong> wysigings gedurende die afgelope <strong>$2</strong> dae.',
-'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',
+'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',
# Recent changes linked
'recentchangeslinked' => 'Verwante veranderings',
@@ -571,12 +664,12 @@ om voorkeure te spesifiseer.',
om lêers te laai.',
'uploaderror' => 'Laaifout',
'uploadtext' => "'''STOP!''' Voor jy hier laai, lees en volg {{SITENAME}} se
-[[{{MediaWiki:copyrightpage}}|beleid oor prentgebruik]].
+[[{{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]].
Laai van lêers en skrappings word aangeteken in die
-[[{{ns:special}}:Log/upload|laailog]].
+[[Special:Log/upload|laailog]].
Gebruik die vorm hier onder om nuwe prente te laai wat jy ter illustrasie in jou artikels wil gebruik.
In die meeste webblaaiers sal jy 'n \"Browse...\" knop sien, wat jou bedryfstelsel se standaard lêeroopmaak dialoogblokkie sal oopmaak.
@@ -610,7 +703,9 @@ Let asseblief op dat, soos met {{SITENAME}} bladsye, mag ander jou gelaaide lêe
'successfulupload' => 'Laai suksesvol',
'uploadwarning' => 'Laaiwaarskuwing',
'savefile' => 'Stoor lêer',
-'uploadedimage' => 'Het "[[$1]]" gelaai',
+'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',
@@ -619,31 +714,48 @@ Let asseblief op dat, soos met {{SITENAME}} bladsye, mag ander jou gelaaide lêe
'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',
-'imglegend' => 'Sleutel: (beskrywing) = wys/verander prent se beskrywing.',
-'imghistory' => 'Prentgeskiedenis',
-'revertimg' => 'gaan terug',
-'deleteimg' => 'skrap',
-'deleteimgcompletely' => 'skrap',
-'imghistlegend' => 'Sleutel: (huidige) = dit is die huidige weergawe, (skrap) = skrap hierdie weergawe, (gaan terug) = gaan terug na hierdie ou weergawe.
-<br /><i>Kliek die datum om die weergawe te sien wat op daardie datum gelaai is</i>.',
-'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',
+'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:',
+
+# File deletion
+'filedelete' => 'Skrap $1',
+'filedelete-legend' => 'Skrap lêer',
+'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-reason-otherlist' => 'Andere rede',
# MIME search
'mimesearch' => 'MIME-soek',
+'download' => 'laai af',
# List redirects
'listredirects' => 'Lys aansture',
@@ -652,28 +764,46 @@ Let asseblief op dat, soos met {{SITENAME}} bladsye, mag ander jou gelaaide lêe
'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',
+
+# Random redirect
+'randomredirect' => 'Lukrake aanstuur',
+
# Statistics
'statistics' => 'Statistiek',
'sitestats' => 'Werfstatistiek',
'userstats' => 'Gebruikerstatistiek',
-'sitestatstext' => 'Daar is \'n totaal van <b>$1</b> bladsye in die databasis.
-Dit sluit "bespreek" bladsye in, bladsye oor {{SITENAME}}, minimale "verkorte"
+'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 <b>$2</b> bladsye wat waarskynlik ware artikels is.<p>
-Bladsye is al <b>$3</b> kere aangevra, en <b>$4</b> keer verander sedert die sagteware opgegradeer is (July 20, 2002).
-Dit werk uit op gemiddeld <b>$5</b> veranderings per bladsy, en bladsye word <b>$6</b> keer per verandering aangevra.',
+Uitsluitend bogenoemde, is daar {{PLURAL:\$2|'''1''' bladsy|'''\$2''' bladsye}} wat waarskynlik {{PLURAL:\$2|bladsy|bladsye}} met ware inhoud is.
+
+'''\$8''' {{PLURAL:\$8|lêer|lêers}} is gelaai.
+
+{{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).',
'disambiguations' => 'Bladsye wat onduidelikhede opklaar',
-'disambiguationspage' => '{{ns:4}}:Links_to_disambiguating_pages',
+'disambiguationspage' => 'Template:Dubbelsinnig',
'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.',
-'brokenredirects' => 'Stukkende aansture',
-'brokenredirectstext' => "Die volgende aansture skakel na 'n bladsy wat nie bestaan nie.",
+'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',
+
+'fewestrevisions' => 'Artikels met die minste wysigings',
# Miscellaneous special pages
'nbytes' => '$1 grepe',
@@ -683,8 +813,10 @@ Elke ry bevat skakels na die eerste en die tweede aanstuur, asook die eerste re
'nrevisions' => '$1 {{PLURAL:$1|weergawe|weergawes}}',
'nviews' => '$1 keer aangevra',
'lonelypages' => 'Weesbladsye',
-'uncategorizedpages' => 'Bladsye sonder kategorie',
-'uncategorizedcategories' => 'Kategoriebladsye wat nie gekategoriseer is nie',
+'uncategorizedpages' => 'Ongekategoriseerde bladsye',
+'uncategorizedcategories' => 'Ongekategoriseerde kategorieë',
+'uncategorizedimages' => 'Ongekategoriseerde beelde',
+'uncategorizedtemplates' => 'Ongekategoriseerde sjablone',
'unusedcategories' => 'Ongebruikte kategorieë',
'unusedimages' => 'Ongebruikte lêers',
'popularpages' => 'Gewilde bladsye',
@@ -692,40 +824,52 @@ Elke ry bevat skakels na die eerste en die tweede aanstuur, asook die eerste re
'wantedpages' => 'Gesogte bladsye',
'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',
-'randompage' => 'Lukrake bladsy',
+'prefixindex' => 'Alle bladsye (voorvoegselindeks)',
'shortpages' => 'Kort bladsye',
'longpages' => 'Lang bladsye',
'deadendpages' => 'Doodloopbladsye',
+'protectedpages' => 'Beskermde bladsye',
'listusers' => 'Gebruikerslys',
'specialpages' => 'Spesiale bladsye',
'spheading' => 'Spesiale bladsye',
-'rclsub' => '(na bladsye waarna "$1" skakel)',
'newpages' => 'Nuwe bladsye',
+'newpages-username' => 'Gebruikersnaam:',
'ancientpages' => 'Oudste bladsye',
'move' => 'Skuif',
'movethispage' => 'Skuif hierdie bladsy',
-'unusedimagestext' => "<p>Let asseblief op dat ander webwerwe, soos die internasionale {{SITENAME}}s, dalk met 'n direkte URL na 'n prent skakel, so die prent sal dus hier verskyn al word dit aktief gebruik.",
+'unusedimagestext' => "Let asseblief op dat ander webwerwe, soos die internasionale {{SITENAME}}s, dalk met 'n direkte URL na 'n prent skakel, so die prent sal dus hier verskyn al word dit aktief gebruik.",
'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.",
# Book sources
-'booksources' => 'Boekbronne',
+'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',
# Special:Log
'specialloguserlabel' => 'Gebruiker:',
'speciallogtitlelabel' => 'Titel:',
+'log' => 'Logboeke',
+'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
'nextpage' => 'Volgende blad ($1)',
-'prevpage' => 'Previous page ($1)',
+'prevpage' => 'Vorige bladsye ($1)',
'allpagesfrom' => 'Wys bladsye vanaf:',
'allarticles' => 'Alle artikels',
'allinnamespace' => 'Alle bladsye (naamruimte $1)',
@@ -735,6 +879,11 @@ Jy kan die vertoning vernou deur 'n logtipe, gebruikersnaam of spesifieke blad t
'allpagessubmit' => 'Gaan',
'allpagesprefix' => 'Wys bladsye wat begin met:',
+# Special:Listusers
+'listusersfrom' => 'Wys gebruikers, beginnende by:',
+'listusers-submit' => 'Wys',
+'listusers-noresult' => 'Geen gebruiker gevind.',
+
# 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.",
@@ -753,83 +902,104 @@ Jy kan die vertoning vernou deur 'n logtipe, gebruikersnaam of spesifieke blad t
'emailsenttext' => 'Jou e-pos is gestuur.',
# Watchlist
-'watchlist' => 'My dophoulys',
-'mywatchlist' => 'My dophoulys',
-'watchlistfor' => "(vir '''$1''')",
-'nowatchlist' => 'Jy het geen items in jou dophoulys nie.',
-'watchnologin' => 'Nie ingeteken nie',
-'watchnologintext' => 'Jy moet [[Special:Userlogin|ingeteken]]
+'watchlist' => 'My dophoulys',
+'mywatchlist' => 'My dophoulys',
+'watchlistfor' => "(vir '''$1''')",
+'nowatchlist' => 'Jy het geen items in jou dophoulys nie.',
+'watchnologin' => 'Nie ingeteken nie',
+'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.
+'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.
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',
-'removedwatchtext' => 'Die bladsy "[[:$1]]" is van u dophoulys afgehaal.',
-'watch' => 'Hou dop',
-'watchthispage' => 'Hou hierdie bladsy dop',
-'unwatch' => 'Verwyder van dophoulys',
-'unwatchthispage' => 'Moenie meer dophou',
-'notanarticle' => "Nie 'n artikel",
-'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.',
-'wlshowlast' => 'Wys afgelope $1 ure, $2 dae of $3',
-'wlsaved' => "Hierdie is 'n gestoorde weergawe van jou waglys.",
+'removedwatch' => 'Afgehaal van dophoulys',
+'removedwatchtext' => 'Die bladsy "[[:$1]]" is van u dophoulys afgehaal.',
+'watch' => 'Hou dop',
+'watchthispage' => 'Hou hierdie bladsy dop',
+'unwatch' => 'Verwyder van dophoulys',
+'unwatchthispage' => 'Moenie meer dophou',
+'notanarticle' => "Nie 'n artikel",
+'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.',
+'wlshowlast' => 'Wys afgelope $1 ure, $2 dae of $3',
+'watchlist-hide-bots' => 'Versteek robotte',
+'watchlist-hide-own' => 'Versteek my wysigings',
+'watchlist-hide-minor' => 'Versteek klein wysigings',
+
+# Displayed when you click the "watch" button and it's in the process of watching
+'watching' => 'Plaas op dophoulys...',
+'unwatching' => 'Verwyder van dophoulys...',
+
+'enotif_newpagetext' => "Dis 'n nuwe bladsy.",
+'enotif_impersonal_salutation' => '{{SITENAME}} gebruiker',
+'changed' => 'verander',
# Delete/protect/revert
'deletepage' => 'Skrap bladsy',
'confirm' => 'Bevestig',
'excontent' => "inhoud was: '$1'",
-'excontentauthor' => "Inhoud was: '$1' (en '[[[Spesiaal:Contributions/$2|$2]]' was die enigste bydraer)",
+'excontentauthor' => "Inhoud was: '$1' (en '[[Special:Contributions/$2|$2]]' was die enigste bydraer)",
'exbeforeblank' => "Inhoud voor uitwissing was: '$1'",
'exblank' => 'bladsy was leeg',
-'confirmdelete' => 'Bevestig skrapping',
-'deletesub' => '(Besig om "$1" te skrap)',
+'delete-confirm' => 'Skrap "$1"',
+'delete-legend' => 'Skrap',
'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}}]].",
+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',
-'deletedtext' => '"$1" is geskrap.
+'deletedtext' => '"<nowiki>$1</nowiki>" is geskrap.
Kyk na $2 vir \'n rekord van onlangse skrappings.',
'deletedarticle' => '"$1" geskrap',
'dellogpage' => 'Skraplogboek',
'dellogpagetext' => "Hier onder is 'n lys van die mees onlangse skrappings. Alle tye is bedienertyd (UGT).",
-'deletionlog' => 'skrappingslog',
+'deletionlog' => 'skrappingslogboek',
'reverted' => 'Het terug gegaan na vroeëre weergawe',
'deletecomment' => 'Rede vir skrapping',
-'imagereverted' => 'Terugkeer na vorige weergawe was suksesvol.',
+'deletereasonotherlist' => 'Andere rede',
'rollback' => 'Rol veranderinge terug',
'rollback_short' => 'Rol terug',
'rollbacklink' => 'Rol terug',
'rollbackfailed' => 'Terugrol onsuksesvol',
'cantrollback' => 'Kan nie na verandering terug keer nie; die laaste bydraer is die enigste outer van hierdie bladsy.',
'editcomment' => 'Die wysigopsomming was: "<i>$1</i>".', # only shown if there is an edit comment
-'revertpage' => 'Wysigings deur [[Spesiaal:Contributions/$2|$2]] teruggerol na laaste weergawe deur $1',
+'revertpage' => 'Wysigings deur [[Special:Contributions/$2|$2]] teruggerol na laaste weergawe deur $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' => 'Wysigings deur $1 teruggerol; terugverander na laaste weergawe deur $2.',
'protectlogpage' => 'Beskermlogboek',
'protectedarticle' => 'het [[$1]] beskerm',
'unprotectedarticle' => 'het beskerming van [[$1]] verwyder',
'protectsub' => '(Beskerm "$1")',
'confirmprotect' => 'Bevestig beskerming',
'protectcomment' => 'Rede vir beskerming:',
+'protectexpiry' => 'Verval:',
'unprotectsub' => '(Verwyder beskerming van "$1")',
'protect-default' => '(normaal)',
'protect-level-autoconfirmed' => 'Beskerm teen anonieme wysigings',
'protect-level-sysop' => 'Slegs administrateurs',
+'pagesize' => '(grepe)',
+
+# Restrictions (nouns)
+'restriction-edit' => 'Wysig',
+'restriction-move' => 'Skuif',
# 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',
+'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.
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!',
-'undeletedarticle' => 'het "$1" herstel',
+'undeletebtn' => 'Herstel',
+'undeletelink' => 'herstel',
+'undeletedarticle' => 'het "$1" herstel',
+'cannotundelete' => 'Skrapping onsuksesvol; miskien het iemand anders dié bladsy al geskrap.',
+'undelete-search-submit' => 'Soek',
# Namespace form on various pages
-'namespace' => 'Naamruimte:',
-'invert' => 'Omgekeerde seleksie',
+'namespace' => 'Naamruimte:',
+'invert' => 'Omgekeerde seleksie',
+'blanknamespace' => '(Hoof)',
# Contributions
'contributions' => 'Gebruikersbydraes',
@@ -839,28 +1009,48 @@ As 'n nuwe bladsy met dieselfde naam sedert die skrapping geskep is, sal die her
'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):',
+
+'sp-contributions-newbies' => 'Wys slegs bydraes deur nuwe rekenings',
+'sp-contributions-newbies-sub' => 'Vir nuwe gebruikers',
+'sp-contributions-blocklog' => 'Blokkeerlogboek',
+'sp-contributions-search' => 'Soek na bydraes',
+'sp-contributions-submit' => 'Vertoon',
# What links here
-'whatlinkshere' => 'Wat skakel hierheen',
-'notargettitle' => 'Geen teiken',
-'notargettext' => "Jy het nie 'n teikenbladsy of gebruiker waarmee hierdie funksie moet werk, gespesifiseer nie.",
-'linklistsub' => '(Lys van skakels)',
-'linkshere' => 'Die volgende bladsye skakel hierheen:',
-'nolinkshere' => 'Geen bladsye skakel hierheen nie.',
-'isredirect' => 'Stuur bladsy aan',
+'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',
# 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]].
+Dit moet net gedoen word om vandalisme te voorkom en in ooreenstemming met [[{{MediaWiki:Policy-url}}|{{SITENAME}} policy]].
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
+** Invoeg van valse inligting
+** Skrap van bladsyinhoud
+** "Spam" van skakels na eksterne webwerwe
+** Invoeg van gemors op bladsye
+** 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',
+'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',
@@ -870,12 +1060,14 @@ Vul 'n spesifieke rede hier onder in (haal byvoorbeeld spesifieke bladsye wat ge
'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',
@@ -898,8 +1090,8 @@ Bevestig asseblief dat dit is wat jy wil doen.',
'unlockdbsuccesstext' => 'Die {{SITENAME}}-databasis is ontsluit.',
# Move page
-'movepage' => 'Skuif bladsy',
-'movepagetext' => "Die vorm hieronder hernoem 'n bladsy en skuif die hele wysigingsgeskiedenis na die nuwe naam.
+'movepage' => '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.
@@ -908,51 +1100,119 @@ 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.",
-'movearticle' => 'Skuif bladsy',
-'movenologin' => 'Nie ingeteken nie',
-'movenologintext' => "Jy moet 'n geregistreerde gebruiker wees en [[Special:Userlogin|ingeteken]]
+'movearticle' => 'Skuif bladsy',
+'movenologin' => 'Nie ingeteken nie',
+'movenologintext' => "Jy moet 'n geregistreerde gebruiker wees en [[Special:Userlogin|ingeteken]]
wees om 'n bladsy te skuif.",
-'newtitle' => 'Na nuwe titel',
-'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.
-'articleexists' => "'n Bladsy met daardie naam bestaan reeds, of die naam wat jy gekies het, is nie geldig 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.
+'articleexists' => "'n Bladsy met daardie naam bestaan reeds, of die naam wat jy gekies het, is nie geldig nie.
Kies asseblief 'n ander naam.",
-'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.',
-'1movedto2' => '[[$1]] geskuif na [[$2]]',
-'1movedto2_redir' => '[[$1]] geskuif na [[$2]] oor bestaande aanstuur',
-'movelogpage' => 'Skuiflogboek',
-'movereason' => 'Rede:',
-'selfmove' => 'Bron- en teikentitels is dieselfde; kan nie bladsy oor homself skuif nie.',
+'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.',
+'1movedto2' => '[[$1]] geskuif na [[$2]]',
+'1movedto2_redir' => '[[$1]] geskuif na [[$2]] oor bestaande aanstuur',
+'movelogpage' => 'Skuiflogboek',
+'movereason' => 'Rede:',
+'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?',
+'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.',
# Export
'export' => 'Eksporteer bladsye',
# Namespace 8 related
-'allmessages' => 'Alle stelselboodskappe',
-'allmessagesname' => 'Naam',
-'allmessagesdefault' => 'Verstekteks',
-'allmessagescurrent' => 'Huidige teks',
-'allmessagestext' => "Hierdie is \'n lys boodskappe wat beskikbaar is in die ''MediaWiki''-naamspasie.",
-'allmessagesfilter' => 'Boodskapnaamfilter:',
-'allmessagesmodified' => 'Wys slegs gewysigdes',
+'allmessages' => 'Stelselboodskappe',
+'allmessagesname' => 'Naam',
+'allmessagesdefault' => 'Verstekteks',
+'allmessagescurrent' => 'Huidige teks',
+'allmessagestext' => "Hierdie is 'n lys boodskappe wat beskikbaar is in die ''MediaWiki''-naamspasie.",
+'allmessagesnotsupportedDB' => "Daar is geen ondersteuning vir '''{{ns:special}}:Allmessages''' omdat '''\$wgUseDatabaseMessages''' uitgeskakel is.",
+'allmessagesfilter' => 'Boodskapnaamfilter:',
+'allmessagesmodified' => 'Wys slegs gewysigdes',
+
+# Thumbnails
+'thumbnail-more' => 'Vergroot',
+
+# Special:Import
+'import' => 'Voer bladsye in',
+'importfailed' => 'Intrek onsuksesvol: $1',
# Tooltip help for the actions
+'tooltip-pt-userpage' => 'My gebruikerbladsy',
+'tooltip-pt-anonuserpage' => 'Die gebruikerbladsy vir die IP-adres waaronder u redigeer',
+'tooltip-pt-mytalk' => 'My besprekingsbladsy',
+'tooltip-pt-anontalk' => 'Bespreking oor bydraes van hierdie IP-adres',
+'tooltip-pt-preferences' => 'My voorkeure',
+'tooltip-pt-watchlist' => 'Die lys bladsye wat jy vir veranderinge dophou',
+'tooltip-pt-mycontris' => 'Lys van my bydraes',
+'tooltip-pt-login' => 'Jy word aangemoedig om in te teken; dit is egter nie verpligtend nie.',
+'tooltip-pt-anonlogin' => 'Jy word aangemoedig om in te teken; dit is egter nie verpligtend nie.',
+'tooltip-pt-logout' => 'Teken uit',
+'tooltip-ca-talk' => 'Bespreking oor die inhoudsbladsy',
+'tooltip-ca-edit' => 'Jy kan hierdie bladsy redigeer. Gebruik asseblief die voorskouknop vóór jy dit stoor.',
+'tooltip-ca-addsection' => 'Lewer kommentaar by hierdie bespreking.',
+'tooltip-ca-viewsource' => 'Hierdie bladsy is beskerm. Jy kan die bronteks besigtig.',
+'tooltip-ca-history' => 'Ouer weergawes van hierdie bladsy.',
+'tooltip-ca-protect' => 'Beskerm hierdie bladsy',
+'tooltip-ca-delete' => 'Skrap hierdie bladsy',
+'tooltip-ca-undelete' => 'Herstel die bydraes aan hierdie bladsy voordat dit geskrap is',
+'tooltip-ca-move' => 'Skuif hierdie bladsy',
+'tooltip-ca-watch' => 'Voeg hierdie bladsy tot u dophoulys',
+'tooltip-ca-unwatch' => 'Verwyder hierdie bladsy van u dophoulys',
'tooltip-search' => 'Deursoek {{SITENAME}}',
+'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-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-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",
+'tooltip-t-emailuser' => "Stuur 'n e-pos aan hierdie gebruiker",
+'tooltip-t-upload' => 'Laai lêers op',
+'tooltip-t-specialpages' => "'n Lys van al die spesiale bladsye",
+'tooltip-t-print' => 'Drukbare weergawe van hierdie bladsy',
+'tooltip-t-permalink' => "'n Permanente skakel na hierdie weergawe van die bladsy",
+'tooltip-ca-nstab-main' => 'Bekyk die inhoudbladsy',
+'tooltip-ca-nstab-user' => 'Bekyk die gebruikerbladsy',
+'tooltip-ca-nstab-media' => 'Bekyk die mediabladsy',
+'tooltip-ca-nstab-special' => "Hierdie is 'n spesiale bladsy; u kan dit nie wysig nie",
+'tooltip-ca-nstab-project' => 'Bekyk die projekbladsy',
+'tooltip-ca-nstab-image' => 'Bekyk die leêrbladsy',
+'tooltip-ca-nstab-mediawiki' => 'Bekyk die stelselboodskap',
+'tooltip-ca-nstab-template' => 'Bekyk die sjabloon',
+'tooltip-ca-nstab-help' => 'Bekyk die hulpbladsy',
+'tooltip-ca-nstab-category' => 'Bekyk die kategoriebladsy',
'tooltip-minoredit' => "Dui aan hierdie is 'n klein wysiging",
'tooltip-save' => 'Stoor jou wysigings',
'tooltip-preview' => "Sien 'n voorskou van jou wysigings, gebruik voor jy die blad stoor!",
+'tooltip-diff' => 'Wys watter veranderinge u aan die teks gemaak het.',
'tooltip-compareselectedversions' => 'Vergelyk die twee gekose weergawes van hierdie blad.',
'tooltip-watch' => 'Voeg hierdie blad by jou dophoulys',
+'tooltip-recreate' => 'Herskep hierdie bladsy al is dit voorheen geskrap',
+'tooltip-upload' => 'Begin oplaai',
+
+# Stylesheets
+'common.css' => '/** Gemeenskaplike CSS vir alle omslae */',
# Attribution
'anonymous' => 'Anonieme gebruiker(s) van {{SITENAME}}',
'siteuser' => '{{SITENAME}} gebruiker $1',
-'and' => 'en',
+'others' => 'ander',
'siteusers' => '{{SITENAME}} gebruiker(s) $1',
# Spam protection
@@ -968,19 +1228,75 @@ Kies asseblief 'n ander naam.",
'mw_math_modern' => 'Moderne blaaiers.',
'mw_math_mathml' => 'MathML',
+# Patrol log
+'patrol-log-page' => 'Kontroleringslogboek',
+
+# Image deletion
+'deletedrevision' => 'Ou weergawe $1 geskrap',
+
# Browsing diffs
'previousdiff' => '← Ouer wysiging',
'nextdiff' => 'Nuwer wysiging →',
# Media information
-'imagemaxsize' => 'Beperk beelde op beeldbeskrywingsbladsye tot:',
+'imagemaxsize' => 'Beperk beelde op beeldbeskrywingsbladsye tot:',
+'file-nohires' => '<small>Geen hoëre resolusie beskikbaar nie.</small>',
+'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.',
-'passwordtooshort' => 'U wagwoord is te kort. Dit moet ten minste $1 karakters hê.',
-
+# EXIF tags
+'exif-imagewidth' => 'Breedte',
+'exif-imagelength' => 'Hoogte',
+'exif-imagedescription' => 'Beeldtitel',
+'exif-artist' => 'Bewerker',
+'exif-colorspace' => 'Kleurruimte',
+'exif-exposuretime' => 'Beligtingstyd',
+'exif-exposuretime-format' => '$1 sek ($2)',
+'exif-fnumber' => 'F-getal',
+'exif-filesource' => 'Lêerbron',
+'exif-gpsversionid' => 'GPS-merkerweergawe',
+'exif-gpslatituderef' => 'Noorder- of suiderbreedte',
+'exif-gpslatitude' => 'Breedtegraad',
+'exif-gpslongituderef' => 'Ooster- of westerlengte',
+'exif-gpslongitude' => 'Lengtegraad',
+'exif-gpsaltitude' => 'Hoogte',
+'exif-gpstimestamp' => 'GPS-tyd (atoomhorlosie)',
+'exif-gpsspeed' => 'Snelheid van GPS-ontvanger',
+
+'exif-componentsconfiguration-0' => 'bestaan nie',
+
+'exif-subjectdistance-value' => '$1 meter',
+
+'exif-meteringmode-0' => 'Onbekend',
+
+'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-focalplaneresolutionunit-2' => 'duim',
+
+'exif-scenecapturetype-1' => 'Landskap',
+'exif-scenecapturetype-2' => 'Portret',
+
+# Pseudotags used for GPSLatitudeRef and GPSDestLatitudeRef
+'exif-gpslatitude-n' => 'Noorderbreedte',
+'exif-gpslatitude-s' => 'Suiderbreedte',
+
+# Pseudotags used for GPSLongitudeRef and GPSDestLongitudeRef
+'exif-gpslongitude-e' => 'Oosterlengte',
+'exif-gpslongitude-w' => 'Westerlengte',
+
+# Pseudotags used for GPSSpeedRef and GPSDestDistanceRef
+'exif-gpsspeed-k' => 'Kilometer per huur',
+'exif-gpsspeed-m' => 'Myl per huur',
+'exif-gpsspeed-n' => 'Knope',
# External editor support
'edit-externally' => "Wysig hierdie lêer met 'n eksterne program",
@@ -1024,6 +1340,7 @@ Bevestig asseblief dat u regtig hierdie blad oor wil skep.",
$1',
'confirm_purge_button' => 'Regso',
+# AJAX search
'articletitles' => "Artikels wat met ''$1'' begin",
# Auto-summaries
@@ -1032,6 +1349,24 @@ $1',
'autoredircomment' => 'Stuur aan na [[$1]]',
'autosumm-new' => 'Nuwe blad: $1',
-);
+# Size units
+'size-bytes' => '$1 G',
+'size-kilobytes' => '$1 KG',
+'size-megabytes' => '$1 MG',
+'size-gigabytes' => '$1 GG',
+
+# Live preview
+'livepreview-loading' => 'Laai tans…',
+'livepreview-ready' => 'Laai tans… Gereed!',
+# Watchlist editing tools
+'watchlisttools-view' => 'Besigtig ter saaklike veranderinge',
+'watchlisttools-edit' => 'Bekyk en wysig dophoulys',
+'watchlisttools-raw' => 'Redigeer brondophoulys',
+# Special:Filepath
+'filepath' => 'Lêerpad',
+'filepath-page' => 'Lêer:',
+'filepath-submit' => 'Pad',
+
+);
diff --git a/languages/messages/MessagesAk.php b/languages/messages/MessagesAk.php
new file mode 100644
index 00000000..7547510d
--- /dev/null
+++ b/languages/messages/MessagesAk.php
@@ -0,0 +1,58 @@
+<?php
+/** Akan (Akan)
+ *
+ * @addtogroup Language
+ *
+ * @author Natsubee
+ * @author Siebrand
+ * @author Paa.kwesi
+ * @author SPQRobin
+ */
+
+$messages = array(
+# User preference toggles
+'tog-underline' => 'Twa lenk nyina ase:',
+
+# Dates
+'sunday' => 'Kwasiada',
+'monday' => 'Ɛdwoada',
+'tuesday' => 'Ɛbenada',
+'wednesday' => 'Wukuada',
+'thursday' => 'Yawoada',
+'friday' => 'Efiada',
+'saturday' => 'Memeneda',
+'january' => 'Ɔpɛpɔn',
+'february' => 'Ɔgyefuo',
+'march' => 'Ɔbenem',
+'april' => 'Oforisuo',
+'may_long' => 'Kɔtonimma',
+'june' => 'Ayɛwohomumu',
+'july' => 'Kutawonsa',
+'august' => 'Ɔsannaa',
+'september' => 'Ɛbɔ',
+'october' => 'Ahinime',
+'november' => 'Obubuo',
+'december' => 'Ɔpenimma',
+
+'search' => 'Hwehwɛ',
+'searchbutton' => 'Hwehwɛ',
+'go' => 'Kɔ',
+'searcharticle' => 'Kɔ',
+'history_short' => 'Beeme',
+'talkpagelinktext' => 'Kasa',
+'talk' => 'Kasa',
+'jumptosearch' => 'hwehwɛ',
+
+# Search results
+'powersearch' => 'Hwehwɛ',
+
+# Preferences page
+'searchresultshead' => 'Hwehwɛ',
+
+# Recent changes
+'hist' => 'beeme',
+
+# Watchlist
+'watch' => 'Hwɛ',
+
+);
diff --git a/languages/messages/MessagesAln.php b/languages/messages/MessagesAln.php
new file mode 100644
index 00000000..92a3e17e
--- /dev/null
+++ b/languages/messages/MessagesAln.php
@@ -0,0 +1,421 @@
+<?php
+/** Gheg Albanian (Gegë)
+ *
+ * @addtogroup Language
+ *
+ * @author Cradel
+ * @author Dardan
+ */
+
+$fallback = 'sq';
+
+$messages = array(
+# User preference toggles
+'tog-underline' => 'Nënvizoji lidhjet',
+'tog-highlightbroken' => 'Shfaqi lidhjet për në faqe të zbrazëta <a href="" class="new">kështu </a> (ndryshe: kështu<a href="" class="internal">?</a>).',
+'tog-justify' => 'Drejtoji kryeradhët',
+'tog-hideminor' => 'Mshefi redaktimet e vogla të bame së voni',
+'tog-extendwatchlist' => 'Zgjano listën mbikëqyrëse me i pa të tana ndryshimet përkatëse',
+'tog-usenewrc' => 'Ndryshimet e mëdhaja të bame së voni (JavaScript)',
+'tog-numberheadings' => 'Vetshenjo me numër mbititujt',
+'tog-showtoolbar' => 'Shfaqi veglat për redaktim (JavaScript)',
+'tog-editondblclick' => 'Redaktoji faqet me klikim të dyfishtë (JavaScript)',
+'tog-editsection' => 'Lejoje redaktimin e seksioneve me opcionin [redaktoje]',
+'tog-editsectiononrightclick' => 'Lejoje redaktimin e seksioneve tue klikue me të djathtë mbi titull (JavaScript)',
+'tog-showtoc' => 'Shfaqe përmbajtjen<br />(për faqet me ma shum se 3 tituj)',
+'tog-rememberpassword' => 'Rueje fjalëkalimin në këtë kompjuter',
+'tog-editwidth' => 'Kutia për redaktim ka gjanësi të plotë',
+'tog-watchcreations' => 'Shtoji në listë mbikëqyrëse faqet që i krijoj',
+'tog-watchdefault' => 'Shtoji në listë mbikëqyrëse faqet që i redaktoj',
+'tog-watchmoves' => 'Shtoji në listë mbikëqyrëse faqet që i zhvendosi',
+'tog-watchdeletion' => 'Shtoji në listë mbikëqyrëse faqet që i fshij',
+'tog-minordefault' => 'Shënoji paraprakisht si të vogla të tana redaktimet',
+'tog-previewontop' => 'Vendose parapamjen përpara kutisë redaktuese',
+'tog-previewonfirst' => 'Shfaqe parapamjen në redaktimin e parë',
+'tog-nocache' => 'Mos ruej kopje të faqeve',
+'tog-enotifwatchlistpages' => 'Njoftomë me email kur ndryshojnë faqet nën mbikëqyrje',
+'tog-enotifusertalkpages' => 'Njoftomë me email kur ndryshon faqja ime e diskutimit',
+'tog-enotifminoredits' => 'Njoftomë me email për redaktime të vogla të faqeve',
+'tog-enotifrevealaddr' => 'Shfaqe adresën time në emailat njoftues',
+'tog-shownumberswatching' => 'Shfaqe numrin e përdoruesve mbikëqyrës',
+'tog-fancysig' => 'Mos e përpuno nënshkrimin për formatim',
+'tog-externaleditor' => 'Përdor program të jashtem për redaktime',
+'tog-externaldiff' => 'Përdor program të jashtem për të tréguar ndryshimét',
+'tog-showjumplinks' => 'Lejo lidhjet é afrueshmerisë "kapërce tek"',
+'tog-uselivepreview' => 'Trego parapamjén meniheré (JavaScript) (Eksperimentale)',
+'tog-forceeditsummary' => 'Pyetem kur e le përmbledhjen e redaktimit zbrazt',
+'tog-watchlisthideown' => "M'sheh redaktimet e mia nga lista mbikqyrëse",
+'tog-watchlisthidebots' => "M'sheh redaktimet e robotave nga lista mbikqyrëse",
+'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',
+
+'underline-always' => 'gjithmonë',
+'underline-never' => 'kurrë',
+'underline-default' => 'sipas shfletuesit',
+
+'skinpreview' => '(Parapamje)',
+
+# Dates
+'sunday' => 'E diel',
+'monday' => 'E háne',
+'tuesday' => 'E márte',
+'wednesday' => 'E mërkure',
+'thursday' => 'E énjte',
+'friday' => 'E prémte',
+'saturday' => 'E shtuné',
+'sun' => 'Diel',
+'mon' => 'Hán',
+'tue' => 'Már',
+'wed' => 'Mër',
+'thu' => 'Énj',
+'fri' => 'Pré',
+'sat' => 'Sht',
+'january' => 'kallnor',
+'february' => 'shkurt',
+'march' => 'mars',
+'april' => 'Prill',
+'may_long' => 'Maj',
+'june' => 'Qershor',
+'july' => 'Korrik',
+'august' => 'Gusht',
+'september' => 'Shtator',
+'october' => 'Tetor',
+'november' => 'Nëntor',
+'december' => 'Dhjetor',
+'january-gen' => 'kallnorit',
+'february-gen' => 'shkurtit',
+'march-gen' => 'marsit',
+'april-gen' => 'prillit',
+'may-gen' => 'majit',
+'june-gen' => 'qershorit',
+'july-gen' => 'korrikut',
+'august-gen' => 'Gusht',
+'september-gen' => 'Shtator',
+'october-gen' => 'Tetor',
+'november-gen' => 'Nëntor',
+'december-gen' => 'Dhétor',
+'jan' => 'Jan',
+'feb' => 'Shk',
+'mar' => 'Mar',
+'apr' => 'Pri',
+'may' => 'Maj',
+'jun' => 'Qer',
+'jul' => 'Kor',
+'aug' => 'Gush',
+'sep' => 'Sht',
+'oct' => 'Tet',
+'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.''",
+
+'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].
+
+
+== Fillimisht ==
+
+* [http://www.mediawiki.org/wiki/Help:Configuration_settings Parazgjedhjet e MediaWiki-t]
+* [http://www.mediawiki.org/wiki/Help:FAQ Pyetjet e shpeshta rreth MediaWiki-t]
+* [http://mail.wikimedia.org/mailman/listinfo/mediawiki-announce Njoftime rreth MediaWiki-t]',
+
+'about' => 'Rreth',
+'article' => 'Artikulli',
+'newwindow' => '(çelet në një dritare të re)',
+'cancel' => 'Harroji',
+'qbfind' => 'Kërko',
+'qbbrowse' => 'Shfletoni',
+'qbedit' => 'Redaktoni',
+'qbpageoptions' => 'Opsionet e faqes',
+'qbpageinfo' => 'Informacion mbi faqen',
+'qbmyoptions' => 'Opsionet e mia',
+'qbspecialpages' => 'Fáqet speciále',
+'moredotdotdot' => 'Ma shumë...',
+'mypage' => 'Fáqja jémé',
+'mytalk' => 'Diskutimet e mia',
+'anontalk' => 'Diskutimet për këtë IP',
+'navigation' => 'Shfleto',
+'and' => 'dhe',
+
+# Metadata in edit box
+'metadata_help' => 'Metadata:',
+
+'errorpagetitle' => 'Gabim',
+'returnto' => 'Kthehu te $1.',
+'tagline' => 'Nga {{SITENAME}}, Enciklopedia e Lirë',
+'help' => 'Ndihmë',
+'search' => 'Kërko',
+'searchbutton' => 'Kërko',
+'go' => 'Shko',
+'searcharticle' => 'Shko',
+'history' => 'Historiku i faqes',
+'history_short' => 'Historiku',
+'updatedmarker' => 'ndryshuar nga vizita e fundit',
+'info_short' => 'Informacion',
+'printableversion' => 'Version shtypi',
+'permalink' => 'Lidhja e përhershme',
+'print' => 'Shtype',
+'edit' => 'Redaktoni',
+'editthispage' => 'Redaktoni faqen',
+'delete' => "ç'kyje",
+'deletethispage' => "Ç'kyje faqen",
+'undelete_short' => 'Restauroni $1 redaktime',
+'protect' => 'Mbroje',
+'protect_change' => 'ndrysho nivelin e mbrojtjes',
+'protectthispage' => 'Mbroje faqen',
+'unprotect' => 'Çliroje',
+'unprotectthispage' => 'Çliroje faqen',
+'newpage' => 'Faqe e re',
+'talkpage' => 'Diskutoni faqen',
+'talkpagelinktext' => 'Diskuto',
+'specialpage' => 'Faqe speciale',
+'personaltools' => 'Mjete vetjake ( personale )',
+'postcomment' => 'Shtoni koment',
+'articlepage' => 'Shikoni artikullin',
+'talk' => 'Diskutimet',
+'views' => 'Shikime',
+'toolbox' => 'Mjete',
+'userpage' => 'Shikoni faqen',
+'projectpage' => 'Shikoni projekt-faqen',
+'imagepage' => 'Shikoni faqen e figurës',
+'mediawikipage' => 'Shikoni faqen e mesazhit',
+'templatepage' => 'Shiko faqen e stampës',
+'viewhelppage' => 'Shiko faqen për ndihmë',
+'categorypage' => 'Shiko faqen e kategorisë',
+'viewtalkpage' => 'Shikoni diskutimet',
+'otherlanguages' => "N'gjuhë tjera",
+'redirectedfrom' => '(Përcjellë nga $1)',
+'redirectpagesub' => 'Faqe përcjellëse',
+'lastmodifiedat' => 'Kjo faqe asht ndryshue për herë të fundit më $2, $1.', # $1 date, $2 time
+'viewcount' => 'Kjo faqe asht pá $1 herë.',
+'protectedpage' => 'Faqe e mbrojtme',
+'jumpto' => 'Shko te:',
+'jumptonavigation' => 'navigacion',
+'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',
+
+'badaccess' => 'Gabim leje',
+'badaccess-group0' => 'Nuk jeni lejue me e bá kët veprim.',
+'badaccess-group1' => 'Ky veprim asht i limituem për përdoruesit e grupit $1',
+'badaccess-group2' => 'Veprimi i kërkuem asht i limituem për përdoruesit e grupit $1.',
+'badaccess-groups' => 'Ky veprim asht i limituem për përdoruesit e grupit $1.',
+
+'versionrequired' => 'Nevojitet versioni $1 i MediaWiki-it',
+'versionrequiredtext' => 'Nevojitet versioni $1 i MediaWiki-it për përdorimin e kësaj faqeje. Shikoni [[Special:Version|versionin]] tuej.',
+
+'ok' => 'Ani',
+'retrievedfrom' => 'Marrë nga "$1"',
+'youhavenewmessages' => 'Keni $1 ($2).',
+'newmessageslink' => 'porosi të reja',
+'newmessagesdifflink' => 'ndryshimi i fundit',
+'youhavenewmessagesmulti' => 'Keni porosi të reja në $1',
+'editsection' => 'redaktoni',
+'editold' => 'redaktoni',
+'editsectionhint' => 'Redaktoni seksionin:
+Edit section: $1',
+'toc' => 'Tabela e përmbajtjeve',
+'showtoc' => 'kallzo',
+'hidetoc' => 'mshehe',
+'thisisdeleted' => 'Shikoni ose restauroni $1?',
+'viewdeleted' => 'A don me pa $1?',
+'restorelink' => '$1 redaktime të grisme',
+'feedlinks' => 'Ushqyes:',
+'feed-invalid' => 'Lloji i burimit të pajtimit asht i pavlefshëm.',
+'feed-unavailable' => 'Syndication feeds nuk pranohen në {{SITENAME}}',
+'site-rss-feed' => '$1 RSS Feed',
+'site-atom-feed' => '$1 Atom Feed',
+'page-rss-feed' => '"$1" RSS Feed',
+'page-atom-feed' => '"$1" Atom Feed',
+'red-link-title' => '$1 (i pashkruem)',
+
+# Short words for each namespace, by default used in the namespace tab in monobook
+'nstab-main' => 'Artikulli',
+'nstab-user' => 'Përdoruesi',
+'nstab-media' => 'Media-faqe',
+'nstab-special' => 'Speciale',
+'nstab-project' => 'Projekt-faqe',
+'nstab-image' => 'Figura',
+'nstab-mediawiki' => 'Porosia',
+'nstab-template' => 'Stampa',
+'nstab-help' => 'Ndihmë',
+'nstab-category' => 'Kategori',
+
+# Main script and global functions
+'nosuchaction' => 'Nuk ekziston ky veprim',
+'nosuchactiontext' => 'Veprimi i caktuem nga URL nuk
+njihet nga wiki software',
+'nosuchspecialpage' => 'Nuk ekziston kjo faqe speciale',
+'nospecialpagetext' => 'Keni kërkue një faqe speciale qi nuk njihet nga wiki software.',
+
+# General errors
+'error' => 'Gabim',
+'databaseerror' => 'Gabim regjistri',
+'dberrortext' => 'Ka ndodh një gabim me pyetjen e regjistrit. Kjo munem me ndodh nëse pyetja nuk asht e vlehshme (shikoni $5),
+ose munet me kanë një yçkël e softuerit. Pyetja e fundit që i keni bá regjistrit ishte:
+<blockquote><tt>$1</tt></blockquote>
+nga funksioni "<tt>$2</tt>".
+MySQL kthehu gabimin "<tt>$3: $4</tt>".',
+'dberrortextcl' => 'Ka ndodh një gabim me formatin e pyetjes së regjistrit. Pyetja e fundit qe i keni bá regjistrit ishte:
+"$1"
+nga funksioni "$2".
+MySQL kthehu gabimin "$3: $4".',
+'noconnect' => 'Ju kërkojmë të falme! Defekt teknik, rifillojmë së shpejti.<br />
+$1',
+'nodb' => 'Nuk mujta me zgjidh regjistrin $1',
+'cachederror' => 'Kjo asht një kopje e faqes së kërkueme dhe munet me kánë e vjetër.',
+'laggedslavemode' => 'Kujdes: Kjo faqe munet mos me kánë e përtërime nga shërbyesi kryesor dhe munet me pas informacion të vjetër',
+'readonly' => 'Regjistri i bllokuem',
+'enterlockreason' => 'Futni një arsye për bllokimin, gjithashtu futni edhe kohën se kur pritet të çbllokohet',
+'readonlytext' => "Regjistri i {{SITENAME}}-s asht i bllokuem dhe nuk lejon redaktime dhe
+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".',
+'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".',
+'formerror' => 'Gabim: nuk mujta me dërgue formularin',
+'badarticleerror' => 'Ky veprim nuk munet me u bá në kët faqe.',
+'cannotdelete' => 'Nuk mujta me gris këtë faqe ose figurë të dhënë. (Munet qi asht e grisur nga dikush tjeter.)',
+'badtitle' => 'Titull i gabuem',
+'badtitletext' => 'Titulli i faqes qi kërkuet nuk ishte i saktë, ishte bosh, ose ishte një lidhje gabim me një titull wiki internacional.',
+'perfdisabled' => "Ju kërkoj të falme! Ky veprim asht bllokue përkohsisht se e ngadalëson regjistrin aq shumë sa s'munet me përdor kërrkush tjetër.",
+'perfcached' => 'Informacioni i mëposhtëm asht kopje e ruajtme dhe munet mos me kán e freskët:',
+'perfcachedts' => 'Informacioni i mëposhtëm asht një kopje e rifreskueme me $1.',
+'wrong_wfQuery_params' => 'Parametra gabim te wfQuery()<br />
+Funksioni: $1<br />
+Pyetja: $2',
+'viewsource' => 'Shikoni tekstin',
+'viewsourcefor' => 'e $1',
+'protectedpagetext' => 'Kjo faqe asht mbyll për me ndal redaktimin.',
+'viewsourcetext' => 'Ju mund të shikoni dhe kopjoni tekstin burimor të kësaj faqe:',
+'protectedinterface' => 'Kjo faqe përmban tekst për pamjen gjuhësorë të softuerit dhe asht e mbrojtme për të pengu keqpërdorimet.',
+'editinginterface' => "'''Kujdes:''' Po redaktoni një faqe qi përdoret për tekstin ose pamjen e softuerit. Ndryshimet e kësaj faqeje do të prekin tekstin ose pamjen për të gjithë përdoruesit e tjerë.",
+'sqlhidden' => '(Pyetje SQL e mshehur)',
+'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',
+
+# Search results
+'powersearch' => 'Kërko',
+
+# Upload
+'upload' => 'Ngarkoni skeda',
+
+# File deletion
+'filedelete-reason-otherlist' => 'Arsyje tjera',
+
+# MIME search
+'download' => 'shkarkim',
+
+'withoutinterwiki' => 'Artikuj pa lidhje interwiki',
+
+# Miscellaneous special pages
+'specialpages' => 'Faqet speciale',
+
+'alphaindexline' => '$1 deri në $2',
+
+# 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.',
+
+# Delete/protect/revert
+'confirmprotect' => 'Konfirmoni',
+'protectcomment' => 'Arsyja:',
+'protectexpiry' => 'Afáti',
+'protect_expiry_invalid' => 'Data e skadimit asht e pasaktë.',
+'protect_expiry_old' => 'Data e skadimit asht në kohën kalueme.',
+'protect-unchain' => 'Ndryshoje lejen e zhvendosjeve',
+'protect-text' => 'Këtu muneni me shiku dhe me ndryshu nivelin e mbrojtjes për faqen <strong><nowiki>$1</nowiki></strong>.',
+'protect-locked-access' => 'Llogaria juej nuk ka privilegjet e nevojitme për me ndryshu nivelin e mbrojtjes. Kufizimet e kësaj faqe janë <strong>$1</strong>:',
+'protect-default' => '(parazgjedhje)',
+'protect-level-autoconfirmed' => 'Blloko përdoruesit pa llogari',
+'protect-level-sysop' => 'Lejo veç administruesit',
+'protect-expiring' => 'skadon me $1 (UTC)',
+'protect-cascade' => 'Mbrojtje e ndërlidhme - mbroj çdo faqe që përfshihet në këtë faqe.',
+'protect-cantedit' => 'Nuk nuk muneni me ndryshu nivelin e mbrojtjes në kët faqe, sepse nuk keni leje.',
+'restriction-type' => 'Lejet:',
+'restriction-level' => 'Mbrojtjet:',
+
+# Block/unblock
+'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',
+
+# 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.',
+
+);
diff --git a/languages/messages/MessagesAls.php b/languages/messages/MessagesAls.php
new file mode 100644
index 00000000..01477c39
--- /dev/null
+++ b/languages/messages/MessagesAls.php
@@ -0,0 +1,8 @@
+<?php
+/** Alemannisch
+ *
+ * @addtogroup Language
+ * @comment Deprecated code. Falls back to 'gsw'.
+ */
+
+$fallback = 'gsw';
diff --git a/languages/messages/MessagesAm.php b/languages/messages/MessagesAm.php
new file mode 100644
index 00000000..036134b1
--- /dev/null
+++ b/languages/messages/MessagesAm.php
@@ -0,0 +1,1089 @@
+<?php
+/** Amharic (አማርኛ)
+ *
+ * @addtogroup Language
+ *
+ * @author Codex Sinaiticus
+ * @author Siebrand
+ * @author Nike
+ * @author G - ג
+ * @author SPQRobin
+ * @author Teferra
+ * @author לערי ריינהארט
+ */
+
+
+
+$messages = array(
+# User preference toggles
+'tog-underline' => 'በመያያዣ ስር አስምር',
+'tog-highlightbroken' => 'የተሰበረ (ቀይ) መያያዣን <a href="" class="new">እንዲህ</a>? አለዚያ: እንዲህ<a href="" class="internal">?</a>)',
+'tog-justify' => 'አንቀጾችን አስተካክል',
+'tog-hideminor' => 'አነስተኛ እርማቶችን ደብቅ',
+'tog-extendwatchlist' => 'የሚደረጉ ለውጦችን ለማሳየት መቆጣጠሪያ-ዝርዝርን ዘርጋ',
+'tog-usenewrc' => 'የተሻሻሉ የቅርብ ለውጦች (JavaScript)',
+'tog-numberheadings' => 'አርዕስቶችን በራስገዝ ቁጥር ስጥ',
+'tog-showtoolbar' => 'አርም ትዕዛዝ-ማስጫ ይታይ (JavaScript)',
+'tog-editondblclick' => 'ሁለቴ መጫን ገጹን ማረም ያስችል (JavaScript)',
+'tog-editsection' => 'በ[አርም] መያያዣ ክፍል ማረምን አስችል',
+'tog-editsectiononrightclick' => 'የክፍል አርዕስት ላይ በቀኝ በመጫን ክፍል ማረምን አስችል (JavaScript)',
+'tog-showtoc' => 'ከ3 አርዕስቶች በላይ ሲሆን የማውጫጫ ሰንጠረዥ ይታይ',
+'tog-rememberpassword' => 'መግባቴን እዚህ አስሊ ላይ አስታውስ',
+'tog-editwidth' => 'የማረሚያ ሳጥን ሙሉ ስፋት አለው',
+'tog-watchcreations' => 'እኔ የፈጠርኳቸውን ገጾች ወደምከታተላቸው ገጾች ዝርዝር ውስጥ ጨምር',
+'tog-watchdefault' => 'ያረምኳቸውን ገጾች ወደምከታተላቸው ገጾች ዝርዝር ውስጥ ጨምር',
+'tog-watchmoves' => 'ያዛወርኳቸውን ገጾች ወደምከታተላቸው ገጾች ዝርዝር ውስጥ ጨምር',
+'tog-watchdeletion' => 'የሰረዝኳቸውን ገጾች ወደምከታተላቸው ገጾች ዝርዝር ውስጥ ጨምር',
+'tog-minordefault' => 'ሁሉም እርማቶች በቀዳሚነት አነስተኛ ይባሉ',
+'tog-previewontop' => 'ከማረሚያው ገጽ በፊት ቅድመ-ማያ አሳይ',
+'tog-previewonfirst' => 'በመጀመሪያ እርማት ቅድመ-ዕይታ ይታይ',
+'tog-nocache' => 'ገጽ መቆጠብን አታስችል',
+'tog-enotifwatchlistpages' => 'የምከታተለው ገጽ ሲቀየር ኤመልዕክት ይላክልኝ',
+'tog-enotifusertalkpages' => 'የተጠቃሚ መወያያ ገጼ ሲቀየር ኤመልዕክት ይላክልኝ',
+'tog-enotifminoredits' => 'ለአነስተኛ የገጽ እርማቶችም ኤመልዕክት ይላክልኝ',
+'tog-enotifrevealaddr' => 'ኤመልዕክት አድራሻዬን በማሳወቂያ መልዕክቶች ውስጥ አሳይ',
+'tog-shownumberswatching' => 'የሚከታተሉ ተጠቃሚዎችን ቁጥር አሳይ',
+'tog-fancysig' => 'ጥሬ ፊርማ (ያለራስገዝ ማያያዣ)',
+'tog-externaleditor' => 'በቀዳሚነት ውጪያዊ አራሚን ተጠቀም',
+'tog-forceeditsummary' => 'ማጠቃለያው ባዶ ከሆነ ማስታወሻ ይስጠኝ',
+'tog-watchlisthideown' => 'የራስዎ ለውጦች ከሚከታተሉት ገጾች ይደበቁ',
+'tog-watchlisthidebots' => 'የቦት (መሣርያ) ለውጦች ከሚከታተሉት ገጾች ይደበቁ',
+'tog-watchlisthideminor' => 'ጥቃቅን ለውጦች ከሚከታተሉት ገጾች ይደበቁ',
+'tog-ccmeonemails' => 'ወደ ሌላ ተጠቃሚ የምልከው ኢሜል ቅጂ ለኔም ይላክ',
+'tog-diffonly' => 'ከለውጦቹ ስር የገጽ ይዞታ አታሳይ',
+
+'underline-always' => 'ሁሌም ይህን',
+'underline-never' => 'ሁሌም አይሁን',
+'underline-default' => 'የቃኝ ቀዳሚ ባህሪዎች',
+
+'skinpreview' => '(ቅድመ-ዕይታ)',
+
+# Dates
+'sunday' => 'እሑድ',
+'monday' => 'ሰኞ',
+'tuesday' => 'ማክሰኞ',
+'wednesday' => 'ረቡዕ',
+'thursday' => 'ሐሙስ',
+'friday' => 'ዓርብ',
+'saturday' => 'ቅዳሜ',
+'sun' => 'እሑድ',
+'mon' => 'ሰኞ',
+'tue' => 'ማክሰኞ',
+'wed' => 'ረቡዕ',
+'thu' => 'ሐሙስ',
+'fri' => 'ዓርብ',
+'sat' => 'ቅዳሜ',
+'january' => 'ጃንዩዌሪ',
+'february' => 'ፌብሩዌሪ',
+'march' => 'ማርች',
+'april' => 'ኤይፕርል',
+'may_long' => 'ሜይ',
+'june' => 'ጁን',
+'july' => 'ጁላይ',
+'august' => 'ኦገስት',
+'september' => 'ሰፕቴምበር',
+'october' => 'ኦክቶበር',
+'november' => 'ኖቬምበር',
+'december' => 'ዲሴምበር',
+'january-gen' => 'ጃንዩዌሪ',
+'february-gen' => 'ፌብሩዌሪ',
+'march-gen' => 'ማርች',
+'april-gen' => 'ኤይፕርል',
+'may-gen' => 'ሜይ',
+'june-gen' => 'ጁን',
+'july-gen' => 'ጁላይ',
+'august-gen' => 'ኦገስት',
+'september-gen' => 'ሰፕቴምበር',
+'october-gen' => 'ኦክቶበር',
+'november-gen' => 'ኖቬምበር',
+'december-gen' => 'ዲሴምበር',
+'jan' => 'ጃንዩ.',
+'feb' => 'ፌብሩ.',
+'mar' => 'ማርች',
+'apr' => 'ኤፕሪ.',
+'may' => 'ሜይ',
+'jun' => 'ጁን',
+'jul' => 'ጁላይ',
+'aug' => 'ኦገስት',
+'sep' => 'ሴፕቴ.',
+'oct' => 'ኦክቶ.',
+'nov' => 'ኖቬም.',
+'dec' => 'ዲሴም.',
+
+# Bits of text used by many pages
+'categories' => 'ምድቦች',
+'pagecategories' => '{{PLURAL:$1|ምድብ|ምድቦች}}',
+'category_header' => 'በምድብ «$1» ውስጥ የሚገኙ ገጾች',
+'subcategories' => 'ንዑስ-ምድቦች',
+'category-media-header' => 'በመደቡ «$1» የተገኙ ፋይሎች፦',
+'category-empty' => 'ይህ መደብ አሁን ባዶ ነው።',
+
+'about' => 'ስለ',
+'newwindow' => '(ባዲስ መስኮት ውስጥ ይከፈታል።)',
+'cancel' => 'ይጥፋ',
+'qbfind' => 'አግኝ',
+'qbbrowse' => 'ቃኝ',
+'qbedit' => 'አርም',
+'qbpageoptions' => 'ይህ ገጽ',
+'qbspecialpages' => 'ልዩ ገጾች',
+'mytalk' => 'የኔ ውይይት',
+'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' => 'ፍለጋ',
+
+# 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',
+
+# Short words for each namespace, by default used in the namespace tab in monobook
+'nstab-main' => 'ገጽ',
+'nstab-user' => 'የአባል ገጽ',
+'nstab-special' => 'ልዩ',
+'nstab-project' => 'የፕሮጀክት ገጽ',
+'nstab-image' => 'ፋይል',
+'nstab-mediawiki' => 'መልዕክት',
+'nstab-template' => 'ሰም',
+'nstab-help' => 'የመመሪያ ገጽ',
+'nstab-category' => 'ምድብ',
+
+# General errors
+'badtitle' => 'መጥፎ አርዕስት',
+'badtitletext' => 'የፈለጉት አርዕስት ልክ አልነበረም። ምናልባት ለአርዕስት የማይሆን የፊደል ምልክት አለበት።',
+'perfcached' => 'ማስታወቂያ፡ ይህ መረጃ በየጊዜ የሚታደስ ስለሆነ ዘመናዊ ሳይሆን የቆየ ሊሆን ይችላል።',
+'perfcachedts' => 'የሚቀጥለው መረጃ ተቆጥቧል፣ መጨረሻ የታደሠው $1 እ.ኤ.አ. ነው።',
+'querypage-no-updates' => 'ይህ ገጽ አሁን የታደሠ አይደለም። ወደፊትም መታደሱ ቀርቷል። በቅርብ ግዜ አይታደስም።',
+'viewsource' => 'ምንጩን ተመልከት',
+'viewsourcefor' => 'ለ«$1»',
+'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",
+
+# Login and logout pages
+'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» ነው። አሁን በዚህ መግቢያ ቃል ገብተው ወደ አዲስ መግቢያ ቃል መቀየር ይሻሎታል።
+
+ይህ ጥያቄ የእርስዎ ካልሆነ፣ ወይም መግቢያ ቃልዎን ያስታወሱ እንደ ሆነ፣ ይህንን መልእክት ቸል ማለት ይችላሉ። የቆየው መግቢያ ቃል ከዚህ በኋላ ተግባራዊ ሆኖ ይቀጥላል።',
+'noemail' => 'ለብዕር ስም «$1» የተመዘገበ ኢ-ሜል የለም።',
+'passwordsent' => 'አዲስ መግቢያ ቃል ለ«$1» ወደ ተመዘገበው ኢ-ሜል ተልኳል። እባክዎ ከተቀበሉት በኋላ ዳግመኛ ይግቡ።',
+'eauthentsent' => 'የማረጋገጫ ኢ-ሜል ወዳቀረቡት አድራሻ ተልኳል። ያው አድራሻ በውነት የርስዎ እንደሆነ ለማረጋገጥ፣ እባክዎ በዚያ ደብዳቤ ውስጥ የተጻፈውን መያያዣ ይጫኑ። ከዚያ ቀጥሎ ኢ-ሜል ከሌሎች ተጠቃሚዎች መቀበል ይችላሉ።',
+'emailauthenticated' => 'የርስዎ ኢ-ሜል አድራሻ በ$1 ተረጋገጠ።',
+'emailnotauthenticated' => 'ያቀረቡት አድራሻ ገና አልተረጋገጠምና ከሌሎች ተጠቃሚዎች ኢሜል መቀበል አይችሉም።',
+'noemailprefs' => '(በ{{SITENAME}} በኩል ኢሜል ለመቀበል፣ የራስዎን አድራሻ አስቀድመው ማቅረብ ያስፈልጋል።)',
+'emailconfirmlink' => 'አድራሻዎን ለማረጋገጥ',
+
+# Edit page toolbar
+'bold_sample' => 'ጨለማ ጽሕፈት',
+'bold_tip' => 'ያመለከቱትን ቃላት በጨለማ ጽሕፈት ለማድረግ',
+'italic_sample' => 'ያንጋደደ ጽሕፈት',
+'italic_tip' => 'ያመለከቱትን ቃላት ባንጋደደ (ኢታሊክ) ለማድረግ',
+'link_sample' => 'የመያያዣ ስም',
+'link_tip' => 'ባመለከቱት ቃላት ላይ የዊኪ-ማያያዣ ለማድረግ',
+'extlink_sample' => 'http://www.lemisale.com የውጭ መያያዣ',
+'extlink_tip' => "የውጭ መያያዣ ለመፍጠር (በ'http://' የሚቀደም)",
+'headline_sample' => 'ንዑስ ክፍል',
+'headline_tip' => 'የንዑስ-ክፍል አርዕስት ለመፍጠር',
+'math_sample' => 'የሒሳብ ቀመር በዚህ ይግባ',
+'math_tip' => 'የሒሳብ ቀመር (LaTeX) ለመጨመር',
+'nowiki_sample' => 'በዚህ ውስጥ የሚከተት ሁሉ የዊኪ-ሥርአተ ቋንቋን ቸል ይላል',
+'nowiki_tip' => 'የዊኪ-ሥርአተ ቋንቋን ቸል ለማድረግ',
+'image_tip' => 'የስዕል መያያዣ ለመፍጠር',
+'media_tip' => 'የድምጽ ፋይል መያያዣ ለመፍጠር',
+'sig_tip' => 'ፊርማዎ ከነሰዓቱ (4x ~)',
+'hr_tip' => "አድማሳዊ መስመር (በ'----') ለመፍጠር",
+
+# Edit pages
+'summary' => 'ማጠቃለያ',
+'subject' => 'ጥቅል ርዕስ',
+'minoredit' => 'ይህ ለውጥ ጥቃቅን ነው።',
+'watchthis' => 'ይህንን ገጽ ለመከታተል',
+'savearticle' => 'ገጹን አስቀምጥ',
+'preview' => 'ሙከራ / preview',
+'showpreview' => 'ቅድመ እይታ',
+'showdiff' => 'ማነጻጸሪያ',
+'anoneditwarning' => "'''ማስታወቂያ:''' እርስዎ አሁን በአባል ስምዎ ያልገቡ ነዎት። ማዘጋጀት ይቻሎታል፤ ነገር ግን ለውጦችዎ በአባል ስም ሳይሆን በቁጥር አድራሻዎ ይመዘገባሉ። ከፈለጉ፥ በአባልነት [[Special:Userlogin|መግባት]] ይችላሉ።",
+'missingsummary' => "'''ማስታወሻ፦''' ማጠቃለያ ገና አላቀረቡም። እንደገና «ገጹን ለማቅረብ» ቢጫኑ፣ ያለ ማጠቃለያ ይላካል።",
+'summary-preview' => 'የማጠቃለያ ቅድመ እይታ',
+'blockedtext' => "<big>'''የርስዎ ብዕር ስም ወይም ቁጥር አድራሻ ከማዘጋጀት ተከለክሏል።'''</big>
+
+በእርስዎ ላይ ማገጃ የጣለው መጋቢ $1 ነበረ። ምክንያቱም፦ ''$2''
+
+* ማገጃ የጀመረበት ግዜ፦ $8
+* ማገጃ የሚያልቅበት ግዜ፦ $6
+* የታገደው ተጠቃሚ፦ $7
+
+$1ን ወይም ማንም ሌላ [[{{MediaWiki:Grouppage-sysop}}|መጋቢ]] ስለ ማገጃ ለመጠይቅ ይችላሉ። ነገር ግን በ[[Special:Preferences|ምርጫዎችዎ]] ትክክለኛ ኢሜል ካልኖረ ከጥቅሙም ካልተከለከሉ በቀር ለሰው ኢሜል ለመላክ አይችሉም። የአሁኑኑ ቁጥር አድራሻዎ $3 ህኖ የማገጃው ቁጥር #$5 ነው። ምንም ጥያቄ ካለዎ ይህን ቁጥር ይጨምሩ።",
+'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>
+
+ይህ እትም የአሁኑ አይደለም፣ ከዚህ ሁናቴ ታድሷል።
+
+ይህንን እንዳቀረቡ ከዚህ እትም በኋላ የተቀየረው ለውጥ ሁሉ ያልፋል።</strong>',
+'copyrightwarning' => "*<big> '''መጣጥፎችን ለመፍጠርና ለማሻሻል አይፈሩ''!''''' — </big>ሥራዎ ትክክለኛ ካልሆነ፣ በሌሎቹ አዘጋጆች ሊታረም ይችላል።",
+'longpagewarning' => '<strong>ማስጠንቀቂያ፦ የዚሁ ገጽ መጠን እስከ $1 kilobyte ድረስ ደርሷል፤ አንድ ጽሑፍ ከ32 kilobyte የበለጠ ሲሆን ይህ ግዙፍነት ለአንዳንድ ተጠቃሚ ዌብ-ብራውዘር ያስቸግራል። እባክዎን፣ ገጹን ወደ ተለያዩ ገጾች ማከፋፈልን ያስቡበት። </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>
+
+*እባክዎ፥ ገጹ እንደገና እንዲፈጠር የሚገባ መሆኑን ያረጋግጡ።
+
+*የገጹ መጥፋት ዝርዝር ከዚህ ታች ይታያል።",
+
+# "Undo" feature
+'undo-success' => "ያ ለውጥ በቀጥታ ሊገለበጥ ይቻላል። እባክዎ ከታች ያለውን ማነጻጸርያ ተመልክተው ይህ እንደሚፈልጉ ያረጋግጡና ለውጡ እንዲገለበጥ '''ገጹን ለማቅረብ''' ይጫኑ።",
+'undo-failure' => 'ከዚሁ ለውጥ በኋላ ቅራኔ ለውጦች ስለ ገቡ ሊገለበጥ አይቻልም።',
+'undo-summary' => 'አንድ ለውጥ ከ[[Special:Contributions/$2|$2]] ([[User talk:$2|ውይይት]]) ገለበጠ',
+
+# History pages
+'viewpagelogs' => 'መዝገቦች ለዚሁ ገጽ',
+'currentrev' => 'የአሁኑ እትም',
+'revisionasof' => 'እትም በ$1',
+'revision-info' => 'የ$1 ዕትም (ከ$2 ተዘጋጅቶ)',
+'previousrevision' => '← የፊተኛው እትም',
+'nextrevision' => 'የሚከተለው እትም →',
+'currentrevisionlink' => '«የአሁኑን እትም ለመመልከት»',
+'cur' => 'ከአሁን',
+'next' => 'ቀጥሎ',
+'last' => 'ካለፈው',
+'page_first' => 'ፊተኞች',
+'page_last' => 'ኋለኞች',
+'histlegend' => "ከ2 እትሞች መካከል ልዩነቶቹን ለመናበብ፦ በ2 ክብ ነገሮች ውስጥ ምልክት አድርገው «የተመረጡትን እትሞች ለማነፃፀር» የሚለውን ተጭነው የዛኔ በቀጥታ ይሄዳሉ።<br /> መግለጫ፦ (ከአሁን) - ከአሁኑ እትም ያለው ልዩነት፤ (ካለፈው) - ቀጥሎ ከቀደመው እትም ያለው ልዩነት፤<br /> «'''ጥ'''» ማለት ጥቃቅን ለውጥ ነው።",
+'histfirst' => 'ቀድመኞች',
+'histlast' => 'ኋለኞች',
+'historysize' => '($1 byte)',
+'historyempty' => '(ባዶ)',
+
+# Revision feed
+'history-feed-item-nocomment' => '$1 በ$2', # user at time
+
+# Diffs
+'history-title' => 'የ«$1» እትሞች ታሪክ',
+'difference' => '(በ2ቱ እትሞቹ ዘንድ ያለው ልዩነት)',
+'lineno' => 'መስመር፡ $1፦',
+'compareselectedversions' => 'የተመረጡትን እትሞች ለማነፃፀር',
+'editundo' => 'ለውጡ ይገለበጥ',
+'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' => 'ፍለጋ',
+
+# 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' => 'የስዕሎች መጠን',
+
+# Groups
+'group' => 'ደረጃ፦',
+'group-sysop' => 'መጋቢ',
+
+'group-sysop-member' => 'መጋቢ',
+
+'grouppage-sysop' => '{{ns:project}}:መጋቢዎች',
+
+# User rights log
+'rightslog' => 'የአባል መብቶች መዝገብ',
+'rightslogtext' => 'ይህ መዝገብ የአባል መብቶች ሲለወጡ ይዘረዝራል።',
+'rightslogentry' => 'የ$1 ማዕረግ ከ$2 ወደ $3 ለወጠ',
+
+# Recent changes
+'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',
+
+# Recent changes linked
+'recentchangeslinked' => 'የተዛመዱ ለውጦች',
+'recentchangeslinked-title' => 'በ«$1» በተዛመዱ ገጾች ቅርብ ለውጦች',
+'recentchangeslinked-noresult' => 'በተመለከተው ጊዜ ውስጥ ከዚህ በተያየዙት ገጾች ላይ ምንም ለውጥ አልነበረም።',
+'recentchangeslinked-summary' => "ከዚሁ ገጽ የተያየዙት ሌሎች ጽሑፎች ቅርብ ለውጦች ከታች ይዘረዝራሉ።
+
+በሚከታተሉት ገጾች መካከል ያሉት ሁሉ በ'''ጨለማ ጽሕፈት''' ይታያሉ።",
+
+# Upload
+'upload' => 'ፋይል / ሥዕል ለመላክ',
+'uploadbtn' => 'ፋይሉ ይላክ',
+'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' => 'ፋይሉ',
+'filehist' => 'የፋይሉ ታሪክ',
+'filehist-help' => 'የቀድሞው ዕትም ካለ ቀን/ሰዓቱን በመጫን መመልከት ይቻላል።',
+'filehist-deleteall' => 'ሁሉን ለማጥፋት',
+'filehist-deleteone' => 'ይህን ለማጥፋት',
+'filehist-revert' => 'ወዲህ ይገለበጥ',
+'filehist-current' => 'ያሁኑኑ',
+'filehist-datetime' => 'ቀን /ሰዓት',
+'filehist-user' => 'አቅራቢው',
+'filehist-dimensions' => 'ክልሉ (በpixel)',
+'filehist-filesize' => 'መጠን',
+'filehist-comment' => 'ማጠቃለያ',
+'imagelinks' => 'መያያዣዎች',
+'linkstoimage' => 'የሚከተሉ ገጾች ወደዚሁ ፋይል ተያይዘዋል።',
+'nolinkstoimage' => 'ወዲህ ፋይል የተያያዘ ገጽ የለም።',
+'sharedupload' => 'ይህ ፋይል ከጋራ ምንጭ (Commons) የተቀሰመ ነው። በማንኛውም ዊኪ ላይ ሊጠቅም ይቻላል።',
+'shareduploadwiki-desc' => 'በዚያ በ$1 የሚታየው መግለጫ እንዲህ ይላል፦',
+'shareduploadwiki-linktext' => 'ፋይል መግለጫ ገጹ',
+'noimage' => 'በዚህ ስም የሚታወቅ ፋይል የለም፤ እርስዎ ግን $1 ይችላሉ።',
+'noimage-linktext' => 'ሊልኩት',
+'uploadnewversion-linktext' => 'ለዚሁ ፋይል አዲስ ዕትም ለመላክ',
+'imagelist_date' => 'ቀን እ.ኤ.አ',
+'imagelist_name' => 'የፋይል ስም',
+'imagelist_user' => 'አቅራቢው',
+'imagelist_size' => 'መጠን (byte)',
+'imagelist_description' => 'ማጠቃለያ',
+
+# 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' => 'ሌላ / ተጨማሪ ምክንያት፦',
+
+# MIME search
+'mimesearch' => 'የMIME ፍለጋ',
+
+# List redirects
+'listredirects' => 'መምሪያ መንገዶች ሁሉ',
+
+# Unused templates
+'unusedtemplates' => 'ያልተለጠፉ መልጠፊያዎች',
+'unusedtemplatestext' => 'እነኚህ መልጠፊያዎች አሁን ባንዳችም ገጽ ላይ አልተለጠፉም።',
+'unusedtemplateswlh' => 'ሌሎች መያያዣዎች',
+
+# Random page
+'randompage' => 'ማናቸውንም ለማየት',
+
+# Random redirect
+'randomredirect' => 'ማናቸውም መምሪያ መንገድ',
+
+# Statistics
+'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).",
+
+'disambiguations' => 'ወደ መንታ መንገድ የሚያያይዝ',
+'disambiguations-text' => "የሚከተሉት ጽሑፎች ወደ '''መንታ መንገድ''' እየተያያዙ ነውና ብዙ ጊዜ እንዲህ ሳይሆን ወደሚገባው ርዕስ ቢወስዱ ይሻላል። <br />መንታ መንገድ ማለት የመንታ መልጠፊያ ([[MediaWiki:disambiguationspage]]) ሲኖርበት ነው።",
+
+'doubleredirects' => 'ድርብ መምሪያ መንገዶች',
+'doubleredirectstext' => 'ይህ ድርብ መምሪያ መንገዶች ይዘርዘራል።
+
+ድርብ መምሪያ መንገድ ካለ ወደ መጨረሻ መያያዣ እንዲሄድ ቢስተካከል ይሻላል።',
+
+'brokenredirects' => 'ሰባራ መምሪያ መንገዶች',
+'brokenredirectstext' => 'እነዚህ መምሪያ መንገዶች ወደማይኖር ጽሑፍ ይመራሉ።',
+'brokenredirects-edit' => '(ለማስተካከል)',
+
+'withoutinterwiki' => 'በሌሎች ቋንቋዎች ያልተያያዙ',
+'withoutinterwiki-header' => 'እነዚህ ጽሑፎች «በሌሎች ቋንቋዎች» ሥር ወደሆኑት ሌሎች ትርጉሞች ገና አልተያያዙም።',
+'withoutinterwiki-submit' => 'ይታዩ',
+
+'fewestrevisions' => 'ለውጦች ያነሱላቸው መጣጥፎች',
+
+# Miscellaneous special pages
+'nbytes' => '$1 byte',
+'ncategories' => '$1 {{PLURAL:$1|መደብ|መደቦች}}',
+'nlinks' => '$1 መያያዣዎች',
+'nmembers' => '$1 {{PLURAL:$1|መጣጥፍ|መጣጥፎች}}',
+'nrevisions' => '$1 ለውጦች',
+'specialpage-empty' => '(ይህ ገጽ ባዶ ነው።)',
+'lonelypages' => 'ያልተያያዙ ፅሑፎች',
+'lonelypagestext' => 'የሚቀጥሉት ገጾች በ{{SITENAME}} ውስጥ ከሚገኙ ሌሎች ገጾች ጋር አልተያያዙም።',
+'uncategorizedpages' => 'ገና ያልተመደቡ ጽሑፎች',
+'uncategorizedcategories' => 'ያልተመደቡ መደቦች (ንዑስ ያልሆኑ)',
+'uncategorizedimages' => 'ያልተመደቡ ፋይሎች',
+'uncategorizedtemplates' => 'ያልተመደቡ መልጠፊያዎች',
+'unusedcategories' => 'ባዶ መደቦች',
+'unusedimages' => 'ያልተያያዙ ፋይሎች',
+'wantedcategories' => 'ቀይ መያያዣዎች የበዙላቸው መደቦች',
+'wantedpages' => 'ቀይ መያያዣዎች የበዙላቸው አርእስቶች',
+'mostlinked' => 'መያያዣዎች የበዙላቸው ገጾች',
+'mostlinkedcategories' => 'መያያዣዎች የበዙላቸው መደቦች',
+'mostlinkedtemplates' => 'መያያዣዎች የበዙላቸው መልጠፊያዎች',
+'mostcategories' => 'መደቦች የበዙላቸው መጣጥፎች',
+'mostimages' => 'መያያዣዎች የበዙላቸው ስዕሎች',
+'mostrevisions' => 'ለውጦች የበዙላቸው መጣጥፎች',
+'allpages' => 'ገጾች ሁሉ በሙሉ',
+'prefixindex' => 'ገጾች በፊደል ለመፈልግ',
+'shortpages' => 'ጽሁፎች ካጭሩ ተደርድረው',
+'longpages' => 'ጽሁፎች ከረጅሙ ተደርድረው',
+'deadendpages' => 'መያያዣ የሌለባቸው ፅሑፎች',
+'deadendpagestext' => 'የሚቀጥሉት ገጾች በ{{SITENAME}} ውስጥ ከሚገኙ ሌሎች ገጾች ጋር አያያይዙም።',
+'protectedpages' => 'የተቆለፉ ገጾች',
+'listusers' => 'አባላት',
+'specialpages' => 'ልዩ ገጾች',
+'spheading' => 'ለሰው ሁሉ የሚጠቅሙ ልዩ ገጾች',
+'newpages' => 'አዳዲስ መጣጥፎች',
+'newpages-username' => 'በአቅራቢው፦',
+'ancientpages' => 'የቈዩ ፅሑፎች (በተለወጠበት ሰአት)',
+'move' => 'ለማዛወር',
+'movethispage' => 'ይህንን ገጽ ለማዛወር',
+'unusedimagestext' => '<p>እነኚህ ፋይሎች ከ{{SITENAME}} አልተያያዙም። ሆኖም ሳያጥፏቸው ከ{{SITENAME}} ውጭ በቀጥታ ተያይዘው የሚገኙ ድረ-ገጾች መኖራቸው እንደሚቻል ይገንዝቡ።</p>',
+'unusedcategoriestext' => 'እነዚህ መደብ ገጾች ባዶ ናቸው። ምንም ጽሑፍ ወይም ግንኙነት የለባቸውም።',
+'pager-newer-n' => '{{PLURAL:$1|ኋለኛ 1|ኋለኛ $1}}',
+'pager-older-n' => '{{PLURAL:$1|ፊተኛ 1|ፊተኛ $1}}',
+
+# Book sources
+'booksources' => 'የመጻሕፍት ቤቶችና ሸጪዎች',
+'booksources-search-legend' => 'የመጽሐፍ ቦታ ፍለጋ',
+'booksources-isbn' => 'የመጽሐፉ ISBN #:',
+'booksources-go' => 'ይሂድ',
+
+'categoriespagetext' => 'በዚሁ ሥራ ዕቅድ ውስጥ የሚከተሉ መደቦች ይኖራሉ።',
+'isbn' => 'በመጽሐፉ ISBN ቁጥር # ለመፈለግ',
+'alphaindexline' => '$1 እስከ $2 ድረስ',
+'version' => 'ዝርያ',
+
+# Special:Log
+'specialloguserlabel' => 'ብዕር ስም፡',
+'speciallogtitlelabel' => 'አርዕስት፡',
+'log' => 'Logs / መዝገቦች',
+'all-logs-page' => 'All logs - መዝገቦች ሁሉ',
+'alllogstext' => 'ይኸው መዝገብ ሁሉንም ያጠቅልላል። 1) የፋይሎች መዝገብ 2) የማጥፋት መዝገብ 3) የመቆለፍ መዝገብ 4) የማገድ መዝገብ 5) የመጋቢ አድራጎት መዝገቦች በያይነቱ ናቸው።
+
+ከሳጥኑ የተወሰነ መዝገብ አይነት መምረጥ ይችላሉ። ከዚያ ጭምር በብዕር ስም ወይም በገጽ ስም መፈለግ ይቻላል።',
+'logempty' => '(በመዝገቡ ምንም የለም...)',
+
+# Special:Allpages
+'nextpage' => 'የሚቀጥለው ገጽ (ከ$1 ጀምሮ)',
+'prevpage' => 'ፊተኛው ገጽ (ከ$1 ጀምሮ)',
+'allpagesfrom' => 'ገጾች ከዚሁ ፊደል ጀምሮ ይታዩ፦',
+'allarticles' => 'የመጣጥፎች ማውጫ በሙሉ፣',
+'allinnamespace' => 'ገጾች ሁሉ (ክፍለ-ዊኪ፡$1)',
+'allpagessubmit' => 'ይታይ',
+'allpagesprefix' => 'በዚሁ ፊደል የጀመሩት ገጾች:',
+
+# Special:Listusers
+'listusersfrom' => 'ከዚሁ ፊደል ጀምሮ፦',
+
+# E-mail user
+'emailuser' => 'ለዚህ/ች ሰው ኢሜል መላክ',
+'emailpage' => 'ወደዚህ/ች አባል ኢ-ሜል ለመላክ',
+'emailpagetext' => 'አባሉ በሳቸው «ምርጫዎች» ክፍል ተግባራዊ ኢ-ሜል አድራሻ ያስገቡ እንደሆነ፣ ከታች ያለው ማመልከቻ አንድን ደብዳቤ በቀጥታ ይልካቸዋል።
+
+ተቀባዩም መልስ በቀጥታ ሊሰጡዎ እንዲችሉ፣ በእርስዎ «ምርጫዎች» ክፍል ያስገቡት ኢ-ሜል አድራሻ በደብዳቤዎ «From:» መስመር ይታይላቸዋል።',
+'noemailtitle' => 'ኢ-ሜል አይቻልም',
+'noemailtext' => 'ለዚህ/ች አባል ኢ-ሜል መላክ አይቻልም። ወይም ተገቢ ኢ-ሜል አድራሻ የለንም፣ ወይም ከሰው ምንም ኢ-ሜል መቀበል አልወደደ/ችም።',
+'emailfrom' => 'ከ',
+'emailto' => 'ለ',
+'emailsubject' => 'ርዕሰ ጉዳይ',
+'emailmessage' => 'መልእክት',
+'emailsend' => 'ይላክ',
+'emailccme' => 'አንድ ቅጂ ደግሞ ለራስዎ ኢ-ሜል ይላክ።',
+
+# Watchlist
+'watchlist' => 'የምከታተላቸው ገጾች፤',
+'mywatchlist' => 'የምከታተላቸው ገጾች፤',
+'watchlistfor' => "(ለ'''$1''')",
+'nowatchlist' => 'ዝርዝርዎ ባዶ ነው። ምንም ገጽ ገና አልተጨመረም።',
+'addedwatch' => 'ወደሚከታተሉት ገጾች ተጨመረ',
+'addedwatchtext' => "ገጹ «$1» [[Special:Watchlist|ለሚከታተሉት ገጾች]] ተጨምሯል። ወደፊት ይህ ገጽ ወይም የውይይቱ ገጽ ሲቀየር፣ በዚያ ዝርዝር ላይ ይታያል። በተጨማሪም [[Special:Recentchanges|«በቅርብ ጊዜ በተለወጡ» ገጾች]] ዝርዝር፣ በቀላሉ እንዲታይ በ'''ጨለማ ጽህፈት''' ተጽፎ ይገኛል።
+
+በኋላ ጊዜ ገጹን ከሚከታተሉት ገጾች ለማስወግድ የፈለጉ እንደሆነ፣ በጫፉ ዳርቻ «አለመከታተል» የሚለውን ይጫኑ።",
+'removedwatch' => 'ከሚከታተሉት ገጾች ተወገደ',
+'removedwatchtext' => '«<nowiki>$1</nowiki>» የሚለው ከሚከታተሉት ገጾች ዝርዝር ጠፍቷል።',
+'watch' => 'ለመከታተል',
+'watchthispage' => 'ይህንን ገጽ ለመከታተል',
+'unwatch' => 'አለመከታተል',
+'watchnochange' => 'ከተካከሉት ገጾች አንዳችም በተወሰነው ጊዜ ውስጥ አልተለወጠም።',
+'watchlist-details' => 'አሁን በሙሉ {{PLURAL:$1|$1 ገጽ|$1 ገጾች}} እየተከታተሉ ነው።',
+'watchlistcontains' => 'አሁን በሙሉ $1 ገጾች እየተከታተሉ ነው።',
+'wlnote' => 'ባለፉት <b>$2</b> ሰዓቶች የተደረጉት $1 መጨረሻ ለውጦች እታች ይገኛሉ።',
+'wlshowlast' => 'ያለፉት $1 ሰዓት፤ $2 ቀን፤ $3 ይታዩ።',
+'watchlist-show-bots' => 'የቦት (BOT) ለውጦች ይታዩ',
+'watchlist-hide-bots' => 'የቦት (BOT) ለውጦች ይደበቁ',
+'watchlist-show-own' => 'የራሴ ለውጦች ይታዩ',
+'watchlist-hide-own' => 'የራሴ ለውጦች ይደበቁ',
+'watchlist-show-minor' => "'ጥ' (ጥቃቅን) ለውጦች ይታዩ",
+'watchlist-hide-minor' => "'ጥ' (ጥቃቅን) ለውጦች ይደበቁ",
+
+# Displayed when you click the "watch" button and it's in the process of watching
+'watching' => 'እየተጨመረ ነው...',
+'unwatching' => 'እየተወገደ ነው...',
+
+# Delete/protect/revert
+'deletepage' => 'ገጹ ይጥፋ',
+'confirm' => 'ማረጋገጫ',
+'excontent' => 'ይዞታ፦ «$1» አለ።',
+'excontentauthor' => "ይዞታ '$1' አለ (የጻፈበትም '$2' ብቻ ነበር)",
+'exbeforeblank' => 'ባዶ፤ ከተደመሰሰ በፊት ይዞታው «$1» አለ።',
+'delete-confirm' => '«$1» ለማጥፋት',
+'delete-legend' => 'ለማጥፋት',
+'historywarning' => 'ማስጠንቀቂያ፦ ለዚሁ ገጽ የዕትም ታሪክ ደግሞ ሊጠፋ ነው! :',
+'confirmdeletetext' => 'አንድ ገጽ ወይም ስዕል ከነለውጦቹ በሙሉ ከዚሁ {{SITENAME}} ሊጠፋ ነው! ይህን ማድረግዎ ያሠቡበት መሆኑንና ማጥፋቱ በፖሊሲ ተገቢ እንደሆነ እባክዎ ያረጋግጡ፦',
+'actioncomplete' => 'ተፈጽሟል',
+'deletedtext' => '«<nowiki>$1</nowiki>» ጠፍቷል።
+
+(የጠፉትን ገጾች ሁሉ ለመመልከት $2 ይዩ።)',
+'deletedarticle' => '«[[$1]]» አጠፋ',
+'dellogpage' => 'የማጥፋት መዝገብ (del log)',
+'dellogpagetext' => 'በቅርቡ የጠፉት ገጾች ከዚህ ታች የዘረዝራሉ።',
+'deletionlog' => 'የማጥፋት መዝገብ',
+'deletecomment' => 'የማጥፋቱ ምክንያት፦',
+'deleteotherreason' => 'ሌላ /ተጨማሪ ምክንያት',
+'deletereasonotherlist' => 'ሌላ ምክንያት',
+'rollbacklink' => 'ROLLBACK ይመለስ',
+'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|የቆለፉትን ገጾች]] ደግሞ ያዩ።',
+'protectedarticle' => 'ገጹን «[[$1]]» ቆለፈው።',
+'modifiedarticleprotection' => 'የመቆለፍ ደረጃ ለ«[[$1]]» ቀየረ።',
+'unprotectedarticle' => 'ገጹን «[[$1]]» ፈታ።',
+'protectsub' => '(ለ«$1» የመቆለፍ ደረጃ ለማስተካከል)',
+'confirmprotect' => 'የመቆለፍ ማረጋገጫ',
+'protectcomment' => 'ማጠቃለያ፦',
+'protectexpiry' => 'የሚያልቅበት ግዜ፦',
+'protect_expiry_invalid' => "የተሰጠው 'የሚያልቅበት ጊዜ' ልክ አይደለም።",
+'protect_expiry_old' => "የተሰጠው 'የሚያልቅበት ጊዜ' ባለፈው ግዜ ነበር።",
+'protect-unchain' => 'ገጹን የማዛወር ፈቃዶች ለመፍታት',
+'protect-text' => 'እዚህ ለገጹ «<strong><nowiki>$1</nowiki></strong>» የመቆለፍ ደረጃ መመልከት ወይም መቀይር ይችላሉ።',
+'protect-locked-access' => 'እርስዎ ገጽ የመቆለፍ ወይም የመፍታት ፈቃድ የለዎም።<br />አሁኑ የዚሁ ገጽ መቆለፍ ደረጃ እንዲህ ነው፦ <strong>$1</strong>:',
+'protect-cascadeon' => 'ይህ ገጽ ወደ ተከለከሉት አርእስቶች ተጨምሯል። የመቆለፍ ደረጃ እዚህ መቀየር ቢቻልዎም ገጹ ግን በሚከተለው ድርብ የተቆለፈ ገጽ ውስጥ ይጨመራል።',
+'protect-default' => '(እንደ ወትሮ)',
+'protect-fallback' => 'የ$1 ፈቃደ ለማስፈልግ',
+'protect-level-autoconfirmed' => 'ባልገቡትና በአዲስ አባላት ብቻ',
+'protect-level-sysop' => 'መጋቢዎች ብቻ',
+'protect-summary-cascade' => 'በውስጡም ያለውን የሚያቆልፍ አይነት',
+'protect-expiring' => 'በ$1 (UTC) ያልቃል',
+'protect-cascade' => 'በዚህ ገጽ ውስጥ የተካተተው ገጽ ሁሉ ደግሞ ይቆለፍ?',
+'protect-cantedit' => 'ይህንን ገጽ የማዘጋጀት ፈቃድ ስለሌለልዎ መቆለፍ አይቻሎትም።',
+'restriction-type' => 'ፈቃድ፦',
+'restriction-level' => 'የመቆለፍ ደረጃ፦',
+'minimum-size' => 'ቢያንስ',
+'maximum-size' => 'ቢበዛ',
+'pagesize' => 'byte መጠን ያለው ሁሉ',
+
+# Restrictions (nouns)
+'restriction-edit' => 'እንዲዘጋጅ፦',
+'restriction-move' => 'እንዲዛወር፦',
+
+# Restriction levels
+'restriction-level-sysop' => 'በሙሉ ተቆልፎ',
+'restriction-level-autoconfirmed' => 'በከፊል ተቆልፎ',
+
+# Undelete
+'undelete' => 'የተደለዘ ገጽ ለመመለስ',
+'undeletepage' => 'የተደለዘ ገጽ ለመመለስ',
+'undeleteextrahelp' => "እትሞቹን በሙሉ ለመመልስ፣ ሳጥኖቹ ሁሉ ባዶ ሆነው ይቆዩና 'ይመለስ' የሚለውን ይጫኑ። <br/>አንዳንድ እትም ብቻ ለመመልስ፣ የተፈለገውን እትሞች በየሳጥኖቹ አመልክተው 'ይመለስ' ይጫኑ። <br/>'ባዶ ይደረግ' ቢጫን፣ ማጠቃልያውና ሳጥኖቹ ሁሉ እንደገና ባዶ ይሆናሉ።",
+'undeletebtn' => 'ይመለስ',
+'undeletelink' => 'ይመለስ',
+'undeletereset' => 'ባዶ ይደረግ',
+'undeletecomment' => 'ማጠቃልያ፦',
+
+# Namespace form on various pages
+'namespace' => 'ዓይነት፦',
+'invert' => '(ምርጫውን ለመገልበጥ)',
+'blanknamespace' => 'መጣጥፎች',
+
+# Contributions
+'contributions' => 'ያባል አስተዋጽኦች',
+'mycontris' => 'የኔ አስተዋጽኦች፤',
+'contribsub2' => 'ለ $1 ($2)',
+'nocontribs' => 'ምንም አልተገኘም።',
+'uctop' => '(ላይኛ)',
+'month' => 'እስከዚህ ወር ድረስ፦',
+'year' => 'እስከዚህ አመት (እ.ኤ.አ.) ድረስ፡-',
+
+'sp-contributions-newbies' => 'የአዳዲስ ተጠቃሚዎች አስተዋጽዖ ብቻ እዚህ ይታይ',
+'sp-contributions-newbies-sub' => '(ለአዳዲስ ተጠቃሚዎች)',
+'sp-contributions-blocklog' => 'የማገጃ መዝገብ',
+'sp-contributions-search' => 'የሰውን አስተዋጽኦች ለመፈለግ፦',
+'sp-contributions-username' => 'ብዕር ስም ወይም የቁ. አድራሻ፦',
+'sp-contributions-submit' => 'ፍለጋ',
+
+'sp-newimages-showfrom' => 'ከ$1 እኤአ ጀምሮ አዲስ ይታዩ',
+
+# What links here
+'whatlinkshere' => 'ወዲህ የሚያያዝ',
+'whatlinkshere-title' => 'ወደ «$1» የሚያያዙት ገጾች',
+'whatlinkshere-page' => 'ለገጽ (አርዕስት)፦',
+'linklistsub' => '(ወዲህ የሚያያዝ)',
+'linkshere' => 'የሚከተሉት ገጾች ወደዚሁ ተያይዘዋል።',
+'nolinkshere' => 'ወዲህ የተያያዘ ገጽ የለም።',
+'nolinkshere-ns' => 'ባመለከቱት ክፍለ-ዊኪ ወዲህ የተያያዘ ገጽ የለም።',
+'isredirect' => 'መምሪያ መንገድ',
+'istemplate' => 'የተሰካ',
+'whatlinkshere-prev' => 'ፊተኛ $1',
+'whatlinkshere-next' => 'ቀጥሎ $1',
+'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' => 'አዲስ ብዕር ስም ከማውጣት ተከለከለ',
+
+# Move page
+'movepage' => 'የሚዛወር ገጽ',
+'movepagetext' => "ከታች የሚገኘው ማመልከቻ ለገጹ ይዞታ አዲስ አርእስት ያወጣል።
+ከይዞታው ጋራ የእትሞች ታሪክ ደግሞ ወደ አዲሱ ገጽ ይዛወራል።
+የቆየው አርእስት እንደ መምሪያ መንገድ ለአዲሱ ገጽ ይሆናል።
+ይህ ማለት ወደዚያ የሚያያዝ መያያዣ ሁሉ በቀጥታ ወደ አዲሱ ሥፍራ ይወስዳል።
+ነገር ግን ገጹን እርስዎ ካዛወሩ፣ መያያዣዎቹ ድርብ ወይም ሰባራ እንዳይሆኑ ለማረጋገጥ ኃላፊነትዎ ነው።
+
+ባዲሱ አርእስት ሥፍራ ሌላ ገጽ ቀድሞ ካለ፤ ሌላው ገጽ ታሪክ የሌለው፣ ባዶ ወይም መምሪያ መንገድ ካልሆነ በቀር፣
+ይህ ገጽ ወደዚያ ለማዛወር '''የማይቻል''' ነው። ስለዚህ ስሕተት ካደረጉ ወደ ቆየው አርእስት ገጹን መመለስ ይችላሉ፤ የኖረውን ገጽ በስሕተት ለመደምሰስ አይቻልም ማለት ነው።
+
+'''ማስጠንቀቂያ፦'''
+በጣም ለተወደደ ወይም ብዙ ጊዜ ለሚነበብ ገጽ፣ እንዲህ ያለ ለውጥ በፍጹም ያልተጠበቀ ወይም ከባድ ውጤት ሊሆን ይችላል። ስለዚህ እባክዎ የሚገባ መደምደሚያ መሆኑን አስቀድመው ያረጋግጡ።",
+'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' => 'ይመለስ',
+
+# Export
+'export' => 'ገጾች ወደ ሌላ ዊኪ ለመላክ',
+
+# Namespace 8 related
+'allmessages' => 'የድረገጽ መልክ መልእክቶች',
+'allmessagesname' => 'የመልእክት ስም',
+'allmessagesdefault' => 'የቆየው ጽሕፈት',
+'allmessagescurrent' => 'ያሁኑ ጽሕፈት',
+'allmessagestext' => 'በ«MediaWiki» ክፍለ-ዊኪ ያሉት የድረገጽ መልክ መልእክቶች ሙሉ ዝርዝር ይህ ነው።',
+
+# Thumbnails
+'thumbnail-more' => 'አጎላ',
+'thumbnail_error' => 'ናሙና በመፍጠር ችግር አጋጠመ፦ $1',
+
+# Import log
+'importlogpage' => 'የገጽ ማስገባት መዝገብ',
+
+# Tooltip help for the actions
+'tooltip-pt-userpage' => 'የርስዎ መኖርያ ገጽ',
+'tooltip-pt-mytalk' => 'የርስዎ መወያያ ገጽ',
+'tooltip-pt-preferences' => 'የድረግጹን መልክ ለመምረጥ',
+'tooltip-pt-watchlist' => 'እርስዎ ስለ ለውጦች የሚከታተሏቸው ገጾች',
+'tooltip-pt-mycontris' => 'እርስዎ ያደረጓቸው ለውጦች በሙሉ',
+'tooltip-pt-login' => 'በብዕር ስም መግባትዎ ጠቃሚ ቢሆንም አስፈላጊነት አይደለም',
+'tooltip-pt-logout' => 'ከብዕር ስምዎ ለመውጣት',
+'tooltip-ca-talk' => 'ስለ ገጹ ለመወያየት',
+'tooltip-ca-edit' => 'ይህን ገጽ ለማዘጋጀት ይችላሉ!',
+'tooltip-ca-addsection' => 'ለዚሁ ውይይት ገጽ አዲስ አርዕስት ለመጨምር',
+'tooltip-ca-viewsource' => 'ይህ ገጽ ተቆልፏል ~ ጥሬ ምንጩን መመልከት ይችላሉ...',
+'tooltip-ca-history' => 'ለዚሁ ገጽ ያለፉትን እትሞች ለማየት',
+'tooltip-ca-protect' => 'ይህንን ገጽ ለመቆለፍ',
+'tooltip-ca-delete' => 'ይህንን ገጽ ለማጥፋት',
+'tooltip-ca-move' => 'ይህ ገጽ ወደ ሌላ አርእስት ለማዋወር',
+'tooltip-ca-watch' => 'ይህንን ገጽ ወደ ተከታተሉት ገጾች ዝርዝር ለመጨምር',
+'tooltip-ca-unwatch' => 'ይህንን ገጽ ከተከታተሉት ገጾች ዝርዝር ለማስወግድ',
+'tooltip-search' => 'ቃል ወይም አርዕስት በ{{SITENAME}} ለመፈለግ',
+'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-contributions' => 'የዚሁ አባል ለውጦች ሁሉ ለመመልከት',
+'tooltip-t-emailuser' => 'ወደዚሁ አባል ኢ-ሜል ለመላክ',
+'tooltip-t-upload' => 'ፋይል ወይም ሥዕልን ወደ {{SITENAME}} ለመላክ',
+'tooltip-t-specialpages' => 'የልዩ ገጾች ዝርዝር በሙሉ',
+'tooltip-ca-nstab-main' => 'መጣጥፉን ለማየት',
+'tooltip-ca-nstab-user' => 'የአባል መኖሪያ ገጽ ለማየት',
+'tooltip-ca-nstab-special' => 'ይህ ልዩ ገጽ ነው - ሊያዘጋጁት አይችሉም',
+'tooltip-ca-nstab-project' => 'ግብራዊ ገጹን ለማየት',
+'tooltip-ca-nstab-image' => 'የፋይሉን ገጽ ለማየት',
+'tooltip-ca-nstab-template' => 'የመልጠፊያውን ገጽ ለመመልከት',
+'tooltip-ca-nstab-help' => 'የእርዳታ ገጽ ለማየት',
+'tooltip-ca-nstab-category' => 'የመደቡን ገጽ ለማየት',
+'tooltip-minoredit' => 'እንደ ጥቃቅን ለውጥ (ጥ) ለማመልከት',
+'tooltip-save' => 'የለወጡትን ዕትም ወደ {{SITENAME}} ለመላክ',
+'tooltip-preview' => 'ለውጦችዎ ሳይያቀርቡዋቸው እስቲ ይመለከቷቸው!',
+'tooltip-diff' => 'እርስዎ የሚያደርጉት ለውጦች ከአሁኑ ዕትም ጋር ለማነጻጸር',
+'tooltip-compareselectedversions' => 'ካመለከቱት ዕትሞች መካከል ያለውን ልዩነት ለማነጻጸር',
+'tooltip-watch' => 'ይህንን ገጽ ወደተከታተሉት ገጾች ዝርዝር ለመጨምር',
+'tooltip-upload' => 'ለመጀመር ይጫኑ',
+
+# Spam protection
+'subcategorycount' => 'በዚሁ መደብ ውስጥ {{PLURAL:$1|አንድ ንዑስ-መደብ አለ|$1 ንዑስ-መደቦች አሉ}}።',
+'categoryarticlecount' => 'በዚሁ መደብ ውስጥ {{PLURAL:$1|አንድ መጣጥፍ አለ|$1 መጣጥፎች አሉ}}።',
+'category-media-count' => 'በዚሁ መደብ {{PLURAL:$1|አንድ ፋይል አለ|$1 ፋይሎች አሉ}}።',
+'listingcontinuesabbrev' => '(ተቀጥሏል)',
+
+# Patrolling
+'markaspatrolledtext' => 'ይህን ገጽ የተመለከተ ሆኖ ለማሳለፍ',
+'markedaspatrolled' => 'የተመለከተ ሆኖ ተሳለፈ',
+'markedaspatrolledtext' => 'የተመረጠው ዕትም የተመለከተ ሆኖ ተሳለፈ።',
+
+# Patrol log
+'patrol-log-line' => 'እትም $1 ከ$2 የተመለከተ ሆኖ አሳለፈ',
+'patrol-log-auto' => '(በቀጥታ)',
+
+# Browsing diffs
+'previousdiff' => '← የፊተኛው ለውጥ',
+'nextdiff' => 'የሚከተለው ለውጥ →',
+
+# Media information
+'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' => 'ምንም የለም!',
+
+# Bad image list
+'bad_image_list' => 'ሥርዓቱ እንዲህ ነው፦
+
+በ* የሚጀምሩ መስመሮች ብቻ ይቆጠራል። በመስመሩ መጀመርያው መያያዣ የመጥፎ ስዕል መያያዣ መሆን አለበት። ከዚያ ቀጥሎ በዚያው በመስመር መያያዣ ቢገኝ ግን ስዕሉ እንደ ተፈቀደበት ገጽ ይቆጠራል።',
+
+# Metadata
+'metadata' => 'ተጨማሪ መረጃ',
+'metadata-help' => 'ይህ ፋይል በውስጡ ተጨማሪ መረጃ ይይዛል። መረጃውም በዲጂታል ካሜራ ወይም በኮምፒውተር ስካነር የተጨመረ ይሆናል። ይህ ከኦሪጂናሉ ቅጅ የተለወጠ ከሆነ፣ ምናልባት የመረጃው ዝርዝር ለውጦቹን የማያንጸባረቅ ይሆናል።',
+'metadata-expand' => 'ተጨማሪ መረጃ ይታይ',
+'metadata-collapse' => 'ተጨማሪ መረጃ ይደበቅ',
+'metadata-fields' => "በዚህ የሚዘረዘሩ EXIF መረጃ አይነቶች በፋይል ገጽ ላይ በቀጥታ ይታያሉ። ሌሎቹ 'ተጨማሪ መረጃ ይታይ' ካልተጫነ በቀር ይደበቃሉ።
+* make
+* model
+* datetimeoriginal
+* exposuretime
+* fnumber
+* focallength", # Do not translate list items
+
+# EXIF tags
+'exif-make' => 'የካሜራው ሠሪ ድርጅት',
+'exif-model' => 'የካሜራው ዝርያ',
+
+# External editor support
+'edit-externally' => 'ይህንን ፋይል በአፍአዊ ሶፍትዌር ለማዘጋጀት',
+'edit-externally-help' => 'ስለ አፍአዊ የስዕል ማዘጋጀት ሶፍትዌር በተጨማሪ ለመረዳት [http://meta.wikimedia.org/wiki/Help:External_editors የመመስረት ትዕዛዝ] ያንብቡ።',
+
+# 'all' in various places, this might be different for inflected languages
+'recentchangesall' => 'ሁሉ',
+'watchlistall2' => 'ሁሉ',
+'namespacesall' => 'ሁሉ (all)',
+'monthsall' => 'ሁሉ',
+
+# E-mail address confirmation
+'confirmemail' => 'ኢ-ሜልዎን ለማረጋገጥ',
+'confirmemail_text' => 'አሁን በ{{SITENAME}} በኩል «ኢ-ሜል» ለመላክም ሆነ ለመቀበል አድራሻዎን ማረጋገጥ ግዴታ ሆኗል። እታች ያለውን በተጫኑ ጊዜ አንድ የማረጋገጫ መልእክት ቀድሞ ወደ ሰጡት ኢሜል አድራሻ በቀጥታ ይላካል። በዚህ መልእክት ልዩ ኮድ ያለበት መያያዣ ይገኝበታል፣ ይህንን መያያዣ ከዚያ ቢጎብኙ ኢ-ሜል አድራሻዎ የዛኔ ይረጋግጣል።',
+'confirmemail_send' => 'የማረጋገጫ ኮድ ወደኔ ኢ-ሜል ይላክልኝ',
+'confirmemail_sent' => 'የማረጋገጫ ኢ-ሜል ቅድም ወደ ሰጡት አድራሻ አሁን ተልኳል! (ሁለተኛ መጫን የለብዎትም፣ ወደ [[{{MediaWiki:Mainpage}}|ዋናው ገጽ]] ይመልሱ።)',
+'confirmemail_sendfailed' => 'ወደሰጡት ኢሜል አድራሻ መላክ አልተቻለም። እባክዎ፣ ወደ [[Special:Preferences|«ምርጫዎች»]] ተመልሰው የጻፉትን አድራሻ ደንበኛነት ይመለከቱ።',
+'confirmemail_invalid' => 'ይህ ኮድ አልተከናወነም። (ምናልባት ጊዜው አልፏል።) እንደገና ይሞክሩ!',
+'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}}.
+
+To confirm that this account really does belong to you, and to activate e-mail features on {{SITENAME}}, open this link in your browser:
+
+$3
+
+If for some reason this is *not* you, don\'t follow the link. This confirmation code will expire at $4.
+
+Amharic text follows:
+
+ጤና ይስጥልኝ
+
+የርስዎ ኢ-ሜል አድራሻ በ$1 ለ{{SITENAME}} ብዕር ስም «$2» ቀርቧል።
+
+ይህ እርስዎ እንደ ሆኑ ለማረጋገጥና የ{{SITENAME}} ኢ-ሜል ጥቅም ለማግኘት፣ እባክዎን የሚከተለውን መያያዣ ይጎበኙ።
+
+$3
+
+ይህ ምናልባት እርስዎ ካልሆኑ፣ መያያዣውን አይከተሉ።
+
+የዚህ መያያዣው ኮድ እስከ $4 ድረስ ይሠራል።',
+
+# Table pager
+'table_pager_next' => 'ቀጥሎ ገጽ',
+'table_pager_prev' => 'ፊተኛው ገጽ',
+'table_pager_first' => 'መጀመርያው ግጽ',
+'table_pager_last' => 'መጨረሻው ገጽ',
+'table_pager_limit' => 'በየገጹ $1 መስመሮች',
+'table_pager_limit_submit' => 'ይታዩ',
+
+# Auto-summaries
+'autosumm-blank' => 'ጽሑፉን በሙሉ ደመሰሰ።',
+'autosumm-replace' => 'ጽሑፉ በ«$1» ተተካ።',
+'autoredircomment' => 'ወደ [[$1]] መምሪያ መንገድ ፈጠረ',
+'autosumm-new' => 'አዲስ ገጽ ፈጠረ፦ «$1»',
+
+# Watchlist editor
+'watchlistedit-numitems' => 'አሁን በሙሉ {{PLURAL:$1|$1 ገጽ|$1 ገጾች}} እየተከታተሉ ነው።',
+'watchlistedit-noitems' => 'ዝርዝርዎ ባዶ ነው።',
+'watchlistedit-normal-title' => 'ዝርዝሩን ለማስተካከል',
+'watchlistedit-normal-legend' => 'አርእስቶችን ከተካከሉት ገጾች ዝርዝር ለማስወግድ...',
+'watchlistedit-normal-explain' => 'ከዚህ ታች፣ የሚከታተሉት ገጾች ሁሉ በሙሉ ተዘርዝረው ይገኛሉ።
+
+አንዳንድ ገጽ ከዚህ ዝርዝር ለማስወግድ ያሠቡ እንደሆነ፣ በሳጥኑ ውስጥ ምልክት አድርገው በስተግርጌ በሚገኘው «ማስወግጃ» የሚለውን ተጭነው ከዚህ ዝርዝር ሊያስወግዷቸው ይቻላል። (ይህን በማድረግዎ ከገጹ ጋር የሚገናኘው ውይይት ገጽ ድግሞ ከዝርዝርዎ ይጠፋል።)
+
+ከዚህ ዘዴ ሌላ [[Special:Watchlist/raw|ጥሬውን ኮድ መቅዳት ወይም ማዘጋጀት]] ይቻላል። ወይም ደግሞ [[Special:Watchlist/clear|ዝርዝሩን በሙሉ ለማሟጠጥ]] ይቻላል።',
+'watchlistedit-normal-submit' => 'ማስወገጃ',
+'watchlistedit-normal-done' => 'ከዝርዝርዎ እነዚህ አርእስቶች ተወግደዋል፦',
+'watchlistedit-raw-title' => 'የዝርዝሩ ጥሬ ኮድ',
+'watchlistedit-raw-legend' => 'የዝርዝሩን ጥሬ ኮድ ለማዘጋጀት...',
+'watchlistedit-raw-explain' => 'በተከታተሉት ገጾች ዝርዝር ላይ ያሉት አርእስቶች ሁሉ ከዚህ ታች ይታያሉ። በየመስመሩ አንድ አርእስት እንደሚኖር፣ ይህን ዝርዝር ለማዘጋጀት ይችላሉ። አዘጋጅተውት ከጨረሱ በኋላ በስተግርጌ «ዝርዝሩን ለማሳደስ» የሚለውን ይጫኑ። አለበለዚያ ቢሻልዎት፣ የተለመደውን ዘዴ ([[Special:Watchlist/edit|«ዝርዝሩን ለማስተካከል»]]) ይጠቀሙ።',
+'watchlistedit-raw-titles' => 'የተከታተሉት አርእስቶች፦',
+'watchlistedit-raw-submit' => 'ዝርዝሩን ለማሳደስ',
+'watchlistedit-raw-done' => 'ዝርዝርዎ ታድሷል።',
+'watchlistedit-raw-added' => '$1 አርዕስት {{PLURAL:$1|ተጨመረ|ተጨመሩ}}፦',
+'watchlistedit-raw-removed' => '$1 አርዕስት {{PLURAL:$1|ተወገደ|ተወገዱ}}፦',
+
+# Watchlist editing tools
+'watchlisttools-view' => 'የምከታተላቸው ለውጦች',
+'watchlisttools-edit' => 'ዝርዝሩን ለማስተካከል',
+'watchlisttools-raw' => 'የዝርዝሩ ጥሬ ኮድ',
+
+);
diff --git a/languages/messages/MessagesAn.php b/languages/messages/MessagesAn.php
index 1f1694bc..9689cde7 100644
--- a/languages/messages/MessagesAn.php
+++ b/languages/messages/MessagesAn.php
@@ -1,4 +1,25 @@
<?php
+/** Aragonese (Aragonés)
+ *
+ * @addtogroup Language
+ *
+ * @author SPQRobin
+ * @author Juanpabl
+ * @author Willtron
+ * @author Nike
+ * @author Siebrand
+ * @author לערי ריינהארט
+ */
+
+$fallback = 'es';
+
+$skinNames = array(
+ 'standard' => 'Clasica (Classic)',
+ 'nostalgia' => 'Recosiros (Nostalgia)',
+ 'cologneblue' => 'Colonia Azul (Cologne Blue)',
+ 'myskin' => 'A mía aparenzia (MySkin)',
+ 'simple' => 'Simpla (Simple)',
+);
$namespaceNames = array(
NS_MEDIA => 'Media',
@@ -7,7 +28,7 @@ $namespaceNames = array(
NS_TALK => 'Descusión',
NS_USER => 'Usuario',
NS_USER_TALK => 'Descusión_usuario',
- # NS_PROJECT set by $wgMetaNamespace
+ # NS_PROJECT set by \$wgMetaNamespace
NS_PROJECT_TALK => 'Descusión_$1',
NS_IMAGE => 'Imachen',
NS_IMAGE_TALK => 'Descusión_imachen',
@@ -21,4 +42,2343 @@ $namespaceNames = array(
NS_CATEGORY_TALK => 'Descusión_categoría',
);
+$magicWords = array(
+ 'namespace' => array( '1', 'NAMESPACE', 'ESPAZIODENOMBRES' ),
+ 'namespacee' => array( '1', 'NAMESPACEE', 'ESPAZIODENOMBRESE' ),
+ 'img_right' => array( '1', 'right', 'dreita' ),
+ 'img_left' => array( '1', 'left', 'cucha', 'zurda' ),
+ 'ns' => array( '0', 'NS:', 'EN:', 'EDN:' ),
+ 'displaytitle' => array( '1', 'DISPLAYTITLE', 'TÍTOL' ),
+ 'currentversion' => array( '1', 'CURRENTVERSION', 'BERSIÓNAUTUAL', 'BERSIONAUTUAL' ),
+ 'language' => array( '0', '#LANGUAGE:', '#LENGUACHE:', '#LUENGA:', '#IDIOMA:' ),
+ 'special' => array( '0', 'special', 'espezial' ),
+ 'defaultsort' => array( '1', 'DEFAULTSORT:', 'DEFAULTSORTKEY:', 'DEFAULTCATEGORYSORT:', 'ORDENAR:' ),
+);
+
+$specialPageAliases = array(
+ 'DoubleRedirects' => array( 'Reendrezeras_dobles', 'Dobles_reendrezeras', 'Endrezeras_dobles', 'Dobles_endrezeras' ),
+ 'BrokenRedirects' => array( 'Reendrezeras_trencatas', 'Endrezeras_trencatas', 'Reendrezeras_crebatas', 'Endrezeras_crebatas', 'Endrezeras_trencadas', 'Endrezeras_crebadas' ),
+ 'Disambiguations' => array( 'Desambigazions', 'Pachinas_de_desambigazión' ),
+ 'Userlogin' => array( 'Enzetar_sesión', 'Dentrar' ),
+ 'Userlogout' => array( 'Salir', 'Rematar_sesión' ),
+ 'Preferences' => array( 'Preferenzias' ),
+ 'Watchlist' => array( 'Lista_de_seguimiento' ),
+ 'Recentchanges' => array( 'Zaguers_cambeos', 'cambeos_rezients' ),
+ 'Upload' => array( 'Cargar', 'Puyar' ),
+ 'Imagelist' => array( 'Lista_d\'imáchens', 'Lista_d\'imachens' ),
+ 'Listusers' => array( 'Lista_d\'usuarios' ),
+ 'Statistics' => array( 'Estadistica', 'Estatistica', 'Estadisticas', 'Estatisticas' ),
+ 'Randompage' => array( 'Pachina_aleatoria', 'Pachina_aliatoria', 'Pachina_á_l\'azar' ),
+ 'Lonelypages' => array( 'Pachinas_popiellas' ),
+ 'Uncategorizedpages' => array( 'Pachinas_sin_categorías', 'Pachinas_sin_categorizar' ),
+ 'Uncategorizedcategories' => array( 'Categorías_sin_categorías', 'Categorías_sin_categorizar' ),
+ 'Uncategorizedimages' => array( 'Imáchens_sin_categorías', 'Imáchens_sin_categorías', 'Imachens_sin_categorizar', 'Imáchens_sin_categorizar' ),
+ 'Uncategorizedtemplates' => array( 'Plantillas_sin_categorías', 'Plantillas_sin_categorizar' ),
+ 'Unusedcategories' => array( 'Categorías_no_emplegatas', 'Categorías_sin_emplegar' ),
+ 'Unusedimages' => array( 'Imáchens_no_emplegatas', 'Imáchens_sin_emplegar' ),
+ 'Wantedpages' => array( 'Pachinas_requiestas', 'Pachinas_demandatas', 'Binclos_crebatos', 'Binclos_trencatos' ),
+ 'Wantedcategories' => array( 'Categorías_requiestas', 'Categorías_demandatas' ),
+ 'Mostlinked' => array( 'Pachinas_más_enlazatas', 'Pachinas_más_binculatas' ),
+ 'Mostlinkedcategories' => array( 'Categorías_más_enlazatas', 'Categorías_más_binculatas' ),
+ 'Mostlinkedtemplates' => array( 'Plantillas_más_enlazatas', 'Plantillas_más_binculatas' ),
+ 'Mostcategories' => array( 'Pachinas_con_más_categorías' ),
+ 'Mostimages' => array( 'Imáchens_más_emplegatas', 'Imachens_más_emplegatas' ),
+ 'Mostrevisions' => array( 'Pachinas_con_más_edizions', 'Pachinas_más_editatas', 'Pachinas_con_más_bersions' ),
+ 'Fewestrevisions' => array( 'Pachinas_con_menos_edizions', 'Pachinas_menos_editatas', 'Pachinas_con_menos_bersions' ),
+ 'Shortpages' => array( 'Pachinas_más_cortas' ),
+ 'Longpages' => array( 'Pachinas_más_largas' ),
+ 'Newpages' => array( 'Pachinas_nuebas', 'Pachinas_más_nuebas', 'Pachinas_más_rezients', 'Pachinas_rezients' ),
+ 'Ancientpages' => array( 'Pachinas_más_biellas', 'Pachinas_biellas', 'Pachinas_más_antigas', 'Pachinas_antigas' ),
+ 'Deadendpages' => array( 'Pachinas_sin_salida', 'Pachinas_sin_de_salida' ),
+ 'Protectedpages' => array( 'Pachinas_protechitas', 'Pachinas_protechitas', 'Pachinas_protechidas' ),
+ 'Protectedtitles' => array( 'Títols_protechitos', 'Títols_protexitos', 'Títols_protechius' ),
+ 'Allpages' => array( 'Todas_as_pachinas' ),
+ 'Prefixindex' => array( 'Pachinas_por_prefixo', 'Mirar_por_prefixo' ),
+ 'Ipblocklist' => array( 'Lista_d\'IPs_bloqueyatas', 'Lista_d\'IPs_bloquiatas', 'Lista_d\'adrezas_IP_bloqueyatas', 'Lista_d\'adrezas_IP_bloquiatas' ),
+ 'Specialpages' => array( 'Pachinas_espezials' ),
+ 'Contributions' => array( 'Contrebuzions' ),
+ 'Emailuser' => array( 'Nimbía_mensache' ),
+ 'Movepage' => array( 'Renombrar_pachina', 'Mober_pachina', 'Tresladar_pachina' ),
+ 'Categories' => array( 'Categorías' ),
+ 'Export' => array( 'Esportar' ),
+ 'Version' => array( 'Bersión' ),
+ 'Allmessages' => array( 'Toz_os_mensaches' ),
+ 'Import' => array( 'Importar' ),
+ 'Mypage' => array( 'A_mía_pachina', 'A_mía_pachina_d\'usuario' ),
+ 'Mytalk' => array( 'A_mía_descusión', 'A_mía_pachina_de_descusión' ),
+ 'Mycontributions' => array( 'As_mías_contrebuzions' ),
+ 'Listadmins' => array( 'Lista_d\'almenistradors' ),
+ 'Listbots' => array( 'Lista_de_bots' ),
+ 'Popularpages' => array( 'Pachinas_populars', 'Pachinas_más_populars' ),
+ 'Search' => array( 'Mirar' ),
+);
+
+$messages = array(
+# User preference toggles
+'tog-underline' => 'Subrayar os binclos:',
+'tog-highlightbroken' => 'Formateyar os binclos trencatos <a href="" class="new"> d\'ista traza </a> (y si no, asinas <a href="" class="internal">?</a>).',
+'tog-justify' => 'Achustar parrafos',
+'tog-hideminor' => 'Amagar edizions menors en a pachina de "zaguers cambeos"',
+'tog-extendwatchlist' => 'Enamplar a lista de seguimiento ta amostrar toz os cambeos afeutatos.',
+'tog-usenewrc' => 'Presentazión amillorada d\'os "zaguers cambeos" (cal JavaScript)',
+'tog-numberheadings' => 'Numerar automaticament os encabezaus',
+'tog-showtoolbar' => "Amostrar a barra d'ainas d'edizión (cal JavaScript)",
+'tog-editondblclick' => 'Autibar edizión de pachinas fendo-ie doble click (cal JavaScript)',
+'tog-editsection' => 'Autibar a edizión por sezions usando os binclos [editar]',
+'tog-editsectiononrightclick' => "Autibar a edizión de sezions punchando con o botón dreito d'a rateta <br /> en os títols de sezions (cal JavaScript)",
+'tog-showtoc' => 'Amostrar o endize de contenius (ta pachinas con más de 3 encabezaus)',
+'tog-rememberpassword' => 'Remerar a palabra de paso entre sesions',
+'tog-editwidth' => "O cuatrón d'edizión tien l'amplaria masima",
+'tog-watchcreations' => 'Cosirar as pachinas que creye',
+'tog-watchdefault' => 'Cosirar as pachinas que edite',
+'tog-watchmoves' => 'Cosirar as pachinas que treslade',
+'tog-watchdeletion' => 'Cosirar as pachinas que borre',
+'tog-minordefault' => 'Siñalar por defeuto totas as edizions como menors',
+'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-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-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.',
+'tog-watchlisthideown' => 'Amagar as mías edizions en a lista de seguimiento',
+'tog-watchlisthidebots' => 'Amagar edizions de bots en a lista de seguimiento',
+'tog-watchlisthideminor' => 'Amagar edizions menors en a lista de seguimiento',
+'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",
+
+'underline-always' => 'Siempre',
+'underline-never' => 'Nunca',
+'underline-default' => "Confegurazión por defeuto d'o nabegador",
+
+'skinpreview' => '(Fer una prebatina)',
+
+# Dates
+'sunday' => 'domingo',
+'monday' => 'luns',
+'tuesday' => 'martes',
+'wednesday' => 'miércols',
+'thursday' => 'chuebes',
+'friday' => 'biernes',
+'saturday' => 'sabado',
+'sun' => 'dom',
+'mon' => 'lun',
+'tue' => 'mar',
+'wed' => 'mie',
+'thu' => 'chu',
+'fri' => 'bie',
+'sat' => 'sab',
+'january' => 'chinero',
+'february' => 'febrero',
+'march' => 'marzo',
+'april' => 'abril',
+'may_long' => 'mayo',
+'june' => 'chunio',
+'july' => 'chulio',
+'august' => 'agosto',
+'september' => 'setiembre',
+'october' => 'otubre',
+'november' => 'nobiembre',
+'december' => 'abiento',
+'january-gen' => 'de chinero',
+'february-gen' => 'de febrero',
+'march-gen' => 'de marzo',
+'april-gen' => "d'abril",
+'may-gen' => 'de mayo',
+'june-gen' => 'de chunio',
+'july-gen' => 'de chulio',
+'august-gen' => "d'agosto",
+'september-gen' => 'de setiembre',
+'october-gen' => "d'otubre",
+'november-gen' => 'de nobiembre',
+'december-gen' => "d'abiento",
+'jan' => 'chi',
+'feb' => 'feb',
+'mar' => 'mar',
+'apr' => 'abr',
+'may' => 'may',
+'jun' => 'chn',
+'jul' => 'chl',
+'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''",
+
+'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.
+
+== Ta prenzipiar ==
+
+* [http://www.mediawiki.org/wiki/Manual:Configuration_settings Lista de carauteristicas confegurables]
+* [http://www.mediawiki.org/wiki/Manual:FAQ Preguntas cutianas sobre MediaWiki (FAQ)]
+* [http://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Lista de correu sobre ta anunzios de MediaWiki]",
+
+'about' => 'Informazión sobre',
+'article' => 'Articlo',
+'newwindow' => "(s'ubre en una nueba finestra)",
+'cancel' => 'Anular',
+'qbfind' => 'Mirar',
+'qbbrowse' => 'Nabegar',
+'qbedit' => 'Editar',
+'qbpageoptions' => 'Ista pachina',
+'qbpageinfo' => "Informazión d'a pachina",
+'qbmyoptions' => 'Pachinas propias',
+'qbspecialpages' => 'Pachinas espezials',
+'moredotdotdot' => 'Más...',
+'mypage' => 'A mía pachina',
+'mytalk' => 'Pachina de descusión',
+'anontalk' => "Pachina de descusión d'ista IP",
+'navigation' => 'Nabego',
+'and' => 'y',
+
+# Metadata in edit box
+'metadata_help' => 'Metadatos:',
+
+'errorpagetitle' => 'Error',
+'returnto' => 'Tornar ta $1.',
+'tagline' => 'De {{SITENAME}}',
+'help' => 'Aduya',
+'search' => 'Mirar',
+'searchbutton' => 'Mirar-lo',
+'go' => 'Ir-ie',
+'searcharticle' => 'Ir-ie',
+'history' => 'Istorial de cambeos',
+'history_short' => 'Istorial',
+'updatedmarker' => 'esbiellato dende a zaguera besita',
+'info_short' => 'Informazión',
+'printableversion' => 'Bersión ta imprentar',
+'permalink' => 'Binclo permanent',
+'print' => 'Imprentar',
+'edit' => 'Editar',
+'editthispage' => 'Editar ista pachina',
+'delete' => 'Borrar',
+'deletethispage' => 'Borrar ista pachina',
+'undelete_short' => 'Restaurar {{PLURAL:$1|una edizión|$1 edizions}}',
+'protect' => 'Protecher',
+'protect_change' => 'cambiar a protezión',
+'protectthispage' => 'Protecher ista pachina',
+'unprotect' => 'esprotecher',
+'unprotectthispage' => 'Esprotecher ista pachina',
+'newpage' => 'Pachina nueba',
+'talkpage' => "Descusión d'ista pachina",
+'talkpagelinktext' => 'Descutir',
+'specialpage' => 'Pachina Espezial',
+'personaltools' => 'Ainas presonals',
+'postcomment' => 'Adibir un comentario',
+'articlepage' => "Beyer l'articlo",
+'talk' => 'Descusión',
+'views' => 'Bisualizazions',
+'toolbox' => 'Ainas',
+'userpage' => "Beyer a pachina d'usuario",
+'projectpage' => "Beyer a pachina d'o procheuto",
+'imagepage' => "Beyer a pachina de l'archibo",
+'mediawikipage' => "Beyer a pachina d'o mensache",
+'templatepage' => "Beyer a pachina d'a plantilla",
+'viewhelppage' => "Beyer a pachina d'aduya",
+'categorypage' => "Beyer a pachina d'a categoría",
+'viewtalkpage' => 'Beyer a pachina de descusión',
+'otherlanguages' => 'En atras luengas',
+'redirectedfrom' => '(Reendrezato dende $1)',
+'redirectpagesub' => 'Pachina reendrezata',
+'lastmodifiedat' => "Zaguera edizión d'ista pachina: $2, $1.", # $1 date, $2 time
+'viewcount' => 'Ista pachina ha tenito {{PLURAL:$1|una besita|$1 besitas}}.',
+'protectedpage' => 'Pachina protechita',
+'jumpto' => 'Ir ta:',
+'jumptonavigation' => 'nabego',
+'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',
+
+'badaccess' => 'Error de premisos',
+'badaccess-group0' => "No tiene premisos ta fer l'aizión que ha demandato.",
+'badaccess-group1' => "Ista aizión que ha demandato nomás ye premitita ta os usuarios d'a colla $1.",
+'badaccess-group2' => "Ista aizión nomás ye premitita ta usuarios de beluna d'istas collas: $1.",
+'badaccess-groups' => "L'aizión que ha demandato nomás ye premitita ta os usuarios de beluna d'as collas: $1.",
+
+'versionrequired' => 'Cal a bersión $1 de MediaWiki',
+'versionrequiredtext' => 'Cal a bersión $1 de MediaWiki ta fer serbir ista pachina. Ta más informazión, consulte [[Special:Version]]',
+
+'ok' => "D'alcuerdo",
+'retrievedfrom' => 'Otenito de "$1"',
+'youhavenewmessages' => 'Tiene $1 ($2).',
+'newmessageslink' => 'mensaches nuebos',
+'newmessagesdifflink' => 'Esferenzias con a bersión anterior',
+'youhavenewmessagesmulti' => 'Tiene nuebos mensaches en $1',
+'editsection' => 'editar',
+'editold' => 'editar',
+'editsectionhint' => 'Editar a sezión: $1',
+'toc' => 'Contenius',
+'showtoc' => 'amostrar',
+'hidetoc' => 'amagar',
+'thisisdeleted' => 'Quiere amostrar u restaurar $1?',
+'viewdeleted' => 'Quiere amostrar $1?',
+'restorelink' => '{{PLURAL:$1|una edizión borrata|$1 edizions borratas}}',
+'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}}',
+'red-link-title' => '$1 (encara no escrita)',
+
+# Short words for each namespace, by default used in the namespace tab in monobook
+'nstab-main' => 'Articlo',
+'nstab-user' => "Pachina d'usuario",
+'nstab-media' => 'Pachina multimedia',
+'nstab-special' => 'Espezial',
+'nstab-project' => "Pachina d'o proyeuto",
+'nstab-image' => 'Imachen',
+'nstab-mediawiki' => 'Mensache',
+'nstab-template' => 'Plantilla',
+'nstab-help' => 'Aduya',
+'nstab-category' => 'Categoría',
+
+# Main script and global functions
+'nosuchaction' => 'No se reconoxe ista aizión',
+'nosuchactiontext' => "{{SITENAME}} no reconoxe l'aizión espezificata en l'adreza URL",
+'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]].",
+
+# General errors
+'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".
+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",
+'nodb' => 'No se podió trigar a base de datos $1',
+'cachederror' => "Ista ye una copia en caché d'a pachina demandata, y puestar que no siga esbiellata.",
+'laggedslavemode' => "Pare cuenta: podrían faltar as zagueras edizions d'ista pachina.",
+'readonly' => 'Base de datos bloqueyata',
+'enterlockreason' => "Esplique a causa d'o bloqueyo, encluyendo una estimazión de cuán se produzirá o desbloqueyo",
+'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.
+
+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.
+
+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.",
+'readonly_lag' => 'A base de datos ye bloqueyata temporalment entre que os serbidors se sincronizan.',
+'internalerror' => 'Error interna',
+'internalerror_info' => 'Error interna: $1',
+'filecopyerror' => 'No s\'ha puesto copiar l\'archibo "$1" ta "$2".',
+'filerenameerror' => 'No s\'ha puesto cambiar o nombre de l\'archibo "$1" á "$2".',
+'filedeleteerror' => 'No s\'ha puesto borrar l\'archibo "$1".',
+'directorycreateerror' => 'No s\'ha puesto crear o direutorio "$1".',
+'filenotfound' => 'No s\'ha puesto trobar l\'archibo "$1".',
+'fileexistserror' => 'No s\'ha puesto escribir en l\'archibo "$1": l\'archibo ya esiste',
+'unexpected' => 'Balura no prebista: "$1"="$2".',
+'formerror' => 'Error: no se podió nimbiar o formulario',
+'badarticleerror' => 'Ista aizión no se puede no se puede reyalizar en ista pachina.',
+'cannotdelete' => "No se podió borrar a pachina u l'archibo espezificato. (Puestar que belatro usuario l'aiga borrato dinantes)",
+'badtitle' => 'Títol incorreuto',
+'badtitletext' => "O títol d'a pachina demandata ye buedo, incorreuto, u tiene un binclo interwiki mal feito. Puede contener uno u más carauters que no se pueden fer serbir en títols.",
+'perfdisabled' => "S'ha desautibato temporalment ista opzión porque fa lenta a base de datos de traza que dengún no puede usar o wiki.",
+'perfcached' => 'Os datos que siguen son en caché, y podrían no estar esbiellatos:',
+'perfcachedts' => 'Istos datos se troban en a caché, que estió esbiellata por zaguer begada o $1.',
+'querypage-no-updates' => "S'han desautibato as autualizazions d'ista pachina. Por ixo, no s'esta esbiellando os datos.",
+'wrong_wfQuery_params' => 'Parametros incorreutos ta wfQuery()<br />
+Funzión: $1<br />
+Consulta: $2',
+'viewsource' => 'Beyer codigo fuen',
+'viewsourcefor' => 'ta $1',
+'actionthrottled' => 'Aizión afogata',
+'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]].",
+'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>.',
+
+# 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! ==
+
+S'ha creyato a suya cuenta. No xublide presonalizar as [[Special:Preferences|preferenzias]].",
+'loginpagetitle' => 'Enzetar a sesión',
+'yourname' => "Nombre d'usuario:",
+'yourpassword' => 'Palabra de paso:',
+'yourpasswordagain' => 'Torne á escribir a palabra de paso:',
+'remembermypassword' => "Remerar datos d'usuario entre sesions.",
+'yourdomainname' => 'Dominio:',
+'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}}.',
+'userlogin' => 'Enzetar una sesión / creyar cuenta',
+'logout' => "Salir d'a sesión",
+'userlogout' => 'Salir',
+'notloggedin' => 'No ha dentrato en o sistema',
+'nologin' => 'No tiene garra cuenta? $1.',
+'nologinlink' => 'Creyar una nueba cuenta',
+'createaccount' => 'Creyar una nueba cuenta',
+'gotaccount' => 'Tiene ya una cuenta? $1.',
+'gotaccountlink' => 'Identificar-se y enzetar sesión',
+'createaccountmail' => 'por correu electronico',
+'badretype' => 'As palabras de paso que ha escrito no son iguals.',
+'userexists' => 'Ixe nombre ya ye en uso. Por fabor, meta un nombre diferent.',
+'youremail' => 'Adreza de correu electronico:',
+'username' => "Nombre d'usuario:",
+'uid' => "ID d'usuario:",
+'yourrealname' => 'Nombre reyal:',
+'yourlanguage' => 'Luenga:',
+'yourvariant' => 'Modalidat linguistica:',
+'yournick' => 'Embotada (ta siñar):',
+'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.',
+'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',
+'prefs-help-email' => "Adreza de correu-e (opzional): Premite á atros usuarios nimbiar-le correus electronicos por meyo de a suya pachina d'usuario u de descusión d'usuario sin d'aber de rebelar a suya identidá.",
+'prefs-help-email-required' => 'Cal una adreza de correu-e.',
+'nocookiesnew' => "A cuenta d'usuario s'ha creyata, pero encara no ye indentificato. {{SITENAME}} fa serbir <em>cookies</em> ta identificar á os usuario rechistratos, pero pareix que las tiene desautibatas. Por fabor, autibe-las e identifique-se con o suyo nombre d'usuario y palabra de paso.",
+'nocookieslogin' => "{{SITENAME}} fa serbir <em>cookies</em> ta la identificazión d'usuarios. Tiene as <em>cookies</em> desautibatas en o nabegador. Por fabor, autibe-las y prebe á identificar-se de nuebas.",
+'noname' => "No ha escrito un nombre d'usuario correuto.",
+'loginsuccesstitle' => "S'ha identificato correutament",
+'loginsuccess' => 'Ha enzetato una sesión en {{SITENAME}} como "$1".',
+'nosuchuser' => 'No bi ha garra usuario clamato "$1".
+Comprebe si ha escrito bien o nombre u creye una nueba cuenta d\'usuario.',
+'nosuchusershort' => 'No bi ha garra usuario con o nombre "<nowiki>$1</nowiki>". Comprebe si o nombre ye bien escrito.',
+'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.",
+'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).
+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".
+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.",
+'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.',
+'emailnotauthenticated' => "A suya adreza de correu-e <strong> no ye encara confirmata </strong>. No podrá recullir garra correu t'as siguients funzions.",
+'noemailprefs' => '<strong>Escriba una adreza de correu-e ta autibar istas carauteristicas.</strong>',
+'emailconfirmlink' => 'Confirme a suya adreza de correu-e',
+'invalidemailaddress' => "L'adreza de correu-e no puede estar azeutata pues tiene un formato incorreuto. Por favor, escriba una adreza bien formateyata, u dixe buedo ixe campo.",
+'accountcreated' => 'Cuenta creyata',
+'accountcreatedtext' => "S'ha creyato a cuenta d'usuario de $1.",
+'createaccount-title' => 'Creyar una cuenta en {{SITENAME}}',
+'createaccount-text' => 'Belún ha creyato una cuenta con o nombre "$2" en {{SITENAME}} ($4), con a palabra de paso "$3" y endicando a suya adreza de correu. Abría de dentrar-ie agora y cambiar a suya palabra de paso.
+
+Si a cuenta s\'ha creyato por error, simplament innore iste mensache.',
+'loginlanguagelabel' => 'Idioma: $1',
+
+# Password reset dialog
+'resetpass' => "Restablir a palabra de paso d'a cuenta d'usuario",
+'resetpass_announce' => 'Ha enzetato una sesión con una palabra de paso temporal que fue nimbiata por correu electronico. Por fabor, escriba aquí una nueba palabra de paso:',
+'resetpass_text' => '<!-- Adiba aquí o testo -->',
+'resetpass_header' => 'Restablir a palabra de paso',
+'resetpass_submit' => 'Cambiar a palabra de paso e identificar-se',
+'resetpass_success' => 'A suya palabra de paso ya ye cambiata. Agora ya puede dentrar-ie...',
+'resetpass_bad_temporary' => "A palabra de paso temporal no ye conforme. Puede estar que ya aiga cambiato a suya palabra de paso u que aiga demandato o nimbío d'un atra.",
+'resetpass_forbidden' => 'No se pueden cambiar as palabras de paso en {{SITENAME}}',
+'resetpass_missing' => 'No ha escrito datos en o formulario.',
+
+# Edit page toolbar
+'bold_sample' => 'Testo en negreta',
+'bold_tip' => 'Testo en negreta',
+'italic_sample' => 'Testo en cursiba',
+'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_tip' => "Binclo esterno (alcuerde-se d'adibir o prefixo http://)",
+'headline_sample' => 'Testo de tetular',
+'headline_tip' => 'Tetular de libel 2',
+'math_sample' => 'Escriba aquí a formula',
+'math_tip' => 'Formula matematica (LaTeX)',
+'nowiki_sample' => 'Escriba aquí testo sin de formato',
+'nowiki_tip' => 'Inorar o formato wiki',
+'image_sample' => 'Exemplo.jpg',
+'image_tip' => 'Imachen encrustata',
+'media_sample' => 'Exemplo.ogg',
+'media_tip' => "Binclo ta l'archibo",
+'sig_tip' => 'Siñadura, calendata y ora',
+'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>
+
+O bloqueyo fue feito por \$1. A razón data ye ''\$2''.
+
+* Prenzipio d'o bloqueyo: \$8
+* Fin d'o bloqueyo: \$6
+* Indentificazión bloqueyata: \$7
+
+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.
+
+A razón d'o bloqueyo ye ista:
+
+:''\$2''
+
+
+* Prenzipio d'o bloqueyo: \$8
+* Fin d'o bloqueyo: \$6
+
+
+Puede contautar con \$1 u con atro d'os [[{{MediaWiki:Grouppage-sysop}}|almenistradors]] ta litigar sobre o bloqueyo.
+
+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.
+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.
+<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 />
+<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.
+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.'''
+
+Abría de considerar si ye reyalment nezesario continar editando ista pachina.
+Puede consultar o rechistro de borraus que s'amuestra a continuazión:",
+
+# "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.]])',
+
+# 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]].
+
+A razón endicata por $3 ye ''$2''",
+
+# History pages
+'viewpagelogs' => "Beyer os rechistros d'ista pachina",
+'nohistory' => "Ista pachina no tiene un istorial d'edizions.",
+'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",
+'previousrevision' => '← Bersión anterior',
+'nextrevision' => 'Bersión siguient →',
+'currentrevisionlink' => 'Beyer bersión autual',
+'cur' => 'aut',
+'next' => 'siguient',
+'last' => 'zag',
+'orig' => 'orich',
+'page_first' => 'primeras',
+'page_last' => 'zagueras',
+'histlegend' => 'Leyenda: (aut) = esferenzias con a bersión autual,
+(ant) = diferenzias con a bersión anterior, m = edizión menor',
+'deletedrev' => '[borrato]',
+'histfirst' => 'Primeras contrebuzions',
+'histlast' => 'Zagueras',
+'historyempty' => '(buedo)',
+
+# Revision feed
+'history-feed-title' => 'Istorial de bersions',
+'history-feed-description' => "Istorial de bersions d'ista pachina en o wiki",
+'history-feed-item-nocomment' => '$1 en $2', # user at time
+'history-feed-empty' => "A pachina demandata no esiste.
+Puede que aiga estato borrata d'o wiki u renombrata.
+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-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>',
+'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>",
+'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-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:'''",
+'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-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-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",
+'revdelete-log' => "Comentario d'o rechistro:",
+'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.",
+
+# 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.'''",
+'mergehistory-box' => 'Aunir as bersions de dos pachinas:',
+'mergehistory-from' => "Pachina d'orichen:",
+'mergehistory-into' => 'Pachina de destino:',
+'mergehistory-list' => "Istorial d'edizions aunible",
+'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-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.',
+
+# Merge log
+'mergelog' => "Rechistro d'unions",
+'pagemerge-logentry' => "s'ha aunito [[$1]] con [[$2]] (rebisions dica $3)",
+'revertmerge' => 'Esfer a unión',
+'mergelogpagetext' => "Contino s'amuestra una lista d'as pachinas más rezients que os suyos istorials s'han aunito con o d'atra pachina.",
+
+# Diffs
+'history-title' => 'Istorial de bersions de "$1"',
+'difference' => '(Esferenzias entre bersions)',
+'lineno' => 'Linia $1:',
+'compareselectedversions' => 'Confrontar as bersions trigatas',
+'editundo' => 'esfer',
+'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.',
+
+# 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.",
+'prefsreset' => "S'ha tornato as preferenzias t'as suyas baluras almadazenatas.",
+'qbsettings' => 'Preferenzias de "Quickbar"',
+'qbsettings-none' => 'Denguna',
+'qbsettings-fixedleft' => 'Fixa á la zurda',
+'qbsettings-fixedright' => 'Fixa á la dreita',
+'qbsettings-floatingleft' => 'Flotant á la zurda',
+'qbsettings-floatingright' => 'Flotant á la dreita',
+'changepassword' => 'Cambiar a palabra de paso',
+'skin' => 'Aparenzia',
+'math' => 'Esprisions matematicas',
+'dateformat' => 'Formato de calendata',
+'datedefault' => 'Sin de preferenzias',
+'datetime' => 'Calendata y ora',
+'math_failure' => 'Error en o codigo',
+'math_unknown_error' => 'error esconoxita',
+'math_unknown_function' => 'funzión esconoxita',
+'math_lexing_error' => 'error de lesico',
+'math_syntax_error' => 'error de sintacsis',
+'math_image_error' => "Bi abió una error en a combersión enta o formato PNG; comprebe que ''latex'', ''dvips'', ''gs'', y ''convert'' sigan instalatos correutament.",
+'math_bad_tmpdir' => "No s'ha puesto escribir u creyar o direutorio temporal d'esprisions matematicas",
+'math_bad_output' => "No s'ha puesto escribir u creyar o direutorio de salida d'esprisions matematicas",
+'math_notexvc' => "No s'ha trobato l'archibo executable ''texvc''. Por fabor, leiga <em>math/README</em> ta confegurar-lo correutament.",
+'prefs-personal' => 'Datos presonals',
+'prefs-rc' => 'Zaguers cambeos',
+'prefs-watchlist' => 'Lista de seguimiento',
+'prefs-watchlist-days' => "Numero de días que s'amostrarán en a lista de seguimiento:",
+'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',
+'oldpassword' => 'Palabra de paso antiga:',
+'newpassword' => 'Nueba palabra de paso:',
+'retypenew' => 'Torne á escribir a nueba palabra de paso:',
+'textboxsize' => 'Edizión',
+'rows' => 'Ringleras:',
+'columns' => 'Colunnas:',
+'searchresultshead' => 'Mirar',
+'resultsperpage' => "Resultaus que s'amostrarán por pachina:",
+'contextlines' => "Linias de contexto que s'amostrarán por resultau",
+'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''",
+'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).",
+'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",
+'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.",
+
+# Groups
+'group' => 'Colla:',
+'group-autoconfirmed' => 'Usuarios Autoconfirmatos',
+'group-sysop' => 'Almenistradors',
+'group-bureaucrat' => 'Burocratas',
+'group-all' => '(toz)',
+
+'group-autoconfirmed-member' => 'Usuario autoconfirmato',
+'group-sysop-member' => 'Almenistrador',
+'group-bureaucrat-member' => 'Burocrata',
+
+'grouppage-autoconfirmed' => '{{ns:project}}:Usuarios autoconfirmatos',
+'grouppage-bot' => '{{ns:project}}:Bots',
+'grouppage-sysop' => '{{ns:project}}:Almenistradors',
+'grouppage-bureaucrat' => '{{ns:project}}:Burocratas',
+
+# User rights log
+'rightslog' => "Rechistro de premisos d'os usuarios",
+'rightslogtext' => "Iste ye un rechistro d'os cambios en os premisos d'os usuarios",
+'rightslogentry' => "ha cambiato os dreitos d'usuario de $1: de $2 a $3",
+'rightsnone' => '(denguno)',
+
+# Recent changes
+'nchanges' => '$1 {{PLURAL:$1|cambeo|cambeos}}',
+'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>).",
+'rclistfrom' => 'Amostrar cambeos rezients dende $1',
+'rcshowhideminor' => '$1 edizions menors',
+'rcshowhideliu' => '$1 usuarios rechistraus',
+'rcshowhideanons' => '$1 usuarios anonimos',
+'rcshowhidepatr' => '$1 edizions controlatas',
+'rcshowhidemine' => '$1 as mías edizions',
+'rclinks' => 'Amostrar os zaguers $1 cambeos en os zaguers $2 días.<br />$3',
+'diff' => 'esf',
+'hist' => 'ist',
+'hide' => 'amagar',
+'show' => 'Amostrar',
+'number_of_watching_users_pageview' => '[$1 {{PLURAL:$1|usuario|usuarios}} cosirando]',
+'rc_categories' => 'Limite d\'as categorías (deseparatas por "|")',
+'rc_categories_any' => 'Todas',
+'newsectionsummary' => 'Nueba sezión: /* $1 */',
+
+# Recent changes linked
+'recentchangeslinked' => 'Cambeos en pachinas relazionadas',
+'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'''.",
+
+# Upload
+'upload' => 'Cargar archibo',
+'uploadbtn' => 'Cargar un archibo',
+'reupload' => 'Cargar un atra begada',
+'reuploaddesc' => "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.",
+'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.
+
+
+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.",
+'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.",
+'filename' => "Nombre de l'archibo",
+'filedesc' => 'Resumen',
+'fileuploadsummary' => 'Resumen:',
+'filestatus' => "Situazión d'os dreitos d'autor (copyright)",
+'filesource' => 'Fuent',
+'uploadedfiles' => 'Archibos cargatos',
+'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.",
+'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-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.',
+'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-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 />
+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.',
+'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]]",
+'successfulupload' => 'Cargata correutament',
+'uploadwarning' => "Albertenzia de carga d'archibo",
+'savefile' => 'Alzar archibo',
+'uploadedimage' => '«[[$1]]» cargato.',
+'overwroteimage' => 's\'ha cargato una nueba bersión de "[[$1]]"',
+'uploaddisabled' => "A carga d'archibos ye desautibata",
+'uploaddisabledtext' => 'No ye posible cargar archibos en {{SITENAME}}.',
+'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",
+'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.'''
+
+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:
+# * 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
+DSC_ # Nikon
+DSCF # Fuji
+DSCN # Nikon
+DUW # bels telefonos móbils
+IMG # chenerica
+JD # Jenoptik
+MGP # Pentax
+PICT # misz.
+ #</pre> <!-- dixe ista linia esautament igual como ye -->',
+
+'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-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.",
+
+# 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',
+'upload-curl-error6-text' => 'No se podió plegar dica a URL. Por fabor, comprebe que a URL sía correuta y o sitio web sía funzionando.',
+'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',
+'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:",
+
+# 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-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-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-comment' => 'Causa:',
+'filedelete-submit' => 'Borrar',
+'filedelete-success' => "S'ha borrato '''$1'''.",
+'filedelete-success-old' => "<span class=\"plainlinks\">S'ha borrato a bersión de '''[[Media:\$1|\$1]]''' de \$3, \$2.</span>",
+'filedelete-nofile' => "'''$1''' no esiste en {{SITENAME}}.",
+'filedelete-nofile-old' => "No bi ha garra bersión alzata de '''$1''' con ixos atributos.",
+'filedelete-iscurrent' => "Ye prebando de borrar a bersión más rezient d'iste archibo. Por fabor, torne en primeras ta una bersión anterior.",
+'filedelete-otherreason' => 'Atras razons:',
+'filedelete-reason-otherlist' => 'Atra razón',
+'filedelete-reason-dropdown' => "*Razons comuns ta borrar archibos
+** Dreitos d'autor no respetatos
+** Archibo duplicato",
+
+# MIME search
+'mimesearch' => 'Mirar por tipo MIME',
+'mimesearch-summary' => 'Ista pachina premite filtrar archibos seguntes o suyo tipo MIME. Escribir: tipodeconteniu/subtipo, por exemplo <tt>image/jpeg</tt>.',
+'mimetype' => 'Tipo MIME:',
+'download' => 'escargar',
+
+# Unwatched pages
+'unwatchedpages' => 'Pachinas no cosiratas',
+
+# List redirects
+'listredirects' => 'Lista de reendrezeras',
+
+# Unused templates
+'unusedtemplates' => 'Plantillas sin de uso',
+'unusedtemplatestext' => "En ista pachina se fa una lista de todas as pachinas en o espazio de nombres de plantillas que no s'encluyen en denguna atra pachina. Alcuerde-se de mirar as pachinas que tiengan binclos ta una plantilla antis de borrar-la.",
+'unusedtemplateswlh' => 'atros binclos',
+
+# Random page
+'randompage' => "Una pachina á l'azar",
+'randompage-nopages' => 'No bi ha garra pachina en iste espazio de nombres.',
+
+# Random redirect
+'randomredirect' => 'Ir-ie á una adreza cualsiquiera',
+'randomredirect-nopages' => 'No bi ha garra reendrezera en iste espazio de nombres.',
+
+# Statistics
+'statistics' => 'Estadisticas',
+'sitestats' => "Estadisticas d'a {{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.
+
+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'''",
+'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]].",
+
+'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.",
+
+'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',
+
+'fewestrevisions' => 'Articlos con menos edizions',
+
+# Miscellaneous special pages
+'nbytes' => '$1 {{PLURAL:$1|byte|bytes}}',
+'ncategories' => '$1 {{PLURAL:$1|categoría|categorías}}',
+'nlinks' => '$1 {{PLURAL:$1|binclo|binclos}}',
+'nmembers' => '$1 {{PLURAL:$1|miembro|miembros}}',
+'nrevisions' => '$1 {{PLURAL:$1|bersión|bersions}}',
+'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.",
+'uncategorizedpages' => 'Pachinas sin categorizar',
+'uncategorizedcategories' => 'Categorías sin categorizar',
+'uncategorizedimages' => 'Archibos sin categorizar',
+'uncategorizedtemplates' => 'Plantillas sin categorizar',
+'unusedcategories' => 'Categorías sin emplegar',
+'unusedimages' => 'Imachens sin uso',
+'popularpages' => 'Pachinas populars',
+'wantedcategories' => 'Categorías requiestas',
+'wantedpages' => 'Pachinas requiestas',
+'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',
+'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>',
+'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.',
+'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}}',
+
+# Book sources
+'booksources' => 'Fuents de libros',
+'booksources-search-legend' => 'Mirar fuents de libros',
+'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:',
+'log' => 'Rechistros',
+'all-logs-page' => 'Toz os rechistros',
+'log-search-legend' => 'Mirar rechistros',
+'log-search-submit' => 'Ir-ie',
+'alllogstext' => "Presentazión conchunta de toz os rechistros de {{SITENAME}}.
+Ta reduzir o listau puede trigar un tipo de rechistro, o nombre de l'usuario u a pachina afeutata.",
+'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
+'nextpage' => 'Siguient pachina ($1)',
+'prevpage' => 'Pachina anterior ($1)',
+'allpagesfrom' => 'Amostrar pachinas que prenzipien por:',
+'allarticles' => 'Toz os articlos',
+'allinnamespace' => 'Todas as pachinas (espazio $1)',
+'allnotinnamespace' => "Todas as pachinas (fueras d'o espazio de nombres $1)",
+'allpagesprev' => 'Anterior',
+'allpagesnext' => 'Siguient',
+'allpagessubmit' => 'Amostrar',
+'allpagesprefix' => 'Amostrar pachinas con o prefixo:',
+'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
+'listusersfrom' => 'Amostrar usuarios que o nombre suyo prenzipie por:',
+'listusers-submit' => 'Amostrar',
+'listusers-noresult' => "No s'ha trobato ixe usuario.",
+
+# 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.",
+'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.",
+'usermailererror' => "L'ocheto de correu retornó una error:",
+'defemailsubject' => 'Correu de {{SITENAME}}',
+'noemailtitle' => 'No bi ha garra adreza de correu eletronico',
+'noemailtext' => "Iste usuario no ha espezificato una adreza conforme de correu electronico, u s'ha estimato más no recullir correu electronico d'atros usuarios.",
+'emailfrom' => 'De',
+'emailto' => 'Ta',
+'emailsubject' => 'Afer',
+'emailmessage' => 'Mensache',
+'emailsend' => 'Nimbiar',
+'emailccme' => "Nimbiar-me una copia d'o mío mensache.",
+'emailccsubject' => "Copia d'o suyo mensache ta $1: $2",
+'emailsent' => 'Mensache de correu nimbiato',
+'emailsenttext' => "S'ha nimbiato o suyo correu.",
+
+# Watchlist
+'watchlist' => 'Lista de seguimiento',
+'mywatchlist' => 'Lista de seguimiento',
+'watchlistfor' => "(de '''$1''')",
+'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.",
+'addedwatch' => 'Adibiu á la suya lista de seguimiento',
+'addedwatchtext' => "A pachina «[[:\$1]]» s'ha adibito t'a suya [[Special:Watchlist|lista de seguimiento]]. Os cambios esdebenideros en ista pachina y en a suya pachina de descusión asoziata s'endicarán astí, y a pachina amanixerá '''en negreta''' en a [[Special:Recentchanges|lista de cambeos rezients]] ta que se beiga millor. <p>Si nunca quiere borrar a pachina d'a suya lista de seguimiento, punche \"Deixar de cosirar\" en o menú.",
+'removedwatch' => "Borrata d'a lista de seguimiento",
+'removedwatchtext' => 'A pachina "[[:$1]]" ha estato borrata d\'a suya lista de seguimiento.',
+'watch' => 'Cosirar',
+'watchthispage' => 'Cosirar ista pachina',
+'unwatch' => 'Deixar de cosirar',
+'unwatchthispage' => 'Deixar de cosirar',
+'notanarticle' => 'No ye una pachina de conteniu',
+'watchnochange' => "Dengún d'os articlos d'a suya lista de seguimiento no s'ha editoato en o periodo de tiempo amostrato.",
+'watchlist-details' => '{{PLURAL:$1|$1 pachina cosirata|$1 pachinas cosiratas}} (sin contar-ie as pachinas de descusión).',
+'wlheader-enotif' => '* A notificazión por correu eletronico ye autibata',
+'wlheader-showupdated' => "* Las pachinas cambiadas dende a suya zaguer besita s'amuestran en '''negreta'''",
+'watchmethod-recent' => 'Mirando pachinas cosiratas en os zaguers cambeos',
+'watchmethod-list' => 'mirando edizions rezients en as pachinas cosiratas',
+'watchlistcontains' => 'A suya lista de seguimiento tiene $1 {{PLURAL:$1|pachina|pachinas}}.',
+'iteminvalidname' => "Bi ha un problema con l'articlo '$1', o nombre no ye conforme...",
+'wlnote' => "Contino se i {{PLURAL:$1|amuestra o zaguer cambeo|amuestran os zaguers '''$1''' cambeos}} en {{PLURAL:$2|a zaguer ora|as zagueras '''$2''' oras}}.",
+'wlshowlast' => 'Amostrar as zagueras $1 horas, $2 días u $3',
+'watchlist-show-bots' => 'Amostrar as edizions feitas por bots',
+'watchlist-hide-bots' => 'Amagar as edizions de bots',
+'watchlist-show-own' => 'Amostrar as mías edizions',
+'watchlist-hide-own' => 'Amagar as mías edizions',
+'watchlist-show-minor' => 'Amostrar as edizions menors',
+'watchlist-hide-minor' => 'Amagar edizions menors',
+# Displayed when you click the "watch" button and it's in the process of watching
+'watching' => 'Cosirando...',
+'unwatching' => 'Deixar de cosirar...',
+
+'enotif_mailer' => 'Sistema de notificazión por correu de {{SITENAME}}',
+'enotif_reset' => 'Marcar todas as pachinas como besitatas',
+'enotif_newpagetext' => 'Ista ye una nueba pachina.',
+'enotif_impersonal_salutation' => 'usuario de {{SITENAME}}',
+'changed' => 'editata',
+'created' => 'creyata',
+'enotif_subject' => 'A pachina $PAGETITLE de {{SITENAME}} ha estato $CHANGEDORCREATED por $PAGEEDITOR',
+'enotif_lastvisited' => 'Baiga ta $1 ta beyer toz os cambeos dende a suya zaguer besita.',
+'enotif_lastdiff' => 'Baiga ta $1 ta beyer iste cambeo.',
+'enotif_anon_editor' => 'usuario anonimo $1',
+'enotif_body' => 'Quiesto/a $WATCHINGUSERNAME,
+
+A pachina «$PAGETITLE» de {{SITENAME}}
+ha estato $CHANGEDORCREATED por l\'usuario $PAGEEDITOR o $PAGEEDITDATE.
+Puede trobar a bersión autual en {{fullurl:$PAGETITLE_RAWURL}}
+
+$NEWPAGE
+
+O resumen d\'a edizión ye: $PAGESUMMARY $PAGEMINOREDIT
+
+Ta comunicar-se con l\'usuario:
+por correu: {{fullurl:Special:Emailuser|target=$PAGEEDITOR_RAWURL}}
+en o wiki: {{fullurl:User:$PAGEEDITOR_RAWURL}}
+
+Ta recullir nuebas notificazions de cambios d\'ista pachina abrá de besitar-la nuebament.
+Tamién puede cambiar, en a su lista de seguimiento, as opzions de notificazión d\'as pachinas que ye cosirando.
+
+Atentament,
+ O sistema de notificazión de {{SITENAME}}.
+
+--
+Ta cambiar as opzions d\'a suya lista de seguimiento en:
+{{fullurl:Special:Watchlist|edit=yes}}
+
+Ta obtenir más informazión y aduya:
+{{fullurl:{{MediaWiki:Helppage}}}}',
+
+# Delete/protect/revert
+'deletepage' => 'Borrar ista pachina',
+'confirm' => 'Confirmar',
+'excontent' => "O conteniu yera: '$1'",
+'excontentauthor' => "O conteniu yera: '$1' (y o suyo unico autor '$2')",
+'exbeforeblank' => "O conteniu antis de blanquiar yera: '$1'",
+'exblank' => 'a pachina yera bueda',
+'delete-confirm' => 'Borrar "$1"',
+'delete-legend' => 'Borrar',
+'historywarning' => 'Pare cuenta: A pachina que ba a borrar tiene un istorial de cambeos:',
+'confirmdeletetext' => "Ye amanato á borrar d'a base de datos
+una pachina con tot o suyo istorial.
+Por fabor, confirme que reyalment ye mirando de fer ixo, que entiende
+as consecuenzias, y que lo fa d'alcuerdo con as
+[[{{MediaWiki:Policy-url}}|politicas]] d'o wiki.",
+'actioncomplete' => 'Aizión rematada',
+'deletedtext' => '"<nowiki>$1</nowiki>" ha estato borrato.
+Se beiga en $2 un rechistro d\'os borraus rezients.',
+'deletedarticle' => 'borrato "$1"',
+'dellogpage' => 'Rechistro de borraus',
+'dellogpagetext' => "Contino se i amuestra una lista d'os borraus más rezients.",
+'deletionlog' => 'rechistro de borraus',
+'reverted' => 'Tornato ta una bersión anterior',
+'deletecomment' => 'Razón ta borrar:',
+'deleteotherreason' => 'Otras/Más razons:',
+'deletereasonotherlist' => 'Otra razón',
+'deletereason-dropdown' => "*Razons comuns de borrau
+** Á demanda d'o mesmo autor
+** trencadura de copyright
+** Bandalismo",
+'delete-toobig' => "Ista pachina tiene un istorial d'edizión prou largo, con más de $1 bersions. S'ha restrinchito o borrau d'ista mena de pachinas ta aprebenir d'a corrompizión azidental de {{SITENAME}}.",
+'delete-warning-toobig' => "Ista pachina tiene un istorial d'edizión muito largo, con más de $1 bersions. Si la borra puede corromper as operazions d'a base de datos de {{SITENAME}}; contine con ficazio.",
+'rollback' => 'Esfer edizions',
+'rollback_short' => 'Esfer',
+'rollbacklink' => 'Esfer',
+'rollbackfailed' => "No s'ha puesto esfer",
+'cantrollback' => "No se pueden esfer as edizions; o zaguer colaborador ye o unico autor d'iste articlo.",
+'alreadyrolled' => 'No se puede esfer a zaguer edizión de [[$1]] por [[User:$2|$2]] ([[User talk:$2|descusión]]); belatro usuario ya ha editato u esfeito una edizión en ixa pachina. A zaguer edizión estió feita por [[User:$3|$3]] ([[User talk:$3|descusión]]).',
+'editcomment' => 'O comentario d\'a edizión ye: "<i>$1</i>".', # only shown if there is an edit comment
+'revertpage' => "Esfeitas as zagueras edizions reyalizatas por [[Special:Contributions/$2|$2]] ([[User talk:$2|Descusión]]); s'ha retornato t'a zaguera edizión de [[User:$1|$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' => "Esfeitas as edizions de $1; s'ha retornato á la zaguer bersión de $2.",
+'sessionfailure' => 'Pareix que bi ha un problema con a suya sesión;
+s\'ha canzelato ista aizión como mida de precura contra secuestros de sesión.
+Por fabor, prete "Entazaga" en o suyo nabegador ta cargar a pachina d\'a que benió, y torne á prebar alabez.',
+'protectlogpage' => 'Protezions de pachinas',
+'protectlogtext' => 'Contino se i amuestra una lista de protezions y esprotezions de pachinas. Se beiga [[Special:Protectedpages|lista de pachinas protechitas]] ta más informazión.',
+'protectedarticle' => "s'ha protechito [[$1]]",
+'modifiedarticleprotection' => 's\'ha cambiato o libel de protezión de "[[$1]]"',
+'unprotectedarticle' => "s'ha esprotechito [[$1]]",
+'protectsub' => '(Protechendo "$1")',
+'confirmprotect' => 'Confirmar protezión',
+'protectcomment' => 'Razón:',
+'protectexpiry' => 'Calendata de caduzidat:',
+'protect_expiry_invalid' => 'Tiempo de zircunduzión incorreuto.',
+'protect_expiry_old' => 'O tiempo de caduzidat ye una calendata ya pasata.',
+'unprotectsub' => '(Esprotechendo "$1")',
+'protect-unchain' => 'Confegurar premisos ta treslaus',
+'protect-text' => "Puede beyer y cambiar o libel e protezión d'a pachina <strong><nowiki>$1</nowiki></strong>.",
+'protect-locked-blocked' => "No puede cambiar os libels de protezión mientres ye bloqueyato. Contino se i amuestran as opzions autuals d'a pachina <strong>$1</strong>:",
+'protect-locked-dblock' => "Os libels de protezión no se pueden cambiar por un bloqueyo autibo d'a base de datos.
+Contino se i amuestran as opzions autuals d'a pachina <strong>$1</strong>:",
+'protect-locked-access' => "A suya cuenta no tiene premiso ta cambiar os libels de protezión d'as pachinas. Aquí bi son as propiedaz autuals d'a pachina <strong>$1</strong>:",
+'protect-cascadeon' => "Ista pachina ye autualment protechita por estar encluyita en {{PLURAL:$1|a siguient pachina|as siguients pachinas}}, que tienen autibata a opzión de protezión en cascada. Puede cambiar o libel de protezión d'ista pachina, pero no afeutará á la protezión en cascada.",
+'protect-default' => '(por defeuto)',
+'protect-fallback' => 'Amenista o premiso "$1"',
+'protect-level-autoconfirmed' => 'bloqueyar usuarios no rechistratos',
+'protect-level-sysop' => 'Sólo almenistradors',
+'protect-summary-cascade' => 'en cascada',
+'protect-expiring' => 'caduca o $1 (UTC)',
+'protect-cascade' => 'Protezión en cascada - protecher totas as pachinas encluyidas en ista.',
+'protect-cantedit' => "No puede cambiar os libels de protezión d'ista pachina, porque no tiene premiso ta editar-la.",
+'restriction-type' => 'Premiso:',
+'restriction-level' => 'Libel de restrizión:',
+'minimum-size' => 'Grandaria menima',
+'maximum-size' => 'Grandaria maisima',
+
+# Restrictions (nouns)
+'restriction-edit' => 'Editar',
+'restriction-move' => 'Tresladar',
+'restriction-create' => 'Creyar',
+
+# Restriction levels
+'restriction-level-sysop' => 'protechita de tot',
+'restriction-level-autoconfirmed' => 'semiprotechita',
+'restriction-level-all' => 'cualsiquier libel',
+
+# Undelete
+'undelete' => 'Beyer pachinas borratas',
+'undeletepage' => 'Beyer y restaurar pachinas borratas',
+'viewdeletedpage' => 'Beyer pachinas borratas',
+'undeletepagetext' => "As pachinas siguiens han siu borradas, pero encara son en l'archibo y podría estar restauradas. El archibo se borra periodicamén.",
+'undeleteextrahelp' => "Ta restaurar a pachina antera con todas as bersions, deixe todas as caixetas sin siñalar y prete '''''Restaurar!'''''. Ta restaurar sólo belunas d'as bersions, siñale as caixetas correspondients á las bersions que quiere restaurar y punche dimpués '''''Restaurar!'''''. Punchando '''''Prenzipiar''''' se borrará o comentario y se tirarán os siñals d'as caixetas.",
+'undeleterevisions' => '$1 {{PLURAL:$1|bersión|bersions}} archibatas',
+'undeletehistory' => "Si restaura una pachina, todas as suyas bersions serán restauratas ta o suyo istorial. Si dende que se borró a orichinal s'ha creyato una nueba pachina con o mesmo nombre, as bersions restauradas amanixerán como anteriors á las d'a pachina autual. Pare cuenta tamién que as posibles restrizions se pierden en fer a restaurazión",
+'undeleterevdel' => "No s'esfará o borrau si iste resulta en o borrau parzial d'a zaguer rebisión d'a pachina. En ixe caso, deselezione u amuestre as bersions borratas más rezients. As bersions d'archibos que no tiene premiso ta beyer no se restaurarán.",
+'undeletehistorynoadmin' => "L'articlo ha estato borrato. A razón d'o suyo borrau s'endica más t'abaixo en o resumen, asinas como os detalles d'as edizions feitas antis d'o borrau. O testo completo de l'articlo será disponible sólo que ta os usuarios con premisos d'almenistrador.",
+'undelete-revision' => "S'ha borrato a bersión de $1 de $2 (por $3):",
+'undeleterevision-missing' => "Bersión no conforme u no trobata. Regular que o binclo sia incorreuto u que a bersión aiga estato restaurata u borrata de l'archibo.",
+'undelete-nodiff' => "No s'ha trobato garra bersión anterior.",
+'undeletebtn' => 'Restaurar!',
+'undeletelink' => 'restaurar',
+'undeletereset' => 'Prenzipiar',
+'undeletecomment' => 'Razón ta restaurar:',
+'undeletedarticle' => 'restaurata "$1"',
+'undeletedrevisions' => '{{PLURAL:$1|Una edizión restaurata|$1 edizions restauratas}}',
+'undeletedrevisions-files' => '$1 {{PLURAL:$1|rebisión|rebisions}} y $2 {{PLURAL:$2|archibo|archibos}} restauratos',
+'undeletedfiles' => '$1 {{PLURAL:$1|archibo restaurato|archibos restauratos}}',
+'cannotundelete' => "No s'ha puesto esfer o borrau; belatro usuario puede aber esfeito antis o borrau.",
+'undeletedpage' => "<big>'''S'ha restaurato $1'''</big>
+
+Consulte o [[Special:Log/delete|rechistro de borraus]] ta beyer una lista d'os zaguers borraus y restaurazions.",
+'undelete-header' => 'En o [[Special:Log/delete|rechistro de borraus]] se listan as pachina borratas fa poco tiempo.',
+'undelete-search-box' => 'Mirar en as pachinas borratas',
+'undelete-search-prefix' => 'Amostrar as pachinas que prenzipien por:',
+'undelete-search-submit' => 'Mirar',
+'undelete-no-results' => "No s'han trobato pachinas borratas con ixos criterios.",
+'undelete-filename-mismatch' => "No se pueden restaurar a rebisión d'archibo con calendata $1: o nombre d'archibo no consona",
+'undelete-bad-store-key' => "No se puede restaurar a bersión de l'archibo con calendata $1: l'archibo ya no se i trobaba antis d'o borrau.",
+'undelete-cleanup-error' => 'Bi abió una error mientres se borraba l\'archibo "$1".',
+'undelete-missing-filearchive' => "No ye posible restaurar l'archibo con ID $1 porque no bi ye en a base de datos. Puede que ya s'aiga restaurato.",
+'undelete-error-short' => "Error mientres se restauraba l'archibo: $1",
+'undelete-error-long' => 'Bi abió errors mientres se borraban os archibos:
+
+$1',
+
+# Namespace form on various pages
+'namespace' => 'Espazio de nombres:',
+'invert' => 'Contornar selezión',
+'blanknamespace' => '(Prenzipal)',
+
+# Contributions
+'contributions' => "Contrebuzions de l'usuario",
+'mycontris' => 'Contrebuzions',
+'contribsub2' => 'De $1 ($2)',
+'nocontribs' => "No s'han trobato cambeos que concordasen con ixos criterios",
+'ucnote' => "Contino se i amuestran os zaguers <b>$1</b> cambeos d'iste usuario en os zaguers <b>$2</b> días.",
+'uclinks' => 'Amostrar os zaguers $1 cambeos; amostrar os zaguers $2 días.',
+'uctop' => '(zaguer cambeo)',
+'month' => 'Dende o mes (y anteriors):',
+'year' => "Dende l'año (y anteriors):",
+
+'sp-contributions-newbies' => "Amostrar nomás as contrebuzions d'os usuarios nuebos",
+'sp-contributions-newbies-sub' => 'Por usuarios nuebos',
+'sp-contributions-blocklog' => 'Rechistro de bloqueyos',
+'sp-contributions-search' => 'Mirar contrebuzions',
+'sp-contributions-username' => "Adreza IP u nombre d'usuario:",
+'sp-contributions-submit' => 'Mirar',
+
+'sp-newimages-showfrom' => 'Amostrar archibos nuebos dende $1',
+
+# What links here
+'whatlinkshere' => 'Pachinas que enlazan con ista',
+'whatlinkshere-title' => 'Pachinas que tienen binclos ta $1',
+'whatlinkshere-page' => 'Pachina:',
+'linklistsub' => '(Lista de binclos)',
+'linkshere' => "As siguients pachinas tienen binclos enta '''[[:$1]]''':",
+'nolinkshere' => "Denguna pachina tiene binclos ta '''[[:$1]]'''.",
+'nolinkshere-ns' => "Denguna pachina d'o espazio de nombres trigato tiene binclos ta '''[[:$1]]'''.",
+'isredirect' => 'pachina reendrezata',
+'istemplate' => 'encluyida',
+'whatlinkshere-prev' => '{{PLURAL:$1|anterior|anteriors $1}}',
+'whatlinkshere-next' => '{{PLURAL:$1|siguient|siguients $1}}',
+'whatlinkshere-links' => '← binclos',
+
+# Block/unblock
+'blockip' => 'bloqueyar usuario',
+'blockiptext' => "Replena o siguient formulario ta bloqueyar l'azeso
+d'escritura dende una cuenta d'usuario u una adreza IP espezifica.
+Isto abría de fer-se sólo ta pribar bandalismos, y d'alcuerdo con
+as [[{{MediaWiki:Policy-url}}|politicas]].
+Escriba a razón espezifica ta o bloqueyo (por exemplo, cuaternando
+as pachinas que s'han bandalizatas).",
+'ipaddress' => 'Adreza IP',
+'ipadressorusername' => "Adreza IP u nombre d'usuario",
+'ipbexpiry' => 'Zircunduzión:',
+'ipbreason' => 'Razón',
+'ipbreasonotherlist' => 'Atra razón',
+'ipbreason-dropdown' => "*Razons comuns de bloqueyo
+** Meter informazión falsa
+** Borrar conteniu d'as pachinas
+** Fer publizidat ficando binclos con atras pachinas web
+** Meter sinconisions u basuera en as pachinas
+** Portar-se de traza intimidatoria u biolenta / atosegar
+** Abusar de multiples cuentas
+** Nombre d'usuario inazeutable",
+'ipbanononly' => 'bloqueyar nomás os usuarios anonimos',
+'ipbcreateaccount' => "Aprebenir a creyazión de cuentas d'usuario.",
+'ipbemailban' => 'Pribar que os usuarios nimbíen correus electronicos',
+'ipbenableautoblock' => "bloqueyar automaticament l'adreza IP emplegata por iste usuario, y cualsiquier IP posterior dende a que prebe d'editar",
+'ipbsubmit' => 'bloqueyar á iste usuario',
+'ipbother' => 'Espezificar atro periodo',
+'ipboptions' => '2 oras:2 hours,1 día:1 day,3 días:3 days,1 semana:1 week,2 semanas:2 weeks,1 mes:1 month,3 meses:3 months,6 meses:6 months,1 año:1 year,ta cutio:infinite', # display1:time1,display2:time2,...
+'ipbotheroption' => 'atro',
+'ipbotherreason' => 'Razons diferens u adizionals',
+'ipbhidename' => "Amagar usuario/IP en o rechistro de bloqueyos, a lista de bloqueyos autibos y a lista d'usuarios",
+'badipaddress' => "L'adreza IP no ye conforme.",
+'blockipsuccesssub' => "O bloqueyo s'ha feito correutament",
+'blockipsuccesstext' => "L'adreza IP [[Special:Contributions/$1|$1]] ye bloqueyata. <br />Ir t'a [[Special:Ipblocklist|lista d'adrezas IP bloqueyatas]] ta beyer os bloqueyos.",
+'ipb-edit-dropdown' => "Editar as razons d'o bloqueyo",
+'ipb-unblock-addr' => 'Esbloqueyar $1',
+'ipb-unblock' => 'Esbloqueyar un usuario u una IP',
+'ipb-blocklist-addr' => 'Amostrar bloqueyos autuals de $1',
+'ipb-blocklist' => 'Amostrar bloqueyos autuals',
+'unblockip' => 'Esbloqueyar usuario',
+'unblockiptext' => "Replene o formulario que bi ha contino ta tornar os premisos d'escritura ta una adreza IP u cuenta d'usuario que aiga estato bloqueyata.",
+'ipusubmit' => 'Esbloqueyar ista adreza',
+'unblocked' => '[[User:$1|$1]] ha estato esbloqueyato',
+'unblocked-id' => "S'ha sacato o bloqueyo $1",
+'ipblocklist' => "Lista d'as adrezas IP bloqueyatas",
+'ipblocklist-legend' => 'Mirar un usuario bloqueyato',
+'ipblocklist-username' => "Nombre d'usuario u adreza IP:",
+'ipblocklist-submit' => 'Mirar',
+'blocklistline' => '$1, $2 ha bloqueyato á $3 ($4)',
+'infiniteblock' => 'infinito',
+'expiringblock' => 'zircunduze o $1',
+'anononlyblock' => 'nomás anon.',
+'noautoblockblock' => 'Bloqueyo automatico desautibato',
+'createaccountblock' => "S'ha bloqueyato a creyazión de nuebas cuentas",
+'emailblock' => "S'ha bloqueyato o nimbió de correus electronicos",
+'ipblocklist-empty' => 'A lista de bloqueyos ye bueda.',
+'ipblocklist-no-results' => "A cuenta d'usuario u adreza IP endicata no ye bloqueyata.",
+'blocklink' => 'bloqueyar',
+'unblocklink' => 'esbloqueyar',
+'contribslink' => 'contrebuzions',
+'autoblocker' => 'Ye bloqueyato automaticament porque a suya adreza IP l\'ha feito serbir rezientement "[[User:$1|$1]]". A razón data ta bloqueyar á "[[User:$1|$1]]" estió "$2".',
+'blocklogpage' => 'Rechistro de bloqueyos',
+'blocklogentry' => "S'ha bloqueyato á [[$1]] con una durada de $2 $3",
+'blocklogtext' => "Isto ye un rechistro de bloqueyos y esbloqueyos d'usuarios. As adrezas bloqueyatas automaticament no amaneixen aquí. Mire-se a [[Special:Ipblocklist|lista d'adrezas IP bloqueyatas]] ta beyer a lista autual de biedas y bloqueyos.",
+'unblocklogentry' => 'ha esbloqueyato á "$1"',
+'block-log-flags-anononly' => 'nomás os usuarios anonimos',
+'block-log-flags-nocreate' => "s'ha desautibato a creyazión de cuentas",
+'block-log-flags-noautoblock' => "s'ha desautibato o bloqueyo automatico",
+'block-log-flags-noemail' => "s'ha desautibato o nimbío de mensaches por correu electronico",
+'range_block_disabled' => "A posibilidat d'os almenistradors de bloqueyar rangos d'adrezas IP ye desautibata.",
+'ipb_expiry_invalid' => 'O tiempo de zircunduzión no ye conforme.',
+'ipb_already_blocked' => '"$1" ya ye bloqueyato.',
+'ipb_cant_unblock' => "'''Error''': no s'ha trobato o ID de bloqueyo $1. Talment sía ya esbloqueyato.",
+'ipb_blocked_as_range' => "Error: L'adreza IP $1 no s'ha bloqueyato dreitament y por ixo no se puede esbloqueyar. Manimenos, ye bloqueyata por estar parte d'o rango $2, que sí buede esbloqueyar-se de conchunta.",
+'ip_range_invalid' => "O rango d'adrezas IP no ye conforme.",
+'blockme' => 'bloqueyar-me',
+'proxyblocker' => 'bloqueyador de proxies',
+'proxyblocker-disabled' => 'Ista funzión ye desautibata.',
+'proxyblockreason' => "S'ha bloqueyato a suya adreza IP porque ye un proxy ubierto. Por fabor, contaute on o suyo furnidor de serbizios d'Internet u con o suyo serbizio d'asistenzia tecnica e informe-les d'iste grau problema de seguridat.",
+'proxyblocksuccess' => 'Feito.',
+'sorbsreason' => 'A suya adreza IP ye en a lista de proxies ubiertos en a DNSBL de {{SITENAME}}.',
+'sorbs_create_account_reason' => 'A suya adreza IP ye en a lista de proxies ubiertos en a DNSBL de {{SITENAME}}. No puede creyar una cuenta',
+
+# Developer tools
+'lockdb' => 'Trancar a base de datos',
+'unlockdb' => 'Estrancar a base de datos',
+'lockdbtext' => "Trancando a base de datos pribará á toz os usuarios d'editar pachinas, cambiar as preferenzias, cambiar as listas de seguimiento y cualsiquier atra funzión que ameniste fer cambios en a base de datos. Por fabor, confirme que isto ye mesmament o que se mira de fer y que estrancará a base de datos malas que aiga rematato con a faina de mantenimiento.",
+'unlockdbtext' => "Estrancando a base de datos premitirá á toz os usuarios d'editar pachinas, cambiar as preferenzias y as listas de seguimiento, y cualsiquier atra funzión que ameniste cambiar a base de datos. Por fabor, confirme que isto ye mesmament o que se mira de fer.",
+'lockconfirm' => 'Sí, de berdat quiero trancar a base de datos.',
+'unlockconfirm' => 'Sí, de berdat quiero estrancar a base de datos.',
+'lockbtn' => 'Trancar a base de datos',
+'unlockbtn' => 'Estrancar a base de datos',
+'locknoconfirm' => 'No ha siñalato a caixeta de confirmazión.',
+'lockdbsuccesssub' => "A base de datos s'ha trancato correutament",
+'unlockdbsuccesssub' => "A base de datos s'ha estrancato correutament",
+'lockdbsuccesstext' => "A base de datos de {{SITENAME}} ye trancata.
+<br />Alcuerde-se-ne d'estrancar a base de datos dimpués de rematar as fainas de mantenimiento.",
+'unlockdbsuccesstext' => "S'ha estrancato a base de datos de {{SITENAME}}.",
+'lockfilenotwritable' => "O rechistro de trancamientos d'a base de datos no tiene premiso d'escritura. Ta trancar u estrancar a base de datos, iste archibo ha de tener premisos d'escritura en o serbidor web.",
+'databasenotlocked' => 'A base de datos no ye trancata.',
+
+# Move page
+'movepage' => 'Tresladar pachina',
+'movepagetext' => "Si fa serbir o formulario siguient se cambiará o nombre á la pachina, tresladando tot o suyo istorial t'o nuebo nombre.
+O títol anterior se tornará en una reendrezera ta o nuebo títol.
+Os binclos ta o títol antigo d'a pachina no se cambiarán. Asegure-se de no deixar reendrezeras dobles u crebatas.
+Ye a suya responsabilidat d'asegurar-se que os binclos continan endrezando t'an que abrían de fer-lo.
+
+Remere que a pachina '''no''' se renombrará si ya esiste una pachina con o nuebo títol, si no ye que estase una pachina bueda u una ''reendrezera'' sin istorial.
+
+Isto senifica que podrá tresladar una pachina á lo suyo títol orichinal si ha feito una error, pero no podrá escribir denzima d'una pachina ya esistent.
+
+<b>¡PARE CUENTA!</b>
+Iste puede estar un cambio drastico e inasperato ta una pachina popular;
+por fabor, asegure-se d'acatar as consecuenzias que acarriará ista aizión
+antis de seguir entadebant.",
+'movepagetalktext' => "A pachina de descusión asoziata, si esistise, será tresladata automaticament '''de no estar que:'''
+*A pachina se treslade entre espazios de nombres diferents,
+*Ya esista una pachina de descusión no bueda con o nombre nuebo, u
+*Aiga desautibato a opzión \"Tresladar tamién a pachina de descusión\".
+
+En istos casos, abrá de tresladar manualment o conteniu d'a pachina de descusión.",
+'movearticle' => 'Tresladar pachina:',
+'movenologin' => 'No ha enzetato sesión',
+'movenologintext' => 'Amenista estar un usuario rechistrato y [[Special:Userlogin|aber-se identificato enzetando una sesión]] ta tresladar una pachina.',
+'movenotallowed' => 'No tiene premisos ta tresladar pachinas en {{SITENAME}}.',
+'newtitle' => 'Ta o nuebo títol',
+'move-watch' => 'Cosirar iste articlo',
+'movepagebtn' => 'Tresladar pachina',
+'pagemovedsub' => 'Treslado feito correutament',
+'movepage-moved' => '<big>\'\'\'"$1" ha estato tresladato á "$2"\'\'\'</big>', # The two titles are passed in plain text as $3 and $4 to allow additional goodies in the message.
+'articleexists' => 'Ya bi ha una pachina con ixe nombre u o nombre que ha eslechito no ye conforme. Por fabor trigue un atro nombre.',
+'cantmove-titleprotected' => 'No puede tresladar una pachina ta íste títol porque o nuebo títol ye protechito y no puede estar creyato',
+'talkexists' => "A pachina s'ha tresladato correutament, pero a descusión no s'ha puesto tresladar porque ya esiste una con o nuebo títol. Por fabor, encorpore manualment o suyo conteniu.",
+'movedto' => 'tresladato ta',
+'movetalk' => 'Tresladar a pachina de descusión asoziata.',
+'talkpagemoved' => 'A pachina de descusión correspondient tamién estió tresladata.',
+'talkpagenotmoved' => 'A pachina de descusión correspondient <strong>no</strong> estió tresladata.',
+'1movedto2' => '[[$1]] tresladada á [[$2]]',
+'1movedto2_redir' => '[[$1]] tresladada á [[$2]] sobre una reendrezera',
+'movelogpage' => 'Rechistro de treslatos',
+'movelogpagetext' => 'Contino se i amuestra una lista de pachinas tresladatas.',
+'movereason' => 'Razón:',
+'revertmove' => 'esfer',
+'delete_and_move' => 'Borrar y tresladar',
+'delete_and_move_text' => '==S\'amenista borrar a pachina==
+
+A pachina de destino ("[[$1]]") ya esiste. Quiere borrar-la ta premitir o treslau?',
+'delete_and_move_confirm' => 'Sí, borrar a pachina',
+'delete_and_move_reason' => 'Borrata ta premitir o treslau',
+'selfmove' => "Os títols d'orichen y destino son os mesmos. No se puede tresladar una pachina ta ella mesma.",
+'immobile_namespace' => "O títol de destino ye d'una mena espezial. No se puede tresladar pachinas ta iste espazio de nombres.",
+
+# Export
+'export' => 'Esportar as pachinas',
+'exporttext' => "Puede esportar o testo y l'istorial d'edizions d'una pachina u conchunto de pachinas ta un testo XML. Iste testo XML puede importar-se ta atro wiki que faiga serbir MediaWiki á trabiés d'a [[Special:Import|pachina d'importazión]].
+
+Ta esportar pachinas, escriba os títols en a caixa de testo que bi ha más ta baixo, metendo un títol en cada linia, y eslicha si quiere esportar a bersión autual con as bersions anteriors y as lineas de l'istorial u nomás a bersión autual con a informazión sobre a zaguer edizión.
+
+En iste zaguer caso tamién puede usar un binclo, por exemplo [[Special:Export/{{Mediawiki:Mainpage}}]] t'a pachina {{Mediawiki:Mainpage}}.",
+'exportcuronly' => "Encluye nomás a bersión autual, no l'istorial de bersions completo.",
+'exportnohistory' => "----
+'''Nota:''' A esportazión de istorials de pachinas á trabiés d'iste formulario ye desautibata por problemas en o rendimiento d'o serbidor.",
+'export-submit' => 'Esportar',
+'export-addcattext' => 'Adibir pachinas dende a categoría:',
+'export-addcat' => 'Adibir',
+'export-download' => 'Alzar como un archibo',
+'export-templates' => 'Encluyir-ie plantillas',
+
+# Namespace 8 related
+'allmessages' => "Mensaches d'o sistema",
+'allmessagesname' => 'Nombre',
+'allmessagesdefault' => 'Testo por defeuto',
+'allmessagescurrent' => 'Testo autual',
+'allmessagestext' => 'Ista ye una lista de toz os mensaches disponibles en o espazio de nombres MediaWiki.',
+'allmessagesnotsupportedDB' => '{{ns:special}}:AllMessages no ye disponible porque wgUseDatabaseMessages ye desautibato.',
+'allmessagesfilter' => "Filtrar por a etiqueta d'os mensaches:",
+'allmessagesmodified' => 'Amostrar nomás os mensaches cambiatos',
+
+# Thumbnails
+'thumbnail-more' => 'Fer más gran',
+'filemissing' => 'Archibo no trobato',
+'thumbnail_error' => "S'ha produzito una error en creyar a miniatura: $1",
+'djvu_page_error' => "Pachina DjVu difuera d'o rango",
+'djvu_no_xml' => "No s'ha puesto replegar o XML ta l'archibo DjVu",
+'thumbnail_invalid_params' => "Os parametros d'as miniatura no son correutos",
+'thumbnail_dest_directory' => "No s'ha puesto creyar o direutorio de destino",
+
+# Special:Import
+'import' => 'Importar pachinas',
+'importinterwiki' => 'Importazión interwiki',
+'import-interwiki-text' => "Trigue un wiki y un títol de pachina ta importar.
+As calendatas d'as bersions y os nombres d'editors se mantendrán.
+Todas as importazions interwiki se rechistran en o [[Special:Log/import|rechistro d'importazions]].",
+'import-interwiki-history' => "Copiar todas as bersions de l'istorial d'ista pachina",
+'import-interwiki-submit' => 'Importar',
+'import-interwiki-namespace' => "Transferir pachinas t'o espazio de nombres:",
+'importtext' => "Por fabor, esporte l'archibo dende o wiki d'orichen fendo serbir a ferramienta Special:Export, alze-lo en o suyo ordenador y cargue-lo aquí.",
+'importstart' => 'Importando pachinas...',
+'import-revision-count' => '$1 {{PLURAL:$1|bersión|bersions}}',
+'importnopages' => 'No bi ha garra pachina ta importar.',
+'importfailed' => 'Ha fallato a importazión: $1',
+'importunknownsource' => "O tipo de fuent d'a importazión ye esconoixito",
+'importcantopen' => "No s'ha puesto importar iste archibo",
+'importbadinterwiki' => 'Binclo interwiki incorreuto',
+'importnotext' => 'Buendo y sin de testo',
+'importsuccess' => "S'ha rematato a importazión!",
+'importhistoryconflict' => "Bi ha un conflito de bersions en o istorial (talment ista pachina s'aiga importata antes)",
+'importnosources' => "No bi ha fuents d'importazión interwiki y no ye premitito cargar o istorial dreitament.",
+'importnofile' => "No s'ha cargato os archibos d'importazión.",
+'importuploaderrorsize' => "Ha fallato a carga de l'archibo importato. L'archibo brinca d'a grandaria de carga premitita.",
+'importuploaderrorpartial' => "Ha fallato a carga de l'archibo importato. Sólo una parte de l'archibo s'ha cargato.",
+'importuploaderrortemp' => "Ha fallato a carga de l'archibo importato. No se troba o direutorio temporal.",
+'import-parse-failure' => "Fallo en o parseyo d'a importazión XML",
+'import-noarticle' => 'No bi ha garra pachina ta importar!',
+'import-nonewrevisions' => "Ya s'eban importato denantes todas as bersions.",
+'xml-error-string' => '$1 en a linia $2, col $3 (byte $4): $5',
+
+# Import log
+'importlogpage' => "Rechistro d'importazions",
+'importlogpagetext' => 'Importazions almenistratibas de pachinas con istorial dende atros wikis.',
+'import-logentry-upload' => 'importata [[$1]] cargando un archibo',
+'import-logentry-upload-detail' => '$1 {{PLURAL:$1|bersión|bersions}}',
+'import-logentry-interwiki' => 'Importata $1 entre wikis',
+'import-logentry-interwiki-detail' => '$1 {{PLURAL:$1|bersión|bersions}} dende $2',
+
+# Tooltip help for the actions
+'tooltip-pt-userpage' => "A mía pachina d'usuario",
+'tooltip-pt-anonuserpage' => "A pachina d'usuario de l'adreza IP dende a que ye editando",
+'tooltip-pt-mytalk' => 'A mía pachina de descusión',
+'tooltip-pt-anontalk' => 'Descusión sobre edizions feitas dende ista adreza IP',
+'tooltip-pt-preferences' => 'As mías preferenzias',
+'tooltip-pt-watchlist' => 'A lista de pachinas que en ye cosirando os cambeos',
+'tooltip-pt-mycontris' => "Lista d'as mías contribuzions",
+'tooltip-pt-login' => 'Li recomendamos rechistrar-se, encara que no ye obligatorio',
+'tooltip-pt-anonlogin' => 'Li alentamos á rechistrar-se, anque no ye obligatorio',
+'tooltip-pt-logout' => 'Rematar a sesión',
+'tooltip-ca-talk' => "Descusión sobre l'articlo",
+'tooltip-ca-edit' => 'Puede editar ista pachina. Por fabor, faga serbir o botón de bisualizazión prebia antes de grabar.',
+'tooltip-ca-addsection' => 'Adibir un comentario ta ista descusión',
+'tooltip-ca-viewsource' => 'Ista pachina ye protechita, nomás puede beyer o codigo fuent',
+'tooltip-ca-history' => "Bersions anteriors d'ista pachina.",
+'tooltip-ca-protect' => 'Protecher ista pachina',
+'tooltip-ca-delete' => 'Borrar ista pachina',
+'tooltip-ca-undelete' => 'Restaurar as edizions feitas á ista pachina antis que no estase borrata',
+'tooltip-ca-move' => 'Tresladar (renombrar) ista pachina',
+'tooltip-ca-watch' => 'Adibir ista pachina á la suya lista de seguimiento',
+'tooltip-ca-unwatch' => "Borrar ista pachina d'a suya lista de seguimiento",
+'tooltip-search' => 'Mirar en {{SITENAME}}',
+'tooltip-search-go' => "Ir t'a pachina con iste títol esauto, si esiste",
+'tooltip-search-fulltext' => 'Mirar iste testo en as pachinas',
+'tooltip-p-logo' => 'Portalada',
+'tooltip-n-mainpage' => 'Besitar a Portalada',
+'tooltip-n-portal' => 'Sobre o procheuto, que puede fer, án trobar as cosas',
+'tooltip-n-currentevents' => 'Trobar informazión cheneral sobre escaizimientos autuals',
+'tooltip-n-recentchanges' => "A lista d'os zaguers cambeos en o wiki",
+'tooltip-n-randompage' => 'Cargar una pachina aleatoriament',
+'tooltip-n-help' => 'O puesto ta saber más.',
+'tooltip-n-sitesupport' => 'Refirme o procheuto',
+'tooltip-t-whatlinkshere' => "Lista de todas as pachinas d'o wiki binculatas con ista",
+'tooltip-t-recentchangeslinked' => 'Zaguers cambeos en as pachinas que tienen binclos enta ista',
+'tooltip-feed-rss' => "Canal RSS d'ista pachina",
+'tooltip-feed-atom' => "Canal Atom d'ista pachina",
+'tooltip-t-contributions' => "Beyer a lista de contrebuzions d'iste usuario",
+'tooltip-t-emailuser' => 'Nimbiar un correu electronico ta iste usuario',
+'tooltip-t-upload' => 'Cargar archibos',
+'tooltip-t-specialpages' => 'Lista de todas as pachinas espezials',
+'tooltip-t-print' => "Bersión imprentable d'a pachina",
+'tooltip-t-permalink' => "Binclo permanet ta ista bersión d'a pachina",
+'tooltip-ca-nstab-main' => "Beyer l'articlo",
+'tooltip-ca-nstab-user' => "Beyer a pachina d'usuario",
+'tooltip-ca-nstab-media' => "Beyer a pachina d'o elemento multimedia",
+'tooltip-ca-nstab-special' => 'Ista ye una pachina espezial, y no puede editar-la',
+'tooltip-ca-nstab-project' => "Beyer a pachina d'o procheuto",
+'tooltip-ca-nstab-image' => "Beyer a pachina de l'archibo",
+'tooltip-ca-nstab-mediawiki' => 'Beyer o mensache de sistema',
+'tooltip-ca-nstab-template' => 'Beyer a plantilla',
+'tooltip-ca-nstab-help' => "Beyer a pachina d'aduya",
+'tooltip-ca-nstab-category' => "Beyer a pachina d'a categoría",
+'tooltip-minoredit' => 'Siñalar ista edizión como cambeo menor',
+'tooltip-save' => 'Alzar os cambeos',
+'tooltip-preview' => 'Rebise os suyos cambeos, por fabor, faga serbir isto antes de grabar!',
+'tooltip-diff' => 'Amuestra os cambeos que ha feito en o testo.',
+'tooltip-compareselectedversions' => "Beyer as esferenzias entre as dos bersions trigatas d'ista pachina.",
+'tooltip-watch' => 'Adibir ista pachina á la suya lista de seguimiento',
+'tooltip-recreate' => 'Recreya una pachina mesmo si ya ha estato borrata dinantes',
+'tooltip-upload' => 'Prenzipia a carga',
+
+# Metadata
+'nodublincore' => 'Metadatos Dublin Core RDF desautibatos en iste serbidor.',
+'nocreativecommons' => 'Metadatos Creative Commons RDF desautibatos en iste serbidor.',
+'notacceptable' => 'O serbidor wiki no puede ufrir os datos en un formato que o suyo client (nabegador) pueda leyer.',
+
+# Attribution
+'anonymous' => 'Usuario(s) anonimo(s) de {{SITENAME}}',
+'siteuser' => 'Usuario $1 de {{SITENAME}}',
+'lastmodifiedatby' => 'Ista pachina estió modificata por zaguer begada á $2, $1 por $3.', # $1 date, $2 time, $3 user
+'othercontribs' => 'Basato en o treballo de $1.',
+'others' => 'atros',
+'siteusers' => 'Usuario(s) $1 de {{SITENAME}}',
+'creditspage' => "Creditos d'a pachina",
+'nocredits' => 'No bi ha informazión de creditos ta ista pachina.',
+
+# Spam protection
+'spamprotectiontitle' => 'Filtro de protezión contra o spam',
+'spamprotectiontext' => "A pachina que mira d'alzar ha estato bloqueyata por o filtro de spam. Regular que a causa sía en bel binclo esterno.",
+'spamprotectionmatch' => 'O testo siguient ye o que autibó o nuestro filtro de spam: $1',
+'subcategorycount' => 'Bi ha {{PLURAL:$1|una subcategoría|$1 subcategorías}} en ista categoría.',
+'categoryarticlecount' => 'Bi ha $1 {{PLURAL:$1|articlo|articlos}} en ista categoría.',
+'category-media-count' => 'Bi ha {{PLURAL:$1|&nbsp;un archibo|$1 archibos}} en ista categoría.',
+'spambot_username' => 'Esporga de spam de MediaWiki',
+'spam_reverting' => "Tornando t'a zaguera bersión sin de binclos ta $1",
+'spam_blanking' => 'Todas as bersions contienen binclos ta $1, se blanquea a pachina',
+
+# Info page
+'infosubtitle' => "Informazión d'a pachina",
+'numedits' => "Numero d'edizions (articlo): $1",
+'numtalkedits' => "Numero d'edizions (pachina de descusión): $1",
+'numwatchers' => "Número d'usuario cosirando: $1",
+'numauthors' => "Numero d'autors (articlo): $1",
+'numtalkauthors' => "Numero d'autors (pachina de descusión): $1",
+
+# Math options
+'mw_math_png' => 'Produzir siempre PNG',
+'mw_math_simple' => "HTML si ye muit simple, si no'n ye, PNG",
+'mw_math_html' => "HTML si ye posible, si no'n ye, PNG",
+'mw_math_source' => 'Deixar como TeX (ta nabegadores en formato testo)',
+'mw_math_modern' => 'Recomendato ta nabegadors modernos',
+'mw_math_mathml' => 'MathML si ye posible (esperimental)',
+
+# Patrolling
+'markaspatrolleddiff' => 'Siñalar como ya controlato',
+'markaspatrolledtext' => 'Siñalar iste articlo como controlato',
+'markedaspatrolled' => 'Siñalato como controlato',
+'markedaspatrolledtext' => 'A bersión trigata ye siñalata como controlata.',
+'rcpatroldisabled' => "S'ha desautibato o control d'os zagurers cambeos",
+'rcpatroldisabledtext' => "A funzión de control d'os zaguers cambeos ye desautibata en iste inte.",
+'markedaspatrollederror' => 'No se puede siñalar como controlata',
+'markedaspatrollederrortext' => "Ha d'espezificar una bersión ta siñalar-la como controlata.",
+'markedaspatrollederror-noautopatrol' => 'No tiene premisos ta siñalar os suyos propios cambios como controlatos.',
+
+# Patrol log
+'patrol-log-page' => 'Rechistro de control de bersions',
+'patrol-log-line' => "s'ha siñalato a bersión $1 de $2 como controlata $3",
+'patrol-log-auto' => '(automatico)',
+
+# Image deletion
+'deletedrevision' => "S'ha borrato a bersión antiga $1",
+'filedeleteerror-short' => "Error borrando l'archibo: $1",
+'filedeleteerror-long' => "Se troboron errors borrando l'archibo:
+
+$1",
+'filedelete-missing' => 'L\'archibo "$1" no se puede borrar porque no esiste.',
+'filedelete-old-unregistered' => 'A bersión de l\'archibo espezificata "$1" no ye en a base de datos.',
+'filedelete-current-unregistered' => 'L\'archibo espezificato "$1" no ye en a base de datos.',
+'filedelete-archive-read-only' => 'O direutorio d\'archibo "$1" no puede escribir-se en o serbidor web.',
+
+# Browsing diffs
+'previousdiff' => '← Ir ta esferenzias anteriors',
+'nextdiff' => "Ir t'as siguients esferenzias →",
+
+# Media information
+'mediawarning' => "'''Pare cuenta''': Iste archibo puede contener codigo endino; si l'executa, podría meter en un contornillo a seguridat d'o suyo sistema.<hr />",
+'imagemaxsize' => "Limitar as imachens en as pachinas de descripzión d'archibos á:",
+'thumbsize' => "Midas d'a miniatura:",
+'widthheightpage' => '$1×$2, $3 pachinas',
+'file-info' => "(grandaria de l'archibo: $1; tipo MIME: $2)",
+'file-info-size' => "($1 × $2 píxels; grandaria de l'archivo: $3; tipo MIME: $4)",
+'file-nohires' => '<small>No bi ha garra bersión con mayor resoluzión.</small>',
+'svg-long-desc' => '(archibo SVG, nominalment $1 × $2 píxels, grandaria: $3)',
+'show-big-image' => 'Imachen en a maisima resoluzión',
+'show-big-image-thumb' => "<small>Grandaria d'ista ambiesta prebia: $1 × $2 píxels</small>",
+
+# Special:Newimages
+'newimages' => 'Galería de nuebas imachens',
+'showhidebots' => '($1 bots)',
+'noimages' => 'No bi ha cosa á beyer.',
+
+# Bad image list
+'bad_image_list' => "O formato ye asinas:
+
+Se consideran nomás os elementos d'una lista (linias que escomienzan por *). O primer binclo de cada linia ha d'estar un binclo ta un archibo malo. Cualsiquier atros binclos en a mesma linia se consideran eszepzions, i.e. pachinas an que l'archibo puede amanexer encrustato.",
+
+# Metadata
+'metadata' => 'Metadatos',
+'metadata-help' => "Iste archibo contiene informazión adizional, probablement adibida por a camara dichital, o escáner u o programa emplegato ta creyar-lo u dichitalizar-lo. Si l'archibo ha estato modificato dende o suyo estau orichinal, bels detalles podrían no reflexar completament l'archibo modificato.",
+'metadata-expand' => 'Amostrar informazión detallata',
+'metadata-collapse' => 'Amagar a informazión detallata',
+'metadata-fields' => "Os campos de metadatos EXIF que amanixen en iste mensache s'amuestrarán en a pachina de descripzión d'a imachen, mesmo si a tabla ye plegata. Bi ha atros campos que remanirán amagatos por defeuto.
+* make
+* model
+* datetimeoriginal
+* exposuretime
+* fnumber
+* focallength", # Do not translate list items
+
+# EXIF tags
+'exif-imagewidth' => 'Amplaria',
+'exif-imagelength' => 'Altaria',
+'exif-bitspersample' => 'Bits por component',
+'exif-compression' => 'Esquema de compresión',
+'exif-photometricinterpretation' => "Composizión d'os pixels",
+'exif-orientation' => 'Orientazión',
+'exif-samplesperpixel' => 'Numero de components por píxel',
+'exif-planarconfiguration' => 'Ordinazión de datos',
+'exif-ycbcrsubsampling' => 'Razón de submuestreyo de Y á C',
+'exif-ycbcrpositioning' => 'Posizión de Y y C',
+'exif-xresolution' => 'Resoluzión orizontal',
+'exif-yresolution' => 'Resoluzión bertical',
+'exif-resolutionunit' => "Unidaz d'as resoluzions en X e Y",
+'exif-stripoffsets' => "Localizazión d'os datos d'a imachen",
+'exif-rowsperstrip' => 'Numero de ringleras por faixa',
+'exif-stripbytecounts' => 'Bytes por faixa comprimita',
+'exif-jpeginterchangeformat' => "Offset d'o JPEG SOI",
+'exif-jpeginterchangeformatlength' => 'Bytes de datos JPEG',
+'exif-transferfunction' => 'Funzión de transferenzia',
+'exif-whitepoint' => "Coordinatas cromaticas d'o punto blanco",
+'exif-primarychromaticities' => "Coordinatas cromaticas d'as colors primarias",
+'exif-ycbcrcoefficients' => "Coefizients d'a matriz de transformazión d'o espazio de colors",
+'exif-referenceblackwhite' => 'Parella de baluras blanco/negro de referenzia',
+'exif-datetime' => "Calendata y ora d'o zaguer cambeo de l'archibo",
+'exif-imagedescription' => "Títol d'a imachen",
+'exif-make' => "Fabriquero d'a maquina",
+'exif-model' => 'Modelo de maquina',
+'exif-software' => 'Software emplegato',
+'exif-artist' => 'Autor',
+'exif-copyright' => "Dueño d'os dreitos d'autor (copyright)",
+'exif-exifversion' => 'Bersión Exif',
+'exif-flashpixversion' => 'Bersión de Flashpix almitita',
+'exif-colorspace' => 'Espazio de colors',
+'exif-componentsconfiguration' => 'Sinnificazión de cada component',
+'exif-compressedbitsperpixel' => "Modo de compresión d'a imachen",
+'exif-pixelydimension' => "Amplaria conforme d'a imachen",
+'exif-pixelxdimension' => "Altaria conforme d'a imachen",
+'exif-makernote' => "Notas d'o fabriquero",
+'exif-usercomment' => "Comentarios de l'usuario",
+'exif-relatedsoundfile' => "Archibo d'audio relazionato",
+'exif-datetimeoriginal' => "Calendata y ora de chenerazión d'os datos",
+'exif-datetimedigitized' => "Calendata y ora d'a dichitalizazión",
+'exif-subsectime' => 'Calendata y ora (frazions de segundo)',
+'exif-subsectimeoriginal' => "Calendata y ora d'a chenerazión d'os datos (frazions de segundo)",
+'exif-subsectimedigitized' => "Calendata y ora d'a dichitalizazión (frazions de segundo)",
+'exif-exposuretime' => "Tiempo d'esposizión",
+'exif-exposuretime-format' => '$1 seg ($2)',
+'exif-fnumber' => 'Numero F',
+'exif-exposureprogram' => "Programa d'esposizión",
+'exif-spectralsensitivity' => 'Sensibilidat espeutral',
+'exif-isospeedratings' => 'Sensibilidat ISO',
+'exif-oecf' => 'Fautor de combersión optoelectronica',
+'exif-shutterspeedvalue' => "Belozidat de l'obturador",
+'exif-aperturevalue' => 'Obredura',
+'exif-brightnessvalue' => 'Brilura',
+'exif-exposurebiasvalue' => "Siesco d'esposizión",
+'exif-maxaperturevalue' => 'Obredura maisima',
+'exif-subjectdistance' => 'Distanzia á o sucheto',
+'exif-meteringmode' => 'Modo de mesura',
+'exif-lightsource' => 'Fuent de luz',
+'exif-flash' => 'Flash',
+'exif-focallength' => "Longaria d'o lente focal",
+'exif-subjectarea' => "Aria d'o sucheto",
+'exif-flashenergy' => "Enerchía d'o flash",
+'exif-spatialfrequencyresponse' => 'Respuesta frecuenzial espazial',
+'exif-focalplanexresolution' => 'Resoluzión en o plano focal X',
+'exif-focalplaneyresolution' => 'Resolución en o plano focal Y',
+'exif-focalplaneresolutionunit' => "Unidaz d'a resoluzión en o plano focal",
+'exif-subjectlocation' => "Posizión d'o sucheto",
+'exif-exposureindex' => "Endize d'esposizión",
+'exif-sensingmethod' => 'Metodo de sensache',
+'exif-filesource' => "Fuent de l'archibo",
+'exif-scenetype' => "Mena d'eszena",
+'exif-cfapattern' => 'Patrón CFA',
+'exif-customrendered' => "Prozesau d'imachen presonalizato",
+'exif-exposuremode' => "Modo d'esposizión",
+'exif-whitebalance' => 'Balanze de blancos',
+'exif-digitalzoomratio' => 'Ratio de zoom dichital',
+'exif-focallengthin35mmfilm' => 'Longaria focal equibalent á zinta de 35 mm',
+'exif-scenecapturetype' => "Mena de captura d'a eszena",
+'exif-gaincontrol' => "Control d'eszena",
+'exif-contrast' => 'Contraste',
+'exif-saturation' => 'Saturazión',
+'exif-sharpness' => 'Nitideza',
+'exif-devicesettingdescription' => "Descripzión d'os achustes d'o dispositibo",
+'exif-subjectdistancerange' => 'Rango de distancias á o sucheto',
+'exif-imageuniqueid' => "ID unico d'a imachen",
+'exif-gpsversionid' => "Bersión d'as etiquetas de GPS",
+'exif-gpslatituderef' => 'Latitut norte/sud',
+'exif-gpslatitude' => 'Latitut',
+'exif-gpslongituderef' => 'Lonchitut este/ueste',
+'exif-gpslongitude' => 'Lonchitut',
+'exif-gpsaltituderef' => "Referenzia d'a altitut",
+'exif-gpsaltitude' => 'Altitut',
+'exif-gpstimestamp' => 'Tiempo GPS (reloch atomico)',
+'exif-gpssatellites' => 'Satelites emplegatos en a mida',
+'exif-gpsstatus' => "Estau d'o rezeptor",
+'exif-gpsmeasuremode' => 'Modo de mesura',
+'exif-gpsdop' => "Prezisión d'a mida",
+'exif-gpsspeedref' => 'Unidaz de belozidat',
+'exif-gpsspeed' => "Belozidat d'o rezeptor GPS",
+'exif-gpstrackref' => "Referenzia d'a endrezera d'o mobimiento",
+'exif-gpstrack' => "Endrezera d'o mobimiento",
+'exif-gpsimgdirectionref' => "Referenzia d'a orientazión d'a imachen",
+'exif-gpsimgdirection' => "Orientazión d'a imachen",
+'exif-gpsmapdatum' => 'Emplegatos datos de mesura cheodesica',
+'exif-gpsdestlatituderef' => "Referenzia t'a latitut d'o destino",
+'exif-gpsdestlatitude' => "Latitut d'o destino",
+'exif-gpsdestlongituderef' => "Referenzia d'a lonchitut d'o destino",
+'exif-gpsdestlongitude' => "Lonchitut d'o destino",
+'exif-gpsdestbearingref' => "Referenzia d'a orientazión á o destino",
+'exif-gpsdestbearing' => "Orientazión d'o destino",
+'exif-gpsdestdistanceref' => "Referenzia d'a distanzia á o destino",
+'exif-gpsdestdistance' => 'Distanzia á o destino',
+'exif-gpsprocessingmethod' => "Nombre d'o metodo de prozesamiento GPS",
+'exif-gpsareainformation' => "Nombre d'aria GPS",
+'exif-gpsdatestamp' => 'Calendata GPS',
+'exif-gpsdifferential' => 'Correzión diferenzial de GPS',
+
+# EXIF attributes
+'exif-compression-1' => 'Sin de compresión',
+
+'exif-unknowndate' => 'Calendata esconoixita',
+
+'exif-orientation-1' => 'Normal', # 0th row: top; 0th column: left
+'exif-orientation-2' => 'Contornata orizontalment', # 0th row: top; 0th column: right
+'exif-orientation-3' => 'Chirata 180º', # 0th row: bottom; 0th column: right
+'exif-orientation-4' => 'Contornata berticalment', # 0th row: bottom; 0th column: left
+'exif-orientation-5' => "Chirata 90° en contra d'as agullas d'o reloch y contornata berticalment", # 0th row: left; 0th column: top
+'exif-orientation-6' => "Chirata 90° como as agullas d'o reloch", # 0th row: right; 0th column: top
+'exif-orientation-7' => "Chirata 90° como as agullas d'o reloch y contornata berticalment", # 0th row: right; 0th column: bottom
+'exif-orientation-8' => "Chirata 90° en contra d'as agullas d'o reloch", # 0th row: left; 0th column: bottom
+
+'exif-planarconfiguration-1' => 'formato de paquez de píxels',
+'exif-planarconfiguration-2' => 'formato plano',
+
+'exif-componentsconfiguration-0' => 'no esiste',
+
+'exif-exposureprogram-0' => 'No definito',
+'exif-exposureprogram-1' => 'Manual',
+'exif-exposureprogram-2' => 'Modo normal',
+'exif-exposureprogram-3' => "Prioridat á l'obredura",
+'exif-exposureprogram-4' => "Prioridat á l'obturador",
+'exif-exposureprogram-5' => 'Modo creatibo (con prioridat á la fondura de campo)',
+'exif-exposureprogram-6' => "Modo aizión (alta belozidat de l'obturador)",
+'exif-exposureprogram-7' => 'Modo retrato (ta primers planos con o fundo desenfocato)',
+'exif-exposureprogram-8' => 'Modo paisache (ta fotos de paisaches con o fundo enfocato)',
+
+'exif-subjectdistance-value' => '$1 metros',
+
+'exif-meteringmode-0' => 'Esconoixito',
+'exif-meteringmode-1' => 'Meya',
+'exif-meteringmode-2' => 'Meya aponderata á o zentro',
+'exif-meteringmode-3' => 'Puntual',
+'exif-meteringmode-4' => 'Multipunto',
+'exif-meteringmode-5' => 'Patrón',
+'exif-meteringmode-6' => 'Parzial',
+'exif-meteringmode-255' => 'Atros',
+
+'exif-lightsource-0' => 'Esconoixito',
+'exif-lightsource-1' => 'Luz de día',
+'exif-lightsource-2' => 'Fluoreszent',
+'exif-lightsource-3' => 'Tungsteno (luz incandeszent)',
+'exif-lightsource-4' => 'Flash',
+'exif-lightsource-9' => 'Buen orache',
+'exif-lightsource-10' => 'Orache nublo',
+'exif-lightsource-11' => 'Guambra',
+'exif-lightsource-12' => 'Fluorescente de luz de día (D 5700 – 7100K)',
+'exif-lightsource-13' => 'Fluoreszent blanco de día (N 4600 – 5400K)',
+'exif-lightsource-14' => 'Fluoreszent blanco fredo (W 3900 – 4500K)',
+'exif-lightsource-15' => 'Fluoreszent blanco (WW 3200 – 3700K)',
+'exif-lightsource-17' => 'Luz estándar A',
+'exif-lightsource-18' => 'Luz estándar B',
+'exif-lightsource-19' => 'Luz estándar C',
+'exif-lightsource-24' => "Bombeta de tungsteno d'estudeo ISO",
+'exif-lightsource-255' => 'Atra fuent de luz',
+
+'exif-focalplaneresolutionunit-2' => 'pulgadas',
+
+'exif-sensingmethod-1' => 'No definito',
+'exif-sensingmethod-2' => "Sensor d'aria de color d'un chip",
+'exif-sensingmethod-3' => "Sensor d'aria de color de dos chips",
+'exif-sensingmethod-4' => "Sensor d'aria de color de tres chips",
+'exif-sensingmethod-5' => "Sensor d'aria de color secuenzial",
+'exif-sensingmethod-7' => 'Sensor trilinial',
+'exif-sensingmethod-8' => 'Sensor linial de color secuenzial',
+
+'exif-scenetype-1' => 'Una imachen fotiata dreitament',
+
+'exif-customrendered-0' => 'Prozeso normal',
+'exif-customrendered-1' => 'Prozeso presonalizato',
+
+'exif-exposuremode-0' => 'Esposizión automatica',
+'exif-exposuremode-1' => 'Esposizión manual',
+'exif-exposuremode-2' => 'Bracketting automatico',
+
+'exif-whitebalance-0' => 'Balanze automatico de blancos',
+'exif-whitebalance-1' => 'Balanze manual de blancos',
+
+'exif-scenecapturetype-0' => 'Estándar',
+'exif-scenecapturetype-1' => 'Ambiesta (orizontal)',
+'exif-scenecapturetype-2' => 'Retrato (bertical)',
+'exif-scenecapturetype-3' => 'Eszena de nueits',
+
+'exif-gaincontrol-0' => 'Denguna',
+'exif-gaincontrol-1' => 'Gananzia baixa ta baluras altas (low gain up)',
+'exif-gaincontrol-2' => 'Gananzia alta ta baluras altas (high gain up)',
+'exif-gaincontrol-3' => 'Gananzia baixa ta baluras baixas (low gain down)',
+'exif-gaincontrol-4' => 'Gananzia alta ta baluras baixas (high gain down)',
+
+'exif-contrast-0' => 'Normal',
+'exif-contrast-1' => 'Suabe',
+'exif-contrast-2' => 'Fuerte',
+
+'exif-saturation-0' => 'Normal',
+'exif-saturation-1' => 'Baixa saturazión',
+'exif-saturation-2' => 'Alta saturazión',
+
+'exif-sharpness-0' => 'Normal',
+'exif-sharpness-1' => 'Suabe',
+'exif-sharpness-2' => 'Fuerte',
+
+'exif-subjectdistancerange-0' => 'Esconoixita',
+'exif-subjectdistancerange-1' => 'Macro',
+'exif-subjectdistancerange-2' => 'Ambista zercana',
+'exif-subjectdistancerange-3' => 'Ambista leixana',
+
+# Pseudotags used for GPSLatitudeRef and GPSDestLatitudeRef
+'exif-gpslatitude-n' => 'Latitut norte',
+'exif-gpslatitude-s' => 'Latitut sud',
+
+# Pseudotags used for GPSLongitudeRef and GPSDestLongitudeRef
+'exif-gpslongitude-e' => 'Lonchitut este',
+'exif-gpslongitude-w' => 'Lonchitut ueste',
+
+'exif-gpsstatus-a' => "S'está fendo a mida",
+'exif-gpsstatus-v' => 'Interoperabilitat de mesura',
+
+'exif-gpsmeasuremode-2' => 'Mesura bidimensional',
+'exif-gpsmeasuremode-3' => 'Mesura tridimensional',
+
+# Pseudotags used for GPSSpeedRef and GPSDestDistanceRef
+'exif-gpsspeed-k' => 'Quilometros por ora',
+'exif-gpsspeed-m' => 'Millas por ora',
+'exif-gpsspeed-n' => 'Nugos',
+
+# Pseudotags used for GPSTrackRef, GPSImgDirectionRef and GPSDestBearingRef
+'exif-gpsdirection-t' => 'Endrezera reyal',
+'exif-gpsdirection-m' => 'Endrezera magnetica',
+
+# External editor support
+'edit-externally' => 'Editar iste archibo fendo serbir una aplicazión esterna',
+'edit-externally-help' => 'Leiga as [http://meta.wikimedia.org/wiki/Help:External_editors instruzions de confegurazión] (en anglés) ta más informazión.',
+
+# 'all' in various places, this might be different for inflected languages
+'recentchangesall' => 'toz',
+'imagelistall' => 'todas',
+'watchlistall2' => 'toz',
+'namespacesall' => 'todo',
+'monthsall' => '(toz)',
+
+# E-mail address confirmation
+'confirmemail' => 'Confirmar adreza de correu-e',
+'confirmemail_noemail' => "No tiene una adreza de correu-e conforme en as suyas [[Special:Preferences|preferenzias d'usuario]].",
+'confirmemail_text' => "{{SITENAME}} requiere que confirme a suya adreza de correu-e antis de poder usar as funzions de correu-e. Punche o botón de baxo ta nimbiar un mensache de confirmazión t'a suya adreza. O mensache encluirá un binclo con un codigo. Escriba-lo ta confirmar que a suya adreza ye conforme.",
+'confirmemail_pending' => '<div class="error">
+Ya se le ha nimbiato un codigo de confirmazión; si creyó una cuenta fa poco tiempo, puede que s\'estime más asperar bels menutos á beyer si le plega antis de pedir un nuebo codigo.
+</div>',
+'confirmemail_send' => 'Nimbiar un codigo de confirmazión.',
+'confirmemail_sent' => "S'ha nimbiato un correu de confirmazión.",
+'confirmemail_oncreate' => "S'ha nimbiato un codigo de confirmazión t'a suya adreza de correu-e.
+Iste codigo no ye nezesario ta dentrar, pero amenistará escribir-lo antis d'autibar cualsiquier funzión d'o wiki basata en o correu electronico.",
+'confirmemail_sendfailed' => "No s'ha puesto nimbiar o mensache de confirmazión. Por fabor, comprebe que no bi aiga carauters no conformes en l'adreza de correu electronico endicata.
+
+Correu tornato: $1",
+'confirmemail_invalid' => 'O codigo de confirmazión no ye conforme. Regular que o codigo sía zircunduzito.',
+'confirmemail_needlogin' => 'Amenistar $1 ta confirmar a suya adreza de correu-e.',
+'confirmemail_success' => 'A suya adreza de correu-e ya ye confirmata. Agora puede dentrar en o wiki y espleitiar-lo.',
+'confirmemail_loggedin' => 'A suya adreza de correu-e ya ye confirmata.',
+'confirmemail_error' => 'Bella cosa falló en alzar a suya confirmazión.',
+'confirmemail_subject' => "confirmazión de l'adreza de correu-e de {{SITENAME}}",
+'confirmemail_body' => 'Belún, probablement bustet mesmo, ha rechistrato una cuenta "$2" con ista adreza de correu-e en {{SITENAME}} dende l\'adreza IP $1.
+
+Ta confirmar que ista cuenta reyalment le perteneixe y autibar as funzions de correu-e en {{SITENAME}}, siga iste binclo:
+
+$3
+
+Si a cuenta no ye suya, no siga o binclo. O codigo de confirmazión zircunduzirá en $4.',
+
+# Scary transclusion
+'scarytranscludedisabled' => "[S'ha desautibato a transclusión interwiki]",
+'scarytranscludefailed' => "[Ha fallato a recuperazión d'a plantilla ta $1; lo sentimos]",
+'scarytranscludetoolong' => '[A URL ye masiau larga; lo sentimos]',
+
+# Trackbacks
+'trackbackbox' => '<div id="mw_trackbacks">
+Retrobinclos (trackbacks) ta iste articlo:<br />
+$1
+</div>',
+'trackbackremove' => ' ([$1 Borrar])',
+'trackbacklink' => 'Retrobinclo (Trackback)',
+'trackbackdeleteok' => "O retrobinclo (trackback) s'ha borrato correutament.",
+
+# Delete conflict
+'deletedwhileediting' => 'Pare cuenta: Ista pachina ye estata borrata dimpués de que enzetase a edizión!',
+'confirmrecreate' => "O ususario [[User:$1|$1]] ([[User talk:$1|descusión]]) ha borrato iste articlo dimpués que bustet prenzipió á editarlo, y a razón que ha dato ye: ''$2''
+Por fabor, confirme que reyalment deseya creyar l'articlo nuebament.",
+'recreate' => 'Creyar nuebament',
+
+# HTML dump
+'redirectingto' => 'Reendrezando ta [[$1]]...',
+
+# action=purge
+'confirm_purge' => "Limpiar a caché d'ista pachina?
+
+$1",
+'confirm_purge_button' => 'Confirmar',
+
+# AJAX search
+'searchcontaining' => "Mirar articlos que contiengan ''$1''.",
+'searchnamed' => "Mirar articlos con o títol ''$1''.",
+'articletitles' => "Articlos que prenzipian por ''$1''",
+'hideresults' => 'Amagar resultaus',
+'useajaxsearch' => 'Faiga serbir a busca en AJAX',
+
+# Multipage image navigation
+'imgmultipageprev' => '← pachina anterior',
+'imgmultipagenext' => 'pachina siguient →',
+'imgmultigo' => 'Ir-ie!',
+'imgmultigotopre' => "Ir t'a pachina",
+
+# Table pager
+'ascending_abbrev' => 'asz',
+'descending_abbrev' => 'desz',
+'table_pager_next' => 'Pachina siguient',
+'table_pager_prev' => 'Pachina anterior',
+'table_pager_first' => 'Primera pachina',
+'table_pager_last' => 'Zaguer pachina',
+'table_pager_limit' => 'Amostrar $1 elementos por pachina',
+'table_pager_limit_submit' => 'Ir-ie',
+'table_pager_empty' => 'No bi ha garra resultau',
+
+# Auto-summaries
+'autosumm-blank' => 'Pachina blanquiata',
+'autosumm-replace' => 'O conteniu s\'ha cambiato por "$1"',
+'autoredircomment' => 'Reendrezando ta [[$1]]',
+'autosumm-new' => 'Pachina nueba: $1',
+
+# Live preview
+'livepreview-loading' => 'Cargando…',
+'livepreview-ready' => 'Cargando… ya!',
+'livepreview-failed' => "A prebisualizazión á l'inte falló!
+Prebe con a prebisualizazión normal.",
+'livepreview-error' => 'No s\'ha puesto coneutar: $1 "$2". Prebe con l\'ambiesta prebia normal.',
+
+# Friendlier slave lag warnings
+'lag-warn-normal' => "Talment no s'amuestren en ista lista as edizions feitas en os zaguers $1 segundos.",
+'lag-warn-high' => "Por o retardo d'o serbido d'a base de datos, talment no s'amuestren en ista lista as edizions feitas en os zaguers $1 segundos.",
+
+# Watchlist editor
+'watchlistedit-numitems' => 'A suya lista de seguimiento tiene {{PLURAL:$1|una pachina |$1 pachinas}}, sin contar-ie as pachinas de descusión.',
+'watchlistedit-noitems' => 'A suya lista de seguimiento ye bueda.',
+'watchlistedit-normal-title' => 'Editar a lista de seguimiento',
+'watchlistedit-normal-legend' => "Borrar títols d'a lista de seguimiento",
+'watchlistedit-normal-explain' => "As pachinas d'a suya lista de seguimiento s'amuestran contino. Ta sacar-ne una pachina, marque o cuatrón que ye a o canto d'a pachina, y punche con a rateta en ''Borrar pachinas''. Tamién puede [[Special:Watchlist/raw|editar dreitament o testo d'a pachina]].",
+'watchlistedit-normal-submit' => 'Borrar pachinas',
+'watchlistedit-normal-done' => "{{PLURAL:$1|S'ha borrato 1 pachina|s'han borratas $1 pachinas}} d'a suya lista de seguimiento:",
+'watchlistedit-raw-title' => 'Editar a lista de seguimiento en formato testo',
+'watchlistedit-raw-legend' => 'Editar a lista de seguimiento en formato testo',
+'watchlistedit-raw-explain' => "Contino s'amuestran as pachinas d'a suya lista de seguimiento. Puede editar ista lista adibiendo u borrando líneas d'a lista; una pachina por linia. Cuan remate, punche ''esbiellar lista de seguimiento''. Tamién puede fer serbir o [[Especial:Watchlist/edit|editor estándar]].",
+'watchlistedit-raw-titles' => 'Pachinas:',
+'watchlistedit-raw-submit' => 'Esbiellar lista de seguimiento',
+'watchlistedit-raw-done' => "S'ha esbiellato a suya lista de seguimiento.",
+'watchlistedit-raw-added' => "{{PLURAL:$1|S'ha esbiellato una pachina|S'ha esbiellato $1 pachinas}}:",
+'watchlistedit-raw-removed' => "{{PLURAL:$1|S'ha borrato una pachina|S'ha borrato $1 pachinas}}:",
+
+# Watchlist editing tools
+'watchlisttools-view' => 'Amostrar cambeos',
+'watchlisttools-edit' => 'Beyer y editar a lista de seguimiento',
+'watchlisttools-raw' => 'Editar a lista de seguimiento en formato testo',
+
+# Core parser functions
+'unknown_extension_tag' => 'Etiqueta d\'estensión "$1" esconoixita',
+
+# Special:Version
+'version-extensions' => 'Estensions instalatas',
+'version-specialpages' => 'Pachinas espezials',
+'version-parserhooks' => "Grifios d'o parser (parser hooks)",
+'version-variables' => 'Bariables',
+'version-other' => 'Atros',
+'version-mediahandlers' => "Maneyador d'archibos multimedia",
+'version-hooks' => 'Grifios (Hooks)',
+'version-extension-functions' => "Funzions d'a estensión",
+'version-parser-extensiontags' => "Etiquetas d'estensión d'o parseyador",
+'version-parser-function-hooks' => "Grifios d'as funzions d'o parseyador",
+'version-skin-extension-functions' => "Funzions d'estensión de l'aparenzia (Skin)",
+'version-hook-name' => "Nombre d'o grifio",
+'version-hook-subscribedby' => 'Suscrito por',
+'version-version' => 'Bersión',
+'version-license' => 'Lizenzia',
+'version-software' => 'Software instalato',
+'version-software-product' => 'Produto',
+'version-software-version' => 'Bersión',
+
+# Special:Filepath
+'filepath' => "Camín de l'archibo",
+'filepath-page' => 'Archibo:',
+'filepath-submit' => 'Camín',
+'filepath-summary' => "Ista pachina espezial le retorna o camín completo d'un archibo.
+As imachens s'amuestran en resoluzión completa, a resta d'archibos fan enzetar dreitament os suyos programas asoziatos.
+
+Escriba o nombre de l'archibo sin o prefixo \"{{ns:image}}:\".",
+
+);
diff --git a/languages/messages/MessagesAng.php b/languages/messages/MessagesAng.php
new file mode 100644
index 00000000..a2c2fe37
--- /dev/null
+++ b/languages/messages/MessagesAng.php
@@ -0,0 +1,669 @@
+<?php
+/** Old English (Anglo Saxon)
+ *
+ * @addtogroup Language
+ *
+ * @author SPQRobin
+ * @author Siebrand
+ * @author JJohnson
+ * @author Wōdenhelm
+ */
+
+$messages = array(
+# User preference toggles
+'tog-underline' => 'Undermearcian bendas:',
+'tog-hideminor' => 'Hȳdan smalla ādihtunga in nīwlicum wendungum',
+'tog-rememberpassword' => 'Ġeman mīn inmeldung on þissum ċircolwyrde',
+'tog-watchcreations' => 'Ēac trametas þæt scieppe iċ tō mīnre behealdnestale',
+'tog-watchdefault' => 'Ēac trametas þæt ādiht iċ tō mīnre behealdnestale',
+'tog-watchmoves' => 'Ēac trametas þæt hweorfe iċ tō mīnre behealdnestale',
+'tog-watchlisthideown' => 'Hȳd mīn ādihtunga fram þǣre behealdnestale',
+
+'underline-always' => 'Ǣfre',
+'underline-never' => 'Nǣfre',
+
+'skinpreview' => '(Forescēawian)',
+
+# Dates
+'sunday' => 'Sunnandæġ',
+'monday' => 'Mōnandæġ',
+'tuesday' => 'Tīwesdæġ',
+'wednesday' => 'Wēdnesdæġ',
+'thursday' => 'Þunresdæġ',
+'friday' => 'Frīġedæġ',
+'saturday' => 'Sæternesdæġ',
+'sun' => 'Sun',
+'mon' => 'Mōn',
+'tue' => 'Tīw',
+'wed' => 'Wēd',
+'thu' => 'Þun',
+'fri' => 'Frī',
+'sat' => 'Sæt',
+'january' => 'Se Æfterra Ġēola',
+'february' => 'Solmōnaþ',
+'march' => 'Hrēþmōnaþ',
+'april' => 'Ēastermōnaþ',
+'may_long' => 'Þrimilcemōnaþ',
+'june' => 'Sēremōnaþ',
+'july' => 'Mǣdmōnaþ',
+'august' => 'Wēodmōnaþ',
+'september' => 'Hāliġmōnaþ',
+'october' => 'Winterfylleþ',
+'november' => 'Blōtmōnaþ',
+'december' => 'Ġēolmōnaþ',
+'january-gen' => 'þæs Æfterran Ġēolan',
+'february-gen' => 'Solmōnþes',
+'march-gen' => 'Hrēþmōnþes',
+'april-gen' => 'Ēastermōnþes',
+'may-gen' => 'Þrimilcemōnþes',
+'june-gen' => 'Sēremōnþes',
+'july-gen' => 'Mǣdmōnþes',
+'august-gen' => 'Wēodmōnþes',
+'september-gen' => 'Hāliġmōnþes',
+'october-gen' => 'Winterfylleðes',
+'november-gen' => 'Blōtmōnþes',
+'december-gen' => 'Ġēolmōnþes',
+'jan' => 'ÆĠē',
+'feb' => 'Sol',
+'mar' => 'Hrē',
+'apr' => 'Ēas',
+'may' => 'Þri',
+'jun' => 'Sēr',
+'jul' => 'Mǣd',
+'aug' => 'Wēo',
+'sep' => 'Hāl',
+'oct' => 'Win',
+'nov' => 'Blō',
+'dec' => 'Ġēo',
+
+# Bits of text used by many pages
+'categories' => 'Floccas',
+'pagecategories' => '{{PLURAL:$1|Flocca|Floccas}}',
+'category_header' => 'Ġewritu in flocce "$1"',
+'subcategories' => 'Underfloccas',
+'category-media-header' => 'Ġemynda in flocce "$1"',
+'category-empty' => "''Þes flocc hæfþ nū nān ġewritu oþþe ġemynda in.''",
+
+'about' => 'Ymbe',
+'article' => 'Innungtramet',
+'newwindow' => '(openaþ in nīwum ēagþyrele)',
+'qbfind' => 'Findan',
+'qbedit' => 'Ādihtan',
+'qbpageoptions' => 'Þes tramet',
+'qbpageinfo' => 'Gewef',
+'qbmyoptions' => 'Mīne trametas',
+'qbspecialpages' => 'Syndrige trametas',
+'mypage' => 'Mīn tramet',
+'mytalk' => 'Mīn sprǣc',
+'anontalk' => 'Mōtung for þissum IP',
+
+'errorpagetitle' => 'Gemearr',
+'tagline' => 'Fram {{SITENAME}}n',
+'search' => 'Sēcan',
+'searchbutton' => 'Sēcan',
+'go' => 'Gān',
+'searcharticle' => 'Gān',
+'history' => 'Trametstǣr',
+'history_short' => 'Stǣr',
+'printableversion' => 'Gemǣlendlicu fadung',
+'permalink' => 'Fæst bend',
+'print' => 'Gemǣlan',
+'edit' => 'Ādihtan',
+'editthispage' => 'Ādihtan þisne tramet',
+'delete' => 'āfeorsian',
+'deletethispage' => 'Þisne tramet āfeorsian',
+'protect' => 'Weardian',
+'protectthispage' => 'Wearda þisne tramet',
+'unprotect' => 'Unweardian',
+'unprotectthispage' => 'Unwearda þisne tramet',
+'newpage' => 'Nīwe tramet',
+'talkpage' => 'Þisne tramet mōtian',
+'talkpagelinktext' => 'Gesprec',
+'specialpage' => 'Syndrig tramet',
+'talk' => 'Mōtung',
+'toolbox' => 'Tōlbox',
+'imagepage' => 'Scēawian biliþtramet',
+'otherlanguages' => 'Ōðera sprǣca',
+'redirectedfrom' => '(Edlǣded of $1)',
+'redirectpagesub' => 'Edlǣdungtramet',
+'protectedpage' => 'Geweardod tramet',
+'jumptosearch' => 'sēcan',
+
+# 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' => 'Ymbe {{SITENAME}}n',
+'aboutpage' => 'Project:Ymbe',
+'copyright' => 'Innung biþ gefunden under $1.',
+'currentevents' => 'Efenealde belimpas',
+'currentevents-url' => 'Project:Efenealde belimpas',
+'edithelp' => 'Ādihtunge help',
+'edithelppage' => 'Help:Ādihtung',
+'helppage' => 'Help:Innung',
+'mainpage' => 'Hēafodsīde',
+'portal' => 'Gemǣnscipe Ingang',
+'portal-url' => 'Project:Gemǣnscipe Ingang',
+'sitesupport' => 'Gieldgiefa',
+
+'versionrequired' => 'Fadunge $1 þæs MediaWicis nēodaþ',
+
+'youhavenewmessages' => 'Þu hæfst $1 ($2).',
+'newmessageslink' => 'nīwu ǣrendgewritu',
+'youhavenewmessagesmulti' => 'Þu hæfst nīwu ǣrendu on $1',
+'editsection' => 'ādihtan',
+'editold' => 'ādihtan',
+'toc' => 'Innungbred',
+'showtoc' => 'geswutelian',
+'hidetoc' => 'hȳdan',
+'feedlinks' => 'Flōd:',
+
+# Short words for each namespace, by default used in the namespace tab in monobook
+'nstab-main' => 'Gewrit',
+'nstab-user' => 'Brūcendtramet',
+'nstab-special' => 'Syndrig',
+'nstab-image' => 'Mētung',
+'nstab-template' => 'Bisen',
+'nstab-category' => 'Flocc',
+
+# General errors
+'error' => 'Gemearr',
+'laggedslavemode' => 'Warnung: Tramet ne hæbbe recent updates.',
+'internalerror' => 'Inlic gemearr',
+'filerenameerror' => 'Ne cúðe ednemnan þrǽd "$1" tó "$2".',
+'filenotfound' => 'Ne cūðe findan þrǣd "$1".',
+'badarticleerror' => 'Þēos dǣd ne cann bēon gefremed on þissum tramete.',
+'badtitle' => 'Unandfenge títul',
+
+# Login and logout pages
+'logouttitle' => 'Brūcendūtmeldung',
+'welcomecreation' => '== Wilcume, $1! ==
+
+Þín hordcleofa wearþ geseted. Ne forgiet tó hwierfenne þína {{SITENAME}} foreberunga.',
+'loginpagetitle' => 'Brūcendinmeldung',
+'yourname' => 'Þīn brūcendnama',
+'yourpassword' => 'Þīn gelēafnesword',
+'yourpasswordagain' => 'Edwrītan gelēafnesword',
+'yourdomainname' => 'Þīn geweald',
+'loginproblem' => '<b>Þīn inmeldung wearþ gescremed.</b><br />Eftrōmie!',
+'login' => 'Inmeldian',
+'userlogin' => 'Settan nīwne hordcleofan oþþe inmeldian',
+'logout' => 'Ūtmeldian',
+'userlogout' => 'Ūtmeldian',
+'notloggedin' => 'Ne ingemeldod',
+'createaccount' => 'Nīwne hordcleofan settan',
+'gotaccountlink' => 'Inmeldian',
+'badretype' => 'Þá geléafnesword, þe þu write, ne efenlǽcaþ.',
+'youremail' => 'E-ǣrende *',
+'username' => 'Brūcendnama:',
+'yourrealname' => 'Þīn rihtnama*',
+'yourlanguage' => 'Brūcendofermearces sprǣc',
+'yourvariant' => 'Sprǣce wendung',
+'loginerror' => 'Inmeldunggemearr',
+'loginsuccesstitle' => 'Inmeldung gesǣlde',
+'loginsuccess' => "'''Þu eart nū inmeldod tō {{SITENAME}} swā \"\$1\".'''",
+'nosuchuser' => 'Þǣr is nān brūcere be þǣm naman "$1".
+Edscēawa þīne wrītunge, oþþe brūc þone form under tō settene nīwne brūcendhordcleofan.',
+'nosuchusershort' => 'Þǣr is nān brūcend mid þǣm naman "<nowiki>$1</nowiki>". Edscēawa on þīne wrītunge.',
+'acct_creation_throttle_hit' => 'Hwæt, þu hæfst gēo geseted $1 hordcleofan. Þu ne canst settan ǣnige māran.',
+'accountcreated' => 'Hordcleofan gescapen',
+'loginlanguagelabel' => 'Sprǣc: $1',
+
+# Edit page toolbar
+'italic_sample' => 'Flōwende traht',
+'italic_tip' => 'Flōwende traht',
+'link_sample' => 'Bendtítul',
+'link_tip' => 'Inlic bend',
+'extlink_sample' => 'http://www.example.com bendtītul',
+'extlink_tip' => 'Ūtanweard bend (gemune http:// foredǣl)',
+'headline_sample' => 'Hēafodlīnan traht',
+'image_sample' => 'Bisen.jpg',
+'image_tip' => 'Impod biliþ',
+'media_sample' => 'Bisen.mp3',
+'sig_tip' => 'Þín namansegn mid tídstempunge',
+
+# Edit pages
+'summary' => 'Scortnes',
+'minoredit' => 'Þēos is lȳtlu ādihtung',
+'savearticle' => 'Sparian tramet',
+'showpreview' => 'Forescēawian',
+'whitelistedittitle' => 'Inmeldunge behófod tó ádihtenne',
+'whitelistedittext' => 'Þu scealt $1 tó ádihtenne trametas.',
+'whitelistreadtitle' => 'Inmeldunge behōfod tō rǣdenne',
+'whitelistacctitle' => 'Þē nis ālīefed tō settenne hordcleofan',
+'whitelistacctext' => 'Tō bēonne gelīefed tō settenne hordcleofan in þissum Wici, þu scealt [[Special:Userlogin|inmeldian]] and habban þā gerādlican geþafunga.',
+'loginreqlink' => 'inmeldian',
+'loginreqpagetext' => 'Þū scealt $1 tō scēawienne view ōðre trametas.',
+'accmailtitle' => 'Gelēafnesword gesended.',
+'accmailtext' => "Þæt Gelēafnesword for '$1' wearþ gesend tō $2.",
+'newarticle' => '(Nīwe)',
+'usercssjsyoucanpreview' => "<strong>Rǣd:</strong> Brūc þone 'Forescēawian' cnæpp tō āfandienne þīne nīwe css/js beforan sparunge.",
+'editingcomment' => 'Ādihtung $1 (ymbsprǣc)',
+'yourtext' => 'Þīn traht',
+'editingold' => '<strong>WARNUNG: Þu ādihtest ealde fadunge þisses trametes.
+Gif þu hine sparie, ǣniga onwendunga gemacod siþþan þisse fadunge bēoþ sōðes forloren.</strong>',
+'yourdiff' => 'Tōdǣlednessa',
+'copyrightwarning2' => 'Bidde macie nōt þæt ealla forðunga tō {{SITENAME}}
+mæg bēon ādihted, gewended, oþþe āfyrðed fram ōðrum forðerum.
+Gif þu nelt þīne wrītunge tō bēonne ādihtod unmildheortlīce, þonne ne þafie hīe hēr.<br />
+Þu behǣtst ēac þæt þu selfa write þis, oþþe efenlǣhtest of sumre
+gemǣnscipes āgnunge oþþe gelīcum frēom horde (sēo $1 for āscungum).
+<strong>NE ÞAFIE EFENLǢHTSCIELDED WEORC BŪTAN GELĪEFNESSE!</strong>',
+'longpagewarning' => 'WARNUNG: Þes tramet is $1 kilobyta lang; sume
+webbscēaweras hæbben earfoðu mid þȳ þe hīe ādihtaþ trametas nēa oþþe lengran þonne 32kb.
+Bidde behycge þæt þu bricst þone tramet intō smalrum dǣlum.',
+'templatesused' => 'Ongelīcnessa gebrȳcda on þissum tramete:',
+'nocreatetitle' => 'Gewrit nā gefunden',
+'recreate-deleted-warn' => "'''Warnung: Þu edsciepst tramet þe wæs ǣr āfeorsod.'''
+
+Þu sceoldest smēagan, hwæðer hit gerādlic sīe, forþ tō gānne mid ādihtunge þisses trametes.
+Þæt āfeorsungbred þisses trametes is hēr geīeht for behēfnesse:",
+
+# History pages
+'nohistory' => 'Nis nān ādihtungstǣr for þissum tramete.',
+'next' => 'nīehst',
+'histfirst' => 'Ǣrest',
+'histlast' => 'Endenīehst',
+
+# Revision deletion
+'rev-delundel' => 'scēawian/hȳdan',
+
+# Diffs
+'difference' => '(Scēadung betwēonan hweorfungum)',
+'lineno' => 'Līne $1:',
+'compareselectedversions' => 'Geefnettan gecorena fadunga',
+'editundo' => 'undōn',
+
+# Search results
+'searchresults' => 'Sōcnfintan',
+'searchsubtitle' => "Þu sōhtest '''[[:$1]]'''",
+'searchsubtitleinvalid' => "Þu sōhtest '''$1'''",
+'notextmatches' => 'Nāne trametrahtes mæccan',
+'nextn' => 'nīehst $1',
+'showingresults' => 'Īewan under oþ <b>$1</b> tōhīgunga onginnenda mid #<b>$2</b>.',
+'showingresultsnum' => 'Under sind <b>$3</b> tóhígunga onginnende mid #<b>$2</b>.',
+'powersearch' => 'Sēcan',
+
+# Preferences page
+'preferences' => 'Foreberunga',
+'mypreferences' => 'Mīna foreberunga',
+'prefsnologin' => 'Ne ingemeldod',
+'skin' => 'Scynn',
+'dateformat' => 'Tælmearcwīse',
+'datetime' => 'Tælmearc and tīd',
+'math_unknown_error' => 'ungewiss gemearr',
+'prefs-rc' => 'Nīwlica hweorfunga',
+'prefs-watchlist' => 'Behealdnestalu',
+'saveprefs' => 'Sparian',
+'oldpassword' => 'Eald gelēafnesword:',
+'newpassword' => 'Nīwe gelēafnesword',
+'retypenew' => 'Nīwe gelēafnesword edwrītan',
+'rows' => 'Rǣwa',
+'columns' => 'Sȳla:',
+'searchresultshead' => 'Sōcnfintan',
+'resultsperpage' => 'Tōhīgunga tō īewenne for tramete',
+'contextlines' => 'Līnan tō īewenne in tōhīgunge',
+'recentchangescount' => 'Tītula getæl in nīwlicum hweorfungum',
+'savedprefs' => 'Þīna foreberunga wurdon gesparod.',
+'timezonelegend' => 'Tīdgyrtel',
+'servertime' => 'Bryttantīma is nū',
+'defaultns' => 'Sēcan in þissum namstedum be frambyge:',
+'default' => 'gewunelic',
+
+# User rights
+'editusergroup' => 'Ādihtan Brūcendsamþrēatas',
+'saveusergroups' => 'Sparian Brūcendsamþrēatas',
+'userrights-groupsmember' => 'Geglida þæs:',
+
+# Recent changes
+'nchanges' => '$1 hwierfunga',
+'recentchanges' => 'Nīwlica hweorfunga',
+'rcnote' => 'Under sind þā æftemestan <strong>$1</strong> hweorfunga in þǣm æftemestum <strong>$2</strong> dagum.',
+'rcnotefrom' => 'Under sind þā hweorfunga siþþan <b>$2</b> (oþ <b>$1</b> geīewed).',
+'rclistfrom' => 'Īewan nīwa hweorfunga, onginnenda of $1',
+'rcshowhideminor' => '$1 lȳtla ādihtunga',
+'rcshowhideliu' => '$1 inmeldode brūcend',
+'rcshowhideanons' => '$1 unnemnode brūcend',
+'rcshowhidemine' => '$1 mīna ādihtunga',
+'rclinks' => 'Īewan æftemestan $1 hweorfunga in æftemestum $2 dagum<br />$3',
+'diff' => 'scēa',
+'hist' => 'Stǣr',
+'hide' => 'hȳdan',
+'show' => 'īewan',
+
+# Recent changes linked
+'recentchangeslinked' => 'Sibba hweorfunga',
+
+# Upload
+'uploadnologin' => 'Ne inmeldod',
+'filename' => 'Þrǣdnama',
+'filedesc' => 'Scortnes',
+'filesource' => 'Fruma',
+'badfilename' => 'Onlīcnesnama wearþ gewend tō "$1(e/an)".',
+'savefile' => 'Sparian þrǣd',
+
+'nolicense' => 'Nǣnne gecorenne',
+
+# Image list
+'imagelist' => 'Biliþgetalu',
+'imagelisttext' => 'Under is getalu $1 biliða gedæfted $2.',
+'getimagelist' => 'fecce nū onlīcnesgetale',
+'ilsubmit' => 'Sēcan',
+'showlast' => 'Īewan þā æftemestan $1 onlīcnessa gedæfted $2.',
+'byname' => 'be naman',
+'bydate' => 'be tælmearce',
+'bysize' => 'be micelnesse',
+'filehist-user' => 'Brūcend',
+'imagelinks' => 'Biliþbendas',
+'linkstoimage' => 'Þā folgendan trametas bindaþ tō þissum biliðe:',
+'nolinkstoimage' => 'Þǣr sind nāne trametas þe bindaþ tō þissum biliðe.',
+'noimage' => 'Nān þrǣd mid þissum naman stendeþ nū oþþe nā mā, ac þu canst þēah hine $1.',
+'imagelist_date' => 'Tælmearc',
+'imagelist_name' => 'Nama',
+'imagelist_user' => 'Brūcend',
+'imagelist_description' => 'Tōwritennes',
+'imagelist_search_for' => 'Sēcan biliþnaman:',
+
+# File deletion
+'filedelete-submit' => 'āfeorsian',
+
+# Unused templates
+'unusedtemplateswlh' => 'ōðere bendas',
+
+# Random page
+'randompage' => 'Hlīetlic tramet',
+
+# Statistics
+'userstatstext' => "Þǣr sind '''$1''' genemnode brūcend, þāra þe
+'''$2''' (oþþe '''$4%''') sind bewitend (sēo $3).",
+
+'doubleredirects' => 'Twifealdlice Ymblǣderas',
+
+'brokenredirects' => 'Gebrocene Ymblǣderas',
+'brokenredirectstext' => 'Þā folgendan edlǣdunga bendaþ tō unedwistlicum trametum.',
+'brokenredirects-edit' => '(ādihtan)',
+'brokenredirects-delete' => '(āfeorsian)',
+
+# Miscellaneous special pages
+'ncategories' => '$1 {{PLURAL:$1|flocca|floccas}}',
+'nlinks' => '$1 bendas',
+'specialpage-empty' => 'Þis tramet is ǣmtig.',
+'lonelypages' => 'Ealdorlēase trametas',
+'unusedimages' => 'Ungebrȳcodu biliðu',
+'popularpages' => 'Dēore trametas',
+'wantedcategories' => 'Gewilnode floccas',
+'wantedpages' => 'Gewilnode trametas',
+'allpages' => 'Trametas',
+'shortpages' => 'Scorte trametas',
+'longpages' => 'Lange trametas',
+'specialpages' => 'Syndrige trametas',
+'spheading' => 'Syndrige trametas eallum brýcerum',
+'newpages' => 'Nīwe trametas',
+'newpages-username' => 'Brūcendnama:',
+'ancientpages' => 'Ieldestan Trametas',
+'intl' => 'Betwuxsprǣclice bendas',
+'move' => 'Gān',
+
+# Book sources
+'booksources' => 'Bōcfruman',
+'booksources-search-legend' => 'Sēcan bōcfruman',
+'booksources-go' => 'Gān',
+'booksources-text' => 'Under is getalu benda tō ōðrum webstedum þe bebycgaþ nīwa and gebrocena bēc, and hæbben
+ēac mā āscunga ymbe bēc þe þu sēcst:',
+
+'categoriespagetext' => 'Þā folgendan floccas standaþ in þǣm wici.',
+'alphaindexline' => '$1 tō $2',
+'version' => 'Fadung',
+
+# Special:Log
+'specialloguserlabel' => 'Brūcend:',
+'speciallogtitlelabel' => 'Titul:',
+'log' => 'Cranicas',
+'log-search-submit' => 'Gān',
+
+# Special:Allpages
+'nextpage' => 'Nīehsta tramet ($1)',
+'allarticles' => 'Eall gewritu',
+'allinnamespace' => 'Ealle trametas ($1 namanstede)',
+'allpagesprev' => 'Beforan',
+'allpagesnext' => 'Nīehst',
+'allpagessubmit' => 'Gān',
+
+# Special:Listusers
+'listusers-noresult' => 'Nǣnne brūcend gefundenne.',
+
+# E-mail user
+'emailfrom' => 'Fram',
+'emailto' => 'Tó',
+'emailsubject' => 'Forþsetennes',
+'emailmessage' => 'Ǣrendgewrit',
+'emailsend' => 'Ǣrendian',
+'emailsent' => 'E-mail gesend',
+'emailsenttext' => 'Þīn e-mail ǣrendgewrit wearþ gesend.',
+
+# Watchlist
+'watchlist' => 'Mīn behealdnestalu',
+'mywatchlist' => 'Mīn behealdnestalu',
+'addedwatch' => 'Geīeht tō wæcctale',
+'watch' => 'Behealdan',
+'unwatch' => 'Unbehealdan',
+'watchlistcontains' => 'Þīn behealdnestalu hæfþ $1 {{PLURAL:$1|trameta|trametas}} inn.',
+'wlnote' => 'Under sind þā æftemestan $1 hweorfunga in þǣm æftemestum <b>$2</b> stundum.',
+'wlshowlast' => 'Īewan æftemestan $1 stunda $2 daga $3',
+'watchlist-hide-minor' => 'Hȳdan smala ādihtunga',
+
+'enotif_newpagetext' => 'Þēs is nīwe tramet.',
+
+# Delete/protect/revert
+'deletepage' => 'Āfeorsian tramet',
+'excontent' => "innung wæs: '$1'",
+'excontentauthor' => "innung wæs: '$1' (and se āna forðiend wæs '[[Special:Contributions/$2|$2]]')",
+'exblank' => 'tramet wæs ǣmtig',
+'historywarning' => 'Warnung: Se tramet, þone þu āfeorsian teohhast, hæfþ stǣre:',
+'actioncomplete' => 'Weorcdǣd geendod',
+'deletedarticle' => 'āfeorsod "[[$1]]"',
+'dellogpage' => 'Āfeorsunge_wisbōc',
+'deletionlog' => 'āfeorsunge wisbōc',
+'deletecomment' => 'Racu for āfeorsunge',
+'rollback_short' => 'Edhwierfan',
+'rollbacklink' => 'Edhwierfan',
+'rollbackfailed' => 'Edhwierft misfangen',
+'editcomment' => 'Sēo ādihtungymbsprǣc wæs: "<i>$1</i>".', # only shown if there is an edit comment
+'revertpage' => 'Ācierde ādihtunga fram [[Special:Contributions/$2|$2]] ([[User talk:$2|Gesprec]]); wendede on bæc tō ǣrran fadunge fram [[User:$1|$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
+'unprotectedarticle' => 'unweardod "[[$1]]"',
+'protectsub' => '(Weardiende "$1")',
+'unprotectsub' => '(Unweardiende "$1")',
+'restriction-type' => 'Gelēafnes:',
+
+# Restrictions (nouns)
+'restriction-edit' => 'Ādihtan',
+'restriction-move' => 'Gān',
+
+# Undelete
+'undeletebtn' => 'Edstaðola!',
+'undeletedarticle' => 'edstaðolod "[[$1]]"',
+'undelete-search-submit' => 'Sēcan',
+
+# Namespace form on various pages
+'namespace' => 'Namanstede:',
+
+# Contributions
+'contributions' => 'Brūcendforðunga',
+'mycontris' => 'Mīna forðunga',
+
+'sp-contributions-submit' => 'Sēcan',
+
+# What links here
+'whatlinkshere' => 'Hwæt bindaþ hider',
+'whatlinkshere-page' => 'Tramet:',
+'linklistsub' => '(Getalu benda)',
+'linkshere' => 'Þā folgendan trametas bindaþ hider:',
+'nolinkshere' => 'Nāne trametas bindaþ hider.',
+'isredirect' => 'edlǣdungtramet',
+
+# Block/unblock
+'ipbreason' => 'Racu',
+'ipbreasonotherlist' => 'Ōðeru racu',
+'ipbreason-dropdown' => '*Gemǣna gǣlungraca
+** Inserting false information
+** Removing content from pages
+** Spamming links to external sites
+** Inserting nonsense/gibberish into pages
+** Intimidating behaviour/harassment
+** Abusing multiple accounts
+** Unacceptable username',
+'ipbsubmit' => 'Gǣlan þisne brūcend',
+'ipbother' => 'Ōðeru tīd',
+'ipboptions' => '1 stund:1 hour, 2 stunda:2 hours,1 dæg:1 day,3 dagas:3 days,1 wucu:1 week,2 wucu:2 wuca,1 mōnaþ:1 month,3 mōnþas:3 months,6 mōnþas:6 months,1 gēar:1 year,unendiendlic:infinite', # display1:time1,display2:time2,...
+'ipbotheroption' => 'ōðer',
+'ipbotherreason' => 'Ōðeru/geīecendlicu racu:',
+'ipblocklist-submit' => 'Sēcan',
+'infiniteblock' => 'unendiendlic',
+'expiringblock' => 'forealdaþ $1',
+'contribslink' => 'forðunga',
+'proxyblocksuccess' => 'Gedōn.',
+
+# Move page
+'movearticle' => 'Geferan tramet',
+'newtitle' => 'Tō nīwum tītule',
+'articleexists' => 'Tramet on þǣm naman ǣr stendeþ, oþþe þone
+naman þu cēas nis andfenge.
+Bidde cēos ōðerne naman.',
+'movedto' => 'gefered tō',
+'1movedto2' => '[[$1]] gefered tō [[$2]]',
+'1movedto2_redir' => '[[$1]] gefered tō [[$2]] ofer edlǣdunge',
+'movereason' => 'Racu:',
+
+# Namespace 8 related
+'allmessagesname' => 'Nama',
+'allmessagesdefault' => 'Fūslic traht',
+'allmessagescurrent' => 'Genge traht',
+
+# Thumbnails
+'thumbnail-more' => 'Gebrǣdan',
+
+# Special:Import
+'import' => 'Trametas inbringan',
+'importfailed' => 'Inbringung tōsǣlede: $1',
+'importnotext' => 'Ǣmtig oþþe nān traht',
+'importsuccess' => 'Geinnung gesǣled!',
+
+# Tooltip help for the actions
+'tooltip-pt-userpage' => 'Mīn brūcendtramet',
+'tooltip-pt-preferences' => 'Mīna foreberunga',
+'tooltip-pt-mycontris' => 'Getalu mīnra forðunga',
+'tooltip-pt-logout' => 'Ūtmeldian',
+'tooltip-ca-history' => 'Forþgewitena fadunga þisses trametes.',
+'tooltip-search' => 'Sécan {{SITENAME}}',
+'tooltip-p-logo' => 'Hēafodsīde',
+'tooltip-minoredit' => 'Mearcian þis swā lȳtle ādihtunge',
+'tooltip-save' => 'Sparian þīna onwendunga',
+'tooltip-preview' => 'Forescēawa þīne āwendednessa, bidde brūc þis ǣr þǣm þe þu sparast! [alt-p]',
+
+# Attribution
+'anonymous' => 'Namcúþléas(e) brúcend {{SITENAME}}n',
+'siteuser' => '{{SITENAME}}n brūcere $1',
+'others' => 'ōðru',
+
+# Spam protection
+'subcategorycount' => 'Þǣr {{PLURAL:$1|is ān underflocc|sind $1 undergecynd(a)}} tō þissum flocce.',
+'categoryarticlecount' => 'Þǣr sind $1 gewrita in þissum flocce.',
+
+# Info page
+'numedits' => 'Ádihtunga tæl (gewrit): $1',
+'numtalkedits' => 'Rīm ādihtunga (mōtungtramet): $1',
+'numwatchers' => 'Scēawera tæl: $1',
+
+# Media information
+'imagemaxsize' => 'Settan biliðu on biliþgemearcungtrametum tō:',
+'thumbsize' => 'Þumannæglmicelnes:',
+
+# Special:Newimages
+'noimages' => 'Nāht tō sēonne.',
+
+# EXIF tags
+'exif-imagewidth' => 'Wīdu',
+'exif-compression' => 'Geþryccungwīse',
+'exif-ycbcrpositioning' => 'Y and C gesetednes',
+'exif-imagedescription' => 'Biliðes tītul',
+'exif-artist' => 'Fruma',
+'exif-usercomment' => 'Brūcendes trahtnunga',
+'exif-exposuretime' => 'Blicestīd',
+'exif-brightnessvalue' => 'Beorhtnes',
+'exif-lightsource' => 'Lēohtfruma',
+'exif-whitebalance' => 'Hwītefnetta',
+'exif-sharpness' => 'Scearpnes',
+'exif-gpslatituderef' => 'Norþ oþþe Sūþ Brǣdu',
+'exif-gpslatitude' => 'Brǣdu',
+'exif-gpslongituderef' => 'Ēast oþþe West Lengu',
+'exif-gpslongitude' => 'Lengu',
+'exif-gpsmeasuremode' => 'Metungwīse',
+'exif-gpsimgdirection' => 'Rihtung þæs biliðes',
+
+# EXIF attributes
+'exif-compression-1' => 'Ungeþrycced',
+
+'exif-lightsource-1' => 'Dægeslēoht',
+
+'exif-focalplaneresolutionunit-2' => 'yncas',
+
+'exif-exposuremode-1' => 'Handlic blice',
+
+'exif-whitebalance-0' => 'Selfgedōn hwītefnetta',
+
+'exif-contrast-1' => 'Sōfte',
+'exif-contrast-2' => 'Heard',
+
+'exif-sharpness-1' => 'Sōfte',
+'exif-sharpness-2' => 'Heard',
+
+'exif-subjectdistancerange-2' => 'Nēa hāwung',
+'exif-subjectdistancerange-3' => 'Feorr hāwung',
+
+# Pseudotags used for GPSLatitudeRef and GPSDestLatitudeRef
+'exif-gpslatitude-n' => 'Norþ brǣdu',
+'exif-gpslatitude-s' => 'Sūþ brǣdu',
+
+# Pseudotags used for GPSLongitudeRef and GPSDestLongitudeRef
+'exif-gpslongitude-e' => 'Ēast lengu',
+'exif-gpslongitude-w' => 'West lengu',
+
+# Pseudotags used for GPSTrackRef, GPSImgDirectionRef and GPSDestBearingRef
+'exif-gpsdirection-t' => 'Sōþ rihtung',
+
+# 'all' in various places, this might be different for inflected languages
+'recentchangesall' => 'eall',
+'imagelistall' => 'eall',
+'watchlistall2' => 'eall',
+'namespacesall' => 'eall',
+
+# E-mail address confirmation
+'confirmemail_body' => 'Hwilchwega, gewēne þu of IP stōwe $1, hæfþ in namanbēc gestt ǣnne hordcleofan
+ "$2" mid þissum e-ǣrendes naman on {{SITENAME}}n.
+
+Tō āsēðenne þæt þes hordcleofa tō þē gebyraþ and tō openienne
+e-ǣrenda hwilcnessa on {{SITENAME}}n, opena þisne bend in þīnum webbscēawere:
+
+$3
+
+Gif þis is *nā* þū, ne folga þisne bend. Þēos āsēðungrūn forealdaþ æt $4.',
+
+# Scary transclusion
+'scarytranscludefailed' => '[Bisenfeccung getrucod for $1; sarig]',
+'scarytranscludetoolong' => '[URL is tō lang; sarig]',
+
+# HTML dump
+'redirectingto' => 'Edlǣdeþ tō [[$1]]...',
+
+# AJAX search
+'searchnamed' => "Sēcan gewritu genemnodu ''$1''.",
+
+# Multipage image navigation
+'imgmultigo' => 'Gān!',
+
+# Table pager
+'table_pager_first' => 'Forma tramet',
+'table_pager_last' => 'Hindemesta tramet',
+'table_pager_limit_submit' => 'Gān',
+
+# Auto-summaries
+'autosumm-new' => 'Nīwe tramet: $1',
+
+);
diff --git a/languages/messages/MessagesAr.php b/languages/messages/MessagesAr.php
index 5037c71b..f10bf232 100644
--- a/languages/messages/MessagesAr.php
+++ b/languages/messages/MessagesAr.php
@@ -1,8 +1,22 @@
<?php
/** Arabic (العربية)
- *
- * @addtogroup Language
- */
+ *
+ * @addtogroup Language
+ *
+ * @author Meno25
+ * @author Mido
+ * @author Alnokta
+ * @author Gharbeia
+ * @author Nike
+ * @author Mimouni
+ * @author Tarawneh
+ * @author Agurzil
+ * @author Chaos
+ * @author Siebrand
+ * @author לערי ריינהארט
+ * @author SPQRobin
+ * @author OsamaK
+ */
$linkPrefixExtension = true;
$fallback8bitEncoding = 'windows-1256';
@@ -14,6 +28,7 @@ $defaultUserOptionOverrides = array(
# Underlines seriously harm legibility. Force off:
'underline' => 0,
);
+
/**
* A list of date format preference keys which can be selected in user
* preferences. New preference keys can be added, provided they are supported
@@ -77,127 +92,164 @@ $dateFormats = array(
);
$namespaceNames = array(
- NS_MEDIA => 'ملف',
- NS_SPECIAL => 'خاص',
- NS_MAIN => '',
- NS_TALK => 'نقاش',
- NS_USER => 'مستخدم',
- NS_USER_TALK => 'نقاش_المستخدم',
- # NS_PROJECT set by $wgMetaNamespace
- 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 => 'نقاش_التصنيف'
+ NS_MEDIA => 'ميديا',
+ NS_SPECIAL => 'خاص',
+ NS_MAIN => '',
+ NS_TALK => 'نقاش',
+ NS_USER => 'مستخدم',
+ NS_USER_TALK => 'نقاش_المستخدم',
+ # NS_PROJECT set by \$wgMetaNamespace
+ 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 => 'نقاش_التصنيف',
+);
+
+$namespaceAliases = array(
+ 'ملف' => NS_MEDIA,
+ 'نقاش_قالب' => NS_TEMPLATE_TALK,
);
$magicWords = array(
- 'redirect' => array( 0, "#تحويل", "#REDIRECT" ),
- 'notoc' => array( 0, "__لافهرس__", "__NOTOC__" ),
- 'nogallery' => array( 0, "__لامعرض__", "__NOGALLERY__" ),
- 'forcetoc' => array( 0, "__لصق_فهرس__", "__FORCETOC__" ),
- 'toc' => array( 0, "__فهرس__", "__TOC__" ),
- 'noeditsection' => array( 0, "__لاتحريرقسم__", "__NOEDITSECTION__" ),
- 'currentmonth' => array( 1, "شهر", "شهر_حالي", "CURRENTMONTH" ),
- 'currentmonthname' => array( 1, "اسم_شهر", "اسم_شهر_حالي", "CURRENTMONTHNAME" ),
- 'currentday' => array( 1, "يوم", "CURRENTDAY" ),
- 'currentday2' => array( 1, "يوم2", "CURRENTDAY2" ),
- 'currentdayname' => array( 1, "اسم_يوم", "CURRENTDAYNAME" ),
- 'currentyear' => array( 1, "عام", "CURRENTYEAR" ),
- 'currenttime' => array( 1, "وقت", "CURRENTTIME" ),
- 'currenthour' => array( 1, "ساعة", "CURRENTHOUR" ),
- 'localmonth' => array( 1, "شهر_محلي", "LOCALMONTH" ),
- 'localmonthname' => array( 1, "اسم_شهر_محلي", "LOCALMONTHNAME" ),
- 'localmonthabbrev' => array( 1, "اختصار_شهر_محلي", "LOCALMONTHABBREV" ),
- 'localday' => array( 1, "يوم_محلي", "LOCALDAY" ),
- 'localday2' => array( 1, "يوم_محلي2", "LOCALDAY2" ),
- 'localdayname' => array( 1, "اسم_يوم_محلي", "LOCALDAYNAME" ),
- 'localyear' => array( 1, "عام_محلي", "LOCALYEAR" ),
- 'localtime' => array( 1, "وقت_محلي", "LOCALTIME" ),
- 'localhour' => array( 1, "ساعة_محلية", "LOCALHOUR" ),
- 'numberofpages' => array( 1, "عددالصفحات", "عدد_الصفحات", "NUMBEROFPAGES" ),
- 'numberofarticles' => array( 1, "عددالمقالات", "عدد_المقالات", "NUMBEROFARTICLES" ),
- 'numberoffiles' => array( 1, "عددالملفات", "عدد_الملفات", "NUMBEROFFILES" ),
- 'numberofusers' => array( 1, "عددالمستخدمين", "عدد_المستخدمين", "NUMBEROFUSERS" ),
- 'numberofedits' => array( 1, "عددالتعديلات", "عدد_التعديلات", "NUMBEROFEDITS" ),
- 'pagename' => array( 1, "اسم_صفحة", "اسم_الصفحة", "PAGENAME" ),
- 'pagenamee' => array( 1, "عنوان_صفحة", "عنوان_الصفحة", "PAGENAMEE" ),
- 'namespace' => array( 1, "نطاق", "NAMESPACE" ),
- 'namespacee' => array( 1, "عنوان_نطاق", "NAMESPACEE" ),
- 'talkspace' => array( 1, "نطاق_نقاش,نطاق_النقاش", "TALKSPACE" ),
- 'talkspacee' => array( 1, "عنوان_نقاش,عنوان_النقاش", "TALKSPACEE" ),
- 'fullpagename' => array( 1, "اسم_الصفحة_الكامل", "اسم_صفحة_كامل", "FULLPAGENAME" ),
- 'fullpagenamee' => array( 1, "عنوان_الصفحة_الكامل", "عنوان_صفحة_كامل", "FULLPAGENAMEE" ),
- 'subpagename' => array( 1, "اسم_الصفحة_الفرعي", "اسم_صفحة_فرعي", "SUBPAGENAME" ),
- 'subpagenamee' => array( 1, "عنوان_الصفحة_الفرعي", "عنوان_صفحة_فرعي", "SUBPAGENAMEE" ),
- 'basepagename' => array( 1, "اسم_الصفحة_الأساسي", "اسم_صفحة_أساسي", "BASEPAGENAME" ),
- 'basepagenamee' => array( 1, "عنوان_الصفحة_الأساسي", "عنوان_صفحة_أساسي", "BASEPAGENAMEE" ),
- 'talkpagename' => array( 1, "اسم_صفحة_النقاش", "TALKPAGENAME" ),
- 'talkpagenamee' => array( 1, "عنوان_صفحة_النقاش", "TALKPAGENAMEE" ),
- 'msg' => array( 0, "رسالة:", "MSG:" ),
- 'subst' => array( 0, "نسخ:", "SUBST:" ),
- 'msgnw' => array( 0, "مصدر:", "مصدر_قالب:", "MSGNW:" ),
- 'img_thumbnail' => array( 1, "تصغير", "thumbnail", "thumb" ),
- 'img_manualthumb' => array( 1, "تصغير=$1", "thumbnail=$1", "thumb=$1" ),
- 'img_right' => array( 1, "يمين", "right" ),
- 'img_left' => array( 1, "يسار", "left" ),
- 'img_none' => array( 1, "بدون,بلا", "none" ),
- 'img_width' => array( 1, "$1بك", "$1px" ),
- 'img_center' => array( 1, "مركز", "center", "centre" ),
- 'img_framed' => array( 1, "إطار", "framed", "enframed", "frame" ),
- 'img_frameless' => array( 1, "لاإطار", "frameless" ),
- 'img_page' => array( 1, "صفحة=$1", "صفحة $1", "page=$1", "page $1" ),
- 'img_border' => array( 1, "حد", "حدود", "border" ),
- 'img_top' => array( 1, "أعلى", "top" ),
- 'img_text_top' => array( 1, "نص_أعلى", "text-top" ),
- 'img_middle' => array( 1, "وسط", "middle" ),
- 'img_bottom' => array( 1, "أسفل", "bottom" ),
- 'img_text_bottom' => array( 1, "نص_أسفل", "text-bottom" ),
- 'int' => array( 0, "محتوى:", "INT:" ),
- 'sitename' => array( 1, "اسم_الموقع", "اسم_موقع", "SITENAME" ),
- 'ns' => array( 0, "نط:", "NS:" ),
- 'localurl' => array( 0, "عنوان:", "LOCALURL:" ),
- 'server' => array( 0, "الخادم", "خادم", "SERVER" ),
- 'servername' => array( 0, "اسم_الخادم", "اسم_خادم", "SERVERNAME" ),
- 'scriptpath' => array( 0, "مسار", "SCRIPTPATH" ),
- 'notitleconvert' => array( 0, "لاتحويل_عنوان", "__NOTITLECONVERT__", "__NOTC__" ),
- 'nocontentconvert' => array( 0, "لاتحويل_محتوى", "__NOCONTENTCONVERT__", "__NOCC__" ),
- 'currentweek' => array( 1, "أسبوع", "CURRENTWEEK" ),
- 'currentdow' => array( 1, "رقم_يوم_أسبوع", "CURRENTDOW" ),
- 'localweek' => array( 1, "أسبوع_محلي", "LOCALWEEK" ),
- 'localdow' => array( 1, "يوم_محلي_مأ", "LOCALDOW" ),
- 'revisionid' => array( 1, "نسخة", "REVISIONID" ),
- 'revisionday' => array( 1, "يوم_النسخة", "يوم_نسخة", "REVISIONDAY" ),
- 'revisionmonth' => array( 1, "شهر_النسخة", "شهر_نسخة", "REVISIONMONTH" ),
- 'revisionyear' => array( 1, "سنة_النسخة", "عام_النسخة", "REVISIONYEAR" ),
- 'plural' => array( 0, "جمع:", "PLURAL:" ),
- 'fullurl' => array( 0, "عنوان_كامل:", "FULLURL:" ),
- 'newsectionlink' => array( 1, "__وصلة_قسم_جديد__", "__NEWSECTIONLINK__" ),
- 'currentversion' => array( 1, "نسخة_حالية", "CURRENTVERSION" ),
- 'currenttimestamp' => array( 1, "طابع_الوقت_الحالي", "CURRENTTIMESTAMP" ),
- 'localtimestamp' => array( 1, "طابع_الوقت_المحلي", "LOCALTIMESTAMP" ),
- 'language' => array( 0, "#لغة:", "#LANGUAGE:" ),
- 'contentlanguage' => array( 1, "لغة_المحتوى", "لغة_محتوى", "CONTENTLANGUAGE", "CONTENTLANG" ),
- 'pagesinnamespace' => array( 1, "صفحات_في_نطاق", "PAGESINNAMESPACE:", "PAGESINNS:" ),
- 'numberofadmins' => array( 1, "عددالإداريين", "عدد_الإداريين", "NUMBEROFADMINS" ),
- 'special' => array( 0, "خاص", "special" ),
- 'defaultsort' => array( 1, "ترتيب_قياسي", "ترتيب_افتراضي", "DEFAULTSORT:", "DEFAULTSORTKEY:", "DEFAULTCATEGORYSORT:" ),
+ 'redirect' => array( '0', '#تحويل', '#REDIRECT' ),
+ 'notoc' => array( '0', '__لافهرس__', '__NOTOC__' ),
+ 'nogallery' => array( '0', '__لامعرض__', '__NOGALLERY__' ),
+ 'forcetoc' => array( '0', '__لصق_فهرس__', '__FORCETOC__' ),
+ 'toc' => array( '0', '__فهرس__', '__TOC__' ),
+ 'noeditsection' => array( '0', '__لاتحريرقسم__', '__NOEDITSECTION__' ),
+ 'currentmonth' => array( '1', 'شهر_حالي', 'شهر', 'CURRENTMONTH' ),
+ 'currentmonthname' => array( '1', 'اسم_الشهر_الحالي', 'اسم_شهر_حالي', 'اسم_شهر', 'CURRENTMONTHNAME' ),
+ 'currentmonthnamegen' => array( '1', 'اسم_الشهر_الحالي_المولد', 'اسم_شهر_حالي_مولد', 'CURRENTMONTHNAMEGEN' ),
+ 'currentmonthabbrev' => array( '1', 'اختصار_الشهر_الحالي', 'اختصار_شهر_حالي', 'CURRENTMONTHABBREV' ),
+ 'currentday' => array( '1', 'يوم_حالي', 'يوم', 'CURRENTDAY' ),
+ 'currentday2' => array( '1', 'يوم_حالي2', 'يوم2', 'CURRENTDAY2' ),
+ 'currentdayname' => array( '1', 'اسم_اليوم_الحالي', 'اسم_يوم_حالي', 'اسم_يوم', 'CURRENTDAYNAME' ),
+ 'currentyear' => array( '1', 'عام_حالي', 'عام', 'CURRENTYEAR' ),
+ 'currenttime' => array( '1', 'وقت_حالي', 'وقت', 'CURRENTTIME' ),
+ 'currenthour' => array( '1', 'ساعة_حالية', 'ساعة', 'CURRENTHOUR' ),
+ 'localmonth' => array( '1', 'شهر_محلي', 'LOCALMONTH' ),
+ 'localmonthname' => array( '1', 'اسم_الشهر_المحلي', 'اسم_شهر_محلي', 'LOCALMONTHNAME' ),
+ 'localmonthnamegen' => array( '1', 'اسم_الشهر_المحلي_المولد', 'اسم_شهر_محلي_مولد', 'LOCALMONTHNAMEGEN' ),
+ 'localmonthabbrev' => array( '1', 'اختصار_الشهر_المحلي', 'اختصار_شهر_محلي', 'LOCALMONTHABBREV' ),
+ 'localday' => array( '1', 'يوم_محلي', 'LOCALDAY' ),
+ 'localday2' => array( '1', 'يوم_محلي2', 'LOCALDAY2' ),
+ 'localdayname' => array( '1', 'اسم_اليوم_المحلي', 'اسم_يوم_محلي', 'LOCALDAYNAME' ),
+ 'localyear' => array( '1', 'عام_محلي', 'LOCALYEAR' ),
+ 'localtime' => array( '1', 'وقت_محلي', 'LOCALTIME' ),
+ 'localhour' => array( '1', 'ساعة_محلية', 'LOCALHOUR' ),
+ 'numberofpages' => array( '1', 'عدد_الصفحات', 'عدد_صفحات', 'NUMBEROFPAGES' ),
+ 'numberofarticles' => array( '1', 'عدد_المقالات', 'عدد_مقالات', 'NUMBEROFARTICLES' ),
+ 'numberoffiles' => array( '1', 'عدد_الملفات', 'عدد_ملفات', 'NUMBEROFFILES' ),
+ 'numberofusers' => array( '1', 'عدد_المستخدمين', 'عدد_مستخدمين', 'NUMBEROFUSERS' ),
+ 'numberofedits' => array( '1', 'عدد_التعديلات', 'عدد_تعديلات', 'NUMBEROFEDITS' ),
+ 'pagename' => array( '1', 'اسم_الصفحة', 'اسم_صفحة', 'PAGENAME' ),
+ 'pagenamee' => array( '1', 'عنوان_الصفحة', 'عنوان_صفحة', 'PAGENAMEE' ),
+ 'namespace' => array( '1', 'نطاق', 'NAMESPACE' ),
+ 'namespacee' => array( '1', 'عنوان_نطاق', 'NAMESPACEE' ),
+ 'talkspace' => array( '1', 'نطاق_النقاش', 'نطاق_نقاش', 'TALKSPACE' ),
+ 'talkspacee' => array( '1', 'عنوان_النقاش', 'عنوان_نقاش', 'TALKSPACEE' ),
+ 'subjectspace' => array( '1', 'نطاق_الموضوع', 'نطاق_المقالة', 'SUBJECTSPACE', 'ARTICLESPACE' ),
+ 'subjectspacee' => array( '1', 'عنوان_نطاق_الموضوع', 'عنوان_نطاق_المقالة SUBJECTSPACEE', 'ARTICLESPACEE' ),
+ 'fullpagename' => array( '1', 'اسم_الصفحة_الكامل', 'اسم_صفحة_كامل', 'اسم_كامل', 'FULLPAGENAME' ),
+ 'fullpagenamee' => array( '1', 'عنوان_الصفحة_الكامل', 'عنوان_صفحة_كامل', 'عنوان_كامل', 'FULLPAGENAMEE' ),
+ 'subpagename' => array( '1', 'اسم_الصفحة_الفرعي', 'اسم_صفحة_فرعي', 'SUBPAGENAME' ),
+ 'subpagenamee' => array( '1', 'عنوان_الصفحة_الفرعي', 'عنوان_صفحة_فرعي', 'SUBPAGENAMEE' ),
+ 'basepagename' => array( '1', 'اسم_الصفحة_الأساسي', 'اسم_صفحة_أساسي', 'BASEPAGENAME' ),
+ 'basepagenamee' => array( '1', 'عنوان_الصفحة_الأساسي', 'عنوان_صفحة_أساسي', 'BASEPAGENAMEE' ),
+ 'talkpagename' => array( '1', 'اسم_صفحة_النقاش', 'اسم_صفحة_نقاش', 'TALKPAGENAME' ),
+ 'talkpagenamee' => array( '1', 'عنوان_صفحة_النقاش', 'عنوان_صفحة_نقاش', 'TALKPAGENAMEE' ),
+ 'subjectpagename' => array( '1', 'اسم_صفحة_الموضوع', 'اسم_صفحة_المقالة', 'SUBJECTPAGENAME', 'ARTICLEPAGENAME' ),
+ 'subjectpagenamee' => array( '1', 'عنوان_صفحة_الموضوع', 'عنوان_صفحة_المقالة SUBJECTPAGENAMEE', 'ARTICLEPAGENAMEE' ),
+ 'msg' => array( '0', 'رسالة:', 'MSG:' ),
+ 'subst' => array( '0', 'نسخ:', 'إحلال:', 'SUBST:' ),
+ 'msgnw' => array( '0', 'مصدر:', 'مصدر_قالب:', 'MSGNW:' ),
+ 'img_thumbnail' => array( '1', 'تصغير', 'thumbnail', 'thumb' ),
+ 'img_manualthumb' => array( '1', 'تصغير=$1', 'thumbnail=$1', 'thumb=$1' ),
+ 'img_right' => array( '1', 'يمين', 'right' ),
+ 'img_left' => array( '1', 'يسار', 'left' ),
+ 'img_none' => array( '1', 'بدون', 'بلا', 'none' ),
+ 'img_width' => array( '1', '$1بك', '$1px' ),
+ 'img_center' => array( '1', 'مركز', 'center', 'centre' ),
+ 'img_framed' => array( '1', 'إطار', 'framed', 'enframed', 'frame' ),
+ 'img_frameless' => array( '1', 'لاإطار', 'frameless' ),
+ 'img_page' => array( '1', 'صفحة=$1', 'صفحة $1', 'page=$1', 'page $1' ),
+ 'img_upright' => array( '1', 'معدول', 'معدول=$1', 'معدول $1', 'upright', 'upright=$1', 'upright $1' ),
+ 'img_border' => array( '1', 'حد', 'حدود', 'border' ),
+ 'img_baseline' => array( '1', 'خط_أساسي', 'baseline' ),
+ 'img_sub' => array( '1', 'فرعي', 'sub' ),
+ 'img_super' => array( '1', 'سوبر', 'سب', 'super', 'sup' ),
+ 'img_top' => array( '1', 'أعلى', 'top' ),
+ 'img_text_top' => array( '1', 'نص_أعلى', 'text-top' ),
+ 'img_middle' => array( '1', 'وسط', 'middle' ),
+ 'img_bottom' => array( '1', 'أسفل', 'bottom' ),
+ 'img_text_bottom' => array( '1', 'نص_أسفل', 'text-bottom' ),
+ 'int' => array( '0', 'محتوى:', 'INT:' ),
+ 'sitename' => array( '1', 'اسم_الموقع', 'اسم_موقع', 'SITENAME' ),
+ 'ns' => array( '0', 'نط:', 'NS:' ),
+ 'localurl' => array( '0', 'مسار_محلي:', 'LOCALURL:' ),
+ 'localurle' => array( '0', 'عنوان_المسار_المحلي:', 'عنوان_مسار_محلي:', 'LOCALURLE:' ),
+ 'server' => array( '0', 'خادم', 'SERVER' ),
+ 'servername' => array( '0', 'اسم_الخادم', 'اسم_خادم', 'SERVERNAME' ),
+ 'scriptpath' => array( '0', 'مسار_السكريبت', 'مسار_سكريبت', 'SCRIPTPATH' ),
+ 'grammar' => array( '0', 'قواعد_اللغة:', 'قواعد_لغة: GRAMMAR:' ),
+ 'notitleconvert' => array( '0', '__لاتحويل_عنوان__', '__لاتع__', '__NOTITLECONVERT__', '__NOTC__' ),
+ 'nocontentconvert' => array( '0', '__لاتحويل_محتوى__', '__لاتم__', '__NOCONTENTCONVERT__', '__NOCC__' ),
+ 'currentweek' => array( '1', 'أسبوع_حالي', 'أسبوع', 'CURRENTWEEK' ),
+ 'currentdow' => array( '1', 'يوم_حالي_مأ', 'CURRENTDOW' ),
+ 'localweek' => array( '1', 'أسبوع_محلي', 'LOCALWEEK' ),
+ 'localdow' => array( '1', 'يوم_محلي_مأ', 'LOCALDOW' ),
+ 'revisionid' => array( '1', 'رقم_النسخة', 'رقم_نسخة', 'REVISIONID' ),
+ 'revisionday' => array( '1', 'يوم_النسخة', 'يوم_نسخة', 'REVISIONDAY' ),
+ 'revisionday2' => array( '1', 'يوم_النسخة2', 'يوم_نسخة2', 'REVISIONDAY2' ),
+ 'revisionmonth' => array( '1', 'شهر_النسخة', 'شهر_نسخة', 'REVISIONMONTH' ),
+ 'revisionyear' => array( '1', 'عام_النسخة', 'عام_نسخة', 'REVISIONYEAR' ),
+ 'revisiontimestamp' => array( '1', 'طابع_وقت_النسخة', 'طابع_وقت_نسخة', 'REVISIONTIMESTAMP' ),
+ 'plural' => array( '0', 'جمع:', 'PLURAL:' ),
+ 'fullurl' => array( '0', 'عنوان_كامل:', 'FULLURL:' ),
+ 'fullurle' => array( '0', 'مسار_كامل:', 'FULLURLE:' ),
+ 'lcfirst' => array( '0', 'عنوان_كبير:', 'LCFIRST:' ),
+ 'ucfirst' => array( '0', 'عنوان_صغير:', 'UCFIRST:' ),
+ 'lc' => array( '0', 'صغير:', 'LC:' ),
+ 'uc' => array( '0', 'كبير:', 'UC:' ),
+ 'raw' => array( '0', 'خام:', 'RAW:' ),
+ 'displaytitle' => array( '1', 'عرض_العنوان', 'عرض_عنوان', 'DISPLAYTITLE' ),
+ 'rawsuffix' => array( '1', 'أر', 'آر', 'R' ),
+ 'newsectionlink' => array( '1', '__وصلة_قسم_جديد__', '__NEWSECTIONLINK__' ),
+ 'currentversion' => array( '1', 'إصدار_حالي', 'CURRENTVERSION' ),
+ 'urlencode' => array( '0', 'كود_المسار:', 'كود_مسار:', 'URLENCODE:' ),
+ 'anchorencode' => array( '0', 'كود_الأنكور', 'كود_أنكور', 'ANCHORENCODE' ),
+ 'currenttimestamp' => array( '1', 'طابع_الوقت_الحالي', 'طابع_وقت_حالي', 'CURRENTTIMESTAMP' ),
+ 'localtimestamp' => array( '1', 'طابع_الوقت_المحلي', 'طابع_وقت_محلي', 'LOCALTIMESTAMP' ),
+ 'directionmark' => array( '1', 'علامة_الاتجاه', 'علامة_اتجاه', 'DIRECTIONMARK', 'DIRMARK' ),
+ 'language' => array( '0', '#لغة:', '#LANGUAGE:' ),
+ 'contentlanguage' => array( '1', 'لغة_المحتوى', 'لغة_محتوى', 'CONTENTLANGUAGE', 'CONTENTLANG' ),
+ 'pagesinnamespace' => array( '1', 'صفحات_في_نطاق:', 'صفحات_في_نط:', 'PAGESINNAMESPACE:', 'PAGESINNS:' ),
+ 'numberofadmins' => array( '1', 'عدد_الإداريين', 'عدد_إداريين', 'NUMBEROFADMINS' ),
+ 'formatnum' => array( '0', 'صيغة_رقم', 'FORMATNUM' ),
+ 'padleft' => array( '0', 'باد_يسار', 'PADLEFT' ),
+ 'padright' => array( '0', 'باد_يمين', 'PADRIGHT' ),
+ 'special' => array( '0', 'خاص', 'special' ),
+ 'defaultsort' => array( '1', 'ترتيب_قياسي:', 'ترتيب_افتراضي:', 'مفتاح_ترتيب_قياسي:', 'مفتاح_ترتيب_افتراضي:', 'ترتيب_تصنيف_قياسي:', 'ترتيب_تصنيف_افتراضي:', 'DEFAULTSORT:', 'DEFAULTSORTKEY:', 'DEFAULTCATEGORYSORT:' ),
+ 'filepath' => array( '0', 'مسار_الملف:', 'مسار_ملف:', 'FILEPATH:' ),
+ 'tag' => array( '0', 'وسم', 'tag' ),
);
$skinNames = array(
- 'standard' => "كلاسيك",
- 'nostalgia' => "نوستالجيا",
- 'cologneblue' => "كولون بلو",
- 'monobook' => "مونوبوك",
- 'myskin' => "واجهتي",
- 'chick' => "تشيك",
- 'simple' => "سيمبل",
+ 'standard' => 'كلاسيك',
+ 'nostalgia' => 'نوستالجيا',
+ 'cologneblue' => 'كولون بلو',
+ 'monobook' => 'مونوبوك',
+ 'myskin' => 'واجهتي',
+ 'chick' => 'تشيك',
+ 'simple' => 'سيمبل',
+ 'modern' => 'مودرن',
);
$digitTransformTable = array(
@@ -216,124 +268,130 @@ $digitTransformTable = array(
);
$specialPageAliases = array(
- 'DoubleRedirects' => array( "تحويلات_مزدوجة" ),
- 'BrokenRedirects' => array( "تحويلات_مكسورة" ),
- 'Disambiguations' => array( "توضيحات" ),
- 'Userlogin' => array( "دخول_المستخدم" ),
- 'Userlogout' => array( "خروج_المستخدم" ),
- 'Preferences' => array( "تفضيلات" ),
- 'Watchlist' => array( "قائمة_المراقبة" ),
- 'Recentchanges' => array( "أحدث_التغييرات" ),
- 'Upload' => array( "رفع" ),
- 'Imagelist' => array( "قائمة_الصور" ),
- 'Newimages' => array( "صور_جديدة" ),
- 'Listusers' => array( "قائمة_المستخدمين" ),
- 'Statistics' => array( "إحصاءات" ),
- 'Randompage' => array( "عشوائي", "صفحة_عشوائية" ),
- 'Lonelypages' => array( "صفحات_يتيمة" ),
- 'Uncategorizedpages' => array( "صفحات_غير_مصنفة" ),
- 'Uncategorizedcategories' => array( "تصنيفات_غير_مصنفة" ),
- 'Uncategorizedimages' => array( "صور_غير_مصنفة" ),
- 'Uncategorizedtemplates' => array( "قوالب_غير_مصنفة" ),
- 'Unusedcategories' => array( "تصنيفات_غير_مستخدمة" ),
- 'Unusedimages' => array( "صور_غير_مستخدمة" ),
- 'Wantedpages' => array( "صفحات_مطلوبة" ),
- 'Wantedcategories' => array( "تصنيفات_مطلوبة" ),
- 'Mostlinked' => array( "الأكثر_وصلا" ),
- 'Mostlinkedcategories' => array( "أكثر_التصنيفات_وصلا" ),
- 'Mostlinkedtemplates' => array( "أكثر_القوالب_وصلا" ),
- 'Mostcategories' => array( "أكثر_الصفحات_تصنيفا" ),
- 'Mostimages' => array( "أكثر_الصور_وصلا" ),
- 'Mostrevisions' => array( "الأكثر_تعديلا" ),
- 'Fewestrevisions' => array( "الأقل_تعديلا" ),
- 'Shortpages' => array( "صفحات_قصيرة" ),
- 'Longpages' => array( "صفحات_طويلة" ),
- 'Newpages' => array( "صفحات_جديدة" ),
- 'Ancientpages' => array( "صفحات_قديمة" ),
- 'Deadendpages' => array( "صفحات_مسدودة" ),
- 'Protectedpages' => array( "صفحات_محمية" ),
- 'Allpages' => array( "كل_الصفحات" ),
- 'Prefixindex' => array( "فهرس" ),
- 'Ipblocklist' => array( "قائمة_منع_أيبي" ),
- 'Specialpages' => array( "صفحات_خاصة" ),
- 'Contributions' => array( "مساهمات" ),
- 'Emailuser' => array( "راسل_المستخدم" ),
- 'Whatlinkshere' => array( "ماذا_يصل" ),
- 'Recentchangeslinked' => array( "تغييرات_مرتبطة" ),
- 'Movepage' => array( "نقل_صفحة" ),
- 'Blockme' => array( "منعي" ),
- 'Booksources' => array( "مصدر_كتاب" ),
- 'Categories' => array( "تصنيفات" ),
- 'Export' => array( "تصدير" ),
- 'Version' => array( "إصدار" ),
- 'Allmessages' => array( "كل_الرسائل" ),
- 'Log' => array( "سجل" ),
- 'Blockip' => array( "منع_أيبي" ),
- 'Undelete' => array( "استرجاع" ),
- 'Import' => array( "استيراد" ),
- 'Lockdb' => array( "غلق_قاعدة" ),
- 'Unlockdb' => array( "فتح_قاعدة" ),
- 'Userrights' => array( "صلاحيات" ),
- 'MIMEsearch' => array( "بحث_MIME" ),
- 'Unwatchedpages' => array( "صفحات_غيرمراقبة" ),
- 'Listredirects' => array( "عرض_التحويلات" ),
- 'Revisiondelete' => array( "حذف_تعديل" ),
- 'Unusedtemplates' => array( "قوالب_غير_مستخدمة" ),
- 'Randomredirect' => array( "تحويلة_عشوائية" ),
- 'Mypage' => array( "صفحتي" ),
- 'Mytalk' => array( "نقاشي" ),
- 'Mycontributions' => array( "مساهماتي" ),
- 'Listadmins' => array( "عرض_الإداريين" ),
- 'Popularpages' => array( "صفحات_مشهورة" ),
- 'Search' => array( "بحث" ),
- 'Resetpass' => array( "ضبط_كلمة_السر" ),
- 'Withoutinterwiki' => array( "بدون_إنترويكي" ),
+ 'DoubleRedirects' => array( 'تحويلات_مزدوجة' ),
+ 'BrokenRedirects' => array( 'تحويلات_مكسورة' ),
+ 'Disambiguations' => array( 'توضيحات' ),
+ 'Userlogin' => array( 'دخول_المستخدم' ),
+ 'Userlogout' => array( 'خروج_المستخدم' ),
+ 'CreateAccount' => array( 'إنشاء_حساب' ),
+ 'Preferences' => array( 'تفضيلات' ),
+ 'Watchlist' => array( 'قائمة_المراقبة' ),
+ 'Recentchanges' => array( 'أحدث_التغييرات' ),
+ 'Upload' => array( 'رفع' ),
+ 'Imagelist' => array( 'قائمة_الصور' ),
+ 'Newimages' => array( 'صور_جديدة' ),
+ 'Listusers' => array( 'عرض_المستخدمين', 'قائمة_المستخدمين' ),
+ 'Statistics' => array( 'إحصاءات' ),
+ 'Randompage' => array( 'عشوائي', 'صفحة_عشوائية' ),
+ 'Lonelypages' => array( 'صفحات_وحيدة', 'صفحات_يتيمة' ),
+ 'Uncategorizedpages' => array( 'صفحات_غير_مصنفة' ),
+ 'Uncategorizedcategories' => array( 'تصنيفات_غير_مصنفة' ),
+ 'Uncategorizedimages' => array( 'صور_غير_مصنفة' ),
+ 'Uncategorizedtemplates' => array( 'قوالب_غير_مصنفة' ),
+ 'Unusedcategories' => array( 'تصنيفات_غير_مستخدمة' ),
+ 'Unusedimages' => array( 'صور_غير_مستخدمة' ),
+ 'Wantedpages' => array( 'صفحات_مطلوبة', 'وصلات_مكسورة' ),
+ 'Wantedcategories' => array( 'تصنيفات_مطلوبة' ),
+ 'Mostlinked' => array( 'الأكثر_وصلا' ),
+ 'Mostlinkedcategories' => array( 'أكثر_التصنيفات_وصلا' ),
+ 'Mostlinkedtemplates' => array( 'أكثر_القوالب_وصلا' ),
+ 'Mostcategories' => array( 'أكثر_الصفحات_تصنيفا' ),
+ 'Mostimages' => array( 'أكثر_الصور_وصلا' ),
+ 'Mostrevisions' => array( 'الأكثر_تعديلا' ),
+ 'Fewestrevisions' => array( 'الأقل_تعديلا' ),
+ 'Shortpages' => array( 'صفحات_قصيرة' ),
+ 'Longpages' => array( 'صفحات_طويلة' ),
+ 'Newpages' => array( 'صفحات_جديدة' ),
+ 'Ancientpages' => array( 'صفحات_قديمة' ),
+ 'Deadendpages' => array( 'صفحات_نهاية_مسدودة' ),
+ 'Protectedpages' => array( 'صفحات_محمية' ),
+ 'Protectedtitles' => array( 'عناوين_محمية' ),
+ 'Allpages' => array( 'كل_الصفحات' ),
+ 'Prefixindex' => array( 'فهرس_بادئة' ),
+ 'Ipblocklist' => array( 'قائمة_منع_أيبي' ),
+ 'Specialpages' => array( 'صفحات_خاصة' ),
+ 'Contributions' => array( 'مساهمات' ),
+ 'Emailuser' => array( 'مراسلة_المستخدم' ),
+ 'Confirmemail' => array( 'تأكيد_البريد' ),
+ 'Whatlinkshere' => array( 'ماذا_يصل_هنا' ),
+ 'Recentchangeslinked' => array( 'أحدث_التغييرات_الموصولة' ),
+ 'Movepage' => array( 'نقل_صفحة' ),
+ 'Blockme' => array( 'منعي' ),
+ 'Booksources' => array( 'مصادر_كتاب' ),
+ 'Categories' => array( 'تصنيفات' ),
+ 'Export' => array( 'تصدير' ),
+ 'Version' => array( 'إصدار' ),
+ 'Allmessages' => array( 'كل_الرسائل' ),
+ 'Log' => array( 'سجل', 'سجلات' ),
+ 'Blockip' => array( 'منع_أيبي' ),
+ 'Undelete' => array( 'استرجاع' ),
+ 'Import' => array( 'استيراد' ),
+ 'Lockdb' => array( 'غلق_قب' ),
+ 'Unlockdb' => array( 'فتح_قب' ),
+ 'Userrights' => array( 'صلاحيات_المستخدم' ),
+ 'MIMEsearch' => array( 'بحث_ميم' ),
+ 'Unwatchedpages' => array( 'صفحات_غير_مراقبة' ),
+ 'Listredirects' => array( 'عرض_التحويلات' ),
+ 'Revisiondelete' => array( 'حذف_نسخة' ),
+ 'Unusedtemplates' => array( 'قوالب_غير_مستخدمة' ),
+ 'Randomredirect' => array( 'تحويلة_عشوائية' ),
+ 'Mypage' => array( 'صفحتي' ),
+ 'Mytalk' => array( 'نقاشي' ),
+ 'Mycontributions' => array( 'مساهماتي' ),
+ 'Listadmins' => array( 'عرض_الإداريين' ),
+ 'Listbots' => array( 'عرض_البوتات' ),
+ 'Popularpages' => array( 'صفحات_مشهورة' ),
+ 'Search' => array( 'بحث' ),
+ 'Resetpass' => array( 'ضبط_كلمة_السر' ),
+ 'Withoutinterwiki' => array( 'بدون_إنترويكي' ),
+ 'MergeHistory' => array( 'دمج_التاريخ' ),
+ 'Filepath' => array( 'مسار_ملف' ),
);
$messages = array(
# User preference toggles
-'tog-underline' => 'خط تحت الوصلات',
-'tog-highlightbroken' => 'إظهار الوصلات المكسورة <a href="" class="new">بهذا الشكل</a> (البديل بهذا الشكل<a href="" class="internal">؟</a>).',
+'tog-underline' => 'ضع خطا تحت الوصلات:',
+'tog-highlightbroken' => 'أظهر الوصلات المكسورة <a href="" class="new">بهذا الشكل</a> (البديل: بهذا الشكل<a href="" class="internal">؟</a>).',
'tog-justify' => 'اجعل عرض الأسطر في الفقرات متساو',
'tog-hideminor' => 'خبئ التعديلات الطفيفة في أحدث التغييرات',
-'tog-extendwatchlist' => 'مدد قائمة المراقبة لإظهار جميع التغييرات المطبقة',
-'tog-usenewrc' => 'شكل متقدم من صفحة أحدث التغييرات (جافا سكريبت)',
-'tog-numberheadings' => 'رقّم الأقسام تلقائيا',
+'tog-extendwatchlist' => 'مدد قائمة المراقبة لعرض كل التغييرات المطبقة',
+'tog-usenewrc' => 'شكل متقدم من أحدث التغييرات (جافا سكريبت)',
+'tog-numberheadings' => 'رقم العناوين تلقائيا',
'tog-showtoolbar' => 'اعرض شريط التحرير (جافا سكريبت)',
-'tog-editondblclick' => 'عدل الصفحات عند النقر المزدوج على الصفحة (جافا سكريبت)',
-'tog-editsection' => 'مكن تعديل الأقسام عن طريق وصلات [تحرير]',
-'tog-editsectiononrightclick' => 'مكّن تحرير الأقسام في عن طريق كبسة الفأرة اليمين<br /> على عناوين الأقسام (يتطلب جافا سكريبت)',
-'tog-showtoc' => 'عرض فهرس المحتويات (للصفحات التي تحتوي على أكثر من 3 أقسام)',
-'tog-rememberpassword' => 'تذكر بيانات دخولي على هذا الحاسوب',
-'tog-editwidth' => 'صندوق التحرير يأخذ كامل عرض المساحة المتاحة',
+'tog-editondblclick' => 'عدل الصفحات عند الضغط المزدوج (جافا سكريبت)',
+'tog-editsection' => 'فعل تعديل الأقسام عن طريق وصلات [تحرير]',
+'tog-editsectiononrightclick' => 'فعل تعديل الأقسام بواسطة كبسة الفأرة اليمين على عناوين الأقسام (جافاسكريبت)',
+'tog-showtoc' => 'اعرض فهرس المحتويات (للصفحات التي تحتوي على أكثر من 3 عناوين)',
+'tog-rememberpassword' => 'تذكر دخولي على هذا الحاسوب',
+'tog-editwidth' => 'صندوق التحرير يأخذ كامل العرض',
'tog-watchcreations' => 'أضف الصفحات التي أنشئها إلى قائمة مراقبتي',
'tog-watchdefault' => 'أضف الصفحات التي أحررها إلى قائمة مراقبتي',
'tog-watchmoves' => 'أضف الصفحات التي أنقلها إلى قائمة مراقبتي',
'tog-watchdeletion' => 'أضف الصفحات التي أحذفها إلى قائمة مراقبتي',
-'tog-minordefault' => "خيار ''هذا تعديل طفيف'' هو الخيار الافتراضي",
-'tog-previewontop' => 'إظهار العرض المسبق قبل صندوق التحرير',
-'tog-previewonfirst' => 'اعرض الصفحة عند حفظها بعد أول تعديل',
-'tog-nocache' => 'امنع حفظ نسخة من الصفحة بعد زيارتها',
-'tog-enotifwatchlistpages' => 'أرسل لي رسالة عندما يتم تغيير صفحة أراقبها',
-'tog-enotifusertalkpages' => 'أرسل لي رسالة عندما يتم تغيير صفحة نقاشي',
-'tog-enotifminoredits' => 'أرسل لي رسالة للتعديلات الطفيفة أيضا',
-'tog-enotifrevealaddr' => 'إظهار عنوان بريدي الإلكتروني في رسائل التنويه',
-'tog-shownumberswatching' => 'اعرض عدد المستخدمين المراقبين للصفحة',
-'tog-fancysig' => 'فقط توقيع (بدون وصلة أوتوماتيكية)',
-'tog-externaleditor' => 'استخدم محرر نصوص خارجيا تلقائيا',
-'tog-externaldiff' => 'استخدام فروقا خارجية افتراضيا',
+'tog-minordefault' => 'علم كل التعديلات كطفيفة افتراضيا',
+'tog-previewontop' => 'أظهر العرض المسبق قبل صندوق التحرير',
+'tog-previewonfirst' => 'أظهر العرض المسبق عند أول تعديل',
+'tog-nocache' => 'عطل تخبئة الصفحة',
+'tog-enotifwatchlistpages' => 'أرسل لي رسالة إلكترونية عندما يتم تغيير صفحة أراقبها',
+'tog-enotifusertalkpages' => 'أرسل لي رسالة إلكترونية عندما يتم تغيير صفحة نقاشي',
+'tog-enotifminoredits' => 'أرسل لي رسالة إلكترونية للتعديلات الطفيفة للصفحات أيضا',
+'tog-enotifrevealaddr' => 'أظهر عنوان بريدي الإلكتروني في رسائل الإخطار',
+'tog-shownumberswatching' => 'اعرض عدد المستخدمين المراقبين',
+'tog-fancysig' => 'توقيعات خام (بدون وصلة أوتوماتيكية)',
+'tog-externaleditor' => 'استخدم محرر خارجي افتراضيا',
+'tog-externaldiff' => 'استخدم فرقا خارجيا افتراضيا',
'tog-showjumplinks' => 'فعل وصلات "اذهب إلى".',
'tog-uselivepreview' => 'استخدم الاستعراض السريع (جافاسكريبت) (تجريبي)',
-'tog-forceeditsummary' => 'نبهني عند إدخال ملخص تحرير فارغ',
+'tog-forceeditsummary' => 'نبهني عند إدخال ملخص تعديل فارغا',
'tog-watchlisthideown' => 'أخف تعديلاتي من قائمة المراقبة',
'tog-watchlisthidebots' => 'أخف تعديلات البوت من قائمة المراقبة',
'tog-watchlisthideminor' => 'أخف التعديلات الطفيفة من قائمة المراقبة',
-'tog-nolangconversion' => 'عطّل تحويل المتغيرات',
+'tog-nolangconversion' => 'عطل تحويل اللهجات',
'tog-ccmeonemails' => 'أرسل لي نسخا من رسائل البريد الإلكتروني التي أرسلها للمستخدمين الآخرين',
-'tog-diffonly' => 'لا تعرض محتوى الصفحة عند المقارنة بين التعديلات',
+'tog-diffonly' => 'لا تعرض محتوى الصفحة أسفل الفروقات',
'underline-always' => 'دائما',
-'underline-never' => 'لا',
+'underline-never' => 'أبدا',
'underline-default' => 'تبعا لإعدادات المتصفح',
'skinpreview' => '(عرض)',
@@ -393,25 +451,25 @@ $messages = array(
# Bits of text used by many pages
'categories' => 'تصنيفات',
'pagecategories' => '{{PLURAL:$1|تصنيف|تصنيفات}}',
-'category_header' => 'المقالات في التصنيف "$1"',
+'category_header' => 'الصفحات في التصنيف "$1"',
'subcategories' => 'التصنيفات الفرعية',
'category-media-header' => 'ملفات الميديا في التصنيف "$1"',
'category-empty' => "''هذا التصنيف لا يحتوي حاليا على مقالات أو ملفات ميديا.''",
-'mainpagetext' => "<big>'''تم تشغيل ميدياويكي بنجاح.'''</big>",
-'mainpagedocfooter' => 'انظر [http://meta.wikimedia.org/wiki/Help:Contents دليل المستخدم] لمعلومات حول استخدام الويكي.
+'mainpagetext' => "<big>'''تم تثبيت ميدياويكي بنجاح.'''</big>",
+'mainpagedocfooter' => 'استشر [http://meta.wikimedia.org/wiki/Help:Contents دليل المستخدم] لمعلومات حول استخدام برنامج الويكي.
== البداية ==
* [http://www.mediawiki.org/wiki/Manual:Configuration_settings قائمة إعدادات الضبط]
-* [http://www.mediawiki.org/wiki/Manual:FAQ اسئلة متكررة حول ميدياويكي]
+* [http://www.mediawiki.org/wiki/Manual:FAQ أسئلة متكررة حول ميدياويكي]
* [http://lists.wikimedia.org/mailman/listinfo/mediawiki-announce القائمة البريدية الخاصة بإصدار ميدياويكي]',
'about' => 'حول',
-'article' => 'مقالة',
+'article' => 'صفحة محتوى',
'newwindow' => '(تفتح في نافذة جديدة)',
'cancel' => 'إلغاء',
-'qbfind' => 'بحث',
+'qbfind' => 'إيجاد',
'qbbrowse' => 'تصفح',
'qbedit' => 'عدل',
'qbpageoptions' => 'هذه الصفحة',
@@ -423,6 +481,7 @@ $messages = array(
'mytalk' => 'نقاشي',
'anontalk' => 'النقاش لعنوان الأيبي هذا',
'navigation' => 'إبحار',
+'and' => 'و',
# Metadata in edit box
'metadata_help' => 'بيانات ميتا:',
@@ -437,7 +496,7 @@ $messages = array(
'searcharticle' => 'اذهب',
'history' => 'تاريخ الصفحة',
'history_short' => 'تاريخ',
-'updatedmarker' => 'تم تعديل الصفحة بعد زيارتي الأخيرة',
+'updatedmarker' => 'تم تحديثها منذ زيارتي الأخيرة',
'info_short' => 'معلومات',
'printableversion' => 'نسخة للطباعة',
'permalink' => 'وصلة دائمة',
@@ -448,10 +507,10 @@ $messages = array(
'deletethispage' => 'احذف هذه الصفحة',
'undelete_short' => 'استرجاع {{PLURAL:$1|تعديل واحد|تعديلان|$1 تعديلات|$1 تعديل|$1 تعديلا}}',
'protect' => 'حماية',
-'protect_change' => 'تغيير مستوى الحماية',
+'protect_change' => 'غير الحماية',
'protectthispage' => 'احم هذه الصفحة',
-'unprotect' => 'إزالة الحماية',
-'unprotectthispage' => 'إزالة حماية هذه الصفحة',
+'unprotect' => 'أزل الحماية',
+'unprotectthispage' => 'أزل حماية هذه الصفحة',
'newpage' => 'صفحة جديدة',
'talkpage' => 'ناقش هذه الصفحة',
'talkpagelinktext' => 'نقاش',
@@ -461,10 +520,10 @@ $messages = array(
'articlepage' => 'عرض صفحة المحتوى',
'talk' => 'نقاش',
'views' => 'معاينة',
-'toolbox' => 'أدوات',
+'toolbox' => 'صندوق الأدوات',
'userpage' => 'عرض صفحة المستخدم',
'projectpage' => 'عرض صفحة المشروع',
-'imagepage' => 'عرض صفحة الصورة',
+'imagepage' => 'عرض صفحة الميديا',
'mediawikipage' => 'عرض صفحة الرسالة',
'templatepage' => 'عرض صفحة القالب',
'viewhelppage' => 'عرض صفحة المساعدة',
@@ -483,17 +542,17 @@ $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).
'aboutsite' => 'حول {{SITENAME}}',
'aboutpage' => 'Project:حول',
-'bugreports' => 'تقارير الأخطاء',
+'bugreports' => 'بلاغ الأخطاء',
'bugreportspage' => 'Project:بلاغ أخطاء',
-'copyright' => 'المحتويات تحت $1.',
+'copyright' => 'المحتوى متوفر تحت $1.',
'copyrightpagename' => 'حقوق النسخ في {{SITENAME}}',
-'copyrightpage' => 'Project:حقوق النسخ',
+'copyrightpage' => '{{ns:project}}:حقوق النسخ',
'currentevents' => 'الأحداث الجارية',
-'currentevents-url' => 'الأحداث الجارية',
+'currentevents-url' => 'Project:الأحداث الجارية',
'disclaimers' => 'عدم مسؤولية',
'disclaimerpage' => 'Project:عدم مسؤولية عام',
'edithelp' => 'مساعدة التحرير',
-'edithelppage' => 'مساعدة:تحرير',
+'edithelppage' => 'Help:تحرير',
'faq' => 'الأسئلة الأكثر تكرارا',
'faqpage' => 'Project:أسئلة متكررة',
'helppage' => 'Help:محتويات',
@@ -506,14 +565,14 @@ $messages = array(
'sitesupport' => 'التبرعات',
'sitesupport-url' => 'Project:دعم الموقع',
-'badaccess' => 'خطأ في الصلاحيات المطلوبة',
-'badaccess-group0' => 'ليس من المسموح لك تنفيذ الأمر الذي طلبته.',
-'badaccess-group1' => 'الأمر الذي طلبته مقصور على المستخدمين في المجموعة $1.',
-'badaccess-group2' => 'الأمر الذي طلبته مقصور على المستخدمين في إحدى المجموعتين $1 .',
-'badaccess-groups' => 'الأمر الذي طلبته مقصور على المستخدمين في إحدى المجموعات $1.',
+'badaccess' => 'خطأ في السماح',
+'badaccess-group0' => 'ليس من المسموح لك تنفيذ الفعل الذي طلبته.',
+'badaccess-group1' => 'الفعل الذي طلبته مقصور على المستخدمين في المجموعة $1.',
+'badaccess-group2' => 'الفعل الذي طلبته مقصور على المستخدمين في إحدى المجموعتين $1.',
+'badaccess-groups' => 'الفعل الذي طلبته مقصور على المستخدمين في إحدى المجموعات $1.',
'versionrequired' => 'يلزم الإصدار $1 من ميدياويكي',
-'versionrequiredtext' => 'يلزم الإصدار رقم $1 من ميدياويكي لاستعمال هذه الصفحة. انظر [[Special:Version|رقم الإصدار]]',
+'versionrequiredtext' => 'يلزم الإصدار $1 من ميدياويكي لاستعمال هذه الصفحة. انظر [[Special:Version|صفحة الإصدار]]',
'ok' => 'موافق',
'retrievedfrom' => 'تم الاسترجاع من "$1"',
@@ -524,19 +583,25 @@ $messages = array(
'editsection' => 'تحرير',
'editold' => 'تحرير',
'editsectionhint' => 'تحرير القسم: $1',
-'toc' => 'فهرست',
-'showtoc' => 'إظهار',
+'toc' => 'محتويات',
+'showtoc' => 'عرض',
'hidetoc' => 'إخفاء',
-'thisisdeleted' => 'هل تريد استعراض أو استرجاع $1؟',
+'thisisdeleted' => 'عرض أو استرجاع $1؟',
'viewdeleted' => 'عرض $1؟',
'restorelink' => '{{PLURAL:$1|تعديل واحد محذوف|تعديلان محذوفان|$1 تعديلات محذوفة|$1 تعديل محذوف|$1 تعديلا محذوفا}}',
'feedlinks' => 'تلقيم:',
-'feed-invalid' => 'نوع اشتراك التليقم خاطئ.',
+'feed-invalid' => 'نوع اشتراك التليقم غير صحيح.',
+'feed-unavailable' => 'التلقيمات غير متوفرة في {{SITENAME}}',
+'site-rss-feed' => '$1 تلقيم أر‌إس‌إس',
+'site-atom-feed' => '$1 تلقيم أتوم',
+'page-rss-feed' => '"$1" تلقيم أر‌إس‌إس',
+'page-atom-feed' => '"$1" تلقيم أتوم',
'feed-atom' => 'أتوم',
'feed-rss' => 'أر إس إس',
+'red-link-title' => '$1 (لم تتم كتابتها بعد)',
-# Short words for each namespace, by default used in the 'article' tab in monobook
-'nstab-main' => 'مقالة',
+# Short words for each namespace, by default used in the namespace tab in monobook
+'nstab-main' => 'صفحة',
'nstab-user' => 'صفحة مستخدم',
'nstab-media' => 'صفحة ميديا',
'nstab-special' => 'خاص',
@@ -548,10 +613,12 @@ $messages = array(
'nstab-category' => 'تصنيف',
# Main script and global functions
-'nosuchaction' => 'لا يوجد أمر كهذا',
-'nosuchactiontext' => 'الأمر في مسار الصفحة لم يتم التعرف عليه من خلال الويكي',
+'nosuchaction' => 'لا يوجد فعل كهذا',
+'nosuchactiontext' => 'الأمر في المسار لم يتم التعرف عليه بواسطة الويكي',
'nosuchspecialpage' => 'لا توجد صفحة خاصة بهذا الاسم',
-'nospecialpagetext' => 'لقد طلبت صفحة خاصة غير صحيحة، قائمة الصفحات الخاصة الصحيحة موجودة في[[Special:Specialpages|قائمة الصفحات الخاصة]].',
+'nospecialpagetext' => "<big>'''لقد طلبت صفحة خاصة غير صحيحة.'''</big>
+
+قائمة بالصفحات الخاصة الصحيحة يمكن إيجادها في [[Special:Specialpages]].",
# General errors
'error' => 'خطأ',
@@ -567,59 +634,67 @@ MySQL أرجعت الخطأ "<tt>$3: $4</tt>".',
"$1"
من داخل الدالة "$2".
MySQL أرجعت الخطأ "$3: $4"',
-'noconnect' => 'عفوا! تعاني الويكي من بعض المشاكل التقنية، و لا يمكن الاتصال بخادم قاعدة البيانات. <br />
+'noconnect' => 'عذرا! تعاني الويكي من بعض المشاكل التقنية، ولا يمكن الاتصال بخادم قاعدة البيانات. <br />
$1',
'nodb' => 'لم يتمكن من اختيار قاعدة البيانات $1',
-'cachederror' => 'هذه نسخة مخبأة من الصفحة المطلوبة، و قد لا تكون محدثة.',
-'laggedslavemode' => 'تحذير: هذه الصفحة قد لا تحتوي على أحدث التغييرات.',
+'cachederror' => 'هذه نسخة مخبأة من الصفحة المطلوبة، وقد لا تكون محدثة.',
+'laggedslavemode' => 'تحذير: الصفحة قد لا تحتوي على أحدث التحديثات.',
'readonly' => 'قاعدة البيانات مغلقة',
-'enterlockreason' => 'اذكر سبب المنع والوقت المتوقع لرفع المنع',
-'readonlytext' => 'قاعدة البيانات مغلقة حاليا أمام الإضافات والتعديلات، السبب غالبا ما يكون الصيانة، وستعود قاعدة البيانات للوضع الطبيعي قريبا.
+'enterlockreason' => 'أدخل سببا للغلق، متضمنا تقديرا لوقت رفع الغلق',
+'readonlytext' => 'قاعدة البيانات مغلقة حاليا أمام المدخلات الجديدة والتعديلات الأخرى، السبب غالبا ما يكون الصيانة، وستعود قاعدة البيانات للوضع الطبيعي قريبا.
+
الإداري الذي أغلق قاعدة البيانات أعطى التفسير التالي:
-<p>$1',
+$1',
'missingarticle' => 'لم تعثر قاعدة البيانات على نص الصفحة المفترض، باسم "$1".
-عادة ما يكون السبب في ذلك اتباع وصلة فرق قديمة أو وصلة لتاريخ صفحة محذوفة. إذا كنت تعتقد أن السبب غير ذلك، فمن الممكن أن تكون هناك علة في البرنامج. الرجاء إعلام أحد الإداريين عن هذا الخطأ مع ذكر الوصلة.',
+عادة ما يكون السبب في ذلك اتباع وصلة فرق قديمة أو وصلة لتاريخ صفحة محذوفة.
+
+لو كانت هذه ليست الحالة، فمن الممكن أن تكون قد عثرت على خطأ في البرنامج. من فضلك أبلغ هذا لأحد الإداريين، مع ذكر الوصلة.',
'readonly_lag' => 'تم إغلاق قاعدة البيانات تلقائيا حتى تستطيع الخوادم التابعة ملاحقة الخادم الرئيسي',
'internalerror' => 'خطأ داخلي',
'internalerror_info' => 'خطأ داخلي: $1',
-'filecopyerror' => 'لا يمكن نسخ الملف من "$1" إلى "$2".',
-'filerenameerror' => 'لا يمكن تغيير اسم الملف من "$1" إلى "$2".',
-'filedeleteerror' => 'لا يمكن حذف الملف "$1".',
+'filecopyerror' => 'لم يمكن نسخ الملف "$1" إلى "$2".',
+'filerenameerror' => 'لم يمكن إعادة تسمية الملف "$1" إلى "$2".',
+'filedeleteerror' => 'لم يمكن حذف الملف "$1".',
'directorycreateerror' => 'لم يمكن إنشاء المجلد "$1".',
-'filenotfound' => 'لا يمكن إيجاد الملف "$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 />
+'formerror' => 'خطأ: لم يمكن تنفيذ الاستمارة',
+'badarticleerror' => 'لا يمكن إجراء هذا الفعل على هذه الصفحة.',
+'cannotdelete' => 'لم يمكن حذف الصفحة أو الملف المحدد. (ربما يكون قد تم حذفه بواسطة شخص آخر. )',
+'badtitle' => 'عنوان سيء',
+'badtitletext' => 'عنوان الصفحة المطلوب إما غير صحيح أو فارغ، و ربما الوصلة بين اللغات أو بين المشاريع خاطئة. ومن الممكن وجود رموز لا تصلح للاستخدام في العناوين.',
+'perfdisabled' => 'عذرا! هذه الخاصية معطلة حاليا لأنها تبطئ قاعدة البيانات إلى حد أنه لا أحد يستطيع استخدام الويكي.',
+'perfcached' => 'البيانات التالية مخبأة وقد لا تكون محدثة.',
+'perfcachedts' => 'البيانات التالية مخبأة، آخر تحديث لها كان في $1.',
+'querypage-no-updates' => 'التحديثات لهذه الصفحة معطلة حاليا. البيانات هنا لن يتم تحديثها حاليا.',
+'wrong_wfQuery_params' => 'محددات خاطئة في wfQuery()<br />
الدالة: $1<br />
الاستعلام: $2',
'viewsource' => 'عرض المصدر',
'viewsourcefor' => 'ل $1',
-'protectedpagetext' => 'تمت حماية هذه الصفحة لمنع التعديلات.',
-'viewsourcetext' => 'يمكنك مشاهدة ونسخ مصدر هذه الصفحة:',
-'protectedinterface' => 'هذه الصفحة تتضمن نص الواجهة للبرنامج ولقد تم إغلاقها لمنع التخريب.',
-'editinginterface' => "'''تحذير''': أنت تقوم بتحرير صفحة تستخدم في الواجهة النصية للبرنامج؛ أية تغييرات لهذه الصفحة سوف تظهر في لواجهة المستخدم للمستخدمين الآخرين.",
-'sqlhidden' => '(استعلام SQL مخبئ)',
-'cascadeprotected' => 'تمت حماية هذه الصفحة من التعديل بسبب كونها مدمجة في {{PLURAL:$1|صفحة|صفحات}} التالية، والتي تم استعمال خاصية "حماية الصفحات المدمجة" بها:',
+'actionthrottled' => 'لا يمكن عمل المزيد من هذا الفعل',
+'actionthrottledtext' => 'كإجراء ضد السبام، أنت ممنوع من إجراء هذا الفعل عدد كبير من المرات في فترة زمنية قصيرة، ولقد تجاوزت هذا الحد. من فضلك حاول مرة ثانية خلال عدة دقائق.',
+'protectedpagetext' => 'تمت حماية هذه الصفحة لمنع التعديل.',
+'viewsourcetext' => 'يمكنك رؤية ونسخ مصدر هذه الصفحة:',
+'protectedinterface' => 'هذه الصفحة توفر نص الواجهة للبرنامج، وهي مقفلة لمنع التخريب.',
+'editinginterface' => "'''تحذير''': أنت تقوم بتحرير صفحة تستخدم في الواجهة النصية للبرنامج. التغييرات لهذه الصفحة سوف تؤثر على مظهر واجهة المستخدم للمستخدمين الآخرين. للترجمات، من فضلك استخدم [http://translatewiki.net/wiki/Main_Page?setlang=ar بيتاويكي]، مشروع ترجمة الميدياويكي.",
+'sqlhidden' => '(استعلام إس‌كيو‌إل مخفي)',
+'cascadeprotected' => 'تمت حماية هذه الصفحة من التعديل، بسبب كونها مدمجة في {{PLURAL:$1|صفحة|صفحات}} التالية، والتي تم استعمال خاصية "حماية الصفحات المدمجة" بها:
+$2',
'namespaceprotected' => "لا تمتلك الصلاحية لتعديل الصفحات في نطاق '''$1'''.",
'customcssjsprotected' => 'لا تمتلك الصلاحية لتعديل هذه الصفحة، لأنها تحتوي على الإعدادات الشخصية لمستخدم آخر.',
'ns-specialprotected' => 'الصفحات في النطاق {{ns:special}} لا يمكن تعديلها.',
+'titleprotected' => 'هذا العنوان تمت حمايته من الإنشاء بواسطة [[User:$1|$1]]. السبب المعطى هو <i>$2</i>.',
# Login and logout pages
'logouttitle' => 'خروج المستخدم',
'logouttext' => '<strong>أنت الآن غير مسجل الدخول للنظام.</strong><br />
تستطيع المتابعة باستعمال {{SITENAME}} كمجهول، أو الدخول مرة أخرى بنفس الاسم أو باسم آخر. من الممكن أن ترى بعض الصفحات في كما وأنك مسجل في النظام، وذلك بسبب استعمال الصفحات المخبأة في المتصفح لديك.',
'welcomecreation' => '== مرحبا يا $1! ==
-تم إنشاء حسابك بنجاح؛ لا تنس أن تقوم بتغيير تفضيلاتك في {{SITENAME}}.',
+
+تم إنشاء حسابك. لا تنس أن تغير تفضيلاتك في {{SITENAME}}.',
'loginpagetitle' => 'دخول المستخدم',
'yourname' => 'اسم المستخدم:',
'yourpassword' => 'كلمة السر:',
@@ -629,32 +704,33 @@ $1',
'externaldberror' => 'هناك إما خطأ في دخول قاعدة البيانات الخارجية أو أنه غير مسموح لك بتحديث حسابك الخارجي.',
'loginproblem' => '<b>حدثت مشكلة أثناء الدخول.</b><br />يرجى المحاولة مرى أخرى!',
'login' => 'دخول',
-'loginprompt' => 'يجب أن يدعم متصفحك الكوكيز لتتمكن من الدخول إلى {{SITENAME}}.',
+'loginprompt' => 'يجب أن تكون الكوكيز لديك مفعلة لتتمكن من الدخول إلى {{SITENAME}}.',
'userlogin' => 'دخول / إنشاء حساب',
'logout' => 'خروج',
'userlogout' => 'خروج',
'notloggedin' => 'غير مسجل',
'nologin' => 'لم تشترك بعد؟ $1.',
'nologinlink' => 'قم بإنشاء حساب',
-'createaccount' => 'أنشئ حسابا جديدا',
-'gotaccount' => 'هل قمت بالتسجيل سابقا؟ $1.',
+'createaccount' => 'أنشئ حسابا',
+'gotaccount' => 'تمتلك حسابا بالفعل؟ $1.',
'gotaccountlink' => 'دخول',
-'createaccountmail' => 'عبر البريد الإلكتروني',
-'badretype' => 'كلمات السر التي أدخلتها غير متطابقة.',
-'userexists' => 'اسم المستخدم الذي أدخلته مستعمل من قبل. يرجى اختيار اسم مختلف.',
+'createaccountmail' => 'بواسطة البريد الإلكتروني',
+'badretype' => 'كلمات السر التي أدخلتها لا تتطابق.',
+'userexists' => 'اسم المستخدم الذي أدخلته مستعمل بالفعل. من فضلك اختر اسما مختلفا.',
'youremail' => 'البريد الإلكتروني:',
'username' => 'اسم المستخدم:',
'uid' => 'رقم المستخدم:',
'yourrealname' => 'الاسم الحقيقي:',
'yourlanguage' => 'اللغة:',
-'yourvariant' => 'متغير',
+'yourvariant' => 'اللهجة:',
'yournick' => 'اللقب:',
-'badsig' => 'صيغة توقيع خاطئة؛ تحقق من بيانات الHTML.',
+'badsig' => 'توقيع خام غير صحيح؛ تحقق من وسوم الHTML.',
'badsiglength' => 'التوقيع طويل جدا؛ يجب أن يكون أقل من $1 حرف.',
'email' => 'البريد الإلكتروني',
-'prefs-help-realname' => 'الاسم الحقيقي اختياري و لو اخترت أن تعرض اسمك هنا سيستخدم هذا في الإشارة إلى مساهماتك.',
+'prefs-help-realname' => 'الاسم الحقيقي اختياري ولو اخترت أن تعرض اسمك هنا فسيستخدم في الإشارة إلى مساهماتك.',
'loginerror' => 'خطأ في الدخول',
'prefs-help-email' => 'البريد الإلكتروني هو مدخل اختياري يمكّن الآخرين من الاتصال بك عن طريق صفحتك أو صفحة نقاشك من دون معرفة هويتك.',
+'prefs-help-email-required' => 'عنوان البريد الإلكتروني مطلوب.',
'nocookiesnew' => 'تم إنشاء حساب المستخدم، و لكنك لست مسجل الدخول بعد. يستخدم {{SITENAME}} كوكيز لتسجيل الدخول. لديك الكوكيز معطلة. من فضلك فعلها، ثم أدخل باسم الحساب و كلمة السر الجديدتين.',
'nocookieslogin' => '{{SITENAME}} يستخدم الكوكيز لتسجيل الدخول؛ لديك الكوكيز معطلة؛ من فضلك فعلها ثم حاول مرة أخرى.',
'noname' => 'لم تحدد اسم مستخدم صحيح.',
@@ -662,36 +738,40 @@ $1',
'loginsuccess' => "'''لقد قمت بتسجيل الدخول ل{{SITENAME}} باسم \"\$1\".'''",
'nosuchuser' => 'لا يوجد مستخدم بالاسم "$1".
تأكد من إملاء الاسم، أو قم بإنشاء حساب جديد.',
-'nosuchusershort' => 'لا يوجد مستخدم باسم "$1". تأكد من إملاء الاسم.',
+'nosuchusershort' => 'لا يوجد مستخدم باسم <nowiki>$1</nowiki>". تأكد من إملاء الاسم.',
'nouserspecified' => 'يجب عليك تحديد اسم مستخدم.',
'wrongpassword' => 'كلمة السر التي أدخلتها غير صحيحة. من فضلك حاول مرة أخرى.',
'wrongpasswordempty' => 'كلمة السر المدخلة كانت فارغة. من فضلك حاول مرة أخرى.',
-'passwordtooshort' => 'كلمة السر التي اخترتها قصيرة. يجب ألا يقل طول الكلمة عن $1 حرف و أن تكون مختلفة عن اسم المستخدم الخاص بك.',
+'passwordtooshort' => 'كلمة السر التي اخترتها غير صحيحة أو قصيرة جدا. يجب ألا يقل طول الكلمة عن $1 حرف وأن تكون مختلفة عن اسم المستخدم الخاص بك.',
'mailmypassword' => 'أرسل لي كلمة السر عبر البريد الإلكتروني.',
-'passwordremindertitle' => 'تذكير بكلمة السر من {{SITENAME}}',
+'passwordremindertitle' => 'كلمة سر مؤقتة جديدة ل {{SITENAME}}',
'passwordremindertext' => 'لقد طلب شخص ما (غالبا أنت، من عنوان الأيبي $1) أن نرسل لك كلمة سر جديدة لـ{{SITENAME}} ($4).
-كلمة السر الآن للمستخدم "$2" هي "$3".
-عليك أن تقوم بالدخول إلى الموقع وتغيير كلمة السر خاصتك الآن إلا إذا لم تكن أنت من طلب هذا، اقرأ أدناه في هذه الحالة.
+كلمة السر للمستخدم "$2" الآن هي "$3".
+عليك أن تقوم بالدخول إلى الموقع وتغيير كلمة السر خاصتك الآن.
-إذا لم تكن أنت من قام بطلب كلمة السر أو أنك تذكرت كلمة السر السابقة ولا ترغب بتغييرها فبإمكانك أن تتغاضى عن هذه الرسالة وأن تستمر في استخدام كلمة السر السابقة خاصتك.',
-'noemail' => 'لا يوجد أي عنوان بريد إلكتروني مسجل للمستخدم "$1".',
-'passwordsent' => 'تم إرسال كلمة سر جديدة إلى العنوان البريدي المسجل للمستخدم "$1".
-يرجى محاولة تسجيل الدخول مرة أخرى عند استلامها.',
+إذا لم تكن أنت من قام بطلب كلمة السر أو أنك تذكرت كلمة السر السابقة ولا ترغب بتغييرها فبإمكانك أن تتجاهل هذه الرسالة وأن تستمر في استخدام كلمة السر السابقة خاصتك.',
+'noemail' => 'لا يوجد عنوان بريد إلكتروني مسجل للمستخدم "$1".',
+'passwordsent' => 'تم إرسال كلمة سر جديدة إلى عنوان البريد الإلكتروني المسجل للمستخدم "$1".
+من فضلك حاول تسجيل الدخول مرة ثانية بعد استلامها.',
'blocked-mailpassword' => 'تم منع عنوان الأيبي الخاص بك من التحرير، ولمنع التخريب لا يمكنك أن تستخدم خاصية استرجاع كلمة السر.',
'eauthentsent' => 'تم إرسال رسالة تأكيد إلكترونية إلى العنوان المسمى. حتى ترسل أي رسالة أخرى لذلك الحساب عليك أن تتبع التعليمات الواردة في الرسالة لتأكيد أن هذا الحساب هو لك بالفعل.',
'throttled-mailpassword' => 'تم بالفعل إرسال تذكير بكلمة السر، في خلال الـ$1 ساعة الماضية.
لمنع التخريب، تذكير واحد فقط سيتم إرساله كل
$1 ساعة.',
'mailerror' => 'خطأ أثناء إرسال البريد: $1',
-'acct_creation_throttle_hit' => 'معذرة، لقد قمت بإنشاء $1 حساب. لا يمكنك عمل المزيد.',
-'emailauthenticated' => 'تم تأكيد بريدك الإلكتروني على $1.',
+'acct_creation_throttle_hit' => 'عذرا، لقد قمت بإنشاء $1 حساب. لا يمكنك عمل المزيد.',
+'emailauthenticated' => 'تم تأكيد بريدك الإلكتروني في $1.',
'emailnotauthenticated' => 'لم يتم التحقق من بريدك الإلكتروني. لن يتم إرسال رسائل لأي من الميزات التالية.',
'noemailprefs' => 'يجب تحديد عنوان بريد إلكتروني لتفعيل هذه الخصائص.',
'emailconfirmlink' => 'أكد عنوان بريدك الإلكتروني',
'invalidemailaddress' => 'لا يمكن قبول عنوان البريد الإلكتروني الذي زودته حيث يبدو خاطئا. من فضلك ضع عنوانا مضبوطا أو أفرغ هذا الحقل.',
'accountcreated' => 'تم إنشاء الحساب',
'accountcreatedtext' => 'تم إنشاء الحساب الخاص ب$1.',
+'createaccount-title' => 'إنشاء حساب في {{SITENAME}}',
+'createaccount-text' => 'شخص ما أنشأ حسابا لعنوان بريدك الإلكتروني في {{SITENAME}} ($4) بالاسم "$2"، كلمة السر "$3". ينبغي عليك تسجيل الدخول وتغيير كلمة السر الخاصة بك الآن.
+
+يمكنك تجاهل هذه الرسالة، لو تم إنشاء هذا الحساب بالخطأ.',
'loginlanguagelabel' => 'اللغة: $1',
# Password reset dialog
@@ -702,7 +782,7 @@ $1 ساعة.',
'resetpass_submit' => 'ضبط كلمة السر والدخول',
'resetpass_success' => 'تم تغيير كلمة السر الخاصة بك بنجاح! يتم تسجيل دخولك الآن...',
'resetpass_bad_temporary' => 'كلمة السر المؤقتة خاطئة. ربما تم تغيير كلمة السر فعليا بنجاح أو ربما قمت بطلب كلمة سر مؤقتة جديدة.',
-'resetpass_forbidden' => 'لا يمكن تغيير كلمات السر على هذه الويكي',
+'resetpass_forbidden' => 'لا يمكن تغيير كلمات السر في {{SITENAME}}',
'resetpass_missing' => 'لم يتم استقبال بيانات.',
# Edit page toolbar
@@ -720,63 +800,65 @@ $1 ساعة.',
'math_tip' => 'صيغة رياضية (لا تك)',
'nowiki_sample' => 'أدخل النص غير المنسق هنا',
'nowiki_tip' => 'أهمل تهيئة الويكي',
-'image_tip' => 'إدراج صورة',
-'media_tip' => 'وصلة ملف وسائط',
+'image_tip' => 'ملف مدرج',
+'media_tip' => 'وصلة ملف',
'sig_tip' => 'توقيعك مع الساعة والتاريخ',
'hr_tip' => 'خط أفقي (تجنب الاستخدام بكثرة)',
# Edit pages
'summary' => 'ملخص',
-'subject' => 'موضوع',
+'subject' => 'موضوع/عنوان',
'minoredit' => 'هذا تعديل طفيف',
'watchthis' => 'راقب هذه الصفحة',
-'savearticle' => 'حفظ الصفحة',
+'savearticle' => 'احفظ الصفحة',
'preview' => 'عرض مسبق',
'showpreview' => 'عرض التعديلات',
'showlivepreview' => 'عرض مباشر',
-'showdiff' => 'أظهر الفرق',
+'showdiff' => 'عرض التغييرات',
'anoneditwarning' => "'''تحذير:''' لم تقم بالدخول؛ سيتم تسجيل عنوان الأيبي الخاص بك في تاريخ هذه الصفحة.",
-'missingsummary' => "'''تنبيه:''' لم تقم بكتابة ملخص للتعديل الذي قمت به. إذا قمت بضغط حفظ الصفحة مرة أخرى فسوف يتم حفظ تغييرك بلا ملخص.",
-'missingcommenttext' => 'الرجاء كتابة تعليق في الأسفل.',
-'missingcommentheader' => "'''تنبيه:''' لم تقم بوضع عنوان لهذا التعليق، إذا قمت بالضغط على حفظ الصفحة مجددا، سيتم حفظ تعليقك بدون عنوان.",
+'missingsummary' => "'''تنبيه:''' لم تقم بكتابة ملخص للتعديل. إذا قمت بضغط حفظ الصفحة مرة أخرى فيتم حفظ تعديلك بدون ملخص.",
+'missingcommenttext' => 'من فضلك أدخل تعليقا في الأسفل.',
+'missingcommentheader' => "'''تنبيه:''' لم تقم بوضع موضوع/عنوان لهذا التعليق، إذا قمت بالضغط على حفظ الصفحة مجددا، سيتم حفظ تعليقك بدون عنوان.",
'summary-preview' => 'عرض مسبق للملخص',
-'subject-preview' => 'معاينة العنوان',
+'subject-preview' => 'عرض مسبق للموضوع/العنوان',
'blockedtitle' => 'المستخدم ممنوع',
-'blockedtext' => "<big>'''تم منع اسم المستخدم أو عنوان الأيبي الخاص بك.'''</big>
+'blockedtext' => "<big>'''اسم المستخدم أو عنوان الأيبي الخاص بك تم منعه.'''</big>
سبب المنع هو: ''$2''. وقام بالمنع $1.
-انتهاء المنع: $6<br />
-الممنوع المقصود: $7
+* بداية المنع: $8
+* انتهاء المنع: $6
+* الممنوع المقصود: $7
-من الممكن التواصل مع $1 للنقاش حول المنع، أو مع أحد [[{{MediaWiki:grouppage-sysop}}|الإداريين]] حول ذلك>
+من الممكن التواصل مع $1 للنقاش حول المنع، أو مع أحد [[{{MediaWiki:Grouppage-sysop}}|الإداريين]] حول ذلك>
تذكر أنه لا يمكن لك استعمال خاصية إرسال رسائل إلكترونية للمستخدمين إلا إذا كنت قد وضعت عنوان بريدي صحيح في صفحة [[Special:Preferences|التفضيلات]] الخاصة بك.
-
عنوان الأيبي الخاص بك حاليا هو $3 وكود المنع هو #$5. يرجى إضافة أيهما أو كلاهما في أي رسالة للتساؤل حول المنع.",
'autoblockedtext' => 'عنوان الأيبي الخاص بك تم منعه تلقائيا لأنه تم استخدامه بواسطة مستخدم آخر، و الذي تم منعه بواسطة $1.
السبب الممنوح هو التالي:
:\'\'$2\'\'
-انتهاء المنع: $6
+* بداية المنع: $8
+* انتهاء المنع: $6
يمكنك أن تتصل ب $1 أو أحد
-[[{{MediaWiki:grouppage-sysop}}|الإداريين]] الآخرين لمناقشة المنع.
+[[{{MediaWiki:Grouppage-sysop}}|الإداريين]] الآخرين لمناقشة المنع.
لاحظ أنه لا يمكنك استخدام خاصية "إرسال رسالة لهذا المستخدم" إلا لو كان لديك عنوان بريد إلكتروني صحيح مسجل في [[Special:Preferences|تفضيلاتك]].
رقم منعك هو $5. من فضلك اذكر هذا الرقم في أي استفسار.',
+'blockednoreason' => 'لا سبب معطى',
'blockedoriginalsource' => "مصدر '''$1''' معروض بالأسفل:",
-'blockededitsource' => "مبين بالأسفل نص '''تعديلاتك''' في '''$1''':",
+'blockededitsource' => "نص '''تعديلاتك''' في '''$1''' معروض بالأسفل:",
'whitelistedittitle' => 'تسجيل الدخول مطلوب للتحرير',
'whitelistedittext' => 'يجب عليك $1 لتتمكن من تعديل الصفحات.',
'whitelistreadtitle' => 'تسجيل الدخول مطلوب للقراءة',
-'whitelistreadtext' => 'يتعين عليك [[Special:Userlogin|تسجيل الدخول]] لتتمكن من قراءة الصفحات.',
+'whitelistreadtext' => 'يجب عليك [[Special:Userlogin|تسجيل الدخول]] لتقرأ الصفحات.',
'whitelistacctitle' => 'لا يسمح لك بإنشاء اشتراك',
-'whitelistacctext' => 'حتى يسمح لك بإنشاء حسابات في هذه الويكي عليك أن تقوم [[Special:Userlogin|بالدخول]] وأن تمتلك الصلاحيات المناسبة.',
+'whitelistacctext' => 'حتى يسمح لك بإنشاء حسابات في {{SITENAME}} يجب عليك [[Special:Userlogin|تسجيل الدخول]] وأن تمتلك الصلاحيات المناسبة.',
'confirmedittitle' => 'تأكيد البريد الإلكتروني مطلوب لبدء التعديل',
-'confirmedittext' => 'يجب عليك تأكيد بريدك الإلكتروني قبل التعديل. من فضلك اكتب و أكد بريدك الإلكتروني من خلال [[Special:Preferences|تفضيلاتك]]',
-'nosuchsectiontitle' => 'لا يوجد قسم بهذا الاسم',
+'confirmedittext' => 'يجب عليك تأكيد بريدك الإلكتروني قبل التعديل. من فضلك اكتب وأكد بريدك الإلكتروني من خلال [[Special:Preferences|تفضيلاتك]]',
+'nosuchsectiontitle' => 'لا يوجد قسم كهذا',
'nosuchsectiontext' => 'لقد حاولت تحرير قسم غير موجود. وحيث أنه لا يوجد القسم $1، فلا يوجد مكان لحفظ تعديلك.',
'loginreqtitle' => 'تسجيل الدخول مطلوب',
'loginreqlink' => 'دخول',
@@ -786,106 +868,103 @@ $1 ساعة.',
'newarticle' => '(جديد)',
'newarticletext' => "لقد تبعت وصلة لصفحة لم يتم إنشائها بعد.
لإنشاء هذه الصفحة ابدأ الكتابة في الصندوق بالأسفل.
-(انظر في [[{{MediaWiki:helppage}}|صفحة المساعدة]] للمزيد من المعلومات)
+(انظر في [[{{MediaWiki:Helppage}}|صفحة المساعدة]] للمزيد من المعلومات)
إذا كانت زيارتك لهذه الصفحة بالخطأ، اضغط على زر ''رجوع'' في متصفح الإنترنت لديك.",
-'anontalkpagetext' => '----
-هذه صفحة نقاش لمستخدم مجهول، وهو المستخدم الذي لم يقم بإنشاء حساب في {{SITENAME}}، أو لا يستعمل ذلك الحساب.
-لذا يتم استعمال رقم الأيبي للتعريف به. من الممكن أن يشترك عدد من المستخدمين بنفس رقم الأيبي. إذا كنت مستخدما مجهولا
-وترى أن رسائل خير موجهة لك قد وصلتك، من الممكن أن تقوم [[Special:Userlogin|بإنشاء حساب أو القيام بالدخول]]
-حتى يزول الخلط بينك وبين المستخدمين المجهولين الآخرين.',
-'noarticletext' => 'لا يوجد حاليا أي نص في هذه الصفحة، يمكنك [[Special:Search/{{PAGENAME}}|البحث عن عنوان هذه الصفحة]] في الصفحات الأخرى or [{{fullurl:{{FULLPAGENAME}}|action=edit}} تعديل هذه الصفحة].',
+'anontalkpagetext' => "----''هذه صفحة نقاش لمستخدم مجهول لم يقم بإنشاء حساب بعد أو لا يستعمل ذلك الحساب. لذا فيجب علينا استعمال رقم الأيبي للتعرف عليه/عليها. مثل هذا العنوان يمكن أن يشترك فيه عدة مستخدمين. لو كنت مستخدما مجهولا وتشعر بأن تعليقات لا تخصك تم توجيهها إليك، من فضلك [[Special:Userlogin|أنشيء حسابا أو سجل الدخول]] لتجنب الارتباك المستقبلي مع مستخدمين مجهولين آخرين.''",
+'noarticletext' => 'لا يوجد حاليا أي نص في هذه الصفحة، يمكنك [[Special:Search/{{PAGENAME}}|البحث عن عنوان هذه الصفحة]] في الصفحات الأخرى أو [{{fullurl:{{FULLPAGENAME}}|action=edit}} تعديل هذه الصفحة].',
+'userpage-userdoesnotexist' => 'حساب المستخدم "$1" غير مسجل. من فضلك تأكد أنك تريد إنشاء/تعديل هذه الصفحة.',
'clearyourcache' => "ملاحظة: قم بإعادة تحميل الصفحة لرؤية التغييرات. إذا لم تظهر التغييرات بعد إعادة التحميل، قد يكون متصفح الإنترنت الذي تستخدمه يقوم بعرض نسخة مخزنة سابقا. لتجنب عرض هذه النسخة، قد يلزم أن تقوم بأحد هذه الخطوات:
* في متصفح '''موزيلا''' أو '''فايرفوكس''' أو '''سفاري''' اضغظ على ''مفتاح Shift'' أثناء قيامك بضغط زر إعادة التحميل (''Refresh'') أو اضغط ''Ctrl-Shift-R'' (''Cmd-Shift-R'' في حاسب أبل).
* في متصفح '''إنترنت إكسبلورر''' اضغط على مفتاح ''Ctrl'' أثناء قيامك بالنقر على زر إعادة التحميل (''Refresh'') أو اضغط ''Ctrl-F5''.
* في متصفح''' كونكيرر''' (Konqueror) انقر على زر إعادة التحميل (''Reload'') أو اضغط على مفتاح '''F5'''.
* في متصفح '''أوبرا''' (Opera) قد يكون من الضروري مسح المحتويات المخزنة عن طريق قائمة التفضيلات (''Tools→Preferences'').",
-'usercssjsyoucanpreview' => "<strong>ملاحظة:</strong> استعمل زر 'عرض التعديلات' لتجربة النمط (CSS) أو الجافا سكريبت الجديد قبل حفظ الصفحة.",
+'usercssjsyoucanpreview' => "<strong>ملاحظة:</strong> استعمل زر 'عرض مسبق' لتجربة النمط (CSS) أو الجافا سكريبت الجديد قبل حفظ الصفحة.",
'usercsspreview' => "'''تذكر أنك تقوم بعرض الأنماط المتراصة (CSS) فقط وأنك لم تقم بحفظها بعد!'''",
'userjspreview' => "'''تذكر أنك فقط تجرب/تعرض الجافا سكريبت الخاص بك، لم يتم الحفظ بعد!'''",
-'userinvalidcssjstitle' => "'''تحذير:''' لا توجد واجهة \"\$1\". تذكر أن ملفات ال.css و ال.js تستخدم حروف صغيرة في العنوان ، كمثال User:Foo/monobook.css و ليس User:Foo/Monobook.css.",
+'userinvalidcssjstitle' => "'''تحذير:''' لا توجد واجهة \"\$1\". تذكر أن ملفات ال.css و ال.js تستخدم حروف صغيرة في العنوان ، كمثال {{ns:user}}:Foo/monobook.css و ليس {{ns:user}}:Foo/Monobook.css.",
'updated' => '(محدثة)',
'note' => '<strong>ملاحظة:</strong>',
'previewnote' => '<strong>تذكر، هذا فقط عرض مسبق للصفحة، ولم يتم حفظه بعد</strong>!',
-'previewconflict' => 'العرض يوضح النص الموجود في صندوق التحرير العلوي و الذي سيظهر إذا اخترت الحفظ.',
-'session_fail_preview' => '<strong>عفوا! لم نتمكن من حفظ التعديلات التي قمت بها نتيجة لضياع بيانات هذه الجلسة. الرجاء المحاولة مرة أخرى. في حال استمرار المشكلة حاول أن تقوم بالخروج ومن ثم الدخول مرة أخرى.</strong>',
-'session_fail_preview_html' => "<strong>عذرا ! لا نستطيع تسجيل تعديلاتك بسبب فقدان بيانات الجلسة.</strong>
+'previewconflict' => 'هذا العرض يوضح النص الموجود في صندوق التحرير العلوي والذي سيظهر إذا اخترت الحفظ.',
+'session_fail_preview' => '<strong>عذرا! لم نتمكن من حفظ التعديلات التي قمت بها نتيجة لضياع بيانات هذه الجلسة. الرجاء المحاولة مرة أخرى. في حال استمرار المشكلة حاول أن تقوم بالخروج ومن ثم الدخول مرة أخرى.</strong>',
+'session_fail_preview_html' => "<strong>عذرا! لم نستطع معالجة تعديلك بسبب فقدان بيانات الجلسة.</strong>
-''بسبب أن wiki فعل HTML ، تم إخفاء عرض التعديلات كوقاية و حماية ضد الهجمات ب Javascript.''
+''لأن {{SITENAME}} بها HTML الخام مفعلة، العرض المسبق مخفي كاحتياط ضد هجمات الجافا سكريبت.''
-<strong>إدا كانت هذه محاولة تعديل صادقة، حاول مرة أخرى؛ و في حالة الفشل حاول الخروج تم الدخول مرة أخرى.</strong>",
+<strong>إذا كانت هذه محاولة تعديل صادقة، من فضلك حاول مرة أخرى. إذا كانت مازالت لا تعمل، حاول تسجيل الخروج ثم تسجيل الدخول مجددا.</strong>",
'token_suffix_mismatch' => '<strong>تعديلك تم رفضه لأن عميلك أخطأ في علامات الترقيم
في نص التعديل. التعديل تم رفضه لمنع فساد نص المقالة.
-هذا يحدث أحيانا عندما تستخدم خدمة بروكسي مجهولة أساسها الويب معيبة.</strong>',
+هذا يحدث أحيانا عندما تستخدم خدمة بروكسي مجهولة معيبة أساسها الويب.</strong>',
'editing' => 'تحرير $1',
-'editinguser' => 'تحرير مستخدم <b>$1</b>',
+'editinguser' => "تغيير صلاحيات المستخدم للمستخدم '''[[User:$1|$1]]''' ([[User talk:$1|{{int:talkpagelinktext}}]] | [[Special:Contributions/$1|{{int:contribslink}}]])",
'editingsection' => 'تحرير $1 (قسم)',
'editingcomment' => 'تحرير $1 (تعليق)',
'editconflict' => 'تضارب في التحرير: $1',
-'explainconflict' => 'لقد قام أحد ما بتعديل الصفحة بعد أن بدأت أنت بتحريرها.
+'explainconflict' => 'لقد عدل شخص آخر هذه الصفحة بعد أن بدأت أنت بتحريرها.
صندوق النصوص العلوي يحتوي على النص الموجود حاليا في الصفحة.
والتغييرات التي قمت أنت بها موجودة في الصندوق في أسفل الصفحة.
يجب أن تقوم بدمج تغييراتك في النص الموجود حاليا.
<b>فقط</b> ما هو موجود في الصندوق العلوي هو ما سيتم حفظه عند الضغط على زر "حفظ الصفحة".
<br />',
-'yourtext' => 'النص الذي كتبته',
+'yourtext' => 'نصك',
'storedversion' => 'النسخة المخزنة',
-'nonunicodebrowser' => '<strong>تحذير: متصفحك لا يوافق الترميز الموحد. تمت معالجة هذا لكي تتمكن من تحرير الصفحات بأمان: الحروف التي ليست ASCII سوف تظهر في صندوق التحرير كأكواد سداسي عشرية.</strong>',
+'nonunicodebrowser' => '<strong>تحذير: متصفحك لا يتوافق مع الترميز الموحد. تمت معالجة هذا لكي تتمكن من تحرير الصفحات بأمان: الحروف التي ليست ASCII سوف تظهر في صندوق التحرير كأكواد سداسي عشرية.</strong>',
'editingold' => '<strong> تحذير: أنت تقوم الآن بتحرير نسخة قديمة من هذه الصفحة.
إذا قمت بحفظها، ستفقد كافة التغييرات التي حدثت بعد هذه النسخة. </strong>',
-'yourdiff' => 'الفروقات',
-'copyrightwarning' => 'يرجى الملاحظة أن جميع المساهمات ل {{SITENAME}} خاضعة وصادرة تحت ترخيص $2 (انظر في $1 للمزيد من التفاصيل)
+'yourdiff' => 'الفروق',
+'copyrightwarning' => 'من فضلك لاحظ أن جميع المساهمات ل {{SITENAME}} خاضعة وصادرة تحت ترخيص $2 (انظر في $1 للمزيد من التفاصيل)
إذا لم ترد أن تخضع كتابتك للتعديل والتوزيع الحر، لا تضعها هنا<br />. كما أنك تتعهد بأنك قمت بكتابة ما هو موجود بنفسك، أو قمت بنسخها من مصدر يخضع ضمن الملكية العامة، أو مصدر حر آخر. <strong>لا ترسل أي عمل ذي حقوق محفوظة بدون الإذن من صاحب الحق</strong>.',
'copyrightwarning2' => 'من فضلك لاحظ أن حميع المشاركات في {{SITENAME}} يمكن أن تعدل أو تتغير أو تحذف من قبل المشاركين الآخرين. إذا لم تكن ترغب أن تعدل مشاركاتك بهذا الشكل، لا تضعها هنا.<br />
انت أيضا تقر أنك كتبت هذا بنفسك، أو نسختها من مصدر لا يخضع لحقوق النشر أو يسمح بالنقل بشكلا ما (انظر $1 للتفاصيل).
<strong>لا تضف أي نص ذي حقوق محفوظة!</strong>',
-'longpagewarning' => '<strong>تنبيه: هذه صفحة طويلة وحجمها $1 كيلوبايت، بعض متصفحات الشبكة قد تواجه مشاكل عند محاولة تحرير صفحات يزيد حجمها عن 32 كيلوبايت. يرجى تقسيم الصفحة إلى أقسام أصغر حجما إن أمكن.</strong>',
-'longpageerror' => '<strong>خطأ: النص الذي أدخلته يجاوز $1 كيلوبايت
-، و هذا أكبر من الحد الأقصى و هو $2 كيلوبايت. لا يمكن حفظ الصفحة.</strong>',
+'longpagewarning' => '<strong>تحذير: هذه الصفحة حجمها $1 كيلوبايت، بعض المتصفحات قد تواجه مشاكل عند محاولة تحرير صفحات يزيد حجمها عن 32 كيلوبايت. يرجى تقسيم الصفحة إلى أقسام أصغر حجما إن أمكن.</strong>',
+'longpageerror' => '<strong>خطأ: النص الذي أدخلته حجمه $1 كيلوبايت
+، وهذا أكبر من الحد الأقصى وهو $2 كيلوبايت. لا يمكن حفظه.</strong>',
'readonlywarning' => '<strong>تحذير: لقد أغلقت قاعدة البيانات للصيانة، لذلك لن تتمكن من حفظ التعديلات التي قمت بها حاليا. إذا رغبت بإمكانك أن تنسخ النص الذي تعمل عليه وتحفظه في ملف نصي إلى وقت لاحق.</strong>',
-'protectedpagewarning' => '<strong>تحذير: هذه الصفحة محمية. فقط المستخدمون ذوو الصلاحيات الإدارية يمكن أن يقوموا بتحريرها.</strong>',
-'semiprotectedpagewarning' => "'''ملاحظة:''' هذه الصفحة محمية بحيث يتم تعديلها فقط من قبل المستخدمين المسجلين.",
+'protectedpagewarning' => '<strong>تحذير: تمت حماية هذه الصفحة حتى يمكن للمستخدمين ذوي الصلاحيات الإدارية فقط تعديلها.</strong>',
+'semiprotectedpagewarning' => "'''ملاحظة:''' تمت حماية هذه الصفحة بحيث يمكن للمستخدمين المسجلين فقط تعديلها.",
'cascadeprotectedwarning' => '<strong>تحذير: تمت حماية هذه الصفحة بحيث يستطيع المستخدمون ذوو الصلاحيات الإدارية فقط تعديلها، وذلك لكونها مدمجة في {{PLURAL:$1|الصفحة|الصفحات}} التالية والتي تمت حمايتها بخاصية "حماية الصفحات المدمجة":</strong>',
+'titleprotectedwarning' => '<strong>تحذير: تمت حماية هذه الصفحة حتى يستطيع بعض المستخدمين فقط إنشاءها.</strong>',
'templatesused' => 'القوالب المستخدمة في هذه الصفحة:',
'templatesusedpreview' => 'القوالب المستخدمة في هذا العرض المسبق:',
'templatesusedsection' => 'القوالب المستخدمة في هذا القسم:',
'template-protected' => '(حماية كاملة)',
'template-semiprotected' => '(حماية جزئية)',
-'edittools' => '<!-- النص هنا سيظهر تحت صندوق التحرير و استمارة رفع الصور. -->',
+'edittools' => '<!-- النص هنا سيظهر تحت صندوق التحرير واستمارة رفع الصور. -->',
'nocreatetitle' => 'تم تحديد إنشاء الصفحات',
-'nocreatetext' => 'قام الموقع بتحديد القدرة على إنشاء صفحات جديدة.
-يمكنك العودة و تحرير صفحة موجودة بالفعل، أو [[Special:Userlogin|الدخول أو تسجيل حساب]].',
-'nocreate-loggedin' => 'لا تمتلك الصلاحية لإنشاء صفحات جديدة على هذه الويكي.',
-'permissionserrors' => 'أخطاء الصلاحيات',
+'nocreatetext' => 'قام {{SITENAME}} بتحديد القدرة على إنشاء صفحات جديدة.
+يمكنك العودة وتحرير صفحة موجودة بالفعل، أو [[Special:Userlogin|الدخول أو تسجيل حساب]].',
+'nocreate-loggedin' => 'لا تمتلك الصلاحية لإنشاء صفحات جديدة في {{SITENAME}}.',
+'permissionserrors' => 'أخطاء السماحات',
'permissionserrorstext' => 'لا تمتلك الصلاحية لفعل هذا، {{PLURAL:$1|للسبب التالي|للأسباب التالية}}:',
-'recreate-deleted-warn' => "'''تحذير: أنت تقوم بإعادة إنشاء صفحة تم حذفها في السابق.'''
+'recreate-deleted-warn' => "'''تحذير: أنت تقوم بإعادة إنشاء صفحة سبق حذفها.'''
يجب عليك التيقن من أن الاستمرار بتحرير هذه الصفحة ملائم.
سجل الحذف لهذه الصفحة معروض هنا:",
# "Undo" feature
-'undo-success' => 'تم استرجاع التعديل. من فضلك، أكد التعديل وقم بحفظ الصفحة أدناه.',
-'undo-failure' => 'لم ينجح الاسترجاع بسبب تعديلات متعارضة تمت على الصفحة.',
+'undo-success' => 'يمكن استرجاع التعديل. من فضلك تحقق من المقارنة بالأسفل للتأكد من أن هذا هو ما تريد أن تفعله، وبعد ذلك احفظ التغييرات بالأسفل للانتهاء من استرجاع التعديل.',
+'undo-failure' => 'لم يمكن استرجاع التعديل بسبب تعديلات متعارضة تمت على الصفحة.',
'undo-summary' => 'الرجوع عن التعديل $1 بواسطة [[Special:Contributions/$2|$2]] ([[User talk:$2|نقاش]])',
# Account creation failure
-'cantcreateaccounttitle' => 'لم يتم إنشاء الحساب.',
-'cantcreateaccounttext' => 'تم منع إنشاء الحسابات من عنوان الأيبي هذا (<b>$1</b>).
-ربما يكون هذا بسبب التخريب الصادر من مدرستك أو مزود الإنترنت الخاص بك.',
+'cantcreateaccounttitle' => 'لا يمكن إنشاء حساب',
+'cantcreateaccount-text' => "إنشاء الحسابات من عنوان الأيبي هذا (<b>$1</b>) تم منعه بواسطة [[User:$3|$3]].
+
+السبب المعطى بواسطة $3 هو ''$2''",
# History pages
-'revhistory' => 'تاريخ التغييرات',
-'viewpagelogs' => 'معاينة السجلات لهذه الصفحة',
-'nohistory' => 'لا يوجد تاريخ للتغييرات لهذه الصفحة.',
+'viewpagelogs' => 'عرض السجلات لهذه الصفحة',
+'nohistory' => 'لا يوجد تاريخ للتعديلات لهذه الصفحة.',
'revnotfound' => 'النسخة غير موجودة',
-'revnotfoundtext' => 'لم يتم العثور على النسخة القديمة من الصفحة التي طلبتها.
-من فضلك تأكد من العنوان الذي دخلت به إلى هذه الصفحة.',
+'revnotfoundtext' => 'لم يتم العثور على النسخة القديمة من الصفحة التي طلبتها. من فضلك تأكد من المسار الذي دخلت به إلى هذه الصفحة.',
'loadhist' => 'تحميل تاريخ الصفحة',
-'currentrev' => 'النسخة الحالية',
-'revisionasof' => 'نسخة $1',
-'revision-info' => 'نسخة $1 بواسطة $2',
-'previousrevision' => '←نسخة أقدم',
-'nextrevision' => 'نسخة أحدث→',
-'currentrevisionlink' => 'رؤية النسخة الحالية',
+'currentrev' => 'المراجعة الحالية',
+'revisionasof' => 'مراجعة $1',
+'revision-info' => 'مراجعة $1 بواسطة $2',
+'previousrevision' => '←مراجعة أقدم',
+'nextrevision' => 'مراجعة أحدث→',
+'currentrevisionlink' => 'المراجعة الحالية',
'cur' => 'الحالي',
'next' => 'التالي',
'last' => 'السابق',
@@ -895,10 +974,10 @@ $1 ساعة.',
'histlegend' => 'اختيار الفرق: علم على صناديق النسخ للمقارنة و اضغط قارن بين النسخ المختارة أو الزر بالأسفل.<br />
مفتاح: (الحالي) = الفرق مع النسخة الحالية
(السابق) = الفرق مع النسخة السابقة، ط = تغيير طفيف',
-'deletedrev' => '[محذوف]',
+'deletedrev' => '[محذوفة]',
'histfirst' => 'أول',
'histlast' => 'آخر',
-'historysize' => '($1 بايت)',
+'historysize' => '({{PLURAL:$1|1 بايت|$1 بايت}})',
'historyempty' => '(فارغ)',
# Revision feed
@@ -909,11 +988,11 @@ $1 ساعة.',
# Revision deletion
'rev-deleted-comment' => '(تم مسح تعليق)',
-'rev-deleted-user' => '(تم مسح اسم مستخدم)',
-'rev-deleted-event' => '(تم مسح المدخلة)',
+'rev-deleted-user' => '(اسم المستخدم أزيل)',
+'rev-deleted-event' => '(المدخلة أزيلت)',
'rev-deleted-text-permission' => '<div class="mw-warning plainlinks">
-تم مسح هذا التعديل من الأرشيف العام.
-من الممكن أن يكون هناك تفاصيل حول هذا في [{{fullurl:Special:Log/delete|page={{FULLPAGENAMEE}}}} سجل الحذف].
+مراجعة الصفحة هذه أزيلت من الأرشيفات العامة.
+ربما تكون هناك تفاصيل في [{{fullurl:Special:Log/delete|page={{FULLPAGENAMEE}}}} سجل الحذف].
</div>',
'rev-deleted-text-view' => '<div class="mw-warning plainlinks">
تم مسح هذا التعديل من الأرشيف العام.
@@ -921,27 +1000,26 @@ $1 ساعة.',
من الممكن أن يكون هناك تفاصيل حول هذا في [{{fullurl:Special:Log/delete|page={{FULLPAGENAMEE}}}} سجل الحذف].
</div>',
'rev-delundel' => 'عرض/إخفاء',
-'revisiondelete' => 'امسح/استرجع التعديلات',
-'revdelete-nooldid-title' => 'لا يوجد تعديل مختار',
-'revdelete-nooldid-text' => 'لم تقم بتحديد تعديل أو تعديلات معينة لعمل هذا الإجراء عليها.',
+'revisiondelete' => 'احذف/استرجع المراجعات',
+'revdelete-nooldid-title' => 'لا توجد نسخة مختارة',
+'revdelete-nooldid-text' => 'لم تقم بتحديد نسخة أو نسخ معينة لعمل هذه الوظيفة عليها.',
'revdelete-selected' => "{{PLURAL:$2|النسخة المختارة|النسختان المختارتان|النسخ المختارة}} من '''$1:'''",
'logdelete-selected' => "{{PLURAL:$2|الحدث المختار|الحدثان المختاران|الأحداث المختارة}} من السجل لـ '''$1:'''",
-'revdelete-text' => 'ستظل الأحداث والتعديلات الملغاة تظهر في تاريخ الصفحة والسجلات،
-ولكن لن يكون مسموحا للعامة الدخول إلى بعض محتوياتها.
+'revdelete-text' => 'النسخ والأحداث المحذوفة ستظل تظهر في تاريخ الصفحة والسجلات،
+لكن أجزاء من محتواهم لن يكون مسموحا للعامة برؤيتها.
-سيظل لدى الإداريين الآخريين بهذه الويكي الصلاحية لرؤية المحتويات المخفاة
-ويستطيعون أيضا استرجاعها مرة أخرى من خلال نفس هذه الواجهة، ما لم تكن هناك ضوابط إضافية تم وضعها.',
+الإداريون الآخرون في {{SITENAME}}سيظل بإمكانهم رؤية المحتوى المخفي ويمكنهم استرجاعه مجددا من خلال هذه الواجهة نفسها، مالم يتم وضع قيود إضافية.',
'revdelete-legend' => 'وضع ضوابط:',
-'revdelete-hide-text' => 'إخفاء نص التعديل',
+'revdelete-hide-text' => 'إخفاء نص النسخة',
'revdelete-hide-name' => 'إخفاء الإجراء والهدف منه',
'revdelete-hide-comment' => 'إخفاء تعليق التعديل',
'revdelete-hide-user' => 'إخفاء اسم/عنوان المستخدم',
'revdelete-hide-restricted' => 'تطبيق هذه الضوابط على الإداريين بجانب الآخرين',
'revdelete-suppress' => 'إخفاء البيانات عن الإداريين بجانب الآخرين',
-'revdelete-hide-image' => 'إخفاء محتويات الملف',
-'revdelete-unsuppress' => 'إزالة الضوابط من التعديلات المسترجعة',
+'revdelete-hide-image' => 'إخفاء محتوى الملف',
+'revdelete-unsuppress' => 'إزالة الضوابط من النسخ المسترجعة',
'revdelete-log' => 'تعليق السجل:',
-'revdelete-submit' => 'تطبيق على التعديل المختار',
+'revdelete-submit' => 'طبق على النسخة المختارة',
'revdelete-logentry' => 'تغيير مرئية تعديلات في [[$1]]',
'logdelete-logentry' => 'تغيير مرئية أحداث في [[$1]]',
'revdelete-logaction' => 'تم ضبط {{PLURAL:$1|تعديل|تعديلان|$1 تعديلات|$1 تعديل|$1 تعديلا}} للوضع $2',
@@ -953,36 +1031,63 @@ $1 ساعة.',
'oversightlog' => 'سجل الأوفرسايت',
'overlogpagetext' => 'بالأسفل قائمة بأحدث عمليات الحذف والمنع المتضمنة محتويات تم إخفائها عن الإداريين. انظر [[Special:Ipblocklist|قائمة منع عناوين الأيبي]] لترى حالات المنع والطرد الحالية.',
+# History merging
+'mergehistory' => 'دمج تواريخ الصفحة',
+'mergehistory-header' => "هذه الصفحة تسمح لك بدمج نسخ تاريخ صفحة ما إلى صفحة أخرى.
+تأكد من أن هذا التغيير سيحافظ على استمرار تاريخ الصفحة.
+
+'''على الأقل النسخة الحالية من الصفحة المصدر يجب أن تبقى.'''",
+'mergehistory-box' => 'دمج نسخ الصفحتين:',
+'mergehistory-from' => 'الصفحة المصدر:',
+'mergehistory-into' => 'الصفحة الهدف:',
+'mergehistory-list' => 'تاريخ التعديل القابل للدمج',
+'mergehistory-merge' => 'النسخ التالية من [[:$1|$1]] يمكن دمجها إلى [[:$2|$2]]. استخدم عامود الصناديق لدمج النسخ التي تم إنشاؤها في وقبل الوقت المحدد. لاحظ أن استخدام
+وصلات التصفح سيعيد ضبط هذا العامود.',
+'mergehistory-go' => 'عرض التعديلات القابلة للدمج',
+'mergehistory-submit' => 'دمج النسخ',
+'mergehistory-empty' => 'لا توجد نسخ يمكن دمجها',
+'mergehistory-success' => '$3 نسخة من [[:$1|$1]] تم دمجها بنجاح إلى [[:$2|$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
-'difference' => '(الفرق بين النسخ)',
-'loadingrev' => 'تحميل التعديل للمقارنة',
-'lineno' => 'سطر $1:',
-'editcurrent' => 'حرر النسخة الحالية من هذه الصفحة',
-'selectnewerversionfordiff' => 'اختر نسخة أحدث للمقارنة',
-'selectolderversionfordiff' => 'اختر نسخة أقدم للمقارنة',
-'compareselectedversions' => 'قارن بين النسخ المختارة',
-'editundo' => 'رجوع',
-'diff-multi' => '(عدد التعديلات غير الظاهرة هو $1.)',
+'history-title' => 'تاريخ مراجعة "$1"',
+'difference' => '(الفرق بين المراجعات)',
+'lineno' => 'سطر $1:',
+'compareselectedversions' => 'قارن بين النسختين المختارتين',
+'editundo' => 'رجوع',
+'diff-multi' => '({{PLURAL:$1|نسخة واحدة متوسطة|$1 نسخة متوسطة}} غير معروضة.)',
# Search results
'searchresults' => 'نتائج البحث',
-'searchresulttext' => 'للمزيد من المعلومات حول البحث في {{SITENAME}}، راجع [[{{MediaWiki:helppage}}|تصفح]].',
+'searchresulttext' => 'للمزيد من المعلومات حول البحث في {{SITENAME}}، انظر [[{{MediaWiki:Helppage}}|{{int:help}}]].',
'searchsubtitle' => "لصيغة البحث '''[[:$1]]'''",
'searchsubtitleinvalid' => "لصيغة البحث '''$1'''",
'noexactmatch' => "'''لا توجد صفحة بالاسم \"\$1\"'''. يمكنك [[:\$1|إنشاء هذه الصفحة]].",
-'titlematches' => 'نتائج بحث العناوين',
+'noexactmatch-nocreate' => "'''لا توجد صفحة بالاسم \"\$1\".'''",
+'toomanymatches' => 'وجدت مطابقات كثيرة، جرب استعلام مختلف من فضلك',
+'titlematches' => 'عنوان الصفحة يطابق',
'notitlematches' => 'لم يتم إيجاد أي عنوان مطابق',
-'textmatches' => 'نتائج بحث نصوص الصفحات',
+'textmatches' => 'نص الصفحة يطابق',
'notextmatches' => 'لم يتم إيجاد أي نص مطابق',
'prevn' => '$1 السابقة',
'nextn' => '$1 التالية',
'viewprevnext' => 'عرض ($1) ($2) ($3).',
-'showingresults' => 'القائمة التالية تظهر <b>$1</b> نتيجة أو أقل بدءا من المدخلة رقم <b>$2</b>.',
+'showingresults' => "القائمة التالية تعرض {{PLURAL:$1|'''1''' نتيجة|'''$1''' نتيجة}} بدءا من رقم '''$2'''.",
'showingresultsnum' => "معروض بالأسفل {{PLURAL:$3|'''نتيجة واحدة'''|'''$3''' نتيجة}} بدءا من رقم'''$2'''.",
'nonefound' => "'''ملاحظة:''' عمليات البحث غير الناجحة تكون عادة نتيجة للبحث عن كلمات شائعة مثل \"من\" و \"يمتلك\" والتي لا يتم فهرستها، وقد تنتج أيضا من استعمال أكثر من كلمة في البحث (فقط الصفحات التي تحتوي على جميع هذه الكلمات سوف تظهر في نتيجة البحث).",
'powersearch' => 'بحث',
'powersearchtext' => 'ابحث في النطاقات:<br />$1<br />$2 عرض التحويلات<br />ابحث عن $3 $9',
-'searchdisabled' => 'لقد تم إيقاف ميزة البحث في النصوص في {{SITENAME}}، في الوقت الحالي من الممكن أن تستعمل محرك البحث جوجل بدلا من خاصية البحث في النصوص. من الممكن أن يكون البحث في جوجل لا يشمل آخر التعديلات والصفحات.',
+'searchdisabled' => 'البحث في {{SITENAME}} معطل. يمكنك البحث من خلال جوجل في الوقت الحالي. لاحظ أن فهارسه لمحتوى {{SITENAME}} ربما تكون غير محدثة.',
# Preferences page
'preferences' => 'تفضيلات',
@@ -1002,79 +1107,86 @@ $1 ساعة.',
'math' => 'رياضيات',
'dateformat' => 'صيغة التاريخ',
'datedefault' => 'لا تفضيل',
-'datetime' => 'وقت و تاريخ',
+'datetime' => 'وقت وتاريخ',
'math_failure' => 'خطأ رياضيات',
-'math_unknown_error' => 'خطأ مجهول',
-'math_unknown_function' => 'وظيفة مجهولة',
+'math_unknown_error' => 'خطأ غير معروف',
+'math_unknown_function' => 'وظيفة غير معروفة',
'math_lexing_error' => 'خطأ في الصيغة',
'math_syntax_error' => 'خطأ بالصيغة',
-'math_image_error' => 'فشل التحويل لPNG , تحقق من تثبيت كل من Latex و dvips و gs و convert.',
-'math_bad_tmpdir' => 'لا يمكن إنشاء أو كتابة الملف المؤقت',
-'math_bad_output' => 'لا يمكن إنشاء أو كتابة مجلد الخروج',
+'math_image_error' => 'فشل التحويل لPNG ، تحقق من تثبيت كل من Latex و dvips و gs و convert.',
+'math_bad_tmpdir' => 'لا يمكن الكتابة إلى أو إنشاء مجلد الرياضيات المؤقت',
+'math_bad_output' => 'لا يمكن الكتابة إلى أو إنشاء مجلد الخروج للرياضيات',
'math_notexvc' => 'مفقود texvc executable؛ من فضلك انظر math/README to configure.',
-'prefs-personal' => 'معلومات المستخدم',
+'prefs-personal' => 'ملف المستخدم',
'prefs-rc' => 'أحدث التغييرات',
'prefs-watchlist' => 'قائمة المراقبة',
-'prefs-watchlist-days' => 'عدد الأيام المعروضة في قائمة المراقبة:',
+'prefs-watchlist-days' => 'عدد الأيام للعرض في قائمة المراقبة:',
'prefs-watchlist-edits' => 'عدد التعديلات التي تعرض في قائمة المراقبة الموسعة:',
'prefs-misc' => 'متفرقات',
-'saveprefs' => 'حفظ التفضيلات',
-'resetprefs' => 'إعادة التعديلات الأصلية',
-'oldpassword' => 'كلمة السر القديمة',
+'saveprefs' => 'حفظ',
+'resetprefs' => 'أعد الضبط',
+'oldpassword' => 'كلمة السر القديمة:',
'newpassword' => 'كلمة السر الجديدة:',
-'retypenew' => 'أعد كتابة كلمة السر الجديدة',
+'retypenew' => 'أعد كتابة كلمة السر الجديدة:',
'textboxsize' => 'أبعاد صندوق النصوص',
-'rows' => 'أسطر',
-'columns' => 'أعمدة',
-'searchresultshead' => 'خيارات نتائج البحث',
-'resultsperpage' => 'عدد النتائج في الصفحة',
-'contextlines' => 'عدد الأسطر في كل نتيجة',
+'rows' => 'صفوف:',
+'columns' => 'أعمدة:',
+'searchresultshead' => 'بحث',
+'resultsperpage' => 'عدد النتائج في الصفحة:',
+'contextlines' => 'عدد الأسطر في كل نتيجة:',
'contextchars' => 'عدد الأحرف في كل سطر',
'stub-threshold' => 'الحد لتنسيق <a href="#" class="stub">وصلة البذرة</a>:',
'recentchangesdays' => 'عدد الأيام المعروضة في أحدث التغييرات:',
'recentchangescount' => 'عدد التعديلات المعروضة في أحدث التغييرات:',
'savedprefs' => 'تم حفظ تفضيلاتك.',
'timezonelegend' => 'المنطقة الزمنية',
-'timezonetext' => 'عدد الساعات بين توقيتك المحلي والتوقيت على الخادم (UTC).',
-'localtime' => 'عرض الوقت المحلي',
+'timezonetext' => 'عدد الساعات بين توقيتك المحلي وتوقيت الخادم (UTC).',
+'localtime' => 'الوقت المحلي',
'timezoneoffset' => 'الفرق¹',
'servertime' => 'وقت الخادم',
-'guesstimezone' => 'ادخل التوقيت من المتصفح',
+'guesstimezone' => 'أدخل التوقيت من المتصفح',
'allowemail' => 'السماح بتلقي البريد الإلكتروني من المستخدمين الآخرين',
-'defaultns' => 'ابحث في هذه النطاقات بشكل افتراضي:',
-'default' => 'مبدئي',
+'defaultns' => 'ابحث في هذه النطاقات افتراضيا:',
+'default' => 'افتراضي',
'files' => 'ملفات',
# User rights
-'userrights-lookup-user' => 'إدارة مجموعات المستخدم',
-'userrights-user-editname' => 'أدخل اسم مستخدم:',
-'editusergroup' => 'تعديل مجموعات المستخدم',
-'userrights-editusergroup' => 'تعديل مجموعات المستخدم',
-'saveusergroups' => 'احفظ مجموعات المستخدم',
-'userrights-groupsmember' => 'عضو في:',
-'userrights-groupsavailable' => 'المجموعات المتاحة:',
-'userrights-groupshelp' => 'قم باختيار المجموعات التي تريد المستخدم أن يضاف إليها أو تتم إزالته منها.
-المجموعات الغير مختارة ستترك كما هي. يمكنك إزالة مجموعة بالضغط على كنترل + ضغطة فأرة يسرى.',
-'userrights-reason' => 'سبب التغيير:',
-'userrights-available-none' => 'لا يمكنك تعديل مجموعات المستخدم.',
-'userrights-available-add' => 'يمكنك إضافة المستخدمين ل $1.',
-'userrights-available-remove' => 'يمكنك إزالة المستخدمين من $1.',
+'userrights-lookup-user' => 'إدارة مجموعات المستخدم',
+'userrights-user-editname' => 'أدخل اسم مستخدم:',
+'editusergroup' => 'تعديل مجموعات المستخدم',
+'userrights-editusergroup' => 'تعديل مجموعات المستخدم',
+'saveusergroups' => 'حفظ مجموعات المستخدم',
+'userrights-groupsmember' => 'عضو في:',
+'userrights-groupsremovable' => 'المجموعات للإزالة:',
+'userrights-groupsavailable' => 'المجموعات المتوفرة:',
+'userrights-groupshelp' => 'قم باختيار المجموعات التي تريد المستخدم أن يضاف إليها أو تتم إزالته منها.
+المجموعات غير المختارة ستترك كما هي. يمكنك إزالة مجموعة بالضغط على كنترل + ضغطة فأرة يسرى.',
+'userrights-reason' => 'سبب التغيير:',
+'userrights-available-none' => 'لا يمكنك تعديل مجموعات المستخدم.',
+'userrights-available-add' => 'يمكنك إضافة المستخدمين إلى {{PLURAL:$2|هذه المجموعة|هذه المجموعات}}: $1.',
+'userrights-available-remove' => 'يمكنك إزالة المستخدمين من {{PLURAL:$2|هذه المجموعة|هذه المجموعات}}: $1.',
+'userrights-available-add-self' => 'يمكنك إضافة نفسك إلى {{PLURAL:$2|هذه المجموعة|هذه المجموعات}}: $1.',
+'userrights-available-remove-self' => 'يمكنك إزالة نفسك من {{PLURAL:$2|هذه المجموعة|هذه المجموعات}}: $1.',
+'userrights-no-interwiki' => 'أنت لا تمتلك الصلاحية لتعديل صلاحيات المستخدمين على الويكيات الأخرى.',
+'userrights-nodatabase' => 'قاعدة البيانات $1 غير موجودة أو ليست محلية.',
+'userrights-nologin' => 'يجب عليك [[Special:Userlogin|تسجيل الدخول]] بحساب إداري لتعديل صلاحيات المستخدم.',
+'userrights-notallowed' => 'حسابك لا يمتلك السماح لتعديل صلاحيات المستخدم.',
# Groups
'group' => 'المجموعة:',
-'group-autoconfirmed' => 'مستخدم مسجل',
+'group-autoconfirmed' => 'مستخدمون مؤكدون تلقائيا',
'group-bot' => 'بوتات',
-'group-sysop' => 'إداريون',
+'group-sysop' => 'إداريين',
'group-bureaucrat' => 'بيروقراطيون',
'group-all' => '(الكل)',
-'group-autoconfirmed-member' => 'مستخدم مسجل',
+'group-autoconfirmed-member' => 'مستخدم مؤكد تلقائيا',
'group-bot-member' => 'بوت',
-'group-sysop-member' => 'إداري',
+'group-sysop-member' => 'مدير نظام',
'group-bureaucrat-member' => 'بيروقراط',
-'grouppage-autoconfirmed' => '{{ns:project}}:مستخدمون مسجلون',
-'grouppage-bot' => '{{ns:project}}:بوت',
+'grouppage-autoconfirmed' => '{{ns:project}}:مستخدمون مؤكدون تلقائيا',
+'grouppage-bot' => '{{ns:project}}:بوتات',
'grouppage-sysop' => '{{ns:project}}:إداريون',
'grouppage-bureaucrat' => '{{ns:project}}:بيروقراطيون',
@@ -1087,15 +1199,15 @@ $1 ساعة.',
# Recent changes
'nchanges' => '{{PLURAL:$1|تغيير|تغييران|$1 تغييرات|$1 تغيير|$1 تغييرا}}',
'recentchanges' => 'أحدث التغييرات',
-'recentchangestext' => 'تابع آخر التغييرات في الموسوعة من هذه الصفحة.',
+'recentchangestext' => 'تابع آخر التغييرات في الويكي من هذه الصفحة.',
'recentchanges-feed-desc