Merge "Chunked upload: Return expected offset on offset error"
authorjenkins-bot <jenkins-bot@gerrit.wikimedia.org>
Mon, 16 Feb 2015 14:59:39 +0000 (14:59 +0000)
committerGerrit Code Review <gerrit@wikimedia.org>
Mon, 16 Feb 2015 14:59:39 +0000 (14:59 +0000)
92 files changed:
Gruntfile.js
RELEASE-NOTES-1.25
autoload.php
includes/DefaultSettings.php
includes/Import.php
includes/MediaWiki.php
includes/Sanitizer.php
includes/Status.php
includes/api/ApiQueryLogEvents.php
includes/api/ApiQuerySiteinfo.php
includes/api/i18n/cs.json
includes/api/i18n/de.json
includes/api/i18n/en.json
includes/api/i18n/es.json
includes/api/i18n/fr.json
includes/api/i18n/gl.json
includes/api/i18n/he.json
includes/api/i18n/ja.json
includes/api/i18n/ku-latn.json [new file with mode: 0644]
includes/api/i18n/lzh.json [new file with mode: 0644]
includes/api/i18n/pam.json
includes/api/i18n/pl.json
includes/api/i18n/pt.json
includes/api/i18n/sv.json
includes/api/i18n/zh-hans.json
includes/db/Database.php
includes/debug/logger/monolog/Handler.php
includes/debug/logger/monolog/SyslogHandler.php [new file with mode: 0644]
includes/filerepo/file/File.php
includes/filerepo/file/LocalFile.php
includes/filerepo/file/UnregisteredLocalFile.php
includes/gallery/ImageGalleryBase.php
includes/htmlform/HTMLFloatField.php
includes/htmlform/HTMLIntField.php
includes/htmlform/HTMLTagFilter.php
includes/installer/i18n/fr.json
includes/installer/i18n/ku-latn.json
includes/jobqueue/jobs/RefreshLinksJob2.php [deleted file]
includes/logging/LogFormatter.php
includes/objectcache/BagOStuff.php
includes/page/WikiPage.php
includes/parser/Parser.php
includes/profiler/Profiler.php
includes/profiler/TransactionProfiler.php
includes/specials/SpecialMediaStatistics.php
includes/specials/SpecialStatistics.php
includes/specials/SpecialWatchlist.php
languages/Names.php
languages/i18n/ar.json
languages/i18n/awa.json
languages/i18n/be-tarask.json
languages/i18n/be.json
languages/i18n/bgn.json
languages/i18n/ce.json
languages/i18n/de.json
languages/i18n/diq.json
languages/i18n/es.json
languages/i18n/fa.json
languages/i18n/fi.json
languages/i18n/fr.json
languages/i18n/he.json
languages/i18n/hu.json
languages/i18n/id.json
languages/i18n/ja.json
languages/i18n/ku-latn.json
languages/i18n/lb.json
languages/i18n/lzh.json
languages/i18n/ms.json
languages/i18n/nds-nl.json
languages/i18n/pam.json
languages/i18n/pms.json
languages/i18n/ps.json
languages/i18n/qqq.json
languages/i18n/rue.json
languages/i18n/sr-ec.json
languages/i18n/sv.json
languages/i18n/tr.json
languages/i18n/uz.json
languages/i18n/yi.json
languages/i18n/zh-hant.json
maintenance/namespaceDupes.php
maintenance/update.php
resources/src/mediawiki.legacy/shared.css
resources/src/mediawiki.less/mediawiki.mixins.less
resources/src/mediawiki.ui/components/inputs.less
resources/src/mediawiki/mediawiki.cookie.js
resources/src/mediawiki/mediawiki.user.js
tests/parser/parserTests.txt
tests/phpunit/includes/StatusTest.php
tests/phpunit/maintenance/backupTextPassTest.php
tests/qunit/suites/resources/mediawiki/mediawiki.cookie.test.js
tests/qunit/suites/resources/mediawiki/mediawiki.user.test.js

index 4481e39..e432279 100644 (file)
@@ -21,7 +21,7 @@ module.exports = function ( grunt ) {
                        },
                        all: [
                                '*.js',
-                               '{includes,languages,resources,skins,tests}/**/*.js'
+                               '{includes,languages,resources,tests}/**/*.js'
                        ]
                },
                jscs: {
index 3f24db0..188b2d7 100644 (file)
@@ -86,7 +86,9 @@ production.
 * External libraries installed via composer will now be displayed
   on Special:Version in their own section. Extensions or skins that are
   installed via composer will not be shown in this section as it is assumed
-  they will add the proper credits to the skins or extensions section.
+  they will add the proper credits to the skins or extensions section. They
+  can also be accessed through the API via the new siprop=libraries to
+  ApiQuerySiteInfo.
 * Update QUnit from v1.14.0 to v1.16.0.
 * Update Moment.js from v2.8.3 to v2.8.4.
 * Special:Tags now allows for manipulating the list of user-modifiable change
@@ -208,6 +210,7 @@ production.
   log entry is not implemented yet.
 * list=tags has additional properties to indicate 'active' status and tag
   sources.
+* siprop=libraries was added to ApiQuerySiteInfo to list installed external libraries.
 
 === Action API internal changes in 1.25 ===
 * ApiHelp has been rewritten to support i18n and paginated HTML output.
@@ -344,6 +347,8 @@ changes to languages because of Bugzilla reports.
     Instead, do this:
       $form = HTMLForm::factory( 'vform', … );
 * Deprecated Revision methods getRawUser(), getRawUserText() and getRawComment().
+* BREAKING CHANGE: mediawiki.user.generateRandomSessionId:
+  The alphabet of the prior string returned was A-Za-z0-9 and now it is 0-9A-F
 
 == Compatibility ==
 
index d0c313a..01dba44 100644 (file)
@@ -700,6 +700,7 @@ $wgAutoloadLocalClasses = array(
        'MWLoggerMonologProcessor' => __DIR__ . '/includes/debug/logger/monolog/Processor.php',
        'MWLoggerMonologSamplingHandler' => __DIR__ . '/includes/debug/logger/monolog/SamplingHandler.php',
        'MWLoggerMonologSpi' => __DIR__ . '/includes/debug/logger/monolog/Spi.php',
+       'MWLoggerMonologSyslogHandler' => __DIR__ . '/includes/debug/logger/monolog/SyslogHandler.php',
        'MWLoggerNullSpi' => __DIR__ . '/includes/debug/logger/NullSpi.php',
        'MWLoggerSpi' => __DIR__ . '/includes/debug/logger/Spi.php',
        'MWMemcached' => __DIR__ . '/includes/objectcache/MemcachedClient.php',
@@ -955,7 +956,6 @@ $wgAutoloadLocalClasses = array(
        'RefreshImageMetadata' => __DIR__ . '/maintenance/refreshImageMetadata.php',
        'RefreshLinks' => __DIR__ . '/maintenance/refreshLinks.php',
        'RefreshLinksJob' => __DIR__ . '/includes/jobqueue/jobs/RefreshLinksJob.php',
-       'RefreshLinksJob2' => __DIR__ . '/includes/jobqueue/jobs/RefreshLinksJob2.php',
        'RegexlikeReplacer' => __DIR__ . '/includes/libs/replacers/RegexlikeReplacer.php',
        'RemoveInvalidEmails' => __DIR__ . '/maintenance/removeInvalidEmails.php',
        'RemoveUnusedAccounts' => __DIR__ . '/maintenance/removeUnusedAccounts.php',
index 3f7604d..d4cdf9e 100644 (file)
@@ -6413,7 +6413,6 @@ $wgHooks = array();
  */
 $wgJobClasses = array(
        'refreshLinks' => 'RefreshLinksJob',
-       'refreshLinks2' => 'RefreshLinksJob2', // b/c
        'htmlCacheUpdate' => 'HTMLCacheUpdateJob',
        'sendMail' => 'EmaillingJob',
        'enotifNotify' => 'EnotifNotifyJob',
index 7eff5da..eb2ca77 100644 (file)
@@ -42,6 +42,8 @@ class WikiImporter {
        private $config;
        /** @var ImportTitleFactory */
        private $importTitleFactory;
+       /** @var array */
+       private $countableCache = array();
 
        /**
         * Creates an ImportXMLReader drawing from the source provided
@@ -67,6 +69,7 @@ class WikiImporter {
                }
 
                // Default callbacks
+               $this->setPageCallback( array( $this, 'beforeImportPage' ) );
                $this->setRevisionCallback( array( $this, "importRevision" ) );
                $this->setUploadCallback( array( $this, 'importUpload' ) );
                $this->setLogItemCallback( array( $this, 'importLogItem' ) );
@@ -288,6 +291,19 @@ class WikiImporter {
                $this->mImportUploads = $import;
        }
 
+       /**
+        * Default per-page callback. Sets up some things related to site statistics
+        * @param array $titleAndForeignTitle Two-element array, with Title object at
+        * index 0 and ForeignTitle object at index 1
+        * @return bool
+        */
+       public function beforeImportPage( $titleAndForeignTitle ) {
+               $title = $titleAndForeignTitle[0];
+               $page = WikiPage::factory( $title );
+               $this->countableCache['title_' . $title->getPrefixedText()] = $page->isCountable();
+               return true;
+       }
+
        /**
         * Default per-revision callback, performs the import.
         * @param WikiRevision $revision
@@ -349,6 +365,26 @@ class WikiImporter {
         */
        public function finishImportPage( $title, $foreignTitle, $revCount,
                        $sRevCount, $pageInfo ) {
+
+               // Update article count statistics (T42009)
+               // The normal counting logic in WikiPage->doEditUpdates() is designed for
+               // one-revision-at-a-time editing, not bulk imports. In this situation it
+               // suffers from issues of slave lag. We let WikiPage handle the total page
+               // and revision count, and we implement our own custom logic for the
+               // article (content page) count.
+               $page = WikiPage::factory( $title );
+               $page->loadPageData( 'fromdbmaster' );
+               $content = $page->getContent();
+               $editInfo = $page->prepareContentForEdit( $content );
+
+               $countable = $page->isCountable( $editInfo );
+               $oldcountable = $this->countableCache['title_' . $title->getPrefixedText()];
+               if ( isset( $oldcountable ) && $countable != $oldcountable ) {
+                       DeferredUpdates::addUpdate( SiteStatsUpdate::factory( array(
+                               'articles' => ( (int)$countable - (int)$oldcountable )
+                       ) ) );
+               }
+
                $args = func_get_args();
                return Hooks::run( 'AfterImportPage', $args );
        }
@@ -1544,7 +1580,6 @@ class WikiRevision {
                                        $this->title->getPrefixedText() . "]], timestamp " . $this->timestamp . "\n" );
                                return false;
                        }
-                       $oldcountable = $page->isCountable();
                }
 
                # @todo FIXME: Use original rev_id optionally (better for backups)
@@ -1567,10 +1602,11 @@ class WikiRevision {
 
                if ( $changed !== false && !$this->mNoUpdates ) {
                        wfDebug( __METHOD__ . ": running updates\n" );
+                       // countable/oldcountable stuff is handled in WikiImporter::finishImportPage
                        $page->doEditUpdates(
                                $revision,
                                $userObj,
-                               array( 'created' => $created, 'oldcountable' => $oldcountable )
+                               array( 'created' => $created, 'oldcountable' => 'no-change' )
                        );
                }
 
index 431397f..669d8e9 100644 (file)
@@ -485,6 +485,16 @@ class MediaWiki {
                $action = $this->getAction();
                $wgTitle = $title;
 
+               // Aside from rollback, master queries should not happen on GET requests.
+               // Periodic or "in passing" updates on GET should use the job queue.
+               if ( !$request->wasPosted()
+                       && in_array( $action, array( 'view', 'edit', 'history' ) )
+               ) {
+                       $trxProfiler = Profiler::instance()->getTransactionProfiler();
+                       $trxProfiler->setExpectation( 'masterConns', 0, __METHOD__ );
+                       $trxProfiler->setExpectation( 'writes', 0, __METHOD__ );
+               }
+
                // If the user has forceHTTPS set to true, or if the user
                // is in a group requiring HTTPS, or if they have the HTTPS
                // preference set, redirect them to HTTPS.
@@ -571,6 +581,10 @@ class MediaWiki {
         * Ends this task peacefully
         */
        public function restInPeace() {
+               // Ignore things like master queries/connections on GET requests
+               // as long as they are in deferred updates (which catch errors).
+               Profiler::instance()->getTransactionProfiler()->resetExpectations();
+
                // Do any deferred jobs
                DeferredUpdates::doUpdates( 'commit' );
 
index a2de004..f215f5f 100644 (file)
@@ -41,7 +41,7 @@ class Sanitizer {
 
        /**
         * Acceptable tag name charset from HTML5 parsing spec
-        * http://dev.w3.org/html5/spec-preview/tokenization.html#tag-open-state
+        * http://www.w3.org/TR/html5/syntax.html#tag-open-state
         */
        const ELEMENT_BITS_REGEX = '!^(/?)([A-Za-z][^\t\n\v />\0]*+)([^>]*?)(/?>)([^<]*)$!';
 
index 61a0047..cd10258 100644 (file)
@@ -437,7 +437,7 @@ class Status {
         */
        function __get( $name ) {
                if ( $name === 'ok' ) {
-                       return $this->sv->getOK();
+                       return $this->sv->isOK();
                } elseif ( $name === 'errors' ) {
                        return $this->sv->getErrors();
                }
index 7d79680..3cdc53c 100644 (file)
@@ -311,7 +311,8 @@ class ApiQueryLogEvents extends ApiQueryBase {
                                        break;
                                }
                                $vals2 = array();
-                               list( $vals2['duration'], $vals2['flags'] ) = $params;
+                               $vals2['duration'] = $params[0];
+                               $vals2['flags'] = isset( $params[1] ) ? $params[1] : '';
 
                                // Indefinite blocks have no expiry time
                                if ( SpecialBlock::parseExpiryInput( $params[0] ) !== wfGetDB( DB_SLAVE )->getInfinity() ) {
index 4e5c42b..5ac1036 100644 (file)
@@ -69,6 +69,9 @@ class ApiQuerySiteinfo extends ApiQueryBase {
                                case 'usergroups':
                                        $fit = $this->appendUserGroups( $p, $params['numberingroup'] );
                                        break;
+                               case 'libraries':
+                                       $fit = $this->appendInstalledLibraries( $p );
+                                       break;
                                case 'extensions':
                                        $fit = $this->appendExtensions( $p );
                                        break;
@@ -554,6 +557,36 @@ class ApiQuerySiteinfo extends ApiQueryBase {
                return $this->getResult()->addValue( 'query', $property, $data );
        }
 
+       protected function appendInstalledLibraries( $property ) {
+               global $IP;
+               $path = "$IP/composer.lock";
+               if ( !file_exists( $path ) ) {
+                       // Maybe they're using mediawiki/vendor?
+                       $path = "$IP/vendor/composer.lock";
+                       if ( !file_exists( $path ) ) {
+                               return true;
+                       }
+               }
+
+               $data = array();
+               $lock = new ComposerLock( $path );
+               foreach ( $lock->getInstalledDependencies() as $name => $info ) {
+                       if ( strpos( $info['type'], 'mediawiki-' ) === 0 ) {
+                               // Skip any extensions or skins since they'll be listed
+                               // in their proper section
+                               continue;
+                       }
+                       $data[] = array(
+                               'name' => $name,
+                               'version' => $info['version'],
+                       );
+               }
+               $this->getResult()->setIndexedTagName( $data, 'library' );
+
+               return $this->getResult()->addValue( 'query', $property, $data );
+
+       }
+
        protected function appendExtensions( $property ) {
                $data = array();
                foreach ( $this->getConfig()->get( 'ExtensionCredits' ) as $type => $extensions ) {
@@ -810,6 +843,7 @@ class ApiQuerySiteinfo extends ApiQueryBase {
                                        'dbrepllag',
                                        'statistics',
                                        'usergroups',
+                                       'libraries',
                                        'extensions',
                                        'fileextensions',
                                        'rightsinfo',
index b771587..f3e3fcd 100644 (file)
        "apihelp-move-param-watch": "Přidat stránku a přesměrování do sledovaných stránek aktuálního uživatele.",
        "apihelp-move-param-unwatch": "Odstranit stránku a přesměrování ze sledovaných stránek současného uživatele.",
        "apihelp-move-param-ignorewarnings": "Ignorovat všechna varování.",
-       "apihelp-opensearch-param-search": "Hledání řetězce.",
+       "apihelp-opensearch-param-search": "Hledaný řetězec.",
        "apihelp-opensearch-param-limit": "Maximální počet vrácených výsledků",
        "apihelp-opensearch-param-namespace": "Jmenné prostory pro vyhledávání.",
        "apihelp-opensearch-param-format": "Formát výstupu.",
-       "apihelp-opensearch-example-te": "Najít stránky, začínající s <kbd>Te</kbd>.",
+       "apihelp-opensearch-example-te": "Najít stránky začínající na „<kbd>Te</kbd>“.",
        "apihelp-options-example-reset": "Vrátit všechna nastavení.",
        "apihelp-parse-example-page": "Parsovat stránku.",
        "apihelp-patrol-example-revid": "Prověřit revizi.",
index 195b6d0..9658c81 100644 (file)
@@ -6,33 +6,34 @@
                        "Metalhead64",
                        "Inkowik",
                        "Umherirrender",
-                       "Giftpflanze"
+                       "Giftpflanze",
+                       "Macofe"
                ]
        },
-       "apihelp-main-description": "<div class=\"hlist plainlinks api-main-links\">\n* [https://www.mediawiki.org/wiki/API:Main_page/de Dokumentation]\n* [https://www.mediawiki.org/wiki/API:FAQ/de Häufig gestellte Fragen]\n* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-api Mailingliste]\n* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-api-announce API-Ankündigungen]\n* [https://phabricator.wikimedia.org/maniphest/query/GebfyV4uCaLd/#R Fehlerberichte und Anfragen]\n</div>\n<strong>Status:</strong> Alle auf dieser Seite gezeigten Funktionen sollten funktionieren, allerdings ist die API in aktiver Entwicklung und kann sich zu jeder Zeit ändern. Abonniere die [https://lists.wikimedia.org/pipermail/mediawiki-api-announce/ MediaWiki-API-Ankündigungs-Mailingliste], um über Aktualisierungen informiert zu werden.\n\n<strong>Fehlerhafte Anfragen:</strong> Wenn fehlerhafte Anfragen an die API gesendet werden, wird ein HTTP-Header mit dem Schlüssel „MediaWiki-API-Error“ gesendet. Der Wert des Headers und der Fehlercode werden auf den gleichen Wert gesetzt. Für weitere Informationen siehe https://www.mediawiki.org/wiki/API:Errors_and_warnings.",
+       "apihelp-main-description": "<div class=\"hlist plainlinks api-main-links\">\n* [[mw:API:Main_page/de|Dokumentation]]\n* [[mw:API:FAQ/de|Häufig gestellte Fragen]]\n* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-api Mailingliste]\n* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-api-announce API-Ankündigungen]\n* [https://phabricator.wikimedia.org/maniphest/query/GebfyV4uCaLd/#R Fehlerberichte und Anfragen]\n</div>\n<strong>Status:</strong> Alle auf dieser Seite gezeigten Funktionen sollten funktionieren, allerdings ist die API in aktiver Entwicklung und kann sich zu jeder Zeit ändern. Abonniere die [https://lists.wikimedia.org/pipermail/mediawiki-api-announce/ MediaWiki-API-Ankündigungs-Mailingliste], um über Aktualisierungen informiert zu werden.\n\n<strong>Fehlerhafte Anfragen:</strong> Wenn fehlerhafte Anfragen an die API gesendet werden, wird ein HTTP-Header mit dem Schlüssel „MediaWiki-API-Error“ gesendet. Der Wert des Headers und der Fehlercode werden auf den gleichen Wert gesetzt. Für weitere Informationen siehe [[mw:API:Errors_and_warnings|API: Fehler und Warnungen]].",
        "apihelp-main-param-action": "Auszuführende Aktion.",
        "apihelp-main-param-format": "Format der Ausgabe.",
-       "apihelp-main-param-maxlag": "maxlag kann verwendet werden, wenn MediaWiki auf einem datenbankreplizierten Cluster installiert ist. Um weitere Replikationsrückstände zu verhindern, lässt dieser Parameter den Client warten, bis der Replikationsrückstand kleiner als der angegebene Wert (in Sekunden) ist. Bei einem größerem Rückstand wird der Fehlercode „maxlag“ zurückgegeben mit einer Nachricht wie „Waiting for $host: $lag seconds lagged“.<br />Siehe https://www.mediawiki.org/wiki/Manual:Maxlag_parameter für weitere Informationen.",
+       "apihelp-main-param-maxlag": "maxlag kann verwendet werden, wenn MediaWiki auf einem datenbankreplizierten Cluster installiert ist. Um weitere Replikationsrückstände zu verhindern, lässt dieser Parameter den Client warten, bis der Replikationsrückstand kleiner als der angegebene Wert (in Sekunden) ist. Bei einem größerem Rückstand wird der Fehlercode <samp>maxlag</samp> zurückgegeben mit einer Nachricht wie <samp>Waiting for $host: $lag seconds lagged</samp>.<br />Siehe [[mw:Manual:Maxlag_parameter|Handbuch: Maxlag parameter]] für weitere Informationen.",
        "apihelp-main-param-smaxage": "Den <code>s-maxage</code>-Header auf diese Anzahl Sekunden festlegen. Fehler werden niemals gecacht.",
        "apihelp-main-param-maxage": "Den <code>max-age</code>-Header auf diese Anzahl Sekunden festlegen. Fehler werden niemals gecacht.",
-       "apihelp-main-param-assert": "Sicherstellen, dass der Benutzer eingeloggt ist, wenn auf „user“ gesetzt, oder Bot ist, wenn auf „bot“ gesetzt.",
+       "apihelp-main-param-assert": "Sicherstellen, dass der Benutzer eingeloggt ist, wenn auf <kbd>user</kbd> gesetzt, oder Bot ist, wenn auf <kbd>bot</kbd> gesetzt.",
        "apihelp-main-param-requestid": "Der angegebene Wert wird mit in die Antwort aufgenommen und kann zur Unterscheidung von Anfragen verwendet werden.",
        "apihelp-main-param-servedby": "Namen des bearbeitenden Hosts mit zurückgeben.",
        "apihelp-main-param-curtimestamp": "Aktuellen Zeitstempel mit zurückgeben.",
-       "apihelp-main-param-origin": "Beim Zugriff auf die API mittels Cross-Domain-AJAX-Anfrage (CORS) ist dieser Parameter auf die veranlassende Domain zu setzen. Er muss in jedem Pre-Flight-Request angegeben werden und deshalb ein Teil der Anfrage-URI sein (nicht des POST-Bodys). Er muss genau einer der Angaben im Origin:-Header entsprechen, d.&nbsp;h. er muss auf etwas wie http://de.wikipedia.org oder https://meta.wikimedia.org gesetzt werden. Falls dieser Parameter nicht mit dem Origin:-Header übereinstimmt, wird eine 403-Antwort zurückgegeben. Falls dieser Parameter dem Origin:-Header entspricht und die Domain auf der Whitelist ist, wird ein Access-Control-Allow-Origin:-Header gesetzt.",
-       "apihelp-main-param-uselang": "Zu verwendende Sprache für Nachrichtenübersetzungen. Eine Liste der Codes kann von [[Special:ApiHelp/query+siteinfo|action=query&meta=siteinfo]] mit siprop=languages abgerufen werden. Gib „user“ zum Verwenden der aktuellen Benutzerspracheinstellung oder „content“ an, um die Inhaltssprache des Wikis zu verwenden.",
+       "apihelp-main-param-origin": "Beim Zugriff auf die API mittels Cross-Domain-AJAX-Anfrage (CORS) ist dieser Parameter auf die veranlassende Domain zu setzen. Er muss in jedem Pre-Flight-Request angegeben werden und deshalb ein Teil der Anfrage-URI sein (nicht des POST-Bodys). Er muss genau einer der Angaben im <code>Origin</code>-Header entsprechen, d.&nbsp;h. er muss auf etwas wie <kbd>https://de.wikipedia.org</kbd> oder <kbd>https://meta.wikimedia.org</kbd> gesetzt werden. Falls dieser Parameter nicht mit dem <code>Origin</code>-Header übereinstimmt, wird eine 403-Antwort zurückgegeben. Falls dieser Parameter dem <code>Origin</code>-Header entspricht und die Domain auf der Whitelist ist, wird ein <code>Access-Control-Allow-Origin</code>-Header gesetzt.",
+       "apihelp-main-param-uselang": "Zu verwendende Sprache für Nachrichtenübersetzungen. Eine Liste der Codes kann von <kbd>[[Special:ApiHelp/query+siteinfo|action=query&meta=siteinfo]]</kbd> mit <kbd>siprop=languages</kbd> abgerufen werden. Gib <kbd>user</kbd> zum Verwenden der aktuellen Benutzerspracheinstellung oder <kbd>content</kbd> an, um die Inhaltssprache des Wikis zu verwenden.",
        "apihelp-block-description": "Einen Benutzer sperren.",
        "apihelp-block-param-user": "Benutzername, IP-Adresse oder IP-Bereich, der gesperrt werden soll.",
-       "apihelp-block-param-expiry": "Sperrdauer. Kann relativ (z.&nbsp;B. „5 months“ oder „2 weeks“) oder absolut (z.&nbsp;B. „2014-09-18T12:34:56Z“) sein. Wenn auf „infinite“, „indefinite“ oder „never“ gesetzt, ist die Sperre unbegrenzt.",
+       "apihelp-block-param-expiry": "Sperrdauer. Kann relativ (z.&nbsp;B. <kbd>5 months</kbd> oder <kbd>2 weeks</kbd>) oder absolut (z.&nbsp;B. <kbd>2014-09-18T12:34:56Z</kbd>) sein. Wenn auf <kbd>infinite</kbd>, <kbd>indefinite</kbd> oder <kbd>never</kbd> gesetzt, ist die Sperre unbegrenzt.",
        "apihelp-block-param-reason": "Sperrbegründung.",
        "apihelp-block-param-anononly": "Nur anonyme Benutzer sperren (z.&nbsp;B. anonyme Bearbeitungen für diese IP deaktivieren).",
        "apihelp-block-param-nocreate": "Benutzerkontenerstellung verhindern.",
        "apihelp-block-param-autoblock": "Die zuletzt verwendete IP-Adresse automatisch sperren und alle darauffolgenden IP-Adressen, die versuchen sich anzumelden.",
-       "apihelp-block-param-noemail": "Benutzer davon abhalten, E-Mails auf dem Wiki zu versenden (erfordert das blockemail-Recht).",
-       "apihelp-block-param-hidename": "Den Benutzernamen im Sperr-Logbuch verstecken (erfordert das hideuser-Recht).",
+       "apihelp-block-param-noemail": "Benutzer davon abhalten, E-Mails auf dem Wiki zu versenden (erfordert das <code>blockemail</code>-Recht).",
+       "apihelp-block-param-hidename": "Den Benutzernamen im Sperr-Logbuch verstecken (erfordert das <code>hideuser</code>-Recht).",
        "apihelp-block-param-allowusertalk": "Dem Benutzer erlauben, seine eigene Diskussionsseite zu bearbeiten (abhängig von <var>[[mw:Manual:$wgBlockAllowsUTEdit|$wgBlockAllowsUTEdit]]</var>).",
        "apihelp-block-param-reblock": "Falls der Benutzer bereits gesperrt ist, die vorhandene Sperre überschreiben.",
-       "apihelp-block-param-watchuser": "Benutzer- und Benutzerdiskussionsseite beobachten.",
+       "apihelp-block-param-watchuser": "Benutzer- und Diskussionsseiten des Benutzers oder der IP-Adresse beobachten.",
        "apihelp-block-example-ip-simple": "IP 192.0.2.5 für drei Tage mit der Begründung „First strike“ (erste Verwarnung) sperren",
        "apihelp-block-example-user-complex": "Benutzer unbeschränkt sperren mit der Begründung „Vandalism“ (Vandalismus), Erstellung neuer Benutzerkonten sowie Versand von E-Mails verhindern.",
        "apihelp-clearhasmsg-description": "Löschen des <code>hasmsg</code>-Flags („hat Nachrichten“-Flag) für den aktuellen Benutzer.",
        "apihelp-createaccount-param-mailpassword": "Wenn ein Wert angegeben wird, wird ein zufälliges Passwort per E-Mail an den Benutzer versandt.",
        "apihelp-createaccount-param-reason": "Optionale Begründung für die Benutzerkontenerstellung, die in den Logbüchern vermerkt wird.",
        "apihelp-createaccount-param-language": "Festzulegender standardmäßiger Sprachcode für den Benutzer (optional, Standard ist Inhaltssprache).",
-       "apihelp-createaccount-example-pass": "Benutzer „testuser“ mit dem Passwort „test123“ erstellen",
-       "apihelp-createaccount-example-mail": "Benutzer „testmailuser“ erstellen und zufällig generiertes Passwort per E-Mail verschicken",
+       "apihelp-createaccount-example-pass": "Benutzer <kbd>testuser</kbd> mit dem Passwort <kbd>test123</kbd> erstellen.",
+       "apihelp-createaccount-example-mail": "Benutzer <kbd>testmailuser</kbd> erstellen und zufällig generiertes Passwort per E-Mail verschicken.",
        "apihelp-delete-description": "Löschen einer Seite.",
        "apihelp-delete-param-title": "Titel der Seite, die gelöscht werden soll. Kann nicht zusammen mit $1pageid verwendet werden.",
        "apihelp-delete-param-pageid": "Seitennummer der Seite, die gelöscht werden soll. Kann nicht zusammen mit $1title verwendet werden.",
        "apihelp-delete-param-reason": "Löschbegründung. Falls nicht festgelegt, wird eine automatisch generierte Begründung verwendet.",
-       "apihelp-delete-param-watch": "Seite auf die Beobachtungsliste setzen.",
+       "apihelp-delete-param-watch": "Seite auf die Beobachtungsliste des aktuellen Benutzers setzen.",
        "apihelp-delete-param-watchlist": "Seite bedingungslos zur Beobachtungsliste hinzufügen oder von ihr entfernen, Einstellungen verwenden oder Beobachtung nicht ändern.",
        "apihelp-delete-param-unwatch": "Seite von der Beobachtungsliste entfernen.",
        "apihelp-delete-param-oldimage": "Name des alten zu löschenden Bildes, wie von [[Special:ApiHelp/query+imageinfo|action=query&prop=imageinfo&iiprop=archivename]] angegeben.",
-       "apihelp-delete-example-simple": "Hauptseite löschen",
-       "apihelp-delete-example-reason": "Hauptseite löschen mit der Begründung „Preparing for move“ (Vorbereitung für Verschiebung)",
+       "apihelp-delete-example-simple": "<kbd>Hauptseite</kbd> löschen.",
+       "apihelp-delete-example-reason": "<kbd>Hauptseite</kbd> löschen mit der Begründung <kbd>Vorbereitung für Verschiebung</kbd>.",
        "apihelp-disabled-description": "Dieses Modul wurde deaktiviert.",
        "apihelp-edit-description": "Erstellen und Bearbeiten von Seiten.",
        "apihelp-edit-param-title": "Titel der Seite, die du bearbeiten möchtest. Kann nicht zusammen mit $1pageid verwendet werden.",
        "apihelp-edit-param-pageid": "Seitennummer der Seite, die du bearbeiten möchtest. Kann nicht zusammen mit $1title verwendet werden.",
-       "apihelp-edit-param-section": "Abschnittsnummer. 0 für die Einleitung, „new“ für einen neuen Abschnitt.",
+       "apihelp-edit-param-section": "Abschnittsnummer. <kbd>0</kbd> für die Einleitung, <kbd>new</kbd> für einen neuen Abschnitt.",
        "apihelp-edit-param-sectiontitle": "Die Überschrift für einen neuen Abschnitt.",
        "apihelp-edit-param-text": "Seiteninhalt.",
        "apihelp-edit-param-summary": "Bearbeitungszusammenfassung. Auch Abschnittsüberschrift, wenn $1section=new und $1sectiontitle nicht festgelegt ist.",
        "apihelp-emailuser-param-subject": "Betreffzeile.",
        "apihelp-emailuser-param-text": "E-Mail-Inhalt.",
        "apihelp-emailuser-param-ccme": "Eine Kopie dieser E-Mail an mich senden.",
-       "apihelp-emailuser-example-email": "Eine E-Mail an den Benutzer „WikiSysop“ mit dem Text „Inhalt“ senden",
+       "apihelp-emailuser-example-email": "Eine E-Mail an den Benutzer <kbd>WikiSysop</kbd> mit dem Text <kbd>Inhalt</kbd> senden.",
        "apihelp-expandtemplates-description": "Alle Vorlagen im Wikitext expandieren.",
        "apihelp-expandtemplates-param-title": "Titel der Seite.",
        "apihelp-expandtemplates-param-text": "Zu konvertierender Wikitext.",
        "apihelp-expandtemplates-param-includecomments": "Ob HTML-Kommentare in der Ausgabe eingeschlossen werden sollen.",
        "apihelp-expandtemplates-param-generatexml": "XML-Parserbaum erzeugen (ersetzt durch $1prop=parsetree).",
-       "apihelp-expandtemplates-example-simple": "Den Wikitext „<nowiki>{{Project:Spielwiese}}</nowiki>“ expandieren",
+       "apihelp-expandtemplates-example-simple": "Den Wikitext <kbd><nowiki>{{Project:Spielwiese}}</nowiki></kbd> expandieren.",
        "apihelp-feedcontributions-description": "Gibt einen Benutzerbeiträge-Feed zurück.",
        "apihelp-feedcontributions-param-feedformat": "Das Format des Feeds.",
        "apihelp-feedcontributions-param-user": "Von welchen Benutzern die Beiträge abgerufen werden sollen.",
        "apihelp-feedcontributions-param-toponly": "Nur aktuelle Versionen anzeigen.",
        "apihelp-feedcontributions-param-newonly": "Nur Seitenerstellungen anzeigen.",
        "apihelp-feedcontributions-param-showsizediff": "Zeigt den Größenunterschied zwischen Versionen an.",
-       "apihelp-feedcontributions-example-simple": "Beiträge für [[Benutzer:Beispiel]] zurückgeben",
+       "apihelp-feedcontributions-example-simple": "Beiträge für die Benutzer <kbd>Beispiel<kbd> zurückgeben",
        "apihelp-feedrecentchanges-description": "Gibt einen Letzte-Änderungen-Feed zurück.",
        "apihelp-feedrecentchanges-param-feedformat": "Das Format des Feeds.",
        "apihelp-feedrecentchanges-param-namespace": "Namensraum, auf den die Ergebnisse beschränkt werden sollen.",
        "apihelp-feedrecentchanges-param-hideanons": "Änderungen von anonymen Benutzern ausblenden.",
        "apihelp-feedrecentchanges-param-hideliu": "Änderungen von registrierten Benutzern ausblenden.",
        "apihelp-feedrecentchanges-param-hidepatrolled": "Kontrollierte Änderungen ausblenden.",
-       "apihelp-feedrecentchanges-param-hidemyself": "Eigene Änderungen ausblenden.",
+       "apihelp-feedrecentchanges-param-hidemyself": "Änderungen des aktuellen Benutzers ausblenden.",
        "apihelp-feedrecentchanges-param-tagfilter": "Nach Markierung filtern.",
        "apihelp-feedrecentchanges-param-target": "Nur Änderungen an Seiten anzeigen, die von dieser Seite verlinkt sind.",
        "apihelp-feedrecentchanges-param-showlinkedto": "Zeige Änderungen an Seiten die von der ausgewählten Seite verlinkt sind.",
        "apihelp-filerevert-param-archivename": "Archivname der Version, auf die die Datei zurückgesetzt werden soll.",
        "apihelp-filerevert-example-revert": "<kbd>Wiki.png</kbd> auf die Version vom <kbd>2011-03-05T15:27:40Z</kbd> zurücksetzen",
        "apihelp-help-description": "Hilfe für die angegebenen Module anzeigen.",
-       "apihelp-help-param-modules": "Module, zu denen eine Hilfe angezeigt werden soll (Werte der Parameter action= und format= oder „main“). Kann Submodule mit einem „+“ angeben.",
+       "apihelp-help-param-modules": "Module, zu denen eine Hilfe angezeigt werden soll (Werte der Parameter <var>action</var> und <var>format</var> oder <kbd>main</kbd>). Kann Submodule mit einem <kbd>+</kbd> angeben.",
        "apihelp-help-param-submodules": "Hilfe für Submodule des benannten Moduls einschließen.",
        "apihelp-help-param-recursivesubmodules": "Hilfe für Submodule rekursiv einschließen.",
        "apihelp-help-param-helpformat": "Format der Hilfe-Ausgabe.",
        "apihelp-help-example-query": "Hilfe für zwei Abfrage-Submodule",
        "apihelp-imagerotate-description": "Ein oder mehrere Bilder drehen.",
        "apihelp-imagerotate-param-rotation": "Anzahl der Grad, um die das Bild im Uhrzeigersinn gedreht werden soll.",
-       "apihelp-imagerotate-example-simple": "[[:Datei:Example.png]] um 90 Grad drehen",
-       "apihelp-imagerotate-example-generator": "Alle Bilder in der [[:Kategorie:Flip]] um 180 Grad drehen",
+       "apihelp-imagerotate-example-simple": "<kbd>Datei:Beispiel.png</kbd> um <kbd>90</kbd> Grad drehen.",
+       "apihelp-imagerotate-example-generator": "Alle Bilder in der <kbd>Kategorie:Flip</kbd> um <kbd>180</kbd> Grad drehen.",
        "apihelp-import-param-summary": "Import-Zusammenfassung.",
        "apihelp-import-param-xml": "Hochgeladene XML-Datei.",
        "apihelp-import-param-interwikisource": "Für Interwiki-Importe: Wiki, von dem importiert werden soll.",
        "apihelp-move-param-movesubpages": "Unterseiten verschieben, falls zutreffend.",
        "apihelp-move-param-noredirect": "Keine Weiterleitung erstellen.",
        "apihelp-move-param-ignorewarnings": "Alle Warnungen ignorieren.",
-       "apihelp-move-example-move": "„Schlechter Titel“ nach „Guter Titel“ verschieben, ohne eine Weiterleitung zu erstellen",
+       "apihelp-move-example-move": "<kbd>Schlechter Titel</kbd> nach <kbd>Guter Titel</kbd> verschieben, ohne eine Weiterleitung zu erstellen.",
        "apihelp-opensearch-description": "Das Wiki mithilfe des OpenSearch-Protokolls durchsuchen.",
        "apihelp-opensearch-param-search": "Such-Zeichenfolge.",
        "apihelp-opensearch-param-limit": "Maximale Anzahl zurückzugebender Ergebnisse.",
        "apihelp-opensearch-param-namespace": "Zu durchsuchende Namensräume.",
-       "apihelp-opensearch-param-suggest": "Nichts unternehmen, falls [https://www.mediawiki.org/wiki/Manual:$wgEnableOpenSearchSuggest $wgEnableOpenSearchSuggest] falsch ist.",
+       "apihelp-opensearch-param-suggest": "Nichts unternehmen, falls <var>[[mw:Manual:$wgEnableOpenSearchSuggest|$wgEnableOpenSearchSuggest]]</var> falsch ist.",
        "apihelp-opensearch-param-format": "Das Format der Ausgabe.",
-       "apihelp-opensearch-example-te": "Seiten finden, die mit „Te“ beginnen",
+       "apihelp-opensearch-example-te": "Seiten finden, die mit <kbd>Te</kbd> beginnen.",
        "apihelp-options-param-reset": "Setzt die Einstellungen auf Websitestandards zurück.",
        "apihelp-options-example-reset": "Alle Einstellungen zurücksetzen",
-       "apihelp-options-example-change": "Ändert die Einstellungen „skin“ und „hideminor“",
-       "apihelp-options-example-complex": "Setzt alle Einstellungen zurück, dann „skin“ und „nickname“ festlegen",
+       "apihelp-options-example-change": "Ändert die Einstellungen <kbd>skin</kbd> und <kbd>hideminor</kbd>.",
+       "apihelp-options-example-complex": "Setzt alle Einstellungen zurück, dann <kbd>skin</kbd> und <kbd>nickname</kbd> festlegen.",
        "apihelp-paraminfo-description": "Ruft Informationen über API-Module ab.",
        "apihelp-paraminfo-param-helpformat": "Format der Hilfe-Zeichenfolgen.",
        "apihelp-parse-param-preview": "Im Vorschaumodus parsen.",
        "apihelp-protect-description": "Ändert den Schutzstatus einer Seite.",
        "apihelp-protect-param-title": "Titel der Seite, die du (ent-)sperren möchtest. Kann nicht zusammen mit $1pageid verwendet werden.",
        "apihelp-protect-param-pageid": "Seitenkennung der Seite, die du (ent-)sperren möchtest. Kann nicht zusammen mit $1title verwendet werden.",
-       "apihelp-protect-param-protections": "Liste der Schutzebenen nach dem Format Aktion=Ebene (z.B. edit=sysop).\n\n'''HINWEIS:''' Wenn eine Aktion nicht angegeben wird, wird deren Schutz entfernt.",
-       "apihelp-protect-param-expiry": "Zeitstempel des Schutzablaufs. Wenn nur ein Zeitstempel übergeben wird, ist dieser für alle Seitenschutze gültig. Um eine unendliche Schutzdauer festzulegen, kannst du die Werte „infinite“, „indefinite“, „infinity“ oder „never“ übergeben.",
+       "apihelp-protect-param-protections": "Liste der Schutzebenen nach dem Format <kbd>Aktion=Ebene</kbd> (z.B. <kbd>edit=sysop</kbd>).\n\n<strong>HINWEIS:</strong> Wenn eine Aktion nicht angegeben wird, wird deren Schutz entfernt.",
+       "apihelp-protect-param-expiry": "Zeitstempel des Schutzablaufs. Wenn nur ein Zeitstempel übergeben wird, ist dieser für alle Seitenschutze gültig. Um eine unendliche Schutzdauer festzulegen, kannst du die Werte <kbd>infinite</kbd>, <kbd>indefinite</kbd>, <kbd>infinity</kbd> oder <kbd>never</kbd> übergeben.",
        "apihelp-protect-param-reason": "Grund für den Seitenschutz oder dessen Aufhebung.",
        "apihelp-protect-param-cascade": "Aktiviert den Kaskadenschutz (alle eingebundenen Seiten werden ebenfalls geschützt). Wenn die übergebenen Schutzebenen keinen Kaskadenschutz unterstützen, wird dieser Parameter ignoriert.",
        "apihelp-protect-param-watch": "Wenn vorhanden, fügt dieser Parameter die zu (ent-)sperrende Seite der Beobachtungsliste hinzu.",
        "apihelp-protect-param-watchlist": "Die Seite bedingungslos zu deiner Beobachtungsliste hinzufügen oder von ihr entfernen, Einstellungen verwenden oder Beobachtung nicht ändern.",
        "apihelp-protect-example-protect": "Schützt eine Seite",
-       "apihelp-protect-example-unprotect": "Eine Seite entsperren, indem die Einschränkungen durch den Schutz auf „all“ gestellt werden.",
+       "apihelp-protect-example-unprotect": "Eine Seite entsperren, indem die Einschränkungen durch den Schutz auf <kbd>all</kbd> gestellt werden.",
        "apihelp-protect-example-unprotect2": "Eine Seite entsperren, indem keine Einschränkungen übergeben werden",
        "apihelp-purge-param-forcelinkupdate": "Aktualisiert die Linktabellen.",
        "apihelp-query-param-list": "Welche Listen abgerufen werden sollen.",
        "apihelp-query+allcategories-description": "Alle Kategorien aufzählen.",
        "apihelp-query+allcategories-param-limit": "Wie viele Kategorien zurückgegeben werden sollen.",
-       "apihelp-query+alldeletedrevisions-paraminfo-useronly": "Darf nur mit $3user verwendet werden.",
+       "apihelp-query+alldeletedrevisions-paraminfo-useronly": "Darf nur mit <var>$3user</var> verwendet werden.",
        "apihelp-query+alldeletedrevisions-param-user": "Nur Versionen von diesem Benutzer auflisten.",
        "apihelp-query+alldeletedrevisions-param-namespace": "Nur Seiten in diesem Namensraum auflisten.",
        "apihelp-query+allfileusages-param-limit": "Wie viele Gesamtobjekte zurückgegeben werden sollen.",
        "apihelp-query+alltransclusions-param-namespace": "Der aufzulistende Namensraum.",
        "apihelp-query+alltransclusions-example-unique": "Einheitlich eingebundene Titel auflisten",
        "apihelp-query+allusers-param-limit": "Wie viele Benutzernamen insgesamt zurückgegeben werden sollen.",
-       "apihelp-query+allusers-example-Y": "Benutzer ab Y auflisten",
+       "apihelp-query+allusers-example-Y": "Benutzer ab <kbd>Y</kbd> auflisten.",
        "apihelp-query+backlinks-description": "Alle Seiten finden, die auf die angegebene Seite verlinken.",
-       "apihelp-query+backlinks-example-simple": "Links auf [[Hauptseite]] anzeigen",
+       "apihelp-query+backlinks-example-simple": "Links auf <kbd>Hauptseite</kbd> anzeigen.",
        "apihelp-query+blocks-example-simple": "Sperren auflisten",
        "apihelp-query+categorymembers-param-startsortkey": "Stattdessen $1starthexsortkey verwenden.",
        "apihelp-query+categorymembers-param-endsortkey": "Stattdessen $1endhexsortkey verwenden.",
        "apihelp-query+info-description": "Ruft Basisinformationen über die Seite ab.",
        "apihelp-query+iwbacklinks-param-prefix": "Präfix für das Interwiki.",
        "apihelp-query+langbacklinks-param-limit": "Wie viele Gesamtseiten zurückgegeben werden sollen.",
-       "apihelp-query+links-example-simple": "Links von der [[Hauptseite]] abrufen",
+       "apihelp-query+links-example-simple": "Links von der <kbd>Hauptseite</kbd> abrufen",
        "apihelp-query+linkshere-description": "Alle Seiten finden, die auf die angegebenen Seiten verlinken.",
        "apihelp-query+logevents-description": "Ereignisse von den Logbüchern abrufen.",
        "apihelp-query+prefixsearch-param-search": "Such-Zeichenfolge.",
-       "apihelp-query+search-example-simple": "Nach „meaning“ suchen",
-       "apihelp-query+search-example-text": "Texte nach „meaning“ durchsuchen",
+       "apihelp-query+search-example-simple": "Nach <kbd>meaning</kbd> suchen.",
+       "apihelp-query+search-example-text": "Texte nach <kbd>meaning</kbd> durchsuchen.",
        "apihelp-query+siteinfo-example-simple": "Websiteinformationen abrufen",
        "apihelp-query+tags-description": "Änderungs-Tags auflisten.",
        "apihelp-query+tags-example-simple": "Verfügbare Tags auflisten",
        "apihelp-setnotificationtimestamp-param-entirewatchlist": "An allen beobachteten Seiten arbeiten.",
        "apihelp-unblock-description": "Einen Benutzer freigeben.",
        "apihelp-unblock-param-reason": "Grund für die Freigabe.",
-       "apihelp-unblock-example-id": "Sperrkennung #105 freigeben",
+       "apihelp-unblock-example-id": "Sperrkennung #<kbd>105</kbd> freigeben.",
        "apihelp-undelete-param-reason": "Grund für die Wiederherstellung.",
        "apihelp-upload-param-filename": "Ziel-Dateiname.",
        "apihelp-upload-param-watch": "Die Seite beobachten.",
        "apihelp-upload-example-url": "Von einer URL hochladen",
        "apihelp-userrights-param-user": "Benutzername.",
        "apihelp-userrights-param-userid": "Benutzerkennung.",
-       "apihelp-watch-example-watch": "Die Seite „Hauptseite“ beobachten",
+       "apihelp-watch-example-watch": "Die Seite <kbd>Hauptseite</kbd> beobachten.",
        "apihelp-format-example-generic": "Das Abfrageergebnis im $1-Format formatieren",
-       "apihelp-dbg-description": "Daten im PHP-var_export()-Format ausgeben.",
-       "apihelp-dbgfm-description": "Daten im PHP-var_export()-Format ausgeben (schöngedruckt in HTML).",
-       "apihelp-dump-description": "Daten im PHP-var_dump()-Format ausgeben.",
-       "apihelp-dumpfm-description": "Daten im PHP-var_dump()-Format ausgeben (schöngedruckt in HTML).",
+       "apihelp-dbg-description": "Daten im PHP-<code>var_export()</code>-Format ausgeben.",
+       "apihelp-dbgfm-description": "Daten im PHP-<code>var_export()</code>-Format ausgeben (schöngedruckt in HTML).",
+       "apihelp-dump-description": "Daten im PHP-<code>var_dump()</code>-Format ausgeben.",
+       "apihelp-dumpfm-description": "Daten im PHP-<code>var_dump()</code>-Format ausgeben (schöngedruckt in HTML).",
        "apihelp-json-description": "Daten im JSON-Format ausgeben.",
        "apihelp-json-param-callback": "Falls angegeben, wird die Ausgabe in einen angegebenen Funktionsaufruf eingeschlossen. Aus Sicherheitsgründen sind benutzerspezifische Daten beschränkt.",
        "apihelp-json-param-utf8": "Falls angegeben, kodiert die meisten (aber nicht alle) Nicht-ASCII-Zeichen als UTF-8 anstatt sie mit hexadezimalen Escape-Sequenzen zu ersetzen.",
        "apihelp-php-description": "Daten im serialisierten PHP-Format ausgeben.",
        "apihelp-phpfm-description": "Daten im serialisierten PHP-Format ausgeben (schöngedruckt in HTML).",
        "apihelp-rawfm-description": "Daten mit den Fehlerbehebungselementen im JSON-Format ausgeben (schöngedruckt in HTML).",
-       "apihelp-txt-description": "Daten im PHP-print_r()-Format ausgeben.",
-       "apihelp-txtfm-description": "Daten im PHP-print_r()-Format ausgeben (schöngedruckt in HTML).",
+       "apihelp-txt-description": "Daten im PHP-<code>print_r()</code>-Format ausgeben.",
+       "apihelp-txtfm-description": "Daten im PHP-<code>print_r()</code>-Format ausgeben (schöngedruckt in HTML).",
        "apihelp-wddx-description": "Daten im WDDX-Format ausgeben.",
        "apihelp-wddxfm-description": "Daten im WDDX-Format ausgeben (schöngedruckt in HTML).",
        "apihelp-xml-description": "Daten im XML-Format ausgeben.",
        "api-help-parameters": "{{PLURAL:$1|Parameter}}:",
        "api-help-param-deprecated": "Veraltet.",
        "api-help-param-required": "Dieser Parameter ist erforderlich.",
-       "api-help-param-list": "{{PLURAL:$1|1=Ein Wert|2=Werte (mit „{{!}}“ trennen)}}: $2",
+       "api-help-param-list": "{{PLURAL:$1|1=Ein Wert|2=Werte (mit <kbd>{{!}}</kbd> trennen)}}: $2",
        "api-help-param-list-can-be-empty": "{{PLURAL:$1|0=Muss leer sein|Kann leer sein oder $2}}",
        "api-help-param-limit": "Nicht mehr als $1 erlaubt.",
        "api-help-param-limit2": "Nicht mehr als $1 ($2 für Bots) erlaubt.",
        "api-help-param-integer-max": "{{PLURAL:$1|1=Der Wert darf|2=Die Werte dürfen}} nicht größer sein als $3.",
        "api-help-param-integer-minmax": "{{PLURAL:$1|1=Der Wert muss|2=Die Werte müssen}} zwischen $2 und $3 sein.",
        "api-help-param-upload": "Muss als Dateiupload mithilfe eines multipart/form-data-Formular bereitgestellt werden.",
-       "api-help-param-multi-separate": "Werte mit „|“ trennen.",
+       "api-help-param-multi-separate": "Werte mit <kbd>|</kbd> trennen.",
        "api-help-param-multi-max": "Maximale Anzahl der Werte ist {{PLURAL:$1|$1}} ({{PLURAL:$2|$2}} für Bots).",
        "api-help-param-default": "Standard: $1",
        "api-help-param-default-empty": "Standard: <span class=\"apihelp-empty\">(leer)</span>",
index 0e766bf..6779571 100644 (file)
        "apihelp-query+search-example-generator": "Ger page info about the pages returned for a search for <kbd>meaning</kbd>.",
 
        "apihelp-query+siteinfo-description": "Return general information about the site.",
-       "apihelp-query+siteinfo-param-prop": "Which information to get:\n;general:Overall system information.\n;namespaces:List of registered namespaces and their canonical names.\n;namespacealiases:List of registered namespace aliases.\n;specialpagealiases:List of special page aliases.\n;magicwords:List of magic words and their aliases.\n;statistics:Returns site statistics.\n;interwikimap:Returns interwiki map (optionally filtered, optionally localised by using <var>$1inlanguagecode</var>).\n;dbrepllag:Returns database server with the highest replication lag.\n;usergroups:Returns user groups and the associated permissions.\n;extensions:Returns extensions installed on the wiki.\n;fileextensions:Returns list of file extensions allowed to be uploaded.\n;rightsinfo:Returns wiki rights (license) information if available.\n;restrictions:Returns information on available restriction (protection) types.\n;languages:Returns a list of languages MediaWiki supports (optionally localised by using <var>$1inlanguagecode</var>).\n;skins:Returns a list of all enabled skins (optionally localised by using <var>$1inlanguagecode</var>, otherwise in the content language).\n;extensiontags:Returns a list of parser extension tags.\n;functionhooks:Returns a list of parser function hooks.\n;showhooks:Returns a list of all subscribed hooks (contents of <var>[[mw:Manual:$wgHooks|$wgHooks]]</var>).\n;variables:Returns a list of variable IDs.\n;protocols:Returns a list of protocols that are allowed in external links.\n;defaultoptions:Returns the default values for user preferences.",
+       "apihelp-query+siteinfo-param-prop": "Which information to get:\n;general:Overall system information.\n;namespaces:List of registered namespaces and their canonical names.\n;namespacealiases:List of registered namespace aliases.\n;specialpagealiases:List of special page aliases.\n;magicwords:List of magic words and their aliases.\n;statistics:Returns site statistics.\n;interwikimap:Returns interwiki map (optionally filtered, optionally localised by using <var>$1inlanguagecode</var>).\n;dbrepllag:Returns database server with the highest replication lag.\n;usergroups:Returns user groups and the associated permissions.\n;libraries:Returns libraries installed on the wiki.\n;extensions:Returns extensions installed on the wiki.\n;fileextensions:Returns list of file extensions allowed to be uploaded.\n;rightsinfo:Returns wiki rights (license) information if available.\n;restrictions:Returns information on available restriction (protection) types.\n;languages:Returns a list of languages MediaWiki supports (optionally localised by using <var>$1inlanguagecode</var>).\n;skins:Returns a list of all enabled skins (optionally localised by using <var>$1inlanguagecode</var>, otherwise in the content language).\n;extensiontags:Returns a list of parser extension tags.\n;functionhooks:Returns a list of parser function hooks.\n;showhooks:Returns a list of all subscribed hooks (contents of <var>[[mw:Manual:$wgHooks|$wgHooks]]</var>).\n;variables:Returns a list of variable IDs.\n;protocols:Returns a list of protocols that are allowed in external links.\n;defaultoptions:Returns the default values for user preferences.",
        "apihelp-query+siteinfo-param-filteriw": "Return only local or only nonlocal entries of the interwiki map.",
        "apihelp-query+siteinfo-param-showalldb": "List all database servers, not just the one lagging the most.",
        "apihelp-query+siteinfo-param-numberingroup": "Lists the number of users in user groups.",
index 5c3cc6e..1b17871 100644 (file)
        "apihelp-patrol-example-revid": "Patrullar una revisión",
        "apihelp-protect-param-reason": "Motivo de la (des)protección.",
        "apihelp-protect-example-protect": "Proteger una página",
+       "apihelp-query+alldeletedrevisions-paraminfo-nonuseronly": "No puede ser utilizado con <var>$3user</var>.",
        "apihelp-query+allimages-param-sha1": "Suma SHA1 de la imagen. Invalida $1sha1base36.",
        "apihelp-query+allimages-param-sha1base36": "Suma SHA1 de la imagen en base 36 (usada en MediaWiki).",
        "apihelp-query+alllinks-example-unique-generator": "Obtiene todos los títulos enlazados, marcando los que falten.",
        "apihelp-query+backlinks-example-simple": "Mostrar enlaces a la <kbd>Portada<kbd>.",
        "apihelp-query+blocks-example-simple": "Listar bloques.",
        "apihelp-query+categoryinfo-example-simple": "Obtener información acerca de <kbd>Category:Foo</kbd> y <kbd>Category:Bar</kbd>",
+       "apihelp-query+categorymembers-example-generator": "Obtener información sobre las primeras 10 páginas de la <kbd>Categoría:Física</kbd>",
        "apihelp-query+deletedrevs-example-mode3-talk": "Listar las primeras 50 páginas en el espacio de nombres {{ns:talk}} (modo 3).",
        "apihelp-query+duplicatefiles-example-simple": "Buscar duplicados de [[:File:Alber Einstein Head.jpg]].",
        "apihelp-query+duplicatefiles-example-generated": "Buscar duplicados en todos los ficheros.",
        "apihelp-query+images-description": "Devuelve todos los archivos contenidos en las páginas dadas.",
        "apihelp-query+images-example-simple": "Obtener una lista de los archivos usados en la [[Main Page|Portada]].",
        "apihelp-query+imageusage-example-simple": "Mostrar las páginas que usan [[:File:Albert Einstein Head.jpg]].",
+       "apihelp-query+imageusage-example-generator": "Obtener información sobre las páginas que empleen [[:File:Albert Einstein Head.jpg]].",
        "apihelp-query+info-example-protection": "Obtén información general y protección acerca de la página <kb>Página principal</kbd>.",
        "apihelp-query+iwbacklinks-example-simple": "Obtener las páginas enlazadas a [[wikibooks:Test]]",
        "apihelp-query+langbacklinks-example-simple": "Obtener las páginas enlazadas a [[:fr:Test]]",
        "apihelp-query+search-example-text": "Buscar <kbd>meaning</kbd> en los textos.",
        "apihelp-query+siteinfo-example-simple": "Obtener información del sitio.",
        "apihelp-query+usercontribs-example-user": "Mostrar contribuciones del usuario <kbd>Ejemplo</kbd>.",
+       "apihelp-query+usercontribs-example-ipprefix": "Mostrar las contribuciones de todas las direcciones IP con el prefijo <kbd>192.0.2.</kbd>.",
        "apihelp-query+userinfo-description": "Obtener información sobre el usuario actual.",
        "apihelp-query+watchlist-param-excludeuser": "No listar cambios de este usuario.",
        "apihelp-query+watchlistraw-param-show": "Sólo listar los elementos que cumplen estos criterios.",
+       "apihelp-query+watchlistraw-example-simple": "Listar las páginas de la lista de seguimiento del usuario actual.",
        "apihelp-unblock-example-user": "Desbloquear al usuario <kbd>Bob</kbd> con el motivo <kbd>Lo siento, Bob</kbd>",
+       "apihelp-undelete-example-revisions": "Restaurar dos revisiones de la página <kbd>Portada</kbd>.",
        "apihelp-upload-example-url": "Subir desde una URL.",
+       "apihelp-userrights-example-user": "Agregar al usuario <kbd>FooBot</kbd> al grupo <kbd>bot</kbd> y eliminarlo de los grupos <kbd>sysop</kbd> y <kbd>burócrata</kbd>.",
+       "apihelp-watch-example-watch": "Vigilar la página <kbd>Portada</kbd>.",
        "apihelp-watch-example-unwatch": "Dejar de vigilar la <kbd>Portada</kbd>.",
        "api-help-parameters": "{{PLURAL:$1|Parámetro|Parámetros}}:",
+       "api-help-param-multi-separate": "Separar los valores con <kbd>|</kbd>.",
        "api-help-examples": "{{PLURAL:$1|Ejemplo|Ejemplos}}:"
 }
index d6d6306..6f7ccf3 100644 (file)
@@ -5,35 +5,37 @@
                        "Windes",
                        "Orlodrim",
                        "McDutchie",
-                       "Element303"
+                       "Element303",
+                       "Macofe",
+                       "Linedwell"
                ]
        },
-       "apihelp-main-description": "<div class=\"hlist plainlinks api-main-links\">\n* [https://www.mediawiki.org/wiki/API:Main_page Documentation]\n* [https://www.mediawiki.org/wiki/API:FAQ FAQ]\n* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-api Liste de diffusion]\n* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-api-announce Annonces de l’API]\n* [https://phabricator.wikimedia.org/maniphest/query/GebfyV4uCaLd/#R Bogues et demandes]\n</div>\n<strong>État :</strong> Toutes les fonctionnalités affichées sur cette page devraient fonctionner, mais l’API est encore en cours de développement et peut changer à tout moment. Inscrivez-vous à [https://lists.wikimedia.org/pipermail/mediawiki-api-announce/ la liste de diffusion mediawiki-api-announce] pour être informé des mises à jour.\n\n<strong>Requêtes erronées :</strong> Si des requêtes erronées sont envoyées à l’API, un en-tête HTTP sera renvoyé avec la clé « MediaWiki-API-Error ». La valeur de cet en-tête et le code d’erreur renvoyé prendront la même valeur. Pour plus d’information, voyez https://www.mediawiki.org/wiki/API:Errors_and_warnings.",
+       "apihelp-main-description": "<div class=\"hlist plainlinks api-main-links\">\n* [[mw:API:Main_page|Documentation]]\n* [[mw:API:FAQ|FAQ]]\n* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-api Liste de diffusion]\n* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-api-announce Annonces de l’API]\n* [https://phabricator.wikimedia.org/maniphest/query/GebfyV4uCaLd/#R Bogues et demandes]\n</div>\n<strong>État :</strong> Toutes les fonctionnalités affichées sur cette page devraient fonctionner, mais l’API est encore en cours de développement et peut changer à tout moment. Inscrivez-vous à [https://lists.wikimedia.org/pipermail/mediawiki-api-announce/ la liste de diffusion mediawiki-api-announce] pour être informé des mises à jour.\n\n<strong>Requêtes erronées :</strong> Si des requêtes erronées sont envoyées à l’API, un en-tête HTTP sera renvoyé avec la clé « MediaWiki-API-Error ». La valeur de cet en-tête et le code d’erreur renvoyé prendront la même valeur. Pour plus d’information, voyez [[mw:API:Errors_and_warnings|API: Errors and warnings]].",
        "apihelp-main-param-action": "Quelle action effectuer.",
        "apihelp-main-param-format": "Le format de sortie.",
-       "apihelp-main-param-maxlag": "La latence maximale peut être utilisée quand MédiaWiki est installé sur un cluster de base de données répliqué. Pour éviter des actions provoquant un supplément de latence de réplication de site, ce paramètre peut faire attendre le client jusqu’à ce que la latence de réplication soit inférieure à une valeur spécifiée. En cas de latence excessive, le code d’erreur « maxlag » est renvoyé avec un message tel que « Attente de $host : $lag secondes de délai ».<br />Voyez https://www.mediawiki.org/wiki/Manual:Maxlag_parameter pour plus d’information.",
+       "apihelp-main-param-maxlag": "La latence maximale peut être utilisée quand MédiaWiki est installé sur un cluster de base de données répliqué. Pour éviter des actions provoquant un supplément de latence de réplication de site, ce paramètre peut faire attendre le client jusqu’à ce que la latence de réplication soit inférieure à une valeur spécifiée. En cas de latence excessive, le code d’erreur <samp>maxlag</samp> est renvoyé avec un message tel que <samp>Attente de $host : $lag secondes de délai</samp>.<br />Voyez [[mw:Manual:Maxlag_parameter|Manuel: Maxlag parameter]] pour plus d’information.",
        "apihelp-main-param-smaxage": "Fixer l’entête <code>s-maxage</code> à ce nombre de secondes. Les erreurs ne sont jamais mises en cache.",
        "apihelp-main-param-maxage": "Fixer l’entête <code>max-age</code> à ce nombre de secondes. Les erreurs ne sont jamais mises en cache.",
-       "apihelp-main-param-assert": "Vérifier si l’utilisateur est connecté si positionné à « user », ou a le droit utilisateur robot si positionné à « bot ».",
+       "apihelp-main-param-assert": "Vérifier si l’utilisateur est connecté si positionné à <kbd>user</kbd>, ou a le droit utilisateur robot si positionné à <kbd>bot</kbd>.",
        "apihelp-main-param-requestid": "Toute valeur fournie ici sera incluse dans la réponse. Peut être utilisé pour distinguer des demandes.",
        "apihelp-main-param-servedby": "Inclure le nom d’hôte qui a renvoyé la requête dans les résultats.",
        "apihelp-main-param-curtimestamp": "Inclure l’horodatage actuel dans le résultat.",
-       "apihelp-main-param-origin": "En accédant à l’API en utilisant une requête AJAX inter-domaines (CORS), mettre le domaine d’origine dans ce paramètre. Il doit être inclus dans toute requête de pre-flight, et doit donc faire partie de l’URI de la requête (pas du corps du POST). Il doit correspondre exactement à une des origines dans l’entête Origin: header, donc il doit être fixé avec quelque chose comme http://en.wikipedia.org or https://meta.wikimedia.org. Si ce paramètre ne correspond pas à l’entête Origin:, une réponse 403 sera renvoyée. Si ce paramètre correspond à l’entête Origin: et que l’origine est en liste blanche, un entête Access-Control-Allow-Origin sera positionné.",
-       "apihelp-main-param-uselang": "Langue à utiliser pour les traductions de message. Une liste de codes peut être analysée depuis [[Special:ApiHelp/query+siteinfo|action=query&meta=siteinfo]] avec siprop=languages, ou en spécifiant « user » pour utiliser la préférence de langue de l’utilisateur actuel, ou en spécifiant « content » pour utiliser le langage du contenu de ce wiki.",
+       "apihelp-main-param-origin": "En accédant à l’API en utilisant une requête AJAX inter-domaines (CORS), mettre le domaine d’origine dans ce paramètre. Il doit être inclus dans toute requête de pre-flight, et doit donc faire partie de l’URI de la requête (pas du corps du POST). Il doit correspondre exactement à une des origines dans l’entête <code>Origin</code> header, donc il doit être fixé avec quelque chose comme <kbd>https://en.wikipedia.org</kbd> ou <kbd>https://meta.wikimedia.org</kbd>. Si ce paramètre ne correspond pas à l’entête <code>Origin</code>, une réponse 403 sera renvoyée. Si ce paramètre correspond à l’entête <code>Origin</code> et que l’origine est en liste blanche, un entête <code>Access-Control-Allow-Origin</code> sera positionné.",
+       "apihelp-main-param-uselang": "Langue à utiliser pour les traductions de message. Une liste de codes peut être analysée depuis <kbd>[[Special:ApiHelp/query+siteinfo|action=query&meta=siteinfo]]</kbd> avec <kbd>siprop=languages</kbd>, ou en spécifiant <kbd>user</kbd> pour utiliser la préférence de langue de l’utilisateur actuel, ou en spécifiant <kbd>content</kbd> pour utiliser le langage du contenu de ce wiki.",
        "apihelp-block-description": "Bloquer un utilisateur.",
        "apihelp-block-param-user": "Nom d’utilisateur, adresse IP ou plage d’adresses IP que vous voulez bloquer.",
-       "apihelp-block-param-expiry": "Durée d’expiration. Peut être relative (par ex. « 5 mois » ou « 2 semaines ») ou absolue (par ex. « 2014-09-18T12:34:56Z »). Si elle est mise à « infinite », « indefinite » ou « never », le blocage n’expirera jamais.",
+       "apihelp-block-param-expiry": "Durée d’expiration. Peut être relative (par ex. <kbd>5 months</kbd> ou <kbd>2 weeks</kbd>) ou absolue (par ex. <kbd>2014-09-18T12:34:56Z</kbd>). Si elle est mise à <kbd>infinite</kbd>, <kbd>indefinite</kbd> ou <kbd>never</kbd>, le blocage n’expirera jamais.",
        "apihelp-block-param-reason": "Motif du blocage.",
        "apihelp-block-param-anononly": "Bloquer uniquement les utilisateurs anonymes (c’est-à-dire désactiver les modifications anonymes pour cette adresse IP).",
        "apihelp-block-param-nocreate": "Empêcher la création de compte.",
        "apihelp-block-param-autoblock": "Bloquer automatiquement la dernière adresse IP utilisée, et toute les adresses IP subséquentes depuis lesquelles ils ont essayé de se connecter.",
-       "apihelp-block-param-noemail": "Empêcher l’utilisateur d’envoyer des courriels via le wiki (nécessite le doit « blockemail »).",
-       "apihelp-block-param-hidename": "Masque le nom de l’utilisateur dans le journal des blocages (nécessite le droit « hideuser »).",
+       "apihelp-block-param-noemail": "Empêcher l’utilisateur d’envoyer des courriels via le wiki (nécessite le doit <code>blockemail</code>).",
+       "apihelp-block-param-hidename": "Masque le nom de l’utilisateur dans le journal des blocages (nécessite le droit <code>hideuser</code>).",
        "apihelp-block-param-allowusertalk": "Autoriser les utilisateurs à modifier leur propre page de discussion (dépend de <var>[[mw:Manual:$wgBlockAllowsUTEdit|$wgBlockAllowsUTEdit]]</var>).",
        "apihelp-block-param-reblock": "Si l’utilisateur est déjà bloqué, écraser le blocage existant.",
        "apihelp-block-param-watchuser": "Surveiller les pages utilisateur et de discussion de l’utilisateur ou de l’adresse IP.",
-       "apihelp-block-example-ip-simple": "Bloquer l’adresse IP 192.0.2.5 pour trois jours avec le motif « Premier avertissement ».",
-       "apihelp-block-example-user-complex": "Bloquer indéfiniment l’utilisateur Vandale avec le motif « Vandalisme », et empêcher la création de nouveau compte et de courriel",
+       "apihelp-block-example-ip-simple": "Bloquer l’adresse IP <kbd>192.0.2.5</kbd> pour trois jours avec le motif <kbd>Premier avertissement</kbd>.",
+       "apihelp-block-example-user-complex": "Bloquer indéfiniment l’utilisateur <kbd>Vandale</kbd> avec le motif <kbd>Vandalisme</kbd>, et empêcher la création de nouveau compte et l'envoi de courriel.",
        "apihelp-clearhasmsg-description": "Efface le drapeau <code>hasmsg</code> pour l’utilisateur courant.",
        "apihelp-clearhasmsg-example-1": "Effacer le drapeau <code>hasmsg</code> pour l’utilisateur courant",
        "apihelp-compare-description": "Obtenir la différence entre 2 pages.\n\nVous devez passer un numéro de révision, un titre de page, ou un ID de page, à la fois pour « from » et « to ».",
        "apihelp-createaccount-param-mailpassword": "S’il est fixé à une valeur quelconque, un mot de passe aléatoire sera envoyé par courriel à l’utilisateur.",
        "apihelp-createaccount-param-reason": "Motif facultatif de création du compte à mettre dans les journaux.",
        "apihelp-createaccount-param-language": "Code de langue à mettre par défaut pour l’utilisateur (facultatif, par défaut langue du contenu).",
-       "apihelp-createaccount-example-pass": "Créer l’utilisateur « testuser » avec le mot de passe « test123 »",
-       "apihelp-createaccount-example-mail": "Créer l’utilisateur « testmailuser » et envoyer par courriel un mot de passe généré aléatoirement",
+       "apihelp-createaccount-example-pass": "Créer l’utilisateur <kbd>testuser</kbd> avec le mot de passe <kbd>test123</kbd>.",
+       "apihelp-createaccount-example-mail": "Créer l’utilisateur <kbd>testmailuser</kbd> et envoyer par courriel un mot de passe généré aléatoirement.",
        "apihelp-delete-description": "Supprimer une page.",
-       "apihelp-delete-param-title": "Titre de la page que vous voulez supprimer. Impossible de l’utiliser avec $1pageid.",
-       "apihelp-delete-param-pageid": "ID de la page que vous voulez supprimer. Impossible à utiliser avec $1title.",
+       "apihelp-delete-param-title": "Titre de la page que vous voulez supprimer. Impossible de l’utiliser avec <var>$1pageid</var>.",
+       "apihelp-delete-param-pageid": "ID de la page que vous voulez supprimer. Impossible à utiliser avec <var>$1title</var>.",
        "apihelp-delete-param-reason": "Motif de suppression. Si non défini, un motif généré automatiquement sera utilisé.",
-       "apihelp-delete-param-watch": "Ajouter la page à votre liste de suivi.",
+       "apihelp-delete-param-watch": "Ajouter la page à la liste de suivi de l’utilisateur actuel.",
        "apihelp-delete-param-watchlist": "Ajouter ou supprimer sans condition la page de votre liste de suivi, utiliser les préférences ou ne pas modifier le suivi.",
-       "apihelp-delete-param-unwatch": "Supprimer la page de votre liste de suivi.",
+       "apihelp-delete-param-unwatch": "Supprimer la page de la liste de suivi de l'utilisateur actuel.",
        "apihelp-delete-param-oldimage": "Le nom de l’ancienne image à supprimer tel que fourni par [[Special:ApiHelp/query+imageinfo|action=query&prop=imageinfo&iiprop=archivename]].",
-       "apihelp-delete-example-simple": "Supprimer la Page principale",
-       "apihelp-delete-example-reason": "Supprimer la Page principale avec le motif « Préparation au déplacement »",
+       "apihelp-delete-example-simple": "Supprimer <kbd>Page principale</kbd>.",
+       "apihelp-delete-example-reason": "Supprimer <kbd>Page principale</kbd> avec le motif <kbd>Préparation au déplacement</kbd>",
        "apihelp-disabled-description": "Ce module a été désactivé.",
        "apihelp-edit-description": "Créer et modifier les pages.",
-       "apihelp-edit-param-title": "Titre de la page que vous voulez modifier. Impossible de l’utiliser avec $1pageid.",
-       "apihelp-edit-param-pageid": "ID de la page que vous voulez modifier. Impossible à utiliser avec $1title.",
-       "apihelp-edit-param-section": "Numéro de section. 0 pour la section de tête, « new » pour une nouvelle section.",
+       "apihelp-edit-param-title": "Titre de la page que vous voulez modifier. Impossible de l’utiliser avec <var>$1pageid</var>.",
+       "apihelp-edit-param-pageid": "ID de la page que vous voulez modifier. Impossible à utiliser avec <var>$1title</var>.",
+       "apihelp-edit-param-section": "Numéro de section. <kbd>0</kbd> pour la section de tête, <kbd>new</kbd> pour une nouvelle section.",
        "apihelp-edit-param-sectiontitle": "Le titre pour une nouvelle section.",
        "apihelp-edit-param-text": "Contenu de la page.",
        "apihelp-edit-param-summary": "Modifier le résumé. Également le titre de la section quand $1section=new et $1sectiontitle n’est pas défini.",
@@ -82,8 +84,8 @@
        "apihelp-edit-param-recreate": "Écraser toutes les erreurs sur l’article ayant été supprimé pendant ce temps.",
        "apihelp-edit-param-createonly": "Ne pas modifier la page si elle existe déjà.",
        "apihelp-edit-param-nocreate": "Lever une erreur si la page n’existe pas.",
-       "apihelp-edit-param-watch": "Ajouter la page à votre liste de suivi.",
-       "apihelp-edit-param-unwatch": "Supprimer la page de votre liste de suivi.",
+       "apihelp-edit-param-watch": "Ajouter la page à la liste de suivi de l'utilisateur actuel.",
+       "apihelp-edit-param-unwatch": "Supprimer la page de la liste de suivi de l'utilisateur actuel.",
        "apihelp-edit-param-watchlist": "Ajouter ou supprimer sans condition la page de votre liste de suivi, utiliser les préférences ou ne pas changer le suivi.",
        "apihelp-edit-param-md5": "Le hachage MD5 du paramètre $1text, ou les paramètres $1prependtext et $1appendtext concaténés. Si défini, la modification ne sera pas effectuée à moins que le hachage ne soit correct.",
        "apihelp-edit-param-prependtext": "Ajouter ce texte au début de la page. Écrase $1text.",
        "apihelp-emailuser-param-subject": "Entête du sujet.",
        "apihelp-emailuser-param-text": "Corps du courriel.",
        "apihelp-emailuser-param-ccme": "M’envoyer une copie de ce courriel.",
-       "apihelp-emailuser-example-email": "Envoyer un courriel à l’utilisateur « WikiSysop » avec le texte « Contenu »",
+       "apihelp-emailuser-example-email": "Envoyer un courriel à l’utilisateur <kbd>WikiSysop</kbd> avec le texte <kbd>Contenu</kbd>.",
        "apihelp-expandtemplates-description": "Développe tous les modèles en wikitexte.",
        "apihelp-expandtemplates-param-title": "Titre de la page.",
        "apihelp-expandtemplates-param-text": "Wikitexte à convertir.",
        "apihelp-expandtemplates-param-prop": "Quelles informations récupérer :\n;wikitext:Le wikitexte développé.\n;categories:Toutes les catégories présentes dans l’entrée qui ne sont pas représentées dans le wikitexte de sortie.\n;properties:Propriétés de page définies en développant les mots magiques dans le wikitexte.\n;volatile:Si la sortie est volatile et ne devrait pas être réutilisée ailleurs dans la page.\n;ttl:Le délai maximal après lequel les caches du résultat devraient être invalidés.\n;parsetree:L’arbre d’analyse XML de l’entrée.\nNoter que si aucune valeur n’est sélectionnée, le résultat contiendra le wikitexte, mais la sortie sera dans un format obsolète.",
        "apihelp-expandtemplates-param-includecomments": "S’il faut inclure les commentaires HTML dans la sortie.",
        "apihelp-expandtemplates-param-generatexml": "Générer l’arbre d’analyse XML (remplacé par $1prop=parsetree).",
-       "apihelp-expandtemplates-example-simple": "Développe le wikitexte « <nowiki>{{Project:Sandbox}}</nowiki> »",
+       "apihelp-expandtemplates-example-simple": "Développe le wikitexte <kbd><nowiki>{{Project:Sandbox}}</nowiki></kbd>.",
        "apihelp-feedcontributions-description": "Renvoie le fil des contributions d’un utilisateur.",
        "apihelp-feedcontributions-param-feedformat": "Le format du flux.",
        "apihelp-feedcontributions-param-user": "Pour quels utilisateurs récupérer les contributions.",
        "apihelp-feedcontributions-param-toponly": "Afficher uniquement les modifications qui sont les dernières révisions.",
        "apihelp-feedcontributions-param-newonly": "Afficher uniquement les modifications qui sont des créations de page.",
        "apihelp-feedcontributions-param-showsizediff": "Afficher la différence de taille entre les révisions.",
-       "apihelp-feedcontributions-example-simple": "Renvoyer les contributions de [[User:Example]]",
+       "apihelp-feedcontributions-example-simple": "Renvoyer les contributions de l'utilisateur <kbd>Exemple</kbd>.",
        "apihelp-feedrecentchanges-description": "Renvoie un fil de modifications récentes.",
        "apihelp-feedrecentchanges-param-feedformat": "Le format du flux.",
        "apihelp-feedrecentchanges-param-namespace": "Espace de noms auquel limiter les résultats.",
        "apihelp-feedrecentchanges-param-hideanons": "Masquer les modifications faites par des utilisateurs anonymes.",
        "apihelp-feedrecentchanges-param-hideliu": "Masquer les modifications faites par des utilisateurs enregistrés.",
        "apihelp-feedrecentchanges-param-hidepatrolled": "Masquer les modifications contrôlées.",
-       "apihelp-feedrecentchanges-param-hidemyself": "Masquer les modifications que vous avez faites.",
+       "apihelp-feedrecentchanges-param-hidemyself": "Masquer les modifications faites par l'utilisateur actuel.",
        "apihelp-feedrecentchanges-param-tagfilter": "Filtrer par balise.",
        "apihelp-feedrecentchanges-param-target": "Afficher uniquement les modifications sur les pages liées depuis cette page.",
        "apihelp-feedrecentchanges-param-showlinkedto": "Afficher les modifications plutôt sur les pages liées vers la page sélectionnée.",
        "apihelp-filerevert-param-archivename": "Nom d’archive de la révision à rétablir.",
        "apihelp-filerevert-example-revert": "Rétablir <kbd>Wiki.png</kbd> dans la version du <kbd>2011-03-05T15:27:40Z</kbd>",
        "apihelp-help-description": "Afficher l’aide pour les modules spécifiés.",
-       "apihelp-help-param-modules": "Modules pour lesquels afficher l’aide (valeurs des paramètres action= et format=, ou « main »). Les sous-modules peuvent être spécifiés avec un « + ».",
+       "apihelp-help-param-modules": "Modules pour lesquels afficher l’aide (valeurs des paramètres <var>action</var> et <var>format</var>, ou <kbd>main</kbd>). Les sous-modules peuvent être spécifiés avec un <kbd>+</kbd>.",
        "apihelp-help-param-submodules": "Inclure l’aide pour les sous-modules du module nommé.",
        "apihelp-help-param-recursivesubmodules": "Inclure l’aide pour les sous-modules de façon récursive.",
        "apihelp-help-param-helpformat": "Format de sortie de l’aide.",
        "apihelp-help-example-query": "Aide pour deux sous-modules de recherche",
        "apihelp-imagerotate-description": "Faire pivoter une ou plusieurs images.",
        "apihelp-imagerotate-param-rotation": "Degrés de rotation de l’image dans le sens des aiguilles d’une montre.",
-       "apihelp-imagerotate-example-simple": "Faire pivoter [[:File:Example.png]] de 90 degrés",
-       "apihelp-imagerotate-example-generator": "Faire pivoter toutes les images de [[:Category:Flip]] de 180 degrés",
-       "apihelp-import-description": "Importer une page depuis un autre wiki, ou un fichier XML.\n\nNoter que le POST HTTP doit être effectué comme un import de fichier (c’est-à-dire en utilisant multipart/form-data) lors de l’envoi d’un fichier pour le paramètre « xml ».",
+       "apihelp-imagerotate-example-simple": "Faire pivoter <kbd>File:Example.png</kbd> de <kbd>90</kbd> degrés.",
+       "apihelp-imagerotate-example-generator": "Faire pivoter toutes les images de <kbd>Category:Flip</kbd> de <kbd>180</kbd> degrés.",
+       "apihelp-import-description": "Importer une page depuis un autre wiki, ou un fichier XML.\n\nNoter que le POST HTTP doit être effectué comme un import de fichier (c’est-à-dire en utilisant multipart/form-data) lors de l’envoi d’un fichier pour le paramètre <var>xml</var>.",
        "apihelp-import-param-summary": "Importer le résumé.",
        "apihelp-import-param-xml": "Fichier XML téléchargé.",
        "apihelp-import-param-interwikisource": "Pour les importations interwiki : wiki depuis lequel importer.",
        "apihelp-login-example-login": "Se connecter",
        "apihelp-logout-description": "Se déconnecter et effacer les données de session.",
        "apihelp-logout-example-logout": "Déconnecter l’utilisateur actuel.",
+       "apihelp-managetags-description": "Effectuer des tâches de gestion relatives à la modification des balises.",
        "apihelp-move-description": "Déplacer une page.",
        "apihelp-move-param-from": "Titre de la page que vous voulez déplacer. Impossible de l’utiliser avec $1fromid.",
        "apihelp-move-param-fromid": "ID de la page que vous voulez déplacer. Impossible à utiliser avec $1from.",
        "apihelp-move-param-unwatch": "Supprimer la page et la redirection de votre liste de suivi.",
        "apihelp-move-param-watchlist": "Ajouter ou supprimer sans condition la page de votre liste de suivi, utiliser les préférences ou ne pas changer le suivi.",
        "apihelp-move-param-ignorewarnings": "Ignorer tous les avertissements.",
-       "apihelp-move-example-move": "Déplacer « Mauvais titre » en « Bon titre » sans garder de redirection",
+       "apihelp-move-example-move": "Déplacer <kbd>Mauvais titre</kbd> en <kbd>Bon titre</kbd> sans garder de redirection.",
        "apihelp-opensearch-description": "Rechercher dans le wiki en utilisant le protocole OpenSearch.",
        "apihelp-opensearch-param-search": "Chaîne de recherche.",
        "apihelp-opensearch-param-limit": "Nombre maximal de résultats à renvoyer.",
        "apihelp-opensearch-param-namespace": "Espaces de nom à rechercher.",
-       "apihelp-opensearch-param-suggest": "Ne rien faire si [https://www.mediawiki.org/wiki/Manual:$wgEnableOpenSearchSuggest $wgEnableOpenSearchSuggest] vaut faux.",
+       "apihelp-opensearch-param-suggest": "Ne rien faire si <var>[[mw:Manual:$wgEnableOpenSearchSuggest|$wgEnableOpenSearchSuggest]]</var> vaut faux.",
        "apihelp-opensearch-param-redirects": "Comment gérer les redirections :\n;return:Renvoie la redirection elle-même.\n;resolve:Renvoie la page cible. Peut renvoyer moins de $1limit résultats.\nPour des raisons historiques, la valeur par défaut est « return » pour $1format=json et « resolve » pour les autres formats.",
        "apihelp-opensearch-param-format": "Le format de sortie.",
-       "apihelp-opensearch-example-te": "Trouver les pages commençant par « Te »",
+       "apihelp-opensearch-example-te": "Trouver les pages commençant par <kbd>Te</kbd>.",
        "apihelp-options-description": "Modifier les préférences de l’utilisateur courant.\n\nSeules les options enregistrées dans le cœur ou dans l’une des extensions installées, ou les options avec une clé préfixée par « userjs- » (devant être utilisées dans les scripts utilisateur), peuvent être définies.",
        "apihelp-options-param-reset": "Réinitialise les préférences aux valeurs par défaut du site.",
-       "apihelp-options-param-resetkinds": "Liste des types d’option à réinitialiser quand l’option « $1reset » est définie.",
+       "apihelp-options-param-resetkinds": "Liste des types d’option à réinitialiser quand l’option <var>$1reset</var> est définie.",
        "apihelp-options-param-change": "Liste des modifications, au format nom=valeur (par ex. skin=vector). La valeur ne peut pas contenir de caractère barre verticale. Si aucune valeur n’est fournie (pas même un signe égal), par ex., nomoption|autreoption|…, l’option sera réinitialisée à sa valeur par défaut.",
-       "apihelp-options-param-optionname": "Un nom d’option qui doit être fixé à la valeur fournie par « $1optionvalue ».",
-       "apihelp-options-param-optionvalue": "La valeur d’une option spécifiée par « $1optionname » peut contenir des caractères barre verticale.",
+       "apihelp-options-param-optionname": "Un nom d’option qui doit être fixé à la valeur fournie par <var>$1optionvalue</var>.",
+       "apihelp-options-param-optionvalue": "La valeur d’une option spécifiée par <var>$1optionname</var> peut contenir des caractères barre verticale.",
        "apihelp-options-example-reset": "Réinitialiser toutes les préférences",
-       "apihelp-options-example-change": "Modifier les préférences « skin » et « hideminor »",
-       "apihelp-options-example-complex": "Réinitialiser toutes les préférences, puis définir « skin » et « nickname »",
+       "apihelp-options-example-change": "Modifier les préférences <kbd>skin</kbd> et <kbd>hideminor</kbd>.",
+       "apihelp-options-example-complex": "Réinitialiser toutes les préférences, puis définir <kbd>skin</kbd> et <kbd>nickname</kbd>.",
        "apihelp-paraminfo-description": "Obtenir des informations sur les modules de l’API.",
-       "apihelp-paraminfo-param-modules": "Liste des noms de module (valeurs des paramètres action= et format=, ou « main »). Peut spécifier des sous-modules avec un « + ».",
+       "apihelp-paraminfo-param-modules": "Liste des noms de module (valeurs des paramètres <var>action</var> et <var>format</var>, ou <kbd>main</kbd>). Peut spécifier des sous-modules avec un <kbd>+</kbd>.",
        "apihelp-paraminfo-param-helpformat": "Format des chaînes d’aide.",
-       "apihelp-paraminfo-param-querymodules": "Liste des noms de module de requêtage (valeur des paramètres prop=, meta= ou list=). Utiliser « $1modules=query+foo » au lieu de « $1querymodules=foo ».",
-       "apihelp-paraminfo-param-mainmodule": "Obtenir aussi des informations sur le module principal (niveau supérieur). Utiliser plutôt « $1modules=main ».",
+       "apihelp-paraminfo-param-querymodules": "Liste des noms de module de requêtage (valeur des paramètres <var>prop</var>, <var>meta</var> ou <var>list</var>=). Utiliser <kbd>$1modules=query+foo</kbd> au lieu de <kbd>$1querymodules=foo</kbd>.",
+       "apihelp-paraminfo-param-mainmodule": "Obtenir aussi des informations sur le module principal (niveau supérieur). Utiliser plutôt <kbd>$1modules=main</kbd>.",
        "apihelp-paraminfo-param-pagesetmodule": "Obtenir aussi des informations sur le module pageset (en fournissant titles= et ses amis).",
-       "apihelp-paraminfo-param-formatmodules": "Liste des noms de module de mise en forme (valeur du paramètre format=). Utiliser plutôt « $1modules ».",
-       "apihelp-paraminfo-example-1": "Afficher les informations pour [[Special:ApiHelp/parse|action=parse]], [[Special:ApiHelp/jsonfm|format=jsonfm]], [[Special:ApiHelp/query+allpages|action=query&list=allpages]], et [[Special:ApiHelp/query+siteinfo|action=query&meta=siteinfo]]",
-       "apihelp-parse-description": "Analyse le contenu et renvoie le résultat de l’analyseur.\n\nVoyez les différents modules prop de [[Special:ApiHelp/query|action=query]] pour avoir de l’information sur la version actuelle d’une page.\n\nIl y a plusieurs moyens de spécifier le texte à analyser :\n# Spécifier une page ou une révision, en utilisant $1page, $1pageid, ou $1oldid.\n# Spécifier explicitement un contenu, en utilisant $1text, $1title, et $1contentmodel.\n# Spécifier uniquement un résumé à analyser. $1prop doit recevoir une valeur vide.",
-       "apihelp-parse-param-title": "Titre de la page à laquelle appartient le texte. Si omis, $1contentmodel doit être spécifié, et « [[API]] » sera utilisé comme titre.",
-       "apihelp-parse-param-text": "Texte à analyser. utiliser $1title ou $1contentmodel pour contrôler le modèle de contenu.",
+       "apihelp-paraminfo-param-formatmodules": "Liste des noms de module de mise en forme (valeur du paramètre <var>format</var>). Utiliser plutôt <var>$1modules</kbd>.",
+       "apihelp-paraminfo-example-1": "Afficher les informations pour <kbd>[[Special:ApiHelp/parse|action=parse]]</kbd>, <kbd>[[Special:ApiHelp/jsonfm|format=jsonfm]]</kbd>, <kbd>[[Special:ApiHelp/query+allpages|action=query&list=allpages]]</kbd> et <kbd>[[Special:ApiHelp/query+siteinfo|action=query&meta=siteinfo]]</kbd>.",
+       "apihelp-parse-description": "Analyse le contenu et renvoie le résultat de l’analyseur.\n\nVoyez les différents modules prop de <kbd>[[Special:ApiHelp/query|action=query]]</kbd> pour avoir de l’information sur la version actuelle d’une page.\n\nIl y a plusieurs moyens de spécifier le texte à analyser :\n# Spécifier une page ou une révision, en utilisant <var>$1page</var>, <var>$1pageid</var> ou <var>$1oldid</var>.\n# Spécifier explicitement un contenu, en utilisant <var>$1text</var>, <var>$1title</var> et <var>$1contentmodel</var>\n# Spécifier uniquement un résumé à analyser. <var>$1prop</var> doit recevoir une valeur vide.",
+       "apihelp-parse-param-title": "Titre de la page à laquelle appartient le texte. Si omis, <var>$1contentmodel</var> doit être spécifié, et [[API]] sera utilisé comme titre.",
+       "apihelp-parse-param-text": "Texte à analyser. utiliser <var>$1title</var> ou <var>$1contentmodel</var> pour contrôler le modèle de contenu.",
        "apihelp-parse-param-summary": "Résumé à analyser.",
-       "apihelp-parse-param-page": "Analyser le contenu de cette page. Impossible à utiliser avec $1text et $1title.",
-       "apihelp-parse-param-pageid": "Analyser le contenu de cette page. Écrase $1page.",
-       "apihelp-parse-param-redirects": "Si le paramètre $1page ou $1pageid est positionné sur une redirection, la résoudre.",
-       "apihelp-parse-param-oldid": "Analyser le contenu de cette révision. Écrase $1page et $1pageid.",
+       "apihelp-parse-param-page": "Analyser le contenu de cette page. Impossible à utiliser avec <var>$1text</var> et <var>$1title</var>.",
+       "apihelp-parse-param-pageid": "Analyser le contenu de cette page. Écrase <var>$1page</var>.",
+       "apihelp-parse-param-redirects": "Si le paramètre <var>$1page</var> ou <var>$1pageid</var> est positionné sur une redirection, la résoudre.",
+       "apihelp-parse-param-oldid": "Analyser le contenu de cette révision. Écrase <var>$1page</var> et <var>$1pageid</var>.",
        "apihelp-parse-param-prop": "Quelles informations obtenir :\n;text:Fournit le texte analysé du wikitexte.\n;langlinks:Fournit les liens de langue dans le wikitexte analysé.\n;categories:Fournit les catégories dans le wikitexte analysé.\n;categorieshtml:Fournit la version HTML des catégories.\n;links:Fournit les liens internes dans le wikitexte analysé.\n;templates:Fournit les modèles dans le wikitexte analysé.\n;images:Fournit les images dans le wikitexte analysé.\n;externallinks:Fournit les liens externes dans le wikitexte analysé.\n;sections:Fournit les sections dans le wikitexte analysé.\n;revid:Ajoute l’ID de révision de la page analysée.\n;displaytitle:Ajoute le titre du wikitexte analysé.\n;headitems:Fournit les éléments à mettre dans le &lt;head&gt; de la page.\n;headhtml:Fournit le &lt;head&gt; analysé de la page.\n;modules:Fournit les modules ResourceLoader utilisés sur la page.\n;indicators:Fournit le HTML des indicateurs d’état de la page utilisés dans la page.\n;iwlinks:Fournit les liens interwiki dans le wikitexte analysé.\n;wikitext:Fournit le wikitexte d’origine qui a été analysé.\n;properties:Fournit différentes propriétés définies dans le wikitexte analysé.\n;limitreportdata:Fournit le rapport de limite de façon structurée. Ne fournit aucune donnée, quand $1disablepp est activé.\n;limitreporthtml:Fournit la version HTML du rapport de limite. Ne fournit aucune donnée, quand $1disablepp est activé.",
        "apihelp-parse-param-pst": "Faire une transformation avant enregistrement de l’entrée avant de l’analyser. Valide uniquement quand utilisé avec du texte.",
-       "apihelp-parse-param-onlypst": "Faire une transformation avant enregistrement (PST) de l’entrée, mais ne pas l’analyser. Renvoie le même wikitexte, après que la PST a été appliquée. Valide uniquement quand utilisé avec $1text.",
-       "apihelp-parse-param-effectivelanglinks": "Inclut les liens de langue fournis par les extensions (à utiliser avec $1prop=langlinks).",
+       "apihelp-parse-param-onlypst": "Faire une transformation avant enregistrement (PST) de l’entrée, mais ne pas l’analyser. Renvoie le même wikitexte, après que la PST a été appliquée. Valide uniquement quand utilisé avec <var>$1text</var>.",
+       "apihelp-parse-param-effectivelanglinks": "Inclut les liens de langue fournis par les extensions (à utiliser avec <kbd>$1prop=langlinks</kbd>).",
        "apihelp-parse-param-section": "Récupérer uniquement le contenu de ce numéro de section.",
        "apihelp-parse-param-disablepp": "Désactiver le rapport PP de la sortie de l’analyseur.",
        "apihelp-parse-param-disableeditsection": "Désactiver les liens de modification de section de la sortie de l’analyseur.",
-       "apihelp-parse-param-generatexml": "Générer un arbre d’analyse XML (nécessite le modèle de contenu « $1 »).",
+       "apihelp-parse-param-generatexml": "Générer un arbre d’analyse XML (nécessite le modèle de contenu <code>$1</code>).",
        "apihelp-parse-param-preview": "Analyser en mode aperçu.",
        "apihelp-parse-param-sectionpreview": "Analyser en mode aperçu de section (active aussi le mode aperçu).",
        "apihelp-parse-param-disabletoc": "Désactiver la table des matières dans la sortie.",
        "apihelp-protect-description": "Modifier le niveau de protection d’une page.",
        "apihelp-protect-param-title": "Titre de la page à (dé)protéger. Impossible à utiliser avec $1pageid.",
        "apihelp-protect-param-pageid": "ID de la page à (dé)protéger. Impossible à utiliser avec $1title.",
-       "apihelp-protect-param-protections": "Liste des niveaux de protection, au format action=niveau (par ex. edit=sysop).\n\n'''NOTE :''' Toutes les actions non listées auront leur restrictions supprimées.",
-       "apihelp-protect-param-expiry": "Horodatages d’expiration. Si un seul horodatage est fourni, il sera utilisé pour toutes les protections. Utiliser « infinite », « indefinite », « infinity » ou « never » pour une protection sans expiration.",
+       "apihelp-protect-param-protections": "Liste des niveaux de protection, au format <kbd>action=niveau</kbd> (par ex. <kbd>edit=sysop</kbd>).\n\n<strong>NOTE :<strong> Toutes les actions non listées auront leur restrictions supprimées.",
+       "apihelp-protect-param-expiry": "Horodatages d’expiration. Si un seul horodatage est fourni, il sera utilisé pour toutes les protections. Utiliser <kbd>infinite</kbd>, <kbd>indefinite</kbd>, <kbd>infinity</kbd> ou <kbd>never</kbd> pour une protection sans expiration.",
        "apihelp-protect-param-reason": "Motif de (dé)protection.",
        "apihelp-protect-param-cascade": "Activer la protection en cascade (c’est-à-dire protéger les pages incluses dans cette page). Ignoré si tous les niveaux de protection fournis ne supportent pas la mise en cascade.",
        "apihelp-protect-param-watch": "Si activé, ajouter la page (dé)protégée à votre liste de suivi.",
        "apihelp-protect-param-watchlist": "Ajouter ou supprimer sans condition la page de votre liste de suivi, utiliser les préférences ou ne pas modifier le suivi.",
        "apihelp-protect-example-protect": "Protéger une page",
-       "apihelp-protect-example-unprotect": "Enlever la protection d’une page en mettant les restrictions à « all »",
+       "apihelp-protect-example-unprotect": "Enlever la protection d’une page en mettant les restrictions à <kbd>all</kbd>.",
        "apihelp-protect-example-unprotect2": "Enlever la protection de la page en ne mettant aucune restriction",
        "apihelp-purge-description": "Vider le cache des titres fournis.\n\nNécessite une requête POST si l’utilisateur n’est pas connecté.",
        "apihelp-purge-param-forcelinkupdate": "Mettre à jour les tables de liens.",
        "apihelp-purge-param-forcerecursivelinkupdate": "Mettre à jour la table des liens, et mettre à jour les tables de liens pour toute page qui utilise cette page comme modèle",
-       "apihelp-purge-example-simple": "Purger les pages « Page principale » et « API »",
+       "apihelp-purge-example-simple": "Purger les pages <kbd>Page principale</kbd> et <kbd>API</kbd>.",
        "apihelp-purge-example-generator": "Purger les 10 premières pages de l’espace de noms principal",
        "apihelp-query-description": "Extraire des données de et sur MédiaWiki.\n\nToutes les modifications de données devront d’abord utiliser une requête pour obtenir un jeton, afin d’éviter les abus de la part de sites malveillants.",
        "apihelp-query-param-prop": "Quelles propriétés obtenir des pages demandées.",
        "apihelp-query-param-exportnowrap": "Renvoyer le XML exporté sans l’inclure dans un résultat XML (même format que [[Special:Export]]). Utilisable uniquement avec $1export.",
        "apihelp-query-param-iwurl": "S’il faut obtenir l’URL complète si le titre est un lien interwiki.",
        "apihelp-query-param-continue": "Quand il est présent, met en forme query-continue sous forme de paires clé-valeur qui devrait simplement être fusionné dans la requête d’origine. Ce paramètre doit être fixé à une chaîne vide dans la requête initiale.\n\nCe paramètre est recommandé pour tout nouveau développement, et sera mis par défaut dans la prochaine version de l’API.",
-       "apihelp-query-param-rawcontinue": "Actuellement ignoré. Plus tard, « $1continue= » deviendra la valeur par défaut et sera nécessaire pour recevoir les données brutes de query-continue.",
-       "apihelp-query-example-revisions": "Récupérer [[Special:ApiHelp/query+siteinfo|l’info du site]] et [[Special:ApiHelp/query+revisions|les révisions]] de la Page principale",
-       "apihelp-query-example-allpages": "Récupérer les révisions des pages commençant par « API/ »",
+       "apihelp-query-param-rawcontinue": "Actuellement ignoré. Plus tard, <var>$1continue</var> deviendra la valeur par défaut et sera nécessaire pour recevoir les données brutes de <samp>query-continue</samp>.",
+       "apihelp-query-example-revisions": "Récupérer [[Special:ApiHelp/query+siteinfo|l’info du site]] et [[Special:ApiHelp/query+revisions|les révisions]] de <kbd>Page principale</kbd>.",
+       "apihelp-query-example-allpages": "Récupérer les révisions des pages commençant par <kbd>API/</kbd>.",
        "apihelp-query+allcategories-description": "Énumérer toutes les catégories.",
        "apihelp-query+allcategories-param-from": "La catégorie depuis laquelle démarrer l’énumération.",
        "apihelp-query+allcategories-param-to": "La catégorie à laquelle terminer l’énumération.",
        "apihelp-query+allcategories-param-limit": "Combien de catégories renvoyer.",
        "apihelp-query+allcategories-param-prop": "Quelles propriétés récupérer :\n;size:Ajoute le nombre de pages dans la catégorie.\n;hidden:Marque les catégories qui sont cachées avec _&#95;HIDDENCAT_&#95;.",
        "apihelp-query+allcategories-example-size": "Lister les catégories avec l’information sur le nombre de pages dans chacune",
-       "apihelp-query+allcategories-example-generator": "Récupérer l’information sur la page de catégorie elle-même pour les catégories commençant par « List »",
+       "apihelp-query+allcategories-example-generator": "Récupérer l’information sur la page de catégorie elle-même pour les catégories commençant par <kbd>List</kbd>.",
        "apihelp-query+alldeletedrevisions-description": "Lister toutes les révisions supprimées par un utilisateur ou dans un espace de noms.",
-       "apihelp-query+alldeletedrevisions-paraminfo-useronly": "Utilisable uniquement avec $3user.",
-       "apihelp-query+alldeletedrevisions-paraminfo-nonuseronly": "Impossible à utiliser avec $3user.",
+       "apihelp-query+alldeletedrevisions-paraminfo-useronly": "Utilisable uniquement avec <var>$3user</var>.",
+       "apihelp-query+alldeletedrevisions-paraminfo-nonuseronly": "Impossible à utiliser avec <var>$3user</var>.",
        "apihelp-query+alldeletedrevisions-param-start": "L’horodatage auquel démarrer l’énumération.",
        "apihelp-query+alldeletedrevisions-param-end": "L’horodatage auquel arrêter l’énumération.",
        "apihelp-query+alldeletedrevisions-param-from": "Démarrer la liste à ce titre.",
        "apihelp-query+alldeletedrevisions-param-user": "Lister uniquement les révisions par cet utilisateur.",
        "apihelp-query+alldeletedrevisions-param-excludeuser": "Ne pas lister les révisions par cet utilisateur.",
        "apihelp-query+alldeletedrevisions-param-namespace": "Lister uniquement les pages dans cet espace de noms.",
-       "apihelp-query+alldeletedrevisions-param-miser-user-namespace": "'''REMARQUE :''' Du fait du [https://www.mediawiki.org/wiki/Manual:$wgMiserMode mode minimal], utiliser $1user et $1namespace ensemble peut aboutir à moins de résultats renvoyés que « $1limit » avant de continuer ; dans les cas extrêmes, zéro résultats peuvent être renvoyés.",
+       "apihelp-query+alldeletedrevisions-param-miser-user-namespace": "<strong>REMARQUE :</strong> Du fait du [[mw:Manual:$wgMiserMode|mode minimal]], utiliser <var>$1user</var> et <var>$1namespace</var> ensemble peut aboutir à moins de résultats renvoyés que <var>$1limit</var> avant de continuer ; dans les cas extrêmes, zéro résultats peuvent être renvoyés.",
        "apihelp-query+alldeletedrevisions-param-generatetitles": "Utilisé comme générateur, générer des titres plutôt que des IDs de révision.",
-       "apihelp-query+alldeletedrevisions-example-user": "Lister les 50 dernières contributions supprimées par User:Exemple",
-       "apihelp-query+alldeletedrevisions-example-ns-main": "Lister les 50 premières révisions supprimées dans l’espace de noms principal",
+       "apihelp-query+alldeletedrevisions-example-user": "Lister les 50 dernières contributions supprimées par l'utilisateur <kbd>Exemple</kbd>.",
+       "apihelp-query+alldeletedrevisions-example-ns-main": "Lister les 50 premières révisions supprimées dans l’espace de noms principal.",
        "apihelp-query+allfileusages-description": "Lister toutes les utilisations de fichier, y compris ceux n’existant pas.",
        "apihelp-query+allfileusages-param-from": "Le titre du fichier depuis lequel commencer l’énumération.",
        "apihelp-query+allfileusages-param-to": "Le titre du fichier auquel arrêter l’énumération.",
        "apihelp-query+allfileusages-param-prop": "Quelles informations inclure :\n;ids:Ajoute l’ID de la page utilisatrice (impossible à utiliser avec $1unique).\n;title:Ajoute le titre du fichier.",
        "apihelp-query+allfileusages-param-limit": "Combien d’éléments renvoyer au total.",
        "apihelp-query+allfileusages-param-dir": "La direction dans laquelle lister.",
-       "apihelp-query+allfileusages-example-B": "Lister les titres de fichier, y compris les manquants, avec les ids de page d’où ils proviennent, en commençant à B",
+       "apihelp-query+allfileusages-example-B": "Lister les titres de fichier, y compris les manquants, avec les IDs de page d’où ils proviennent, en commençant à <kbd>B</kbd>.",
        "apihelp-query+allfileusages-example-unique": "Lister les titres de fichier uniques",
        "apihelp-query+allfileusages-example-unique-generator": "Obtient tous les titres de fichier, en marquant les manquants",
        "apihelp-query+allfileusages-example-generator": "Obtient les pages contenant les fichiers",
        "apihelp-query+allimages-param-filterbots": "Comment filtrer les fichiers téléchargés par des robots. Peut être utilisé uniquement avec $1sort=timestamp. Impossible à utiliser avec $1user.",
        "apihelp-query+allimages-param-mime": "Quels types MIME rechercher, par ex. <kbd>image/jpeg</kbd>.",
        "apihelp-query+allimages-param-limit": "Combien d’images renvoyer au total.",
-       "apihelp-query+allimages-example-B": "Afficher une liste des fichiers commençant par la lettre « B »",
+       "apihelp-query+allimages-example-B": "Afficher une liste des fichiers commençant par la lettre <kbd>B</kbd>.",
        "apihelp-query+allimages-example-recent": "Afficher une liste des fichiers récemment téléchargés semblable à [[Special:NewFiles]]",
        "apihelp-query+allimages-example-mimetypes": "Afficher une liste de fichiers avec le type MIME <kbd>image/png</kbd> ou <kbd>image/gif</kbd>",
-       "apihelp-query+allimages-example-generator": "Afficher l’information sur 4 fichiers commençant par la lettre « T »",
+       "apihelp-query+allimages-example-generator": "Afficher l’information sur 4 fichiers commençant par la lettre <kbd>T</kbd>.",
        "apihelp-query+alllinks-description": "Énumérer tous les liens pointant vers un espace de noms donné.",
        "apihelp-query+alllinks-param-from": "Le titre du lien auquel démarrer l’énumération.",
        "apihelp-query+alllinks-param-to": "Le titre du lien auquel arrêter l’énumération.",
        "apihelp-query+alllinks-param-prefix": "Rechercher tous les titres liés commençant par cette valeur.",
-       "apihelp-query+alllinks-param-unique": "Afficher uniquement les titres liés distincts. Impossible à utiliser avec $1prop=ids.\nUtilisé avec un générateur, produit les pages cible au lieu des pages source.",
-       "apihelp-query+alllinks-param-prop": "Quelles informations inclure :\n;ids:Ajoute l’ID de la page de liaison (impossible à utiliser avec $1unique).\n;title:Ajoute le titre du lien.",
+       "apihelp-query+alllinks-param-unique": "Afficher uniquement les titres liés distincts. Impossible à utiliser avec <kbd>$1prop=ids</kbd>.\nUtilisé avec un générateur, produit les pages cible au lieu des pages source.",
+       "apihelp-query+alllinks-param-prop": "Quelles informations inclure :\n;ids:Ajoute l’ID de la page de liaison (impossible à utiliser avec <var>$1unique</var>).\n;title:Ajoute le titre du lien.",
        "apihelp-query+alllinks-param-namespace": "L’espace de noms à énumérer.",
        "apihelp-query+alllinks-param-limit": "Combien d’éléments renvoyer au total.",
        "apihelp-query+alllinks-param-dir": "La direction dans laquelle lister.",
-       "apihelp-query+alllinks-example-B": "Lister les titres liés, y compris les manquants, avec les ids des pages d’où ils proviennent, en démarrant à B",
+       "apihelp-query+alllinks-example-B": "Lister les titres liés, y compris les manquants, avec les IDs des pages d’où ils proviennent, en démarrant à <kbd>B</kbd>.",
        "apihelp-query+alllinks-example-unique": "Lister les titres liés uniques",
        "apihelp-query+alllinks-example-unique-generator": "Obtient tous les titres liés, en marquant les manquants",
        "apihelp-query+alllinks-example-generator": "Obtient les pages contenant les liens",
        "apihelp-query+allmessages-description": "Renvoyer les messages depuis ce site.",
-       "apihelp-query+allmessages-param-messages": "Quels messages sortir. « * » (par défaut) signifie tous les messages.",
+       "apihelp-query+allmessages-param-messages": "Quels messages sortir. <kbd>*</kbd> (par défaut) signifie tous les messages.",
        "apihelp-query+allmessages-param-prop": "Quelles propriétés obtenir.",
        "apihelp-query+allmessages-param-enableparser": "Si positionné pour activer l’analyseur, traitera en avance le wikitexte du message (substitution des mots magiques, gestion des modèles, etc.).",
        "apihelp-query+allmessages-param-nocontent": "Si positionné, ne pas inclure le contenu des messages dans la sortie.",
        "apihelp-query+allmessages-param-to": "Renvoyer les messages en terminant à ce message.",
        "apihelp-query+allmessages-param-title": "Nom de page à utiliser comme contexte en analysant le message (pour l’option $1enableparser).",
        "apihelp-query+allmessages-param-prefix": "Renvoyer les messages avec ce préfixe.",
-       "apihelp-query+allmessages-example-ipb": "Afficher les messages commençant par « ipb- »",
-       "apihelp-query+allmessages-example-de": "Afficher les messages « august » et «mainpage » en allemand",
+       "apihelp-query+allmessages-example-ipb": "Afficher les messages commençant par <kbd>ipb-</kbd>.",
+       "apihelp-query+allmessages-example-de": "Afficher les messages <kbd>august</kbd> et <kbd>mainpage</kbd> en allemand.",
        "apihelp-query+allpages-description": "Énumérer toutes les pages séquentiellement dans un espace de noms donné.",
        "apihelp-query+allpages-param-from": "Le titre de la page depuis lequel commencer l’énumération.",
        "apihelp-query+allpages-param-to": "Le titre de la page auquel stopper l’énumération.",
        "apihelp-query+allpages-param-dir": "La direction dans laquelle lister.",
        "apihelp-query+allpages-param-filterlanglinks": "Filtrer si une page a des liens de langue. Noter que cela ne prend pas en compte les liens de langue ajoutés par des extensions.",
        "apihelp-query+allpages-param-prexpiry": "Quelle expiration de protection sur laquelle filtrer la page :\n;indefinite:N’obtenir que les pages avec une expiration de protection infinie.\n;definite:N’obtenir que les pages avec une expiration de protection définie (spécifique).\n;all:Obtenir toutes les pages avec une expiration de protection.",
-       "apihelp-query+allpages-example-B": "Afficher une liste des pages commençant par la lettre « B »",
-       "apihelp-query+allpages-example-generator": "Afficher l’information sur 4 pages commençant par la lettre « T »",
-       "apihelp-query+allpages-example-generator-revisions": "Afficher le contenu des 2 premières pages hors redirections commençant par « Re »",
+       "apihelp-query+allpages-example-B": "Afficher une liste des pages commençant par la lettre <kbd>B</kbd>.",
+       "apihelp-query+allpages-example-generator": "Afficher l’information sur 4 pages commençant par la lettre <kbd>T</kbd>.",
+       "apihelp-query+allpages-example-generator-revisions": "Afficher le contenu des 2 premières pages hors redirections commençant par <kbd>Re</kbd>.",
        "apihelp-query+allredirects-description": "Lister toutes les redirections vers un espace de noms.",
        "apihelp-query+allredirects-param-from": "Le titre de la redirection auquel démarrer l’énumération.",
        "apihelp-query+allredirects-param-to": "Le titre de la redirection auquel arrêter l’énumération.",
        "apihelp-query+allredirects-param-prefix": "Rechercher toutes les pages cible commençant par cette valeur.",
        "apihelp-query+allredirects-param-unique": "Afficher uniquement les pages cibles distinctes. Impossible à utiliser avec $1prop=ids|fragment|interwiki.\nUtilisé avec un générateur, produit les pages cible au lieu des pages source.",
-       "apihelp-query+allredirects-param-prop": "Quelles informations inclure :\n;ids:Ajoute l’ID de la page de redirection (impossible à utiliser avec $1unique).\n;title:Ajoute le titre de la redirection.\n;fragment:Ajoute le fragment de la redirection, s’il y en a un (impossible à utiliser avec $1unique).\n;interwiki:Ajoute le préfixe interwiki de la redirection, s’il y en a un (impossible à utiliser avec $1unique).",
+       "apihelp-query+allredirects-param-prop": "Quelles informations inclure :\n;ids:Ajoute l’ID de la page de redirection (impossible à utiliser avec <var>$1unique</var>).\n;title:Ajoute le titre de la redirection.\n;fragment:Ajoute le fragment de la redirection, s’il y en a un (impossible à utiliser avec <var>$1unique</var>).\n;interwiki:Ajoute le préfixe interwiki de la redirection, s’il y en a un (impossible à utiliser avec <var>$1unique</var>).",
        "apihelp-query+allredirects-param-namespace": "L’espace de noms à énumérer.",
        "apihelp-query+allredirects-param-limit": "Combien d’éléments renvoyer au total.",
        "apihelp-query+allredirects-param-dir": "La direction dans laquelle lister.",
-       "apihelp-query+allredirects-example-B": "Lister les pages cible, y compris les manquantes, avec les IDs de page d’où ils proviennent, en commençant à B",
+       "apihelp-query+allredirects-example-B": "Lister les pages cible, y compris les manquantes, avec les IDs de page d’où ils proviennent, en commençant à <kbd>B</kbd>.",
        "apihelp-query+allredirects-example-unique": "Lister les pages cible unique",
        "apihelp-query+allredirects-example-unique-generator": "Obtient toutes les pages cible, en marquant les manquantes",
        "apihelp-query+allredirects-example-generator": "Obtient les pages contenant les redirections",
        "apihelp-query+alltransclusions-param-namespace": "L’espace de noms à énumérer.",
        "apihelp-query+alltransclusions-param-limit": "Combien d’éléments renvoyer au total.",
        "apihelp-query+alltransclusions-param-dir": "La direction dans laquelle lister.",
-       "apihelp-query+alltransclusions-example-B": "Lister les titres inclus, y compris les manquants, avec les IDs des pages d’où ils viennent, en commençant à B",
+       "apihelp-query+alltransclusions-example-B": "Lister les titres inclus, y compris les manquants, avec les IDs des pages d’où ils viennent, en commençant à <kbd>B</kbd>.",
        "apihelp-query+alltransclusions-example-unique": "Lister les titres inclus uniques",
        "apihelp-query+alltransclusions-example-unique-generator": "Obtient tous les titres inclus, en marquant les manquants",
        "apihelp-query+alltransclusions-example-generator": "Obtient les pages contenant des transclusions",
        "apihelp-query+allusers-param-limit": "Combien de noms d’utilisateur renvoyer au total.",
        "apihelp-query+allusers-param-witheditsonly": "Ne lister que les utilisateurs qui ont fait des modifications.",
        "apihelp-query+allusers-param-activeusers": "Lister uniquement les utilisateurs actifs durant {{PLURAL:$1|le dernier jour|les $1 derniers jours}}.",
-       "apihelp-query+allusers-example-Y": "Lister les utilisateurs en commençant à Y",
+       "apihelp-query+allusers-example-Y": "Lister les utilisateurs en commençant à <kbd>Y</kbd>.",
        "apihelp-query+backlinks-description": "Trouver toutes les pages qui ont un lien vers la page donnée.",
-       "apihelp-query+backlinks-param-title": "Titre à rechercher. Impossible à utiliser avec $1pageid.",
-       "apihelp-query+backlinks-param-pageid": "ID de la page à chercher. Impossible à utiliser avec $1title.",
+       "apihelp-query+backlinks-param-title": "Titre à rechercher. Impossible à utiliser avec <var>$1pageid</var>.",
+       "apihelp-query+backlinks-param-pageid": "ID de la page à chercher. Impossible à utiliser avec <var>$1title</var>.",
        "apihelp-query+backlinks-param-namespace": "L’espace de noms à énumérer.",
        "apihelp-query+backlinks-param-dir": "La direction dans laquelle lister.",
-       "apihelp-query+backlinks-param-filterredir": "Comment filtrer les redirections. Si positionné à nonredirects quand $1redirect est activé, cela ne s’applique qu’au second niveau.",
+       "apihelp-query+backlinks-param-filterredir": "Comment filtrer les redirections. Si positionné à <kbd>nonredirects</kbd> quand <var>$1redirect</var> est activé, cela ne s’applique qu’au second niveau.",
        "apihelp-query+backlinks-param-limit": "Combien de pages renvoyer au total. Si $1redirect est activé, la limite s’applique à chaque niveau séparément (ce qui signifie que vous pouvez obtenir jusqu’à 2 * limite résultats).",
        "apihelp-query+backlinks-param-redirect": "Si le lien vers une page est une redirection, trouver toutes les pages qui ont un lien vers cette redirection aussi. La limite maximale est divisée par deux.",
-       "apihelp-query+backlinks-example-simple": "Afficher les liens vers [[Main page]]",
-       "apihelp-query+backlinks-example-generator": "Obtenir des informations sur les pages ayant un lien vers [[Main page]]",
+       "apihelp-query+backlinks-example-simple": "Afficher les liens vers <kbd>Main page<kbd>.",
+       "apihelp-query+backlinks-example-generator": "Obtenir des informations sur les pages ayant un lien vers <kbd>Main page<kbd>.",
        "apihelp-query+blocks-description": "Lister tous les utilisateurs et les adresses IP bloqués.",
        "apihelp-query+blocks-param-start": "L’horodatage auquel démarrer l’énumération.",
        "apihelp-query+blocks-param-end": "L’horodatage auquel arrêter l’énumération.",
        "apihelp-query+blocks-param-ids": "Liste des IDs de bloc à lister (facultatif).",
        "apihelp-query+blocks-param-users": "Liste des utilisateurs à rechercher (facultatif).",
-       "apihelp-query+blocks-param-ip": "Obtenir tous les blocs s’appliquant à cette adresse IP ou à cette plage CIDR, y compris les blocs de plage.\nImpossible à utiliser avec $3users. Les plages CIDR plus larges que IPv4/$1 ou IPv6/$2 ne sont pas acceptées.",
+       "apihelp-query+blocks-param-ip": "Obtenir tous les blocs s’appliquant à cette adresse IP ou à cette plage CIDR, y compris les blocs de plage.\nImpossible à utiliser avec <var>$3users</var>. Les plages CIDR plus larges que IPv4/$1 ou IPv6/$2 ne sont pas acceptées.",
        "apihelp-query+blocks-param-limit": "Le nombre maximal de blocs à lister.",
-       "apihelp-query+blocks-param-prop": "Quelles propriétés obtenir :\n;id:Ajoute l’ID du blocage.\n;user:Ajoute le nom de l’utilisateur bloqué.\n;userid:Ajoute l’ID de l’utilisateur bloqué.\n;by:Ajoute le nom de l’utilisateur ayant bloqué.\n;byid:Ajoute l’ID de l’utilisateur ayant bloqué.\n;timestamp:Ajoute l’horodatage du blocage.\n;expiry:Ajoute l’horodatage d’expiration du blocage.\n;reason:Ajoute le motif du blocage.\n;range:Ajoute la plage d&adresses IP affectée par le blocage.\n;flags:Marque le bannissement avec (autoblock, anononly, etc.).",
-       "apihelp-query+blocks-param-show": "Afficher uniquement les éléments correspondant à ces critères.\nPar exemple, pour voir uniquement les blocages infinis sur les adresses IP, mettre $1show=ip|!temp.",
+       "apihelp-query+blocks-param-prop": "Quelles propriétés obtenir :\n;id:Ajoute l’ID du blocage.\n;user:Ajoute le nom de l’utilisateur bloqué.\n;userid:Ajoute l’ID de l’utilisateur bloqué.\n;by:Ajoute le nom de l’utilisateur ayant bloqué.\n;byid:Ajoute l’ID de l’utilisateur ayant bloqué.\n;timestamp:Ajoute l’horodatage du blocage.\n;expiry:Ajoute l’horodatage d’expiration du blocage.\n;reason:Ajoute le motif du blocage.\n;range:Ajoute la plage dadresses IP affectée par le blocage.\n;flags:Marque le bannissement avec (autoblock, anononly, etc.).",
+       "apihelp-query+blocks-param-show": "Afficher uniquement les éléments correspondant à ces critères.\nPar exemple, pour voir uniquement les blocages infinis sur les adresses IP, mettre <kbd>$1show=ip|!temp</kbd>.",
        "apihelp-query+blocks-example-simple": "Lister les blocages",
-       "apihelp-query+blocks-example-users": "Lister les blocages des utilisateurs Alice et Bob",
+       "apihelp-query+blocks-example-users": "Lister les blocages des utilisateurs <kbd>Alice</kbd> et <kbd>Bob</kbd>.",
        "apihelp-query+categories-description": "Lister toutes les catégories auxquelles les pages appartiennent.",
        "apihelp-query+categories-param-prop": "Quelles propriétés supplémentaires obtenir de chaque catégorie :\n;sortkey:Ajoute la clé de tri (chaîne hexadécimale) et son préfixe (partie lisible) de la catégorie.\n;timestamp:Ajoute l’horodatage de l’ajout de la catégorie.\n;hidden:Marque els catégories cachées avec _&#95;HIDDENCAT_&#95;.",
        "apihelp-query+categories-param-show": "Quelle sorte de catégories afficher.",
        "apihelp-query+categories-param-limit": "Combien de catégories renvoyer.",
        "apihelp-query+categories-param-categories": "Lister uniquement ces catégories. Utile pour vérifier si une certaine page est dans une certaine catégorie.",
        "apihelp-query+categories-param-dir": "La direction dans laquelle lister.",
-       "apihelp-query+categories-example-simple": "Obtenir une liste des catégories auxquelles appartient [[Albert Einstein]]",
-       "apihelp-query+categories-example-generator": "Obtenir des informations sur toutes les catégories utilisées dans [[Albert Einstein]]",
+       "apihelp-query+categories-example-simple": "Obtenir une liste des catégories auxquelles appartient la page <kbd>Albert Einstein</kbd>.",
+       "apihelp-query+categories-example-generator": "Obtenir des informations sur toutes les catégories utilisées dans la page <kbd>Albert Einstein</kbd>.",
        "apihelp-query+categoryinfo-description": "Renvoie les informations sur les catégories données.",
-       "apihelp-query+categoryinfo-example-simple": "Obtenir des informations sur [[:Category:Foo]] et [[:Category:Bar]]",
+       "apihelp-query+categoryinfo-example-simple": "Obtenir des informations sur <kbd>Category:Foo</kbd> et <kbd>Category:Bar</kbd>.",
        "apihelp-query+categorymembers-description": "Lister toutes les pages d’une catégorie donnée.",
-       "apihelp-query+categorymembers-param-title": "Quelle catégorie énumérer (obligatoire). Doit comprendre le préfixe « Category: ». Impossible à utiliser avec $1pageid.",
-       "apihelp-query+categorymembers-param-pageid": "ID de la page de la catégorie à énumérer. Impossible à utiliser avec $1title.",
+       "apihelp-query+categorymembers-param-title": "Quelle catégorie énumérer (obligatoire). Doit comprendre le préfixe <kbd>{{ns:category}}:</kbd>. Impossible à utiliser avec <var>$1pageid</var>.",
+       "apihelp-query+categorymembers-param-pageid": "ID de la page de la catégorie à énumérer. Impossible à utiliser avec <var>$1title</var>.",
        "apihelp-query+categorymembers-param-prop": "Quelles informations inclure :\n;ids:Ajoute l’ID de la page.\n;title:Ajoute le titre et l’ID de l’espace de noms de la page.\n;sortkey:Ajoute la clé de tri utilisée pour trier dans la catégorie (chaîne hexadécimale).\n;sortkeyprefix:Ajoute le préfixe de la clé de tri utilisé pour trier dans la catégorie (partie lisible de la clé de tri).\n;type:Ajoute le type dans lequel a été catégorisée la page (page, sous-catégorie ou fichier).\n;timestamp:Ajoute l’horodatage de l’inclusion de la page.",
-       "apihelp-query+categorymembers-param-namespace": "Inclure uniquement les pages dans ces espaces de nom. Remarquez que $1type=subcat ou $1type=file peuvent  être utilisés à la place de $1namespace=14 or 6.",
-       "apihelp-query+categorymembers-param-type": "Quel type de membres de la catégorie inclure. Ignoré quand $1sort=timestamp est positionné.",
+       "apihelp-query+categorymembers-param-namespace": "Inclure uniquement les pages dans ces espaces de nom. Remarquez que <kbd>$1type=subcat</kbd> ou <kbd>$1type=file</kbd> peuvent  être utilisés à la place de <kbd>$1namespace=14</kbd> ou <kbd>6</kbd>.",
+       "apihelp-query+categorymembers-param-type": "Quel type de membres de la catégorie inclure. Ignoré quand <kbd>$1sort=timestamp</kbd> est positionné.",
        "apihelp-query+categorymembers-param-limit": "Le nombre maximal de pages à renvoyer.",
        "apihelp-query+categorymembers-param-sort": "Propriété par laquelle trier.",
        "apihelp-query+categorymembers-param-dir": "Dans quelle direction trier.",
-       "apihelp-query+categorymembers-param-start": "Horodatage auquel démarrer la liste. Peut être utilisé uniquement avec $1sort=timestamp.",
-       "apihelp-query+categorymembers-param-end": "Horodatage auquel terminer la liste. Peut être utilisé uniquement avec $1sort=timestamp.",
-       "apihelp-query+categorymembers-param-starthexsortkey": "Clé de tri à laquelle démarrer le listage, telle que renvoyée par $1prop=sortkey. Utilisable uniquement avec $1sort=sortkey.",
-       "apihelp-query+categorymembers-param-endhexsortkey": "Clé de tri à laquelle arrêter le listage, telle que renvoyée par $1prop=sortkey. Utilisable uniquement avec $1sort=sortkey.",
-       "apihelp-query+categorymembers-param-startsortkeyprefix": "Préfixe de la clé de tri à laquelle démarrer le listage. Utilisable uniquement avec $1sort=sortkey. Écrase $1starthexsortkey.",
+       "apihelp-query+categorymembers-param-start": "Horodatage auquel démarrer la liste. Peut être utilisé uniquement avec <kbd>$1sort=timestamp</kbd>.",
+       "apihelp-query+categorymembers-param-end": "Horodatage auquel terminer la liste. Peut être utilisé uniquement avec <kbd>$1sort=timestamp</kbd>.",
+       "apihelp-query+categorymembers-param-starthexsortkey": "Clé de tri à laquelle démarrer le listage, telle que renvoyée par <kbd>$1prop=sortkey</kbd>. Utilisable uniquement avec <kbd>$1sort=sortkey</kbd>.",
+       "apihelp-query+categorymembers-param-endhexsortkey": "Clé de tri à laquelle arrêter le listage, telle que renvoyée par <kbd>$1prop=sortkey</kbd>. Utilisable uniquement avec <kbd>$1sort=sortkey</kbd>.",
+       "apihelp-query+categorymembers-param-startsortkeyprefix": "Préfixe de la clé de tri à laquelle démarrer le listage. Utilisable uniquement avec <kbd>$1sort=sortkey</kbd>. Écrase <var>$1starthexsortkey</var>.",
        "apihelp-query+categorymembers-param-endsortkeyprefix": "Préfixe de la clé de tri AVANT laquelle se termine le listage (et non pas à, si cette valeur existe elle ne sera pas incluse !). Utilisable uniquement avec $1sort=sortkey. Écrase $1endhexsortkey.",
        "apihelp-query+categorymembers-param-startsortkey": "Utiliser plutôt $1starthexsortkey.",
        "apihelp-query+categorymembers-param-endsortkey": "Utiliser plutôt $1endhexsortkey.",
-       "apihelp-query+categorymembers-example-simple": "Obtenir les 10 premières pages de [[:Category:Physics]]",
-       "apihelp-query+categorymembers-example-generator": "Obtenir l’information sur les 10 premières pages de [[:Category:Physics]]",
+       "apihelp-query+categorymembers-example-simple": "Obtenir les 10 premières pages de <kbd>Category:Physics</kbd>.",
+       "apihelp-query+categorymembers-example-generator": "Obtenir l’information sur les 10 premières pages de <kbd>Category:Physics</kbd>.",
        "apihelp-query+contributors-description": "Obtenir la liste des contributeurs connectés et le nombre de contributeurs anonymes d’une page.",
        "apihelp-query+contributors-param-group": "Inclure uniquement les utilisateurs dans les groupes donnés. Ne pas inclure les groupes implicites ou auto-promus comme *, user ou autoconfirmed.",
        "apihelp-query+contributors-param-excludegroup": "Exclure les utilisateurs des groupes donnés. Ne pas inclure les groupes implicites ou auto-promus comme *, user ou autoconfirmed.",
        "apihelp-query+contributors-param-rights": "Inclure uniquement les utilisateurs ayant les droits donnés. Ne pas inclure les droits accordés par les groupes implicites ou auto-promus comme *, user ou autoconfirmed.",
        "apihelp-query+contributors-param-excluderights": "Exclure les utilisateurs ayant les droits donnés. Ne pas inclure les droits accordés par les groupes implicites ou auto-promus comme *, user ou autoconfirmed.",
        "apihelp-query+contributors-param-limit": "Combien de contributeurs renvoyer.",
-       "apihelp-query+contributors-example-simple": "Afficher les contributeurs dans la [[Main Page]]",
+       "apihelp-query+contributors-example-simple": "Afficher les contributeurs dans la <kbd>Main Page</kbd>.",
        "apihelp-query+deletedrevisions-description": "Obtenir des informations sur la révision supprimée.\n\nPeut être utilisé de différentes manières :\n# Obtenir les révisions supprimées pour un ensemble de pages, en donnant les titres ou les ids de page. Ordonné par titre  et horodatage.\n# Obtenir des données sur un ensemble de révisions supprimées en donnant leurs IDs et leurs ids de révision. Ordonné par ID de révision.",
        "apihelp-query+deletedrevisions-param-start": "L’horodatage auquel démarrer l’énumération. Ignoré lors du traitement d’une liste d’IDs de révisions.",
        "apihelp-query+deletedrevisions-param-end": "L’horodatage auquel arrêter l’énumération. Ignoré lors du traitement d’une liste d’IDs de révisions.",
        "apihelp-query+deletedrevisions-param-excludeuser": "Ne pas lister les révisions faites par cet utilisateur.",
        "apihelp-query+deletedrevisions-param-limit": "Le nombre maximal de révisions à lister.",
        "apihelp-query+deletedrevisions-param-prop": "Quelles propriétés obtenir :\n;revid:Ajoute l’ID de la révision supprimée.\n;parentid:Ajoute l’ID de la révision précédente de la page.\n;user:Ajoute l’utilisateur ayant fait la révision.\n;userid:Ajoute l’ID de l’utilisateur ayant fait la révision.\n;comment:Ajoute le commentaire de la révision.\n;parsedcomment:Ajoute le commentaire analysé de la révision.\n;minor:Marque si une révision est mineure.\n;len:Ajoute la taille (en octets) de la révision.\n;sha1:Ajoute le SHA-1 (base 16) de la révision.\n;content:Ajoute le contenu de la révision.\n;tags:Balises pour la révision.",
-       "apihelp-query+deletedrevisions-example-titles": "Lister les révisions supprimées de [[Main Page]] et [[Talk:Main Page]], avec leur contenu",
-       "apihelp-query+deletedrevisions-example-revids": "Lister les informations pour la révision supprimée 123456",
+       "apihelp-query+deletedrevisions-example-titles": "Lister les révisions supprimées des pages <kbd>Main Page</kbd> et <kbd>Talk:Main Page</kbd>, avec leur contenu.",
+       "apihelp-query+deletedrevisions-example-revids": "Lister les informations pour la révision supprimée <kbd>123456</kbd>.",
        "apihelp-query+deletedrevs-description": "Lister les révisions supprimées.\n\nOpère selon trois modes :\n# Lister les révisions supprimées pour les titres donnés, triées par horodatage.\n# Lister les contributions supprimées pour l’utilisateur donné, triées par horodatage (pas de titres spécifiés).\n# Lister toutes les révisions supprimées dans l’espace de noms donné, triées par titre et horodatage (aucun titre spécifié, $1user non positionné).\n\nCertains paramètres ne s’appliquent qu’à certains modes et sont ignorés dans les autres.",
        "apihelp-query+deletedrevs-paraminfo-modes": "{{PLURAL:$1|Mode|Modes}} : $2",
        "apihelp-query+deletedrevs-param-start": "L’horodatage auquel démarrer l’énumération.",
        "apihelp-query+deletedrevs-param-namespace": "Lister uniquement les pages dans cet espace de noms.",
        "apihelp-query+deletedrevs-param-limit": "Le nombre maximal de révisions à lister.",
        "apihelp-query+deletedrevs-param-prop": "Quelles propriétés obtenir :\n;revid:Ajoute l’ID de la révision supprimée.\n;parentid:Ajoute l’ID de la révision précédente de la page.\n;user:Ajoute l’utilisateur ayant fait la révision.\n;userid:Ajoute l’ID de l’utilisateur qui a fait la révision.\n;comment:Ajoute le commentaire de la révision.\n;parsedcomment:Ajoute le commentaire analysé de la révision.\n;minor:Marque si la révision est mineure.\n;len:Ajoute la longueur (en octets) de la révision.\n;sha1:Ajoute le SHA-1 (base 16) de la révision.\n;content:Ajoute le contenu de la révision.\n;token:<span class=\"apihelp-deprecated\">Obsolète.</span> Fournit le jeton de modification.\n;tags:Balises pour la révision.",
-       "apihelp-query+deletedrevs-example-mode1": "Lister les dernières révisions supprimées de Main Page et Talk:Main Page, avec le contenu (mode 1)",
-       "apihelp-query+deletedrevs-example-mode2": "Lister les 50 dernières contributions de Bob supprimées (mode 2)",
+       "apihelp-query+deletedrevs-example-mode1": "Lister les dernières révisions supprimées de des pages <kbd>Main Page</kbd> et <kbd>Talk:Main Page</kbd>, avec le contenu (mode 1).",
+       "apihelp-query+deletedrevs-example-mode2": "Lister les 50 dernières contributions de <kbd>Bob</kbd> supprimées (mode 2).",
        "apihelp-query+deletedrevs-example-mode3-main": "Lister les 50 premières révisions supprimées dans l’espace de noms principal (mode 3)",
        "apihelp-query+deletedrevs-example-mode3-talk": "Lister les 50 premières pages supprimées dans l’espace de noms {{ns:talk}} (mode 3).",
        "apihelp-query+disabled-description": "Ce module de requête a été désactivé.",
        "apihelp-query+embeddedin-param-dir": "La direction dans laquelle lister.",
        "apihelp-query+embeddedin-param-filterredir": "Comment filtrer les redirections.",
        "apihelp-query+embeddedin-param-limit": "Combien de pages renvoyer au total.",
-       "apihelp-query+embeddedin-example-simple": "Afficher les pages incluant [[Template:Stub]]",
-       "apihelp-query+embeddedin-example-generator": "Obteir des informations sur les pages incluant [[Template:Stub]]",
+       "apihelp-query+embeddedin-example-simple": "Afficher les pages incluant <kbd>Template:Stub</kbd>.",
+       "apihelp-query+embeddedin-example-generator": "Obteir des informations sur les pages incluant <kbd>Template:Stub</kbd>.",
        "apihelp-query+extlinks-description": "Renvoyer toutes les URLs externes (non interwikis) des pages données.",
        "apihelp-query+extlinks-param-limit": "Combien de liens renvoyer.",
-       "apihelp-query+extlinks-param-protocol": "Protocole de l’URL. Si vide et $1query est positionné, le protocole est « http ». Laisser à la fois ceci et $1query vide pour lister tous les liens externes.",
+       "apihelp-query+extlinks-param-protocol": "Protocole de l’URL. Si vide et <var>$1query</var> est positionné, le protocole est <kbd>http</kbd>. Laisser à la fois ceci et <var>$1query</var> vide pour lister tous les liens externes.",
        "apihelp-query+extlinks-param-query": "Rechercher une chaîne sans protocole. Utile pour vérifier si une certaine page contient une certaine URL externe.",
        "apihelp-query+extlinks-param-expandurl": "Étendre les URLs relatives au protocole avec le protocole canonique.",
-       "apihelp-query+extlinks-example-simple": "Obtenir une liste des liens externes de [[Main Page]]",
+       "apihelp-query+extlinks-example-simple": "Obtenir une liste des liens externes de <kbd>Main Page<kbd>.",
        "apihelp-query+exturlusage-description": "Énumérer les pages contenant une URL donnée.",
        "apihelp-query+exturlusage-param-prop": "Quelles informations inclure :\n;ids:Ajoute l’ID de la page.\n;title:Ajoute le titre et l’ID de l’espace de noms de la page.\n;url:Ajoute l’URL utilisée dans la page.",
-       "apihelp-query+exturlusage-param-protocol": "Protocole de l’URL. Si vide et que $1query est rempli, le protocole est « http ». Le laisser avec $1query vide pour lister tous les liens externes.",
+       "apihelp-query+exturlusage-param-protocol": "Protocole de l’URL. Si vide et que <var>$1query</var>  est rempli, le protocole est <kbd>http</kbd>. Le laisser avec <var>$1query</var>  vide pour lister tous les liens externes.",
        "apihelp-query+exturlusage-param-query": "Rechercher une chaîne sans protocole. Voyez [[Special:LinkSearch]]. Le laisser vide liste tous les liens externes.",
        "apihelp-query+exturlusage-param-namespace": "Les espaces de nom à énumérer.",
        "apihelp-query+exturlusage-param-limit": "Combien de pages renvoyer.",
        "apihelp-query+exturlusage-param-expandurl": "Étendre les URLs relatives au protocole avec le protocole canonique.",
-       "apihelp-query+exturlusage-example-simple": "Afficher les pages avec un lien vers http://www.mediawiki.org",
+       "apihelp-query+exturlusage-example-simple": "Afficher les pages avec un lien vers <kbd>http://www.mediawiki.org</kbd>.",
        "apihelp-query+filearchive-description": "Énumérer séquentiellement tous les fichiers supprimés.",
        "apihelp-query+filearchive-param-from": "Le titre de l’image auquel démarrer l’énumération.",
        "apihelp-query+filearchive-param-to": "Le titre de l’image auquel arrêter l’énumération.",
        "apihelp-query+filearchive-param-prop": "Quelle information obtenir sur l’image :\n;sha1:Ajoute le hachage SHA-1 pour l’image.\n;timestamp:Ajoute l÷’horodatage pour la version téléchargée.\n;user:Ajoute l’utilisateur qui a téléchargé la version de l’image.\n;size:Ajoute la taille de l’image en octets et la hauteur, la largeur et le nombre de page (si c’est applicable).\n;dimensions:Alias pour la taille.\n;description:Ajoute la description de la version de l’image.\n;parseddescription:Analyser la description de la version.\n;mime:Ajoute le MIME de l’image.\n;mediatype:Ajoute le type de média de l’image.\n;metadata:Liste les métadonnées Exif pour la version de l’image.\n;bitdepth:Ajoute la profondeur de bit de la version.\n;archivename:Ajoute le nom de fichier de la version d’archive pour les versions autres que la dernière.",
        "apihelp-query+filearchive-example-simple": "Afficher une liste de tous les fichiers supprimés",
        "apihelp-query+filerepoinfo-description": "Renvoyer les méta-informations sur les référentiels d’image configurés dans le wiki.",
-       "apihelp-query+filerepoinfo-param-prop": "Quelles propriétés du référentiel récupérer (il peut y en avoir plus de disponibles sur certains wikis) :\n;apiurl:URL de l’API du référentiel - utile pour obtenir les infos de l’image depuis l’hôte.\n;name:La clé du référentiel - utilisé par ex. dans $wgForeignFileRepos et les valeurs de retour de imageinfo.\n;displayname:Le nom lisible du wiki référentiel.\n;rooturl:URL racine des chemins d’image.\n;local:Si ce référentiel est le référentiel local ou non.",
+       "apihelp-query+filerepoinfo-param-prop": "Quelles propriétés du référentiel récupérer (il peut y en avoir plus de disponibles sur certains wikis) :\n;apiurl:URL de l’API du référentiel - utile pour obtenir les infos de l’image depuis l’hôte.\n;name:La clé du référentiel - utilisé par ex. dans les valeurs de retour de <var>[[mw:Manual:$wgForeignFileRepos|$wgForeignFileRepos]]</var> et [[Special:ApiHelp/query+imageinfo|imageinfo]].\n;displayname:Le nom lisible du wiki référentiel.\n;rooturl:URL racine des chemins d’image.\n;local:Si ce référentiel est le référentiel local ou non.",
        "apihelp-query+filerepoinfo-example-simple": "Obtenir l’information sur les référentiels de fichier",
        "apihelp-query+fileusage-description": "Trouver toutes les pages qui utilisent les fichiers donnés.",
        "apihelp-query+fileusage-param-prop": "Quelles propriétés obtenir :\n;pageid:ID de chaque page.\n;title:Titre de chaque page.\n;redirect:Marque si la page est une redirection.",
        "apihelp-query+imageinfo-param-end": "Horodatage auquel arrêter la liste.",
        "apihelp-query+imageinfo-param-urlwidth": "Si $2prop=url est défini, une URL vers une image à l’échelle de cette largeur sera renvoyée.\nPour des raisons de performance si cette option est utilisée, pas plus de $1 images mises à l’échelle seront renvoyées.",
        "apihelp-query+imageinfo-param-urlheight": "Similaire à $1urlwidth.",
-       "apihelp-query+imageinfo-param-metadataversion": "Version de métadonnées à utiliser. Si « latest » est spécifié, utiliser la dernière version. Par défaut à « 1 » pour la compatibilité ascendante.",
+       "apihelp-query+imageinfo-param-metadataversion": "Version de métadonnées à utiliser. Si <kbd>latest</kbd> est spécifié, utiliser la dernière version. Par défaut à <kbd>1</kbd> pour la compatibilité ascendante.",
        "apihelp-query+imageinfo-param-extmetadatalanguage": "Quelle langue pour analyser extmetadata. Cela affecte à la fois quelle traduction analyser, s’il y en a plusieurs, et comment les choses comme les nombres et d’autres valeurs sont mises en forme.",
        "apihelp-query+imageinfo-param-extmetadatamultilang": "Si des traductions pour la propriété extmetadata sont disponibles, les analyser toutes.",
        "apihelp-query+imageinfo-param-extmetadatafilter": "Si spécifié et non vide, seules ces clés seront renvoyées pour $1prop=extmetadata.",
-       "apihelp-query+imageinfo-param-urlparam": "Une chaîne de paramètre spécifique à l’analyseur. Par exemple, les PDFs peuvent utiliser « page15-100px ». $1urlwidth doit être utilisé et être cohérent avec $1urlparam.",
+       "apihelp-query+imageinfo-param-urlparam": "Une chaîne de paramètre spécifique à l’analyseur. Par exemple, les PDFs peuvent utiliser <kbd>page15-100px</kbd>. <var>$1urlwidth</var> doit être utilisé et être cohérent avec <var>$1urlparam</var>.",
        "apihelp-query+imageinfo-param-localonly": "Rechercher les fichiers uniquement dans le référentiel local.",
        "apihelp-query+imageinfo-example-simple": "Analyser les informations sur la version actuelle de [[:File:Albert Einstein Head.jpg]]",
        "apihelp-query+imageinfo-example-dated": "Analyser les informations sur les versions de [[:File:Test.jpg]] depuis 2008",
        "apihelp-query+info-paramvalue-prop-preload": "Fournit le texte renvoyé par EditFormPreloadText.",
        "apihelp-query+info-paramvalue-prop-displaytitle": "Fournit la manière dont le titre de la page est réellement affiché.",
        "apihelp-query+info-param-token": "Utiliser plutôt [[Special:ApiHelp/query+tokens|action=query&meta=tokens]].",
-       "apihelp-query+info-example-simple": "Obtenir des informations sur [[Main Page]]",
-       "apihelp-query+info-example-protection": "Obtenir des informations générale et de protection sur [[Main Page]]",
+       "apihelp-query+info-example-simple": "Obtenir des informations sur la page <kbd>Main Page</kbd>.",
+       "apihelp-query+info-example-protection": "Obtenir des informations générale et de protection sur la page <kbd>Main Page</kbd>.",
        "apihelp-query+iwbacklinks-description": "Trouver toutes les pages qui ont un lien vers le lien interwiki indiqué.\n\nPeut être utilisé pour trouver tous les liens avec un préfixe, ou tous les liens vers un titre (avec un préfixe donné). N’utiliser aucun paramètre revient en pratique à « tous les liens interwiki ».",
        "apihelp-query+iwbacklinks-param-prefix": "Préfixe pour l’interwiki.",
-       "apihelp-query+iwbacklinks-param-title": "Lien interwiki à rechercher. Doit être utilisé avec $1blprefix.",
+       "apihelp-query+iwbacklinks-param-title": "Lien interwiki à rechercher. Doit être utilisé avec <var>$1blprefix</var>.",
        "apihelp-query+iwbacklinks-param-limit": "Combien de pages renvoyer.",
        "apihelp-query+iwbacklinks-param-prop": "Quelles propriétés obtenir :\n;iwprefix:Ajoute le préfixe de l’interwiki.\n;iwtitle:Ajoute le titre de l’interwiki.",
        "apihelp-query+iwbacklinks-param-dir": "La direction dans laquelle lister.",
        "apihelp-query+iwlinks-param-prop": "Quelles propriétés supplémentaires obtenir pour chaque lien interlangue :\n;url:Ajoute l’URL complète.",
        "apihelp-query+iwlinks-param-limit": "Combien de liens interwiki renvoyer.",
        "apihelp-query+iwlinks-param-prefix": "Renvoyer uniquement les liens interwiki avec ce préfixe.",
-       "apihelp-query+iwlinks-param-title": "Lien interwiki à rechercher. Doit être utilisé avec $1prefix.",
+       "apihelp-query+iwlinks-param-title": "Lien interwiki à rechercher. Doit être utilisé avec <var>$1prefix</var>.",
        "apihelp-query+iwlinks-param-dir": "La direction dans laquelle lister.",
-       "apihelp-query+iwlinks-example-simple": "Obtenir les liens interwiki de [[Main Page]]",
+       "apihelp-query+iwlinks-example-simple": "Obtenir les liens interwiki de la page <kbd>Main Page</kbd>.",
        "apihelp-query+langbacklinks-description": "Trouver toutes les pages qui ont un lien vers le lien de langue indiqué.\n\nPeut être utilisé pour trouver tous les liens avec un code de langue, ou tous les liens vers un titre (avec une langue donnée). N’utiliser aucun paramètre revient à « tous les liens de langue ».\n\nNotez que cela peut ne pas prendre en compte les liens de langue ajoutés par les extensions.",
        "apihelp-query+langbacklinks-param-lang": "Langue pour le lien de langue.",
        "apihelp-query+langbacklinks-param-title": "Lien interlangue à rechercher. Doit être utilisé avec $1lang.",
        "apihelp-query+langbacklinks-example-generator": "Obtenir des informations sur les pages ayant un lien vers [[:fr:Test]]",
        "apihelp-query+langlinks-description": "Renvoie tous les liens interlangue des pages fournies.",
        "apihelp-query+langlinks-param-limit": "Combien de liens interlangue renvoyer.",
-       "apihelp-query+langlinks-param-url": "S’il faut récupérer l’URL complète (impossible à utiliser avec $1prop).",
-       "apihelp-query+langlinks-param-prop": "Quelles propriétés supplémentaires obtenir pour chaque lien interlangue :\n;url:Ajoute l’URL complète.\n;langname:Ajoute le nom localisé de la langue (au mieux). Utiliser $1inlanguagecode pour contrôler la langue.\n;autonym:Ajoute le nom natif de la langue.",
+       "apihelp-query+langlinks-param-url": "S’il faut récupérer l’URL complète (impossible à utiliser avec <var>$1prop</var>).",
+       "apihelp-query+langlinks-param-prop": "Quelles propriétés supplémentaires obtenir pour chaque lien interlangue :\n;url:Ajoute l’URL complète.\n;langname:Ajoute le nom localisé de la langue (au mieux). Utiliser <var>$1inlanguagecode</var> pour contrôler la langue.\n;autonym:Ajoute le nom natif de la langue.",
        "apihelp-query+langlinks-param-lang": "Renvoyer uniquement les liens interlangue avec ce code de langue.",
-       "apihelp-query+langlinks-param-title": "Lien à rechercher. Doit être utilisé avec $1lang.",
+       "apihelp-query+langlinks-param-title": "Lien à rechercher. Doit être utilisé avec <var>$1lang</var>.",
        "apihelp-query+langlinks-param-dir": "La direction dans laquelle énumérer.",
        "apihelp-query+langlinks-param-inlanguagecode": "Code de langue pour les noms de langue localisés.",
-       "apihelp-query+langlinks-example-simple": "Obtenir les liens interlangue de [[Main Page]]",
+       "apihelp-query+langlinks-example-simple": "Obtenir les liens interlangue de la page <kbd>Main Page</kbd>.",
        "apihelp-query+links-description": "Renvoie tous les liens des pages fournies.",
        "apihelp-query+links-param-namespace": "Afficher les liens uniquement dans ces espaces de nom.",
        "apihelp-query+links-param-limit": "Combien de liens renvoyer.",
        "apihelp-query+links-param-titles": "Lister uniquement les liens vers ces titres. Utile pour vérifier si une certaine page a un lien vers un titre donné.",
        "apihelp-query+links-param-dir": "La direction dans laquelle lister.",
-       "apihelp-query+links-example-simple": "Obtenir les liens de [[Main Page]]",
-       "apihelp-query+links-example-generator": "Obtenir des informations sur tous les liens de page dans [[Main Page]]",
+       "apihelp-query+links-example-simple": "Obtenir les liens de la page <kbd>Main Page</kbd>",
+       "apihelp-query+links-example-generator": "Obtenir des informations sur tous les liens de page dans <kbd>Main Page</kbd>.",
        "apihelp-query+links-example-namespaces": "Obtenir les liens de [[Main Page]] dans les espaces de nom Utilisateur et Modèle",
        "apihelp-query+linkshere-description": "Trouver toutes les pages ayant un lien vers les pages données.",
        "apihelp-query+linkshere-param-prop": "Quelles propriétés obtenir :\n;pageid:ID de chaque page.\n;title:Titre de chaque page.\n;redirect:Indique si la page est une redirection.",
        "apihelp-query+logevents-description": "Obtenir des événements des journaux.",
        "apihelp-query+logevents-param-prop": "Quelles propriétés obtenir :\n;ids:Ajoute l’ID de l’événement.\n;title:Ajoute le titre de la page pour l’événement.\n;type:Ajoute le type de l’événement.\n;user:Ajoute l’utilisateur responsable de l’événement.\n;userid:Ajoute l’ID de l’utilisateur responsable de l’événement.\n;timestamp:Ajoute l’horodatage de l’événement.\n;comment:Ajoute le commentaire de l’événement.\n;parsedcomment:Ajoute le commentaire analysé de l’événement.\n;details:Liste les détails supplémentaires sur l’événement.\n;tags:Liste les balises de l’événement.",
        "apihelp-query+logevents-param-type": "Filtrer les entrées du journal à ce seul type.",
-       "apihelp-query+logevents-param-action": "Filtrer les actions du journal à cette seule action. Écrase $1type. Des actions avec une astérisque de la forme « action/* » sont autorisées pour spécifier n’importe quelle chaîne à la place de l’astérisque.",
+       "apihelp-query+logevents-param-action": "Filtrer les actions du journal à cette seule action. Écrase <var>$1type</var>. Des actions avec une astérisque de la forme <var>$1type</var> sont autorisées pour spécifier n’importe quelle chaîne à la place de l’astérisque.",
        "apihelp-query+logevents-param-start": "L’horodatage auquel démarrer l’énumération.",
        "apihelp-query+logevents-param-end": "L’horodatage auquel arrêter l’énumération.",
        "apihelp-query+logevents-param-user": "Restreindre aux entrées générées par l’utilisateur spécifié.",
        "apihelp-query+logevents-example-simple": "Liste les entrées de journal récentes.",
        "apihelp-query+pagepropnames-description": "Lister les noms de toutes les propriétés de page utilisées sur le wiki.",
        "apihelp-query+pagepropnames-param-limit": "Le nombre maximal de noms à renvoyer.",
-       "apihelp-query+pagepropnames-example-simple": "Obtenir les 10 premiers noms de propriété",
+       "apihelp-query+pagepropnames-example-simple": "Obtenir les 10 premiers noms de propriété.",
        "apihelp-query+pageprops-description": "Obtenir diverses propriétés définies dans le contenu de la page.",
        "apihelp-query+pageprops-param-prop": "Lister uniquement ces propriétés. Utile pour vérifier si une certaine page utilise une certaine propriété de page.",
-       "apihelp-query+pageprops-example-simple": "Obtenir les propriétés de [[:Category:Foo]]",
+       "apihelp-query+pageprops-example-simple": "Obtenir les propriétés de <kbd>Category:Foo</kbd>.",
        "apihelp-query+pageswithprop-description": "Lister toutes les pages utilisant une propriété de page donnée.",
        "apihelp-query+pageswithprop-param-propname": "Propriété de page pour laquelle énumérer les pages.",
        "apihelp-query+pageswithprop-param-prop": "Quelles informations inclure :\n;ids:Ajoute l’ID de la page.\n;title:Ajoute le titre et l’ID de l’espace de noms de la page.\n;value:Ajoute la valeur de la propriété de page.",
        "apihelp-query+pageswithprop-param-limit": "Le nombre maximal de pages à renvoyer.",
        "apihelp-query+pageswithprop-param-dir": "Dans quelle direction trier.",
-       "apihelp-query+pageswithprop-example-simple": "Lister les 10 premières pages en utilisant &#123;&#123;DISPLAYTITLE:&#125;&#125;",
-       "apihelp-query+pageswithprop-example-generator": "Obtenir des informations sur les 10 premières pages utilisant _&#95;NOTOC_&#95;",
+       "apihelp-query+pageswithprop-example-simple": "Lister les 10 premières pages en utilisant <code>&#123;&#123;DISPLAYTITLE:&#125;&#125;</code>.",
+       "apihelp-query+pageswithprop-example-generator": "Obtenir des informations sur les 10 premières pages utilisant <code>_&#95;NOTOC_&#95;</code>.",
        "apihelp-query+prefixsearch-description": "Effectuer une recherche de préfixe sur les titres de page.",
        "apihelp-query+prefixsearch-param-search": "Chaîne de recherche.",
        "apihelp-query+prefixsearch-param-namespace": "Espaces de nom à rechercher.",
        "apihelp-query+prefixsearch-param-limit": "Nombre maximal de résultats à renvoyer.",
        "apihelp-query+prefixsearch-param-offset": "Nombre de résultats à sauter.",
-       "apihelp-query+prefixsearch-example-simple": "Rechercher les titres de page commençant par « meaning »",
+       "apihelp-query+prefixsearch-example-simple": "Rechercher les titres de page commençant par <kbd>meaning</kbd>.",
        "apihelp-query+protectedtitles-description": "Lister tous les titres protégés en création.",
        "apihelp-query+protectedtitles-param-namespace": "Lister uniquement les titres dans ces espaces de nom.",
        "apihelp-query+protectedtitles-param-level": "Lister uniquement les titres avec ces niveaux de protection.",
        "apihelp-query+recentchanges-param-excludeuser": "Ne pas lister les modifications par cet utilisateur.",
        "apihelp-query+recentchanges-param-tag": "Lister uniquement les modifications marquées avec cette balise.",
        "apihelp-query+recentchanges-param-prop": "Inclure des informations supplémentaires :\n;user:Ajoute l’utilisateur responsable de la modification et marque si c’est une adresse IP.\n;userid:Ajoute l’ID de l’utilisateur responsable de la modification.\n;comment:Ajoute le commentaire de la modification.\n;parsedcomment:Ajoute le commentaire analysé pour la modification.\n;flags:Ajoute les balises de la modification.\n;timestamp:Ajoute l’horodatage de la modification.\n;title:Ajoute le titre de la page modifiée.\n;ids:Ajoute l’ID de la page, l’ID des modifications récentes et l’ID de l’ancienne et la nouvelle révisions.\n;sizes:Ajoute l’ancienne et la nouvelle tailles de la page en octets.\n;redirect:Marque la modification si la page est une redirection.\n;patrolled:Marque les modifications patrouillables comme patrouillées ou non.\n;loginfo:Ajoute les informations du journal (Id du journal, type de trace, etc.) aux entrées du journal.\n;tags:Liste les balises de l’entrée.\n;sha1:Ajoute la somme de contrôle du contenu pour les entrées associées à une révision.",
-       "apihelp-query+recentchanges-param-token": "Utiliser plutôt [[Special:ApiHelp/query+tokens|action=query&meta=tokens]].",
+       "apihelp-query+recentchanges-param-token": "Utiliser plutôt <kbd>[[Special:ApiHelp/query+tokens|action=query&meta=tokens]]</kbd>.",
        "apihelp-query+recentchanges-param-show": "Afficher uniquement les éléments correspondant à ces critères. Par exemple, pour voir uniquement les modifications mineures par des utilisateurs connectés, mettre $1show=minor|!anon.",
        "apihelp-query+recentchanges-param-limit": "Combien de modifications renvoyer au total.",
        "apihelp-query+recentchanges-param-type": "Quels types de modification afficher.",
        "apihelp-query+revisions-param-excludeuser": "Exclure les révisions faites par l’utilisateur.",
        "apihelp-query+revisions-param-tag": "Lister uniquement les révisions marquées avec cette balise.",
        "apihelp-query+revisions-param-token": "Quels jetons obtenir pour chaque révision.",
-       "apihelp-query+revisions-example-content": "Obtenir des données avec le contenu pour la dernière révision des titres « API » et « Page principale »",
-       "apihelp-query+revisions-example-last5": "Obtenir les 5 dernières révisions de la « Page principale »",
-       "apihelp-query+revisions-example-first5": "Obtenir les 5 premières révisions de la « Page principale »",
-       "apihelp-query+revisions-example-first5-after": "Obtenir les 5 premières révisions de la « Page principale » faites après le 01/05/2006",
-       "apihelp-query+revisions-example-first5-not-localhost": "Obtenir les 5 premières révisions de la « Page principale » qui n’ont pas été faites par l’utilisateur anonyme « 127.0.0.1 »",
-       "apihelp-query+revisions-example-first5-user": "Obtenir les 5 premières révisions de la « Page principale » qui ont été faites par l’utilisateur « MédiaWiki par défaut »",
+       "apihelp-query+revisions-example-content": "Obtenir des données avec le contenu pour la dernière révision des titres <kbd>API</kbd> et <kbd>Page principale</kbd>.",
+       "apihelp-query+revisions-example-last5": "Obtenir les 5 dernières révisions de la <kbd>Main Page</kbd>.",
+       "apihelp-query+revisions-example-first5": "Obtenir les 5 premières révisions de la <kbd>Page principale</kbd>.",
+       "apihelp-query+revisions-example-first5-after": "Obtenir les 5 premières révisions de la <kbd>Page principale</kbd> faites après le 01/05/2006.",
+       "apihelp-query+revisions-example-first5-not-localhost": "Obtenir les 5 premières révisions de la <kbd>Page principale</kbd> qui n’ont pas été faites par l’utilisateur anonyme <kbd>127.0.0.1</kbd>.",
+       "apihelp-query+revisions-example-first5-user": "Obtenir les 5 premières révisions de la <kbd>Page principale</kbd> qui ont été faites par l’utilisateur <kbd>MédiaWiki par défaut</kbd>.",
        "apihelp-query+revisions+base-param-prop": "Quelles propriétés obtenir pour chaque révision :\n;ids:L’ID de la révision.\n;flags:Marques de la révision (mineure).\n;timestamp:L’horodatage de la révision.\n;user:Utilisateur ayant fait la révision.\n;userid:ID de l’utilisateur ayant créé la révision.\n;size:Taille (en octets) de la révision.\n;sha1:SHA-1 (base 16) de la révision.\n;contentmodel:ID du modèle de contenu de la révision.\n;comment:Commentaire par l’utilisateur de la révision.\n;parsedcomment:Commentaire analysé par l’utilisateur de la révision.\n;content:Texte de la révision.\n;tags:Balises de la révision.",
        "apihelp-query+revisions+base-param-limit": "Limiter le nombre de révisions retournées.",
        "apihelp-query+revisions+base-param-expandtemplates": "Développer les modèles dans le contenu de la révision (nécessite $1prop=content).",
        "apihelp-query+revisions+base-param-generatexml": "Générer l’arbre d’analyse XML pour le contenu de la révision (nécessite $1prop=content).",
        "apihelp-query+revisions+base-param-parse": "Analyser le contenu de la révision (nécessite $1prop=content). Pour des raisons de performance, si cette option est utilisée, $1limit est forcé à 1.",
        "apihelp-query+revisions+base-param-section": "Récupérer uniquement le contenu de ce numéro de section.",
-       "apihelp-query+revisions+base-param-diffto": "ID de révision à comparer à chaque révision. Utiliser « prev », « next » et « cur » pour la version précédente, suivante et actuelle respectivement.",
-       "apihelp-query+revisions+base-param-difftotext": "Texte auquel comparer chaque révision. Compare uniquement un nombre limité de révisions. Écrase $1diffto. Si $1section est positionné, seule cette section sera comparée avec ce texte",
-       "apihelp-query+revisions+base-param-contentformat": "Format de sérialisation utilisé pour $1difftotext et attendu pour la sortie du contenu.",
+       "apihelp-query+revisions+base-param-diffto": "ID de révision à comparer à chaque révision. Utiliser <kbd>prev</kbd>, <kbd>next</kbd> et <kbd>cur</kbd> pour la version précédente, suivante et actuelle respectivement.",
+       "apihelp-query+revisions+base-param-difftotext": "Texte auquel comparer chaque révision. Compare uniquement un nombre limité de révisions. Écrase <var>$1diffto</var>. Si <var>$1section</var> est positionné, seule cette section sera comparée avec ce texte",
+       "apihelp-query+revisions+base-param-contentformat": "Format de sérialisation utilisé pour <var>$1difftotext</var> et attendu pour la sortie du contenu.",
        "apihelp-query+search-description": "Effectuer une recherche en texte intégral.",
        "apihelp-query+search-param-search": "Rechercher les titres (ou le contenu) de toutes les pages ayant cette valeur.",
        "apihelp-query+search-param-namespace": "Rechercher uniquement dans ces espaces de nom.",
        "apihelp-query+search-param-limit": "Combien de pages renvoyer au total.",
        "apihelp-query+search-param-interwiki": "Inclure les résultats interwiki dans la recherche, s’ils sont disponibles.",
        "apihelp-query+search-param-backend": "Quel serveur de recherche utiliser, si ce n’est pas celui par défaut.",
-       "apihelp-query+search-example-simple": "Rechercher « signification »",
-       "apihelp-query+search-example-text": "Rechercher des textes pour « signification »",
-       "apihelp-query+search-example-generator": "Obtenir les informations sur les pages renvoyées par une recherche de « signification »",
+       "apihelp-query+search-example-simple": "Rechercher  <kbd>signification </kbd>.",
+       "apihelp-query+search-example-text": "Rechercher des textes pour <kbd>signification</kbd>.",
+       "apihelp-query+search-example-generator": "Obtenir les informations sur les pages renvoyées par une recherche de <kbd>signification</kbd>.",
        "apihelp-query+siteinfo-description": "Renvoyer les informations générales sur le site.",
-       "apihelp-query+siteinfo-param-prop": "Quelles informations obtenir :\n;general:Information globale du système.\n;namespaces:Liste des espaces de nom déclarés et leur nom canonique.\n;namespacealiases:Liste des alias des espaces de nom déclarés.\n;specialpagealiases:Liste des alias des pages spéciales.\n;magicwords:Liste des mots magiques et leurs alias.\n;statistics:Renvoie les statistiques du site.\n;interwikimap:Renvoie la correspondance interwiki (éventuellement filtrée, (éventuellement localisée en utilisant $1inlanguagecode)).\n;dbrepllag:Renvoie le serveur de base de donnée avec la plus grande latence de réplication.\n;usergroups:Renvoie les groupes utilisateur et les droits associés.\n;extensions:Renvoie les extensions installées sur le wiki.\n;fileextensions:Renvoie la liste des extensions de fichier autorisées au téléchargement.\n;rightsinfo:Renvoie l’information sur les droits du wiki (sa licence), si elle est disponible.\n;restrictions:Renvoie l’information sur les types de restriction disponibles (protection).\n;languages:Renvoie une liste des langues que supporte MédiaWiki (éventuellement localisé en utilisant $1inlanguagecode).\n;skins:Renvoie une liste de tous les habillages activés (éventuellement localisé en utilisant $1inlanguagecode, sinon dans la langue du contenu).\n;extensiontags:Renvoie une liste des balises d’extension de l’analyseur.\n;functionhooks:Renvoie une liste des accroches de fonction de l’analyseur.\n;showhooks:Renvoie une liste de toutes les accroches souscrites (contenu de $wgHooks).\n;variables:Renvoie une liste des IDs de variable.\n;protocols:Renvoie une liste des protocoles qui sont autorisés dans les liens externes.\n;defaultoptions:Renvoie les valeurs par défaut pour les préférences utilisateur.",
+       "apihelp-query+siteinfo-param-prop": "Quelles informations obtenir :\n;general:Information globale du système.\n;namespaces:Liste des espaces de nom déclarés et leur nom canonique.\n;namespacealiases:Liste des alias des espaces de nom déclarés.\n;specialpagealiases:Liste des alias des pages spéciales.\n;magicwords:Liste des mots magiques et leurs alias.\n;statistics:Renvoie les statistiques du site.\n;interwikimap:Renvoie la correspondance interwiki (éventuellement filtrée, éventuellement localisée en utilisant <var>$1inlanguagecode</var>).\n;dbrepllag:Renvoie le serveur de base de donnée avec la plus grande latence de réplication.\n;usergroups:Renvoie les groupes utilisateur et les droits associés.\n;extensions:Renvoie les extensions installées sur le wiki.\n;fileextensions:Renvoie la liste des extensions de fichier autorisées au téléchargement.\n;rightsinfo:Renvoie l’information sur les droits du wiki (sa licence), si elle est disponible.\n;restrictions:Renvoie l’information sur les types de restriction disponibles (protection).\n;languages:Renvoie une liste des langues que supporte MédiaWiki (éventuellement localisé en utilisant <var>$1inlanguagecode</var>).\n;skins:Renvoie une liste de tous les habillages activés (éventuellement localisé en utilisant <var>$1inlanguagecode</var>, sinon dans la langue du contenu).\n;extensiontags:Renvoie une liste des balises d’extension de l’analyseur.\n;functionhooks:Renvoie une liste des accroches de fonction de l’analyseur.\n;showhooks:Renvoie une liste de toutes les accroches souscrites (contenu de <var>[[mw:Manual:$wgHooks|$wgHooks]]</var>).\n;variables:Renvoie une liste des IDs de variable.\n;protocols:Renvoie une liste des protocoles qui sont autorisés dans les liens externes.\n;defaultoptions:Renvoie les valeurs par défaut pour les préférences utilisateur.",
        "apihelp-query+siteinfo-param-filteriw": "Renvoyer uniquement les entrées locales ou uniquement les non locales de la correspondance interwiki.",
        "apihelp-query+siteinfo-param-showalldb": "Lister tous les serveurs de base de données, pas seulement celui avec la plus grande latence.",
        "apihelp-query+siteinfo-param-numberingroup": "Liste le nombre d’utilisateurs dans les groupes.",
        "apihelp-query+templates-param-templates": "Lister uniquement ces modèles. Utile pour vérifier si une certaine page utilise un modèle donné.",
        "apihelp-query+templates-param-dir": "La direction dans laquelle lister.",
        "apihelp-query+templates-example-simple": "Obtenir les modèles de [[Main Page]]",
-       "apihelp-query+templates-example-generator": "Obtenir des informations sur les pages modèle de [[Main Page]]",
+       "apihelp-query+templates-example-generator": "Obtenir des informations sur les pages modèle utilisé sur <kbd>Main Page</kbd>.",
        "apihelp-query+templates-example-namespaces": "Obtenir les modèles de [[Main Page]] dans les espaces de nom Utilisateur et Modèle",
        "apihelp-query+tokens-description": "Récupère les jetons pour les actions de modification de données.",
        "apihelp-query+tokens-param-type": "Types de jeton à demander.",
        "apihelp-query+transcludedin-param-namespace": "Inclure uniquement les pages dans ces espaces de nom.",
        "apihelp-query+transcludedin-param-limit": "Combien en renvoyer.",
        "apihelp-query+transcludedin-param-show": "Afficher uniquement les éléments qui correspondent à ces critères:\n;redirect:Afficher uniquement les redirections.\n;!redirect:Afficher uniquement les non-redirections.",
-       "apihelp-query+transcludedin-example-simple": "Obtenir une liste des pages incluant [[Main Page]]",
-       "apihelp-query+transcludedin-example-generator": "Obtenir des informations sur les pages incluant [[Main Page]]",
+       "apihelp-query+transcludedin-example-simple": "Obtenir une liste des pages incluant <kbd>Main Page</kbd>.",
+       "apihelp-query+transcludedin-example-generator": "Obtenir des informations sur les pages incluant <kbd>Main Page</kbd>.",
        "apihelp-query+usercontribs-description": "Obtenir toutes les modifications par un utilisateur.",
        "apihelp-query+usercontribs-param-limit": "Le nombre maximal de contributions à renvoyer.",
        "apihelp-query+usercontribs-param-start": "L’horodatage auquel démarrer le retour.",
        "apihelp-query+usercontribs-param-userprefix": "Récupérer les contributions pour tous les utilisateurs dont les noms commencent par cette valeur. Écrase $1user.",
        "apihelp-query+usercontribs-param-namespace": "Lister uniquement les contributions dans ces espaces de nom.",
        "apihelp-query+usercontribs-param-prop": "Inclure des informations supplémentaires:\n;ids:Ajoute l’ID de page et l’ID de révision.\n;title:Ajoute le titre et l’ID d’espace de noms de la page.\n;timestamp:Ajoute l’horodatage de la modification.\n;comment:Ajoute le commentaire de la modification.\n;parsedcomment:Ajoute le commentaire analysé de la modification.\n;size:Ajoute la nouvelle taille de la modification.\n;sizediff:Ajoute le delta de taille de la modification par rapport à son parent.\n;flags:Ajoute les marques de la modification.\n;patrolled:Marque les modifications patrouillées.\n;tags:Liste les balises de la modification.",
-       "apihelp-query+usercontribs-param-show": "Afficher uniquement les éléments correspondant à ces critères, par ex. les modifications non mineures uniquement : $2show=!minor.\n\nSi $2show=patrolled ou $2show=!patrolled est positionné, les révisions plus anciennes que [https://www.mediawiki.org/wiki/Manual:$wgRCMaxAge $wgRCMaxAge] ($1 {{PLURAL:$1|seconde|secondes}}) ne seront pas affichées.",
+       "apihelp-query+usercontribs-param-show": "Afficher uniquement les éléments correspondant à ces critères, par ex. les modifications non mineures uniquement : <kbd>$2show=!minor</kbd>.\n\nSi <kbd>$2show=patrolled</kbd> ou <kbd>$2show=!patrolled</kbd> est positionné, les révisions plus anciennes que <var>[[mw:Manual:$wgRCMaxAge|$wgRCMaxAge]]</var> ($1 {{PLURAL:$1|seconde|secondes}}) ne seront pas affichées.",
        "apihelp-query+usercontribs-param-tag": "Lister uniquement les révisions marquées avec cette balise.",
        "apihelp-query+usercontribs-param-toponly": "Lister uniquement les modifications qui sont la dernière révision.",
-       "apihelp-query+usercontribs-example-user": "Afficher les contributions de [[User:Exemple]]",
-       "apihelp-query+usercontribs-example-ipprefix": "Afficher les contributions de toutes les adresses IP avec le préfixe « 192.0.2. »",
+       "apihelp-query+usercontribs-example-user": "Afficher les contributions de l'utilisateur <kbd>Exemple</kbd>.",
+       "apihelp-query+usercontribs-example-ipprefix": "Afficher les contributions de toutes les adresses IP avec le préfixe <kbd>192.0.2.</kbd>.",
        "apihelp-query+userinfo-description": "Obtenir de l’information sur l’utilisateur courant.",
-       "apihelp-query+userinfo-param-prop": "Quelles informations inclure :\n;blockinfo:Marque si l’utilisateur actuel est bloqué, par qui, et pour quelle raison.\n;hasmsg:Ajoute une balise « message » si l’utilisateur actuel a des messages en cours.\n;groups:Liste tous les groupes auxquels appartient l’utilisateur actuel.\n;implicitgroups:Liste tous les groupes dont l’utilisateur actuel est automatiquement membre.\n;rights:Liste tous les droits qu’a l’utilisateur actuel.\n;changeablegroups:Liste les groupes pour lesquels l’utilisateur actuel peut ajouter ou supprimer.\n;options:Liste toutes les préférences qu’a défini l’utilisateur actuel.\n;preferencestoken:OBSOLETE ! Obtient un jeton pour modifier les préférences de l’utilisateur actuel.\n;editcount:Ajoute le compteur de modifications de l’utilisateur actuel.\n;ratelimits:Liste toutes les limites de débit s’appliquant à l’utilisateur actuel.\n;realname:Ajoute le vrai nom de l’utilisateur actuel.\n;email:Ajoute l’adresse de courriel de l’utilisateur et sa date d’authentification.\n;acceptlang:Renvoie en écho l’entête Accept-Language envoyé par le client dans un format structuré.\n;registrationdate:Ajoute la date d’inscription de l’utilisateur.\n;unreadcount:Ajoute le compteur de pages non lues de la liste de suivi de l’utilisateur (au maximum $1 ; renvoie « $2 » s’il y en a plus).",
+       "apihelp-query+userinfo-param-prop": "Quelles informations inclure :\n;blockinfo:Marque si l’utilisateur actuel est bloqué, par qui, et pour quelle raison.\n;hasmsg:Ajoute une balise <samp>message</samp> si l’utilisateur actuel a des messages en cours.\n;groups:Liste tous les groupes auxquels appartient l’utilisateur actuel.\n;implicitgroups:Liste tous les groupes dont l’utilisateur actuel est automatiquement membre.\n;rights:Liste tous les droits qu’a l’utilisateur actuel.\n;changeablegroups:Liste les groupes pour lesquels l’utilisateur actuel peut ajouter ou supprimer.\n;options:Liste toutes les préférences qu’a défini l’utilisateur actuel.\n;preferencestoken:<span class=\"apihelp-deprecated\">Obsolete.</span> Obtient un jeton pour modifier les préférences de l’utilisateur actuel.\n;editcount:Ajoute le compteur de modifications de l’utilisateur actuel.\n;ratelimits:Liste toutes les limites de débit s’appliquant à l’utilisateur actuel.\n;realname:Ajoute le vrai nom de l’utilisateur actuel.\n;email:Ajoute l’adresse de courriel de l’utilisateur et sa date d’authentification.\n;acceptlang:Renvoie en écho l’entête <code>Accept-Language</code> envoyé par le client dans un format structuré.\n;registrationdate:Ajoute la date d’inscription de l’utilisateur.\n;unreadcount:Ajoute le compteur de pages non lues de la liste de suivi de l’utilisateur (au maximum $1 ; renvoie <samp>$2</samp> s’il y en a plus).",
        "apihelp-query+userinfo-example-simple": "Obtenir de l’information sur l’utilisateur actuel",
        "apihelp-query+userinfo-example-data": "Obtenir des informations supplémentaires sur l’utilisateur actuel",
        "apihelp-query+users-description": "Obtenir des information sur une liste d’utilisateurs",
        "apihelp-query+users-param-prop": "Quelles informations inclure :\n;blockinfo:Marque si l’utilisateur est bloqué, par qui, et pour quelle raison.\n;groups:Liste tous les groupes auquel appartient chaque utilisateur.\n;implicitgroups:Liste tous les groupes dont un utilisateur est automatiquement membre.\n;rights:Liste tous les droits qu’a un utilisateur.\n;editcount:Ajoute le compteur de modifications de l’utilisateur.\n;registration:Ajoute l’horodatage d’inscription de l’utilisateur.\n;emailable:Marque si l’utilisateur peut et veut recevoir des courriels via [[Special:Emailuser]].\n;gender:Marque le sexe de l’utilisateur. Renvoie « male », « female », ou « unknown ».",
        "apihelp-query+users-param-users": "Une liste des utilisateurs sur lesquels obtenir de l’information.",
-       "apihelp-query+users-param-token": "Utiliser plutôt [[Special:ApiHelp/query+tokens|action=query&meta=tokens]].",
-       "apihelp-query+users-example-simple": "Renvoyer des informations pour [[User:Exemple]]",
+       "apihelp-query+users-param-token": "Utiliser plutôt <kbd>[[Special:ApiHelp/query+tokens|action=query&meta=tokens]]</kbd>.",
+       "apihelp-query+users-example-simple": "Renvoyer des informations pour l'utilisateur <kbd>Exemple</kbd>.",
        "apihelp-query+watchlist-description": "Obtenir les modifications récentes des pages dans la liste de suivi de l’utilisateur connecté.",
        "apihelp-query+watchlist-param-allrev": "Inclure les multiples révisions de la même page dans l’intervalle de temps fourni.",
        "apihelp-query+watchlist-param-start": "L’horodatage auquel démarrer l’énumération.",
        "apihelp-query+watchlist-example-allrev": "Chercher les informations sur toutes les modifications récentes des pages de la liste de suivi de l’utilisateur actuel",
        "apihelp-query+watchlist-example-generator": "Chercher l’information de la page sur les pages récemment modifiées de la liste de suivi de l’utilisateur actuel",
        "apihelp-query+watchlist-example-generator-rev": "Chercher l’information de la révision pour les modifications récentes des pages de la liste de suivi de l’utilisateur actuel",
-       "apihelp-query+watchlist-example-wlowner": "Lister la révision de tête des pages récemment modifiées de la liste de suivi de [[User:Exemple]]",
+       "apihelp-query+watchlist-example-wlowner": "Lister la révision de tête des pages récemment modifiées de la liste de suivi de l'utilisateur <kbd>Exemple</kbd>.",
        "apihelp-query+watchlistraw-description": "Obtenir toutes les pages de la liste de suivi de l’utilisateur connecté.",
        "apihelp-query+watchlistraw-param-namespace": "Lister uniquement les pages dans les espaces de nom fournis.",
        "apihelp-query+watchlistraw-param-limit": "Combien de résultats renvoyer au total par requête.",
        "apihelp-revisiondelete-param-show": "Quoi démasquer pour chaque révision",
        "apihelp-revisiondelete-param-suppress": "S’il faut supprimer les données aux administrateurs comme aux autres.",
        "apihelp-revisiondelete-param-reason": "Motif de suppression ou d’annulation de suppression.",
-       "apihelp-revisiondelete-example-revision": "Masquer le contenu de la révision 12345 de la Page principale",
-       "apihelp-revisiondelete-example-log": "Masquer toutes les données de l’entrée de journal 67890 avec le motif « Violation de Biographie de Personne Vivante »",
+       "apihelp-revisiondelete-example-revision": "Masquer le contenu de la révision <kbd>12345</kbd> de la page <kbd>Main Page</kbd>",
+       "apihelp-revisiondelete-example-log": "Masquer toutes les données de l’entrée de journal <kbd>67890</kbd> avec le motif <kbd>Violation de Biographie de Personne Vivante</kbd>.",
        "apihelp-rollback-description": "Annuler la dernière modification de la page.\n\nSi le dernier utilisateur à avoir modifié la page a fait plusieurs modifications sur une ligne, elles seront toutes annulées.",
        "apihelp-rollback-param-title": "Titre de la page que vous voulez restaurer. Impossible à utiliser avec $1pageid.",
        "apihelp-rollback-param-pageid": "ID de la page que vous voulez restaurer. Impossible à utiliser avec $1title.",
        "apihelp-rollback-param-summary": "Personnaliser le résumé de la modification. S’il est vide, le résumé par défaut sera utilisé.",
        "apihelp-rollback-param-markbot": "Marquer les modifications annulées et les modifications annulées comme robot.",
        "apihelp-rollback-param-watchlist": "Ajouter ou supprimer la page de votre liste de suivi sans condition, utiliser les préférences ou ne pas modifier le suivi.",
-       "apihelp-rollback-example-simple": "Annuler les dernières modifications à [[Main Page]] par l’utilisateur Exemple",
-       "apihelp-rollback-example-summary": "Annuler les dernières modifications sur [[Main Page]] par l’utilisateur à l’adresse IP 192.0.2.5 avec le résumé « Annulation de vandalisme », et marquer ces modifications et l’annulation comme « robot »",
+       "apihelp-rollback-example-simple": "Annuler les dernières modifications à [<kbd>Main Page</kbd> par l’utilisateur <kbd>Exemple</kbd>.",
+       "apihelp-rollback-example-summary": "Annuler les dernières modifications de la page <kbd>Main Page</kbd> par l’utilisateur à l’adresse IP <kbd>192.0.2.5</kbd> avec le résumé <kbd>Annulation de vandalisme<kbd>, et marquer ces modifications et l’annulation comme modifications de robots.",
        "apihelp-rsd-description": "Exporter un schéma RSD (Découverte Très Simple).",
        "apihelp-rsd-example-simple": "Exporter le schéma RSD",
        "apihelp-setnotificationtimestamp-description": "Mettre à jour l’horodatage de notification pour les pages suivies.\n\nCela affecte la mise en évidence des pages modifiées dans la liste de suivi et l’historique, et l’envoi de courriel quand la préférence « M’envoyer un courriel quand une page de ma liste de suivi est modifiée » est activée.",
        "apihelp-setnotificationtimestamp-param-torevid": "Révision pour laquelle fixer l’horodatage de notification (une page uniquement).",
        "apihelp-setnotificationtimestamp-param-newerthanrevid": "Révision pour fixer l’horodatage de notification plus récent (une page uniquement).",
        "apihelp-setnotificationtimestamp-example-all": "Réinitialiser l’état de notification pour toute la liste de suivi",
-       "apihelp-setnotificationtimestamp-example-page": "Réinitialiser l’état de notification pour la « Page principale »",
-       "apihelp-setnotificationtimestamp-example-pagetimestamp": "Fixer l’horodatage de notification pour « Page principale » afin que toutes les modifications depuis le 1 janvier 2012 soient non vues",
-       "apihelp-setnotificationtimestamp-example-allpages": "Réinitialiser l’état de notification sur les pages dans l’espace de noms Utilisateur",
+       "apihelp-setnotificationtimestamp-example-page": "Réinitialiser l’état de notification pour la <kbd>Page principale<kbd>.",
+       "apihelp-setnotificationtimestamp-example-pagetimestamp": "Fixer l’horodatage de notification pour <kbd>Page principale</kbd> afin que toutes les modifications depuis le 1 janvier 2012 soient non vues",
+       "apihelp-setnotificationtimestamp-example-allpages": "Réinitialiser l’état de notification sur les pages dans l’espace de noms <kbd>{{ns:user}}</kbd>.",
        "apihelp-tokens-description": "Obtenir les jetons pour les actions modifiant les données.\n\nCe module est obsolète, remplacé par [[Special:ApiHelp/query+tokens|action=query&meta=tokens]].",
        "apihelp-tokens-param-type": "Types de jeton à demander.",
        "apihelp-tokens-example-edit": "Récupérer un jeton de modification (par défaut).",
        "apihelp-tokens-example-emailmove": "Récupérer un jeton de courriel et un jeton de déplacement.",
        "apihelp-unblock-description": "Débloquer un utilisateur.",
-       "apihelp-unblock-param-id": "ID du blocage à lever (obtenu via list=blocks). Impossible à utiliser avec $1user.",
-       "apihelp-unblock-param-user": "Nom d’utilisateur, adresse IP ou plage d’adresse IP à débloquer. Impossible à utiliser avec $1id.",
+       "apihelp-unblock-param-id": "ID du blocage à lever (obtenu via <kbd>list=blocks</kbd>). Impossible à utiliser avec <var>$1user</var>.",
+       "apihelp-unblock-param-user": "Nom d’utilisateur, adresse IP ou plage d’adresse IP à débloquer. Impossible à utiliser avec <var>$1id</var>.",
        "apihelp-unblock-param-reason": "Motif de déblocage.",
-       "apihelp-unblock-example-id": "Lever le blocage d’ID #105",
-       "apihelp-unblock-example-user": "Débloquer l’utilisateur Bob avec le motif « Désolé Bob »",
+       "apihelp-unblock-example-id": "Lever le blocage d’ID #<kbd>105</kbd>.",
+       "apihelp-unblock-example-user": "Débloquer l’utilisateur <kbd>Bob</kbd> avec le motif <kbd>Désolé Bob</kbd>.",
        "apihelp-undelete-description": "Restaurer les révisions d’une page supprimée.\n\nUne liste des révisions supprimées (avec les horodatages) peut être récupérée via [[Special:ApiHelp/query+deletedrevs|list=deletedrevs]], et une liste d’IDs de fichier supprimé peut être récupérée via [[Special:ApiHelp/query+filearchive|list=filearchive]].",
        "apihelp-undelete-param-title": "Titre de la page à restaurer.",
        "apihelp-undelete-param-reason": "Motif de restauration.",
-       "apihelp-undelete-param-timestamps": "Horodatages des révisions à restaurer. Si $1timestamps et $1fileids sont vides, toutes seront restaurées.",
-       "apihelp-undelete-param-fileids": "IDs des révisions de fichier à restaurer. Si $1timestamps et $1fileids sont vides, toutes seront restaurées.",
+       "apihelp-undelete-param-timestamps": "Horodatages des révisions à restaurer. Si <var>$1timestamps</var> et <var>$1fileids</var> sont vides, toutes seront restaurées.",
+       "apihelp-undelete-param-fileids": "IDs des révisions de fichier à restaurer. Si <var>$1timestamps</var> et <var>$1fileids</var> sont vides, toutes seront restaurées.",
        "apihelp-undelete-param-watchlist": "Ajouter ou supprimer la page de votre liste de suivi sans condition, utiliser les préférences ou ne pas modifier le suivi.",
-       "apihelp-undelete-example-page": "Annuler la suppression de [[Main Page]]",
-       "apihelp-undelete-example-revisions": "Annuler la suppression de deux révisions de [[Main Page]]",
-       "apihelp-upload-description": "Télécharger un fichier, ou obtenir l’état des téléchargements en cours.\n\nPlusieurs méthodes sont disponibles :\n* Télécharger directement le contenu du fichier, en utilisant le paramètre « $1file ».\n* Télécharger le fichier par morceaux, en utilsiant les paramètres « $1filesize », « $1chunk » et « $1offset ».* Pour que le serveur MédiaWiki cherche un fichier depuis une URL, utiliser le paramètre « $1url ».\n* Terminer un téléchargement précédent qui a échoué à cause d’avertissements, en utilisant le paramètre « $1filekey ».\nNoter que le POST HTTP doit être fait comme un téléchargement de fichier (par ex. en utilisant multipart/form-data) en envoyant le « $1file ».",
+       "apihelp-undelete-example-page": "Annuler la suppression de la page <kbd>Main Page</kbd>.",
+       "apihelp-undelete-example-revisions": "Annuler la suppression de deux révisions de la page <kbd>Main Page</kbd>.",
+       "apihelp-upload-description": "Télécharger un fichier, ou obtenir l’état des téléchargements en cours.\n\nPlusieurs méthodes sont disponibles :\n* Télécharger directement le contenu du fichier, en utilisant le paramètre <var>$1file</var>.\n* Télécharger le fichier par morceaux, en utilsiant les paramètres <var>$1filesize</var>, <var>$1chunk</var>, and <var>$1offset</var>.* Pour que le serveur MédiaWiki cherche un fichier depuis une URL, utiliser le paramètre <var>$1url</var>.\n* Terminer un téléchargement précédent qui a échoué à cause d’avertissements, en utilisant le paramètre <var>$1filekey</var>.\nNoter que le POST HTTP doit être fait comme un téléchargement de fichier (par ex. en utilisant <code>multipart/form-data</code>) en envoyant le <code>multipart/form-data</code>.",
        "apihelp-upload-param-filename": "Nom de fichier cible.",
-       "apihelp-upload-param-comment": "Télécharger le commentaire. Utilisé aussi comme texte de la page initiale pour les nouveaux fichiers si « $1text » n’est pas spécifié.",
+       "apihelp-upload-param-comment": "Télécharger le commentaire. Utilisé aussi comme texte de la page initiale pour les nouveaux fichiers si <var>$1text</var> n’est pas spécifié.",
        "apihelp-upload-param-text": "Texte de page initiale pour les nouveaux fichiers.",
        "apihelp-upload-param-watch": "Suivre la page.",
        "apihelp-upload-param-watchlist": "Ajouter ou supprimer sans condition la page de votre liste de suivi, utiliser les préférences ou ne pas changer le suivi.",
        "apihelp-userrights-param-add": "Ajouter l’utilisateur à ces groupes.",
        "apihelp-userrights-param-remove": "Supprimer l’utilisateur de ces groupes.",
        "apihelp-userrights-param-reason": "Motif pour la modification.",
-       "apihelp-userrights-example-user": "Ajouter l’utilisateur FooBot au groupe « robot », et le supprimer des groupes « sysop » et « bureaucrate »",
-       "apihelp-userrights-example-userid": "Ajouter l’utilisateur d’ID 123 au groupe « robot », et le supprimer des groupes « sysop » et « bureaucrate »",
+       "apihelp-userrights-example-user": "Ajouter l’utilisateur <kbd>FooBot</kbd> au groupe <kbd>robot</kbd>, et le supprimer des groupes <kbd>sysop</kbd> et <kbd>bureaucrate</kbd>.",
+       "apihelp-userrights-example-userid": "Ajouter l’utilisateur d’ID <kbd>123</kbd> au groupe <kbd>robot</kbd>, et le supprimer des groupes <kbd>sysop</kbd> et <kbd>bureaucrate</kbd>.",
        "apihelp-watch-description": "Ajouter ou supprimer des pages de la liste de suivi de l’utilisateur actuel.",
-       "apihelp-watch-param-title": "La page à (ne plus) suivre. Utiliser plutôt $1titles.",
+       "apihelp-watch-param-title": "La page à (ne plus) suivre. Utiliser plutôt <var>$1titles</var>.",
        "apihelp-watch-param-unwatch": "Si défini, la page ne sera plus suivie plutôt que suivie.",
-       "apihelp-watch-example-watch": "Suivre la page « Page principale »",
+       "apihelp-watch-example-watch": "Suivre la page <kbd>Page principale</kbd>.",
        "apihelp-watch-example-unwatch": "Ne plus suivre la page <kbd>Page principale</kbd>.",
        "apihelp-watch-example-generator": "Suivre les quelques premières pages de l’espace de nom principal",
        "apihelp-format-example-generic": "Mettre en forme le résultat de la requête dans le format $1",
-       "apihelp-dbg-description": "Extraire les données au format de var_export() de PHP.",
-       "apihelp-dbgfm-description": "Extraire les données au format de var_export() de PHP (affiché proprement en HTML).",
-       "apihelp-dump-description": "Extraire les données au format de var_dump() de PHP.",
-       "apihelp-dumpfm-description": "Extraire les données au format de var_dump() de PHP (affiché proprement en HTML).",
+       "apihelp-dbg-description": "Extraire les données au format de <code>var_export()</code> de PHP.",
+       "apihelp-dbgfm-description": "Extraire les données au format de <code>var_export()</code> de PHP (affiché proprement en HTML).",
+       "apihelp-dump-description": "Extraire les données au format de <code>var_dump()</code> de PHP.",
+       "apihelp-dumpfm-description": "Extraire les données au format de <code>var_dump()</code> de PHP (affiché proprement en HTML).",
        "apihelp-json-description": "Extraire les données au format JSON.",
        "apihelp-json-param-callback": "Si spécifié, inclut la sortie dans l’appel d’une fonction fournie. Pour plus de sûreté, toutes les données spécifiques à l’utilisateur seront restreintes.",
        "apihelp-json-param-utf8": "Si spécifié, encode la plupart (mais pas tous) des caractères non ASCII en URF-8 au lieu de les remplacer par leur séquence d’échappement hexadécimale.",
        "apihelp-php-description": "Extraire les données au format sérialisé de PHP.",
        "apihelp-phpfm-description": "Extraire les données au format sérialisé de PHP (affiché proprement en HTML).",
        "apihelp-rawfm-description": "Extraire les données avec les éléments de débogage au format JSON (affiché proprement en HTML).",
-       "apihelp-txt-description": "Extraire les données au format de print_r() de PHP.",
-       "apihelp-txtfm-description": "Extraire les données au format de print_r() de PHP (affiché proprement en HTML).",
+       "apihelp-txt-description": "Extraire les données au format de <code>print_r()</code> de PHP.",
+       "apihelp-txtfm-description": "Extraire les données au format de <code>print_r()</code> de PHP (affiché proprement en HTML).",
        "apihelp-wddx-description": "Extraire les données au format WDDX.",
        "apihelp-wddxfm-description": "Extraire les données au format WDDX (affiché proprement en HTML).",
        "apihelp-xml-description": "Extraire les données au format XML.",
        "api-pageset-param-titles": "Une liste des titres sur lesquels travailler.",
        "api-pageset-param-pageids": "Une liste des IDs de page sur lesquelles travailler.",
        "api-pageset-param-revids": "Une liste des IDs de révision sur lesquelles travailler.",
-       "api-pageset-param-generator": "Obtenir la liste des pages sur lesquelles travailler en exécutant le module de recherche spécifié.\n\n'''NOTE :''' les noms de paramètre du générateur doivent être préfixés avec un « g », voir les exemples.",
-       "api-pageset-param-redirects-generator": "Résoudre automatiquement les redirections dans $1titles, $1pageids et $1revids, et dans les pages renvoyées par $1generator.",
-       "api-pageset-param-redirects-nogenerator": "Résoudre automatiquement les redirections dans $1titles, $1pageids et $1revids.",
+       "api-pageset-param-generator": "Obtenir la liste des pages sur lesquelles travailler en exécutant le module de recherche spécifié.\n\n<strong>NOTE :<strong> les noms de paramètre du générateur doivent être préfixés avec un « g », voir les exemples.",
+       "api-pageset-param-redirects-generator": "Résoudre automatiquement les redirections dans <var>$1titles</var>, <var>$1pageids</var> et <var>$1revids</var>, et dans les pages renvoyées par <var>$1generator</var>.",
+       "api-pageset-param-redirects-nogenerator": "Résoudre automatiquement les redirections dans <var>$1titles</var>, <var>$1pageids</var> et <var>$1revids</var>.",
        "api-pageset-param-converttitles": "Convertir les titres dans d’autres variantes si nécessaire. Fonctionne uniquement si la langue de contenu du wiki supporte la conversion en variantes. Les langues qui supportent la conversion en variante incluent $1.",
        "api-help-title": "Aide de l’API de MediaWiki",
        "api-help-lead": "Ceci est une page d’aide de l’API de MédiaWiki générée automatiquement.\n\nDocumentation et exemples : https://www.mediawiki.org/wiki/API",
        "api-help-parameters": "{{PLURAL:$1|Paramètre|Paramètres}} :",
        "api-help-param-deprecated": "Obsolète.",
        "api-help-param-required": "Ce paramètre est obligatoire.",
-       "api-help-param-list": "{{PLURAL:$1|1=Une valeur|2=Valeurs (séparées par « {{!}} »)}} : $2",
+       "api-help-param-list": "{{PLURAL:$1|1=Une valeur|2=Valeurs (séparées par <kbd>{{!}}</kbd>)}} : $2",
        "api-help-param-list-can-be-empty": "{{PLURAL:$1|0=Doit être vide|Peut être vide, ou $2}}",
        "api-help-param-limit": "Pas plus de $1 autorisé.",
        "api-help-param-limit2": "Pas plus de $1 autorisé ($2 pour les robots).",
        "api-help-param-integer-max": "{{PLURAL:$1|1=La valeur ne doit pas être supérieure|2=Les valeurs ne doivent pas être supérieures}} à $3.",
        "api-help-param-integer-minmax": "{{PLURAL:$1|1=La valeur doit|2=Les valeurs doivent}} être entre $2 et $3.",
        "api-help-param-upload": "Doit être envoyé comme un fichier importé utilisant multipart/form-data.",
-       "api-help-param-multi-separate": "Valeurs séparées par « | ».",
+       "api-help-param-multi-separate": "Valeurs séparées par <kbd>|</kbd>.",
        "api-help-param-multi-max": "Le nombre maximal de valeurs est {{PLURAL:$1|$1}} ({{PLURAL:$2|$2}} pour les robots).",
        "api-help-param-default": "Par défaut : $1",
        "api-help-param-default-empty": "Par défaut : <span class=\"apihelp-empty\">(vide)</span>",
        "api-help-param-token": "Un jeton « $1 » récupéré par [[Special:ApiHelp/query+tokens|action=query&meta=tokens]]",
        "api-help-param-token-webui": "Pour rester compatible, le jeton utilisé dans l’IHM web est aussi accepté.",
-       "api-help-param-disabled-in-miser-mode": "Désactivé à cause du [https://www.mediawiki.org/wiki/Manual:$wgMiserMode mode minimal].",
-       "api-help-param-limited-in-miser-mode": "'''NOTE :''' Du fait du [https://www.mediawiki.org/wiki/Manual:$wgMiserMode mode minimal], utiliser cela peut aboutir à moins de résultats que « $1limit » renvoyés avant de continuer ; dans les cas extrêmes, zéro résultats peuvent être renvoyés.",
+       "api-help-param-disabled-in-miser-mode": "Désactivé à cause du [[mw:Manual:$wgMiserMode|mode minimal]].",
+       "api-help-param-limited-in-miser-mode": "<strong>NOTE :</strong> Du fait du [[mw:Manual:$wgMiserMode|mode minimal]], utiliser cela peut aboutir à moins de résultats que <var>$1limit</var> renvoyés avant de continuer ; dans les cas extrêmes, zéro résultats peuvent être renvoyés.",
        "api-help-param-direction": "Dans quelle direction énumérer :\n;newer:Lister les plus anciens en premier. Note : $1start doit être avant $1end.\n;older:Lister les nouveaux en premier (par défaut). Note : $1start doit être postérieur à $1end.",
        "api-help-param-continue": "Quand plus de résultats sont disponibles, utiliser cela pour continuer.",
        "api-help-param-no-description": "<span class=\"apihelp-empty\">(aucune description)</span>",
index b338e70..6d3ed76 100644 (file)
        "apihelp-query+images-example-simple": "Obter unha lista de arquivos empregados na [[Main Page]].",
        "apihelp-query+imageusage-param-namespace": "Nome de espazos a numerar.",
        "apihelp-query+pagepropnames-param-limit": "Máximo número de nomes a retornar.",
+       "apihelp-query+pageswithprop-description": "Mostrar a lista de páxinas que empregan unha propiedade determinada.",
        "apihelp-query+prefixsearch-param-search": "Buscar texto.",
        "apihelp-query+prefixsearch-param-namespace": "Espazo de nomes no que buscar.",
        "apihelp-query+prefixsearch-param-limit": "Número máximo de resultados a visualizar.",
index 18fdb04..6552dc4 100644 (file)
                "authors": [
                        "Guycn2",
                        "Amire80",
-                       "Inkbug"
+                       "Inkbug",
+                       "Danny-w",
+                       "YaronSh"
                ]
        },
        "apihelp-main-param-action": "איזו פעולה לבצע.",
        "apihelp-main-param-format": "התבנית של הפלט.",
+       "apihelp-main-param-curtimestamp": "הכללת חותמת הזמן הנוכחית בתוצאה.",
        "apihelp-block-description": "חסימת משתמש.",
        "apihelp-block-param-user": "שם משתמש, כתובת IP, או טווח IP שהנך רוצה לחסום.",
        "apihelp-block-param-reason": "סיבה לחסימה.",
+       "apihelp-compare-param-fromtitle": "כותרת ראשונה להשוואה.",
+       "apihelp-compare-param-fromid": "מס׳ זיהוי של העמוד הראשון להשוואה.",
+       "apihelp-compare-param-fromrev": "גרסה ראשונה להשוואה.",
+       "apihelp-compare-param-totitle": "כותרת שנייה להשוואה.",
+       "apihelp-compare-param-toid": "מס׳ מזהה של העמוד השני להשוואה.",
+       "apihelp-compare-param-torev": "גרסה שנייה להשוואה.",
+       "apihelp-compare-example-1": "יצירת תיעוד שינוי בין גרסה 1 ל־2.",
+       "apihelp-createaccount-description": "יצירת חשבון משתמש חדש.",
        "apihelp-createaccount-param-name": "שם משתמש.",
+       "apihelp-createaccount-param-password": "ססמה (לא ישפיע אם הוגדר <var>$1mailpassword</var>).",
+       "apihelp-createaccount-param-domain": "שם מתחם לאימות חיצוני (רשות).",
+       "apihelp-createaccount-param-token": "אסימון יצירת חשבון הושג בבקשה הראשונה.",
+       "apihelp-createaccount-param-email": "כתובת הדוא״ל של המשתמש (רשות).",
+       "apihelp-createaccount-param-realname": "השם האמתי של המשתמש (רשות).",
+       "apihelp-createaccount-param-mailpassword": "אם הוגדר ערך כלשהו, תישלח ססמה אקראית אל המשתמש.",
+       "apihelp-createaccount-param-reason": "הסיבה כרשות ליצירת החשבון כפי שתופיע ברישומים.",
+       "apihelp-createaccount-param-language": "קוד השפה שיוגדר כבררת המחדל למשתמש (רשות, בררת המחדל היא שפת התוכן).",
+       "apihelp-createaccount-example-pass": "יצירת המשתמש <kbd>testuser</kbd> עם הססמה <kbd>test123</kbd>.",
+       "apihelp-createaccount-example-mail": "יצירת המשתמש <kbd>testmailuser</kbd> ושליחת ססמה שיוצרה אקראית בדוא״ל.",
+       "apihelp-delete-description": "מחיקת דף.",
+       "apihelp-delete-param-title": "כותרת העמוד למחיקה. לא ניתן להשתמש בשילוב עם <var>$1pageid</var>.",
+       "apihelp-delete-param-pageid": "מס׳ הזיהוי של העמוד למחיקה. לא ניתן להשתמש בשילוב עם <var>$1title</var>.",
+       "apihelp-delete-param-reason": "סיבת המחיקה. אם לא הוגדרה, תתווסף סיבה שנוצרה אוטומטית.",
+       "apihelp-delete-param-watch": "הוספת העמוד לרשימת המעקב של המשתמש הנוכחי.",
+       "apihelp-delete-param-unwatch": "הסרת הדף מרשימת המעקב של של המשתמש הנוכחי.",
        "apihelp-delete-example-simple": "מחיקת הדף הראשי",
        "apihelp-edit-param-minor": "עריכה משנית.",
        "apihelp-edit-example-edit": "עריכת דף",
        "apihelp-emailuser-description": "שליחת דוא\"ל למשתמש.",
        "apihelp-expandtemplates-param-title": "כותרת הדף.",
+       "apihelp-feedcontributions-param-year": "החל משנה (ולפני כן).",
+       "apihelp-feedcontributions-param-month": "החל מחודש (ולפני כן).",
+       "apihelp-feedcontributions-param-tagfilter": "סינון תרומות בעלות התגיות הבאות.",
+       "apihelp-feedcontributions-param-deletedonly": "הצגת תרומות שנמחקו בלבד.",
+       "apihelp-feedcontributions-param-toponly": "הצגת עריכות שהן הגרסה העדכנית ביותר בלבד.",
+       "apihelp-feedcontributions-example-simple": "החזרת תרומות עבור המשתמש <kbd>Example</kbd>.",
+       "apihelp-feedrecentchanges-param-tagfilter": "סינון לפי תגית.",
        "apihelp-help-description": "הצגת עזרה עבור היחידות שצוינו.",
+       "apihelp-help-param-helpformat": "תסדיר פלט העזרה.",
        "apihelp-help-param-toc": "לכלול תוכן עניינים בפלט HTML.",
+       "apihelp-import-param-xml": "קובץ XML שהועלה.",
+       "apihelp-login-param-name": "שם משתמש.",
+       "apihelp-login-param-password": "ססמה.",
+       "apihelp-login-param-domain": "שם מתחם (רשות).",
+       "apihelp-login-param-token": "אסימון כניסה התקבל בבקשה הראשונה.",
+       "apihelp-login-example-gettoken": "קבלת אסימון כניסה.",
+       "apihelp-login-example-login": "כניסה.",
+       "apihelp-logout-description": "יציאה וניקוי של נתוני הפעילות.",
+       "apihelp-logout-example-logout": "הוצאת המשתמש הנוכחי.",
+       "apihelp-managetags-description": "ביצוע פעולות ניהוליות הקשורות בשינוי תגיות.",
+       "apihelp-move-description": "העברת עמוד.",
+       "apihelp-opensearch-param-search": "מחרוזת לחיפוש.",
+       "apihelp-opensearch-param-namespace": "שמות מתחם לחיפוש.",
+       "apihelp-opensearch-param-format": "תסדיר הפלט.",
+       "apihelp-protect-example-protect": "הגנה על דף.",
+       "apihelp-query-param-list": "אילו רשימות לקבל.",
+       "apihelp-query+allcategories-description": "מניין של כל הקטגוריות.",
+       "apihelp-query+allcategories-param-from": "הקטגוריה ממנה להתחיל למנות.",
+       "apihelp-query+allimages-param-sha1": "גיבוב SHA1 של תמונה. דריסת $1sha1base36.",
+       "apihelp-query+allimages-param-sha1base36": "גיבוב SHA1 של התמונה בבסיס 36 (הבסיס בו נעשה שימוש במדיה־ויקי).",
+       "apihelp-query+allimages-param-limit": "כמה תמונות להחזיר בסך הכול.",
+       "apihelp-query+allimages-example-B": "הצגת רשימה של קבצים שמתחילים באות <kbd>B</kbd>.",
+       "apihelp-query+allimages-example-generator": "הצגת מידע על 4 קבצים המתחילים באות <kbd>T</kbd>.",
+       "apihelp-query+allmessages-param-prop": "אלו מאפיינים לקבל.",
+       "apihelp-query+allpages-param-limit": "כמה דפים להחזיר בסך הכול.",
+       "apihelp-query+allredirects-param-limit": "כמה פריטים להחזיר בסך הכול.",
        "apihelp-query+categories-param-limit": "כמה קטגוריות להחזיר.",
+       "apihelp-query+categorymembers-param-startsortkey": "כדאי להשתמש ב־$1starthexsortkey במקום.",
+       "apihelp-query+categorymembers-param-endsortkey": "כדאי להשתמש ב־$1endhexsortkey במקום.",
+       "apihelp-query+categorymembers-example-simple": "קבלת עשרת העמודים הראשונים שתחת <kbd>קטגוריה:פיזיקה</kbd>.",
+       "apihelp-query+contributors-param-limit": "כמה תורמים להחזיר.",
+       "apihelp-query+contributors-example-simple": "הצגת תורמים לדף <kbd>עמוד ראשי</kbd>.",
+       "apihelp-query+deletedrevs-paraminfo-modes": "{{PLURAL:$1|מצב|מצבים}}: $2",
+       "apihelp-query+duplicatefiles-param-limit": "כמה קבצים כפולים להחזיר.",
+       "apihelp-query+duplicatefiles-param-localonly": "חיפוש אחר קבצים במאגר המקומי בלבד.",
+       "apihelp-query+duplicatefiles-example-simple": "חיפוש אחר כפילויות של [[:קובץ:Albert Einstein Head.jpg]].",
+       "apihelp-query+duplicatefiles-example-generated": "חיפוש אחר כפילויות בין כל הקבצים.",
+       "apihelp-query+extlinks-param-limit": "כמה קישורים להחזיר.",
        "apihelp-query+imageinfo-paramvalue-prop-comment": "תגובה על הגרסה.",
+       "apihelp-query+imageinfo-param-localonly": "חיפוש אחר קבצים במאגר המקומי בלבד.",
+       "apihelp-query+imageinfo-example-simple": "קבלת פרטים על הגרסה הנוכחית של [[:קובץ:Albert Einstein Head.jpg]].",
+       "apihelp-query+images-param-limit": "כמה קבצים להחזיר.",
+       "apihelp-query+info-paramvalue-prop-watchers": "מספר העוקבים, אם קיבלת הרשאה.",
+       "apihelp-query+info-paramvalue-prop-readable": "האם המשתמש יכול להציג דף זה.",
+       "apihelp-query+langlinks-param-title": "קישור לחיפוש. חובה להשתמש עם <var>$1lang</var>.",
+       "apihelp-query+links-description": "החזרת כל הקישורים מהדפים שצוינו.",
+       "apihelp-query+linkshere-param-limit": "כמה להחזיר.",
+       "apihelp-query+linkshere-param-show": "הצגת פריטים שתואמים את הדרישות הללו בלבד:\n;redirect:הצגת הפניות בלבד.\n;!redirect:הצגת קישורים שאינם הפניות בלבד.",
+       "apihelp-query+logevents-description": "קבלת אירועים מהרישומים.",
+       "apihelp-query+pageswithprop-param-dir": "באיזה כיוון לסדר.",
+       "apihelp-query+pageswithprop-example-simple": "הצגת עשרת הדפים הראשונים שעושים שימוש ב־<code>&#123;&#123;DISPLAYTITLE:&#125;&#125;</code>.",
+       "apihelp-query+pageswithprop-example-generator": "קבלת פרטיהם של עשרת הדפים הראשונים המשתמשים ב־<code>_&#95;NOTOC_&#95;</code>.",
+       "apihelp-query+prefixsearch-param-search": "מחרוזת לחיפוש.",
+       "apihelp-query+prefixsearch-param-limit": "מספר התוצאות המרבי להחזרה.",
        "apihelp-query+prefixsearch-param-offset": "מספר תוצאות לדילוג.",
+       "apihelp-query+querypage-param-limit": "מספר תוצאות להחזרה.",
+       "apihelp-query+recentchanges-description": "מניית השינויים האחרונים.",
+       "apihelp-query+recentchanges-param-limit": "כמה שינויים להחזיר בסך הכול.",
+       "apihelp-query+recentchanges-param-type": "אילו סוגים של שינויים להציג.",
+       "apihelp-query+recentchanges-example-simple": "הצגת השינויים האחרונים.",
+       "apihelp-query+redirects-param-limit": "כמה הפניות להחזיר.",
+       "apihelp-query+revisions+base-param-limit": "הגבלת מספר הגרסאות שיוחזרו.",
        "apihelp-query+tokens-example-types": "אחזור אסימון של רשימת המעקב ואסימון של ניטור",
-       "apihelp-xml-param-xslt": "×\90×\9d ×¦×\95×\99×\9f, ×\9e×\95ס×\99×£ &lt;xslt&gt; ×\9b×\92×\9c×\99×\95×\9f ×¡×\92× ×\95× ×\95ת. ×\96×\94 ×¦×¨×\99×\9a ×\9c×\94×\99×\95ת ×\93×£ ×\95×\99ק×\99 ×\91×\9eר×\97×\91 ×\94ש×\9d ×\9e×\93×\99×\94 ×\95×\99ק×\99 ×©×©×\9e×\95 ×\9eסת×\99×\99×\9d ×\91\".xsl\".",
+       "apihelp-xml-param-xslt": "×\90×\9d ×¦×\95×\99×\9f, ×\99ש ×\9c×\94×\95ס×\99×£ ×\90ת ×©×\9d ×\94×\93×£ ×\9b×\92×\99×\9c×\99×\95×\9f ×¢×\99צ×\95×\91 XSL. ×¢×\9c ×\94ער×\9a ×\9c×\94×\99×\95ת ×\9b×\95תרת ×\91 {{ns:mediawiki}} ×\91×\9eר×\97×\91 ×©×\9d ×\94×\9eשת×\9eש, ×\94×\9eסת×\99×\99×\9d ×\91-  <code>.xsl</code>.",
        "api-format-title": "תוצאה של API של מדיה־ויקי",
        "api-format-prettyprint-header": "זהו ייצוג ב־HTML של תסדיר $1. תסדיר HTML טוב לתיקון שגיאות, אבל אינו מתאים ליישומים.\n\nיש לציין את הפרמטר format כדי לשנות את תסדיר הפלט. כדי לראות ייצוג של תסדיר $1 לא ב־HTML יש לרשום format=$2.\n\nר' את [https://www.mediawiki.org/wiki/API התיעוד המלא], או את [[Special:ApiHelp/main|העזרה של API]] למידע נוסף.",
        "api-orm-param-props": "באילו שדות לעשות שאילתה.",
        "api-help-param-integer-max": "ה{{PLURAL:$1|1=ערך לא יכול להיות גדול|2=ערכים לא יכולים להיות גדולים}} מ־$3.",
        "api-help-param-integer-minmax": "ה{{PLURAL:$1|1=ערך חייב|2=ערכים חייבים}} להיות בין $2 ל־$3.",
        "api-help-param-upload": "חייב להישלח (posted) בתור העלאת קובץ באמצעות multipart/form-data.",
-       "api-help-param-multi-separate": "הפרדה בין ערכים נעשית באמצעות \"|\".",
+       "api-help-param-multi-separate": "הפרדה בין ערכים נעשית באמצעות <kbd>|</kbd>",
        "api-help-param-multi-max": "מספר הערכים המרבי הוא {{PLURAL:$1|$1}} (עבור בוטים – {{PLURAL:$2|$2}}).",
        "api-help-param-default": "ברירת מחדל: $1",
        "api-help-param-default-empty": "ברירת מחדל: <span class=\"apihelp-empty\">(ריק)</span>",
index f61a8b8..4c7b20a 100644 (file)
@@ -15,7 +15,7 @@
        "apihelp-main-param-requestid": "任意の値を指定でき、その値が結果に含められます。リクエストを識別するために使用できます。",
        "apihelp-main-param-servedby": "リクエストを処理したホスト名を結果に含めます。",
        "apihelp-main-param-curtimestamp": "現在のタイムスタンプを結果に含めます。",
-       "apihelp-main-param-uselang": "メッセージの翻訳に使用する言語です。コードの一覧は [[Special:ApiHelp/query+siteinfo|action=query&meta=siteinfo]] に siprop=languages を付けることで取得できます。\"user\" を指定することで現在の利用者の個人設定の言語を、\"content\" を指定することでこのウィキの本文の言語を使用することもできます。",
+       "apihelp-main-param-uselang": "メッセージの翻訳に使用する言語です。コードの一覧は <kbd>[[Special:ApiHelp/query+siteinfo|action=query&meta=siteinfo]]</kbd> に <kbd>siprop=languages</kbd> を付けることで取得できます。<kbd>user</kbd> を指定することで現在の利用者の個人設定の言語を、<kbd>content</kbd> を指定することでこのウィキの本文の言語を使用することもできます。",
        "apihelp-block-description": "利用者をブロックします。",
        "apihelp-block-param-user": "ブロックする利用者名、IPアドレスまたはIPレンジ。",
        "apihelp-block-param-reason": "ブロックの理由。",
        "apihelp-block-param-watchuser": "その利用者またはIPアドレスの利用者ページとトークページをウォッチします。",
        "apihelp-block-example-ip-simple": "IPアドレス <kbd>192.0.2.5</kbd> を <kbd>First strike<kbd> という理由で3日ブロックする",
        "apihelp-block-example-user-complex": "利用者 <kbd>Vandal</kbd> を <kbd>Vandalism</kbd> という理由で無期限ブロックし、新たなアカウント作成とメールの送信を禁止する。",
+       "apihelp-compare-example-1": "版1と2の差分を生成する。",
        "apihelp-createaccount-description": "新しい利用者アカウントを作成します。",
        "apihelp-createaccount-param-name": "利用者名。",
        "apihelp-createaccount-param-password": "パスワード (<var>$1mailpassword</var> が設定されると無視されます)。",
        "apihelp-createaccount-param-token": "最初のリクエストで得られたアカウント作成用トークンです。",
        "apihelp-createaccount-param-email": "利用者の電子メールアドレス (任意)。",
+       "apihelp-createaccount-param-realname": "利用者の本名 (省略可能)。",
        "apihelp-createaccount-param-mailpassword": "設定されると (その値を問わず)、ランダムなパスワードがその利用者に電子メールで送られます。",
+       "apihelp-createaccount-example-pass": "利用者 <kbd>testuser</kbd> をパスワード <kbd>test123</kbd> として作成する。",
        "apihelp-createaccount-example-mail": "利用者 <kbd>testuser</kbd>を作成し、ランダムに生成されたパスワードをメールで送る",
        "apihelp-delete-description": "ページを削除します。",
        "apihelp-delete-param-title": "削除するページ名です。<var>$1pageid</var> とは同時に使用できません。",
        "apihelp-delete-param-pageid": "削除するページIDです。<var>$1title</var> とは同時に使用できません。",
        "apihelp-delete-param-reason": "削除の理由です。入力しない場合、自動的に生成された理由が使用されます。",
-       "apihelp-delete-param-watch": "そのページをウォッチリストに追加します。",
-       "apihelp-delete-param-unwatch": "そのページをウォッチリストから除去します。",
+       "apihelp-delete-param-watch": "そのページを現在の利用者のウォッチリストに追加します。",
+       "apihelp-delete-param-unwatch": "そのページを現在の利用者のウォッチリストから除去します。",
        "apihelp-delete-example-simple": "<kbd>Main Page</kbd> を削除する",
        "apihelp-delete-example-reason": "<kbd>Preparing for move</kbd> という理由で <kbd>Main Page</kbd> を削除する",
        "apihelp-disabled-description": "このモジュールは無効化されています。",
        "apihelp-edit-description": "ページを作成、編集します。",
        "apihelp-edit-param-title": "編集するページ名です。<var>$1pageid</var> とは同時に使用できません。",
        "apihelp-edit-param-pageid": "編集するページIDです。<var>$1title</var> とは同時に使用できません。",
+       "apihelp-edit-param-section": "節番号です。先頭の節の場合は <kbd>0</kbd>、新しい節の場合は <kbd>new</kbd>を指定します。",
+       "apihelp-edit-param-sectiontitle": "新しい節の名前です。",
        "apihelp-edit-param-text": "ページの本文。",
        "apihelp-edit-param-minor": "細部の編集",
        "apihelp-edit-param-createonly": "すでにそのページが存在する場合は編集を行いません。",
        "apihelp-edit-param-nocreate": "そのページが存在しない場合にエラーを返します。",
-       "apihelp-edit-param-watch": "そのページをウォッチリストに追加します。",
-       "apihelp-edit-param-unwatch": "そのページをウォッチリストから除去します。",
+       "apihelp-edit-param-watch": "そのページを現在の利用者のウォッチリストに追加します。",
+       "apihelp-edit-param-unwatch": "そのページを現在の利用者のウォッチリストから除去します。",
        "apihelp-edit-param-token": "このトークンは常に最後のパラメーターとして、または少なくとも $1text パラメーターより後に送信されるべきです。",
        "apihelp-edit-example-edit": "ページを編集",
        "apihelp-emailuser-description": "利用者に電子メールを送信します。",
        "apihelp-emailuser-param-target": "送信先の利用者名。",
        "apihelp-emailuser-param-text": "電子メールの本文。",
        "apihelp-emailuser-param-ccme": "電子メールの複製を自分にも送信します。",
+       "apihelp-emailuser-example-email": "利用者 <kbd>WikiSysop</kbd> に <kbd>Content</kbd> という本文の電子メールを送信。",
+       "apihelp-expandtemplates-description": "ウィキテキストに含まれるすべてのテンプレートを展開します。",
+       "apihelp-expandtemplates-param-title": "ページの名前です。",
+       "apihelp-expandtemplates-param-text": "変換するウィキテキストです。",
+       "apihelp-expandtemplates-example-simple": "ウィキテキスト <kbd><nowiki>{{Project:Sandbox}}</nowiki></kbd> を展開する。",
+       "apihelp-feedcontributions-param-deletedonly": "削除された投稿記録のみ表示します。",
+       "apihelp-feedcontributions-param-toponly": "最新版の編集のみ表示します。",
+       "apihelp-feedcontributions-param-newonly": "ページ作成を伴う編集のみを表示します。",
        "apihelp-feedcontributions-example-simple": "利用者 <kbd>Example</kbd> の投稿記録を取得する。",
        "apihelp-filerevert-example-revert": "<kbd>Wiki.png</kbd> を <kbd>2011-03-05T15:27:40Z</kbd> の版に差し戻す。",
        "apihelp-help-description": "指定したモジュールのヘルプを表示します。",
        "apihelp-help-example-recursive": "すべてのヘルプを1つのページに",
        "apihelp-help-example-help": "ヘルプ モジュール自身のヘルプ",
        "apihelp-help-example-query": "2つの下位モジュールのヘルプ",
+       "apihelp-imagerotate-example-simple": "<kbd>File:Example.png</kbd> を <kbd>90</kbd> 度回転させる。",
+       "apihelp-imagerotate-example-generator": "<kbd>Category:Flip</kbd> 内のすべての画像を <kbd>180</kbd> 度回転させる。",
        "apihelp-import-param-xml": "XMLファイルをアップロード",
        "apihelp-login-param-name": "利用者名。",
        "apihelp-login-param-password": "パスワード。",
+       "apihelp-login-param-token": "最初のリクエストで取得したログイントークンです。",
+       "apihelp-login-example-gettoken": "ログイントークンを取得する。",
        "apihelp-login-example-login": "ログイン",
+       "apihelp-logout-description": "ログアウトしてセッションデータを消去します。",
+       "apihelp-logout-example-logout": "現在の利用者をログアウトする。",
        "apihelp-move-description": "ページを移動します。",
        "apihelp-move-param-from": "移動するページのページ名です。<var>$1fromid</var> とは同時に使用できません。",
        "apihelp-move-param-fromid": "移動するページのページIDです。<var>$1from</var> とは同時に使用できません。",
        "apihelp-move-param-to": "移動後のページ名。",
        "apihelp-move-param-reason": "移動の理由。",
-       "apihelp-move-param-movetalk": "存在する場合、トークページも移動します。",
+       "apihelp-move-param-movetalk": "存在する場合、トークページも名前を変更します。",
        "apihelp-move-param-movesubpages": "可能であれば、下位ページも名前を変更します。",
        "apihelp-move-param-noredirect": "転送ページを作成しません。",
-       "apihelp-move-param-watch": "そのページと転送ページをウォッチリストに追加します。",
-       "apihelp-move-param-unwatch": "そのページと転送ページをウォッチリストから除去します。",
+       "apihelp-move-param-watch": "そのページと転送ページを現在の利用者のウォッチリストに追加します。",
+       "apihelp-move-param-unwatch": "そのページと転送ページを現在の利用者のウォッチリストから除去します。",
        "apihelp-move-param-ignorewarnings": "あらゆる警告を無視",
        "apihelp-move-example-move": "<kbd>Badtitle</kbd> を <kbd>Goodtitle</kbd> に転送ページを残さず移動",
+       "apihelp-opensearch-param-suggest": "<var>[[mw:Manual:$wgEnableOpenSearchSuggest|$wgEnableOpenSearchSuggest]]</var> が false の場合、何もしません。",
+       "apihelp-paraminfo-description": "API モジュールに関する情報を取得します。",
+       "apihelp-patrol-description": "ページまたは版を巡回済みにします。",
+       "apihelp-patrol-param-revid": "巡回済みにする版ID。",
        "apihelp-patrol-example-rcid": "最近の更新を巡回",
+       "apihelp-protect-description": "ページの保護レベルを変更します。",
+       "apihelp-protect-param-title": "保護(解除)するページ名です。$1pageid とは同時に指定できません。",
+       "apihelp-protect-param-pageid": "保護(解除)するページIDです。$1title とは同時に指定できません。",
+       "apihelp-protect-param-expiry": "有効期限です。タイムスタンプがひとつだけ指定された場合は、それがすべての保護に適用されます。無期限の保護を行う場合は<kbd>infinite</kbd>, <kbd>indefinite</kbd>, <kbd>infinity</kbd>, または <kbd>never</kbd> を指定します。",
+       "apihelp-protect-param-reason": "保護(解除)の理由。",
+       "apihelp-protect-param-watch": "指定されると、保護(解除)するページが現在の利用者のウォッチリストに追加されます。",
+       "apihelp-protect-example-protect": "ページを保護する。",
+       "apihelp-query+alldeletedrevisions-paraminfo-nonuseronly": "<var>$3user</var> と同時に指定できません。",
+       "apihelp-query+alldeletedrevisions-param-user": "この利用者による版のみを一覧表示する。",
+       "apihelp-query+alldeletedrevisions-param-excludeuser": "この利用者による版を一覧表示しない。",
+       "apihelp-query+alldeletedrevisions-param-namespace": "この名前空間に含まれるページのみを一覧表示します。",
+       "apihelp-query+alldeletedrevisions-example-ns-main": "標準名前空間にある削除された最初の50版を一覧表示する。",
+       "apihelp-query+categorymembers-example-simple": "<kbd>Category:Physics</kbd> に含まれる最初の10ページを取得する。",
+       "apihelp-query+categorymembers-example-generator": "<kbd>Category:Physics</kbd> に含まれる最初の10ページのページ情報を取得する。",
+       "apihelp-query+contributors-example-simple": "<kbd>Main Page</kbd> への投稿者を表示する。",
+       "apihelp-query+deletedrevisions-param-user": "この利用者による版のみを一覧表示。",
+       "apihelp-query+deletedrevisions-param-excludeuser": "この利用者による版を一覧表示しない。",
+       "apihelp-query+deletedrevisions-param-limit": "一覧表示する版の最大数。",
+       "apihelp-query+deletedrevisions-example-titles": "ページ <kbd>Main Page</kbd> および <kbd>Talk:Main Page</kbd> の削除された版とその内容を一覧表示する。",
+       "apihelp-query+deletedrevisions-example-revids": "削除された版 <kbd>123456</kbd> に関する情報を一覧表示する。",
+       "apihelp-query+info-description": "ページの基本的な情報を取得します。",
+       "apihelp-query+info-paramvalue-prop-protection": "それぞれのページの保護レベルを一覧表示する。",
+       "apihelp-query+info-example-simple": "<kbd>Main Page</kbd> に関する情報を取得する。",
+       "apihelp-query+iwbacklinks-example-simple": "[[wikibooks:Test]] へリンクしているページを取得する。",
+       "apihelp-query+iwbacklinks-example-generator": "[[wikibooks:Test]] へリンクしているページの情報を取得する。",
+       "apihelp-query+langbacklinks-example-simple": "[[:fr:Test]] へリンクしているページを取得する。",
+       "apihelp-query+langbacklinks-example-generator": "[[:fr:Test]] へリンクしているページの情報を取得する。",
        "apihelp-format-example-generic": "クエリの結果を $1 形式に整形します",
        "apihelp-dbg-description": "データを PHP の <code>var_export()</code> 形式で出力します。",
        "apihelp-dbgfm-description": "データを PHP の <code>var_export()</code> 形式 (HTML に埋め込んだ形式) で出力します。",
diff --git a/includes/api/i18n/ku-latn.json b/includes/api/i18n/ku-latn.json
new file mode 100644 (file)
index 0000000..a40e4c1
--- /dev/null
@@ -0,0 +1,9 @@
+{
+       "@metadata": {
+               "authors": [
+                       "George Animal"
+               ]
+       },
+       "apihelp-delete-description": "Rûpelekê jê bibe.",
+       "apihelp-expandtemplates-param-title": "Sernavê rûpelê."
+}
diff --git a/includes/api/i18n/lzh.json b/includes/api/i18n/lzh.json
new file mode 100644 (file)
index 0000000..970bea9
--- /dev/null
@@ -0,0 +1,8 @@
+{
+       "@metadata": {
+               "authors": [
+                       "RalfX"
+               ]
+       },
+       "apihelp-feedcontributions-param-toponly": "僅示至新審之纂"
+}
index d23472f..a652de6 100644 (file)
@@ -4,8 +4,13 @@
                        "Leeheonjin"
                ]
        },
+       "apihelp-delete-example-simple": "Buran ya ing <kbd>Pun Bulung</kbd>.",
+       "apihelp-edit-example-edit": "Alilan ya ing bulung.",
        "apihelp-help-example-main": "Saup para king pun modyul.",
+       "apihelp-help-example-recursive": "Deng eganaganang saup king metung a bulung.",
+       "apihelp-login-example-login": "Magpatala (login)",
        "apihelp-patrol-example-rcid": "Magbante king bayung mengayalili.",
+       "apihelp-patrol-example-revid": "Banten ing meyalili.",
        "apihelp-query+alldeletedrevisions-paraminfo-nonuseronly": "E malyaring gamitan a yating <var>$3user</var>.",
        "apihelp-query+allpages-example-B": "Ipakit ing talaan da reng bulung a mangumpisa king titik <kbd>B</kbd>.",
        "apihelp-query+categoryinfo-example-simple": "Kumuwa ning impormasyun tungkul king <kbd>Kategorya:Foo</kbd> at <kbd>Kategorya:Bar</kbd>.",
index 478ee89..825f35c 100644 (file)
        "apihelp-move-description": "Przenieś stronę.",
        "apihelp-move-param-ignorewarnings": "Ignoruj wszystkie ostrzeżenia.",
        "apihelp-protect-example-protect": "Zabezpiecz stronę",
+       "apihelp-query+allpages-example-B": "Pokaż listę stron rozpoczynających się na literę <kbd>B</kbd>.",
        "apihelp-query+imageinfo-paramvalue-prop-canonicaltitle": "Dodaje kanoniczny tytuł pliku.",
        "apihelp-query+imageinfo-paramvalue-prop-dimensions": "Alias rozmiaru.",
        "apihelp-query+imageinfo-paramvalue-prop-mime": "Dodaje typ MIME pliku.",
        "apihelp-query+info-paramvalue-prop-watchers": "Liczba obserwujących, jeśli jest to dozwolone.",
        "apihelp-query+info-paramvalue-prop-readable": "Czy użytkownik może przeczytać tę stronę.",
        "apihelp-query+prefixsearch-param-offset": "Liczba wyników do pominięcia.",
+       "apihelp-query+recentchanges-example-simple": "Lista ostatnich zmian.",
        "apihelp-query+search-description": "Wykonaj wyszukiwanie pełnotekstowe.",
        "apihelp-query+watchlist-param-excludeuser": "Nie wyświetlaj zmian wykonanych przez tego użytkownika.",
        "apihelp-unblock-param-reason": "Powód odblokowania.",
index 57059e4..72044db 100644 (file)
@@ -2,10 +2,11 @@
        "@metadata": {
                "authors": [
                        "Vitorvicentevalente",
-                       "Fúlvio"
+                       "Fúlvio",
+                       "Macofe"
                ]
        },
-       "apihelp-main-description": "<div class=\"hlist plainlinks api-main-links\">\n* [https://www.mediawiki.org/wiki/API:Main_page Documentação]\n* [https://www.mediawiki.org/wiki/API:FAQ FAQ]\n* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-api Lista de discussão]\n* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-api-announce Anúncios da API]\n* [https://phabricator.wikimedia.org/maniphest/query/GebfyV4uCaLd/#R Erros e solicitações]\n</div>\n<strong>Estado:</strong> Todas as funcionalidades mostradas nesta página deveriam estar a funcionar, mas a API ainda está em activo desenvolvimento, e pode ser alterada a qualquer momento. Inscreva-se na [https://lists.wikimedia.org/pipermail/mediawiki-api-announce/ lista de discussão mediawiki-api-announce] para ser informado acerca das actualizações.\n\n<strong>Solicitações erradas:</strong> Quando solicitações erradas são enviadas à API, um cabeçalho em HTTP será enviado com a chave \"MediaWiki-API-Error\" e, em seguida, tanto o valor do cabeçalho quanto o código de erro retornado serão definidos com o mesmo valor. Para mais informação, consulte https://www.mediawiki.org/wiki/API:Errors_and_warnings.",
+       "apihelp-main-description": "<div class=\"hlist plainlinks api-main-links\">\n* [[mw:API:Main_page|Documentação]]\n* [[mw:API:FAQ|FAQ]]\n* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-api Lista de discussão]\n* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-api-announce Anúncios da API]\n* [https://phabricator.wikimedia.org/maniphest/query/GebfyV4uCaLd/#R Erros e solicitações]\n</div>\n<strong>Estado:</strong> Todas as funcionalidades mostradas nesta página deveriam estar a funcionar, mas a API ainda está em activo desenvolvimento, e pode ser alterada a qualquer momento. Inscreva-se na [https://lists.wikimedia.org/pipermail/mediawiki-api-announce/ lista de discussão mediawiki-api-announce] para ser informado acerca das actualizações.\n\n<strong>Solicitações erradas:</strong> Quando solicitações erradas são enviadas à API, um cabeçalho em HTTP será enviado com a chave \"MediaWiki-API-Error\" e, em seguida, tanto o valor do cabeçalho quanto o código de erro retornado serão definidos com o mesmo valor. Para mais informação, consulte [[mw:API:Errors_and_warnings|API: Errors and warnings]].",
        "apihelp-main-param-action": "Qual acção a executar.",
        "apihelp-main-param-format": "O formato de saída.",
        "apihelp-block-description": "Bloquear um utilizador.",
@@ -19,7 +20,7 @@
        "apihelp-delete-description": "Eliminar uma página.",
        "apihelp-delete-param-watch": "Adicionar esta página à lista de vigiadas.",
        "apihelp-delete-param-unwatch": "Remover esta página da lista de vigiadas.",
-       "apihelp-delete-example-simple": "Eliminar Página Principal",
+       "apihelp-delete-example-simple": "Eliminar <kbd>Página Principal</kbd>.",
        "apihelp-disabled-description": "O módulo foi desativado.",
        "apihelp-edit-description": "Criar e editar páginas.",
        "apihelp-edit-param-sectiontitle": "Título para uma nova seção.",
@@ -64,7 +65,7 @@
        "apihelp-protect-example-protect": "Proteger uma página",
        "apihelp-query+allcategories-description": "Enumerar todas as categorias.",
        "apihelp-query+allpages-param-prefix": "Pesquisa para todos os títulos de páginas que comecem com este valor.",
-       "apihelp-query+allpages-example-generator": "Mostrar informação sobre 4 páginas que comecem com a letra \"T\"",
+       "apihelp-query+allpages-example-generator": "Mostrar informação sobre 4 páginas que comecem com a letra <kbd>T</kbd>.",
        "apihelp-query+allusers-example-Y": "Lista de utilizadores que comecem com <kbd>Y</kbd>.",
        "apihelp-query+blocks-param-limit": "O número máximo de bloqueios a listar.",
        "apihelp-query+categorymembers-description": "Lista de todas as páginas numa categoria fornecida.",
@@ -83,7 +84,7 @@
        "apihelp-userrights-param-userid": "ID de utilizador.",
        "apihelp-userrights-param-add": "Adicionar o utilizador a estes grupos.",
        "apihelp-userrights-param-remove": "Remover este utilizador destes grupos.",
-       "apihelp-watch-example-unwatch": "Deixar de vigiar a \"Página Principal\"",
+       "apihelp-watch-example-unwatch": "Deixar de vigiar a página <kbd>Página Principal</kbd>.",
        "apihelp-json-description": "Dados de saída em formato JSON.",
        "api-help-title": "Ajuda API da MediaWiki",
        "api-help-main-header": "Módulo principal",
index 3a5baa2..207a74e 100644 (file)
@@ -8,7 +8,8 @@
                        "Albinomamba",
                        "Peki01",
                        "Stens51",
-                       "Boom"
+                       "Boom",
+                       "Jenniesarina"
                ]
        },
        "apihelp-main-description": "<div class=\"hlist plainlinks api-main-links\">\n* [[mw:API:Main_page|Dokumentation]]\n* [[mw:API:FAQ|FAQ]]\n* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-api E-postlista]\n* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-api-announce API-aviseringar]\n* [https://phabricator.wikimedia.org/maniphest/query/GebfyV4uCaLd/#R|Buggar & förslag]\n</div>\n<strong>Status:</strong> Alla funktioner som visas på denna sida borde fungera. API:et är dock fortfarande under aktiv utveckling och kan ändras när som helst. Prenumerera på [https://lists.wikimedia.org/pipermail/mediawiki-api-announce/mediawiki-api-announce e-postlistan] för att få aviseringar om uppdateringar.\n\n<strong>Felaktiga förfrågningar:</strong> När felaktiga förfrågningar skickas till API:et skickas en HTTP-header med nyckeln \"MediaWiki-API-Error\" och sedan sätts både värdet på headern och den felkoden som returneras till samma värde. För mer information läs [[mw:API:Errors_and_warnings|API: Fel och varningar]].",
@@ -78,6 +79,7 @@
        "apihelp-edit-param-bot": "Markera denna redigering som robotredigering.",
        "apihelp-edit-param-basetimestamp": "Tidsstämpel för grundversionen, används för att upptäcka redigeringskonflikter. Kan erhållas genom [[Special:ApiHelp/query+revisions|action=query&prop=revisions&rvprop=timestamp]].",
        "apihelp-edit-param-starttimestamp": "Tidsstämpel för när redigeringsprocessen började, används för att upptäcka redigeringskonflikter. Ett lämpligt värde kan erhållas via  <var>[[Special:ApiHelp/main|curtimestamp]]</var> när redigeringsprocessen startas (t.ex. när sidans innehåll laddas för redigering).",
+       "apihelp-edit-param-recreate": "Ignorera felmeddelande om sidan har blivit raderad under tiden.",
        "apihelp-edit-param-createonly": "Redigera inte sidan om den redan finns.",
        "apihelp-edit-param-nocreate": "Kasta ett fel om sidan inte finns.",
        "apihelp-edit-param-watch": "Lägg till sidan i den aktuella användarens bevakningslista.",
        "apihelp-expandtemplates-param-text": "Wikitext att konvertera.",
        "apihelp-expandtemplates-param-revid": "Revision ID, för <nowiki>{{REVISIONID}}</nowiki> och liknande variabler.",
        "apihelp-expandtemplates-param-includecomments": "Om HTML-kommentarer skall inkluderas i utdata.",
+       "apihelp-expandtemplates-param-generatexml": "Generera ett XML tolknings träd (ersatt av $1prop=parsetree).",
        "apihelp-expandtemplates-example-simple": "Expandera wikitexten <kbd><nowiki>{{Projekt:Sandbox}}</nowiki></kbd>.",
        "apihelp-feedcontributions-param-namespace": "Vilken namnrymd att filtrera bidrag med.",
        "apihelp-feedcontributions-param-year": "Från år (och tidigare).",
        "apihelp-feedrecentchanges-example-30days": "Visa senaste ändringar för 30 dygn",
        "apihelp-feedwatchlist-param-hours": "Lista sidor ändrade inom så här många timmar från nu.",
        "apihelp-feedwatchlist-param-linktosections": "Länka direkt till ändrade avsnitt om möjligt.",
+       "apihelp-feedwatchlist-example-all6hrs": "Visa alla ändringar på besökta sidor under de senaste sex timmarna.",
        "apihelp-filerevert-description": "Återställ en fil till en äldre version.",
        "apihelp-filerevert-param-comment": "Ladda upp kommentar.",
        "apihelp-filerevert-param-archivename": "Arkiv-namn för revisionen att gå tillbaka till.",
        "apihelp-help-param-submodules": "Inkludera hjälp för undermoduler av den namngivna modulen.",
        "apihelp-help-param-recursivesubmodules": "Inkludera hjälp för undermoduler rekursivt.",
        "apihelp-help-param-helpformat": "Formatet för hjälp-utdata.",
+       "apihelp-help-param-wrap": "Omge utdatan i en standard API respons struktur.",
        "apihelp-help-param-toc": "Inkludera en innehållsförteckning i HTML-utdata.",
        "apihelp-help-example-main": "Hjälp för huvudmodul",
        "apihelp-help-example-recursive": "All hjälp på en sida",
        "apihelp-login-param-name": "Användarnamn.",
        "apihelp-login-param-password": "Lösenord.",
        "apihelp-login-param-domain": "Domän (valfritt).",
+       "apihelp-login-param-token": "Login nyckel erhållen i första begäran.",
+       "apihelp-login-example-gettoken": "Hämta en login nyckel.",
        "apihelp-login-example-login": "Logga in",
        "apihelp-logout-description": "Logga ut och rensa sessionsdata.",
        "apihelp-logout-example-logout": "Logga ut den aktuella användaren",
+       "apihelp-managetags-description": "Utför hanterings uppgifter relaterade till förändrings taggar.",
        "apihelp-managetags-param-tag": "Tagg att skapa, radera, aktivera eller inaktivera. För skapande av tagg, får taggen inte existera. För raderande av tagg, så måste taggen existera. För aktiverande av tagg, taggen måste existera och inte användas i en förlängning. För tagg inaktivering, taggen måste användas just nu och vara manuellt definierat.",
        "apihelp-managetags-param-reason": "En icke-obligatorisk orsak för att skapa, radera, aktivera, eller inaktivera taggen.",
        "apihelp-managetags-param-ignorewarnings": "Om du vill ignorera varningar som utfärdas under operationen.",
+       "apihelp-managetags-example-create": "Skapa en tagg vid namn <kbd>spam</kbd> med anledningen: <kbd>För användning i redigerings patrullering</kbd>",
+       "apihelp-managetags-example-delete": "Radera <kbd>vandalims</kbd> taggen med andledningen: <kbd>Felstavat</kbd>",
+       "apihelp-managetags-example-activate": "Aktivera en tagg med namn <kbd>spam</kbd> med anledningen: <kbd>För användning i redigerings patrullering</kbd>",
+       "apihelp-managetags-example-deactivate": "Inaktivera en tagg vid namn <kbd>spam</kbd> med anledningen: <kbd>Inte längre behövd</kbd>",
        "apihelp-move-description": "Flytta en sida.",
        "apihelp-move-param-from": "Titeln på sidan du vill flytta. Kan inte användas tillsammans med <var>$1fromid</var>.",
+       "apihelp-move-param-fromid": "Sid-ID för sidan att byta namn. Kan inte användas tillsammans med <var>$1from</var>.",
        "apihelp-move-param-to": "Titel att byta namn på sidan till.",
        "apihelp-move-param-reason": "Orsak till namnbytet.",
        "apihelp-move-param-movetalk": "Byt namn på diskussionssidan, om den finns.",
        "apihelp-options-example-complex": "Återställ alla inställningar, ställ sedan in <kbd>skin</kbd> och <kbd>nickname</kbd>.",
        "apihelp-paraminfo-description": "Få information om API moduler.",
        "apihelp-paraminfo-param-helpformat": "Format för hjälpsträngar.",
+       "apihelp-parse-param-summary": "Sammanfattning att tolka.",
+       "apihelp-parse-param-page": "Tolka innehållet av denna sida. Kan inte användas tillsammans med <var>$1text</var> och <var>$1title</var>.",
+       "apihelp-parse-param-pageid": "Tolka innehållet på denna sida. Åsidosätter <var>$1sidan</var>.",
+       "apihelp-parse-param-preview": "Tolka i preview-läget.",
+       "apihelp-parse-example-page": "Tolka en sida.",
+       "apihelp-parse-example-text": "Tolka wikitext.",
+       "apihelp-parse-example-texttitle": "Tolka wikitext, specificera sid-titeln.",
+       "apihelp-parse-example-summary": "Tolka en sammanfattning.",
+       "apihelp-patrol-description": "Patrullera en sida eller en version.",
+       "apihelp-patrol-param-revid": "Versions ID att patrullera.",
        "apihelp-patrol-example-rcid": "Patrullera en nykommen ändring.",
        "apihelp-patrol-example-revid": "Patrullera en sidversion",
        "apihelp-protect-description": "Ändra skyddsnivån för en sida.",
        "apihelp-query+allimages-param-prefix": "Sök för alla bild titlar som börjar med detta värde. Kan endast användas med $1sort=name.",
        "apihelp-query+allimages-param-minsize": "Begränsning på bilder med åtminstone så här många bytes.",
        "apihelp-query+allimages-param-maxsize": "Begränsning på bilder med som mest så här många bytes.",
+       "apihelp-query+allimages-param-sha1": "SHA1 hash av bild. Åsidosätter $1sha1base36.",
        "apihelp-query+allimages-param-sha1base36": "SHA1 hash av bild i bas 36 (används i MediaWiki).",
        "apihelp-query+allimages-param-user": "Returnera enbart filer uppladdade av denna användare. Kan enbart användas med $1sort=timestamp. Kan inte användas tillsammans med $1filterbots.",
        "apihelp-query+allimages-param-filterbots": "Hur man filtrerar filer uppladdade av bots. Kan enbart användas med $1sort=timestamp. Kan inte användas tillsammans med $1user.",
        "apihelp-query+alllinks-param-prefix": "Sök alla länkade titlar som börjar med detta värde.",
        "apihelp-query+alllinks-param-limit": "Hur många saker att returnera totalt.",
        "apihelp-query+alllinks-param-dir": "Riktningen att lista mot.",
+       "apihelp-query+alllinks-example-B": "Lista länkade titlar, inkluderade saknade, med dem sid-IDs dem är från, med början vid <kbd>B</kbd>.",
+       "apihelp-query+alllinks-example-unique": "Lista unika länkade titlar.",
+       "apihelp-query+alllinks-example-unique-generator": "Hämtar alla länkade titlar, markera de saknade.",
+       "apihelp-query+alllinks-example-generator": "Hämtar sidor som innehåller länkarna.",
        "apihelp-query+allmessages-description": "Returnera meddelande från denna sida.",
+       "apihelp-query+allmessages-param-messages": "Vilka meddelande att ge som utdata. <kbd>*</kbd> (standard) betyder alla meddelande .",
        "apihelp-query+allmessages-param-prop": "Vilka egenskaper att hämta.",
+       "apihelp-query+allmessages-param-filter": "Returnera enbart meddelande med namn som innehåller denna sträng.",
        "apihelp-query+allmessages-param-lang": "Returnera meddelanden på detta språk.",
        "apihelp-query+allmessages-example-ipb": "Visa meddelanden som börjar med \"ipb-\"",
        "apihelp-query+allmessages-example-de": "Visa meddelandena \"august\" och \"mainpage\" på tyska",
        "apihelp-query+allpages-param-filterredir": "Vilka sidor att lista.",
+       "apihelp-query+allpages-param-limit": "Hur många sidor att returnera totalt.",
        "apihelp-query+allpages-param-dir": "Riktningen att lista mot.",
+       "apihelp-query+allpages-example-B": "Visa en lista över sidor som börjar på bokstaven <kbd>B</kbd>.",
        "apihelp-query+allredirects-param-dir": "Riktningen att lista mot.",
+       "apihelp-query+allredirects-example-unique-generator": "Hämtar alla målsidor, markerar dem som saknas.",
        "apihelp-query+alltransclusions-param-dir": "Riktningen att lista mot.",
        "apihelp-query+allusers-param-prefix": "Sök för alla användare som börjar med detta värde.",
        "apihelp-query+allusers-param-dir": "Riktning att sortera i.",
        "apihelp-query+backlinks-param-dir": "Riktningen att lista mot.",
        "apihelp-query+categories-param-dir": "Riktningen att lista mot.",
        "apihelp-query+duplicatefiles-param-dir": "Riktningen att lista mot.",
+       "apihelp-query+duplicatefiles-example-generated": "Leta efter kopior av alla filer.",
        "apihelp-query+embeddedin-param-dir": "Riktningen att lista mot.",
+       "apihelp-query+embeddedin-param-limit": "Hur många sidor att returnera totalt.",
        "apihelp-query+filearchive-param-dir": "Riktningen att lista mot.",
+       "apihelp-query+filearchive-example-simple": "Visa en lista över alla borttagna filer.",
        "apihelp-query+images-param-dir": "Riktningen att lista mot.",
        "apihelp-query+imageusage-param-dir": "Riktningen att lista mot.",
+       "apihelp-query+imageusage-example-simple": "Visa sidor med hjälp av [[:File:Albert Einstein Head.jpg]].",
+       "apihelp-query+imageusage-example-generator": "Hämta information om sidor med hjälp av [[:File:Albert Einstein Head.jpg]].",
+       "apihelp-query+iwbacklinks-param-limit": "Hur många sidor att returnera totalt.",
        "apihelp-query+iwbacklinks-param-dir": "Riktningen att lista mot.",
        "apihelp-query+iwlinks-param-dir": "Riktningen att lista mot.",
+       "apihelp-query+langbacklinks-param-limit": "Hur många sidor att returnera totalt.",
        "apihelp-query+langbacklinks-param-dir": "Riktningen att lista mot.",
+       "apihelp-query+langbacklinks-example-simple": "Hämta sidor som länkar till [[:fr:Test]].",
        "apihelp-query+langlinks-param-dir": "Riktningen att lista mot.",
        "apihelp-query+links-param-dir": "Riktningen att lista mot.",
+       "apihelp-query+protectedtitles-param-limit": "Hur många sidor att returnera totalt.",
        "apihelp-query+revisions-example-first5-not-localhost": "Hämta första 5 revideringarna av \"huvudsidan\" och som inte gjorts av anonym användare \"127.0.0.1\"",
+       "apihelp-query+siteinfo-example-simple": "Hämta information om webbplatsen.",
        "apihelp-query+stashimageinfo-description": "Returnerar filinformation för temporära filer.",
        "apihelp-query+stashimageinfo-param-filekey": "Nyckel som identifierar en tidigare uppladdning som lagrats temporärt.",
        "apihelp-query+stashimageinfo-example-simple": "Returnerar information för en temporär fil",
+       "apihelp-query+tags-example-simple": "Lista tillgängliga taggar.",
+       "apihelp-query+userinfo-example-simple": "Få information om den aktuella användaren.",
+       "apihelp-query+userinfo-example-data": "Få ytterligare information om den aktuella användaren.",
+       "apihelp-query+watchlist-description": "Hämta de senaste ändringarna på sidor i den nuvarande användarens bevakningslista.",
+       "apihelp-query+watchlist-example-allrev": "Hämta information om de senaste ändringarna på sidor på den aktuella användarens bevakningslista.",
+       "apihelp-query+watchlist-example-generator": "Hämta sidinformation för nyligen uppdaterade sidor på nuvarande användares bevakningslista.",
+       "apihelp-query+watchlist-example-generator-rev": "Hämta ändringsinformation för nyligen uppdaterade sidor på nuvarande användares bevakningslista.",
+       "apihelp-query+watchlistraw-description": "Hämta alla sidor på den aktuella användarens bevakningslista.",
+       "apihelp-setnotificationtimestamp-example-all": "Återställ meddelandestatus för hela bevakningslistan.",
        "apihelp-upload-param-filekey": "Nyckel som identifierar en tidigare uppladdning som lagrats temporärt.",
        "apihelp-upload-param-stash": "Om angiven, kommer servern att temporärt lagra filen istället för att lägga till den i centralförvaret.",
+       "apihelp-upload-example-filekey": "Slutför en uppladdning som misslyckades på grund av varningar.",
        "api-help-main-header": "Huvudmodul",
        "api-help-flag-deprecated": "Denna modul är föråldrad.",
        "api-help-flag-internal": "<strong>Denna modul är intern eller instabil.</strong> Dess funktion kan ändras utan föregående meddelande.",
index af857b9..6f85600 100644 (file)
@@ -22,7 +22,7 @@
        "apihelp-main-param-servedby": "包含保存结果请求的主机名。",
        "apihelp-main-param-curtimestamp": "在结果中包括当前时间戳。",
        "apihelp-main-param-origin": "当通过跨域名AJAX请求(CORS)访问API时,设置此作为起始域名。这必须包括在任何pre-flight请求中,并因此必须是请求的URI的一部分(而不是POST正文)。这必须匹配<code>Origin</code>中的一个起点:从头到底,因此它已经设置为像<kbd>https://zh.wikipedia.org</kbd>或<kbd>https://meta.wikimedia.org</kbd>的东西。如果此参数不匹配<code>Origin</code>页顶,就返回403错误响应。如果此参数匹配<code>Origin</code>页顶并且起点被白名单,将设置一个<code>Access-Control-Allow-Origin</code>开头。",
-       "apihelp-main-param-uselang": "用于消息翻译的语言。代码列表可从[[Special:ApiHelp/query+siteinfo|action=query&meta=siteinfo]]通过siprop=languages获取,或指定“user”以使用当前用户的语言设置,或指定“content”以使用此wiki的内容语言。",
+       "apihelp-main-param-uselang": "用于消息翻译的语言。代码列表可从<kbd>[[Special:ApiHelp/query+siteinfo|action=query&meta=siteinfo]]</kbd>通过<kbd>siprop=languages</kbd>获取,或指定<kbd>user</kbd>以使用当前用户的语言设置,或指定<kbd>content</kbd>以使用此wiki的内容语言。",
        "apihelp-block-description": "封禁一位用户。",
        "apihelp-block-param-user": "您要封禁的用户、IP地址或IP地址段。",
        "apihelp-block-param-expiry": "到期时间。可以是相对时间(例如<kbd>5 months</kbd>或<kbd>2 weeks</kbd>)或绝对时间(例如<kbd>2014-09-18T12:34:56Z</kbd>)。如果设置为<kbd>infinite</kbd>、<kbd>indefinite</kbd>或<kbd>never</kbd>,封禁将无限期。",
        "apihelp-protect-param-expiry": "到期时间戳。如果只有一个时间戳被设置,它将被用于所有保护。使用<kbd>infinite</kbd>、<kbd>indefinite</kbd>、<kbd>infinity</kbd>或<kbd>never</kbd>用于永不过期的保护。",
        "apihelp-protect-param-reason": "(解除)保护的原因。",
        "apihelp-protect-example-protect": "保护一个页面",
-       "apihelp-protect-example-unprotect": "通过设置限制为“all”解除保护一个页面",
+       "apihelp-protect-example-unprotect": "通过设置限制为<kbd>all</kbd>解除保护一个页面。",
        "apihelp-protect-example-unprotect2": "通过设置没有限制解除保护一个页面",
        "apihelp-purge-param-forcelinkupdate": "更新链接表。",
        "apihelp-purge-param-forcerecursivelinkupdate": "更新链接表中,并更新任何使用此页作为模板的页面的链接表。",
        "apihelp-query+alllinks-example-unique-generator": "获得所有已链接的标题,标记缺少的。",
        "apihelp-query+alllinks-example-generator": "获取包含这些链接的页面",
        "apihelp-query+allmessages-description": "返回来自该站点的消息。",
-       "apihelp-query+allmessages-param-messages": "要输出的哪些消息。\"*\" (默认值) 表示所有消息。",
+       "apihelp-query+allmessages-param-messages": "要输出的消息。<kbd>*</kbd>(默认)表示所有消息。",
        "apihelp-query+allmessages-param-prop": "要获取的属性。",
        "apihelp-query+allmessages-param-lang": "返回这种语言的信息。",
        "apihelp-query+allmessages-param-prefix": "返回带有该前缀的消息。",
        "apihelp-query+categories-example-generator": "获得有关用于<kbd>Albert Einstein</kbd>的分类的信息。",
        "apihelp-query+categoryinfo-example-simple": "获取有关<kbd>Category:Foo</kbd>和<kbd>Category:Bar</kbd>的信息。",
        "apihelp-query+categorymembers-description": "在指定的分类中列出所有页面。",
+       "apihelp-query+categorymembers-param-title": "要列举的分类(必需)。必须包括<kbd>{{ns:category}}:</kbd>前缀。不能与<var>$1pageid</var>一起使用。",
        "apihelp-query+categorymembers-param-namespace": "仅包含这些名字空间的页面。注意<kbd>$1type=subcat</kbd>或<kbd>$1type=file</kbd>可能被使用,而不是<kbd>$1namespace=14</kbd>或<kbd>6</kbd>。",
        "apihelp-query+categorymembers-param-type": "包含的分类成员类型。当<kbd>$1sort=timestamp</kbd>被设置时会忽略。",
        "apihelp-query+categorymembers-param-sort": "要作为排序方式的属性。",
        "apihelp-query+deletedrevisions-param-tag": "只列出被此标签标记的修订。",
        "apihelp-query+deletedrevisions-param-user": "只列出此用户做出的修订。",
        "apihelp-query+deletedrevisions-param-excludeuser": "不要列出此用户做出的修订。",
-       "apihelp-query+deletedrevisions-example-titles": "列出[[首页]]和[[Talk:首页]]的已删除修订,包含内容",
+       "apihelp-query+deletedrevisions-example-titles": "列出页面<kbd>Main Page</kbd>和<kbd>Talk:Main Page</kbd>的已删除修订,包含内容。",
        "apihelp-query+deletedrevisions-example-revids": "列出已删除修订<kbd>123456</kbd>的信息。",
        "apihelp-query+deletedrevs-paraminfo-modes": "{{PLURAL:$1|模式}}:$2",
        "apihelp-query+deletedrevs-param-from": "从此标题开始列出。",
        "apihelp-rollback-example-summary": "回退由IP用户192.0.2.5对[[首页]]做出的最近编辑,带编辑摘要“回退破坏”,并将这些编辑和回退标记为“机器人”",
        "apihelp-rsd-description": "导出一个RSD(Really Simple Discovery)架构",
        "apihelp-rsd-example-simple": "导出RSD架构",
-       "apihelp-setnotificationtimestamp-example-pagetimestamp": "设置“首页”的通知时间戳,这样所有从2012年1月1日起的编辑都会是未复核的",
+       "apihelp-setnotificationtimestamp-example-pagetimestamp": "设置<kbd>Main page</kbd>的通知时间戳,这样所有从2012年1月1日起的编辑都会是未复核的。",
+       "apihelp-setnotificationtimestamp-example-allpages": "重置在<kbd>{{ns:user}}</kbd>名字空间中的页面的通知状态。",
        "apihelp-tokens-param-type": "要请求的令牌类型。",
        "apihelp-unblock-description": "解封一位用户。",
-       "apihelp-unblock-param-id": "解封时需要的封禁ID(通过list=blocks获得)。不能与$1user一起使用。",
+       "apihelp-unblock-param-id": "解封时需要的封禁ID(通过<kbd>list=blocks</kbd>获得)。不能与<var>$1user</var>一起使用。",
        "apihelp-unblock-param-user": "要解封的用户名、IP地址或IP段。不能与$1id一起使用。",
        "apihelp-unblock-param-reason": "解封的原因。",
        "apihelp-unblock-example-id": "解封封禁ID #<kbd>105</kbd>。",
index 9df96f1..8fa10a6 100644 (file)
@@ -814,6 +814,10 @@ abstract class DatabaseBase implements IDatabase {
                if ( $user ) {
                        $this->open( $server, $user, $password, $dbName );
                }
+
+               $isMaster = !is_null( $this->getLBInfo( 'master' ) );
+               $trxProf = Profiler::instance()->getTransactionProfiler();
+               $trxProf->recordConnection( $this->mServer, $this->mDBname, $isMaster );
        }
 
        /**
@@ -1079,8 +1083,11 @@ abstract class DatabaseBase implements IDatabase {
 
                $isWriteQuery = $this->isWriteQuery( $sql );
                if ( $isWriteQuery ) {
+                       if ( !$this->mDoneWrites ) {
+                               wfDebug( __METHOD__ . ': Writes done: ' .
+                                       DatabaseBase::generalizeSQL( $sql ) . "\n" );
+                       }
                        # Set a flag indicating that writes have been done
-                       wfDebug( __METHOD__ . ': Writes done: ' . DatabaseBase::generalizeSQL( $sql ) . "\n" );
                        $this->mDoneWrites = microtime( true );
                }
 
@@ -1160,10 +1167,11 @@ abstract class DatabaseBase implements IDatabase {
                        $that = $this;
                        $queryStartTime = microtime( true );
                        $queryProfile = new ScopedCallback(
-                               function () use ( $that, $queryStartTime, $queryProf, $isMaster ) {
+                               function () use ( $that, $queryStartTime, $queryProf, $isWriteQuery ) {
                                        $n = $that->affectedRows();
                                        $trxProf = Profiler::instance()->getTransactionProfiler();
-                                       $trxProf->recordQueryCompletion( $queryProf, $queryStartTime, $isMaster, $n );
+                                       $trxProf->recordQueryCompletion(
+                                               $queryProf, $queryStartTime, $isWriteQuery, $n );
                                }
                        );
                }
index 05ac64e..a872d84 100644 (file)
@@ -97,16 +97,6 @@ class MWLoggerMonologHandler extends \Monolog\Handler\AbstractProcessingHandler
                $this->useLegacyFilter = $useLegacyFilter;
        }
 
-       public function isHandling( array $record ) {
-               $levelOk = parent::isHandling( $record );
-               if ( $levelOk && $this->useLegacyFilter ) {
-                       return MWLoggerLegacyLogger::shouldEmit(
-                               $record['channel'], $record['message'], $record['level'], $record
-                       );
-               }
-               return $levelOk;
-       }
-
        /**
         * Open the log sink described by our stream URI.
         */
@@ -183,6 +173,18 @@ class MWLoggerMonologHandler extends \Monolog\Handler\AbstractProcessingHandler
 
 
        protected function write( array $record ) {
+               if ( $this->useLegacyFilter &&
+                       !MWLoggerLegacyLogger::shouldEmit(
+                               $record['channel'], $record['message'],
+                               $record['level'], $record
+               ) ) {
+                       // Do not write record if we are enforcing legacy rules and they
+                       // do not pass this message. This used to be done in isHandling(),
+                       // but Monolog 1.12.0 made a breaking change that removed access
+                       // to the needed channel and context information.
+                       return;
+               }
+
                if ( $this->sink === null ) {
                        $this->openSink();
                }
diff --git a/includes/debug/logger/monolog/SyslogHandler.php b/includes/debug/logger/monolog/SyslogHandler.php
new file mode 100644 (file)
index 0000000..50c2fb5
--- /dev/null
@@ -0,0 +1,94 @@
+<?php
+/**
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ * http://www.gnu.org/copyleft/gpl.html
+ *
+ * @file
+ */
+
+use Monolog\Handler\SyslogUdpHandler;
+use Monolog\Logger;
+
+/**
+ * Log handler that supports sending log events to a syslog server using RFC
+ * 3164 formatted UDP packets.
+ *
+ * Monolog's SyslogUdpHandler creates a partial RFC 5424 header (PRI and
+ * VERSION) and relies on the associated formatter to complete the header and
+ * message payload. This makes using it with a fixed format formatter like
+ * Monolog\Formatter\LogstashFormatter impossible. Additionally, the direct
+ * syslog input for Logstash only handles RFC 3164 syslog packets.
+ *
+ * This Handler should work with any Formatter. The formatted message will be
+ * prepended with an RFC 3164 message header and a partial message body. The
+ * resulting packet will looks something like:
+ *
+ *   <PRI>DATETIME HOSTNAME PROGRAM: MESSAGE
+ *
+ * This format works as input to rsyslog and can also be processed by the
+ * default Logstash syslog input handler.
+ *
+ * @since 1.25
+ * @author Bryan Davis <bd808@wikimedia.org>
+ * @copyright © 2015 Bryan Davis and Wikimedia Foundation.
+ */
+class MWLoggerMonologSyslogHandler extends SyslogUdpHandler {
+
+       /**
+        * @var string $appname
+        */
+       private $appname;
+
+       /**
+        * @var string $hostname
+        */
+       private $hostname;
+
+
+       /**
+        * @param string $appname Application name to report to syslog
+        * @param string $host Syslog host
+        * @param int $port Syslog port
+        * @param int $facility Syslog message facility
+        * @param string $level The minimum logging level at which this handler
+        *   will be triggered
+        * @param bool $bubble Whether the messages that are handled can bubble up
+        *   the stack or not
+        */
+       public function __construct(
+               $appname,
+               $host,
+               $port = 514,
+               $facility = LOG_USER,
+               $level = Logger::DEBUG,
+               $bubble = true
+       ) {
+               parent::__construct( $host, $port, $facility, $level, $bubble );
+               $this->appname = $appname;
+               $this->hostname = php_uname( 'n' );
+       }
+
+       protected function makeCommonSyslogHeader( $severity ) {
+               $pri = $severity + $this->facility;
+
+               // Goofy date format courtesy of RFC 3164 :(
+               // RFC 3164 actually specifies that the day of month should be space
+               // padded rather than unpadded but this seems to work with rsyslog and
+               // Logstash.
+               $timestamp = date( 'M j H:i:s' );
+
+               return "<{$pri}>{$timestamp} {$this->hostname} {$this->appname}: ";
+       }
+}
index df85f9c..6ca61b2 100644 (file)
@@ -2046,6 +2046,17 @@ abstract class File {
                return $this->repo->getFileTimestamp( $this->getPath() );
        }
 
+       /**
+        * Returns the timestamp (in TS_MW format) of the last change of the description page.
+        * Returns false if the file does not have a description page, or retrieving the timestamp
+        * would be expensive.
+        * @since 1.25
+        * @return string|bool
+        */
+       public function getDescriptionTouched() {
+               return false;
+       }
+
        /**
         * Get the SHA-1 base 36 hash of the file
         *
index b2e5b00..699c915 100644 (file)
@@ -109,6 +109,9 @@ class LocalFile extends File {
        /** @var string Description of current revision of the file */
        private $description;
 
+       /** @var string TS_MW timestamp of the last change of the file description */
+       private $descriptionTouched;
+
        /** @var bool Whether the row was upgraded on load */
        private $upgraded;
 
@@ -1777,6 +1780,22 @@ class LocalFile extends File {
                return $this->timestamp;
        }
 
+       /**
+        * @return bool|string
+        */
+       public function getDescriptionTouched() {
+               // The DB lookup might return false, e.g. if the file was just deleted, or the shared DB repo
+               // itself gets it from elsewhere. To avoid repeating the DB lookups in such a case, we
+               // need to differentiate between null (uninitialized) and false (failed to load).
+               if ( $this->descriptionTouched === null ) {
+                       $cond = array( 'page_namespace' => $this->title->getNamespace(), 'page_title' => $this->title->getDBkey() );
+                       $touched = $this->repo->getSlaveDB()->selectField( 'page', 'page_touched', $cond, __METHOD__ );
+                       $this->descriptionTouched = $touched ? wfTimestamp( TS_MW, $touched ) : false;
+               }
+
+               return $this->descriptionTouched;
+       }
+
        /**
         * @return string
         */
index 5a3e4e9..4c11341 100644 (file)
@@ -165,6 +165,18 @@ class UnregisteredLocalFile extends File {
                return $this->handler->getImageSize( $this, $this->getLocalRefPath() );
        }
 
+       /**
+       * @return int
+       */
+       function getBitDepth() {
+               $gis = $this->getImageSize( $this->getLocalRefPath() );
+
+               if ( !$gis || !isset( $gis['bits'] ) ) {
+                       return 0;
+               }
+               return $gis['bits'];
+       }
+
        /**
         * @return bool
         */
index 2a888a5..c89c6b6 100644 (file)
 abstract class ImageGalleryBase extends ContextSource {
        /**
         * @var array Gallery images
-        * @deprecated since 1.23 (was declared "var") and will be removed in 1.24
         */
-       public $mImages;
+       protected $mImages;
 
        /**
         * @var bool Whether to show the filesize in bytes in categories
-        * @deprecated since 1.23 (was declared "var") and will be removed in 1.24
         */
-       public $mShowBytes;
+       protected $mShowBytes;
 
        /**
         * @var bool Whether to show the filename. Default: true
-        * @deprecated since 1.23 (was declared "var") and will be removed in 1.24
         */
-       public $mShowFilename;
+       protected $mShowFilename;
 
        /**
         * @var string Gallery mode. Default: traditional
-        * @deprecated since 1.23 (was declared "var") and will be removed in 1.24
         */
-       public $mMode;
+       protected $mMode;
 
        /**
         * @var bool|string Gallery caption. Default: false
-        * @deprecated since 1.23 (was declared "var") and will be removed in 1.24
         */
-       public $mCaption = false;
+       protected $mCaption = false;
 
        /**
         * @var bool Hide blacklisted images?
-        * @deprecated since 1.23 (was declared "var") and will be removed in 1.24
         */
-       public $mHideBadImages;
+       protected $mHideBadImages;
 
        /**
         * @var Parser Registered parser object for output callbacks
index 3b38fbe..2ef4978 100644 (file)
@@ -17,7 +17,7 @@ class HTMLFloatField extends HTMLTextField {
 
                $value = trim( $value );
 
-               # http://dev.w3.org/html5/spec/common-microsyntaxes.html#real-numbers
+               # http://www.w3.org/TR/html5/infrastructure.html#floating-point-numbers
                # with the addition that a leading '+' sign is ok.
                if ( !preg_match( '/^((\+|\-)?\d+(\.\d+)?(E(\+|\-)?\d+)?)?$/i', $value ) ) {
                        return $this->msg( 'htmlform-float-invalid' )->parseAsBlock();
index d0ee13b..b0148d9 100644 (file)
@@ -11,7 +11,7 @@ class HTMLIntField extends HTMLFloatField {
                        return $p;
                }
 
-               # http://dev.w3.org/html5/spec/common-microsyntaxes.html#signed-integers
+               # http://www.w3.org/TR/html5/infrastructure.html#signed-integers
                # with the addition that a leading '+' sign is ok. Note that leading zeros
                # are fine, and will be left in the input, which is useful for things like
                # phone numbers when you know that they are integers (the HTML5 type=tel
index eac9423..8075de5 100644 (file)
@@ -1,14 +1,30 @@
 <?php
 /**
- * Wrapper for ChgangeTags::buildTagFilterSelector to use in HTMLForm
+ * Wrapper for ChangeTags::buildTagFilterSelector to use in HTMLForm
  */
 class HTMLTagFilter extends HTMLFormField {
+       protected $tagFilter;
+
+       function getTableRow( $value ) {
+               $this->tagFilter = ChangeTags::buildTagFilterSelector( $value );
+               if ( $this->tagFilter ) {
+                       return parent::getTableRow( $value );
+               }
+               return '';
+       }
+
+       function getDiv( $value ) {
+               $this->tagFilter = ChangeTags::buildTagFilterSelector( $value );
+               if ( $this->tagFilter ) {
+                       return parent::getDiv( $value );
+               }
+               return '';
+       }
+
        function getInputHTML( $value ) {
-               $tagFilter = ChangeTags::buildTagFilterSelector( $value );
-               if ( $tagFilter ) {
-                       list( $tagFilterLabel, $tagFilterSelector ) = $tagFilter;
+               if ( $this->tagFilter ) {
                        // we only need the select field, HTMLForm should handle the label
-                       return $tagFilterSelector;
+                       return $this->tagFilter[1];
                }
                return '';
        }
index 9fd6726..c975090 100644 (file)
@@ -21,7 +21,8 @@
                        "Maxim21",
                        "Wladek92",
                        "Scoopfinder",
-                       "Seb35"
+                       "Seb35",
+                       "Linedwell"
                ]
        },
        "config-desc": "Le programme d’installation de MediaWiki",
@@ -71,7 +72,7 @@
        "config-unicode-using-intl": "Utilisation de [http://pecl.php.net/intl l'extension PECL intl] pour la normalisation Unicode.",
        "config-unicode-pure-php-warning": "<strong>Attention</strong> : L'[http://pecl.php.net/intl extension PECL intl] n'est pas disponible pour la normalisation d’Unicode, retour à la version lente implémentée en PHP.\nSi votre site web sera très fréquenté, vous devriez lire ceci : [//www.mediawiki.org/wiki/Special:MyLanguage/Unicode_normalization_considerations ''Unicode normalization''] (en anglais).",
        "config-unicode-update-warning": "'''Attention''': La version installée du ''wrapper'' de normalisation Unicode utilise une vieille version de la [http://site.icu-project.org/ bibliothèque logicielle ''ICU Project''].\nVous devriez faire une [//www.mediawiki.org/wiki/Special:MyLanguage/Unicode_normalization_considerations mise à jour] si vous êtes tout à fait concerné par l'usage d'Unicode.",
-       "config-no-db": "Impossible de trouver un pilote de base de données approprié ! Vous devez installer un pilote de base de données pour PHP. Les types de bases de données suivants sont reconnus : $1.\n\nSi vous avez compilé PHP vous-même, reconfigurez-le avec un client de base de données activé, par exemple en utilisant <code>./configure --with-mysqli</code>. Si vous avez installé PHP depuis un paquet Debian ou Ubuntu, alors vous devrez aussi installer, par exemple, le paquet <code>php5-mysql</code>.",
+       "config-no-db": "Impossible de trouver un pilote de base de données approprié ! Vous devez installer un pilote de base de données pour PHP. {{PLURAL:$2|Le type suivant|Les types suivants}} de bases de données {{PLURAL:$2|est reconnu|sont reconnus}} : $1.\n\nSi vous avez compilé PHP vous-même, reconfigurez-le avec un client de base de données actif, par exemple en utilisant <code>./configure --with-mysqli</code>. Si vous avez installé PHP depuis un paquet Debian ou Ubuntu, alors vous devrez aussi installer, par exemple, le paquet <code>php5-mysql</code>.",
        "config-outdated-sqlite": "'''Attention''': vous avez SQLite $1, qui est inférieur à la version minimale requise $2. SQLite sera indisponible.",
        "config-no-fts3": "'''Attention :''' SQLite est compilé sans le module [//sqlite.org/fts3.html FTS3] ; les fonctions de recherche ne seront pas disponibles sur ce moteur.",
        "config-register-globals-error": "<strong>Erreur : L’option <code>[http://php.net/register_globals register_globals]</code> de PHP est activée.\nElle doit être désactivée pour poursuivre l’installation.</strong>\nVoyez [https://www.mediawiki.org/wiki/register_globals https://www.mediawiki.org/wiki/register_globals] pour avoir de l’aide sur la manière de faire cela.",
index a08c83a..920d9ae 100644 (file)
@@ -6,6 +6,7 @@
        },
        "config-information": "Agahî",
        "config-your-language": "Zimanê te:",
+       "config-wiki-language": "Zimanê wîkiyê:",
        "config-page-language": "Ziman",
        "config-page-name": "Nav",
        "config-page-options": "Vebijêrk",
diff --git a/includes/jobqueue/jobs/RefreshLinksJob2.php b/includes/jobqueue/jobs/RefreshLinksJob2.php
deleted file mode 100644 (file)
index 97405ae..0000000
+++ /dev/null
@@ -1,141 +0,0 @@
-<?php
-/**
- * Job to update links for a given title.
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License along
- * with this program; if not, write to the Free Software Foundation, Inc.,
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- * http://www.gnu.org/copyleft/gpl.html
- *
- * @file
- * @ingroup JobQueue
- */
-
-/**
- * Background job to update links for titles in certain backlink range by page ID.
- * Newer version for high use templates. This is deprecated by RefreshLinksPartitionJob.
- *
- * @ingroup JobQueue
- * @deprecated since 1.23
- */
-class RefreshLinksJob2 extends Job {
-       function __construct( $title, $params ) {
-               parent::__construct( 'refreshLinks2', $title, $params );
-               // Base jobs for large templates can easily be de-duplicated
-               $this->removeDuplicates = !isset( $params['start'] ) && !isset( $params['end'] );
-       }
-
-       /**
-        * Run a refreshLinks2 job
-        * @return bool Success
-        */
-       function run() {
-               global $wgUpdateRowsPerJob;
-
-               $linkCache = LinkCache::singleton();
-               $linkCache->clear();
-
-               if ( is_null( $this->title ) ) {
-                       $this->error = "refreshLinks2: Invalid title";
-                       return false;
-               }
-
-               // Back compat for pre-r94435 jobs
-               $table = isset( $this->params['table'] ) ? $this->params['table'] : 'templatelinks';
-
-               // Avoid slave lag when fetching templates.
-               // When the outermost job is run, we know that the caller that enqueued it must have
-               // committed the relevant changes to the DB by now. At that point, record the master
-               // position and pass it along as the job recursively breaks into smaller range jobs.
-               // Hopefully, when leaf jobs are popped, the slaves will have reached that position.
-               if ( isset( $this->params['masterPos'] ) ) {
-                       $masterPos = $this->params['masterPos'];
-               } elseif ( wfGetLB()->getServerCount() > 1 ) {
-                       $masterPos = wfGetLB()->getMasterPos();
-               } else {
-                       $masterPos = false;
-               }
-
-               $tbc = $this->title->getBacklinkCache();
-
-               $jobs = array(); // jobs to insert
-               if ( isset( $this->params['start'] ) && isset( $this->params['end'] ) ) {
-                       # This is a partition job to trigger the insertion of leaf jobs...
-                       $jobs = array_merge( $jobs, $this->getSingleTitleJobs( $table, $masterPos ) );
-               } else {
-                       # This is a base job to trigger the insertion of partitioned jobs...
-                       if ( $tbc->getNumLinks( $table, $wgUpdateRowsPerJob + 1 ) <= $wgUpdateRowsPerJob ) {
-                               # Just directly insert the single per-title jobs
-                               $jobs = array_merge( $jobs, $this->getSingleTitleJobs( $table, $masterPos ) );
-                       } else {
-                               # Insert the partition jobs to make per-title jobs
-                               foreach ( $tbc->partition( $table, $wgUpdateRowsPerJob ) as $batch ) {
-                                       list( $start, $end ) = $batch;
-                                       $jobs[] = new RefreshLinksJob2( $this->title,
-                                               array(
-                                                       'table' => $table,
-                                                       'start' => $start,
-                                                       'end' => $end,
-                                                       'masterPos' => $masterPos,
-                                               ) + $this->getRootJobParams() // carry over information for de-duplication
-                                       );
-                               }
-                       }
-               }
-
-               if ( count( $jobs ) ) {
-                       JobQueueGroup::singleton()->push( $jobs );
-               }
-
-               return true;
-       }
-
-       /**
-        * @param string $table
-        * @param mixed $masterPos
-        * @return array
-        */
-       protected function getSingleTitleJobs( $table, $masterPos ) {
-               # The "start"/"end" fields are not set for the base jobs
-               $start = isset( $this->params['start'] ) ? $this->params['start'] : false;
-               $end = isset( $this->params['end'] ) ? $this->params['end'] : false;
-               $titles = $this->title->getBacklinkCache()->getLinks( $table, $start, $end );
-               # Convert into single page refresh links jobs.
-               # This handles well when in sapi mode and is useful in any case for job
-               # de-duplication. If many pages use template A, and that template itself
-               # uses template B, then an edit to both will create many duplicate jobs.
-               # Roughly speaking, for each page, one of the "RefreshLinksJob" jobs will
-               # get run first, and when it does, it will remove the duplicates. Of course,
-               # one page could have its job popped when the other page's job is still
-               # buried within the logic of a refreshLinks2 job.
-               $jobs = array();
-               foreach ( $titles as $title ) {
-                       $jobs[] = new RefreshLinksJob( $title,
-                               array( 'masterPos' => $masterPos ) + $this->getRootJobParams()
-                       ); // carry over information for de-duplication
-               }
-               return $jobs;
-       }
-
-       /**
-        * @return array
-        */
-       public function getDeduplicationInfo() {
-               $info = parent::getDeduplicationInfo();
-               // Don't let highly unique "masterPos" values ruin duplicate detection
-               if ( is_array( $info['params'] ) ) {
-                       unset( $info['params']['masterPos'] );
-               }
-               return $info;
-       }
-}
index c6fcdb0..4487fec 100644 (file)
@@ -80,6 +80,9 @@ class LogFormatter {
        /** @var int Constant for handling log_deleted */
        protected $audience = self::FOR_PUBLIC;
 
+       /** @var IContextSource Context for logging */
+       public $context;
+
        /** @var bool Whether to output user tool links */
        protected $linkFlood = false;
 
index 8712571..2c10742 100644 (file)
@@ -383,7 +383,7 @@ abstract class BagOStuff implements LoggerAwareInterface {
        /**
         * @param string $text
         */
-       public function debug( $text ) {
+       protected function debug( $text ) {
                if ( $this->debugMode ) {
                        $this->logger->debug( "{class} debug: $text", array(
                                'class' => get_class( $this ),
index 2f900f9..d30f589 100644 (file)
@@ -2154,10 +2154,12 @@ class WikiPage implements Page, IDBAccessObject {
         * - changed: boolean, whether the revision changed the content (default true)
         * - created: boolean, whether the revision created the page (default false)
         * - moved: boolean, whether the page was moved (default false)
-        * - oldcountable: boolean or null (default null):
+        * - oldcountable: boolean, null, or string 'no-change' (default null):
         *   - boolean: whether the page was counted as an article before that
         *     revision, only used in changed is true and created is false
-        *   - null: don't change the article count
+        *   - null: if created is false, don't update the article count; if created
+        *     is true, do update the article count
+        *   - 'no-change': don't update the article count, ever
         */
        public function doEditUpdates( Revision $revision, User $user, array $options = array() ) {
                global $wgEnableParserCache;
@@ -2212,7 +2214,9 @@ class WikiPage implements Page, IDBAccessObject {
                $title = $this->mTitle->getPrefixedDBkey();
                $shortTitle = $this->mTitle->getDBkey();
 
-               if ( !$options['changed'] && !$options['moved'] ) {
+               if ( $options['oldcountable'] === 'no-change' ||
+                       ( !$options['changed'] && !$options['moved'] )
+               ) {
                        $good = 0;
                } elseif ( $options['created'] ) {
                        $good = (int)$this->isCountable( $editInfo );
index 46ba4b4..7884ca5 100644 (file)
@@ -4580,7 +4580,7 @@ class Parser {
 
                        # HTML names must be case-insensitively unique (bug 10721).
                        # This does not apply to Unicode characters per
-                       # http://dev.w3.org/html5/spec/infrastructure.html#case-sensitivity-and-string-comparison
+                       # http://www.w3.org/TR/html5/infrastructure.html#case-sensitivity-and-string-comparison
                        # @todo FIXME: We may be changing them depending on the current locale.
                        $arrayKey = strtolower( $safeHeadline );
                        if ( $legacyHeadline === false ) {
index 9bb2db9..4b74206 100644 (file)
@@ -48,10 +48,8 @@ abstract class Profiler {
                'udp' => 'ProfilerOutputUdp',
        );
 
-       // @codingStandardsIgnoreStart PSR2.Classes.PropertyDeclaration.Underscore
-       /** @var Profiler Do not call this outside Profiler and ProfileSection */
-       public static $__instance = null;
-       // @codingStandardsIgnoreEnd
+       /** @var Profiler */
+       private static $instance = null;
 
        /**
         * @param array $params
@@ -69,7 +67,7 @@ abstract class Profiler {
         * @return Profiler
         */
        final public static function instance() {
-               if ( self::$__instance === null ) {
+               if ( self::$instance === null ) {
                        global $wgProfiler;
                        if ( is_array( $wgProfiler ) ) {
                                $class = isset( $wgProfiler['class'] ) ? $wgProfiler['class'] : 'ProfilerStub';
@@ -77,12 +75,12 @@ abstract class Profiler {
                                if ( PHP_SAPI === 'cli' || mt_rand( 0, $factor - 1 ) != 0 ) {
                                        $class = 'ProfilerStub';
                                }
-                               self::$__instance = new $class( $wgProfiler );
+                               self::$instance = new $class( $wgProfiler );
                        } else {
-                               self::$__instance = new ProfilerStub( array() );
+                               self::$instance = new ProfilerStub( array() );
                        }
                }
-               return self::$__instance;
+               return self::$instance;
        }
 
        /**
@@ -93,10 +91,10 @@ abstract class Profiler {
         * @since 1.25
         */
        final public static function replaceStubInstance( Profiler $profiler ) {
-               if ( self::$__instance && !( self::$__instance instanceof ProfilerStub ) ) {
+               if ( self::$instance && !( self::$instance instanceof ProfilerStub ) ) {
                        throw new MWException( 'Could not replace non-stub profiler instance.' );
                } else {
-                       self::$__instance = $profiler;
+                       self::$instance = $profiler;
                }
        }
 
index 3637781..9609bd3 100644 (file)
@@ -42,6 +42,78 @@ class TransactionProfiler {
        /** @var array transaction ID => list of (query name, start time, end time) */
        protected $dbTrxMethodTimes = array();
 
+       /** @var array */
+       protected $hits = array(
+               'writes'      => 0,
+               'queries'     => 0,
+               'conns'       => 0,
+               'masterConns' => 0
+       );
+       /** @var array */
+       protected $expect = array(
+               'writes'      => INF,
+               'queries'     => INF,
+               'conns'       => INF,
+               'masterConns' => INF
+       );
+       /** @var array */
+       protected $expectBy = array();
+
+       /**
+        * Set performance expectations
+        *
+        * With conflicting expect, the most specific ones will be used
+        *
+        * @param string $event (writes,queries,conns,mConns)
+        * @param integer $value Maximum count of the event
+        * @param string $fname Caller
+        * @since 1.25
+        */
+       public function setExpectation( $event, $value, $fname ) {
+               $this->expect[$event] = isset( $this->expect[$event] )
+                       ? min( $this->expect[$event], $value )
+                       : $value;
+               if ( $this->expect[$event] == $value ) {
+                       $this->expectBy[$event] = $fname;
+               }
+       }
+
+       /**
+        * Reset performance expectations and hit counters
+        *
+        * @since 1.25
+        */
+       public function resetExpectations() {
+               foreach ( $this->hits as &$val ) {
+                       $val = 0;
+               }
+               unset( $val );
+               foreach ( $this->expect as &$val ) {
+                       $val = INF;
+               }
+               unset( $val );
+               $this->expectBy = array();
+       }
+
+       /**
+        * Mark a DB as having been connected to with a new handle
+        *
+        * Note that there can be multiple connections to a single DB.
+        *
+        * @param string $server DB server
+        * @param string $db DB name
+        * @param bool $isMaster
+        */
+       public function recordConnection( $server, $db, $isMaster ) {
+               // Report when too many connections happen...
+               if ( $this->hits['conns']++ == $this->expect['conns'] ) {
+                       $this->reportExpectationViolated( 'conns', "[connect to $server ($db)]" );
+               }
+               if ( $isMaster && $this->hits['masterConns']++ == $this->expect['masterConns'] ) {
+                       $this->reportExpectationViolated( 'masterConns', "[connect to $server ($db)]" );
+               }
+       }
+
        /**
         * Mark a DB as in a transaction with one or more writes pending
         *
@@ -87,6 +159,14 @@ class TransactionProfiler {
                                "Query affected $n rows:\n" . $query . "\n" . wfBacktrace( true ) );
                }
 
+               // Report when too many writes/queries happen...
+               if ( $this->hits['queries']++ == $this->expect['queries'] ) {
+                       $this->reportExpectationViolated( 'queries', $query );
+               }
+               if ( $isWrite && $this->hits['writes']++ == $this->expect['writes'] ) {
+                       $this->reportExpectationViolated( 'writes', $query );
+               }
+
                if ( !$this->dbTrxHoldingLocks ) {
                        // Short-circuit
                        return;
@@ -163,4 +243,15 @@ class TransactionProfiler {
                unset( $this->dbTrxHoldingLocks[$name] );
                unset( $this->dbTrxMethodTimes[$name] );
        }
+
+       /**
+        * @param string $expect
+        * @param string $query
+        */
+       protected function reportExpectationViolated( $expect, $query ) {
+               $n = $this->expect[$expect];
+               $by = $this->expectBy[$expect];
+               wfDebugLog( 'DBPerformance',
+                       "Expectation ($expect <= $n) by $by not met:\n$query\n" . wfBacktrace( true ) );
+       }
 }
index e3c7e3a..1056cda 100644 (file)
@@ -322,9 +322,9 @@ class MediaStatisticsPage extends QueryPage {
        public function preprocessResults( $dbr, $res ) {
                $this->totalCount = $this->totalBytes = 0;
                foreach ( $res as $row ) {
-                       list( , , $count, $bytes ) = $this->splitFakeTitle( $row->title );
-                       $this->totalCount += $count;
-                       $this->totalBytes += $bytes;
+                       $mediaStats = $this->splitFakeTitle( $row->title );
+                       $this->totalCount += isset( $mediaStats[2] ) ? $mediaStats[2] : 0;
+                       $this->totalBytes += isset( $mediaStats[3] ) ? $mediaStats[3] : 0;
                }
                $res->seek( 0 );
        }
index 4429022..1f339d1 100644 (file)
@@ -199,10 +199,16 @@ class SpecialStatistics extends SpecialPage {
                                $grouppageLocalized = $msg->text();
                        }
                        $linkTarget = Title::newFromText( $grouppageLocalized );
-                       $grouppage = Linker::link(
-                               $linkTarget,
-                               htmlspecialchars( $groupnameLocalized )
-                       );
+
+                       if ( $linkTarget ) {
+                               $grouppage = Linker::link(
+                                       $linkTarget,
+                                       htmlspecialchars( $groupnameLocalized )
+                               );
+                       } else {
+                               $grouppage = htmlspecialchars( $groupnameLocalized );
+                       }
+
                        $grouplink = Linker::linkKnown(
                                SpecialPage::getTitleFor( 'Listusers' ),
                                $this->msg( 'listgrouprights-members' )->escaped(),
index ca3386c..df9d363 100644 (file)
@@ -428,7 +428,7 @@ class SpecialWatchlist extends ChangesListSpecialPage {
                        $filters[$key] = $params['msg'];
                }
                // Disable some if needed
-               if ( !$user->useNPPatrol() ) {
+               if ( !$user->useRCPatrol() ) {
                        unset( $filters['hidepatrolled'] );
                }
 
index bb26d19..d4df1ab 100644 (file)
        'ug-latn' => 'Uyghurche', # Uyghur (Latin script)
        'uk' => 'українська', # Ukrainian
        'ur' => 'اردو',     # Urdu
-       'uz' => 'oʻzbekcha',   # Uzbek
+       'uz' => "oʻzbekcha/ўзбекча",    # Uzbek (multiple scripts - defaults to Latin)
+       'uz-cyrl' => "ўзбекча",  # Uzbek Cyrillic
+       'uz-latn' => "oʻzbekcha",      # Uzbek Latin (default)
        've' => 'Tshivenda',            # Venda
        'vec' => 'vèneto',     # Venetian
        'vep' => 'vepsän kel’',      # Veps
index 2bb61e4..2593639 100644 (file)
        "showhideselectedversions": "أظهر/أخف المراجعات المختارة",
        "editundo": "رجوع",
        "diff-empty": "(لا فرق)",
-       "diff-multi-sameuser": "({{PLURAL:$1|مراجعة متوسطة واحدة|مراجعتان متوسطتان|$1 مراجعات متوسطة|$1 مراجعة متوسطة}} بواسطة نفس المستخدم غير معروضة)",
-       "diff-multi-otherusers": "({{PLURAL:$1|Ù\85راجعة Ù\85تÙ\88سطة Ù\88احدة|Ù\85راجعتاÙ\86 Ù\85تÙ\88سطتاÙ\86|$1 Ù\85راجعات Ù\85تÙ\88سطة|$1 Ù\85راجعة Ù\85تÙ\88سطة}} Ø¨Ù\88اسطة {{PLURAL:$2|مستخدم واحد آخر|مستخدمين اثنين آخرين|$2 مستخدمين|$2 مستخدماً|$2 مستخدم}} غير معروضة)",
+       "diff-multi-sameuser": "({{PLURAL:$1|Ù\84ا Ù\85راجعات Ù\85تÙ\88سطة|Ù\85راجعة Ù\85تÙ\88سطة Ù\88احدة|Ù\85راجعتاÙ\86 Ù\85تÙ\88سطتاÙ\86|$1 Ù\85راجعات Ù\85تÙ\88سطة|$1 Ù\85راجعة Ù\85تÙ\88سطة}} Ø¨Ù\88اسطة Ù\86Ù\81س Ø§Ù\84Ù\85ستخدÙ\85 ØºÙ\8aر Ù\85عرÙ\88ضة)",
+       "diff-multi-otherusers": "({{PLURAL:$1|Ù\84ا Ù\85راجعات|Ù\85راجعة Ù\85تÙ\88سطة Ù\88احدة|Ù\85راجعتاÙ\86 Ù\85تÙ\88سطتاÙ\86|$1 Ù\85راجعات Ù\85تÙ\88سطة|$1 Ù\85راجعة Ù\85تÙ\88سطة}} Ø¨Ù\88اسطة {{PLURAL:$2|Ù\88Ù\84ا Ù\85ستخدÙ\85|مستخدم واحد آخر|مستخدمين اثنين آخرين|$2 مستخدمين|$2 مستخدماً|$2 مستخدم}} غير معروضة)",
        "diff-multi-manyusers": "({{PLURAL:$1||مراجعة واحدة متوسطة غير معروضة أجراها|مراجعتان متوسطتان غير معروضتان أجراهما|$1 مراجعات متوسطة غير معروضة أجراها|$1 مراجعة متوسطة غير معروضة أجراها}} أكثر من {{PLURAL:$2||مستخدم واحد|مستخدمين|$2 مستخدمين|$2 مستخدمًا|$2 مستخدم}}.)",
        "difference-missing-revision": "{{PLURAL:$2|مراجعة واحدة|$2 مراجعات}} لهذا الفرق ($1) {{PLURAL:$2|لم|لم}} يتم إيجادها.\n\nهذا يحدث عادة عن طريق اتباع وصلة فرق قديمة لصفحة تم حذفها.\nالتفاصيل يمكن إيجادها في [{{fullurl:{{#Special:Log}}/delete|page={{FULLPAGENAMEE}}}} سجل الحذف].",
        "searchresults": "نتائج البحث",
index 0d9b3df..3e03958 100644 (file)
        "site-atom-feed": "$1 कय एटम फ़ीड",
        "page-rss-feed": "\"$1\" आर॰एस॰एस फ़ीड",
        "page-atom-feed": "\"$1\" एटम फ़ीड",
+       "feed-atom": "एटम फिड",
        "red-link-title": "$1 (पन्ना मौजूद नाई है)",
        "sort-descending": "घटे कय क्रम में मिलाओ",
        "sort-ascending": "बढे कय क्रम में मिलाओ",
        "file-thumbnail-no": "इ फ़ाइल कय नाँव <strong>$1</strong> से शुरू होत है।\nइ आकार घटावाल ''(अंगूठाकार)'' होइ सकत है।\nअगर इ चित्र अपने मूल आकार में है तव एका अपलोड करा जाय, नाइ तव फ़ाइल बदला जाय।",
        "fileexists-forbidden": "इ नाँव कय फ़ाइल पहिलवे से मौजूद है, अउर एकरे जगही अउर नाइ अपलोड कै सका जात है।\nतब्बव यदि आप इ फ़ाइल कय अपलोड करय चाहा जात है, तव कृपया वापस जाइ कय एकरे लिए कवनो अउर नाँव चुना जाय।\n[[File:$1|thumb|center|$1]]",
        "fileexists-shared-forbidden": "इ नाँव कय फ़ाइल साझा फ़ाइल भंडार में पहिलवे से मौजूद है।\nतब्बो यदि आप इ फ़ाइल कय अपलोड करय चाहा जात है, तव कृपया वापिस जाइ कय एकरे खत्तीर कवनो दुसर नाँव चुना जाय।\n[[File:$1|thumb|center|$1]]",
+       "file-exists-duplicate": "यह फ़ाइल निम्नलिखित {{PLURAL:$1|फ़ाइल|फ़ाइलों}} की प्रति है:",
+       "file-deleted-duplicate": "इसी फ़ाइल ([[:$1]]) से हूबहू मेल खाती एक फ़ाइल पहले हटाई जा चुकी है।\nइसे फिर से अपलोड करने से पहले आपको पुरानी फ़ाइल का हटाने के इतिहास देख लेना चाहिए।",
+       "file-deleted-duplicate-notitle": "इससे पहले इस फ़ाइल के समान एक फ़ाइल को हटाया गया है, और शीर्षक छिपा दिया गया है।\nइसे फिर से अपलोड करने से पहले आप किसी ऐसे व्यक्ति से स्थिति की समीक्षा करने के लिए कहें जिसके पास छिपी फ़ाइल का डाटा देखने की क्षमता है।",
        "uploadwarning": "अपलोड चेतावनी",
        "uploadwarning-text": "फ़ाइल विवरण कय मिलाई कय फिर कोशिश करा जाय।",
        "savefile": "फ़ाइल सहेजा जाय",
        "upload-description": "फ़ाइल विवरण",
        "upload-options": "अपलोड विकल्प",
        "watchthisupload": "इ फ़ाइल पे ध्यान रक्खा जाय",
+       "filewasdeleted": "इस नाम की एक फ़ाइल पहले भी अपलोड होने के बाद हटाई जा चुकी है।\nफिरसे अपलोड करने से पहले आप $1 को अच्छी तरह से जाँचे।",
+       "filename-bad-prefix": "आप जो फ़ाइल अपलोड कर रहे हैं उसका नाम '''\"$1\"''' से शुरू होता है, जो डिजिटल कैमेरे द्वारा दिया गया नाम है।\nकृपया इस फ़ाइल के लिये कोई दूसरा अधिक जानकारीयुक्त नाम चुनें।",
        "upload-success-subj": "अपलोड होइ गय",
        "upload-success-msg": "आप कय [$2] से अपलोड असफल रहा। ई [[:{{ns:file}}:$1]] पे उपलब्ध है",
        "upload-failure-subj": "अपलोड समस्या",
        "upload-file-error": "आन्तरिक त्रुटि",
        "upload-file-error-text": "सर्वर पे अस्थायी फ़ाइल बनावत समय आंतरिक त्रुटि आई गय।\nकृपया कवनो [[Special:ListUsers/sysop|प्रबंधक]] से संपर्क करा जाय।",
        "upload-misc-error": "अज्ञात अपलोड त्रुटि",
+       "upload-misc-error-text": "अपलोड के दौरान कोई अज्ञात त्रुटि आई।\nकृपया यह पुष्टि कर लें कि यू॰आर॰एल वैध है और उस तक पहुँचा जा सकता है, उसके बाद फिर कोशिश करें।\nअगर फिर भी समस्या आती है तो किसी [[Special:ListUsers/sysop|प्रबंधक]] से संपर्क करें।",
        "upload-too-many-redirects": "इ यू॰आर॰एल में ढेर कुल पुनर्निर्देशन हैं",
        "upload-http-error": "एकठु एच॰टी॰टी॰पी त्रुटि आई गय: $1",
        "upload-copy-upload-invalid-domain": "कॉपी अपलोड इ डोमेन से उपलब्ध नाई हैं।",
        "zip-bad": "ज़िप फ़ाइल या तो दूषित है या किसी अन्य कारण से अपठनीय है।\nइसकी ठीक से सुरक्षा जाँच नहीं की जा सकती।",
        "zip-unsupported": "यह फ़ाइल एक ज़िप फ़ाइल है जो ऐसी ज़िप विशेषताओं का प्रयोग करती है जो मीडियाविकि द्वारा समर्थित नहीं हैं।\nइसकी ठीक से सुरक्षा जाँच नहीं की जा सकती।",
        "uploadstash": "स्टैश अपलोड करा जाय",
+       "uploadstash-summary": "यह पृष्ठ उन फ़ाइलों के लिए अभिगम उपलब्ध कराता है जो अपलोड की गई हैं ‍‌‍‌(या अपलोड प्रक्रिया में हैं) लेकिन विकी पर अभी भी प्रकाशित नहीं हुई हैं। ये फ़ाइलें अपलोड करने वाले सदस्य को छोड़कर किसी के लिए भी दर्शित नहीं हैं।",
        "uploadstash-clear": "स्टैश करल फ़ाइल साफ़ करा जाय",
        "uploadstash-nofiles": "आप कय लगे कवनो स्टैश करल फाइल नाइ है ।",
        "uploadstash-badtoken": "इ काम असफल रहा ,लागत है आप कय सम्पादन प्रमाणपत्र कय अवधि खतम होइ गवा है ।",
        "filedelete-success": "'''$1''' मेटावा है।",
        "filedelete-success-old": "'''[[Media:$1|$1]]''' कय $2 कय $3 बजे कय अवतरण हटाई गा है।",
        "filedelete-nofile": "<strong>$1</strong> नाई है.",
+       "filedelete-nofile-old": "\n'''$1''' का आपकी बताई विशेषताओं वाला संग्रहित अवतरण मौजूद नहीं है।",
        "filedelete-otherreason": "अउर/दुसर कारण:",
        "filedelete-reason-otherlist": "दुसर कारण",
        "filedelete-reason-dropdown": "*हटावे कय साधारण कारण\n** कॉपीराइट उल्लंघन\n** डुप्लिकेट फ़ाइल",
        "filedelete-maintenance": "रखरखाव चलत है अव रखरखाव कय दौरान फ़ाइलन् कय हटाइब औ पुनर्स्थापित करब मिनाही है।",
        "filedelete-maintenance-title": "फ़ाइल नाइ हटाय सका जात है",
        "mimesearch": "MIME खोज",
+       "mimesearch-summary": "MIME-प्रकारों के अनुसार फ़ाइलें खोजने के लिये इस पृष्ठ का इस्तेमाल किया जा सकता है।\nइनपुट: फ़ाइल का प्रकार/उपप्रकार या प्रकार/*, उदा॰ <code>image/jpeg</code>।",
        "mimetype": "MIME प्रकार:",
        "download": "डाउनलोड",
        "unwatchedpages": "ध्यान ना दिहल पन्ना",
        "listduplicatedfiles": "डुप्लिकेट वाले फाइल",
        "listduplicatedfiles-entry": "[[:फाइल:$1|$1]] कय लगे [[$3|{{PLURAL:$2|एक्ठु डुप्लिकेट|$2 डुप्लिकेट}}]].",
        "unusedtemplates": "अप्रयुक्त साँचा",
+       "unusedtemplatestext": "इस पृष्ठ पर {{ns:template}} नामस्थान वाले वे सभी पृष्ठ इंगित है जो किसी अन्य पृष्ठ में शामिल नहीं हैं।\nइन्हें हटाने के पहले इन साँचों की और कड़ियाँ जाँच लें।",
        "unusedtemplateswlh": "अउर कड़ि",
        "randompage": "कवनो एक पन्ना",
        "randompage-nopages": "ई {{PLURAL:$2|नामस्थान|नामस्थानन्}} मा कवनो फाइल नाइ है: $1।",
        "pageswithprop-prophidden-long": "लम्मा पाठ गुण मान लुकुआवा है ($1)",
        "pageswithprop-prophidden-binary": "बाइनरी पाठ गुण मान लुकुआवा है ($1)",
        "doubleredirects": "दुईठु पुनर्निर्देश",
+       "doubleredirectstext": "यह पृष्ठ उन पृष्ठों की सूची देता है जो अन्य पुनर्निर्देशित पृष्ठों की ओर पुनर्निर्देशित हैं।\nहर कतार में पहले और दूसरे पुनर्निर्देशन की कड़ियाँ, तथा दूसरे पुनर्निर्देशन का लक्ष्य भी है, आमतौर पर यही \"वास्तविक\" लक्ष्यित पृष्ठ होगा, और पहला पुनर्देशन वास्तव में इसी को लक्ष्यित होना चाहिए।\n<del>काटी गई</del> प्रविष्टियाँ सुलझा दी गई हैं।",
        "double-redirect-fixed-move": "[[$1]] कय घुस्काइ गय । इ अपने आप अपडेट होइ गवा है अव [[$2]] पे पुनर्निर्देशीत होइ ।",
        "double-redirect-fixer": "पुनर्निर्देशन मिस्त्री",
        "brokenredirects": "टूटल पुनर्निर्देशन पन्ना",
        "wantedpages": "जवन पन्ना चाहिँ",
        "wantedpages-badtitle": "परिणामन् में अवैध शीर्षक: $1",
        "wantedfiles": "जवन फाइल चाहिँ",
+       "wantedfiletext-cat": "निम्न फ़ाइलें प्रयुक्त हैं पर मौजूद नहीं हैं। बाहरी भंडारों की फ़ाइलें मौजूद होने के बावजूद सूची में हो सकती हैं। ऐसी कोई भी गलत प्रविष्टियाँ <del>काटी हुई</del> होंगी। साथ ही, जो पृष्ठ ऐसी फ़ाइलों का प्रयोग करते हैं जो मौजूद नहीं हैं, उनकी सूची [[:$1]] में है।",
+       "wantedfiletext-nocat": "निम्न फ़ाइलें प्रयुक्त हैं पर मौजूद नहीं हैं। बाहरी भंडारों की फ़ाइलें मौजूद होने के बावजूद सूची में हो सकती हैं। ऐसी कोई भी गलत प्रविष्टियाँ <del>काटी हुई</del> होंगी।",
        "wantedfiletext-nocat-noforeign": "इ कुल फाइल कय इस्तेमाल कै गा है लेकिन मौजुद नाइ है ।",
        "wantedtemplates": "जवन साँचा चाहिँ",
        "mostlinked": "सबसे ढेर जोड़ान पन्ना",
        "enotif_lastvisited": "आप कय आखिरी भेंट कय बाद करल बदलाव देखय खर्तीन $1 देखा जाय।",
        "enotif_lastdiff": "इ बदलाव देखय खत्तिर $1 देखा जाय।",
        "enotif_anon_editor": "अज्ञात  प्रयोगकर्ता  $1",
+       "enotif_body": "प्रिय $WATCHINGUSERNAME जी,\n\n$PAGEINTRO $NEWPAGE\n\nसम्पादन सारांश: $PAGESUMMARY $PAGEMINOREDIT\n\nसंपादक से संपर्क करें:\nई-मेल: $PAGEEDITOR_EMAIL\nविकि: $PAGEEDITOR_WIKI\n\nजब तक आप इस पृष्ठ पर लॉगिन कर के फिर से नहीं जाते, तब तक और बदलाव होने पर भी आपको फिर से सूचना नहीं भेजी जाएगी।\nआप चाहें तो अपनी ध्यानसूची में मौजूद सभी पन्नों के लिए सूचना चिन्ह को भी बदल सकते हैं।\n\nआपकी सहायिका, {{SITENAME}} की सूचक प्रणाली\n\n--\nअपनी ई-मेल सूचना के जमाव बदलने के लिये देखें\n{{canonicalurl:{{#special:Preferences}}}}\n\nअपनी ध्यानसूची के जमाव बदलने के लिए देखें\n{{canonicalurl:{{#special:EditWatchlist}}}}\n\nइस पृष्ठ को अपनी ध्यानसूची से हटाने के लिये देखें\n$UNWATCHURL\n\nराय देने या अधिक सहायता पाने के लिए:\n$HELPPAGE",
        "deletepage": "पन्ना मेटावा जाय",
        "confirm": "सुनिश्चित करा जाय",
        "excontent": "लेख रहा: '$1'",
        "rollbacklinkcount-morethan": "$1 से ढेर {{PLURAL:$1|सम्पादन}} वापिस लिहा जाय",
        "rollbackfailed": "वापिस लेब असफल रहा",
        "cantrollback": "पुरान अवतरण कय पहिले जैसन नाइ कै सका जात है ; इ पन्ना कय आखिरी योगदानकर्ता खालि इ लेख कय लिखे हैं ।",
+       "alreadyrolled": "[[User:$2|$2]] ([[User talk:$2|बातचीत]]{{int:pipe-separator}}[[Special:Contributions/$2|{{int:contribslink}}]]) द्वारा किए गए  [[:$1]] के पिछले संपादन को वापिस पुरानी स्थिति पर नहीं लाया जा सकता है;\nकिसी और ने इस बीच या तो इस पृष्ठ को फिर से संपादित कर दिया है या पहले ही पृष्ठ पुरानी स्थिति पर लाया जा चुका है।\n\nइस पृष्ठ का अन्तिम संपादन [[User:$3|$3]] ([[User talk:$3|बातचीत]]{{int:pipe-separator}}[[Special:Contributions/$3|{{int:contribslink}}]]) ने किया है।",
        "editcomment": "संपादन सारांश रहा: \"''$1''\"।",
        "revertpage": "[[Special:Contributions/$2|$2]] ([[User talk:$2|बातचीत]])से [[User:$1|$1]] कय करल पिछला संशोधन उल्टाई कय पहिले जैसन कै गय",
        "revertpage-nouser": "(सदस्य नाँव हटाइ गा है) कय संपादन कय हटाइकए {{GENDER:$1|[[User:$1|$1]]}} कय अन्तिम अवतरण कय पहिले जैसन कै गय।",
        "rollback-success": "$1 कय संपादन हटाइ गय;\n$2 कय संपादित अन्तिम अवतरण कय पुनर्स्थापित कै गय।",
        "sessionfailure-title": "सत्र विफलता",
+       "sessionfailure": "ऐसा प्रतीत होता है कि आपके लॉगिन सत्र के साथ कोई समस्या है।\nसत्र अपहरण से बचाने के लिए सावधानी के तौर पर आपका यह क्रियाकलाप रद्द कर दिया गया है।\nकृपया पीछे जाएँ और पृष्ठ को पुनः लोड करें, तब दुबारा कोशिश करें।",
        "protectlogpage": "सुरक्षा लॉग",
        "protectlogtext": "नीचे पन्ना सुरक्षा कय बदलाव कय सूची है।\nवर्तमान सुरक्षित पन्नन कय सूची कय लिए [[Special:ProtectedPages|सुरक्षित पन्ना कय सूची]] देखा जाय।",
        "protectedarticle": "\"[[$1]]\" कय सुरक्षित कै गय",
        "protect_expiry_old": "समाप्ती समय बीत चुका है।",
        "protect-unchain-permissions": "अउर सुरक्षा विकल्प खोला जाय",
        "protect-text": "'''$1''' पन्ना कय सुरक्षा-स्तर आप हिँया देख सका जात है औ ओका बदल सका जात है।",
+       "protect-locked-blocked": "आप बाधित होने की स्थिति में सुरक्षा स्थर में परिवर्तन नहीं कर सकते।\nपृष्ठ '''$1''' की वर्तमान स्थिति यह है:",
+       "protect-locked-dblock": "डेटाबेस में सक्रिय लॉक होने की वजह से सुरक्षा स्तर में कोई परिवर्तन नहीं किया जा सकता।\nपृष्ठ '''$1''' की वर्तमान स्थिति यह है:",
+       "protect-locked-access": "आपको इस पृष्ठ का सुरक्षा-स्तर बदलने की अनुमति नहीं है।\n'''$1''' का वर्तमान सुरक्षा-स्तर यह है:",
+       "protect-cascadeon": "यह पृष्ठ अभी सुरक्षित है क्योंकि यह {{PLURAL:$1|इस पृष्ठ की|इन पृष्ठों की}} सुरक्षा-सीढ़ी में है। इस पृष्ठ के सुरक्षा-स्तर में बदलाव से सुरक्षा-सीढ़ी में बदलाव नहीं होगा।",
        "protect-default": "कुल सदस्यन कय अनुमति दिहा जाय",
        "protect-fallback": "खालि \"$1\" अधिकार वाले सदस्यन् कय अनुमति दिहा जाय",
        "protect-level-autoconfirmed": "खालि स्वतः स्थापित सदस्यन् कय अनुमति दिहा जाय",
        "undeletepage": "हटावल पन्ना देखा जाय औ पुनर्स्थापित करा जाय",
        "undeletepagetitle": "'''नीचे [[:$1|$1]] कय हटावल अवतरण देखाई गा है।'''",
        "viewdeletedpage": "मेटावल पन्ना देखावा जाय",
+       "undeletepagetext": "निम्न {{PLURAL:$1|$1 पृष्ठ|$1 पृष्ठों}} को हटा दिया गया है, लेकिन अभी ये लेखागार में हैं और पुनर्स्थापित किये जा सकते हैं।\nलेखागार समय-समय पर साफ किये जाते हैं।",
        "undelete-fieldset-title": "अवतरण पहिले जैसन करा जाय",
+       "undeleteextrahelp": "पृष्ठ का संपूर्ण इतिहास वापस लाने के लिए सभी बक्सों से सही का निशान हटा दें और '''''{{int:undeletebtn}}''''' पर क्लिक करें।\nचुनिंदा इतिहास को वापस लाने के लिए उन अवतरणों के बगल के बक्सों पर सही का निशान लगाएँ और '''''{{int:undeletebtn}}''''' पर क्लिक करें।",
        "undeleterevisions": "$1 अवतरण लेखागार में {{PLURAL:$1|है}}",
+       "undeletehistory": "यदि आप पृष्ठ को पुनर्स्थापित करते हैं तो सभी अवतरण इतिहास में पुनर्स्थापित हो जायेंगे।\nहटाने के बाद यदि एक नया पृष्ठ उसी नाम से बनाया गया है तो पुनर्स्थापित अवतरण पिछले इतिहास में दर्शित होंगे।",
+       "undeleterevdel": "यदि पुनर्स्थापन के फलस्वरूप शीर्ष पृष्ठ या फ़ाइल अवतरण आंशिक रूप से मिट सकता है, तो इसे नहीं किया जायेगा।\nऐसी स्थिति में, आपको नवीनतम मिटाए गए अवतरण को बिना सही के निशान लगाये हुए या बिना छुपाये रखना होगा।",
+       "undeletehistorynoadmin": "ई पन्ना हटाई दिहा गा है।\nहटावै  कय कारन नीचे सारांश में दिहा है, अउर साथय उ सदस्यन् कय बारे में विस्तार भी दिहा है, जे हटावै से पहिले इ पन्ना कय संपादित करे रहें।\nइ हटावल अवतरण कय पाठ केवल प्रबंधकन् कय लगे है।",
        "undelete-revision": "$1 ($4 कय $5 बजे $3 बनाइन रहा) कय मेटावल संस्करण:",
+       "undeleterevision-missing": "अमान्य अथवा अनुपस्थित अवतरण।\nया तो आप ग़लत कड़ी प्रयोग कर रहे हैं, या यह अवतरण पुनर्स्थापित किया जा चुका है, अथवा इसे लेखागार से हटा दिया गया है।",
        "undelete-nodiff": "कवनो पुरान अवतरण नाँइ मिला।",
        "undeletebtn": "वापस लै आवा जाय",
        "undeletelink": "देखा जाय/शुरु कय जैसन करा जाय",
        "undelete-filename-mismatch": "$1 कय फ़ाइल कय हटावल अवतरण पुनर्स्थापित नाइ कै सका जात है: फ़ाइल कय नाँव मिलत जुलत नाइ है ।",
        "undelete-bad-store-key": "$1 कय फ़ाइल अवतरण पुनर्स्थापित नाइ कै सका जात है: हटावे से पहिले फ़ाइल मौजूद नाइ रहा।",
        "undelete-cleanup-error": "लेखागार में से अप्रयुक्त फ़ाइल \"$1\" हटावै में त्रुटि।",
+       "undelete-missing-filearchive": "फ़ाइल पुरालेख आई॰डी $1 को पुनर्स्थापित करने में असक्षम हैं, क्योंकि यह डाटाबेस में उपलब्ध नहीं है।\nया ऐसा भी हो सकता है कि इसे पहले से ही पुनर्स्थापित किया जा चुका हो।",
        "undelete-error": "पन्ना पुनर्स्थापन में त्रुटि",
        "undelete-error-short": "फ़ाइल पुनर्स्थापन में त्रुटि: $1",
        "undelete-error-long": "फ़ाइल पुनर्स्थापन में आवल त्रुटि:\n\n$1",
        "undelete-show-file-submit": "हाँ",
        "namespace": "नामस्थान:",
        "invert": "चुनाव उल्टा करा जाय",
+       "tooltip-invert": "चयनित नामस्थान (और संबद्ध नामस्थान यदि जाँच) के भीतर पृष्ठों में किए गए परिवर्तन छुपाने के लिए इस बक्से को चिह्नित करें",
        "namespace_association": "सम्बद्ध नामस्थान",
+       "tooltip-namespace_association": "भी बात या विषय नाम स्थान चयनित नाम स्थान के साथ जुड़े को शामिल करने के लिए इस बक्से को चिह्नित करें।",
        "blanknamespace": "(मुख्य)",
        "contributions": "{{GENDER:$1|सदस्य}} योगदान",
        "contributions-title": "$1 कय योगदान",
        "mycontris": "योगदान",
        "contribsub2": "{{GENDER:$3|$1}} ($2) कय खर्तीन",
        "contributions-userdoesnotexist": "सदस्य \"$1\" पंजीकृत नाइ है।",
+       "nocontribs": "इन कसौटियों से मिलनेवाले बदलाव मिले नहीं।",
        "uctop": "(अबहिनै कय)",
        "month": "इ महिन्नासे (औ पुरान):",
        "year": "इ सालसे (औ पुरान):",
        "sp-contributions-blocked-notice-anon": "ई आईपी ठहर अभीन अवरोधित है।\nसदंर्भ कय लिए ताज़ातरीन अवरोध लॉग प्रविष्टि नीचा दीहा है:",
        "sp-contributions-search": "योगदान कय खर्तीन खोज",
        "sp-contributions-username": "आईपी एड्रेस या सदस्यनाँव:",
+       "sp-contributions-toponly": "केवल उन सम्पादनों को दिखाएँ जो नवीनतम संशोधन हैं",
+       "sp-contributions-newonly": "केवल वे सम्पादन दिखाएँ जिनसे पृष्ठ निर्मित हुए हों",
        "sp-contributions-submit": "खोजा जाय",
        "whatlinkshere": "हिँया का जोडान अहै",
        "whatlinkshere-title": "$1 से जोडान पन्ना",
        "unblock": "सदस्य कय अवरोध हटावा जाय।",
        "blockip": "{{GENDER:$1|सदस्य}}",
        "blockip-legend": "सदस्य कय अवरोधित करा जाय।",
+       "blockiptext": "विशिष्ठ IP पते अथवा सदस्य नाम को लिखने के अधिकार से बाध्य करने के लिए निम्न पत्र का प्रयोग करें।\nयह सिर्फ बर्बरता को रोकने के लिए ही किया जाना चाहिए, और [[{{MediaWiki:Policy-url}}|नीति]] के अनुसार ही करना चाहिए।\nनीचे विशिष्ठ कारण भी लिखें (उदाहरण के लिए, सटीक पृष्ठों को दर्शाते हुए, जिनमें बर्बरता की गई हो)।",
        "ipaddressorusername": "आईपी एड्रेस या सदस्यनाँव:",
        "ipbexpiry": "समाप्ति:",
        "ipbreason": "कारण:",
+       "ipbreason-dropdown": "*अवरोधित करने के साधारण कारण\n** अवैध सदस्यनाम\n** एक से अधिक खातें खोलकर उनका दुरुपयोग करना\n** गलत जानकारी भरना\n** पृष्ठों में कचरा भरना\n** पृष्ठों से सामग्री हटाना‍‍‍‍‍\n** बाहरी जालस्थलों की फ़ालतू कड़ियां देना \n** सदस्यों को तंग करना",
+       "ipb-hardblock": "सत्राराम्भित प्रयोक्ताओं को इस आईपी पते का सम्पादन करने से रोकें",
        "ipbcreateaccount": "खाते बनावेकै रोका जाय",
        "ipbemailban": "सदस्य कय ईमेल करै से रोका जाय",
+       "ipbenableautoblock": "इस सदस्यद्वारा इस्तेमाल किया गया आखिरी आईपी एड्रेस और यहां से आगे इस सदस्य द्वारा इस्तेमालमें लाये जाने वाले सभी एड्रेस ब्लॉक करें।",
        "ipbsubmit": "इ सदस्य कय अउर बदलाव करय से रोका जाय",
        "ipbother": "अउर समय:",
        "ipboptions": "दुइ घंटा:2 hours,एक दिन:1 day,तीन दिन:3 days,एक हप्ता:1 week,दुइ हप्ता:2 weeks,एक महीना:1 month,तीन महीना:3 months,छः महीना:6 months,एक साल:1 year,हमेशा कय लिये:infinite",
        "ipb-confirm": "अवरोधण कय पुष्टि करा जाय",
        "badipaddress": "अमान्य आईपी ठहर।",
        "blockipsuccesssub": "अवरोधन सफल ।(संपादन करय से रोक दिहा गा है)",
+       "blockipsuccesstext": "[[Special:Contributions/$1|$1]] को ब्लॉक किया जा चुका है।<br />\nब्लॉकों की समीक्षा के लिए [[Special:BlockList|ब्लॉक लॉग]] देखें।",
+       "ipb-blockingself": "आप खुद को अवरोधित कर रहे हैं! क्या आप वाकई ऐसा करना चाहते हैं?",
        "ipb-edit-dropdown": "ब्लॉक कारण संपादित करा जाय",
        "ipb-unblock-addr": "$1 कय अनब्लॉक करा जाय",
        "ipb-unblock": "सदस्य या आईपी एड्रेस कय अनब्लॉक करा जाय",
        "ipb-blocklist": "सद्य ब्लॉक देखा जाय",
        "ipb-blocklist-contribs": "{{GENDER:$1|$1}} कय योगदान",
        "unblockip": "सदस्य कय अवरोध हटावा जाय।",
+       "unblockiptext": "पहले ब्लॉक किये हुए आईपी एड्रेस या सदस्यनाम को अनब्लॉक करने के लिये नीचे दिया गया फार्म भरें।",
        "ipusubmit": "इ अवरोध हटावा जाय",
        "unblocked": "[[User:$1|$1]] होइ गा हैं।",
        "unblocked-range": "$1 अनब्लॉक होइ गा हैं।",
        "change-blocklink": "विभाग बदला जाय",
        "contribslink": "योगदान",
        "emaillink": "ईमेल पठवा जाय",
+       "autoblocker": "आपका आइ॰पी पता स्वतः अवरुद्ध है, चूँकि इसे हाल ही में \"[[User:$1|$1]]\" द्वारा प्रयोग किया गया है।\n$1 को अवरोधित करने का कारण है: \"$2\"",
        "blocklogpage": "ब्लॉक सूची",
        "blocklog-showlog": "इ सदस्य पहिलँहु ब्लाक कै गा हैं । संदर्भ खत्तीर अभिलेख निचे दिहा है ।",
        "blocklog-showsuppresslog": "इ सदस्य कय पहिलँहु ब्लाक कै गा है ।दबावल लाग संदर्भ खत्तीर दै गा है ।",
        "move-page": "$1 कय घुस्कावा जाय",
        "move-page-legend": "पन्ना घुसकावा जाय",
        "movepagetext": "निचे दिहा फारम पन्ना कय नाँव बदल दी अव ओकर इतिहास नँवा नाँव से देखाए लागि ।\nपुरान शिर्षक कय नँवा नाँव मे पुनर्निर्देशन कै जाइ।\nमूल शीर्षक की ओर ले जाने वाले पुनार्निर्देशों को आप स्वचालित रूप से बदल सकते हैं।\nयदि आप ऐसा नहीं करते हैं तो कृपया [[Special:DoubleRedirects|दोहरे पुनर्निर्देशन]] या [[Special:BrokenRedirects|टूटे पुनर्निर्देशन]] के लिए ज़रूर जाँच करें।\nकड़ियाँ सही जगह इंगित करती रहें, यह सुनिश्चित करना आपकी ज़िम्मेदारी है।\n\nअगर नये शीर्षक का लेख पहले से है तो स्थानांतरण '''नहीं''' होगा। पर अगर नये शीर्षक वाला लेख कहीं और अनुप्रेषित करता है और साथ ही उसके पुराने संस्करण नहीं हैं तो स्थानांतरण हो जायेगा।\nइसका मतलब कि यदि आपसे गलती हो जाए तो आप वापस पुराने नाम पर इस पृष्ठ का स्थानांतरण कर सकेंगे, और साथ ही आप किसी मौजूदा पृष्ठ के बदले यह स्थानांतरण नहीं कर सकते हैं।\n\n'''चेतावनी!'''\nयदि पृष्ठ काफ़ी लोकप्रिय है तो उसके लिए यह एक बहुत बड़ा व अकस्मात् परिवर्तन हो सकता है;\nआगे बढ़ने से पहले इसका अंजाम अच्छी तरह समझ लें।",
+       "movepagetext-noredirectfixer": "नीचे दिया हुआ पर्चा पृष्ठ का नाम बदल देगा, उसका सारा इतिहास भी नए नाम से दिखना शुरू हो जाएगा।\nपुराना शीर्षक नये नाम को अनुप्रेषित करेगा ।\nमूल शीर्षक की ओर ले जाने वाले अग्रेषणों को आप स्वचालित रूप से बदल सकते हैं।\nयदि आप ऐसा नहीं करते हैं तो कृपया [[Special:DoubleRedirects|दोहरे]] पुनर्निर्देशण या [[Special:BrokenRedirects|टूटे पुनर्निर्देशन]] के लिए ज़रूर जाँच करें।\nकड़ियाँ सही जगह इंगित करती रहें, यह सुनिश्चित करना आपकी जिम्मेदारी है।\n\nअगर नये शीर्षक का लेख पहले से है तो स्थानांतरण '''नहीं''' होगा। पर अगर नये शीर्षक वाला लेख खाली है अथवा कहीं और अनुप्रेषित करता है और साथ ही उसके पुराने संस्करण नहीं हैं तो स्थानांतरण हो जायेगा ।\nइसका मतलब कि यदि आपसे गलती हो जाए तो आप वापस पुराने नाम पर इस पृष्ठ का स्थानांतरण कर सकेंगे, और साथ ही आप किसी मौजूदा पृष्ठ के बदले यह स्थानांतरण नहीं कर सकते हैं।\n\n'''चेतावनी!'''\nयदि पृष्ठ काफ़ी लोकप्रिय है तो उसके लिए यह एक बहुत बड़ा व अकस्मात् परिवर्तन हो सकता है;\nआगे बढ़ने से पहले इसका अंजाम अच्छी तरह समझ लें।\n\n'''सूचना!'''\nस्थानांतरण करनेसे कोई भी महत्वपूर्ण लेख में अनपेक्षित बदलाव हो सकते है ।\nआपसे अनुरोध है कि आप इसके परिणाम जान लें ।",
+       "movepagetalktext": "संबंधित वार्ता पृष्ठ इसके साथ स्थानांतरीत नहीं होगा '''अगर:'''\n* आप पृष्ठ दुसरे नामस्थान में स्थानांतरीत कर रहें है\n* इस नाम का वार्ता पृष्ठ पहलेसे बना हुवा है, या\n* नीचे दिया हुआ चेक बॉक्स आपने निकाल दिया है ।\n\nइन मामलोंमे आपको स्वयं यह पृष्ठ जोडने पड़ सकते है ।",
        "movearticle": "पन्ना घुसकावा जाय:",
        "moveuserpage-warning": "<strong>चेतावनी:</strong> आप एकठु सदस्य पन्ना कय नाँव बदलय जावा जात है।तनि ध्यान दिहा जाय कि खालि पन्ना कय नाँव बदल जाइ औ सदस्यनाँव <em>नाई</em> बदलि।",
+       "movenologintext": "लेख स्थानान्तरित करने के लिये आपका [[Special:UserLogin|लॉग इन]] किया होना आवश्यक हैं।",
        "movenotallowed": "आप कय इ पन्ना घुस्कावे कय अनुमति नाई है ।",
        "movenotallowedfile": "आप कय फाइल घुस्कावे कय अनुमति नाई है ।",
        "cant-move-user-page": "आप कय सदस्य पन्ना घुस्कावे कय अनुमति नाई है (उप-पन्ना बादे) ।",
        "movelogpage": "घुस्कावे कय ल़ाग",
        "movelogpagetext": "निचे घुस्कावल पन्नन् कय सुची हय",
        "movesubpage": "{{PLURAL:$1|उप-पन्ना}}",
+       "movesubpagetext": "नीचे $1 {{PLURAL:$1|पृष्ठ दिखाया गया है, जो इस पृष्ठ का उप पृष्ठ है|पृष्ठ दिखाया गया है, जो इस पृष्ठ के उप पृष्ठ हैं}}।",
        "movenosubpage": "इ पन्ना कय कवनो उप-पन्ना नाइ है ।",
        "movereason": "कारण:",
        "revertmove": "पहिले जैसन करा जाय",
        "import-upload": "XML डाटा अपलोड कीन जाय",
        "import-token-mismatch": "सत्र सामग्री खो गई है। \nकृपया पुनः प्रयास करें।",
        "import-invalid-interwiki": "इ विकि से आयात नाइ होइ सकत है।",
+       "import-options-wrong": "गलत {{PLURAL:$2|विकल्प}}: <nowiki>$1</nowiki>",
+       "import-rootpage-invalid": "दिहल उपसर्ग पन्ना शीर्षक अमान्य है।",
+       "import-rootpage-nosubpage": "दिए गए उपसर्ग पृष्ठ \"$1\" के नामस्थान में उप-पृष्ठ नहीं बनाए जा सकते।",
        "importlogpage": "आयात सूची",
+       "importlogpagetext": "अन्य विकियों से प्रबन्धकों द्वारा किए गए सम्पादन इतिहास के साथ होने वाले पृष्ठों का आयात।",
+       "import-logentry-upload": "सञ्चिका अपलोड करके [[$1]] का आयात किया",
        "import-logentry-interwiki": " $1 कय अन्तरविकिकरण कई गय",
        "javascripttest": "जावास्क्रिप्ट परीक्षण",
        "javascripttest-pagetext-unknownframework": "अज्ञात परीक्षण ढाँचा \"$1\"",
+       "javascripttest-pagetext-unknownaction": "अज्ञात काम \"$1\".",
+       "javascripttest-pagetext-frameworks": "कृपया निम्न परीक्षण ढाँचों में से एक चुनें: $1",
+       "javascripttest-pagetext-skins": "परीक्षण करने के लिए त्वचा चुनें:",
+       "javascripttest-qunit-intro": "mediawiki.org पे [$1 परीक्षण कय प्रलेखन] देखा जाय।",
        "tooltip-pt-userpage": "आप कय सदस्य पन्ना",
+       "tooltip-pt-anonuserpage": "आप जिस आईपी से बदलाव कर रहें हैं उसका सदस्य पन्ना निचे है",
        "tooltip-pt-mytalk": "आप कय बातचित पन्ना",
+       "tooltip-pt-anontalk": "इस आईपी एड्रेससे हुए बदलावों के बारे में वार्ता",
        "tooltip-pt-preferences": "आप कय पसंद",
+       "tooltip-pt-watchlist": "आप कय ध्यान दिहल पन्नन कय सूची",
        "tooltip-pt-mycontris": "आप कय योगदान कय सुची",
        "tooltip-pt-login": "आप कय खाता प्रवेश खत्तिर प्रोत्साहित कै जात है, लेकिन ई अनिवार्य नाई है",
        "tooltip-pt-logout": "बहरे निकरा जाय",
        "tooltip-watch": "इ पन्ना कय अपने ध्यानसूची में डारा जाय",
        "tooltip-watchlistedit-normal-submit": "पन्ना हटावा जाय",
        "tooltip-watchlistedit-raw-submit": "ध्यानसूची अपडेट करा जाय",
+       "tooltip-recreate": "यह पृष्ठ पहले हटाया होने के बावजूद फिरसे बनायें",
        "tooltip-upload": "अपलोड शुरू करा जाय",
+       "tooltip-rollback": "\"वापिस लीं\" ई पन्ना के पिछ्ला योगदाता के बदलाव एकही चटके मे गायब कर देवेला",
+       "tooltip-undo": "\"पुरानी स्थिति पर लाएँ\" इस बदलाव को वापस ले जा के संपादन पर्चे को झलक रीति में दिखलाता है।\nइसके जरिए सारांश में पुरानी स्थिति में लाने का कारण लिखा जा सकता है।",
        "tooltip-preferences-save": "पसंद सहेजा जाय",
        "tooltip-summary": "छोट सारांश लिखा जाय",
        "anonymous": "{{SITENAME}} कय {{PLURAL:$1||}} बेनामी सदस्य",
        "siteusers": "{{SITENAME}} {{PLURAL:$2|सदस्य|सदस्य}} $1",
        "anonusers": "{{SITENAME}} अनाम {{PLURAL:$2|सदस्य|सदस्य}} $1",
        "creditspage": "पन्ना श्रेय नामावली",
+       "nocredits": "इस पृष्ठ के लिये क्रेडिट जानकारी नहीं है।",
        "spamprotectiontitle": "स्पॅम सुरक्षा फिल्टर",
+       "spamprotectiontext": "आप जिस पृष्ठ को सँजोना चाहते थे उसे रद्दी सामग्री की छननी ने अवरोधित किया हुआ है।\nयह संभवतः किसी कर्पसूचित बाहरी स्थल की कड़ी की वजह से हुआ है।",
+       "spamprotectionmatch": "नीचे दिये हुए पाठ को स्पॅम सुरक्षा फिल्टर द्वारा रोका गया था: $1",
        "spambot_username": "मीडियाविकि स्पॅम स्वच्छता",
+       "spam_reverting": "$1 को कड़ी ना होने वाले पुराने अवतरण को पुनर्स्थापित कर रहें हैं",
+       "spam_blanking": "सभी अवतरणोंमें $1 को कड़ियां हैं, पूरा पाठ निकाल रहें हैं",
+       "spam_deleting": "सभी अवतरणों में $1 की कड़ी थी, हटाया जा रहा है",
+       "simpleantispam-label": "ऐन्टी-स्पैम जाँच।\nइसे <strong>नहीं</strong> भरें!",
        "pageinfo-title": "\"$1\" कय जानकारी",
+       "pageinfo-not-current": "क्षमा करें, पुराने अवतरणों के लिए यह जानकारी प्रदान करना संभव नहीं है।",
        "pageinfo-header-basic": "मूल जानकारी",
        "pageinfo-header-edits": "सम्पादन इतिहास",
        "pageinfo-header-restrictions": "पन्ना सुरक्षा",
        "markedaspatrolled": "जाँचल चिन्हीत करा जाय",
        "markedaspatrolledtext": "[[:$1]] कय चयनित अवतरण जाँचल चिन्हित कै गय।",
        "rcpatroldisabled": "नँवा बदलाव कय परीक्षण अक्षम है",
+       "rcpatroldisabledtext": "हाल में हुए बदलावों के परीक्षण की सुविधा अभी अक्षम है।",
        "markedaspatrollederror": "जाँचल चिन्हित नाइ कै मिला",
+       "markedaspatrollederrortext": "जाँचा हुआ चिन्हित करने के लिये आपको एक अवतरण चुनना होगा।",
+       "markedaspatrollederror-noautopatrol": "आपको अपने बदलाव परीक्षित करने की अनुमति नहीं है।",
+       "markedaspatrollednotify": "$1 पृष्ठ में किया गया ये बदलाव जाँचा हुआ चिन्हित कर दिया गया है।",
+       "markedaspatrollederrornotify": "जाँचा हुआ चिन्हित करना असफल रहा।",
        "patrol-log-page": "परीक्षण लॉग",
+       "patrol-log-header": "यह परीक्षित अवतरणों की लॉग है।",
        "log-show-hide-patrol": "परीक्षण लॉग $1",
        "deletedrevision": "पुरान अवतरण $1 हटाय दिहा गा है",
        "filedeleteerror-short": "फ़ाईल हटावै मा समस्या: $1",
index 4651871..bd38b9f 100644 (file)
        "tags-source-manual": "Ставіцца ўручную ўдзельнікамі і робатамі",
        "tags-source-none": "Больш не выкарыстоўваецца",
        "tags-edit": "рэдагаваць",
+       "tags-delete": "выдаліць",
+       "tags-activate": "актываваць",
+       "tags-deactivate": "адключыць",
        "tags-hitcount": "$1 {{PLURAL:$1|зьмена|зьмены|зьменаў}}",
        "comparepages": "Параўнаньне старонак",
        "compare-page1": "Старонка 1",
index 39e7748..5d9c4dc 100644 (file)
        "deleteprotected": "Вы не можаце сцерці гэтую старонку, таму што яна ахоўваецца.",
        "deleting-backlinks-warning": "'''Увага:''' [[Special:WhatLinksHere/{{FULLPAGENAME}}|Іншыя старонкі]] спасылаюцца на ці ўключаюць старонку, якую вы збіраецеся сцерці.",
        "rollback": "Адкаціць праўкі",
-       "rollback_short": "Адкат",
        "rollbacklink": "адкат",
        "rollbacklinkcount": "адкаціць $1 {{PLURAL:$1|праўку|праўкі|правак}}",
        "rollbacklinkcount-morethan": "адкаціць больш за $1 {{PLURAL:$1|праўку|праўкі|правак}}",
        "import-logentry-interwiki": "транс-вікавана $1",
        "import-logentry-interwiki-detail": "$1 {{PLURAL:$1|версія|версіі|версій}} імпартавана з $2",
        "javascripttest": "JavaScript-тэсты",
-       "javascripttest-title": "Праводзіцца тэставанне $1",
        "javascripttest-pagetext-noframework": "Гэта старонка зарэзервавана для запуску тэстаў JavaScript",
        "javascripttest-pagetext-unknownframework": "Невядомая бібліятэка тэставання «$1».",
        "javascripttest-pagetext-frameworks": "Калі ласка, выберыце адну з прапанаваных бібліятэк тэставання: $1",
        "javascripttest-pagetext-skins": "Выберыце афармленне для тэставання:",
        "javascripttest-qunit-intro": "Глядзіце [$1 дакументацыю па тэставанні] на mediawiki.org.",
-       "javascripttest-qunit-heading": "Набор QUnit-тэстаў для MediaWiki JavaScript",
        "tooltip-pt-userpage": "Ваша ўласная старонка",
        "tooltip-pt-anonuserpage": "Старонка ўдзельніка для таго IP, з якога вы зараз працуеце",
        "tooltip-pt-mytalk": "Ваша старонка размоў",
        "just-now": "толькі што",
        "hours-ago": "$1 {{PLURAL:$1|гадзіну|гадзіны|гадзін}} таму",
        "minutes-ago": "$1 {{PLURAL:$1|мінуту|мінуты|мінут}} таму",
-       "seconds-ago": "$1 {{PLURAL:$1|секунду|секунды|секундаў}} таму",
+       "seconds-ago": "$1 {{PLURAL:$1|секунду|секунды|секунд}} назад",
        "monday-at": "У панядзелак а $1",
        "tuesday-at": "У аўторак а $1",
        "wednesday-at": "У сераду а $1",
        "api-error-unknownerror": "Невядомая памылка: «$1».",
        "api-error-uploaddisabled": "Загрузка ў гэтую вікі адключаная.",
        "api-error-verification-error": "Гэты файл можа быць пашкоджаны, ці мае няслушны канчатак назвы.",
-       "duration-seconds": "$1 {{PLURAL:$1|секунда|секунды|секундаў}}",
+       "duration-seconds": "$1 {{PLURAL:$1|секунда|секунды|секунд}}",
        "duration-minutes": "$1 {{PLURAL:$1|мінута|мінуты|мінут}}",
        "duration-hours": "$1 {{PLURAL:$1|гадзіна|гадзіны|гадзін}}",
        "duration-days": "$1 {{PLURAL:$1|дзень|дні|дзён}}",
        "rotate-comment": "Выява павернута на $1 {{PLURAL:$1|градус|градусы|градусаў}} па гадзіннікавай стрэлцы",
        "limitreport-title": "Звесткі прафілявання парсера:",
        "limitreport-cputime": "Выкарыстанне часу ЦП",
-       "limitreport-cputime-value": "$1 {{PLURAL:$1|секунда|секунды|секундаў}}",
+       "limitreport-cputime-value": "$1 {{PLURAL:$1|секунда|секунды|секунд}}",
        "limitreport-walltime": "Выкарыстанне рэальнага часу",
-       "limitreport-walltime-value": "$1 {{PLURAL:$1|секунда|секунды|секундаў}}",
+       "limitreport-walltime-value": "$1 {{PLURAL:$1|секунда|секунды|секунд}}",
        "limitreport-ppvisitednodes": "Колькасць вузлоў, наведаных прэпрацэсарам",
        "limitreport-ppgeneratednodes": "Колькасць вузлоў, створаных прэпрацэсарам",
        "limitreport-postexpandincludesize": "Памер уключэнняў па разгортванні",
index a5d705f..aaa71bf 100644 (file)
        "rev-deleted-text-view": "ای ایڈیٹ شه ای تاکدیما '''پاک بوته'''.\nشما توانیت آیرا بگیندیت؛ ممکن اینت آیی مربوتین مئلوماتانا بئ [{{fullurl:{{#Special:Log}}/delete|page={{FULLPAGENAMEE}}}} پاک بوته ئین سیاه چال ] تا ودئ بکنیت.",
        "rev-delundel": "نمایش/نهفتن",
        "rev-showdeleted": "نشان داتین",
+       "revisiondelete": "پاک کورتین/نخسه ئی پدا جۆڑ کورتین",
+       "revdelete-nooldid-title": "هدف ئی نامجازین نخسه",
        "revdelete-show-file-submit": "هان",
        "revdelete-selected-text": "{{PLURAL:$1|انتخاب بوته ئین نخسه هان|انتخابین نخسه هان}} [[:$2]]:",
        "revdelete-selected-file": "{{PLURAL:$1|انتخاب بوته ئین نخسه|انتخابین نخسه}} [[:$2]]:",
        "right-suppressredirect": "تاکدیمئ انتقال بیدون شه دیمین نامی تغیرمسیر ئی جوڑ کورتین",
        "right-upload": "فایلی بُرز کورتین",
        "right-reupload": "پدا نیویشتین موجودین فایلئ",
+       "right-reupload-own": "آ فایلی پدا بُرز کورتین که دیمتیرا هم شه هما کار زوروکی نیمگا یک وار بُرز بوتت",
        "right-reupload-shared": "مشترکین فایلانئ محلی ئین باطل کورتین",
        "right-upload_by_url": "یک فایلئ بُرز کورتین یا اپلوڈ شه اینٹرنٹ ئا",
+       "right-purge": "میانگیرین تاکدیمی پاک کورتین بی شه تائیدی تاکدیمی دیستینا",
        "right-autoconfirmed": "شه آی پی ئی محدودیت تیزی ئا محور تاسیر ئه نه گیت",
+       "right-bot": "تلقی بوته بئ ئنوان اوتوماتیکین پروسه ئا",
+       "right-nominornewtalk": "گپ و حبر ئی تاکدیمانی گونڈ ایڈیٹ ، بئ رکمی که نوکین پیام ئا جار مه جنت",
+       "right-apihighlimits": "بُرز تیرین سقف استفاده شه API",
        "right-writeapi": "استفاده شه نیویشتینی API",
        "right-delete": "تاکدیمی پاک کورتین",
        "right-bigdelete": "ٹوهین تاریخچه والا ئین تاکدیمانئ پاک کورتین",
+       "right-deletelogentry": "پاک کورتین و پداجۆڑ کورتین خاصین دروچه شه سیاهه ئان",
+       "right-deletedtext": "دیستین پاک بوته ئین متن ئان و تغیر ئان پاک بوته ئین نخسه ئانی مانجینا",
        "right-browsearchive": "گشتین په پاک بوته ئین تاکدیمان",
        "right-undelete": "بی جاه آورتین  تاکدیمانئ",
+       "right-suppressrevision": "دیستین و پداجۆڑ کورتین آ ایڈیٹانی که شه کار زوروکان چیهر داته بوته انت",
        "right-viewsuppressed": "آ نخسه هانی دیستین که شه کار زوروکان چیهر داته بوته انت",
        "right-suppressionlog": "دیستین شخصین سیاه چال ئانی",
+       "right-block": "دیگه کار زوروکانئ بلاک کورتین شه ایڈیٹ ئان",
+       "right-blockemail": "دیگه کار زوروکانئ بلاک کورتین شه ایمیل ئی دیم داتین ئا",
+       "right-hideuser": "کار زوروکئ بلاک کورتین و چیهر داتین شه عمومی ئی دیدا",
        "right-unblockself": "وتي دسترسی ئی پاچ کورتین",
        "right-protect": "قُلپ بوته تاکدیمانئ قلپی میزانی تغیر داتین و آوانی ایڈیٹ کورتین",
        "right-editprotected": "ایڈیٹ کورتین قُلپ بوته ئین تاکدیمانی بئ ئنوانئ «{{int:protect-level-sysop}}»",
        "uploadstash-refresh": "فایلانئ لڑلیستئ نوک کورتین",
        "invalid-chunk-offset": "قطعه ئی ناموتبرین جابجايی",
        "img-auth-accessdenied": "دسترسی ئی منشا",
+       "img-auth-nofile": "«$1» ئی فایل موجود نه اینت.",
+       "img-auth-isdir": "شما کوشش کورته ئیت که بئ «$1» ئی شاخه ئا دسترسی ودی بکنیت.\nتانا په فایل ئا دسترسی جایز اینت.",
        "img-auth-streaming": "بئ حال جاری کورتینی «$1» ئا.",
+       "http-invalid-url": "انترنیتی ادرس ناموتبر اینت: $1",
+       "http-invalid-scheme": "انترنیتی ئین نخسه گۆ «$1» ئی پیشنهادا پُشتیوانی ئه نه بیئنت.",
+       "http-request-error": "اچ‌تی‌تی‌پی ئی ریکویست گۆ نامئلومین خطائا، ناکام ات.",
        "http-read-error": "اچ‌تی‌تی‌پی ئی وانتینئ خطا.",
        "http-timed-out": "اچ‌تی‌تی‌پی ئی ریکویست ئی وخت الاس بوت.",
+       "http-curl-error": "خطا بئ انترنیتی ادرسی آورتینی تا: $1",
        "upload-curl-error28": "بُرز کورتین ئی وخت الاس بوت",
        "license": "اجازه‌نامه:",
        "license-header": "اجازه‌نامه",
        "filedelete-nofile-old": "ارشیف  بوته ئین نخسه شه  '''$1''' گۆ داته بوته ئین مشخصاتان، موجود نه اینت.",
        "filedelete-otherreason": "دیگرین دلیل/اضافی:",
        "filedelete-reason-otherlist": "دیگرین دلیل",
+       "filedelete-edit-reasonlist": "پاک بوتینئ دلیلانئ ایڈیٹ",
        "filedelete-maintenance-title": "نه توانیت فایلا پاک بکنیت",
        "mimesearch": "گشتین بی اساس MIME",
        "mimetype": "MIME ئی رکم:",
        "download": "ائیر کورتین",
        "unwatchedpages": "دیسته نه یوته ئین تاکدیمان",
+       "listredirects": "تغیرمسیر ئی تاکدیمانی لڑ",
+       "listduplicatedfiles": "موچین فایل ئانی لڑ ، لۆڑ گۆ تکراری ئان",
+       "listduplicatedfiles-entry": "[[:File:$1|$1]][[$3|{{PLURAL:$2|یک تکرار|$2 تکرار}}]] داریت.",
+       "unusedtemplates": "استفاده نه بوته ئین تراشوانان",
        "unusedtemplateswlh": "دیگه لینک ئان",
        "randompage": "تصادفی مقاله",
+       "randomincategory": "تصادفین تاکدیم بئ تهر ئی تا",
+       "randomincategory-invalidcategory": "«$1» یک موتبرین نامئ په تهر ئان نه اینت.",
+       "randomincategory-nopages": "هیچ تاکدیمی بئ  [[:Category:$1|$1]] ئی تهری تا موجود نه اینت.",
        "randomincategory-category": "تهر:",
        "randomincategory-legend": "تصادفین تاکدیم بئ تهرئی تا",
        "randomredirect": "تغییرمسیر تصادفی",
+       "randomredirect-nopages": "هیج تغیر مسیر بئ  «$1» ئی نامی فضای تا موجود نه اینت.",
        "statistics": "ارقام",
        "statistics-header-pages": "ای تاکدیمئ ارقام",
        "statistics-header-edits": "ایڈیٹانی ارقام",
        "statistics-pages": "تاکدیمان",
        "statistics-pages-desc": "ای ویکی ئی موچین تاکدیمان ٬ هبر و گپ ئی تاکدیمان ٬ و تغیر مسیر و دیگرین",
        "statistics-files": "بُرز بوته ئین فایلان",
+       "statistics-edits": "تاکدیمانی ایڈیٹ شه وخت که {{SITENAME}} جۆڑ بوته انت",
        "statistics-edits-average": "متوسطین ایڈیٹ شه هر یکین تاکدیما",
        "statistics-users": "راجستر بوته ئین [[Special:ListUsers|کار زوروکان]]",
        "statistics-users-active": "پئال ئین کار زوروکان",
+       "statistics-users-active-desc": "آ کار زوروکان که بئ {{PLURAL:$1|رۆچ|$1 رۆچ}} دیما پئالیت شه وت نشان داته انت",
        "pageswithprop": "تاکدیم گۆ تاکدیمانئ خاصیتا",
        "pageswithprop-legend": "تاکدیم گۆ تاکدیمانئ خاصیتا",
        "pageswithprop-prop": "خاصیت ئی نام:",
        "wantedtemplates": "ضرورتین تراشوانان",
        "mostlinked": "تاکدیمان که گیشتیر شه دیگران بئ آوان لینک داته بوته",
        "mostlinkedcategories": "تهرهان که گیشتیر شه دیگران بئ آوان لینک داته بوته",
+       "mostlinkedtemplates": "تاکدیمان که گیشتیر ترانسکلوڈ بوته انت",
        "mostcategories": "تاکدیمان گۆ بازین تهرهان",
        "mostimages": "فایلان که گیشتیر شه دیگران بئ آوان لینک داته بوته",
        "mostinterwikis": "تاکدیمان گۆ بازین میان ویکی هان",
        "log": "سیاهه‌ها",
        "all-logs-page": "عمومین موچین سیاه چال هان",
        "logempty": "شمی منطبقین آیتم بی سیاه چالئ تا ودی نه بوت.",
+       "log-title-wildcard": "آ تاکدیمیانی پدا بگرد که آوانی ئنوان که گۆ ای ئبارت ئا شرو ئه بیئت",
        "allpages": "موچین تاکدیمان",
        "nextpage": "بعدین تاکدیم ($1)",
        "prevpage": "دیمی تاکدیم ($1)",
        "allarticles": "موچین تاکدیمان",
        "allinnamespace": "موچین تاکدیمان ($1 نامی فضا)",
        "allpagessubmit": "برا",
+       "allpages-bad-ns": "{{SITENAME}} ، «$1» ئی نامی فضا ئا نداریت.",
        "allpages-hide-redirects": "تغیرمسیرانی چیهرداتین",
        "cachedspecial-refresh-now": "دیستین آخرین ئانی.",
        "categories": "تهرئان",
+       "categoriesfrom": "تهرهانئ نشان داتین شرو شه:",
        "special-categories-sort-count": "ترتیت کورتین بئ اساس اندازگ",
        "special-categories-sort-abc": "ترتیب کورتین سیاهگانی",
        "deletedcontributions": "پاک بوته ئین مشارکتانی",
        "linksearch-pat": "گشتین په نمونه ئا:",
        "linksearch-ns": "نامی فضا:",
        "linksearch-ok": "گشتین",
+       "linksearch-line": "$1 شه $2 ئا لینک داریت",
+       "linksearch-error": "نشانگ فقط بئ انترنیتی میزبانی اولی نامی تا تواننت استفاده بیئنت.",
+       "listusersfrom": "نمایش داتین کار زوروکان شرو شه:",
        "listusers-submit": "نشان داتین",
        "listusers-noresult": "هیچ کار زوروکئ ودی نه بوت.",
        "listusers-blocked": "(بلاک بوته)",
        "activeusers": "پئالین کار زوروکانئ لڑ لیست",
+       "activeusers-intro": "جهلگا یک لڑئ شه کار زوروکان ئه گیندیت که بئ $1 {{PLURAL:$1|روچ|روچ}} دیمتیرا پئالیت داشته انت.",
+       "activeusers-count": "$1 {{PLURAL:$1|پئالیت|پئالیت}} بئ {{PLURAL:$3|رۆچ|$3 رۆچ}} اخیرا",
        "activeusers-from": "نمایش داتین کار زوروکان شرو شه:",
        "activeusers-hidebots": "رباتانی چیهر داتین",
        "activeusers-hidesysops": "مدیرانئ چیهرداتین",
        "watchlist": "واچلیست",
        "mywatchlist": "واچلیست",
        "watchlistfor2": "په $1 $2",
+       "nowatchlist": "شمی واچلیست ئی تا هیچ موردی نه اینت.",
+       "watchlistanontext": "په وتي واچلیستئ دستین و ایڈیٹ ئی خاتیرا شه $1 ئا استفاده بکنیت.",
        "watchnologin": "داخل نه بوته ئیت",
        "addwatch": "افاضه کورتین بئ واچلیستا",
+       "addedwatchtext-short": "\" $1 \" ئی دیم بئ شمی واچلیست ئا ایزاپه بوته.",
        "removewatch": "پاک کورتین شه واچلیستا",
+       "removedwatchtext": "«[[:$1]]» دیم شه  [[Special:Watchlist|شمی واچلیستا]] زورته بوت.",
+       "removedwatchtext-short": "\"$1\" ئی دیم شه شمی واچلیستا پاک بوته.",
        "watch": "دیستین",
        "watchthispage": "دیستین ای تاکدیمی",
        "unwatch": "اوشتارین تین دیستینی",
+       "unwatchthispage": "اوشتارینتین چارگ ئی",
+       "notanarticle": "تاکدیم محتوایی نه اینت",
+       "notvisiblerev": "آخرین نخسه شه دیگه کار زوروکئ نیمگا پاک بوته.",
+       "wlheader-enotif": "ایمیل ئی ناتیپشن پئال اینت.",
+       "wlheader-showupdated": "تاکدیمان که شه شمی آخیرین دیستینا پد تغیر بوته انت '''پررنگ''' نشان داته بیئنت.",
+       "wlnote": "بئ جهلگا {{PLURAL:$1|تغییری|<strong>$1</strong> تغییری}} که بئ {{PLURAL:$2|سائت|<strong>$2</strong> سائت}} دیمتیرا انجام بوته موجود اینت، آخیرین بازیابی تاریخ: $3، $4",
+       "wlshowlast": "نشان داتین آخیرئین $1 سائت $2 روچئ",
        "watchlist-options": "واچلیستئ آپشن",
        "watching": "بئ دیستینئ حالا...",
        "unwatching": "دیستینئ اوشتارینتین...",
+       "watcherrortext": "مشکل بئ شمی واچلیستئ تنظماتانی بدل کورتینی وختا په «$1» ئا رخ دات.",
        "enotif_impersonal_salutation": "کار زوروک {{SITENAME}}",
        "enotif_subject_deleted": "{{SITENAME}} تاکدیم $1 شه {{gender:$2|$2}} نیمگا پاک بوت.",
        "enotif_subject_created": "{{SITENAME}} تاکدیم $1 شه {{gender:$2|$2}} نیمگا جوڑ بوته.",
        "export-submit": "دَر کورتین",
        "export-addcattext": "افاضه کورتین تاکدیمان شه تهر ئا:",
        "export-addcat": "اڈ\tڈ\t کورتین",
+       "export-addnstext": "تاکدیمانی ایزاپه کورتین شه نامی فصای:",
        "export-addns": "اڈ\tڈ\t کورتین",
        "export-download": "ذخیره کورتین بئ فایلئ رقما",
        "export-templates": "شامل بوتین تراشوانانئ",
+       "export-pagelinks": "شامل بوتین لینک بوته ئین تاکدیمان تا ای جُهلی ئا:",
+       "allmessages": "سیستم ئی پیام",
        "allmessagesname": "نام",
+       "allmessagesdefault": "پیامی پیش فرضین متن",
+       "allmessagescurrent": "پیامی انونین متن",
        "allmessages-filter-legend": "فیلتر",
        "allmessages-filter-unmodified": "تغیر نه کورته",
        "allmessages-filter-all": "موچ",
        "allmessages-filter-modified": "تغیر نه کورته",
+       "allmessages-prefix": "فیلتر کورتین بئ اساس پدوند:",
        "allmessages-language": "زبان:",
        "allmessages-filter-submit": "برا",
        "allmessages-filter-translate": "ترجمه",
        "thumbnail-more": "ٹُوه کورتین",
        "filemissing": "فایل وجود نداریت",
+       "thumbnail_error_remote": "خطای پیام $1 :\n$2",
+       "thumbnail-temp-create": "نتوان که موقتین ناحُنی ئین فایلی جۆڑ کورت",
+       "thumbnail_image-missing": "بی نظر ئه رسیت فایل زیان بوته: $1",
        "import": "تاکدیمانێ بێ تێ کورتین",
+       "importinterwiki": "بي تئ رییتین ترانس ویکی ئی",
        "import-interwiki-sourcewiki": "ویکی زێ منشا:",
        "import-interwiki-sourcepage": "تاکدیمئ منشا:",
+       "import-interwiki-history": "ای تاکدیمی موچین تاریخچه ئی نخسه انتقال داته بوتنت",
        "import-interwiki-templates": "موچین تراشوانانا شامل بیئت",
        "import-interwiki-submit": "بێ تێ کورتین",
+       "import-interwiki-namespace": "نامی فضای مخصد:",
+       "import-interwiki-rootpage": "مخصدی دیمی ریشگ (اختیاری):",
        "import-upload-filename": "فایلئ نام:",
        "import-comment": "کومنیت:",
+       "importstart": "تاکدیمانی بي  تئ ریتینی حالا...",
        "import-revision-count": "$1 {{PLURAL:$1|نخسه|نخسه}}",
+       "importnopages": "هیچ تاکدیمی په ایمپورت ئا نه اینت.",
+       "importfailed": "ایمپورت شکست وارت: <nowiki>$1</nowiki>",
+       "importbadinterwiki": "بدئین انتیرویکی ئی لینک",
+       "importsuccess": "بي تی ریتین یا ایمپورت بوت!",
+       "import-upload": "اکس ام ال ئی دیتای بُرز کورتین",
+       "importlogpage": "ایمپورت لوگ",
+       "import-logentry-upload-detail": "$1 {{PLURAL:$1|نسخه|نسخه}} وارد بوته",
        "import-logentry-interwiki": "$1 ئا ترانس ویکی کورت",
        "import-logentry-interwiki-detail": "$1 {{PLURAL:$1|نسخه|نسخه}} داخل بوته شه $2",
        "javascripttest": "جاوا اسکریپتی آزمایش",
        "javascripttest-pagetext-noframework": "ای تاکدیم په جاوا اسکریپتی آزمایشی خاتیرا ایشته بوته.",
+       "javascripttest-pagetext-unknownaction": "نازانتین اکشن \"$1\".",
+       "javascripttest-pagetext-skins": "پوسته‌ای ئا په آزمایشانی اجرا ئا انتخاب کنیت:",
+       "javascripttest-qunit-intro": "[$1 آزمایشی مشتندانا] بئ mediawiki.org تا بگیندیت.",
        "tooltip-pt-userpage": "شمی کار زوروکئ تاکدیم",
        "tooltip-pt-mytalk": "شمی هبر و گپئ تاکدیم",
        "tooltip-pt-preferences": "نئ تنظیمات",
+       "tooltip-pt-mycontris": "شمی شراکت ئانی لیست",
+       "tooltip-pt-login": "توصیه ئه کنن که بئ سایٹ ئی تا داخل بئیت. اگرچه که ای کار په جبر و زور نه اینت",
        "tooltip-pt-logout": "در بوتین",
+       "tooltip-pt-createaccount": "شه شما ئه لوٹن که په وت یک کار زوروکئ حساب ئی جۆڑ بکنیت و بئ سایٹ ئی تا داخل بئیت؛هرچینکه که ای کار جبری نه اینت",
+       "tooltip-ca-talk": "ای دیمی محتوا ئانی باره ئا حبر و گپ",
+       "tooltip-ca-addsection": "نوکین بخشی جۆڑ بکنیت",
+       "tooltip-ca-viewsource": "ای تاکدیم قُلپ بوته.\nفقط توانیت که آیی زي و منشائا بگیندیت",
+       "tooltip-ca-history": "ای تاکدیمی دیمین نخسه ئان",
        "tooltip-ca-protect": "ای تاکدیمئ قُلپ کورتین",
        "tooltip-ca-unprotect": "ای تاکدیمی قُلپئ ٹگل داتین",
        "tooltip-ca-delete": "پاک کورتین ای تاکدیمئ",
        "tooltip-n-mainpage": "بُنیاد ئین تاکدیمی دیستین",
        "tooltip-n-mainpage-description": "بُنیاد ئین تاکدیمی دیستین",
        "tooltip-n-portal": "بی پروژه ئی موریدا٬ آنچه که توانیت انجام دهیت و ای که چی چیزی ئا شه گوجا ودی بکنیت",
+       "tooltip-n-recentchanges": "ویکی ئی آخیرین تغیرايانی لڑ لیست",
+       "tooltip-n-randompage": "یک تصادفی ئین دیمی آورتین",
+       "tooltip-n-help": "جای په ودی کورتین ئا",
+       "tooltip-t-whatlinkshere": "موچین تاکدیمانی لڑ لیست که گۆ ای دیما لینک وارته انت",
+       "tooltip-feed-atom": "اتم ئی حبرنامه په ای دیما",
+       "tooltip-t-contributions": "ای کار زوروکئ شراکتانی لڑ لیست",
+       "tooltip-t-emailuser": "په ای کار زوروکا ایمیل ئی دیم داتین",
+       "tooltip-t-info": "ای دیمی باره ئا گیشتیرین مئلومات",
        "tooltip-t-upload": "فایلی بُرز کورتین",
        "tooltip-ca-nstab-main": "تاکدیمێ محتویاتێ دیستین",
        "tooltip-ca-nstab-user": "کارزوروکین تاکدیمی دیستین",
        "tooltip-ca-nstab-special": "ای یک خاصین تاکدیمی است٬ شما ئه توانیت که ای تاکدیما ایڈیٹ بکنیت",
        "tooltip-ca-nstab-project": "پروژه ئی تاکدیمی دیستین",
        "tooltip-ca-nstab-image": "دیستین فایلی تاکدیمی",
+       "tooltip-ca-nstab-mediawiki": "سیستم ئی پیامانی دیستین",
        "tooltip-ca-nstab-template": "دیستین تراشوانئ",
        "tooltip-ca-nstab-help": "دیستین کومکی تاکدیمئ",
        "tooltip-ca-nstab-category": "دیستین تهری تاکدیمی",
+       "tooltip-minoredit": "ای ایڈیٹ ئا گۆنڈ ایڈیٹ نشانگ کن",
        "tooltip-save": "وتئ تغیرانا ذخیره بکنیت",
        "tooltip-watchlistedit-normal-submit": "ئنوانانی پاک کورتین",
+       "tooltip-watchlistedit-raw-submit": "واچلیست ئی اپڈیٹ",
+       "tooltip-recreate": "پداجۆڑ کورتین تاکدیمی نه دیستین ایشیرا که ای تاکدیم دیما پاک بوته",
        "tooltip-upload": "بُرز کورتینی شرو",
        "tooltip-preferences-save": "تنظیماتانی ذخیره کورتین",
+       "tooltip-summary": "خلاصه ئا داخل بکنیت",
        "anonymous": "زیان نامین {{PLURAL:$1|کار زوروک|کار زوروکان}} شه {{SITENAME}}",
        "siteuser": "$1، کار زوروک {{SITENAME}}",
        "anonuser": "$1 نا دروست ئین کار زوروک {{SITENAME}}",
        "lastmodifiedatby": "ای تاکدیم  آخرین وارا  بی $2، $1 بی $3 دستا تغییر داته بوته.",
+       "othercontribs": "بئ اساس اثر ئی شه $1 ئا",
        "others": "دیگران",
        "siteusers": "$1، {{PLURAL:$2|کار زوروک|کار زوروکان}} {{SITENAME}}",
        "anonusers": " {{SITENAME}} نادروست ئین {{PLURAL:$2|کار زوروک|کار زوروکان}} $1",
        "creditspage": "ای تاکدیمی کریدیت ئان",
+       "nocredits": "ای تاکدیمی جۆڑ کنۆک ئی مئلومات موجود نه انت.",
+       "spamprotectiontitle": "سپم ئانی فیلترینگ",
+       "spambot_username": "میدیا ویکی ئی تمیزکاری شه سپم هان",
+       "spam_reverting": "بیئرگردینتین آخیرین نخسه ئی که بئ $1 ئا لینک نداریت.",
+       "pageinfo-title": "مئلومات په «$1» ئا",
        "pageinfo-header-basic": "بُنادین مئلومات",
        "pageinfo-header-edits": "تاریخچه ئی ایڈیٹ",
        "pageinfo-header-restrictions": "ساتیتین تاکدیمئ",
+       "pageinfo-header-properties": "تاکدیمی خاص ئین ئان",
+       "pageinfo-display-title": "ئنوان ئی نشان داتین",
+       "pageinfo-length": "تاکدیمی حجم (بایٹ)",
        "pageinfo-article-id": "تاکدیمی آی دی",
+       "pageinfo-language": "تاکدیمی محتوایی زبان",
+       "pageinfo-content-model": "تاکدیمی محتوایی جۆڑیشت",
+       "pageinfo-robot-policy": "لڑلیست کورتین شه رباتانی نیمگا",
+       "pageinfo-robot-index": "مجاز",
        "pageinfo-robot-noindex": "نامجاز",
+       "pageinfo-watchers": "تاکدیمی دیدار کنۆکانی اندازگ",
+       "pageinfo-few-watchers": "کمتیر شه  $1 {{PLURAL:$1| دیدار|دیدار}}",
+       "pageinfo-redirects-name": "تغیرمسیرانی اندازگ په ای تاکدیما",
+       "pageinfo-subpages-value": "$1 ($2 {{PLURAL:$2|تغییرمسیر|تغییرمسیر}}; $3 {{PLURAL:$3|غیرتغییرمسیر|غیرتغییرمسیر}})",
        "pageinfo-firstuser": "ای تاکدیمئ جوڑ کنوک",
        "pageinfo-firsttime": "ای تاکدیمئ جوڑ کورتینی وخت",
        "pageinfo-lastuser": "آخرین ایڈیٹ کنوک",
        "pageinfo-lasttime": "آخرین ایڈیٹئ تاریخ",
        "pageinfo-edits": "موچین ایڈیٹانئ اندازه گ",
        "pageinfo-authors": "موچین نویسوکانئ اندازه گ",
+       "pageinfo-recent-edits": "آخیرئین ایڈیٹانی اندازگ (بئ $1 دیما)",
+       "pageinfo-recent-authors": "یکی ئین آخیرین نویسوکان اندازگ",
        "pageinfo-magic-words": "{{PLURAL:$1|حرف|حروف}} جادویی ($1)",
        "pageinfo-hidden-categories": "چیهرین {{PLURAL:$1| تهر|تهر هان}} ( $1 )",
+       "pageinfo-templates": "{{PLURAL:$1|تراشوان|تراشوان}} استفاده‌ بوته ($1)",
+       "pageinfo-transclusions": "{{PLURAL:$1|تاکدیم|تاکدیمان}} ترانسکلوڈ بوتگ بئ ($1) تا",
        "pageinfo-toolboxlink": "تاکدیمئ مئلومات",
        "pageinfo-redirectsto": "تغییر مسیر بی",
        "pageinfo-redirectsto-info": "مئلومات",
        "pageinfo-contentpage-yes": "هان",
        "pageinfo-protect-cascading-yes": "هان",
+       "pageinfo-category-info": "تهری مئلومات",
        "pageinfo-category-pages": "تاکدیمانی نمبر",
+       "pageinfo-category-files": "فایلانی اندازگ",
        "patrol-log-page": "گشتئ سیاه چال",
        "previousdiff": "→دیمتیرین ئی فرق",
        "nextdiff": "نۆکتیرین ئی فرق ←",
        "file-info": "فایلئ اندازه گ: $1، نوع  MIME $2",
        "file-info-size": "<span dir=\"ltr\">$1 × $2</span> پیکسل، فایلئ اندازه گ: $3، نوع MIME فایلئ: $4",
        "file-info-size-pages": "<span style=\"direction:ltr\">$1 × $2</span> نقطه، فایلئ حجم: $3، نوع MIME فایل: $4، $5 تاکدیم",
+       "show-big-image": "اورجینال ئین فایل",
        "show-big-image-other": "دیگرین {{PLURAL:$2|کیفیت|کیفیت‌هان}}: $1.",
        "show-big-image-size": "<span dir=\"ltr\">$1 × $2</span> پیکسل",
        "file-info-gif-looped": "چرخش‌دار",
index 501be30..98abb5d 100644 (file)
        "poolcounter-usage-error": "Лелочун гӀалат: $1",
        "aboutsite": "{{grammar:genitive|{{SITENAME}}}} лаьцна",
        "aboutpage": "Project:Цуьнах лаьцна",
-       "copyright": "ЧÑ\83лаÑ\86ам Ð»ÐµÐ»Ð¾ Ð¼ÐµÐ³Ð° $1 Ð»Ð¸Ñ\86ензиÑ\86а (кÑ\85ениг билгалйина яцахь).",
+       "copyright": "ЧÑ\83лаÑ\86ам Ð»ÐµÐ»Ð¾ Ð¼ÐµÐ³Ð° $1 Ð»Ð¸Ñ\86ензиÑ\86а (кÑ\85иниг билгалйина яцахь).",
        "copyrightpage": "{{ns:project}}:Авторан бакъонаш",
        "currentevents": "ХӀинцалера хилларш",
        "currentevents-url": "Project:ХӀинцалера хилларш",
        "createacct-benefit-body1": "{{PLURAL:$1|нисдар|нисдарш}}",
        "createacct-benefit-body2": "{{PLURAL:$1|яззам|яззамаш}}",
        "createacct-benefit-body3": "{{PLURAL:$1|декъашхо|декъашхой}} тӀаьхьарчу хенахь",
-       "badretype": "Ð\90Ñ\85Ñ\8cа Ñ\8fзÑ\8aен Ð¸Ñ\88аÑ\80Ñ\88 Ñ\86Ñ\85Ñ\8cаÑ\82ера яц",
+       "badretype": "Ð\90Ñ\85Ñ\8cа Ñ\8fзÑ\8aен Ð¿Ð°Ñ\80олаÑ\88 Ñ\86Ñ\85Ñ\8cаÑ\82еÑ\80ра яц",
        "userexists": "Ахьа язъен декъашхочун цӀе йолуш ю, дехар до кхин цӀе харжар.",
        "loginerror": "ГӀалат ду декъашхо вовзарехь/йовзарехь",
        "createacct-error": "ДӀаяздар кхуллуш гӀалат ду",
        "missing-revision": "АгӀона «{{FULLPAGENAME}}» верси $1 яц.\n\nИшта хуьйла ширелла дӀаяьккхина агӀонан хьажораган дихьа делча.\nМа-дара хила мега [{{fullurl:{{#Special:Log}}/delete|page={{FULLPAGENAMEE}}}} дӀайаьхарш йолу тептар] чохь.",
        "userpage-userdoesnotexist": "Ишта декъашхочун дӀаяздар «<nowiki>$1</nowiki>» хӀинца дац. Хьажа билгал, хьуна бакъалла лаьий кхолла я хийцам ба хӀокху агӀон.",
        "userpage-userdoesnotexist-view": "«$1» ишта декъашхочун дӀаяздар дац.",
-       "blocked-notice-logextract": "ХӀара декъашхочун дӀаяздар блоктоьхна ду.\nЛахахь гойту блоктохарийн тептар чура тӀаьхьарлера дӀаяздар:",
+       "blocked-notice-logextract": "Ð¥Ó\80аÑ\80а Ð´ÐµÐºÑ\8aаÑ\88Ñ\85оÑ\87Ñ\83н Ð´Ó\80аÑ\8fздаÑ\80 Ð±Ð»Ð¾ÐºÑ\82оÑ\8cÑ\85на Ð´Ñ\83.\nÐ\9bаÑ\85аÑ\85Ñ\8c Ð³Ð¾Ð¹Ñ\82Ñ\83 Ð±Ð»Ð¾ÐºÑ\82оÑ\85аÑ\80ийн Ñ\82епÑ\82аÑ\80 Ñ\87Ñ\83Ñ\80а Ñ\82Ó\80аÑ\8cÑ\85Ñ\85Ñ\8cаÑ\80леÑ\80а Ð´Ó\80аÑ\8fздаÑ\80:",
        "clearyourcache": "'''Билгалдаккхар.''' Ӏалашйинчул тӀехьа хийцамаш га браузеран кэш цӀанъян езаш хила мега.\n* '''Firefox / Safari:''' ''Shift'' цӀе йолу пиллиг лаьцна битна, гӀирсийн панелан тӀера тӀетаӀе ''Карлаяккха'' я ''Ctrl-F5'' я ''Ctrl-R'' (''⌘-R'' Mac тӀехь)\n* '''Google Chrome:''' ТӀетаӀе ''Ctrl-Shift-R'' (''⌘-Shift-R'' Mac тӀехь)\n* '''Internet Explorer:''' ''Ctrl'' лаьцна йитан, тӀетаӀе ''Карлаяккха'' я тӀетаӀе ''Ctrl-F5''\n* '''Opera:''' Кэш цӀанъяр харжа меню ''Инструменты → Настройки'' чохь",
        "usercssyoucanpreview": "'''ДӀаалар.''' ТӀетаӀае кнопка «{{int:showpreview}}», хьажа хьай керла CSS-файл Ӏалаш яле.",
        "userjsyoucanpreview": "'''ДӀаалар.''' ТӀетаӀае кнопка «{{int:showpreview}}», хьажа хьай керла JS-файл Ӏалаш яле.",
        "searchresults-title": "Лахар «$1»",
        "titlematches": "АгӀонийн цӀераш цхьаьнанисялар",
        "textmatches": "АгӀонийн йоза цхьаьнанисдалар",
-       "notextmatches": "АгӀонаш чура йозанашца цхьатера йогlуш яц",
+       "notextmatches": "АгӀонаш чура йозанашца цхьатерра йогӀуш яц",
        "prevn": "хьалхарнаш {{PLURAL:$1|$1}}",
        "nextn": "тӀаьхьйогӀурш {{PLURAL:$1|$1}}",
        "prevn-title": "{{PLURAL:$1|1=Хьалхара $1 дӀаяздар|Хьалхара $1 дӀаяздарш}}",
        "rcshowhidemine": "$1 айхьа нисдинарш",
        "rcshowhidemine-show": "Гайта",
        "rcshowhidemine-hide": "Къайладаха",
-       "rclinks": "Ð\93айÑ\82а Ñ\82Ó\80аÑ\8cÑ\85Ñ\8cаÑ\80а $1 Ñ\85ийÑ\86амаÑ\88 $2 Ð´ÐµÐ½<br />$3",
+       "rclinks": "Ð\93айÑ\82а Ñ\82Ó\80аÑ\8cÑ\85Ñ\85Ñ\8cаÑ\80леÑ\80аÑ\87Ñ\83 $2 Ð´Ð¸Ð¹Ð½Ð°Ñ\85Ñ\8c Ð±Ð¸Ð½Ð° Ð±Ð¾Ð»Ñ\83 $1 Ñ\85ийÑ\86амаÑ\88\n<br />$3",
        "diff": "башхалла",
        "hist": "истори",
        "hide": "Къайлаяккха",
        "usercreated": "{{GENDER:$3|дӀавазвелла|дӀаязелла}} $1 $2",
        "newpages": "Керла агӀонаш",
        "newpages-username": "Декъашхо:",
-       "ancientpages": "ТӀаьхьарлерачу хенаца нисбина яззамаш",
+       "ancientpages": "ТÓ\80аÑ\8cÑ\85Ñ\85Ñ\8cаÑ\80леÑ\80аÑ\87Ñ\83 Ñ\85енаÑ\86а Ð½Ð¸Ñ\81бина Ñ\8fззамаÑ\88",
        "move": "ЦӀе хийца",
        "movethispage": "ХӀокху агӀон цӀе хийца",
        "unusedimagestext": "Дехар до, тидаме эца, кхин йолу дуьнана машан-меттигаш а лелош хила мега нийсса йогӀу хьажорг (URL) хӀокху хӀуман, хӀокху могӀаме йогӀуш ялахь яцахь а иза хила мега жигара лелош.",
        "undelete-show-file-submit": "ХӀаъ",
        "namespace": "Цlерийн ана:",
        "invert": "Хаьржинарг къайлаяккха",
-       "tooltip-invert": "Ð¥Ó\80оÑ\82Ñ\82ае Ñ\85Ó\80аÑ\80а Ð±Ð¸Ð»Ð³Ð°Ð»Ð¾, Ñ\85аÑ\8cÑ\80жинÑ\87Ñ\83 Ñ\86Ó\80еÑ\80ийн Ð¼ÐµÑ\82Ñ\82иган агӀонийн хийцамаш къайлабаха (кхин дихкина цӀерийн меттигаш, гайтина елахь)",
+       "tooltip-invert": "Ð¥Ó\80оÑ\82Ñ\82ае Ñ\85Ó\80аÑ\80а Ð±Ð¸Ð»Ð³Ð°Ð»Ð¾, Ñ\85аÑ\8cÑ\80жинÑ\87Ñ\83 Ñ\86Ó\80еÑ\80ийн Ð°Ð½ан агӀонийн хийцамаш къайлабаха (кхин дихкина цӀерийн меттигаш, гайтина елахь)",
        "namespace_association": "Йихкина ана",
        "tooltip-namespace_association": "ХӀоттае хӀара билгало, иштта дийцарийн (я кхин) цӀерийн ана юкъахь хилийта",
        "blanknamespace": "(Коьрта)",
        "sp-contributions-logs": "тéптарш",
        "sp-contributions-talk": "дийцаре",
        "sp-contributions-userrights": "декъашхочун бакъонашна урхалладар",
-       "sp-contributions-blocked-notice": "ХӀара декъашхочун дӀаяздар блоктоьхна ду.\nЛахахь гойту блоктохарийн тептар чура тӀаьхьарлера дӀаяздар:",
-       "sp-contributions-blocked-notice-anon": "ХӀара IP-адрес хӀинца блоктоьхна ду.\nЛахахь гойту блоктохарийн тептар чура тӀаьхьарлера дӀаяздар:",
+       "sp-contributions-blocked-notice": "Ð¥Ó\80аÑ\80а Ð´ÐµÐºÑ\8aаÑ\88Ñ\85оÑ\87Ñ\83н Ð´Ó\80аÑ\8fздаÑ\80 Ð±Ð»Ð¾ÐºÑ\82оÑ\8cÑ\85на Ð´Ñ\83.\nÐ\9bаÑ\85аÑ\85Ñ\8c Ð³Ð¾Ð¹Ñ\82Ñ\83 Ð±Ð»Ð¾ÐºÑ\82оÑ\85аÑ\80ийн Ñ\82епÑ\82аÑ\80 Ñ\87Ñ\83Ñ\80а Ñ\82Ó\80аÑ\8cÑ\85Ñ\85Ñ\8cаÑ\80леÑ\80а Ð´Ó\80аÑ\8fздаÑ\80:",
+       "sp-contributions-blocked-notice-anon": "Ð¥Ó\80аÑ\80а IP-адÑ\80еÑ\81 Ñ\85Ó\80инÑ\86а Ð±Ð»Ð¾ÐºÑ\82оÑ\8cÑ\85на Ð´Ñ\83.\nÐ\9bаÑ\85аÑ\85Ñ\8c Ð³Ð¾Ð¹Ñ\82Ñ\83 Ð±Ð»Ð¾ÐºÑ\82оÑ\85аÑ\80ийн Ñ\82епÑ\82аÑ\80 Ñ\87Ñ\83Ñ\80а Ñ\82Ó\80аÑ\8cÑ\85Ñ\85Ñ\8cаÑ\80леÑ\80а Ð´Ó\80аÑ\8fздаÑ\80:",
        "sp-contributions-search": "Къинхьегам лахар",
        "sp-contributions-username": "IP-адрес я декъашхочун цӀе:",
        "sp-contributions-toponly": "ТӀаьхьара бина хийцамаш гайта",
        "protectedpagemovewarning": "'''ДӀахьедар.''' ХӀара агӀо гӀаролла йина ю; цӀе хийца я нисйа а бакъо йолуш куьйгалхой бе бац.\nЛахахьа тептаро балийна тӀаьхьаралера дӀаязбина хаам:",
        "semiprotectedpagemovewarning": "'''ДӀахьедо.''' ХӀара агӀо гӀаролла йина ю; дӀабазбиначу декъашхошка бе цӀе хийцалуш яц.\nЛахахьа тептаро балийна тӀаьхьаралера дӀаязбина хаам:",
        "export": "АгӀонаш араяхар",
-       "exporttext": "Шуьга далур ду кхечу меттера чудахарш, йоза а хийцаме тептарш билгалла йолу агӀонаш йа гулдина йолу агӀонаш хӀокх XML барамца, юха тӀяхьа чура [[Special:Import|хьаэцалурдолш]] кхечу вики-хьалхен, болх беш йолу хlокху MediaWiki гlирсаца.\n\nКхечу меттера яззамаш чуйаха, чуязйе цӀе тадечу метте, цӀхьа могӀан цӀе могӀаршкахь, юха харжа лаьи шуна Кхечу меттер чуйаха массо яззамашна истори хийцамбарш йа тӀяхьаралера яззамна башхо.\n\nШуьга кхи даландерг, лелаеш йолу меттиг къастаман машан хьажорг кхечу меттер чудаха тӀаьхьарлерачу башхон яззамаш. Масала оцу яззамна [[{{MediaWiki:Mainpage}}]] хӀара хира ю хьажорг [[{{#Special:Export}}/{{MediaWiki:Mainpage}}]].",
+       "exporttext": "Шуьга далур ду кхечу меттера чудахарш, йоза а хийцаме тептарш билгалла йолу агӀонаш я гулдина йолу агӀонаш хӀокху XML барамца, юха тӀаьхьа чура [[Special:Import|хьаэцалурдолш]] кхечу вики-хьалхен, болх беш йолу хӀокху MediaWiki гӀирсаца.\n\nКхечу меттера яззамаш чуяха, чу язъе цӀе тадечу метте, цхьа могӀан цӀе могӀаршкахь, юха харжа лаьий шуна кхечу меттигера чуяха массо яззамашна истори хийцамбарш я тӀаьххьарлера яззаман верси.\n\nШуьга кхи далундерг, лелаеш йолу адресан хьажорг кхечу меттера чудаха тӀаьххьарлерачу версин яззамаш. Масала оцу яззаман [[{{MediaWiki:Mainpage}}]] хӀара хира ю хьажорг [[{{#Special:Export}}/{{MediaWiki:Mainpage}}]].",
        "exportall": "Массо агӀонаш экспорт ян",
        "exportcuronly": "Карара верси бен юкъа ма тоха, юзийна хьалхалерра истори йоцуш",
        "export-submit": "Экспорт ян",
        "redirect-revision": "АгӀона верси",
        "redirect-file": "Файлан цӀе",
        "redirect-not-exists": "МаьӀна цакарий",
-       "fileduplicatesearch": "Лаха цхьатера йолу файлаш",
-       "fileduplicatesearch-summary": "Ð\9bаÑ\85а Ñ\86Ñ\85Ñ\8cаÑ\82еÑ\80а Ð¹Ð¾Ð»Ñ\83 Ñ\84айлаÑ\88 Ñ\85Ñ\8dÑ\88-кодаÑ\86а.",
-       "fileduplicatesearch-legend": "Цхьатера ерш лахар",
+       "fileduplicatesearch": "Лаха цхьатерра йолу файлаш",
+       "fileduplicatesearch-summary": "Ð¥Ñ\8dÑ\88-кодаÑ\86а Ñ\86Ñ\85Ñ\8cаÑ\82еÑ\80Ñ\80а Ñ\84айлаÑ\88 Ð»Ð°Ñ\85аÑ\80.",
+       "fileduplicatesearch-legend": "Цхьатерра ерш лахар",
        "fileduplicatesearch-filename": "Файлан цӀе:",
        "fileduplicatesearch-submit": "Лахар",
        "fileduplicatesearch-info": "$1 × $2 пиксель<br />Файлан барам: $3<br />MIME-тайп: $4",
index 8eb03b6..9bff753 100644 (file)
        "version-license": "MediaWiki-Lizenz",
        "version-ext-license": "Lizenz",
        "version-ext-colheader-name": "Bezeichnung",
-       "version-skin-colheader-name": "Benutzeroberfläche",
+       "version-skin-colheader-name": "Bezeichnung",
        "version-ext-colheader-version": "Version",
        "version-ext-colheader-license": "Lizenz",
        "version-ext-colheader-description": "Beschreibung",
index 271e675..7320c0c 100644 (file)
        "badtitletext": "Sernamey pela ke şıma waşt, nêvêrd, thalo/vengo ya ki zıwano miyanêno ğelet gırêdae ya ki sernamey wiki.\nBeno ke, tede yew ya zi zêdê işareti estê ke sernaman de nêxebetiyenê.",
        "perfcached": "Datay cı ver hazır biye. No semedê ra nıkayin niyo! tewr zaf {{PLURAL:$1|netice|$1 netice}} debêno de",
        "perfcachedts": "Cêr de malumatê nımıteyi esti, demdê newe kerdışo peyın: $1. Tewr zaf {{PLURAL:$4|netice|$4 neticey cı}} debyayo de",
-       "querypage-no-updates": "Nıka newe kerdış nêbeno. no datayi ca de newe nêbeni .",
+       "querypage-no-updates": "Rocanebiyayışê na pele nıka cadayiyê.\nDayiyi tiya nıka newe nêbenê.",
        "viewsource": "Çımey bıvêne",
        "viewsource-title": "Cı geyrayışê $1'i bıvin",
        "actionthrottled": "Kerden peysnaya",
        "specialpages": "Pelê xısusiyi",
        "specialpages-note-top": "Kıtabek",
        "specialpages-note": "* Pelê xasê normali.\n* <span class=\"mw-specialpagerestricted\">Pelê xasê nımıtey.</span>",
-       "specialpages-group-maintenance": "Raporê tepıştışi",
+       "specialpages-group-maintenance": "Raporê pawıtışi",
        "specialpages-group-other": "Pelê xasiyê bini",
        "specialpages-group-login": "Cı kewe / hesab vıraze",
        "specialpages-group-changes": "Vurnayişê peni u logan",
index d51a433..fe1b750 100644 (file)
        "jumpto": "Saltar a:",
        "jumptonavigation": "navegación",
        "jumptosearch": "buscar",
-       "view-pool-error": "Lo sentimos, los servidores están sobrecargados en este momento.\nHay demasiados usuarios que están tratando de ver esta página.\nEspera un momento antes de tratar de acceder nuevamente a esta página.\n\n$1",
-       "generic-pool-error": "Lo sentimos, los servidores están sobrecargados en este momento.\nHay demasiados usuarios que están tratando de ver este recurso.\nEspera un momento antes de tratar de acceder nuevamente a este recurso.",
+       "view-pool-error": "Lo sentimos, los servidores están sobrecargados en este momento.\nHay demasiados usuarios tratando de ver esta página.\nEspera un momento antes de intentar acceder de nuevo a esta página.\n\n$1",
+       "generic-pool-error": "Lo sentimos, los servidores están sobrecargados en este momento.\nHay demasiados usuarios tratando de ver este recurso.\nEspera un momento antes de intentar acceder de nuevo a este recurso.",
        "pool-timeout": "Se agotó el tiempo de espera al cierre de exclusión mutua",
        "pool-queuefull": "La cola de trabajo está llena",
        "pool-errorunknown": "Error desconocido",
        "nosuchaction": "No existe esa acción",
        "nosuchactiontext": "La acción especificada en la URL no es válida.\nEs posible que hayas escrito mal la URL o que hayas seguido un enlace incorrecto.\nEsto también podría indicar un error en el software utilizado por {{SITENAME}}.",
        "nosuchspecialpage": "No existe esa página especial",
-       "nospecialpagetext": "<strong>Ha solicitado una página especial inexistente.</strong>\n\nPuedes ver una lista de las páginas especiales en [[Special:SpecialPages|{{int:specialpages}}]].",
+       "nospecialpagetext": "<strong>Has intentado acceder a una página especial inexistente.</strong>\n\nPuedes ver una lista de las páginas especiales en [[Special:SpecialPages|{{int:specialpages}}]].",
        "error": "Error",
        "databaseerror": "Error de la base de datos",
        "databaseerror-text": "Se ha producido un error en la consulta a la base de datos.\nEsto puede indicar un fallo en el software.",
        "readonly": "Base de datos bloqueada",
        "enterlockreason": "Explica el motivo del bloqueo, incluyendo una estimación de cuándo se producirá el desbloqueo",
        "readonlytext": "La base de datos no permite nuevas entradas u otras modificaciones de forma temporal, probablemente por mantenimiento rutinario, tras lo cual volverá a la normalidad.\n\nLa explicación dada por el administrador que la bloqueó fue: $1",
-       "missing-article": "La base de datos no ha encontrado el texto de una página, denominada «$1» $2, que debería haberse hallado.\n\nLa causa de esto suele ser un ''diff'' anacrónico o un enlace al historial de una página que ha sido borrada.\n\nSi no fuera el caso, puede que hayas encontrado un fallo en el software.\n\nPor favor, informa de esto a [[Special:ListUsers/sysop|administrador]], y anota la URL actual.",
+       "missing-article": "La base de datos no ha encontrado el texto de la página «$1» $2, cuando debería haberse hallado.\n\nLa causa de esto suele ser un ''diff'' anacrónico o un enlace al historial de una página que ha sido borrada.\n\nSi no fuera el caso, puede que hayas encontrado un fallo en el software.\n\nPor favor, informa de esto a [[Special:ListUsers/sysop|administrador]], y anota la URL actual.",
        "missingarticle-rev": "(revisión: $1)",
        "missingarticle-diff": "(diferencia: $1, $2)",
-       "readonly_lag": "La base de datos se ha bloqueado automáticamente mientras los servidores esclavos de la base de datos se sincronizan con el maestro.",
+       "readonly_lag": "La base de datos se ha bloqueado automáticamente mientras sus servidores esclavos se sincronizan con el maestro.",
        "internalerror": "Error interno",
        "internalerror_info": "Error interno: $1",
        "filecopyerror": "No se ha podido copiar el archivo «$1» a «$2».",
        "noname": "No se ha especificado un nombre de usuario válido.",
        "loginsuccesstitle": "Has accedido correctamente",
        "loginsuccess": "<strong>Has accedido a {{SITENAME}} como «$1».</strong>",
-       "nosuchuser": "No existe ningún usuario llamado «$1».\nLos nombres de usuario son sensibles a las mayúsculas.\nRevisa la ortografía, o [[Special:UserLogin/signup|crea una cuenta nueva]].",
-       "nosuchusershort": "No hay un usuario con el nombre «$1». Comprueba que lo has escrito correctamente.",
+       "nosuchuser": "No existe ningún usuario llamado «$1».\nLos nombres de usuario son sensibles a las mayúsculas.\nRevisa tu ortografía, o [[Special:UserLogin/signup|crea una cuenta nueva]].",
+       "nosuchusershort": "No existe ningún usuario llamado «$1». Comprueba que lo has escrito correctamente.",
        "nouserspecified": "Debes especificar un nombre de usuario.",
        "login-userblocked": "No puedes iniciar sesión porque tu cuenta está bloqueada.",
        "wrongpassword": "La contraseña indicada es incorrecta.\nInténtalo de nuevo.",
        "yourdiff": "Diferencias",
        "copyrightwarning": "Ten en cuenta que todas las contribuciones a {{SITENAME}} se consideran publicadas bajo la $2 (véase $1 para más información). Si no deseas que las modifiquen sin limitaciones y las distribuyan libremente, no las publiques aquí.<br />Al mismo tiempo, asumimos que eres el autor de lo que escribiste, o lo copiaste de una fuente en el dominio público o con licencia libre. <strong>¡No uses textos con copyright sin permiso!</strong>",
        "copyrightwarning2": "Ten en cuenta que todas las contribuciones a {{SITENAME}} pueden ser editadas, modificadas o eliminadas por otros colaboradores. Si no deseas que las modifiquen sin limitaciones, no las publiques aquí.<br />Al mismo tiempo, asumimos que eres el autor de lo que escribiste, o lo copiaste de una fuente en el dominio público o con licencia libre (véase $1 para más detalles).\n<strong>¡No uses textos con copyright sin permiso!</strong>",
-       "longpageerror": "<strong>Error: el texto que has enviado ocupa {{PLURAL:$1|un kilobyte|$1 kilobytes}}, que excede el máximo de {{PLURAL:$2|un kilobyte|$2 kilobytes}}.</strong>\nPor tanto, no lo podemos guardar.",
+       "longpageerror": "<strong>Error: el texto que has enviado ocupa {{PLURAL:$1|un kilobyte|$1 kilobytes}}, que supera el máximo de {{PLURAL:$2|un kilobyte|$2 kilobytes}}.</strong>\nPor tanto, no lo podemos guardar.",
        "readonlywarning": "<strong>Advertencia: La base de datos ha sido bloqueada por labores de mantenimiento, así que en este momento no puedes guardar tus ediciones.</strong>\nQuizás quieras copiar y pegar tu texto en un archivo de texto y guardarlo para después.\n\nEl administrador que la bloqueó ha dado esta explicación: $1",
        "protectedpagewarning": "<strong>Advertencia: Esta página ha sido protegida para que solo puedan editarla los usuarios con permisos de administrador.</strong>\nA continuación se muestra la última entrada de registro para más información:",
        "semiprotectedpagewarning": "<strong>Nota:</strong> Esta página ha sido protegida para que solo puedan editarla los usuarios registrados.\nA continuación se muestra la última entrada de registro para más información:",
        "nocreate-loggedin": "No tienes permiso para crear páginas nuevas.",
        "sectioneditnotsupported-title": "Edición de sección no admitida",
        "sectioneditnotsupported-text": "No se admite la edición de secciones en esta página.",
-       "permissionserrors": "Error de permiso",
+       "permissionserrors": "Error de permisos",
        "permissionserrorstext": "No tienes permiso para hacer eso, por {{PLURAL:$1|el siguiente motivo|los siguientes motivos}}:",
        "permissionserrorstext-withaction": "No tienes permiso para $2, por {{PLURAL:$1|el siguiente motivo|los siguientes motivos}}:",
        "recreate-moveddeleted-warn": "<strong>Atención: estás volviendo a crear una página que ha sido borrada anteriormente.</strong>\n\nPiensa si es adecuado continuar editando la página.\nA continuación, se proporciona el registro de borrado y traslados de esta página para más información:",
        "postedit-confirmation-restored": "Se ha restaurado la página.",
        "postedit-confirmation-saved": "Se ha guardado tu edición.",
        "edit-already-exists": "No se pudo crear una página nueva.\nYa existe.",
-       "defaultmessagetext": "Texto de mensaje predeterminado",
+       "defaultmessagetext": "Texto predeterminado",
        "content-failed-to-parse": "No se ha podido procesar el contenido $2 del modelo de $1: $3",
        "invalid-content-data": "Datos de contenido incorrectos",
        "content-not-allowed-here": "El contenido «$1» no está permitido en la página [[$2]]",
        "language-converter-depth-warning": "Se ha superado el límite de profundidad del convertidor de idioma ($1)",
        "node-count-exceeded-category": "Páginas que sobrepasan la cantidad de nodos",
        "node-count-exceeded-category-desc": "Esta página sobrepasa la cantidad máxima de nodos permitida.",
-       "node-count-exceeded-warning": "La página supera la cantidad de nodos",
+       "node-count-exceeded-warning": "La página sobrepasa el límite de nodos",
        "expansion-depth-exceeded-category": "Páginas que sobrepasan la profundidad de expansión",
        "expansion-depth-exceeded-category-desc": "Esta página sobrepasa la profundidad de expansión máxima.",
-       "expansion-depth-exceeded-warning": "La página ha superado la profundidad de expansión",
+       "expansion-depth-exceeded-warning": "La página ha sobrepasado el límite de profundidad de expansión",
        "parser-unstrip-loop-warning": "Se ha detectado un bucle en la función \"unstrip\"",
        "parser-unstrip-recursion-limit": "Se ha superado el límite de recursividad de la función \"unstrip\" ($1)",
        "converter-manual-rule-error": "Se ha detectado un error en una regla de conversión de lenguaje manual",
-       "undo-success": "La edición puede deshacerse. Antes de deshacer la edición, comprueba la siguiente comparación para verificar que realmente es lo que quieres hacer, y entonces guarda los cambios para así deshacer la edición.",
-       "undo-failure": "No se puede deshacer la edición ya que otro usuario ha realizado una edición intermedia.",
+       "undo-success": "Puedes deshacer la edición. Antes de deshacer la edición, comprueba la siguiente comparación para verificar que realmente es lo que quieres hacer, y entonces guarda los cambios para así efectuar la reversión.",
+       "undo-failure": "No se ha podido deshacer la edición ya que otro usuario ha realizado una edición intermedia.",
        "undo-norev": "No se ha podido deshacer la edición porque no existe o ha sido borrada.",
        "undo-nochange": "Parece que ya se había deshecho la edición.",
        "undo-summary": "Se ha deshecho la revisión $1 de [[Special:Contributions/$2|$2]] ([[User talk:$2|disc.]])",
        "viewpagelogs": "Ver los registros de esta página",
        "nohistory": "No hay historial de ediciones para esta página.",
        "currentrev": "Revisión actual",
-       "currentrev-asof": "Última revisión de $1",
-       "revisionasof": "Revisión de $1",
-       "revision-info": "Revisión de $1 por {{GENDER:$6|$2}}$7",
+       "currentrev-asof": "Revisión actual del $1",
+       "revisionasof": "Revisión del $1",
+       "revision-info": "Revisión del $1 de {{GENDER:$6|$2}}$7",
        "previousrevision": "← Revisión anterior",
        "nextrevision": "Revisión siguiente →",
        "currentrevisionlink": "Revisión actual",
        "last": "ant",
        "page_first": "primeras",
        "page_last": "últimas",
-       "histlegend": "Selección de diferencias: marca los selectores de las versiones a comparar y pulsa ''enter'' o el botón de abajo.<br />\nLeyenda: '''(act)''' = diferencias con la versión actual,\n'''(ant)''' = diferencias con la versión anterior, '''m''' = edición menor",
+       "histlegend": "Selección de diferencias: marca las casillas correspondientes a las versiones a comparar y pulsa Intro o el botón de abajo.<br />\nLeyenda: <strong>(act)</strong> = diferencias con la versión actual,\n<strong>(ant)</strong> = diferencias con la versión anterior, <strong>m</strong> = edición menor",
        "history-fieldset-title": "Buscar en el historial",
        "history-show-deleted": "Solo ediciones ocultadas",
        "histfirst": "primeras",
        "history-feed-title": "Historial de revisiones",
        "history-feed-description": "Historial de revisiones para esta página en el wiki",
        "history-feed-item-nocomment": "$1 en $2",
-       "history-feed-empty": "La página solicitada no existe.\nPuede haber sido borrada del wiki o renombrada.\nPrueba a [[Special:Search|buscar en el wiki]] nuevas páginas relevantes.",
+       "history-feed-empty": "La página solicitada no existe.\nPuede que haya sido renombrada o borrada del wiki.\nPrueba a [[Special:Search|buscar en el wiki]] otras páginas relacionadas.",
        "rev-deleted-comment": "(resumen de edición eliminado)",
        "rev-deleted-user": "(nombre de usuario eliminado)",
        "rev-deleted-event": "(detalles del registro eliminados)",
        "rev-deleted-user-contribs": "[nombre de usuario o dirección IP eliminada - edición ocultada de la lista de contribuciones]",
-       "rev-deleted-text-permission": "Esta revisión de la página ha sido '''borrada'''.\nPuede haber detalles en el [{{fullurl:{{#Special:Log}}/delete|page={{FULLPAGENAMEE}}}} registro de borrados].",
-       "rev-suppressed-text-permission": "Esta revisión de la página se <strong>suprimió</strong>.\nLos detalles se pueden ver en el [{{fullurl:{{#Special:Log}}/suppress|page={{FULLPAGENAMEE}}}} registro de supresión].",
-       "rev-deleted-text-unhide": "Esta revisión de la página ha sido '''borrada'''.\nPuede haber más detalles en el [{{fullurl:{{#Special:Log}}/delete|page={{FULLPAGENAMEE}}}} registro de borrados].\nComo administrador todavía puedes [$1 ver esta revisión] si así lo deseas.",
-       "rev-suppressed-text-unhide": "Esta revisión de la página ha sido '''suprimida'''.\nPuede haber más detalles en el [{{fullurl:{{#Special:Log}}/suppress|page={{FULLPAGENAMEE}}}} registro de supresiones].\nComo administrador podrá seguir [$1 viendo esta revisión] si desea continuar.",
-       "rev-deleted-text-view": "Esta revisión de la página ha sido '''borrada'''.\nAún tiene la posibilidad de verla; puede ampliar los detalles en el [{{fullurl:{{#Special:Log}}/delete|page={{FULLPAGENAMEE}}}} registro de borrados].",
-       "rev-suppressed-text-view": "Esta revisión de la página ha sido '''suprimida'''.\nAún tiene la posibilidad de verla; puede ampliar los detalles en el [{{fullurl:{{#Special:Log}}/suppress|page={{FULLPAGENAMEE}}}} registro de supresiones].",
-       "rev-deleted-no-diff": "No puedes ver esta diferencia porque una de las revisiones ha sido '''borrada'''.\nPuedes encontrar más detalles en el [{{fullurl:{{#Special:Log}}/delete|page={{FULLPAGENAMEE}}}} registro de borrados].",
-       "rev-suppressed-no-diff": "No puedes ver esta diferencia porque una de las revisiones ha sido '''borrada'''.",
-       "rev-deleted-unhide-diff": "Una de las revisiones de esta diferencia ha sido '''borrada'''.\nPuede ampliar los detalles en el [{{fullurl:{{#Special:Log}}/delete|page={{FULLPAGENAMEE}}}} registro de borrados].\nAún puede [$1 ver este cambio] si así lo desea.",
-       "rev-suppressed-unhide-diff": "Una de las revisiones de esta diferencia ha sido '''suprimida'''.\nPuede haber detalles en el [{{fullurl:{{#Special:Log}}/suppress|page={{FULLPAGENAMEE}}}} registro de supresiones].\nAún puede [$1 ver esta diferencia] si desea así lo desea.",
-       "rev-deleted-diff-view": "Una de las revisiones de esta diferencia ha sido '''borrada'''.\nAún tiene la posibilidad de verla; puede ampliar los detalles en el [{{fullurl:{{#Special:Log}}/delete|page={{FULLPAGENAMEE}}}} registro de borrados].",
-       "rev-suppressed-diff-view": "Una de las revisiones de esta diferencia ha sido '''suprimida'''.\nAún tiene la posibilidad de verla; puede ampliar los detalles en el [{{fullurl:{{#Special:Log}}/suppress|page={{FULLPAGENAMEE}}}} registro de supresiones].",
+       "rev-deleted-text-permission": "Esta revisión ha sido <strong>eliminada</strong>.\nPara más información, consulta el [{{fullurl:{{#Special:Log}}/delete|page={{FULLPAGENAMEE}}}} registro de borrados].",
+       "rev-suppressed-text-permission": "Esta revisión ha sido <strong>suprimida</strong>.\nPara más información, consulta el [{{fullurl:{{#Special:Log}}/suppress|page={{FULLPAGENAMEE}}}} registro de supresiones].",
+       "rev-deleted-text-unhide": "Esta revisión ha sido <strong>eliminada</strong>.\nPara más información, consulta el [{{fullurl:{{#Special:Log}}/delete|page={{FULLPAGENAMEE}}}} registro de borrados].\nComo administrador, aún puedes [$1 ver esta revisión] si lo deseas.",
+       "rev-suppressed-text-unhide": "Esta revisión ha sido <strong>suprimida</strong>.\nPara más información, consulta el [{{fullurl:{{#Special:Log}}/suppress|page={{FULLPAGENAMEE}}}} registro de supresiones].\nComo supresor, aún puedes [$1 ver esta revisión] si lo deseas.",
+       "rev-deleted-text-view": "Esta revisión ha sido <strong>eliminada</strong>.\nAún tienes la posibilidad de verla. Para más información, consulta el [{{fullurl:{{#Special:Log}}/delete|page={{FULLPAGENAMEE}}}} registro de borrados].",
+       "rev-suppressed-text-view": "Esta revisión ha sido <strong>suprimida</strong>.\nAún tienes la posibilidad de verla. Para más información, consulta el [{{fullurl:{{#Special:Log}}/suppress|page={{FULLPAGENAMEE}}}} registro de supresiones].",
+       "rev-deleted-no-diff": "No puedes ver la diferencia porque una de las revisiones ha sido <strong>eliminada</strong>.\nPuedes encontrar más detalles en el [{{fullurl:{{#Special:Log}}/delete|page={{FULLPAGENAMEE}}}} registro de borrados].",
+       "rev-suppressed-no-diff": "No puedes ver la diferencia porque una de las revisiones ha sido <strong>eliminada</strong>.",
+       "rev-deleted-unhide-diff": "Una de las revisiones ha sido <strong>eliminada</strong>.\nPara más información, consulta el [{{fullurl:{{#Special:Log}}/delete|page={{FULLPAGENAMEE}}}} registro de borrados].\nAún puedes [$1 ver la diferencia] si lo deseas.",
+       "rev-suppressed-unhide-diff": "Una de las revisiones ha sido <strong>suprimida</strong>.\nPara más información, consulta el [{{fullurl:{{#Special:Log}}/suppress|page={{FULLPAGENAMEE}}}} registro de supresiones].\nAún puedes [$1 ver la diferencia] si lo deseas.",
+       "rev-deleted-diff-view": "Una de las revisiones ha sido <strong>eliminada</strong>.\nAún tienes la posibilidad de verla. Para más información, consulta el [{{fullurl:{{#Special:Log}}/delete|page={{FULLPAGENAMEE}}}} registro de borrados].",
+       "rev-suppressed-diff-view": "Una de las revisiones ha sido <strong>suprimida</strong>.\nAún tienes la posibilidad de verla. Para más información, consulta el [{{fullurl:{{#Special:Log}}/suppress|page={{FULLPAGENAMEE}}}} registro de supresiones].",
        "rev-delundel": "mostrar/ocultar",
        "rev-showdeleted": "mostrar",
        "revisiondelete": "Borrar/restaurar revisiones",
-       "revdelete-nooldid-title": "No hay revisión destino",
-       "revdelete-nooldid-text": "No se ha especificado una revisión o revisiones destino sobre las que realizar esta función.",
+       "revdelete-nooldid-title": "La revisión destino es incorrecta",
+       "revdelete-nooldid-text": "Puede haber ocurrido lo siguiente: no se ha especificado una revisión destino sobre la que realizar esta función, la revisión especificada no existe, o estás intentando ocultar la revisión actual.",
        "revdelete-no-file": "El archivo especificado no existe.",
-       "revdelete-show-file-confirm": "¿Quieres ver la revisión borrada del archivo «<nowiki>$1</nowiki>» del $2 a las $3?",
+       "revdelete-show-file-confirm": "¿Seguro que quieres ver la revisión borrada del archivo «<nowiki>$1</nowiki>» del $2 a las $3?",
        "revdelete-show-file-submit": "Sí",
        "revdelete-selected-text": "{{PLURAL:$1|Revisión seleccionada|Revisiones seleccionadas}} de [[:$2]]:",
-       "revdelete-selected-file": "{{PLURAL:$1|Versión de archivo seleccionada|Versiones de archivo seleccionadas}} de [[:$2]]:",
-       "logdelete-selected": "{{PLURAL:$1|Seleccionado un evento|Seleccionados eventos}}:",
-       "revdelete-text-text": "Las revisiones eliminadas aún aparecerán en el historial de la página, pero parte de su contenido será inaccesible para el público.",
-       "revdelete-text-file": "Las versiones de los archivos eliminados aún aparecerán en el historial del archivo, pero partes de su contenido serán inaccesibles para el público.",
-       "logdelete-text": "Las revisiones eliminadas aún aparecerán en el historial de la página, pero parte de su contenido será inaccesible para el público.",
-       "revdelete-text-others": "Otros administradores aun serán capaces de acceder a los contenidos ocultos y restaurarlos, a menos que se establezcan restricciones adicionales.",
-       "revdelete-confirm": "Por favor confirma que deseas realizar la operación, que entiendes las consecuencias y que estás ejecutando dicha acción acorde con [[{{MediaWiki:Policy-url}}|las políticas]].",
-       "revdelete-suppress-text": "La herramienta de supresión '''solo''' debería usarse en los siguientes casos:\n* información potencialmente injuriosa o calumniante.\n* información personal inapropiada, tal como:\n*: ''nombres, domicilios, números de teléfono, números de la seguridad social e información análoga.''",
-       "revdelete-legend": "Establecer restricciones de revisión:",
+       "revdelete-selected-file": "{{PLURAL:$1|Versión seleccionada|Versiones seleccionadas}} de [[:$2]]:",
+       "logdelete-selected": "{{PLURAL:$1|Evento seleccionado|Eventos seleccionados}}:",
+       "revdelete-text-text": "Las revisiones eliminadas seguirán apareciendo en el historial de la página, pero parte de su contenido será inaccesible para el público.",
+       "revdelete-text-file": "Las versiones eliminadas seguirán apareciendo en el historial del archivo, pero partes de su contenido serán inaccesibles para el público.",
+       "logdelete-text": "Los eventos eliminados seguirán apareciendo en el registro, pero parte de su contenido será inaccesible para el público.",
+       "revdelete-text-others": "Los demás administradores podrán acceder al contenido oculto y restaurarlo, a menos que se establezcan restricciones adicionales.",
+       "revdelete-confirm": "Por favor confirma que deseas realizar la operación, que entiendes sus consecuencias y que realizas esta acción siguiendo [[{{MediaWiki:Policy-url}}|las políticas]].",
+       "revdelete-suppress-text": "La herramienta de supresión <strong>solo</strong> debería usarse en los siguientes casos:\n* información potencialmente injuriosa o calumniante.\n* información personal inapropiada, tal como:\n*: <em>nombres, domicilios, números de teléfono, números de identificación nacional e información análoga.</em>",
+       "revdelete-legend": "Establecer restricciones de visibilidad",
        "revdelete-hide-text": "Texto de la revisión",
        "revdelete-hide-image": "Ocultar el contenido del archivo",
-       "revdelete-hide-name": "Ocultar objetivo y parámetros.",
+       "revdelete-hide-name": "Ocultar la selección y sus parámetros.",
        "revdelete-hide-comment": "Resumen de edición",
        "revdelete-hide-user": "Nombre/IP del editor",
-       "revdelete-hide-restricted": "Suprimir datos a los administradores así como al resto",
+       "revdelete-hide-restricted": "Suprimir para todos los usuarios, incluidos administradores",
        "revdelete-radio-same": "(no cambiar)",
        "revdelete-radio-set": "Oculta",
        "revdelete-radio-unset": "Visible",
-       "revdelete-suppress": "Suprimir datos a los administradores así como al resto",
-       "revdelete-unsuppress": "Eliminar restricciones de revisiones restauradas",
+       "revdelete-suppress": "Suprimir para todos los usuarios, incluidos administradores",
+       "revdelete-unsuppress": "Eliminar restricciones de las revisiones restauradas",
        "revdelete-log": "Motivo:",
        "revdelete-submit": "Aplicar a {{PLURAL:$1|la revisión seleccionada|las revisiones seleccionadas}}",
-       "revdelete-success": "'''La visibilidad de revisiones ha sido cambiada correctamente.'''",
-       "revdelete-failure": "'''La visibilidad de la revisión no pudo ser establecida:'''\n$1",
-       "logdelete-success": "Visibilidad de eventos cambiada correctamente.",
-       "logdelete-failure": "'''La visibilidad del registro no pudo ser ajustada:'''\n$1",
-       "revdel-restore": "cambiar visibilidad",
+       "revdelete-success": "<strong>Se ha cambiado con éxito la visibilidad de las revisiones.</strong>",
+       "revdelete-failure": "<strong>No se ha podido cambiar la visibilidad de las revisiones:</strong>\n$1",
+       "logdelete-success": "<strong>Se ha cambiado con éxito la visibilidad de los eventos.</strong>",
+       "logdelete-failure": "<strong>No se ha podido cambiar la visibilidad de los eventos:'''\n$1",
+       "revdel-restore": "mostrar/ocultar",
        "pagehist": "Historial de la página",
        "deletedhist": "Historial borrado",
-       "revdelete-hide-current": "Error al ocultar el objeto de fecha $1 a las $2: es la revisión actual.\nNo puede ser ocultada.",
-       "revdelete-show-no-access": "Error mostrando el objeto de fecha $2, $1: este objeto ha sido marcado como \"restringido\".\nNo tiene acceso a él.",
-       "revdelete-modify-no-access": "Error modificando el objeto de fecha $2, $1: este objeto ha sido marcado como \"restringido\".\nNo tiene acceso a él.",
-       "revdelete-modify-missing": "Error modificando el objeto ID $1: ¡no se encuentra en la base de datos!",
-       "revdelete-no-change": "'''Atención:''' la revisión de fecha $1 a las $2 ya tiene las restricciones de visibilidad solicitadas.",
-       "revdelete-concurrent-change": "Error modificando el objeto de fecha $2, $1: su estado parece haber sido cambiado por alguien más cuando tratabas de modificarlo. Por favor verifica los registros.",
-       "revdelete-only-restricted": "Error ocultando el item de fecha $2, $1: no puedes suprimir elementos de vista de los administradores sin seleccionar asímismo una de las otras opciones de visibilidad.",
-       "revdelete-reason-dropdown": "*Razones de borrado comunes\n** Violación a los derechos de autor\n** Comentario o información personal inapropiados\n** Nombre de usuario inapropiado\n** Información potencialmente injuriosa o calumniante",
+       "revdelete-hide-current": "Error al ocultar la revisión del $1 a las $2: es la revisión actual y no se puede ocultar.",
+       "revdelete-show-no-access": "Error al mostrar el elemento del $1 a las $2: este elemento ha sido marcado como \"restringido\", por tanto no tienes acceso a él.",
+       "revdelete-modify-no-access": "Error al modificar el elemento del $1 a las $2: este elemento ha sido marcado como \"restringido\", por tanto no tienes acceso a él.",
+       "revdelete-modify-missing": "Error al modificar el elemento con ID $1: no se ha encontrado en la base de datos.",
+       "revdelete-no-change": "<strong>Atención:<strong> la revisión del $1 a las $2 ya tiene las restricciones de visibilidad seleccionadas.",
+       "revdelete-concurrent-change": "Error al modificar el elemento del $1 a las $2: parece que otro usuario cambió su estado mientras tratabas de modificarlo. Por favor, revisa el registro.",
+       "revdelete-only-restricted": "Error al ocultar el elemento del $1 a las $2: no puedes suprimir elementos de cara a los administradores sin seleccionar al mismo tiempo otra de las opciones de visibilidad.",
+       "revdelete-reason-dropdown": "*Razones de borrado más comunes\n** Violación de los derechos de autor\n** Información personal o comentarios inapropiados\n** Nombre de usuario inapropiado\n** Información potencialmente injuriosa o calumniante",
        "revdelete-otherreason": "Otro motivo:",
        "revdelete-reasonotherlist": "Otro motivo",
        "revdelete-edit-reasonlist": "Editar motivos de borrado",
        "revdelete-offender": "Autor de la revisión:",
        "suppressionlog": "Registro de supresiones",
-       "suppressionlogtext": "A continuación hay una lista con los borrados y bloqueos cuyo contenido se encuentra oculto para los administradores.\nVéase la [[Special:BlockList|lista de bloqueos]] que incluye las prohibiciones y bloqueos actualmente operativos.",
-       "mergehistory": "Fusionar historiales de páginas",
-       "mergehistory-header": "Esta página te permite fusionar revisiones del historial de una página origen en otra más reciente.\nAsegúrate de que esto mantendrá la continuidad histórica de la página.",
+       "suppressionlogtext": "A continuación se muestra una lista de borrados y bloqueos relacionados con contenido oculto para los administradores.\nVéase la [[Special:BlockList|lista de bloqueos]], que incluye las prohibiciones y bloqueos actualmente activos.",
+       "mergehistory": "Fusionar historiales",
+       "mergehistory-header": "Esta página te permite fusionar revisiones del historial de una página origen con los de otra más reciente.\nAsegúrate de que los cambios mantendrán la continuidad histórica de la página.",
        "mergehistory-box": "Fusionar los historiales de dos páginas:",
        "mergehistory-from": "Página origen:",
        "mergehistory-into": "Página destino:",
        "mergehistory-list": "Historial de ediciones fusionable",
-       "mergehistory-merge": "Las siguientes revisiones de [[:$1]] pueden fusionarse en [[:$2]].\nUsa la columna de casillas para fusionar sólo las revisiones creadas en y antes de la fecha especificada.\nNota que usar los enlaces de navegación borrará las selecciones de esta columna.",
+       "mergehistory-merge": "Las siguientes revisiones de [[:$1]] pueden fusionarse con las de [[:$2]].\nUsa la columna de casillas para fusionar sólo las revisiones creadas en y antes de la fecha especificada.\nTen en cuenta que si cambias de página, se borrará la selección actual de esta columna.",
        "mergehistory-go": "Mostrar ediciones fusionables",
        "mergehistory-submit": "Fusionar revisiones",
        "mergehistory-empty": "No hay revisiones fusionables.",
-       "mergehistory-success": "Se {{PLURAL:$3|fusionó $3 revisión|fusionaron $3 revisiones}} de «[[:$1]]» en «[[:$2]]» correctamente.",
+       "mergehistory-success": "Se {{PLURAL:$3|fusionó una revisión|fusionaron $3 revisiones}} de «[[:$1]]» en «[[:$2]]» correctamente.",
        "mergehistory-fail": "No se puede realizar la fusión de historiales, por favor revisa la página y los parámetros de tiempo.",
        "mergehistory-fail-toobig": "No se puede fusionar el historial ya que más del límite de $1 {{PLURAL:$1|revisión|revisiones}} se moverían.",
        "mergehistory-no-source": "La página origen $1 no existe.",
        "mergehistory-no-destination": "La página destino $1 no existe.",
-       "mergehistory-invalid-source": "La página origen debe tener un título válido.",
-       "mergehistory-invalid-destination": "La página de destino ha de tener un título válido.",
-       "mergehistory-autocomment": "Fusionando [[:$1]] en [[:$2]]",
-       "mergehistory-comment": "Fusionando [[:$1]] en [[:$2]]: $3",
-       "mergehistory-same-destination": "Las páginas de origen y destino no pueden ser la misma",
+       "mergehistory-invalid-source": "La página origen ha de tener un título válido.",
+       "mergehistory-invalid-destination": "La página destino ha de tener un título válido.",
+       "mergehistory-autocomment": "Se ha fusionado [[:$1]] en [[:$2]]",
+       "mergehistory-comment": "Se ha fusionado [[:$1]] en [[:$2]]: $3",
+       "mergehistory-same-destination": "Las páginas origen y destino no pueden ser la misma",
        "mergehistory-reason": "Motivo:",
        "mergelog": "Registro de fusiones",
        "revertmerge": "Deshacer fusión",
-       "mergelogpagetext": "Debajo está una lista de las fusiones más recientes de historial de una página en otra.",
+       "mergelogpagetext": "A continuación se muestra una lista de las fusiones de historiales más recientes.",
        "history-title": "Historial de revisiones de «$1»",
        "difference-title": "Diferencia entre revisiones de «$1»",
        "difference-title-multipage": "Diferencia entre las páginas «$1» y «$2»",
        "difference-multipage": "(Diferencia entre las páginas)",
        "lineno": "Línea $1:",
-       "compareselectedversions": "Comparar versiones seleccionadas",
-       "showhideselectedversions": "Mostrar/ocultar versiones seleccionadas",
+       "compareselectedversions": "Comparar revisiones seleccionadas",
+       "showhideselectedversions": "Mostrar/ocultar revisiones seleccionadas",
        "editundo": "deshacer",
        "diff-empty": "(Sin diferencias)",
        "diff-multi-sameuser": "(No se {{PLURAL:$1|muestra una edición intermedia|muestran $1 ediciones intermedias}} del mismo usuario)",
-       "diff-multi-otherusers": "(No se {{PLURAL:$1|muestra una edición intermedia|muestran $1 ediciones intermedias}} de {{PLURAL:$2|un usuario|$2 usuarios}})",
-       "diff-multi-manyusers": "(No se {{PLURAL:$1|muestra una edición intermedia|muestran $1 ediciones intermedias}} de {{PLURAL:$2|un usuario|$2 usuarios}})",
-       "difference-missing-revision": "No {{PLURAL:$2|se ha encontrado|se han encontrado}} {{PLURAL:$2|una revisión|$2 revisiones}} de esta diferencia ($1).\n\nEsto suele deberse a seguir un enlace obsoleto hacia una página que ya ha sido borrada.\nLos detalles pueden encontrarse en el [{{fullurl:{{#Special:Log}}/delete|page={{FULLPAGENAMEE}}}} registro de borrado].",
+       "diff-multi-otherusers": "(No se {{PLURAL:$1|muestra una edición intermedia|muestran $1 ediciones intermedias}} de {{PLURAL:$2|otro usuario|$2 usuarios}})",
+       "diff-multi-manyusers": "(No se {{PLURAL:$1|muestra una edición intermedia|muestran $1 ediciones intermedias}} de más de {{PLURAL:$2|un usuario|$2 usuarios}})",
+       "difference-missing-revision": "No {{PLURAL:$2|se ha encontrado|se han encontrado}} {{PLURAL:$2|una revisión|$2 revisiones}} de la comparación solicitada ($1).\n\nLa causa de esto suele ser un enlace obsoleto hacia una página que ya ha sido borrada.\nPara más información, consulta el [{{fullurl:{{#Special:Log}}/delete|page={{FULLPAGENAMEE}}}} registro de borrados].",
        "searchresults": "Resultados de la búsqueda",
        "searchresults-title": "Resultados de la búsqueda de «$1»",
-       "titlematches": "Coincidencias de título de artículo",
-       "textmatches": "Coincidencias de texto de artículo",
-       "notextmatches": "No hay coincidencias de texto de artículo",
-       "prevn": "{{PLURAL:$1|$1}} previas",
+       "titlematches": "Resultados por título de página",
+       "textmatches": "Resultados por texto de página",
+       "notextmatches": "No hay resultados por texto de página",
+       "prevn": "$1 {{PLURAL:$1|anterior|anteriores}}",
        "nextn": "{{PLURAL:$1|$1}} siguientes",
-       "prevn-title": "$1 {{PLURAL:$1|resultado|resultados}} previos",
-       "nextn-title": "Próximos $1 {{PLURAL:$1|resultado|resultados}}",
+       "prevn-title": "$1 {{PLURAL:$1|resultado anterior|resultados anteriores}}",
+       "nextn-title": "$1 {{PLURAL:$1|resultado siguiente|resultados siguientes}}",
        "shown-title": "Mostrar $1 {{PLURAL:$1|resultado|resultados}} por página",
        "viewprevnext": "Ver ($1 {{int:pipe-separator}} $2) ($3).",
-       "searchmenu-exists": "<strong>Hay una página llamada «[[:$1]]» en este wiki.</strong> {{PLURAL:$2|0=|Véase también los otros resultados de búsqueda encontrados.}}",
-       "searchmenu-new": "<strong>Crear la página «[[:$1]]» en este wiki.</strong> {{PLURAL:$2|0=|Véase también la página encontrada con la búsqueda.|Véanse también los resultados de la búsqueda.}}",
+       "searchmenu-exists": "<strong>Hay una página llamada «[[:$1]]» en este wiki.</strong> {{PLURAL:$2|0=|Véanse también los demás resultados de la búsqueda.}}",
+       "searchmenu-new": "<strong>Crear la página «[[:$1]]» en este wiki.</strong> {{PLURAL:$2|0=|Véase también la página encontrada.|Véanse también los resultados de la búsqueda.}}",
        "searchprofile-articles": "Páginas de contenido",
        "searchprofile-images": "Multimedia",
        "searchprofile-everything": "Todo",
        "search-relatedarticle": "Relacionado",
        "searchrelated": "relacionado",
        "searchall": "todos",
-       "showingresults": "Abajo se {{PLURAL:$1|muestra '''1''' resultado|muestran hasta '''$1''' resultados}} comenzando por el n.º '''$2'''.",
-       "showingresultsinrange": "Abajo se muestran hasta {{PLURAL:$1|<strong>1</strong> resultado|<strong>$1</strong> resultados}} en el rango #<strong>$2</strong> hasta #<strong>$3</strong>.",
+       "showingresults": "Abajo se {{PLURAL:$1|muestra <strong>1</strong> resultado|muestran hasta <strong>$1</strong> resultados}} comenzando por el n.º <strong>$2</strong>.",
+       "showingresultsinrange": "Abajo se muestran hasta {{PLURAL:$1|<strong>1</strong> resultado|<strong>$1</strong> resultados}} entre el n.º <strong>$2</strong> y el n.º <strong>$3</strong>.",
        "search-showingresults": "{{PLURAL:$4|Resultado <strong>$1</strong> de <strong>$3</strong>|Resultados <strong>$1 - $2</strong> de <strong>$3</strong>}}",
        "search-nonefound": "No hay resultados que cumplan los criterios de búsqueda.",
        "powersearch-legend": "Búsqueda avanzada",
        "powersearch-togglenone": "Ninguno",
        "powersearch-remember": "Recordar la selección en búsquedas futuras",
        "search-external": "Búsqueda externa",
-       "searchdisabled": "Las búsquedas en {{SITENAME}} están temporalmente desactivadas.\nMientras tanto puedes buscar mediante Google, pero ten en cuenta que sus índices relativos a {{SITENAME}} pueden estar desactualizados.",
+       "searchdisabled": "Las búsquedas en {{SITENAME}} están desactivadas.\nMientras tanto puedes buscar mediante Google, pero ten en cuenta que sus índices relativos a {{SITENAME}} pueden estar desactualizados.",
        "search-error": "Ha ocurrido un error al buscar: $1",
        "preferences": "Preferencias",
        "mypreferences": "Preferencias",
        "prefsnologintext2": "Es necesario acceder para cambiar las preferencias del usuario.",
        "prefs-skin": "Apariencia",
        "skin-preview": "Previsualizar",
-       "datedefault": "Sin preferencia",
-       "prefs-labs": "Características de los laboratorios",
+       "datedefault": "Ninguno en particular",
+       "prefs-labs": "Características de Labs",
        "prefs-user-pages": "Páginas de usuario",
        "prefs-personal": "Perfil de usuario",
        "prefs-rc": "Cambios recientes",
        "prefs-watchlist": "Seguimiento",
        "prefs-editwatchlist": "Editar lista de seguimiento",
-       "prefs-editwatchlist-label": "Editar entradas en su lista de seguimiento:",
-       "prefs-editwatchlist-edit": "Ver y quitar los títulos en tu lista de seguimiento",
+       "prefs-editwatchlist-label": "Editar entradas de tu lista de seguimiento:",
+       "prefs-editwatchlist-edit": "Ver y quitar los títulos de tu lista de seguimiento",
        "prefs-editwatchlist-raw": "Editar tu lista de seguimiento en modo texto",
        "prefs-editwatchlist-clear": "Limpiar tu lista de seguimiento",
        "prefs-watchlist-days": "Número de días a mostrar en la lista de seguimiento:",
        "prefs-watchlist-days-max": "Máximo $1 {{PLURAL:$1|día|días}}",
-       "prefs-watchlist-edits": "Número de ediciones a mostrar en la lista expandida:",
+       "prefs-watchlist-edits": "Número máximo de ediciones a mostrar en la lista expandida:",
        "prefs-watchlist-edits-max": "Cantidad máxima: 1000",
-       "prefs-watchlist-token": "Ficha de lista de seguimiento:",
+       "prefs-watchlist-token": "Clave de lista de seguimiento:",
        "prefs-misc": "Miscelánea",
        "prefs-resetpass": "Cambiar contraseña",
-       "prefs-changeemail": "Cambiar correo electrónico",
+       "prefs-changeemail": "Cambiar la dirección de correo electrónico",
        "prefs-setemail": "Establecer una dirección de correo electrónico",
        "prefs-email": "Opciones de correo electrónico",
        "prefs-rendering": "Apariencia",
        "rows": "Filas:",
        "columns": "Columnas:",
        "searchresultshead": "Búsquedas",
-       "stub-threshold": "Límite para formato de <a href=\"#\" class=\"stub\">enlace a esbozo</a> (bytes):",
+       "stub-threshold": "Límite para cambiar a formato de <a href=\"#\" class=\"stub\">enlace a esbozo</a> (en bytes):",
        "stub-threshold-disabled": "Desactivado",
        "recentchangesdays": "Días que mostrar en Cambios recientes:",
        "recentchangesdays-max": "(máximo {{PLURAL:$1|un día|$1 días}})",
        "recentchangescount": "N.º de ediciones que mostrar de manera predeterminada:",
        "prefs-help-recentchangescount": "Esto incluye cambios recientes, historiales de página, y registros.",
-       "prefs-help-watchlist-token2": "Esta es la clave secreta para el canal de contenido web de tu lista de seguimiento.\nCualquier persona que la conozca podría leer tu lista, así que no la compartas.\n[[Special:ResetTokens|Pulsa aquí si necesitas restablecerla]].",
+       "prefs-help-watchlist-token2": "Esta es la clave secreta del canal de suscripción de tu lista de seguimiento.\nCualquier persona que la conozca podría leer tu lista, así que no la compartas.\n[[Special:ResetTokens|Pulsa aquí si necesitas restablecerla]].",
        "savedprefs": "Se han guardado tus preferencias.",
        "timezonelegend": "Huso horario:",
        "localtime": "Hora local:",
        "timezoneuseserverdefault": "Usar la hora del servidor ($1)",
-       "timezoneuseoffset": "Otra (especifica la diferencia horaria)",
+       "timezoneuseoffset": "Otro (especifica la diferencia horaria)",
        "servertime": "Hora del servidor:",
-       "guesstimezone": "Rellenar a partir de la hora del navegador",
+       "guesstimezone": "Obtener del navegador",
        "timezoneregion-africa": "África",
        "timezoneregion-america": "América",
        "timezoneregion-antarctica": "Antártida",
        "prefs-files": "Archivos",
        "prefs-custom-css": "CSS personalizado",
        "prefs-custom-js": "JavaScript personalizado",
-       "prefs-common-css-js": "CSS/JS compartido para todas las skins:",
-       "prefs-reset-intro": "Puedes usar esta página para restaurar tus preferencias a las predeterminadas del sitio.\nEsto no se puede deshacer.",
+       "prefs-common-css-js": "CSS/JavaScript compartido para todas las apariencias:",
+       "prefs-reset-intro": "Puedes usar esta página para restaurar los valores predeterminados de tus preferencias.\nNo podrás deshacer esta acción.",
        "prefs-emailconfirm-label": "Confirmación de correo electrónico:",
        "youremail": "Correo electrónico:",
        "username": "{{GENDER:$1|Nombre de usuario|Nombre de usuaria}}:",
        "yourvariant": "Variante lingüística del contenido:",
        "prefs-help-variant": "Tu variante u ortografía preferida para mostrar las páginas de contenido de este wiki.",
        "yournick": "Firma nueva:",
-       "prefs-help-signature": "Los comentarios en páginas de discusión deberían firmarse con «<nowiki>~~~~</nowiki>», que se convertirá en tu firma con fecha y hora.",
+       "prefs-help-signature": "Deberías firmar tus comentarios en páginas de discusión con «<nowiki>~~~~</nowiki>», que se convertirá en tu firma acompañada de la fecha y hora.",
        "badsig": "El código de tu firma no es válido; comprueba las etiquetas HTML.",
        "badsiglength": "Tu firma es muy larga.\nDebe contener un máximo de {{PLURAL:$1|un carácter|$1 caracteres}}.",
        "yourgender": "Sexo:",
        "gender-unknown": "Prefiero no especificarlo",
        "gender-male": "Masculino",
        "gender-female": "Femenino",
-       "prefs-help-gender": "Opcional: el software utiliza esta preferencia para dirigirse a ti con el género gramatical apropiado. Esta información es pública.",
+       "prefs-help-gender": "Este campo es opcional. El software lo utiliza para dirigirse a ti con el género gramatical apropiado. Esta información será pública.",
        "email": "Correo electrónico",
        "prefs-help-realname": "El nombre real es opcional. Si lo proporcionas, se usará para dar atribución a tu trabajo.",
        "prefs-help-email": "La dirección de correo electrónico es opcional, pero es necesaria para el restablecimiento de tu contraseña, en caso de que la olvides.",
        "prefs-displaywatchlist": "Opciones de visualización",
        "prefs-tokenwatchlist": "Clave",
        "prefs-diffs": "Diferencias",
-       "prefs-help-prefershttps": "Esta preferencia tendrá efecto en tu próximo inicio de sesión.",
+       "prefs-help-prefershttps": "Los cambios surtirán efecto en tu próximo inicio de sesión.",
        "prefswarning-warning": "Has hecho cambios en tus preferencias que todavía no se han guardado. Si sales de esta página sin pulsar en «$1» no se actualizarán las preferencias.",
        "prefs-tabs-navigation-hint": "Sugerencia: Puede utilizar las teclas de flecha izquierda y derecha para navegar entre las pestañas de la lista de pestañas.",
        "email-address-validity-valid": "La dirección de correo electrónico parece ser válida",
        "email-address-validity-invalid": "Introduce una dirección de correo válida",
-       "userrights": "Gestión de permisos del usuario",
+       "userrights": "Gestión de permisos de usuario",
        "userrights-lookup-user": "Configurar grupos de usuarios",
-       "userrights-user-editname": "Escriba un nombre de usuario:",
-       "editusergroup": "Modificar grupos de usuarios",
-       "editinguser": "Cambiando los derechos del usuario '''[[User:$1|$1]]''' $2",
-       "userrights-editusergroup": "Modificar grupos de usuarios",
-       "saveusergroups": "Guardar grupos de usuarios",
+       "userrights-user-editname": "Escribe un nombre de usuario:",
+       "editusergroup": "Modificar grupos del usuario",
+       "editinguser": "Cambio de los permisos del usuario <strong>[[User:$1|$1]]</strong> $2",
+       "userrights-editusergroup": "Modificar grupos del usuario",
+       "saveusergroups": "Guardar grupos del usuario",
        "userrights-groupsmember": "Miembro de:",
        "userrights-groupsmember-auto": "Miembro implícito de:",
        "userrights-groups-help": "Puedes modificar los grupos a los que pertenece {{GENDER:$1|este usuario|esta usuaria}}:\n* Un recuadro marcado significa que {{GENDER:$1|el usuario|la usuaria}} está en ese grupo.\n* Un recuadro no marcado significa que {{GENDER:$1|el usuario|la usuaria}} no está en ese grupo.\n* Un * indica que no podrás eliminar el grupo una vez que lo agregues, o viceversa.",
        "userrights-no-interwiki": "No tienes permiso para editar los grupos a los que pertenece un usuario en otros wikis.",
        "userrights-nodatabase": "La base de datos $1 no existe o no es local.",
        "userrights-nologin": "Debes [[Special:UserLogin|iniciar sesión]] con una cuenta de administrador para poder editar los grupos de los usuarios.",
-       "userrights-notallowed": "No tienes permiso para agregar o quitar derechos de usuario.",
+       "userrights-notallowed": "No tienes permiso para añadir o quitar permisos de usuario.",
        "userrights-changeable-col": "Grupos que puedes cambiar",
        "userrights-unchangeable-col": "Grupos que no puedes cambiar",
-       "userrights-conflict": "¡Conflicto de cambio de los derechos de usuario! Por favor, revisar y confirmar tus cambios.",
-       "userrights-removed-self": "Usted eliminado con éxito sus propios derechos. Por lo tanto, usted ya no es capaz de acceder a esta página.",
+       "userrights-conflict": "¡Conflicto de cambio de los permisos de usuario! Por favor, revisa y confirma tus cambios.",
+       "userrights-removed-self": "Has eliminado con éxito tus propios permisos. Por tanto, ya no podrás volver a acceder a esta página.",
        "group": "Grupo:",
        "group-user": "Usuarios",
        "group-autoconfirmed": "Usuarios autoconfirmados",
        "group-bot": "Bots",
        "group-sysop": "Administradores",
        "group-bureaucrat": "Burócratas",
-       "group-suppress": "Supresores de ediciones",
+       "group-suppress": "Supresores",
        "group-all": "(todos)",
        "group-user-member": "{{GENDER:$1|usuario|usuaria}}",
        "group-autoconfirmed-member": "{{GENDER:$1|usuario autoconfirmado|usuaria autoconfirmada}}",
        "group-bot-member": "bot",
        "group-sysop-member": "{{GENDER:$1|administrador|administradora}}",
        "group-bureaucrat-member": "burócrata",
-       "group-suppress-member": "{{GENDER:$1|supresor|supresora}} de ediciones",
+       "group-suppress-member": "{{GENDER:$1|supresor|supresora}}",
        "grouppage-user": "{{ns:project}}:Usuarios",
        "grouppage-autoconfirmed": "{{ns:project}}:Usuarios autoconfirmados",
        "grouppage-bot": "{{ns:project}}:Bots",
        "grouppage-sysop": "{{ns:project}}:Administradores",
        "grouppage-bureaucrat": "{{ns:project}}:Burócratas",
-       "grouppage-suppress": "{{ns:project}}:Supresores de ediciones",
+       "grouppage-suppress": "{{ns:project}}:Supresores",
        "right-read": "Leer páginas",
        "right-edit": "Editar páginas",
-       "right-createpage": "Crear páginas que no sean páginas de discusión",
+       "right-createpage": "Crear páginas que no sean de discusión",
        "right-createtalk": "Crear páginas de discusión",
        "right-createaccount": "Crear cuentas de usuario nuevas",
        "right-minoredit": "Marcar ediciones como menores",
        "right-move": "Trasladar páginas",
        "right-move-subpages": "Trasladar páginas con sus subpáginas",
-       "right-move-rootuserpages": "Trasladar páginas de usuario raíz",
-       "right-move-categorypages": "Trasladar páginas de categoría",
+       "right-move-rootuserpages": "Trasladar páginas raíz de usuario",
+       "right-move-categorypages": "Trasladar categorías",
        "right-movefile": "Trasladar archivos",
-       "right-suppressredirect": "No crear redirecciones de las páginas fuente  al trasladar páginas",
+       "right-suppressredirect": "Trasladar páginas sin dejar redirección",
        "right-upload": "Subir archivos",
        "right-reupload": "Subir una nueva versión de un archivo existente",
        "right-reupload-own": "Subir una nueva versión de un archivo creado por uno mismo",
-       "right-reupload-shared": "Sobreescribir localmente ficheros del repositorio multimedia",
+       "right-reupload-shared": "Sobreescribir localmente archivos del repositorio multimedia",
        "right-upload_by_url": "Subir un archivo a traves de un URL",
        "right-purge": "Purgar la caché en el servidor sin tener que dar confirmación",
-       "right-autoconfirmed": "No ser afectado por los límites de frecuencia basados en el IP",
+       "right-autoconfirmed": "No resultar afectado por los límites de frecuencia de edición para las IP",
        "right-bot": "Ser tratado como un programa automático",
-       "right-nominornewtalk": "No accionar el aviso de nuevos mensajes al realizar ediciones menores de páginas de discusión",
-       "right-apihighlimits": "Tener límites más altos de peticiones a través del API",
-       "right-writeapi": "Hacer uso del API para escribir",
+       "right-nominornewtalk": "No accionar el aviso de mensajes nuevos al realizar ediciones menores en páginas de discusión",
+       "right-apihighlimits": "Tener límites más altos para las peticiones a través de la API",
+       "right-writeapi": "Hacer uso de la API de escritura",
        "right-delete": "Borrar páginas",
        "right-bigdelete": "Borrar páginas con historiales grandes",
        "right-deletelogentry": "Borrar y recuperar entradas de registro específicas",
        "right-deleterevision": "Borrar y restaurar revisiones específicas de páginas",
-       "right-deletedhistory": "Ver el historial de páginas borradas, sin el texto asociado",
-       "right-deletedtext": "Ver texto borrado y cambios entre revisiones borradas",
+       "right-deletedhistory": "Ver el historial de páginas borradas sin su texto asociado",
+       "right-deletedtext": "Ver texto borrado y los cambios entre revisiones borradas",
        "right-browsearchive": "Buscar páginas borradas",
        "right-undelete": "Restaurar una página",
        "right-suppressrevision": "Ver, ocultar y mostrar revisiones específicas de páginas de cualquier usuario",
        "right-block": "Bloquear a otros usuarios para que no editen",
        "right-blockemail": "Bloquear a un usuario para que no pueda mandar correos electrónicos",
        "right-hideuser": "Bloquear un nombre de usuario, haciéndolo invisible",
-       "right-ipblock-exempt": "Pasar por encima de bloqueos de IPs, auto-bloqueos y bloqueos de rangos.",
-       "right-proxyunbannable": "Pasar por encima de bloqueos automáticos de proxies",
-       "right-unblockself": "Desbloquearse uno mismo",
+       "right-ipblock-exempt": "Quedar exento de bloqueos a IPs, autobloqueos y bloqueos de rango.",
+       "right-proxyunbannable": "Quedar exento de bloqueos automáticos a proxies",
+       "right-unblockself": "Desbloquearse a sí mismo",
        "right-protect": "Cambiar niveles de protección y editar páginas protegidas en cascada",
        "right-editprotected": "Editar páginas protegidas como «{{int:protect-level-sysop}}»",
        "right-editsemiprotected": "Editar páginas protegidas como «{{int:protect-level-autoconfirmed}}»",
        "right-editusercssjs": "Editar las páginas de CSS y JavaScript de otros usuarios",
        "right-editusercss": "Editar las páginas de CSS de otros usuarios",
        "right-edituserjs": "Editar las páginas de JavaScript de otros usuarios",
-       "right-editmyusercss": "Editar tus archivos de usuario CSS",
-       "right-editmyuserjs": "Editar tus propios archivos JavaScript de usuario",
+       "right-editmyusercss": "Editar tus páginas de CSS",
+       "right-editmyuserjs": "Editar tus páginas de JavaScript",
        "right-viewmywatchlist": "Ver tu lista de seguimiento",
        "right-editmywatchlist": "Editar tu lista de seguimiento. Algunas acciones seguirán agregando páginas aún sin este derecho.",
-       "right-viewmyprivateinfo": "Ver tu información privada (ej. email, nombre real)",
-       "right-editmyprivateinfo": "Editar tus propios datos privados (ej: email, nombre real)",
-       "right-editmyoptions": "Editar tus propias preferencias",
+       "right-viewmyprivateinfo": "Ver tu información privada (ej. correo electrónico, nombre real)",
+       "right-editmyprivateinfo": "Editar tu información privada (ej: correo electrónico, nombre real)",
+       "right-editmyoptions": "Editar tus preferencias",
        "right-rollback": "Revertir rápidamente las ediciones del último usuario que modificó una página en particular",
-       "right-markbotedits": "Marcar ediciones deshechas como ediciones de un bot",
-       "right-noratelimit": "No afectado por límites de frecuencia",
+       "right-markbotedits": "Marcar ediciones revertidas como ediciones de bot",
+       "right-noratelimit": "No resultar afectado por los límites de frecuencia de edición",
        "right-import": "Importar páginas desde otras wikis",
-       "right-importupload": "Importar páginas de un archivo subido",
-       "right-patrol": "Marcar ediciones de otros como patrulladas",
-       "right-autopatrol": "Marcar como patrulladas sus ediciones automáticamente",
-       "right-patrolmarks": "Ver las marcas de patrullaje de cambios recientes",
+       "right-importupload": "Importar páginas desde un archivo",
+       "right-patrol": "Marcar ediciones de otros como verificadas",
+       "right-autopatrol": "Tener automáticamente marcadas como verificadas las ediciones propias",
+       "right-patrolmarks": "Ver las marcas de verificación de cambios recientes",
        "right-unwatchedpages": "Ver una lista de páginas no vigiladas",
        "right-mergehistory": "Fusionar historiales",
-       "right-userrights": "Modificar todos los derechos de usuario",
-       "right-userrights-interwiki": "Modificar los derechos de usuarios en otros wikis",
+       "right-userrights": "Modificar todos los permisos de usuario",
+       "right-userrights-interwiki": "Modificar los permisos de usuario en otros wikis",
        "right-siteadmin": "Bloquear y desbloquear la base de datos",
-       "right-override-export-depth": "Exporta páginas incluyendo aquellas enlazadas hasta una profundidad de 5",
-       "right-sendemail": "Enviar un correo electrónico a otros usuarios",
-       "right-passwordreset": "Ver os correos electrónicos de restablecimiento de contraseñas",
+       "right-override-export-depth": "Exportar páginas, incluyendo aquellas enlazadas hasta una profundidad de 5",
+       "right-sendemail": "Enviar correo electrónico a otros usuarios",
+       "right-passwordreset": "Ver los mensajes de restablecimiento de contraseña",
        "right-managechangetags": "Crear y eliminar [[Special:Tags|etiquetas]] en la base de datos",
        "newuserlogpage": "Registro de creación de usuarios",
        "newuserlogpagetext": "Este es un registro de creación de usuarios.",
        "action-createpage": "crear páginas",
        "action-createtalk": "crear páginas de discusión",
        "action-createaccount": "crear esta cuenta de usuario",
-       "action-history": "Ver el historial de esta página",
+       "action-history": "ver el historial de esta página",
        "action-minoredit": "marcar este cambio como menor",
        "action-move": "trasladar esta página",
        "action-move-subpages": "trasladar esta página y sus subpáginas",
-       "action-move-rootuserpages": "trasladar páginas de usuario raíz",
-       "action-move-categorypages": "trasladar páginas de categoría",
+       "action-move-rootuserpages": "trasladar páginas raíz de usuario",
+       "action-move-categorypages": "trasladar categorías",
        "action-movefile": "trasladar este archivo",
        "action-upload": "subir este archivo",
        "action-reupload": "reemplazar este archivo existente",
        "action-reupload-shared": "reemplazar este archivo existente en un depósito compartido",
        "action-upload_by_url": "subir este archivo desde una dirección URL",
-       "action-writeapi": "utilizar el API de escritura",
+       "action-writeapi": "utilizar la API de escritura",
        "action-delete": "borrar esta página",
        "action-deleterevision": "borrar esta revisión",
        "action-deletedhistory": "ver el historial borrado de esta página",
        "action-browsearchive": "buscar páginas borradas",
        "action-undelete": "recuperar esta página",
-       "action-suppressrevision": "revisar y restaurar esta revisión escondida",
+       "action-suppressrevision": "revisar y restaurar esta revisión oculta",
        "action-suppressionlog": "ver este registro privado",
        "action-block": "bloquear a este usuario para que no edite",
        "action-protect": "cambiar los niveles de protección para esta página",
        "action-rollback": "revertir rápidamente las ediciones del último usuario que modificó una página en particular",
        "action-import": "importar páginas desde otro wiki",
        "action-importupload": "importar páginas mediante la carga de un archivo",
-       "action-patrol": "marcar ediciones de otros como patrulladas",
-       "action-autopatrol": "marcar como patrulladas tus propias ediciones",
+       "action-patrol": "marcar ediciones de otros como verificadas",
+       "action-autopatrol": "tener tus ediciones marcadas como verificadas",
        "action-unwatchedpages": "ver la lista de páginas no vigiladas",
        "action-mergehistory": "fusionar el historial de esta página",
-       "action-userrights": "modificar todos los derechos de usuario",
-       "action-userrights-interwiki": "modificar los derechos de usuarios en otros wikis",
+       "action-userrights": "modificar todos los permisos de usuario",
+       "action-userrights-interwiki": "modificar los permisos de los usuarios en otros wikis",
        "action-siteadmin": "bloquear o desbloquear la base de datos",
        "action-sendemail": "enviar correos electrónicos",
-       "action-editmywatchlist": "Editar tu lista de seguimiento",
-       "action-viewmywatchlist": "Ver tu lista de seguimiento",
+       "action-editmywatchlist": "editar tu lista de seguimiento",
+       "action-viewmywatchlist": "ver tu lista de seguimiento",
        "action-viewmyprivateinfo": "ver tu información privada",
-       "action-editmyprivateinfo": "Editar tu información privada",
+       "action-editmyprivateinfo": "editar tu información privada",
        "action-editcontentmodel": "editar el modelo de contenido de una página",
        "action-managechangetags": "crear y eliminar etiquetas en la base de datos",
        "nchanges": "$1 {{PLURAL:$1|cambio|cambios}}",
        "recentchanges": "Cambios recientes",
        "recentchanges-legend": "Opciones sobre cambios recientes",
        "recentchanges-summary": "Sigue los cambios más recientes de la wiki en esta página.",
-       "recentchanges-noresult": "No hubo cambios durante el período seleccionado que respondan a esos criterios.",
-       "recentchanges-feed-description": "Realiza un seguimiento de los cambios más recientes en el wiki en este canal.",
+       "recentchanges-noresult": "No hubo cambios que respondan a esos criterios durante el período seleccionado.",
+       "recentchanges-feed-description": "Realiza un seguimiento de los cambios más recientes en el wiki con este canal.",
        "recentchanges-label-newpage": "Esta edición creó una página",
        "recentchanges-label-minor": "Esta es una edición menor",
        "recentchanges-label-bot": "Esta edición fue realizada por un robot",
        "recentchanges-label-plusminus": "El tamaño de la página cambió esta cantidad de bytes",
        "recentchanges-legend-heading": "'''Leyenda:'''",
        "recentchanges-legend-newpage": "{{int:recentchanges-label-newpage}} (véase también la [[Special:NewPages|lista de páginas nuevas]])",
-       "rcnotefrom": "Debajo está{{PLURAL:$5|el cambio|n los cambios}} desde <strong>$3, $4</strong> (se muestran hasta <strong>$1</strong>).",
+       "rcnotefrom": "Debajo aparece{{PLURAL:$5| el cambio|n los cambios}} desde <strong>$3, $4</strong> (se muestran hasta <strong>$1</strong>).",
        "rclistfrom": "Mostrar nuevos cambios desde $2, $3",
        "rcshowhideminor": "$1 ediciones menores",
        "rcshowhideminor-show": "Mostrar",
        "recentchangeslinked-title": "Cambios relacionados con «$1»",
        "recentchangeslinked-summary": "Esta página es una lista de los últimos cambios en las páginas enlazadas desde una página (o en las pertenecientes a una categoría). Las páginas que están en tu [[Special:Watchlist|lista de seguimiento]] aparecen en '''negrita'''.",
        "recentchangeslinked-page": "Nombre de la página:",
-       "recentchangeslinked-to": "Muestra los cambios recientes en lugar de la página indicada",
+       "recentchangeslinked-to": "Mostrar los cambios en páginas enlazadas con la página seleccionada",
        "upload": "Subir un archivo",
        "uploadbtn": "Subir un archivo",
-       "reuploaddesc": "Regresar al formulario para subir.",
-       "upload-tryagain": "Envíe la descripción del archivo modificado",
+       "reuploaddesc": "Cancelar subida y volver al formulario de carga",
+       "upload-tryagain": "Enviar la descripción modificada",
        "uploadnologin": "No has iniciado sesión",
        "uploadnologintext": "Tienes que $1 para subir archivos.",
-       "upload_directory_missing": "El directorio de subida de archivos ($1) no existe, y no puede ser creado por el servidor.",
+       "upload_directory_missing": "El directorio de subida de archivos ($1) no existe, y el servidor no ha podido crearlo.",
        "upload_directory_read_only": "El servidor web no puede escribir en el directorio de subida de archivos ($1).",
-       "uploaderror": "Error al intentar subir archivo",
-       "upload-recreate-warning": "'''Aviso: Un archivo con ese nombre ha sido eliminado o renombrado.'''\n\nA continuación se muestra el registro de borrados y traslados de esta página:",
-       "uploadtext": "Utiliza el siguiente formulario para subir archivos.\nPara ver o buscar archivos subidos con anterioridad, ve a la [[Special:FileList|lista de archivos subidos]].\nLos archivos subidos quedarán registrados además en el [[Special:Log/upload|registro de archivos subidos]] y los borrados en el [[Special:Log/delete|registro de borrados]].\n\nPara incluir un archivo en una página, usa un enlace como los mostrados a continuación:\n* '''<code><nowiki>[[</nowiki>{{ns:file}}<nowiki>:File.jpg]]</nowiki></code>''' para usar el fichero en tamaño completo\n* '''<code><nowiki>[[</nowiki>{{ns:file}}<nowiki>:File.png|200px|thumb|left|texto descriptivo]]</nowiki></code>''' para una versión de 200 píxeles de ancho en una caja en el margen izquierdo con 'texto descriptivo' como descripción\n* '''<code><nowiki>[[</nowiki>{{ns:media}}<nowiki>:File.ogg]]</nowiki></code>''' para enlazar directamente al fichero sin mostrarlo.",
+       "uploaderror": "Error al intentar subir",
+       "upload-recreate-warning": "<strong>Aviso: Un archivo con ese nombre ha sido eliminado o renombrado.</strong>\n\nA continuación se muestra el registro de borrados y traslados de esta página:",
+       "uploadtext": "Utiliza el siguiente formulario para subir archivos.\nPara ver o buscar archivos subidos con anterioridad, ve a la [[Special:FileList|lista de archivos subidos]].\nLos archivos subidos también quedarán registrados en el [[Special:Log/upload|registro de archivos subidos]], y los borrados en el [[Special:Log/delete|registro de borrados]].\n\nPara incluir un archivo en una página, usa un enlace como los mostrados a continuación:\n* <strong><code><nowiki>[[</nowiki>{{ns:file}}<nowiki>:File.jpg]]</nowiki></code></strong> para usar la versión a tamaño completo del archivo\n* <strong><code><nowiki>[[</nowiki>{{ns:file}}<nowiki>:File.png|200px|thumb|left|texto alternativo]]</nowiki></code></strong> para una versión de 200 píxeles de ancho situada en una caja en el margen izquierdo con \"texto alternativo\" como descripción\n* <strong><code><nowiki>[[</nowiki>{{ns:media}}<nowiki>:File.ogg]]</nowiki></code></strong> para enlazar directamente al archivo sin mostrarlo.",
        "upload-permitted": "{{PLURAL:$2|Tipo|Tipos}} de archivo permitidos: $1.",
        "upload-preferred": "{{PLURAL:$2|Tipo|Tipos}} de archivo preferidos: $1.",
        "upload-prohibited": "{{PLURAL:$2|Tipo|Tipos}} de archivo prohibidos: $1.",
        "uploadlogpage": "Subidas de archivos",
-       "uploadlogpagetext": "Abajo hay una lista de los últimos archivos subidos.\nMira la [[Special:NewFiles|galería de archivos nuevos]] para una descripción visual",
+       "uploadlogpagetext": "Debajo se muestra una lista de los últimos archivos subidos.\nVéase la [[Special:NewFiles|galería de archivos nuevos]] para una vista más estilizada",
        "filename": "Nombre del archivo",
-       "filedesc": "Sumario",
-       "fileuploadsummary": "Descripción:",
+       "filedesc": "Resumen",
+       "fileuploadsummary": "Resumen:",
        "filereuploadsummary": "Cambios de archivo:",
-       "filestatus": "Estado de copyright:",
+       "filestatus": "Información de copyright:",
        "filesource": "Fuente:",
        "ignorewarning": "Ignorar aviso y guardar de todos modos",
-       "ignorewarnings": "Ignorar cualquier aviso",
+       "ignorewarnings": "Ignorar todos los avisos",
        "minlength1": "Los nombres de archivo deben tener al menos una letra.",
-       "illegalfilename": "El nombre de archivo «$1» contiene caracteres que no están permitidos en títulos de páginas. Por favor, renombra el archivo e intenta volver a subirlo.",
+       "illegalfilename": "El nombre de archivo «$1» contiene caracteres que no están permitidos en títulos de página. Por favor, renombra el archivo e intenta subirlo de nuevo.",
        "filename-toolong": "Los nombres de archivo no pueden tener más de 240 bytes.",
-       "badfilename": "El nombre de la imagen se ha cambiado a «$1».",
-       "filetype-mime-mismatch": "La extensión de archivo «.$1» no coincide con el tipo detectado de MIME del archivo ($2).",
+       "badfilename": "Se ha cambiado el nombre del archivo a «$1».",
+       "filetype-mime-mismatch": "La extensión de archivo «.$1» no coincide con el tipo MIME detectado en el archivo ($2).",
        "filetype-badmime": "No se permite subir archivos de tipo MIME «$1».",
-       "filetype-bad-ie-mime": "No se puede subir este archivo porque Internet Explorer podría considerarlo como «$1», que es un tipo de archivo no permitido y potencialmente peligroso.",
-       "filetype-unwanted-type": "'''«.$1»''' no está entre los tipos de fichero aconsejados.\n{{PLURAL:$3|El único tipo aconsejado es|Los tipos aconsejados son}} $2.",
-       "filetype-banned-type": "'''\".$1\"''' {{PLURAL:$4|no es un tipo de archivo permitido|no son tipos de archivos permitidos}}.\n{{PLURAL:$3|El tipo de archivo permitido es|Los tipos de archivos permitidos son}} $2.",
+       "filetype-bad-ie-mime": "No se puede subir este archivo porque Internet Explorer podría considerarlo como «$1», que es un tipo de archivo no admitido y potencialmente peligroso.",
+       "filetype-unwanted-type": "<strong>«.$1»</strong> no está entre los tipos de archivo aconsejados.\n{{PLURAL:$3|El único tipo aconsejado es|Los tipos aconsejados son}} $2.",
+       "filetype-banned-type": "{{PLURAL:$4|El tipo de archivo|Los tipos de archivo}} <strong>\".$1\"</strong> no {{PLURAL:$4|está permitido|están permitidos}}.\n{{PLURAL:$3|El único tipo de archivo permitido es|Los tipos de archivos permitidos son}} $2.",
        "filetype-missing": "El archivo no tiene extensión (como «.jpg»).",
        "empty-file": "El archivo que enviaste estaba vacío.",
        "file-too-large": "El archivo que enviste era demasiado grande.",
        "filename-tooshort": "El nombre de archivo es demasiado corto.",
        "filetype-banned": "El tipo de archivo está prohibido.",
-       "verification-error": "Este archivo no pasó la verificación de archivos.",
-       "hookaborted": "La modificación que ha intentado realizar fue cancelada por un adicional de extensión.",
+       "verification-error": "Este archivo no superó la verificación de archivos.",
+       "hookaborted": "Una extensión ha impedido la modificación que intentaste realizar.",
        "illegal-filename": "El nombre de archivo no está permitido.",
        "overwrite": "Sobrescribir un archivo existente no está permitido.",
        "unknown-error": "Ocurrió un error desconocido.",
        "tags-create-warnings-below": "¿Continuar con la creación de la etiqueta?",
        "tags-delete-title": "Eliminar etiqueta",
        "tags-delete-explanation-initial": "Estás a punto de eliminar la etiqueta «$1» de la base de datos.",
+       "tags-delete-explanation-in-use": "Se removerá de {{PLURAL:$2|$2 revisión o entrada ingresada|todas las $2 revisiones y/o entradas ingresadas}} a la que actualmente es aplicada.",
        "tags-delete-explanation-warning": "Esta acción es <strong>irreversible</strong> y ni siquiera los administradores de la base de datos podrán deshacerla. Confirma que esta es la etiqueta que se eliminará.",
+       "tags-delete-explanation-active": "<strong>La etiqueta \"$1\" aún está activa y se seguirá utilizándo en el futuro.</strong> Para que esto no ocurra, deshabilítala desde el lugar donde se configuró para ser utilizada.",
        "tags-delete-reason": "Motivo:",
        "tags-delete-submit": "Eliminar esta etiqueta irreversiblemente",
        "tags-delete-not-allowed": "No se pueden eliminar las etiquetas definidas por una extensión, a menos que esta lo permita expresamente.",
        "tags-delete-not-found": "La etiqueta «$1» no existe.",
+       "tags-delete-too-many-uses": "No se puede borrar la etiqueta \"$1\" porque se ha aplicado a más de {{PLURAL:$2|una revisión|$2 revisiones}}.",
        "tags-delete-warnings-after-delete": "La etiqueta \"$1\" se borró exitosamente, pero con {{PLURAL:$2|la siguiente advertencia|las siguientes advertencias}}:",
        "tags-activate-title": "Activar etiqueta",
        "tags-activate-question": "Estás a punto de activar la etiqueta «$1».",
        "logentry-upload-overwrite": "$1 {{GENDER:$2|subió}} una nueva versión de $3",
        "logentry-upload-revert": "$1 {{GENDER:$2|subió}} $3",
        "log-name-managetags": "Registro de gestión de etiquetas",
+       "log-description-managetags": "Esta página muestra las acciones realizadas sobre las [[Special:Tags|etiquetas]]. El registro solo contiene acciones llevadas a cabo por un administrador de forma manual; el software del wiki podría crear o eliminar etiquetas sin que se registre aquí.",
        "logentry-managetags-create": "$1 {{GENDER:$2|creó}} la etiqueta «$4»",
        "logentry-managetags-delete": "$1 {{GENDER:$2|eliminó}} la etiqueta «$4» (quitada de $5 {{PLURAL:$5|revisión o entrada de registro|revisiones o entradas de registro}})",
        "logentry-managetags-activate": "$1 {{GENDER:$2|activó}} la etiqueta «$4» para su uso por usuarios y bots",
index 862c6d9..475f36b 100644 (file)
@@ -42,7 +42,8 @@
                        "Mogoeilor",
                        "Hosseinblue",
                        "فلورانس",
-                       "Saeidpourbabak"
+                       "Saeidpourbabak",
+                       "Arash.pt"
                ]
        },
        "tog-underline": "خط کشیدن زیر پیوندها:",
        "passwordreset-emailsent": "یک نامهٔ بازنشانی گذرواژه فرستاده شده‌است.",
        "passwordreset-emailsent-capture": "یک رایانامهٔ بازنشانی که در پایین نمایش داده شده، فرستاده شده است.",
        "passwordreset-emailerror-capture": "رایانامهٔ بازنشانی، که در زیر نمایش داده شده، ایجاد شد، ولی ارسال آن به {{GENDER:$2|کاربر}} موفقیت‌آمیز نبود: $1",
-       "changeemail": "دگرش Ø¯Ø± Ù\86شاÙ\86Û\8c Ù¾Ø³Øª Ø§Ù\84کترÙ\88Ù\86Û\8cÚ©Û\8c",
+       "changeemail": "تغÛ\8cÛ\8cر Ù\86شاÙ\86Û\8c Ø±Ø§Û\8cاÙ\86اÙ\85Ù\87",
        "changeemail-text": "این فرم را تکمیل کنید تا آدرس رایانامه‌تان تغییر یابد. برای این که این تغییر را تأیید کنید لازم است گذرواژهٔ خود را وارد کنید.",
        "changeemail-no-info": "برای دسترسی مستقیم به این صفحه شما باید به سامانه وارد شده باشید.",
        "changeemail-oldemail": "نشانی رایانامهٔ کنونی:",
        "timezoneregion-europe": "اروپا",
        "timezoneregion-indian": "اقیانوس هند",
        "timezoneregion-pacific": "اقیانوس آرام",
-       "allowemail": "بÙ\87 Ú©Ø§Ø± Ø§Ù\86داختÙ\86 Ø¯Ø±Û\8cاÙ\81ت Ù¾Ø³Øª Ø§Ù\84کترÙ\88Ù\86Û\8cÚ©Û\8c Ø§Ø² Ø¯Û\8cگر Ú©Ø§Ø±Ø¨Ø±Ù\87ا",
+       "allowemail": "اÙ\85کاÙ\86 Ø¯Ø±Û\8cاÙ\81ت Ø±Ø§Û\8cاÙ\86اÙ\85Ù\87 Ø§Ø² Ø¯Û\8cگر Ú©Ø§Ø±Ø¨Ø±Ø§Ù\86",
        "prefs-searchoptions": "جستجو",
        "prefs-namespaces": "فضاهای نام",
        "default": "پیش‌فرض",
        "emailuser": "پست الکترونیکی",
        "emailuser-title-target": "فرستادن پست الکترونیکی به {{GENDER:$1|کاربر}}",
        "emailuser-title-notarget": "فرستادن پست الکترونیکی به کاربر",
-       "emailpage": "فرستادن پست الکترونیکی به کاربر",
+       "emailpage": "رایانامه به کاربر",
        "emailpagetext": "شما می‌توانید از فرم زیر برای ارسال یک رایانامه به این {{GENDER:$1|کاربر}} استفاده کنید.\nنشانی رایانامه‌ای که در [[Special:Preferences|ترجیحات کاربریتان]] وارد کرده‌اید در نشانی فرستنده (From) نامه خواهد آمد، تا گیرنده بتواند پاسخ دهد.",
        "defemailsubject": "پست الکترونیکی {{SITENAME}} از طرف کاربر «$1»",
        "usermaildisabled": "رایانامهٔ کاربر غیرقعال است",
        "emailsend": "بفرست",
        "emailccme": "رونوشت پیغام را برایم بفرست.",
        "emailccsubject": "رونوشت پیغام شما به $1: $2",
-       "emailsent": "پست الکترونیکی فرستاده شد",
+       "emailsent": "رایانامه فرستاده شد",
        "emailsenttext": "پیام پست الکترونیکی شما فرستاده شد.",
        "emailuserfooter": "این پست الکترونیکی با استفاده از ویژگی «پست الکترونیکی» {{SITENAME}} توسط $1 به $2 فرستاده شد.",
        "usermessage-summary": "گذاشتن پیغام سامانه.",
        "ipbreason-dropdown": "*دلایل متداول قطع دسترسی\n**واردکردن اطلاعات نادرست\n**پاک‌کردن اطلاعات مفید از صفحات\n**هرزنگاری از طریق درج مکرر پیوند به وب‌گاه‌ها\n**درج چرندیات یا نوشته‌های بی‌معنا در صفحات\n**تهدید یا ارعاب دیگر کاربران\n**سوء استفاده از چند حساب کاربری\n**نام کاربری نامناسب",
        "ipb-hardblock": "جلوگیری از ویرایش کردن کاربران ثبت نام کرده از طریق این نشانی آی‌پی",
        "ipbcreateaccount": "جلوگیری از ایجاد حساب",
-       "ipbemailban": "جلوگیری از فرستادن پست الکترونیکی",
+       "ipbemailban": "جلوگیری از ارسال رایانامه",
        "ipbenableautoblock": "بستن  خودکار آخرین نشانی آی‌پی استفاده شده توسط کاربر و نشانی‌های دیگری که از آن‌ها برای ویرایش تلاش می‌کند",
        "ipbsubmit": "این کاربر بسته شود",
        "ipbother": "زمانی دیگر",
        "anononlyblock": "فقط کاربران گمنام",
        "noautoblockblock": "بستن خودکار غیرفعال است",
        "createaccountblock": "امکان ایجاد حساب مسدود است",
-       "emailblock": "پست الکترونیکی از کار انداخته شد",
+       "emailblock": "رایانامه مسدود شد",
        "blocklist-nousertalk": "نمی تواند صفحهٔ بحث خود را ویرایش کند",
        "ipblocklist-empty": "فهرست بسته‌شدن‌ها خالی‌است.",
        "ipblocklist-no-results": "دسترسی حساب کاربری یا نشانی آی‌پی مورد نظر قطع نیست.",
        "unblocklink": "باز شود",
        "change-blocklink": "تغییر قطع دسترسی",
        "contribslink": "مشارکت‌ها",
-       "emaillink": "فرستادن پست الکترونیکی",
+       "emaillink": "ارسال رایانامه",
        "autoblocker": "به طور خودکار بسته شد چون آی‌پی شما به تازگی توسط کاربر «[[User:$1|$1]]» استفاده شده‌است.\nدلیل قطع دسترسی $1 چنین است \"$2\"",
        "blocklogpage": "سیاههٔ بستن",
        "blocklog-showlog": "دسترسی این کاربر در گذشته بسته شده‌است.\nسیاههٔ قطع دسترسی در زیر نمایش یافته است:",
index b0320db..f6399b6 100644 (file)
        "right-override-export-depth": "Viedä sivuja sisältäen viitatut sivut viiden syvyydellä",
        "right-sendemail": "Lähettää sähköpostia muille käyttäjille",
        "right-passwordreset": "Tarkastella salasanan alustusviestejä",
-       "right-managechangetags": "Luoda ja poistaa [[Special:Tags|merkintöjä]] tietokannasta",
+       "right-managechangetags": "Luoda ja poistaa [[Special:Tags|merkkauksia]] tietokannasta",
        "newuserlogpage": "Uudet käyttäjät",
        "newuserlogpagetext": "Tämä on loki luoduista käyttäjätunnuksista.",
        "rightslog": "Käyttöoikeusloki",
        "action-viewmyprivateinfo": "katsoa omia yksityisiä tietojasi",
        "action-editmyprivateinfo": "muokata omia yksityisiä tietojasi",
        "action-editcontentmodel": "muokata sivun sisältömallia",
-       "action-managechangetags": "luoda ja poistaa merkintöjä tietokannasta",
+       "action-managechangetags": "luoda ja poistaa merkkauksia tietokannasta",
        "nchanges": "$1 {{PLURAL:$1|muutos|muutosta}}",
        "enhancedrc-since-last-visit": "$1 {{PLURAL:$1|viimeisen käynnin jälkeen}}",
        "enhancedrc-history": "historia",
        "delete-confirm": "Poista ”$1”",
        "delete-legend": "Sivun poisto",
        "historywarning": "<strong>Varoitus:</strong> Sivulla, jota olet poistamassa, on muokkaushistoriaa ja sitä on muokattu $1 {{PLURAL:$1|kerran|kertaa}}:",
-       "confirmdeletetext": "Olet poistamassa sivun ja kaiken sen historian.\nVahvista, että olet aikeissa tehdä tämän, ja että ymmärrät sen seuraukset, sekä teet poiston [[{{MediaWiki:Policy-url}}|käytäntöjen]] mukaisesti.",
+       "confirmdeletetext": "Olet poistamassa sivun ja kaiken sen historian.\nVahvista, että olet aikeissa tehdä tämän ja että ymmärrät teon seuraukset ja teet poiston [[{{MediaWiki:Policy-url}}|käytäntöjen]] mukaisesti.",
        "actioncomplete": "Toiminto suoritettu",
        "actionfailed": "Toiminto epäonnistui",
        "deletedtext": "”$1” on poistettu.\nSivulla $2 on lista viimeaikaisista poistoista.",
        "intentionallyblankpage": "Tämä sivu on tarkoituksellisesti tyhjä.",
        "external_image_whitelist": " #Älä muuta tätä riviä lainkaan.<pre>\n#Laita säännöllisten lausekkeiden palaset (vain osa, joka menee //-merkkien väliin) alle\n#Niitä verrataan ulkoisten (suoralinkitettyjen) kuvien URLeihin\n#Ne jotka sopivat, näytetään kuvina, muutoin kuviin näytetään vain linkit\n#Rivit, jotka alkavat #-merkillä ovat kommentteja\n#Tämä on riippumaton kirjainkoosta\n\n#Laita kaikki säännöllisten lausekkeiden palaset tämän rivit yläpuolelle. Älä muuta tätä riviä lainkaan</pre>",
        "tags": "Voimassa olevat muutosmerkinnät",
-       "tag-filter": "[[Special:Tags|Merkintä]]suodatin:",
+       "tag-filter": "[[Special:Tags|Merkkausten]] suodatin:",
        "tag-filter-submit": "Suodata",
-       "tag-list-wrapper": "([[Special:Tags|{{PLURAL:$1|Merkintä|Merkinnät}}]]: $2)",
-       "tags-title": "Merkinnät",
-       "tags-intro": "Tämä sivu luetteloi ne merkinnät eli merkkaukset (''engl.'' tags), joilla ohjelmisto voi merkitä muokkauksia, ja mitä ne tarkoittavat.",
-       "tags-tag": "Merkinnän nimi",
+       "tag-list-wrapper": "([[Special:Tags|{{PLURAL:$1|Merkkaus|Merkkaukset}}]]: $2)",
+       "tags-title": "Merkkaukset",
+       "tags-intro": "Tämä sivu luetteloi ne merkkaukset (''engl.'' tags), joilla ohjelmisto voi merkitä muokkauksia, ja mitä ne tarkoittavat.",
+       "tags-tag": "Merkkauksen nimi",
        "tags-display-header": "Näkyvyys muutosluetteloissa",
        "tags-description-header": "Täysi kuvaus tarkoituksesta",
        "tags-source-header": "Lähde",
        "tags-active-header": "Aktiivinen?",
-       "tags-hitcount-header": "Merkityt muutokset",
+       "tags-hitcount-header": "Merkatut muutokset",
        "tags-actions-header": "Toiminnot",
        "tags-active-yes": "Kyllä",
        "tags-active-no": "Ei",
+       "tags-source-extension": "Laajennuksen määrittelemä",
+       "tags-source-manual": "Käyttäjien ja bottien käsin asettama",
        "tags-source-none": "Ei enää käytössä",
        "tags-edit": "muokkaa",
-       "tags-delete": "poista",
+       "tags-delete": "tuhoa",
        "tags-activate": "aktivoi",
-       "tags-deactivate": "poista käytöstä",
+       "tags-deactivate": "ota pois käytöstä",
        "tags-hitcount": "$1 {{PLURAL:$1|muutos|muutosta}}",
-       "tags-manage-no-permission": "Sinulla ei ole oikeuksia hallinnoida merkintöjä.",
-       "tags-create-heading": "Luo uusi merkintä",
-       "tags-create-tag-name": "Merkinnän nimi:",
+       "tags-manage-no-permission": "Sinulla ei ole oikeutta käsitellä merkkauksia.",
+       "tags-create-heading": "Luo uusi merkkaus",
+       "tags-create-explanation": "Oletuksena on, että uutena luodut merkkaukset tulevat käyttäjien ja bottien käyttöön.",
+       "tags-create-tag-name": "Merkkauksen nimi:",
        "tags-create-reason": "Syy:",
        "tags-create-submit": "Luo",
-       "tags-create-no-name": "Sinun täytyy antaa nimi merkinnälle.",
-       "tags-delete-title": "Poista merkintä",
+       "tags-create-no-name": "Sinun täytyy antaa merkkaukselle nimi.",
+       "tags-create-invalid-chars": "Merkkausten nimissä ei saa olla pilkkuja (<code>,</code>) tai kauttaviivoja (<code>/</code>).",
+       "tags-create-invalid-title-chars": "Merkkausten nimissä ei saa olla sellaisia merkkejä, joita ei voida käyttää sivujen nimissä.",
+       "tags-create-already-exists": "Merkkaus \"$1\" on jo olemassa.",
+       "tags-create-warnings-above": "{{PLURAL:$2|Seuraava varoitus|Seuraavat varoitukset}} ilmenivät, kun yritettiin luoda merkkausta \"$1\":",
+       "tags-create-warnings-below": "Haluatko jatkaa merkkauksen luomista?",
+       "tags-delete-title": "Hävitä merkkaus pysyvästi",
+       "tags-delete-explanation-initial": "Olet juuri nyt poistamassa merkkausta \"$1\" tietokannasta.",
+       "tags-delete-explanation-in-use": "Se poistuu {{PLURAL:$2|$2 sivun versiosta tai lokimerkinnästä|kaikista $2 sivuversiosta tai lokimerkinnöistä}}, joissa se tällä hetkellä on käytössä.",
+       "tags-delete-explanation-warning": "Tämä toimenpide on <strong>peruuttamaton</strong> and <strong>poistettua merkkausta ei voida palauttaa takaisin</strong>. Siihen eivät pysty edes tietokannan ylläpito. Sinun pitää olla täysin varma, että haluat poistettavaksi juuri tämän merkkauksen.",
+       "tags-delete-explanation-active": "<stron>Merkkaus \"$1\" on edelleen käytössä ja sitä käytetään myös jatkossa.</strong>. Jos haluat merkkauksen pois käytöstä, mene sinne missä merkkaus on asetettu ja ota se pois siellä.",
        "tags-delete-reason": "Syy:",
-       "tags-delete-not-found": "Merkintää \"$1\" ei ole olemassa.",
-       "tags-activate-title": "Aktivoi merkintä",
-       "tags-activate-question": "Olet aikeissa aktivoida merkinnän \"$1\".",
+       "tags-delete-submit": "Tuhoa tämä merkkaus peruuttamattomasti ja pysyvästi",
+       "tags-delete-not-allowed": "Sellaisia merkkauksia, jotka tulevat erityisestä ohjelmistolaajennuksesta, ei voi poistaa ennen kuin tämä laajennus erityisesti sallii sen.",
+       "tags-delete-not-found": "Merkkausta \"$1\" ei ole olemassa.",
+       "tags-delete-too-many-uses": "Tämä merkkaus \"$1\" on käytössä useammassa kuin $2 sivuversiossa, joten sitä ei voi poistaa.",
+       "tags-delete-warnings-after-delete": "Merkkaus \"$1\" poistettiin onnistuneesta, mutta {{PLURAL:$2|seuraava varoitus|seuraavat varoitukset}} ilmeni samalla:",
+       "tags-activate-title": "Aktivoi merkkaus",
+       "tags-activate-question": "Olet nyt aktivoimassa merkkausta \"$1\".",
        "tags-activate-reason": "Syy:",
-       "tags-activate-not-allowed": "Ei ole mahdollista aktivoida merkintää \"$1\".",
-       "tags-activate-not-found": "Merkintää \"$1\" ei ole olemassa.",
+       "tags-activate-not-allowed": "Ei ole mahdollista aktivoida merkkausta \"$1\".",
+       "tags-activate-not-found": "Merkkausta \"$1\" ei ole olemassa.",
        "tags-activate-submit": "Aktivoi",
-       "tags-deactivate-title": "Poista merkintä käytöstä",
-       "tags-deactivate-question": "Olet aikeissa poistaa käytöstä merkinnän \"$1\".",
+       "tags-deactivate-title": "Ota merkkaus pois käytöstä",
+       "tags-deactivate-question": "Olet poistamassa käytöstä merkkauksen \"$1\".",
        "tags-deactivate-reason": "Syy:",
-       "tags-deactivate-not-allowed": "Ei ole mahdollista poistaa käytöstä merkintää \"$1\".",
+       "tags-deactivate-not-allowed": "Ei ole mahdollista poistaa käytöstä merkkausta \"$1\".",
        "tags-deactivate-submit": "Poista käytöstä",
        "comparepages": "Vertaile sivuja",
        "compare-page1": "Sivu 1",
        "logentry-upload-upload": "$1 {{GENDER:$2|tallensi}} tiedoston $3",
        "logentry-upload-overwrite": "$1 {{GENDER:$2|tallensi}} uuden version tiedostosta $3",
        "logentry-upload-revert": "$1 {{GENDER:$2|tallensi}} tiedoston $3",
+       "log-name-managetags": "Merkkausten hallinnan loki",
+       "log-description-managetags": "Tällä sivulla on luettelo tehtävistä, jotka koskevat [[Special:Tags|merkkauksia]]. Lokissa ovat vain ne toimenpiteet, jotka ylläpitäjä on suorittanut käsin. Merkkauksia voi syntyä ja poistua myös wikin ohjelmiston kautta eivätkä ne näy tässä lokissa.",
+       "logentry-managetags-create": "$1 {{GENDER:$2|on luonut}} merkkauksen \"$4\"",
+       "logentry-managetags-delete": "$1 {{GENDER:$2|tuhosi}} merkkauksen \"$4\" (poistettu $5 {{PLURAL:$5|sivun versiosta tai lokimerkinnästä|sivun versiosta tai lokimerkinnästä}})",
+       "logentry-managetags-activate": "$1 {{GENDER:$2|aktivoi}} merkkauksen \"$4\" käyttäjien ja bottien käytettäväksi",
+       "logentry-managetags-deactivate": "$1 {{GENDER:$2|otti pois käytöstä}} merkkauksen \"$4\" käyttäjiltä ja boteilta",
        "rightsnone": "(ei oikeuksia)",
        "revdelete-summary": "yhteenvedon",
        "feedback-bugornote": "Jos voit kuvailla teknisen ongelman tarkasti – [$1 ilmoita ohjelmointivirheestä].\nMuussa tapauksessa voit käyttää alla olevaa helpompaa lomaketta. Kommenttisi lisätään sivulle [$3 $2], ja siinä on mukana käyttäjätunnuksesi.",
index 7dc4d2f..f0f0fbe 100644 (file)
        "right-override-export-depth": "Exporter les pages en incluant les pages liées jusqu'à une profondeur de 5 niveaux",
        "right-sendemail": "Envoyer un courriel aux autres utilisateurs",
        "right-passwordreset": "Voir les courriels de réinitialisation des mots de passe",
+       "right-managechangetags": "Créer et supprimer des [[Spécial:Balises|balises]] de la base de données",
        "newuserlogpage": "Journal des créations de comptes utilisateur",
        "newuserlogpagetext": "Cette page affiche l’historique des créations de comptes utilisateur.",
        "rightslog": "Journal des modifications de droits d’utilisateurs",
        "action-viewmyprivateinfo": "voir vos informations personnelles",
        "action-editmyprivateinfo": "modifier vos informations personnelles",
        "action-editcontentmodel": "modifier le modèle de contenu d’une page",
+       "action-managechangetags": "créer et supprimer des balises de la base de données",
        "nchanges": "$1 modification{{PLURAL:$1||s}}",
        "enhancedrc-since-last-visit": "$1 {{PLURAL:$1|depuis la dernière visite}}",
        "enhancedrc-history": "historique",
        "tags-tag": "Nom de la balise",
        "tags-display-header": "Apparence dans les listes de modifications",
        "tags-description-header": "Description complète de la balise",
+       "tags-source-header": "Source",
        "tags-active-header": "Actif ?",
        "tags-hitcount-header": "Modifications balisées",
+       "tags-actions-header": "Actions",
        "tags-active-yes": "Oui",
        "tags-active-no": "Non",
+       "tags-source-extension": "Définie par une extension",
+       "tags-source-manual": "Appliquée manuellement par les utilisateurs et les bots",
+       "tags-source-none": "Obsolète",
        "tags-edit": "modifier",
+       "tags-delete": "supprimer",
+       "tags-activate": "activer",
+       "tags-deactivate": "désactiver",
        "tags-hitcount": "$1 modification{{PLURAL:$1||s}}",
+       "tags-manage-no-permission": "Vous n'avez pas la permission de gérer les modifications de balises.",
+       "tags-create-heading": "Créer une nouvelle balise",
+       "tags-create-explanation": "Par défaut, les nouvelles balises créées seront disponibles pour les utilisateurs et les bots.",
+       "tags-create-tag-name": "Nom de la balise :",
+       "tags-create-reason": "Raison :",
+       "tags-create-submit": "Créer",
+       "tags-create-no-name": "Vous devez spécifier un nom de balise.",
+       "tags-create-invalid-chars": "Les noms de balise ne doivent pas contenir de virgules (<code>,</code>) ou des barres obliques (<code>/</code>).",
+       "tags-create-invalid-title-chars": "Les noms de balise ne doivent pas contenir de caractères qui ne peuvent pas être utilisés dans les titres des pages.",
+       "tags-create-already-exists": "La balise « $1 » existe déjà.",
+       "tags-create-warnings-above": "{{PLURAL:$2|L'avertissement suivant|Les avertissements suivants}} ont été rencontrés lors de la tentative de création de la balise « $1 » :",
+       "tags-create-warnings-below": "Voulez-vous continuer la création de la balise?",
+       "tags-delete-title": "Supprimer la balise",
+       "tags-delete-explanation-initial": "Vous êtes sur le point de supprimer la balise « $1 » de la base de données.",
+       "tags-delete-explanation-in-use": "Elle sera supprimée de {{PLURAL:$2|$2 révision ou entrée de journal à laquelle|toutes les $2 révisions et/ou entrées de journal auxquelles}} elle est actuellement appliquée.",
+       "tags-delete-explanation-warning": "Cette action est <strong>irréversible</strong> et <strong>ne peut pas être annulée</strong>, même pas par les administrateurs de base de données. Soyez certain que c'est la balise que vous voulez supprimer.",
+       "tags-delete-explanation-active": "<strong>La balise « $1 » est toujours active, et continuera à être appliquée dans le futur. </strong> Pour arrêter cela, allez à l'endroit (ou aux endroits) où la balise est appliquée, et désactivez la.",
+       "tags-delete-reason": "Motif :",
+       "tags-delete-submit": "Supprimer cette balise de manière irréversible",
+       "tags-delete-not-allowed": "Les balises définies par une extension ne peuvent pas être supprimées, à moins que l'extension ne le permette spécifiquement.",
+       "tags-delete-not-found": "La balise « $1 » n’existe pas.",
+       "tags-delete-too-many-uses": "La balise « $1 » est appliquée à plus de $2 {{PLURAL:$2|révision|révisions}}, ce qui signifie qu'elle ne peut pas être supprimée.",
+       "tags-delete-warnings-after-delete": "La balise « $1 » a été supprimée avec succès, mais {{PLURAL:$2|l' avertissement suivant a|avertissements suivants ont}} été rencontré{{PLURAL:$2||s}} :",
+       "tags-activate-title": "Activer la balise",
+       "tags-activate-question": "Vous êtes sur le point d'activer la balise « $1 ».",
+       "tags-activate-reason": "Motif :",
+       "tags-activate-not-allowed": "Il n'est pas possible d'activer la balise « $1 ».",
+       "tags-activate-not-found": "La balise « $1 » n'existe pas.",
+       "tags-activate-submit": "Activer",
+       "tags-deactivate-title": "Désactiver la balise",
+       "tags-deactivate-question": "Vous êtes sur le point de désactiver la balise « $1 ».",
+       "tags-deactivate-reason": "Motif :",
+       "tags-deactivate-not-allowed": "Il n'est pas possible de désactiver la balise « $1 ».",
+       "tags-deactivate-submit": "Désactiver",
        "comparepages": "Comparer des pages",
        "compare-page1": "Page 1",
        "compare-page2": "Page 2",
        "logentry-upload-upload": "$1 {{GENDER:$2|a téléchargé}} $3",
        "logentry-upload-overwrite": "$1 {{GENDER:$2|a téléversé}} une nouvelle version de $3",
        "logentry-upload-revert": "$1 {{GENDER:$2|a téléchargé}} $3",
+       "log-name-managetags": "Journal des modifications de balises",
+       "log-description-managetags": "Cette page recense les tâches de maintenance liées aux [[Special:Tags|balises]]. Le journal contient uniquement les actions faites manuellement par un administrateur ; les balises peuvent être créées ou supprimées par le logiciel wiki sans que cette action ne soit inscrite dans ce journal.",
+       "logentry-managetags-create": "$1 {{GENDER:$2|a créé}} la balise « $4 ».",
+       "logentry-managetags-delete": "$1 {{GENDER:$2|a supprimé}} la balise « $4 » (retirée {{PLURAL:$5|d'une révision ou entrée de journal|de $5 révisions ou entrées de journal}})",
+       "logentry-managetags-activate": "$1 {{GENDER:$2|a activé}} la balise \"$4\" pour l’usage des utilisateurs et des robots",
+       "logentry-managetags-deactivate": "$1 {{GENDER:$2|a désactivé}} la balise « $4 » pour l’usage des utilisateurs et des robots",
        "rightsnone": "(aucun)",
        "revdelete-summary": "résumé de modification",
        "feedback-bugornote": "Si vous êtes prêt à décrire un problème technique en détail, veuillez [$1 signaler un bogue].\nSinon, vous pouvez utiliser le formulaire simplifié ci-dessous. Votre commentaire sera ajouté à la page « [$3 $2] », avec votre nom d'utilisateur.",
index 22a56fc..8cf9522 100644 (file)
@@ -27,7 +27,8 @@
                        "שומבלע",
                        "תומר ט",
                        "Matanya",
-                       "GilCahana"
+                       "GilCahana",
+                       "Ldorfman"
                ]
        },
        "tog-underline": "סימון קישורים בקו תחתי:",
        "yourpasswordagain": "חזרה על הסיסמה:",
        "createacct-yourpasswordagain": "אימות הסיסמה",
        "createacct-yourpasswordagain-ph": "יש להקליד את הסיסמה שנית",
-       "remembermypassword": "שמירת הכניסה שלי בדפדפן הזה (ל{{PLURAL:$1|יום אחד|יומיים|־$1 ימים}} לכל היותר)",
+       "remembermypassword": "שמירת הכניסה שלי בדפדפן הזה ({{PLURAL:$1|ליום אחד|ליומיים|ל־$1 ימים}} לכל היותר)",
        "userlogin-remembermypassword": "לזכור שנכנסתי",
        "userlogin-signwithsecure": "שימוש בחיבור מאובטח",
        "yourdomainname": "המתחם שלך:",
        "token_suffix_mismatch": "'''עריכתך נדחתה כיוון שהדפדפן שלך מחק את תווי הפיסוק באסימון העריכה.'''\nהעריכה נדחתה כדי למנוע בעיות כאלה בטקסט של הדף.\nלעתים התקלה מתרחשת עקב שימוש בשירות פרוקסי אנונימי פגום.",
        "edit_form_incomplete": "'''כמה חלקים מטופס העריכה לא הגיעו לשרת; בדקו היטב שעריכותיכם לא נפגעו ונסו שוב.'''",
        "editing": "עריכת $1",
-       "creating": "יצירת $1",
+       "creating": "יצירת הדף $1",
        "editingsection": "עריכת $1 (פסקה)",
        "editingcomment": "עריכת $1 (פסקה חדשה)",
        "editconflict": "התנגשות עריכה: $1",
index 4cee8ab..d0843cd 100644 (file)
        "prefs-personal": "Felhasználói adatok",
        "prefs-rc": "Friss változtatások",
        "prefs-watchlist": "Figyelőlista",
+       "prefs-editwatchlist-label": "A figyelőlista szerkesztése:",
+       "prefs-editwatchlist-edit": "A figyelőlista megtekintése és szerkesztése",
+       "prefs-editwatchlist-raw": "A nyers figyelőlista szerkesztése",
+       "prefs-editwatchlist-clear": "A figyelőlista kiürítése",
        "prefs-watchlist-days": "A figyelőlistában mutatott napok száma:",
        "prefs-watchlist-days-max": "Legfeljebb $1 {{PLURAL:$1|nap|nap}}",
        "prefs-watchlist-edits": "A kiterjesztett figyelőlistán mutatott szerkesztések száma:",
        "movepagetalktext": "A laphoz tartozó vitalap automatikusan átneveződik, '''kivéve, ha:'''\n*már létezik egy nem üres vitalap az új helyen,\n*nem jelölöd be a lenti pipát.\n\nEzen esetekben a vitalapot külön, kézzel kell átnevezned a kívánságaid szerint.",
        "movearticle": "Lap átnevezése",
        "moveuserpage-warning": "'''Figyelem:''' Egy felhasználólapot készülsz átmozgatni. Csak a lap lesz átmozgatva, a szerkesztő ''nem'' lesz átnevezve.",
-       "movecategorypage-warning": "<string>Figyelmeztetés:</strong> Éppen egy kategórialapot készülsz átnevezni. Figyelj arra, hogy csak a lap lesz átnevezve, az idekategorizált lapok <em>nem</em> lesznek átkategorizálva.",
+       "movecategorypage-warning": "<strong>Figyelmeztetés:</strong> Éppen egy kategórialapot készülsz átnevezni. Figyelj arra, hogy csak a lap lesz átnevezve, az idekategorizált lapok <em>nem</em> lesznek átkategorizálva.",
        "movenologintext": "Ahhoz, hogy átnevezhess egy lapot, [[Special:UserLogin|be kell lépned]].",
        "movenotallowed": "Nincs jogod a lapok átnevezéséhez.",
        "movenotallowedfile": "Nincs megfelelő jogosultságod a fájlok átnevezéséhez.",
index 0bf8947..5c77827 100644 (file)
        "badtitle": "Judul tidak sah",
        "badtitletext": "Judul halaman yang diminta tidak sah, kosong, atau judul antarbahasa atau antarwiki yang salah sambung.",
        "perfcached": "Data berikut ini diambil dari singgahan dan mungkin bukan data mutakhir. {{PLURAL:$1||}}$1 hasil maksimal tersedia di tembolok.",
-       "perfcachedts": "Data berikut ini diambil dari singgahan dan terakhir diperbarui pada $1. {{PLURAL:$1||}}$1 hasil maksimal tersedia di tembolok.",
+       "perfcachedts": "Data berikut ini diambil dari singgahan dan terakhir diperbarui pada $1. Maksimal {{PLURAL:$4 hasil}} ada di singgahan.",
        "querypage-no-updates": "Pemutakhiran dari halaman ini sedang dimatikan. Data yang ada di sini saat ini tidak akan dimuat ulang.",
        "viewsource": "Lihat sumber",
        "viewsource-title": "Lihat sumber untuk $1",
        "recentchanges-label-plusminus": "Perubahan ukuran halaman dalam bita",
        "recentchanges-legend-heading": "'''Legenda:'''",
        "recentchanges-legend-newpage": "{{int:recentchanges-label-newpage}} (lihat pula [[Special:NewPages|daftar halaman baru]])",
-       "rcnotefrom": "Di bawah ini adalah perubahan sejak <strong>$2</strong> (ditampilkan sampai <strong>$1</strong> perubahan).",
+       "rcnotefrom": "Di bawah ini adalah {{PLURAL:$5|perubahan}} sejak <strong>$3, $4</strong> (ditampilkan sampai <strong>$1</strong> perubahan).",
        "rclistfrom": "Perlihatkan perubahan terbaru sejak $3 $2",
        "rcshowhideminor": "$1 suntingan kecil",
        "rcshowhideminor-show": "Tampilkan",
        "uploaderror": "Kesalahan pemuatan",
        "upload-recreate-warning": "'''Peringatan: Berkas dengan nama itu telah dihapus atau dipindahkan.'''\n\nLog penghapusan dan pemindahan laman ini adalah sebagai berikut:",
        "uploadtext": "Gunakan formulir di bawah untuk mengunggah berkas.\nUntuk menampilkan atau mencari berkas yang sebelumnya dimuat, gunakan [[Special:FileList|daftar berkas]]. Pengunggahan (ulang) juga tercatat dalam [[Special:Log/upload|log pengunggahan]], sementara penghapusan tercatat dalam [[Special:Log/delete|log penghapusan]].\n\nUntuk menampilkan atau menyertakan berkas di dalam suatu halaman, gunakan pranala dengan salah satu format di bawah ini:\n* '''<code><nowiki>[[</nowiki>{{ns:file}}<nowiki>:Berkas.jpg]]</nowiki></code>''' untuk menampilkan berkas dalam ukuran aslinya\n* '''<code><nowiki>[[</nowiki>{{ns:file}}<nowiki>:Berkas.png|200px|thumb|left|teks alternatif]]</nowiki></code>''' untuk menampilkan berkas dengan lebar 200px dalam sebuah kotak di kiri halaman dengan 'teks alternatif' sebagai keterangan gambar\n* '''<code><nowiki>[[</nowiki>{{ns:media}}<nowiki>:Berkas.ogg]]</nowiki></code>''' sebagai pranala langsung ke berkas yang dimaksud tanpa menampilkan berkas tersebut melalui wiki",
-       "upload-permitted": "Jenis berkas yang diperbolehkan: $1.",
-       "upload-preferred": "Jenis berkas yang disarankan: $1.",
-       "upload-prohibited": "Jenis berkas yang dilarang: $1.",
+       "upload-permitted": "{{PLURAL:$2|Jenis}} berkas yang diperbolehkan: $1.",
+       "upload-preferred": "{{PLURAL:$2|Jenis}} berkas yang disarankan: $1.",
+       "upload-prohibited": "{{PLURAL:$2|Jenis}} berkas yang dilarang: $1.",
        "uploadlogpage": "Log pengunggahan",
        "uploadlogpagetext": "Berikut adalah daftar unggahan berkas terbaru. \nLihat [[Special:NewFiles|galeri berkas baru]] untuk tampilan visual.",
        "filename": "Nama berkas",
        "nolicense": "Tidak ada yang dipilih",
        "licenses-edit": "Sunting opsi lisensi",
        "license-nopreview": "(Pratayang tak tersedia)",
-       "upload_source_url": " (suatu URL valid yang dapat diakses publik)",
-       "upload_source_file": " (suatu berkas di komputer Anda)",
+       "upload_source_url": "(Anda pilih berkas dari URL valid yang dapat diakses publik)",
+       "upload_source_file": "(Anda pilih berkas dari komputer Anda)",
        "listfiles-delete": "hapus",
        "listfiles-summary": "Halaman istimewa ini menampilkan semua berkas yang telah diunggah.\nKetika disaring oleh pengguna, hanya versi berkas terbaru dari berkas yang diunggah oleh pengguna tersebut yang ditampilkan.",
        "listfiles_search_for": "Cari nama berkas:",
        "widthheightpage": "$1 × $2, $3 {{PLURAL:$3|halaman|halaman}}",
        "file-info": "ukuran berkas: $1, tipe MIME: $2",
        "file-info-size": "$1 × $2 piksel, ukuran berkas: $3, tipe MIME: $4",
-       "file-info-size-pages": "$1 × $2 piksel, ukuran berkas: $3, jenis MIME: $4, $5 {{PLURAL:$5|halaman|halaman}}",
+       "file-info-size-pages": "$1 × $2 piksel, ukuran berkas: $3, tipe MIME: $4, $5 {{PLURAL:$5|halaman}}",
        "file-nohires": "Tak tersedia resolusi yang lebih tinggi.",
        "svg-long-desc": "Berkas SVG, nominal $1 × $2 piksel, besar berkas: $3",
        "svg-long-desc-animated": "Berkas SVG animasi, biasanya $1 x $2 piksel, ukuran gambar: $3",
        "pipe-separator": "&#32;|&#32;",
        "word-separator": "&#32;",
        "ellipsis": "...",
+       "quotation-marks": "\"$1\"",
        "imgmultipageprev": "&larr; halaman sebelumnya",
        "imgmultipagenext": "halaman selanjutnya &rarr;",
        "imgmultigo": "Cari!",
        "tags-active-yes": "Ya",
        "tags-active-no": "Tidak",
        "tags-edit": "sunting",
-       "tags-hitcount": "$1 {{PLURAL:$1|perubahan|perubahan}}",
+       "tags-delete": "hapus",
+       "tags-activate": "aktifkan",
+       "tags-deactivate": "nonaktifkan",
+       "tags-hitcount": "$1 {{PLURAL:$1|perubahan}}",
        "comparepages": "Bandingkan halaman",
        "compare-page1": "Halaman 1",
        "compare-page2": "Halaman 2",
        "compare-revision-not-exists": "Revisi yang Anda minta tidak ada.",
        "dberr-problems": "Maaf! Situs ini mengalami masalah teknis.",
        "dberr-again": "Cobalah menunggu beberapa menit dan muat ulang.",
-       "dberr-info": "(Tak dapat tersambung dengan server basis data: $1)",
-       "dberr-info-hidden": "(Tidak dapat menghubungi peladen basis data)",
+       "dberr-info": "(Tak dapat mengakses basis data: $1)",
+       "dberr-info-hidden": "(Tak dapat mengakses basis data)",
        "dberr-usegoogle": "Anda dapat mencoba pencarian melalui Google untuk sementara waktu.",
        "dberr-outofdate": "Harap diperhatikan bahwa indeks mereka terhadap isi kami mungkin sudah kedaluwarsa.",
        "dberr-cachederror": "Berikut adalah salinan tersimpan halaman yang diminta, dan mungkin bukan yang terbaru.",
        "revdelete-uname-unhid": "nama pengguna tidak disembunyikan",
        "revdelete-restricted": "akses telah dibatasi untuk opsis",
        "revdelete-unrestricted": "pembatasan akses opsis dihapuskan",
+       "logentry-merge-merge": "$1 {{GENDER:$2|menggabungkan}} $3 dengan $4 (revisi lebih dari $5)",
        "logentry-move-move": "$1 {{GENDER:$2|memindahkan}} halaman $3 ke $4",
        "logentry-move-move-noredirect": "$1 {{GENDER:$2|memindahkan}} halaman $3 ke $4 tanpa membuat pengalihan",
        "logentry-move-move_redir": "$1 {{GENDER:$2|memindahkan}} halaman $3 ke $4 menimpa pengalihan lama",
        "logentry-rights-rights": "$1 {{GENDER:$2|mengubah}} keanggotaan grup $3 dari $4 menjadi $5",
        "logentry-rights-rights-legacy": "$1 {{GENDER:$2|mengubah}} keanggotaan grup $3",
        "logentry-rights-autopromote": "$1 secara otomatis {{GENDER:$2|dipromosikan}} dari $4 menjadi $5",
+       "logentry-upload-upload": "$1 {{GENDER:$2|mengunggah}} $3",
+       "logentry-upload-overwrite": "$1 {{GENDER:$2|mengunggah}} versi baru dari $3",
+       "logentry-upload-revert": "$1 {{GENDER:$2|mengunggah}} $3",
+       "log-name-managetags": "Log pengelolaan tag",
+       "logentry-managetags-create": "$1 {{GENDER:$2|membuat}} tag \"$4\"",
        "rightsnone": "(tidak ada)",
        "revdelete-summary": "ringkasan",
        "feedback-bugornote": "Jika Anda sudah siap untuk mendeskripsikan masalah teknis secara rinci silakan [$1 melaporkan bug].\nJika tidak, Anda dapat menggunakan formulir mudah di bawah ini. Komentar Anda akan ditambahkan ke halaman \"[$3 $2]\", bersama dengan nama pengguna Anda dan apa browser yang Anda gunakan.",
        "feedback-bugcheck": "Hebat! Hanya periksa bahwa itu bukan satu di antara [$1 bug yang telah dikenal].",
        "feedback-bugnew": "Saya telah memeriksa. Laporkan bug baru",
        "searchsuggest-search": "Cari",
-       "searchsuggest-containing": "isian ...",
+       "searchsuggest-containing": "berisi...",
        "api-error-badaccess-groups": "Anda tidak diizinkan mengunggah berkas ke wiki ini.",
        "api-error-badtoken": "Kesalahan internal: token buruk.",
        "api-error-copyuploaddisabled": "Mengunggah melalui URL dilarang pada peladen ini.",
-       "api-error-duplicate": "Sudah ada {{PLURAL:$1|[$2 berkas lain]|[$2 berkas lain]}} dengan konten yang sama di situs ini",
-       "api-error-duplicate-archive": "Ada {{PLURAL:$1|[$2 berkas]|[$2 berkas]}} lain di situs dengan konten yang sama, namun {{PLURAL:$1|berkas|berkas-berkas}} itu telah dihapus.",
-       "api-error-duplicate-archive-popup-title": "{{PLURAL:$1|Berkas|Berkas-berkas}} duplikat yang telah dihapus",
-       "api-error-duplicate-popup-title": "{{PLURAL:$1|Berkas|Berkas}} duplikat",
+       "api-error-duplicate": "Sudah ada {{PLURAL:$1|[$2 berkas lain]}} dengan konten yang sama di situs ini.",
+       "api-error-duplicate-archive": "Ada {{PLURAL:$1|[$2 berkas]}} lain di situs dengan konten yang sama, namun {{PLURAL:$1|berkas|berkas-berkas}} itu telah dihapus.",
+       "api-error-duplicate-archive-popup-title": "{{PLURAL:$1|Berkas|Berkas-berkas}} duplikat yang telah dihapus.",
+       "api-error-duplicate-popup-title": "{{PLURAL:$1|Berkas}} duplikat.",
        "api-error-empty-file": "Berkas yang Anda kirim kosong.",
        "api-error-emptypage": "Pembuatan halaman baru yang kosong tidak diizinkan.",
        "api-error-fetchfileerror": "Kesalahan internal: terjadi kesalahan saat memperoleh berkas ini.",
        "api-error-unknownerror": "Kesalahan tidak dikenal: \"$1\"",
        "api-error-uploaddisabled": "Pengunggahan dinonaktifkan di wiki ini.",
        "api-error-verification-error": "Berkas ini mungkin rusak atau memiliki ekstensi yang salah.",
-       "duration-seconds": "{{PLURAL:$1||}}$1 detik",
-       "duration-minutes": "{{PLURAL:$1||}}$1 menit",
-       "duration-hours": "{{PLURAL:$1||}}$1 jam",
-       "duration-days": "{{PLURAL:$1||}}$1 hari",
-       "duration-weeks": "{{PLURAL:$1||}}$1 minggu",
-       "duration-years": "{{PLURAL:$1||}}$1 tahun",
-       "duration-decades": "{{PLURAL:$1||}}$1 dekade",
-       "duration-centuries": "{{PLURAL:$1||}}$1 abad",
-       "duration-millennia": "{{PLURAL:$1||}}$1 milenium",
+       "duration-seconds": "$1 {{PLURAL:$1|detik}}",
+       "duration-minutes": "$1 {{PLURAL:$1|menit}}",
+       "duration-hours": "$1 {{PLURAL:$1|jam}}",
+       "duration-days": "$1 {{PLURAL:$1|hari}}",
+       "duration-weeks": "$1 {{PLURAL:$1|minggu}}",
+       "duration-years": "$1 {{PLURAL:$1|tahun}}",
+       "duration-decades": "$1 {{PLURAL:$1|dekade}}",
+       "duration-centuries": "$1 {{PLURAL:$1|abad}}",
+       "duration-millennia": "$1 {{PLURAL:$1|milenium}}",
        "rotate-comment": "Gambar diputar $1 {{PLURAL:$1|derajat}} searah jarum jam",
        "limitreport-title": "Parser profil data:",
        "limitreport-cputime": "Penggunaan waktu CPU",
-       "limitreport-cputime-value": "$1 {{PLURAL:$1|detik|detik}}",
+       "limitreport-cputime-value": "$1 {{PLURAL:$1|detik}}",
        "limitreport-walltime": "Penggunaan waktu riil",
-       "limitreport-walltime-value": "$1 {{PLURAL:$1|detik|detik}}",
+       "limitreport-walltime-value": "$1 {{PLURAL:$1|detik}}",
        "limitreport-ppvisitednodes": "Preprosesor mengunjungi hitungan node",
        "limitreport-ppgeneratednodes": "Preprosesor menghasilkan hitungan node",
        "limitreport-postexpandincludesize": "Pasca memperluas mencakup ukuran",
-       "limitreport-postexpandincludesize-value": "$1/$2 {{PLURAL:$2|bita|bita}}",
+       "limitreport-postexpandincludesize-value": "$1/$2 {{PLURAL:$2|bita}}",
        "limitreport-templateargumentsize": "Ukuran argumen temlat",
-       "limitreport-templateargumentsize-value": "$1/$2 {{PLURAL:$2|bita|bita}}",
+       "limitreport-templateargumentsize-value": "$1/$2 {{PLURAL:$2|bita}}",
        "limitreport-expansiondepth": "Kedalaman ekspansi tertinggi",
        "limitreport-expensivefunctioncount": "Perhitungan fungsi parser yang mahal",
        "expandtemplates": "Pengembangan templat",
        "expand_templates_input": "Teks masukan:",
        "expand_templates_output": "Hasil",
        "expand_templates_xml_output": "Hasil XML",
-       "expand_templates_html_output": "Keliaran HTML mentah",
+       "expand_templates_html_output": "Keluaran HTML mentah",
        "expand_templates_ok": "OK",
        "expand_templates_remove_comments": "Buang komentar",
        "expand_templates_remove_nowiki": "Tidak menampilkan tag <nowiki> pada hasilnya",
        "pagelanguage": "Pemilih bahasa halaman",
        "pagelang-name": "Halaman",
        "pagelang-language": "Bahasa",
-       "pagelang-use-default": "Gunakan bahasa default",
+       "pagelang-use-default": "Gunakan bahasa baku",
        "pagelang-select-lang": "Pilih bahasa",
        "right-pagelang": "Ubah bahasa halaman",
        "action-pagelang": "mengubah bahasa halaman",
        "log-name-pagelang": "Ubah bahasa log",
        "log-description-pagelang": "Ini adalah log perubahan dalam bahasa halaman.",
        "logentry-pagelang-pagelang": "$1 {{GENDER:$2|mengubah}} bahasa halaman $3 dari $4 menjadi $5.",
-       "mediastatistics-summary": "Statistik tentang jenis file yang terunggah. Ini hanya mencakup versi terbaru dari sebuah file. Terkecuali file lama dan file yang sudah dihapus",
+       "default-skin-not-found-row-enabled": "* <code>$1</code> / $2 (aktif)",
+       "default-skin-not-found-row-disabled": "* <code>$1</code> / $2 ('''nonaktif''')",
+       "mediastatistics": "Statistik media",
+       "mediastatistics-summary": "Statistik mengenai jenis berkas yang diunggah. Hanya mencakup versi terbaru dari berkas. Berkas lama dan berkas yang sudah dihapus tidak termasuk.",
+       "mediastatistics-nbytes": "{{PLURAL:$1|$1 bita}} ($2; $3%)",
+       "mediastatistics-table-mimetype": "Tipe MIME",
+       "mediastatistics-table-extensions": "Ekstensi",
        "mediastatistics-table-count": "Jumlah file",
        "mediastatistics-table-totalbytes": "Ukuran gabungan",
        "mediastatistics-header-unknown": "Tidak diketahui",
        "mediastatistics-header-bitmap": "Gambar bitmap",
+       "mediastatistics-header-drawing": "Gambar vektor",
        "mediastatistics-header-audio": "Audio",
        "mediastatistics-header-video": "Video",
-       "mediastatistics-header-office": "Office",
+       "mediastatistics-header-office": "Aplikasi Office",
        "mediastatistics-header-text": "Tekstual",
-       "mediastatistics-header-executable": "Executable",
+       "mediastatistics-header-executable": "Program",
        "mediastatistics-header-archive": "Format terkompresi",
        "json-error-depth": "Kedalaman tumpukan maksimal telah terlewati",
        "json-error-syntax": "Kesalahan sintaks"
index 9d80263..9c6dfb0 100644 (file)
        "prefs-rc": "最近の更新",
        "prefs-watchlist": "ウォッチリスト",
        "prefs-editwatchlist": "ウォッチリストの編集",
+       "prefs-editwatchlist-edit": "ウォッチリストの表示と除去",
+       "prefs-editwatchlist-clear": "ウォッチリストの全消去",
        "prefs-watchlist-days": "ウォッチリストの表示日数:",
        "prefs-watchlist-days-max": "最大 $1 {{PLURAL:$1|日間}}",
        "prefs-watchlist-edits": "ウォッチリストの展開時の最大表示件数:",
index 643bc40..bd25d62 100644 (file)
        "hidetoc": "veşêre",
        "collapsible-collapse": "Bigire",
        "collapsible-expand": "Berfireh bike",
+       "confirmable-yes": "Erê",
+       "confirmable-no": "Na",
        "thisisdeleted": "Li $1 binêre an jî serast bike?",
        "viewdeleted": "Li $1 binêre?",
        "restorelink": "{{PLURAL:$1|guherandineke|$1 guherandinên}} jêbirî",
        "delete-edit-reasonlist": "Sedemên jêbirinê biguherîne",
        "delete-toobig": "Dîroka vê rûpelê pir mezin e, zêdetirî $1 guherandin. Jêbirina van rûpelan hatîye sînorkirin, ji bo pir şaşbûn (error) di {{SITENAME}} da çênebin.",
        "delete-warning-toobig": "Dîroka vê rûpelê pir mezin e, zêdetirî $1 guherandin. Jêbirina van rûpelan dikarin şaşbûnan di database'ê {{SITENAME}} da çêkin; zandibe tu çi dikê!",
-       "rollback_short": "Bizîvirîne pêş",
        "rollbacklink": "bizîvirîne pêş",
        "cantrollback": "Guherto naye vegerandin;\nbikarhênerê dawî, tenya nivîskarê vê rûpelê ye.",
        "alreadyrolled": "Guherandina dawiya [[$1]]\nbi [[User:$2|$2]] ([[User talk:$2|gotûbêj]]) venizivre; kesekî din ew rûpel zîvirandiye an guherandiye.\n\nGuhertoya dawî bi [[User:$3|$3]] ([[User talk:$3|gotûbêj]]).",
index 793ac69..af64e28 100644 (file)
        "tags-deactivate": "desaktivéieren",
        "tags-hitcount": "$1 {{PLURAL:$1|Ännerung|Ännerungen}}",
        "tags-create-reason": "Grond:",
+       "tags-create-submit": "Uleeën",
        "tags-create-already-exists": "D'Markéierung (tag) ''$1'' gëtt et schonn.",
        "tags-delete-title": "Markéierung (tag) läSchen",
        "tags-delete-reason": "Grond:",
index f64e51f..7636ee2 100644 (file)
@@ -14,7 +14,8 @@
                        "아라",
                        "LNDDYL",
                        "Jason924tw",
-                       "灰太狼Wolffy55"
+                       "灰太狼Wolffy55",
+                       "RalfX"
                ]
        },
        "tog-underline": "鏈墊線:",
        "category-empty": "''無頁或媒也。''",
        "hidden-categories": "$1隱類",
        "hidden-category-category": "隱類",
-       "category-subcat-count": "{{PLURAL:$2|é\96\80æ\9c\89æ\88¶å£¹ã\80\82\96\80æ\9c\89æ\88¶$1ï¼\8cæ\9c\89$2æ\88也。}}",
-       "category-subcat-count-limited": "é\96\80æ\9c\89æ\88$1。",
-       "category-article-count": "{{PLURAL:$2|é\96\80æ\9c\89é \81壹ã\80\82\96\80æ\9c\89é \81$1ï¼\8cæ\9c\89$2é \81也。}}",
-       "category-article-count-limited": "é\96\80有頁$1。",
-       "category-file-count": "{{PLURAL:$2|é\96\80æ\9c\89æª\94壹ã\80\82\96\80æ\9c\89æª\94$1ï¼\8cæ\9c\89$2æª\94也。}}",
-       "category-file-count-limited": "é\96\80有檔$1。",
+       "category-subcat-count": "{{PLURAL:$2|é¡\9eæ\9c\89å­\90é¡\9eå¦\82ä¸\8bã\80\82|é¡\9eæ\9c\89$1å­\90é¡\9eï¼\8cè½\84ä¸\8bå­\90é¡\9eæ\95¸$2也。}}",
+       "category-subcat-count-limited": "é¡\9eæ\9c\89å­\90é¡\9e$1。",
+       "category-article-count": "{{PLURAL:$2|é¡\9eæ\9c\89é \81å¦\82ä¸\8bã\80\82|é¡\9eæ\9c\89é \81$1ï¼\8cè½\84ä¸\8bé \81æ\95¸$2也。}}",
+       "category-article-count-limited": "é¡\9e有頁$1。",
+       "category-file-count": "{{PLURAL:$2|é¡\9eæ\9c\89æª\94å¦\82ä¸\8bã\80\82|é¡\9eæ\9c\89æª\94$1ï¼\8cè½\84ä¸\8bæª\94æ\95¸$2也。}}",
+       "category-file-count-limited": "é¡\9e有檔$1。",
        "listingcontinuesabbrev": "續",
        "index-category": "已索之頁",
        "noindex-category": "未索之頁",
        "accountcreatedtext": "[[{{ns:User}}:$1|$1]] ([[{{ns:User talk}}:$1|書]])簿增矣。",
        "createaccount-title": "於{{SITENAME}}增簿",
        "createaccount-text": "有人於{{SITENAME}}用爾之電郵增名為 \"$2\" 之簿 ($4),符節為 \"$3\" 。汝應登,再改符節也。\n\n如簿誤增,爾可略之。",
-       "login-throttled": "ç\88¾å¤\9a試æ\96¼æ­¤ç°¿ç\99»ä¸­。\n請候 $1 再試之。",
+       "login-throttled": "ç\88¾å\98\97ç\99»ç°¿ç\94\9aç\9f£。\n請候 $1 再試之。",
        "login-abort-generic": "登簿未成——棄",
        "loginlanguagelabel": "語:$1",
        "suspicious-userlogout": "爾欲無離也,可由壞瀏覽器或快枝代理呈送之。",
        "retypenew": "重察新符節:",
        "resetpass_submit": "設符再登",
        "changepassword-success": "爾之符節已改!",
-       "changepassword-throttled": "ç\88¾å¤\9a試æ\96¼æ­¤ç°¿ç\99»ä¸­ã\80\82\nè«\8bå\80\99再試之。",
+       "changepassword-throttled": "ç\88¾å\98\97ç\99»ç°¿ç\94\9aç\9f£ã\80\82\nè«\8bå\80\99 $1 再試之。",
        "resetpass_forbidden": "無改符節",
        "resetpass-no-info": "爾須登簿後方進此頁。",
        "resetpass-submit-loggedin": "改符節",
        "changeemail-newemail": "新郵驛:",
        "changeemail-none": "(無)",
        "changeemail-password": "汝 {{SITENAME}} 之符節",
+       "changeemail-throttled": "爾嘗登簿甚矣。\n請候 $1 再試之。",
        "bold_sample": "粗體",
        "bold_tip": "粗體",
        "italic_sample": "斜體",
        "withoutinterwiki-submit": "示",
        "fewestrevisions": "鮮察",
        "nbytes": "$1位元組",
-       "ncategories": "$1é\96\80",
+       "ncategories": "$1é¡\9e",
        "nlinks": "$1鏈",
        "nmembers": "$1戶",
        "nrevisions": "$1審",
        "uncategorizedtemplates": "待蘸",
        "unusedcategories": "樞鏽",
        "unusedimages": "色褪",
-       "wantedcategories": "æ±\82é\96\80",
+       "wantedcategories": "æ±\82é¡\9e",
        "wantedpages": "徵頁",
        "wantedpages-badtitle": "結組無題: $1",
        "wantedfiles": "求檔",
        "wantedtemplates": "徵模",
        "mostlinked": "好料",
-       "mostlinkedcategories": "豪é\96\80",
+       "mostlinkedcategories": "豪é¡\9e",
        "mostlinkedtemplates": "美模",
        "mostcategories": "跨船",
        "mostimages": "名檔",
        "move": "遷",
        "movethispage": "遷此頁",
        "unusedimagestext": "下檔存也,未嵌於其頁之。\n他站可以網址鏈檔,故下列並非盡閒,註記之。",
-       "unusedcategoriestext": "以ä¸\8b空é\96\80,無依可活。",
+       "unusedcategoriestext": "以ä¸\8b空é¡\9e,無依可活。",
        "notargettitle": "落靶",
        "notargettext": "簿、頁未定,無可為之。",
        "nopagetitle": "落靶之頁",
        "speciallogtitlelabel": "標:",
        "log": "誌",
        "all-logs-page": "眾誌",
-       "alllogstext": "眾{{SITENAME}}之誌有合者,俱併版見。擇、選簿、限疆以裁之。",
+       "alllogstext": "眾{{SITENAME}}之誌有合者,俱併版見。擇、選簿、限疆以裁之。",
        "logempty": "無合誌也。",
        "log-title-wildcard": "題以此始者,取之",
        "allpages": "全典",
        "sp-contributions-search": "問勛",
        "sp-contributions-username": "簿名或IP址",
        "sp-contributions-toponly": "僅示至新審之纂",
+       "sp-contributions-newonly": "僅示創文之纂",
        "sp-contributions-submit": "問",
        "whatlinkshere": "取佐",
        "whatlinkshere-title": "「$1」取佐",
        "exportcuronly": "獨匯今審",
        "exportnohistory": "----\n'''囑記,'''封匯全誌,因累甚也。",
        "export-submit": "出匯",
-       "export-addcattext": "索門擇題:",
+       "export-addcattext": "擇題入類:",
        "export-addcat": "增",
        "export-addnstext": "索名集擇題:",
        "export-addns": "增",
        "tooltip-ca-nstab-mediawiki": "聞官耗",
        "tooltip-ca-nstab-template": "尋模造",
        "tooltip-ca-nstab-help": "助拳腳",
-       "tooltip-ca-nstab-category": "入門道",
+       "tooltip-ca-nstab-category": "觀類",
        "tooltip-minoredit": "正小錯,謙註校",
        "tooltip-save": "葺修畢,儲之窖",
        "tooltip-preview": "篤存儲,先草稿",
index f7a6aeb..1518d9f 100644 (file)
        "right-override-export-depth": "Mengeksport laman termasuk laman dipaut sehingga kedalaman 5",
        "right-sendemail": "Mengirim e-mel kepada pengguna-pengguna lain",
        "right-passwordreset": "Lihat e-mel set semula kata laluan",
+       "right-managechangetags": "Mencipta dan menghapuskan [[Special:Tags|teg]] dari pangkalan data",
        "newuserlogpage": "Log akaun baru",
        "newuserlogpagetext": "Yang berikut ialah log penciptaan pengguna.",
        "rightslog": "Log hak pengguna",
        "action-viewmyprivateinfo": "melihat maklumat peribadi sendiri",
        "action-editmyprivateinfo": "menyunting maklumat peribadi sendiri",
        "action-editcontentmodel": "menyunting model kandungan laman",
+       "action-managechangetags": "mencipta dan menghapuskan teg dari pangkalan data",
        "nchanges": "$1 perubahan",
        "enhancedrc-since-last-visit": "$1 {{PLURAL:$1|sejak lawatan terakhir}}",
        "enhancedrc-history": "sejarah",
        "tags-tag": "Nama label",
        "tags-display-header": "Rupa dalam senarai perubahan",
        "tags-description-header": "Keterangan makna",
+       "tags-source-header": "Sumber",
        "tags-active-header": "Aktif?",
        "tags-hitcount-header": "Perubahan",
+       "tags-actions-header": "Tindakan",
        "tags-active-yes": "Ya",
        "tags-active-no": "Tidak",
+       "tags-source-extension": "Ditetapkan oleh suatu sambungan",
+       "tags-source-manual": "Digunakan secara manual oleh pengguna dan bot",
+       "tags-source-none": "Tidak digunakan lagi",
        "tags-edit": "sunting",
+       "tags-delete": "hapuskan",
+       "tags-activate": "hidupkan",
+       "tags-deactivate": "matikan",
        "tags-hitcount": "$1 perubahan",
+       "tags-create-explanation": "Secara asali, teg-teg yang baru dicipta akan dibuka untuk kegunaan pengguna dan juga bot.",
+       "tags-create-tag-name": "Nama teg:",
+       "tags-create-reason": "Sebab:",
+       "tags-create-submit": "Cipta",
+       "tags-create-no-name": "Anda mesti menyebut satu nama teg.",
+       "tags-create-invalid-chars": "Nama teg tidak boleh mengandungi tanda koma (<code>,</code>) atau tanda miring (<code>/</code>).",
+       "tags-create-already-exists": "Teg \"$1\" sudah wujud.",
+       "tags-create-warnings-above": "{{PLURAL:$2|Amaran|Amaran-amaran}} berikut ditemui ketika cuba mencipta teg \"$1\":",
+       "tags-create-warnings-below": "Adakah anda hendak bersambung mencipta teg ini?",
+       "tags-delete-explanation-initial": "Anda bakal menghapuskan teg \"$1\" dari pangkalan data.",
+       "tags-delete-explanation-active": "<strong>Teg \"$1\" masih aktif dan akan terus dijalankan di masa akan datang.</strong> Untuk menghentikannya, pergi ke tempat(-tempat) di mana teg ini disetkan untuk dijalankan, dan matikannya di sana.",
+       "tags-delete-reason": "Sebab:",
+       "tags-delete-not-allowed": "Teg-teg yang ditakrifkan oleh sambungan tidak boleh dihapuskan melainkan dibenarkan khususnya oleh sambungan berkenaan.",
+       "tags-delete-not-found": "Teg \"$1\" tidak wujud.",
+       "tags-activate-title": "Hidupkan teg",
+       "tags-activate-question": "Anda bakal menghidupkan teg \"$1\".",
+       "tags-activate-reason": "Sebab:",
+       "tags-activate-not-found": "Teg \"$1\" tidak wujud.",
+       "tags-activate-submit": "Hidupkan",
+       "tags-deactivate-title": "Matikan teg",
+       "tags-deactivate-question": "Anda bakal mematikan teg \"$1\".",
+       "tags-deactivate-reason": "Sebab:",
+       "tags-deactivate-not-allowed": "Teg \"$1\" tidak boleh dimatikan.",
+       "tags-deactivate-submit": "Matikan",
        "comparepages": "Perbandingan laman",
        "compare-page1": "Laman 1",
        "compare-page2": "Laman 2",
        "logentry-upload-upload": "$1 telah {{GENDER:$2|muat naik}} $3",
        "logentry-upload-overwrite": "$1 telah {{GENDER:$2|muat naik}} versi baru $3",
        "logentry-upload-revert": "$1 telah {{GENDER:$2|muat naik}} $3",
+       "log-name-managetags": "Log pengurusan teg",
+       "logentry-managetags-create": "$1 {{GENDER:$2|mencipta}} teg \"$4\"",
+       "logentry-managetags-delete": "$1 {{GENDER:$2|menghapuskan}} teg \"$4\" (digugurkan dari $5 {{PLURAL:$5|semakan atau entri log}})",
+       "logentry-managetags-activate": "$1 {{GENDER:$2|menghidupkan}} teg \"$4\" untuk kegunaan pengguna dan bot",
+       "logentry-managetags-deactivate": "$1 {{GENDER:$2|mematikan}} teg \"$4\" untuk kegunaan pengguna dan bot",
        "rightsnone": "(tiada)",
        "revdelete-summary": "ringkasan",
        "feedback-bugornote": "Jika anda bersedia untuk menerangkan masalah teknikal secara terperinci, sila [$1 laporkan pepijat]. \nAtaupun, anda boleh menggunakan borang yang mudah di bawah. Ulasan anda akan dicatatkan pada laman \"[$3 $2]\", beserta nama pengguna anda dan pelayar yang anda gunakan.",
index dc33700..696cb20 100644 (file)
        "protectedpagetext": "Disse zied is beveiligd. Bewarken of aandere haandelingen bin niet meugelik.",
        "viewsourcetext": "Je kunnen de brontekste van disse zied bewarken en bekieken:",
        "viewyourtext": "Je kunnen '''joew bewarkingen''' an de brontekste van disse zied bekieken en kopiëren:",
-       "protectedinterface": "Op disse zied steet tekste die gebruukt wörden veur systeemteksten van disse wiki. Allinnig beheerders kunnen disse zied bewarken.\nUm vertalingen veur alle wiki's derbie te zetten of te wiezigen, gebruuk [//translatewiki.net/ translatewiki.net], t vertaalprojekt veur MediaWiki.",
+       "protectedinterface": "Op disse zied steet tekste die gebruukt wördt veur systeemteksten van disse wiki. Allinnig beheerders kunnen disse zied bewarken.\nUm vertalingen veur alle wiki's derbie te zetten of te wiezigen, gebruuk [//translatewiki.net/ translatewiki.net], t vertaalprojekt veur MediaWiki.",
        "editinginterface": "<strong>Waorschuwing:</strong> je bewarken n zied die gebruukt wörden deur de programmatuur. Wa'j hier wiezigen, is van invleud op de hele wiki. Um vertalingen derbie te zetten of te wiezigen veur alle wiki's, gebruuk [//translatewiki.net/wiki/Main_Page?setlang=nds-nl translatewiki.net], t vertalingsprojekt veur MediaWiki.",
        "cascadeprotected": "Disse zied is beveiligd umdat t veurkömp in de volgende {{PLURAL:$1|zied|ziejen}}, die beveiligd {{PLURAL:$1|is|bin}} mit de \"kaskade\"-opsie:\n$2",
        "namespaceprotected": "Je maggen gien ziejen in de '''$1'''-naamruumte bewarken.",
        "summary": "Samenvatting:",
        "subject": "Onderwarp:",
        "minoredit": "kleine wieziging",
-       "watchthis": "Volg disse zied",
+       "watchthis": "volg disse zied",
        "savearticle": "Zied opslaon",
        "preview": "Naokieken",
        "showpreview": "Bewarking naokieken",
        "modifiedarticleprotection": "beveiligingsnivo van \"[[$1]]\"  ewiezigd",
        "unprotectedarticle": "hef de beveiliging van \"[[$1]]\" deraof ehaold",
        "movedarticleprotection": "hef de beveiligingsinstellingen over-ezet van \"[[$2]]\" naor \"[[$1]]\"",
-       "protect-title": "Instellen van beveiligingsnivo veur \"$1\"",
+       "protect-title": "Beveiligingsnivo instellen veur \"$1\"",
        "protect-title-notallowed": "Beveiligingsnivo veur \"$1\" bekieken",
        "prot_1movedto2": "[[$1]] is ewiezigd naor [[$2]]",
        "protect-badnamespace-title": "Niet te beveiligen naamruumte",
        "move-page": "Herneum \"$1\"",
        "move-page-legend": "Zied herneumen",
        "movepagetext": "Mit dit formulier ku'j de zied n nieje naam geven, de geschiedenisse geet dan vanzelf mee.\nDe ouwe naam zal automaties n deurverwiezing wörden naor de nieje zied.\nDeurverwiezingen naor de ouwe naam kunnen automaties ewiezigd wörden.\nA'j derveur kiezen um dat niet te doon, kiek t dan effen nao of der [[Special:DoubleRedirects|dubbele]] en [[Special:BrokenRedirects|ebreuken deurverwiezingen]] bin ontstaon.\nt Is an joe um derveur te zörgen dat de deurverwiezingen naor de goeie naam gaon.\n\nn Zied kan '''allinnig''' herneumd wörden as de nieje naam niet besteet of t n deurverwiezing is zonder veerdere geschiedenisse.\nDit betekent da'j n zied weer naor de ouwe naam kunnen herneumen, a'j bieveurbeeld n fout emaakt hebben, zonder da'j de bestaonde zied overschrieven.\n\n'''WAORSCHUWING!'''\nVeur populaere ziejen kan t herneumen drastiese en onveurziene gevolgen hebben.\nZörg derveur da'j de gevolgen overzien veurda'j veerder gaon.",
-       "movepagetext-noredirectfixer": "Mit dit formulier ku'j de zied n nieje naam geven, de geschiedenisse geet dan vanzelf mee.\nDe ouwe naam zal automaties n deurverwiezing wörden naor de nieje zied.\nKiek oek effen nao of der gien [[Special:DoubleRedirects|dubbele]] of [[Special:BrokenRedirects|ebreuken deurverwiezingen]] bin ontstaon.\nt Is an joe um derveur te zörgen dat de deurverwiezingen naor de goeie naam gaon.\n\nn Zied kan '''allinnig''' herneumd wörden as de nieje naam niet besteet of t n deurverwiezing is zonder veerdere geschiedenisse.\nDit betekent da'j n zied weer naor de ouwe naam kunnen herneumen, a'j bieveurbeeld n fout emaakt hebben, zonder da'j de bestaonde zied overschrieven.\n\n'''WAORSCHUWING!'''\nVeur populaere ziejen kan t herneumen drastiese en onveurziene gevolgen hebben.\nZörg derveur da'j de gevolgen overzien veurda'j veerder gaon.",
-       "movepagetalktext": "De overlegzied die derbie heurt krig oek n nieje titel, mer '''niet''' in de volgende gevallen:\n* As de zied in n aandere naamruumte eplaotst wörden\n* As der al n niet-lege overlegzied besteet onder de aandere naam\n* a'j t onderstaonde vinkjen vorthaolen",
+       "movepagetext-noredirectfixer": "Mit dit formulier ku'j de zied n nieje naam geven, de geschiedenisse geet dan vanzelf mee.\nDe ouwe naam zal automaties n deurverwiezing wörden naor de nieje zied.\nKiek oek effen nao of der gien [[Special:DoubleRedirects|dubbele]] of [[Special:BrokenRedirects|ebreuken deurverwiezingen]] bin ontstaon.\nt Is an joe um derveur te zörgen dat de deurverwiezingen naor de goeie naam gaon.\n\nn Zied kan '''allinnig''' herneumd wörden as de nieje naam niet besteet of t n deurverwiezing is zonder veerdere geschiedenisse.\nDit betekent da'j n zied weer naor de ouwe naam herneumen kunnen, a'j bieveurbeeld n fout emaakt hebben, zonder da'j de bestaonde zied overschrieven.\n\n'''WAORSCHUWING!'''\nVeur ziejen die vake bekeken wörden kan t herneumen drastiese en onveurziene gevolgen hebben.\nZörg derveur da'j de gevolgen overzien veurda'j veerder gaon.",
+       "movepagetalktext": "De overlegzied die derbie heurt krig oek n nieje titel, mer '''niet''' in de volgende gevallen:\n* As der al n niet-lege overlegzied besteet onder de aandere naam, of\n* A'j de opsie hieronder uutzetten.\n\nAs dat zo is dan mu'j de zied haandmaotig herneumen of samenvoegen.",
        "movearticle": "Herneum",
        "moveuserpage-warning": "'''Waorschuwing:''' Je staon op t punt um n gebrukerszied te herneumen. Allinnig disse zied zal herneumd wörden, '''niet''' de gebruker.",
        "movenologintext": "Je mutten [[Special:UserLogin|an-emeld]] ween um de naam van n zied te wiezigen.",
        "cant-move-user-page": "Je hebben gien rechten um gebrukersziejen te herneumen.",
        "cant-move-to-user-page": "Je hebben gien rechten um n zied naor n gebrukerszied te herneumen. Herneumen naor n zied die deronder völt ma'j wel doon.",
        "newtitle": "Nieje naam",
-       "move-watch": "volg disse zied",
+       "move-watch": "Volg disse zied",
        "movepagebtn": "Herneum",
        "pagemovedsub": "Naamwieziging suksesvol",
        "movepage-moved": "'''\"$1\" is ewiezigd naor \"$2\"'''",
        "javascripttest-pagetext-frameworks": "Kies een van de volgende testraamwarken: $1",
        "javascripttest-pagetext-skins": "Kies n vormgeving um de tests mee uut te voeren:",
        "javascripttest-qunit-intro": "Zie de [$1 testdokumentasie] op mediawiki.org.",
-       "tooltip-pt-userpage": "Oew gebroekersbladziede",
+       "tooltip-pt-userpage": "Oew gebroekersziede",
        "tooltip-pt-anonuserpage": "Gebroekersbladziede vuur t IP-adres da'j broekt",
        "tooltip-pt-mytalk": "Oew oaverlegbladziede",
        "tooltip-pt-anontalk": "Oaverlegbladziede van n naamlozen gebroeker van dit IP-adres",
        "tooltip-pt-preferences": "Miene vuurkeuren",
-       "tooltip-pt-watchlist": "Lieste van bladzieden die op miene volglieste stoan",
+       "tooltip-pt-watchlist": "Lieste van zieden die op miene volglieste stoan",
        "tooltip-pt-mycontris": "Liest van oew biejdraegen",
        "tooltip-pt-login": "Iej wördt van harte oetneugd um oe an te melden as gebroeker, mer t is nich verplicht",
        "tooltip-pt-logout": "Ofmaelden",
-       "tooltip-ca-talk": "Loat n oaverlegtekst oaver disse bladziede zeen",
-       "tooltip-ca-edit": "Bewaerk disse bladziede",
+       "tooltip-ca-talk": "Loat n oaverlegtekst oaver disse ziede zeen",
+       "tooltip-ca-edit": "Bewaerk disse ziede",
        "tooltip-ca-addsection": "Niej oonderwaerp tovogen",
-       "tooltip-ca-viewsource": "Disse bladziede is beveiligd taegen veraanderen. Iej könt wal kieken noar de bladziede",
-       "tooltip-ca-history": "Oaldere versies van disse bladziede",
-       "tooltip-ca-protect": "Beveilig disse bladziede taegen veraanderen",
-       "tooltip-ca-unprotect": "De beveiliging vuur disse bladziede wiezigen",
-       "tooltip-ca-delete": "Smiet disse bladziede vort",
-       "tooltip-ca-undelete": "Haal n inhoald van disse bladziede oet n emmer",
-       "tooltip-ca-move": "Gef disse bladziede nen aanderen titel",
-       "tooltip-ca-watch": "Voog disse bladziede to an oewe volglieste",
-       "tooltip-ca-unwatch": "Smiet disse bladziede van oewe voalglieste",
-       "tooltip-search": "{{SITENAME}} duurzeukn",
-       "tooltip-search-go": "Noar n bladziede mit disse naam goan as t besteet",
-       "tooltip-search-fulltext": "Zeuk noar ziedn woar disse tekst in steet",
+       "tooltip-ca-viewsource": "Disse ziede is beveiligd taegen veraanderen. Iej könt wal kieken noar de ziede",
+       "tooltip-ca-history": "Oaldere versies van disse ziede",
+       "tooltip-ca-protect": "Beveilig disse ziede taegen veraanderen",
+       "tooltip-ca-unprotect": "De beveiliging vuur disse ziede wiezigen",
+       "tooltip-ca-delete": "Smiet disse ziede vort",
+       "tooltip-ca-undelete": "Haal n inhoald van disse ziede oet n emmer",
+       "tooltip-ca-move": "Gef disse ziede nen aanderen titel",
+       "tooltip-ca-watch": "Voog disse ziede to an oewe volglieste",
+       "tooltip-ca-unwatch": "Smiet disse ziede van oewe voalglieste",
+       "tooltip-search": "{{SITENAME}} duurzeuken",
+       "tooltip-search-go": "Noar n ziede mit disse naam goan as t besteet",
+       "tooltip-search-fulltext": "Zeuk noar zieden woar disse tekst in steet",
        "tooltip-p-logo": "Goa noar t vuurblad",
        "tooltip-n-mainpage": "Goa noar t vuurblad",
        "tooltip-n-mainpage-description": "Goa noar t vuurblad",
        "tooltip-n-portal": "Informoasie oaver t projekt: wel, wat, ho en woarum",
        "tooltip-n-currentevents": "Achtergroondinformoasie oaver dinge in t niejs",
        "tooltip-n-recentchanges": "Lieste van pas verrichte veraanderingen",
-       "tooltip-n-randompage": "Loat ne willekeurige bladziede zeen",
+       "tooltip-n-randompage": "Loat ne willekeurige ziede zeen",
        "tooltip-n-help": "Hölpinformoasie oaver {{SITENAME}}",
-       "tooltip-t-whatlinkshere": "Lieste van alle bladzieden die hiernoar verwiezen",
-       "tooltip-t-recentchangeslinked": "Pas verrichte veraanderingen die noar disse bladziede verwiezen",
-       "tooltip-feed-rss": "RSS-voer vuur disse bladziede",
-       "tooltip-feed-atom": "Atom-voer vuur disse bladziede",
+       "tooltip-t-whatlinkshere": "Lieste van alle zieden die hiernoar verwiezen",
+       "tooltip-t-recentchangeslinked": "Pas verrichte veraanderingen die noar disse ziede verwiezen",
+       "tooltip-feed-rss": "RSS-voer vuur disse ziede",
+       "tooltip-feed-atom": "Atom-voer vuur disse ziede",
        "tooltip-t-contributions": "Lieste met biejdraegen van disse gebroeker",
        "tooltip-t-emailuser": "Stuur disse gebroeker n netpostbericht",
+       "tooltip-t-info": "Meer informasie over disse zied",
        "tooltip-t-upload": "Laad ofbeeldingen en/of geluudsmateriaal",
-       "tooltip-t-specialpages": "Lieste van alle biejzeundere bladzieden",
-       "tooltip-t-print": "De ofdrukboare versie van disse bladziede",
-       "tooltip-t-permalink": "Verbeending vuur altied noar de versie van disse bladziede van vandaag-an-n-dag",
+       "tooltip-t-specialpages": "Lieste van alle biejzeundere zieden",
+       "tooltip-t-print": "De ofdrukboare versie van disse ziede",
+       "tooltip-t-permalink": "Verbeending vuur altied noar de versie van disse ziede van vandaag-an-n-dag",
        "tooltip-ca-nstab-main": "Loat n tekst van t artikel zeen",
        "tooltip-ca-nstab-user": "Loat de gebroekersbladziede zeen",
        "tooltip-ca-nstab-media": "Loat n mediatekst zeen",
-       "tooltip-ca-nstab-special": "Dit is ne biejzeundere bladziede die'j nich könt veraanderen",
+       "tooltip-ca-nstab-special": "Dit is ne biejzeundere ziede die'j nich könt veraanderen",
        "tooltip-ca-nstab-project": "Loat de projektbladziede zeen",
        "tooltip-ca-nstab-image": "Loat de bestaandsbladziede zeen",
        "tooltip-ca-nstab-mediawiki": "Loat de systeemtekstbladziede zeen",
        "tooltip-preview": "Bekiek oew versie vuurda'j t opsloan (anbeveulen)!",
        "tooltip-diff": "Bekiek oew aegen wiezigingen",
        "tooltip-compareselectedversions": "Bekiek de verschillen tussen de ekeuzen versies.",
-       "tooltip-watch": "Voog disse bladziede to an oew volglieste",
+       "tooltip-watch": "Voog disse ziede to an oew volglieste",
        "tooltip-watchlistedit-normal-submit": "Ziejen vortdoon",
        "tooltip-watchlistedit-raw-submit": "Volglieste biewarken",
-       "tooltip-recreate": "Disse bladziede opniej anmaken, ondanks t feit dat t vortdoan is.",
-       "tooltip-upload": "Bestaanden tovogen",
-       "tooltip-rollback": "Mit \"weerummedreien\" kö'j mit één klik de bewaerking(en) van n leste gebroeker dee disse bladziede bewaerkt hef terugdraeien.",
-       "tooltip-undo": "A'j op \"weerummedreien\" klikken geet t bewaerkingsvaenster lös en kö'j ne vurige versie terugzetten.\nIej könt in de bewearkingssamenvatting n reden opgeven.",
+       "tooltip-recreate": "Disse ziede opniej anmaken, ondanks t feit dat t vortdoan is.",
+       "tooltip-upload": "Bestaanden opsturen",
+       "tooltip-rollback": "Mit \"weerummedreien\" kö'j mit één klik de bewaerking(en) van n leste gebroeker dee disse ziede bewaerkt hef terugdraeien.",
+       "tooltip-undo": "A'j op \"weerummedreien\" klikken geet t bewaerkingsvaenster lös en kö'j ne vurige versie terugzetten.\nIej könt in de bewaerkingssamenvatting n reden opgeven.",
        "tooltip-preferences-save": "Vuurkeuren opsloan",
        "tooltip-summary": "Voer ne korte samenvatting in",
        "interlanguage-link-title": "$1 – $2",
        "version-ext-colheader-license": "Lisensie",
        "version-ext-colheader-description": "Beschrieving",
        "version-ext-colheader-credits": "Auteurs",
-       "version-poweredby-credits": "Disse wiki wörden an-estuurd deur '''[https://www.mediawiki.org/ MediaWiki]''', auteursrecht © 2001-$1 $2.",
+       "version-poweredby-credits": "Disse wiki wördt an-estuurd deur '''[https://www.mediawiki.org/ MediaWiki]''', auteursrecht © 2001-$1 $2.",
        "version-poweredby-others": "aanderen",
        "version-poweredby-translators": "vertalers van translatewiki.net",
        "version-credits-summary": "Wulen erkennen grege de volgende personen veur der biedrage an [[Special:Version|MediaWiki]].",
        "expand_templates_generate_xml": "XML-parserboom bekieken",
        "expand_templates_preview": "Naokieken",
        "pagelang-language": "Taal",
+       "mediastatistics": "Mediastaotistieken",
        "mediastatistics-header-audio": "Audio",
        "mediastatistics-header-video": "Video's",
        "mediastatistics-header-multimedia": "Interaktieve media"
index c96e2e7..3e98011 100644 (file)
        "right-userrights": "I-edit la ngan deng katulirang talagamit (user rights)",
        "right-userrights-interwiki": "I-edit la reng katulirang talagamit (user rights) da reng talagamit kareng aliwang karinan a wiki",
        "right-siteadmin": "Isara ya ampong ibusni ing database",
+       "right-managechangetags": "Maglalang at magbura [[Special:Tags|tags]] ibat database",
        "newuserlogpage": "Tala ning pamaglalang talagamit (''User creation log'')",
        "rightslog": "Tala da reng katulirang talagamit (user rights log)",
        "rightslogtext": "Ini tala de reng miyalilan king katulirang talagamit (user rights).",
        "action-edit": "i-edit/alilan ya ing bulung a ini",
+       "action-managechangetags": "maglalang at magbura tags ibat database",
        "nchanges": "$1 {{PLURAL:$1|miyalilan|miyalilan}}",
        "recentchanges": "Bayung mengayalili",
        "recentchanges-legend": "Pipamilinan kareng bayung mengayalili",
        "delete-toobig": "Maki maragul yang amlat ning pamag-edit ing bulung a ini, nung nu maigit lang $1 deng miyalilan.\nMe-limita ing pamamura kareng bulung a anti kaniti, bang e maliliari ing e sasarian a kaguluan o pamag-distorbu king {{SITENAME}}.",
        "delete-warning-toobig": "Makaba ya ing amlat ding mibayu/me-edit ning bulung a ini, maigit la king $1 ding pamagbayu.\nPosibling miyapektuan ing palakad ning database ning {{SITENAME}};\npakakalale ka.",
        "rollback": "Iurung la retang me-edit",
-       "rollback_short": "Iurung",
        "rollbacklink": "i-urung",
        "rollbackfailed": "E melaus ing pamanurung",
        "cantrollback": "E malyaring ibalik itang miyalilan; bukud mung ing tawling minambag yang sinulat king bulung a ini.",
        "specialpages-group-media": "Ulat king media ampong pamaglulan (uploads)",
        "specialpages-group-users": "Talagamit ampong katuliran",
        "specialpages-group-highuse": "Deng bulung a magamitan",
+       "tags-source-header": "Pikwanan",
+       "tags-actions-header": "Deng aksyun",
+       "tags-source-none": "Ali ne gagamitan",
+       "tags-delete": "buran",
+       "tags-activate": "iyaktiba",
+       "tags-create-heading": "Maglalang ning bayung tag",
+       "tags-create-tag-name": "Tag lagyu",
+       "tags-create-reason": "Dayilan:",
+       "tags-create-submit": "Maglalang",
+       "tags-create-already-exists": "Ati yu ne ing tag \"$1\".",
+       "tags-delete-title": "Buran ya ing tag",
+       "tags-delete-reason": "Sangkan:",
+       "tags-activate-title": "Iyaktiba ing tag",
+       "tags-activate-not-found": "Ala yu ing tag \"$1\"",
+       "tags-activate-submit": "Iyaktiba",
+       "tags-deactivate-reason": "Sangkan:",
        "revdelete-restricted": "ipairal la reng limitasiun kareng sysop",
        "revdelete-unrestricted": "ilako la reng makabawal kareng sysops",
        "rightsnone": "(ala)",
index 4f403a4..cb09a79 100644 (file)
        "tags-source-header": "Sorgiss",
        "tags-active-header": "Ativ?",
        "tags-hitcount-header": "Modìfiche con tichëtta",
+       "tags-actions-header": "Assion",
        "tags-active-yes": "Bò",
        "tags-active-no": "Nò",
+       "tags-source-extension": "Definì da n'estension",
+       "tags-source-manual": "Aplicà a man da utent e trigomiro",
+       "tags-source-none": "Pi nen dovrà",
        "tags-edit": "modifiché",
+       "tags-delete": "dëscancelé",
+       "tags-activate": "ativé",
+       "tags-deactivate": "disativé",
        "tags-hitcount": "$1 {{PLURAL:$1|cambiament|cambiament}}",
+       "tags-manage-no-permission": "A l'ha nen ël përmess ëd gestì le modìfiche dle tichëtte.",
+       "tags-create-heading": "Creé na neuva tichëtta",
+       "tags-create-explanation": "Për sòlit, le neuve tichëtte creà a saran disponìbij për esse dovrà da j'utent e dai trigomiro.",
+       "tags-create-tag-name": "Nòm ëd la tichëtta",
+       "tags-create-reason": "Rason:",
+       "tags-create-submit": "Creé",
        "comparepages": "Confronté dle pàgine",
        "compare-page1": "Pàgina 1",
        "compare-page2": "Pàgina 2",
index ce7e617..b120310 100644 (file)
@@ -31,7 +31,7 @@
        "tog-shownumberswatching": "د کتونکو کارنانو شمېر ښکاره کول",
        "tog-oldsig": "اوسنی لاسليک:",
        "tog-fancysig": "لاسليک د ويکي متن په توگه په پام کې نيول (د خپلکاره تړن د تړلو پرته)",
-       "tog-uselivepreview": "ژوندۍ مخليدنه کارول (آزمېښتي)",
+       "tog-uselivepreview": "ژوندۍ مخليدنه کارول",
        "tog-forceeditsummary": "د يوه تش سمون لنډيز په ورکولو سره دې خبر راکړل شي",
        "tog-watchlisthideown": "په کتنلړ کې زما سمونې پټول",
        "tog-watchlisthidebots": "په کتنلړ کې د روباټ سمونې پټول",
        "viewsourcetext": "تاسې د دې مخ سرچينه کتلی او لمېسلی شی:",
        "viewyourtext": "تاسې په دې مخ کې د '''خپلو سمونونو''' سرچينه کتلی او لمېسلی شی:",
        "protectedinterface": "دا مخ د دې ويکي د ساوترې د ليدنمخ متن لري، او د ورانکارۍ په خاطر ژغورل شوی.\nپه ټولو ويکي گانو کې د ژباړې د ورگډولو او يا هم د ژباړې د سمون او بدلون لپاره د مېډياويکي د ځايتابه پروژه [//translatewiki.net/ translatewiki.net] وکاروۍ.",
-       "editinginterface": "'''گواښنه:''' تاسو په يوه داسې مخ کې بدلون راولی کوم چې د يوې پوستکالی د ليدنمخ متن په توگه کارېږي.\nپه همدې مخ کې بدلون راوستل به د نورو کارنانو د ليدنمخ بڼه اغېزمنه کړي.\nد ژباړې د ورگډولو او بدلون لپاره، مهرباني وکړی د [//translatewiki.net/wiki/Main_Page?setlang=en translatewiki.net]، وېبځي ته ولاړ شی. دا وېبځی د ميډياويکي د ځايتابه پروژه ده.",
+       "editinginterface": "<strong>گواښنه:</strong> تاسې چې په دې مخ کې بدلون راولۍ همدا مخ د يوې ساوترې د ليدنمخ متن په توگه کارېږي.\nد دې مخ بدلون به د ټولو کارنانو لپاره د ليدنمخ بڼه اغېزمنه کړي.",
        "namespaceprotected": "تاسې د '''$1''' په نوم-تشيال کې د مخونو د سمولو اجازه نه لرۍ.",
        "customcssprotected": "تاسې د دې CSS مخ د سمولو اجازه نه لرۍ، دا ځکه چې دا مخ د بل کارن شخصي امستنې لري.",
        "customjsprotected": "تاسې د دې جاواسکرېپټ مخ د سمولو اجازه نه لرۍ، دا ځکه چې دا مخ د بل کارن شخصي امستنې لري.",
        "preview": "مخليدنه",
        "showpreview": "مخليدنه",
        "showdiff": "بدلونونه ښکاره کول",
-       "anoneditwarning": "'''يادونه:''' تاسې غونډال ته نه ياست ننوتي. ستاسې IP پته به د دې مخ د سمونونو په پېښليک کې ثبت شي.",
+       "anoneditwarning": "<strong>گواښنه:</strong>  تاسې غونډال کې نه ياست ننوتي. که تاسې کوم سمونونه ترسره کوۍ نو ستاسې IP پته به ټولو ته د دې مخ د سمونونو په پېښليک کې ښکاري. که تاسې په خپل نوم <strong>[$1 کې ننوځئ]</strong> يا <strong>[$2 يو گڼون جوړ کړئ]</strong>، نو ستاسې سمونونه به ستاسې کارن-نوم اړونده ثبت شي چې ډېرې نورې گټې هم لري.",
        "anonpreviewwarning": "''تاسې غونډال ته نه ياست ننوتي. خوندي کولو سره به ستاسې IP پته به د دې مخ د سمونونو په پېښليک کې ثبت شي.''",
        "missingcommenttext": "لطفاً تبصره لاندې وليکۍ.",
        "summary-preview": "د لنډيز مخليدنه:",
        "currentrev": "اوسنۍ بڼه",
        "currentrev-asof": "د $1 پورې تازه بڼه",
        "revisionasof": "د $1 بڼه",
-       "revision-info": "د $1 Ù¾Ù\88رÛ\90 Ø´ØªÙ\87 Ù\85Ø®Ù\84Ù\8aدÙ\86Ù\87Ø\8c Ø¯ $2 لخوا ترسره شوې",
+       "revision-info": "تر $1 Ù¾Ù\88رÛ\90 Ø´ØªÙ\87 Ù\85Ø®Ù\84Ù\8aدÙ\86Ù\87Ø\8c Ø¯ {{GENDER:$6|$2}}$7 لخوا ترسره شوې",
        "previousrevision": "← زړه بڼه",
        "nextrevision": "← نوې بڼه",
        "currentrevisionlink": "اوسنۍ بڼه",
        "history-feed-empty": "ستاسې غوښتلی مخ نه شته.\nکېدای شي چې دا له ويکي نه ړنگ شوی وي، او يا هم په بل نوم بدل شوی وي.\nتاسې په دې ويکي د اړوندو نوؤ مخونو لپاره [[Special:Search|د پلټنې هڅه وکړۍ]].",
        "rev-deleted-comment": "(د سمون لنډيز لرې شو)",
        "rev-deleted-user": "(کارن-نوم ليري شوی)",
-       "rev-delundel": "ښکاره کول/ پټول",
+       "rev-delundel": "ښکارېدنه بدلول",
        "rev-showdeleted": "ښکاره کول",
        "revisiondelete": "د ړنگولو/ناړنگولو مخکتنې",
        "revdelete-no-file": "ځانگړې شوې دوتنه نشته.",
        "revdelete-legend": "د ښکارېدنې محدوديتونه ټاکل",
        "revdelete-hide-text": "د مخکتنې متن",
        "revdelete-hide-image": "د دوتنې مېنځپانگه پټول",
-       "revdelete-hide-name": "کړنه او موخه پټول",
+       "revdelete-hide-name": "کړنې او موخې پټول",
        "revdelete-hide-comment": "د سمون لنډيز",
        "revdelete-hide-user": "د سمونگر کارن-نوم/آی پي پته",
        "revdelete-radio-same": "(مه بدلوه)",
        "revdelete-log": "سبب:",
        "revdel-restore": "ښکارېدنه بدلول",
        "pagehist": "د مخ پېښليک",
-       "deletedhist": "د ړنگولو پېښليک",
+       "deletedhist": "ړنگېدلی پېښليک",
        "revdelete-reason-dropdown": "*د ړنگولو ټولگړي سببونه\n** د خپرېدو د رښتو سرغړونه\n** ناسم شخصي مالومات\n** پارونکي او بلواگر مالومات",
        "revdelete-otherreason": "بل/اضافي سبب:",
        "revdelete-reasonotherlist": "بل سبب",
        "preferences": "غوره توبونه",
        "mypreferences": "غوره توبونه",
        "prefs-edits": "د سمونو شمېر:",
-       "prefsnologintext2": "د ØºÙ\88رÙ\87 ØªÙ\88بÙ\88Ù\86Ù\88 Ø¨Ø¯Ù\84Ù\88Ù\86 Ù\84پارÙ\87 Ù\85Ù\88 $1 ØªØ±Ø³Ø±Ù\87 Ú©Ú\93ئ.",
+       "prefsnologintext2": "د ØºÙ\88رÙ\87 ØªÙ\88بÙ\88Ù\86Ù\88 Ø¨Ø¯Ù\84Ù\88Ù\84Ù\88 Ù\84پارÙ\87 Ù\85Ù\88 ØºÙ\88Ù\86Ú\89اÙ\84 ØªÙ\87 Ù\86Ù\86Ù\88Ú\81ئ.",
        "prefs-skin": "پوښۍ",
        "skin-preview": "مخکتنه",
        "datedefault": "هېڅ نه ټاکل",
        "gender-male": "نارينه",
        "gender-female": "ښځينه",
        "email": "برېښليک",
-       "prefs-help-realname": "د Ø¢Ø± Ù\86Ù\88Ù\85 Ù\84Ù\8aÚ©Ù\84 Ø³ØªØ§Ø³Û\90 Ù¾Ù\87 Ø®Ù\88Ú\9aÙ\87 Ø¯Û\8c Ø®Ù\88 Ú©Ù\87 ØªØ§Ø³Û\90 Ø®Ù¾Ù\84 Ø¢Ø± Ù\86Ù\88Ù\85 Ù\88ټاکÛ\8d Ù¾Ø¯Û\90 Ø³Ø±Ù\87 Ø¨Ù\87 Ø³ØªØ§Ø³Û\90 Ù¼Ù\88Ù\84 Ú©Ø§Ø±Ù\88Ù\86Ù\87 Ø§Ù\88 Ù\88Ù\86Ú\89Û\90 Ø³ØªØ§Ø³Û\90 Ø¯ Ù\86Ù\88Ù\85 Ù¾Ù\87 Ø§Ú\93Ù\88Ù\86دÙ\88Ù\84Ù\88 Ú©Û\90 Ù\88کارÛ\90Ú\96ي.",
+       "prefs-help-realname": "آر Ù\86Ù\88Ù\85 Ù\88رکÙ\88Ù\84 Ø³ØªØ§Ø³Û\90 Ø¯ Ø®Ù\88Ú\9aÛ\90 Ú©Ø§Ø± Ø¯Û\8c.\nÚ©Ù\87 ØªØ§Ø³Û\90 Ø®Ù¾Ù\84 Ø¢Ø± Ù\86Ù\88Ù\85 Ù\88رکÚ\93Û\8dØ\8c Ù\86Ù\88 Ø³ØªØ§Ø³Û\90 Ù¼Ù\88Ù\84Û\90 Ú©Ú\93Ù\86Û\90 Ø¨Ù\87 Ø³ØªØ§Ø³Û\90 Ù¾Ù\87 Ù\86Ù\88Ù\85 Ø§Ú\93Ù\88Ù\86دÛ\90 Ø´ي.",
        "prefs-help-email": "د برېښليک ورکړه ستاسې په خوښه ده، خو په ورکړې سره به يې د يوه نوي پټنوم د لېږلو چار آسانه کړي هغه هم کله چې تاسې نه خپل پټنوم هېر شوی وي.",
        "prefs-help-email-others": "تاسې دا هم ټاکلی شی چې نور کارنان ستاسې د خبرو اترو او يا د کارن مخ يوې تړنې له لارې له تاسې سره برېښليکي اړيکه ونيسي.\nد اړيکو ټينگولو په وخت کې به ستاسې برېښليک پته نورو کارنانو ته نه ښکاري.",
        "prefs-help-email-required": "ستاسو د برېښليک پته پکار ده.",
        "minoreditletter": "و",
        "newpageletter": "ن",
        "boteditletter": "ر",
-       "number_of_watching_users_pageview": "[$1  {{PLURAL:$1|کارن|کارنان}} يې ګوري]",
+       "number_of_watching_users_pageview": "[$1  {{PLURAL:$1|کتونکی کارن|کتونکي کارنان}}]",
+       "rc_categories": "د وېشنيزو بريدونه (په \"|\" بېلول)",
        "rc_categories_any": "هر يو",
        "rc-change-size-new": "$1 {{PLURAL:$1|بايټ|بايټونه}} د بدلون وروسته",
        "newsectionsummary": "/* $1 */ نوې برخه",
        "uploaderror": "د پورته کولو ستونزه",
        "uploadtext": "د دوتنې د پورته کېدو لپاره لاندينی چوکاټ وکاروۍ.\nکه چېرته د پخونيو پورته شويو دوتنو کتل او پلټل غواړۍ نو [[Special:FileList|د پورته شويو دوتنو لړليک]] ته ورشۍ، [[Special:Log/upload|د (بيا) پورته شويو دوتنو يادښتونه]] او [[Special:Log/delete|د ړنگېدو يادښتونه]] هم کتلای شی.\n\nددې لپاره چې يوه مخ ته انځور ورواچوی، نو بيا پدې ډول تړنې (لېنک) وکاروی\n* د يوې دوتنې د بشپړې بڼې د کارولو په موخه د '''<code><nowiki>[[</nowiki>{{ns:file}}<nowiki>:File.jpg]]</nowiki></code>''' کوډ وکاروۍ.\n* د '۲۰۰ پېکسل' په کچه د 'بټنوک' په توگه د يوې دوتنې کارول چې د مخ کيڼې څنډې کې او ترلاندې 'د انځور څرگندونې' ولري، نو د دې موخې لپاره د '''<code><nowiki>[[</nowiki>{{ns:file}}<nowiki>:File.png|200px|بټنوک|کيڼ|د انځور څرگندونې]]</nowiki></code>''' کوډ وکاروۍ.\n* د انځور د ښودلو نه پرته، د دوتنې سره د سيخې تړنې لپاره د '''<code><nowiki>[[</nowiki>{{ns:media}}<nowiki>:File.ogg]]</nowiki></code>''' کوډ وکاروۍ.",
        "upload-permitted": "د پرېښودلو دوتنو ډولونه: $1.",
-       "upload-preferred": "د غوره دوتنو ډولونه: $1.",
+       "upload-preferred": "د غوره {{PLURAL:$2|دوتنې ډول|دوتنو ډول}}: $1.",
        "upload-prohibited": "د منع شويو دوتنو ډولونه: $1.",
        "uploadlogpage": "د پورته شويو دوتنو يادښت",
        "uploadlogpagetext": "دا لاندې د نوو پورته شوو دوتنو لړليک دی.",
        "randompage": "ناټاکلی مخ",
        "randompage-nopages": "په لانديني {{PLURAL:$2|نوم-تشيال|نوم-تشيالونو}} کې هېڅ کوم مخ نشته: $1.",
        "randomincategory": "په وېشنيزه کې ناټاکلی مخ",
+       "randomincategory-category": "وېشنيزه:",
+       "randomincategory-legend": "په وېشنيزه کې ناټاکلی مخ",
        "randomredirect": "ناټاکلی ورگرځېدنه",
        "statistics": "شمار",
        "statistics-header-pages": "د مخونو شمار",
        "protectedpages-expiry": "پای نېټه",
        "protectedpages-reason": "سبب",
        "protectedpages-unknown-timestamp": "ناجوت",
+       "protectedpages-unknown-performer": "ناڅرگنده کارن",
        "protectedtitles": "ژغورلي سرليکونه",
        "listusers": "کارن لړليک",
        "listusers-editsonly": "يوازې هغه کارنان چې سمونونه يې کړي ښکاره کول",
        "suppress": "څارن",
        "booksources": "د کتاب سرچينې",
        "booksources-search-legend": "د کتابي سرچينو پلټنه",
+       "booksources-search": "پلټل",
        "booksources-text": "دا لاندې د هغه وېبځايونو د تړنو لړليک دی چېرته چې نوي او زاړه کتابونه پلورل کېږي، او يا هم کېدای شي چې د هغه کتاب په هکله مالومات ولري کوم چې تاسو ورپسې لټېږۍ:",
        "specialloguserlabel": "ترسره کوونکی:",
        "speciallogtitlelabel": "موخه (سرليک يا کارن):",
        "wlheader-enotif": "برېښليک خبرونه چارنه شوې.",
        "wlheader-showupdated": "هغه مخونه چې ستاسې د کتلو نه وروسته بدلون موندلی په '''روڼ''' ليک په نښه شوي.",
        "wlnote": "دلته لاندې {{PLURAL:$1|وروستی بدلون دی|وروستي '''$1''' بدلونونه دي}} چې په {{PLURAL:$2|تېر ساعت|تېرو '''$2''' ساعتونو}} کې تر $3 نېټې او $4 بجو پېښ شوي.",
-       "wlshowlast": "وروستي $1 ساعتونه $2 ورځې  ښکاره کړه",
+       "wlshowlast": "وروستي $1 ساعتونه $2 ورځې ښکاره کول",
        "watchlist-options": "د کتنلړ خوښنې",
        "watching": "د کتلو په حال کې...",
        "unwatching": "د نه کتلو په حال کې...",
        "deletereasonotherlist": "بل سبب",
        "deletereason-dropdown": "*د ړنگولو ټولگړی سبب\n** چټيات\n** د پوهې سره دښمني\n** د رښتو تېری\n** د ليکوال غوښتنه\n** ناسمه مخ گرځېدنه",
        "delete-edit-reasonlist": "د ړنگولو سببونه سمول",
-       "rollback_short": "په شابېول",
        "rollbacklink": "په شابېول",
        "rollbacklinkcount": "$1 {{PLURAL:$1|سمون|سمونونه}} پرشابېول",
        "protectlogpage": "د ژغورنې يادښت",
        "whatlinkshere-filters": "چاڼگرونه",
        "block": "په کارن بنديز لگول",
        "unblock": "کارن له بنديزه وېستل",
-       "blockip": "په کارن بنديز لگول",
+       "blockip": "په {{GENDER:$1|کارن}} بنديز لگول",
        "blockip-legend": "په کارن بنديز لگول",
        "ipaddressorusername": "IP پته يا کارن نوم",
        "ipbexpiry": "د پای نېټه:",
        "ipb-unblock-addr": "له $1 بنديز ليرې کول",
        "ipb-unblock": "له يوه کارن-نوم يا IP پتې بنديز ليري کول",
        "ipb-blocklist": "شته بنديزونه کتل",
-       "ipb-blocklist-contribs": "د $1 ونډې",
+       "ipb-blocklist-contribs": "د {{GENDER:$1|$1}} ونډې",
        "unblockip": "کارن له بنديزه وېستل",
        "unblockiptext": "د لاندې فورمې په کارولو سره يو بنديز شوي کارن يا آی پي پتې ته د ليکلو لاسرسی ورکولی شی.",
        "ipusubmit": "دا بنديز ليرې کول",
        "movereason": "سبب:",
        "revertmove": "په څټ گرځول",
        "delete_and_move": "ړنگول او لېږدول",
+       "delete_and_move_text": "== د ړنگولو اړتيا ==\nد \"[[:$1]]\" په نوم مخ له پخوا څخه شته.\nآيا د دې په ړنگولو سره لېږدولو ته لاره هوارول غواړۍ؟",
        "delete_and_move_confirm": "هو, دا مخ ړنگ کړه",
        "immobile-source-page": "دا مخ نه لېږدېدنونکی دی",
        "imageinvalidfilename": "د موخنې دوتنې نوم سم نه دی",
        "thumbnail_error": "د  بټنوک د جوړېدنې ستونزه: $1",
        "import-interwiki-history": "د دې مخ د پېښليک ټولې بڼې لمېسل",
        "import-interwiki-templates": "ټولې کينډۍ نغاړل",
+       "import-interwiki-submit": "رالېږدول",
        "import-interwiki-namespace": "د موخې نوم-تشيال:",
        "import-upload-filename": "د دوتنې نوم:",
        "import-comment": "تبصره:",
        "import-revision-count": "$1 {{PLURAL:$1|بڼه|بڼې}}",
+       "importnopages": "د رالېږدولو لپاره مخونه نشته.",
        "importlogpage": "د واردولو يادښت",
-       "import-logentry-upload-detail": "$1 {{PLURAL:$1|بڼه|بڼې}}",
+       "import-logentry-upload-detail": "$1 {{PLURAL:$1|بڼه|بڼې}} راولېږدېدې",
        "javascripttest": "د جاوا سکرېپټ آزمېښت",
        "tooltip-pt-userpage": "ستاسې کارن مخ",
        "tooltip-pt-mytalk": "ستاسې د خبرواترو مخ",
        "ilsubmit": "پلټل",
        "bydate": "د نېټې له مخې",
        "sp-newimages-showfrom": "هغه نوې دوتنې چې په $1 په $2 بجو پيلېږي ښکاره کول",
-       "hours-abbrev": "$1ګ",
+       "hours-abbrev": "$1 گ",
        "seconds": "{{PLURAL:$1|$1 ثانيه|$1 ثانيې}}",
        "minutes": "{{PLURAL:$1|$1 دقيقه|$1 دقيقې}}",
        "hours": "{{PLURAL:$1|$1 ساعت|$1 ساعتونه}}",
        "duplicate-defaultsort": "'''گواښنه:'''د \"$2\" تلواليزه اوډون تڼۍ تر دې پخوا ټاکلې تلواليزه اوډون تڼۍ \"$1\" پر ځای چارنه کېږي.",
        "version": "بڼه",
        "version-extensions": "لگېدلي شاتاړي",
-       "version-skins": "پوښۍ",
+       "version-skins": "Ù\86صب Ø´Ù\88Û\90 Ù¾Ù\88Ú\9aÛ\8d",
        "version-specialpages": "ځانگړي مخونه",
        "version-other": "بل",
        "version-hooks": "کونډۍ",
        "version-version": "(بڼه $1)",
        "version-license": "مېډياويکي منښتليک",
        "version-ext-license": "منښتليک",
+       "version-skin-colheader-name": "پوښۍ",
+       "version-ext-colheader-version": "بڼه",
        "version-ext-colheader-license": "منښتليک",
        "version-ext-colheader-description": "څرگندونه",
        "version-ext-colheader-credits": "ليکوالان",
        "version-software-product": "اېبره",
        "version-software-version": "بڼه",
        "version-entrypoints-header-url": "يو آر اېل",
+       "version-libraries-library": "کتابتون",
+       "version-libraries-version": "بڼه",
        "redirect-submit": "ورځه",
        "redirect-value": "ارزښت:",
        "redirect-user": "کارن پېژند",
        "tag-filter-submit": "چاڼگر",
        "tags-display-header": "د بدلون په لړليکونو کې ښکارېدنه",
        "tags-description-header": "د مانا بشپړه څرگندونه",
+       "tags-source-header": "سرچينه",
        "tags-active-header": "فعال؟",
+       "tags-actions-header": "کړنې",
        "tags-active-yes": "هو",
        "tags-active-no": "نه",
        "tags-edit": "سمول",
+       "tags-delete": "ړنگول",
+       "tags-activate": "فعالول",
+       "tags-deactivate": "نافعالول",
        "tags-hitcount": "$1 {{PLURAL:$1|بدلون|بدلونونه}}",
+       "tags-create-reason": "سبب:",
+       "tags-create-submit": "جوړول",
+       "tags-delete-reason": "سبب:",
+       "tags-activate-reason": "سبب:",
+       "tags-activate-submit": "فعالول",
+       "tags-deactivate-reason": "سبب:",
+       "tags-deactivate-submit": "نافعالول",
        "comparepages": "مخونه پرتلل",
        "compare-page1": "۱ مخ",
        "compare-page2": "۲ مخ",
        "htmlform-selectorother-other": "بل",
        "htmlform-no": "نه",
        "htmlform-yes": "هو",
+       "htmlform-cloner-create": "نور ورگډول",
+       "htmlform-cloner-delete": "غورځول",
        "logentry-delete-delete": "$1 د $3 مخ {{GENDER:$2|ړنگ کړ}}",
        "revdelete-content-hid": "مېنځپانگه پټېدلې",
        "revdelete-uname-hid": "کارن نوم پټ شوی",
        "limitreport-walltime": "اصلي وخت کارېدنه",
        "limitreport-walltime-value": "$1 {{PLURAL:$1|ثانيه|ثانيې}}",
        "limitreport-postexpandincludesize-value": "$1/$2 {{PLURAL:$2|بايټ|بايټونه}}",
+       "limitreport-templateargumentsize-value": "$1/$2 {{PLURAL:$2|بايټ|بايټونه}}",
        "expandtemplates": "کينډۍ غځول",
        "expand_templates_input": "ځايونکی متن:",
        "expand_templates_output": "پايله",
        "expand_templates_ok": "ښه",
+       "expand_templates_remove_comments": "تبصرې غورځول",
        "expand_templates_remove_nowiki": "په پايلو کې د <nowiki> نښلنونه ځپل",
        "expand_templates_generate_rawhtml": "خام HTML ښکاره کول",
        "expand_templates_preview": "مخکتنه",
+       "pagelanguage": "د مخ ژبټاکونکی",
+       "pagelang-name": "مخ",
+       "pagelang-language": "ژبه",
+       "pagelang-use-default": "تلواليزه ژبه کارول",
+       "pagelang-select-lang": "ژبه ټاکل",
+       "right-pagelang": "د مخ ژبه بدلول",
+       "action-pagelang": "د مخ ژبه بدلول",
+       "log-name-pagelang": "ژبيادښت بدلول",
+       "default-skin-not-found-row-enabled": "* <code>$1</code> / $2 (چارن)",
+       "default-skin-not-found-row-disabled": "* <code>$1</code> / $2 ('''ناچارن''')",
        "mediastatistics": "د رسنيو شمار",
+       "mediastatistics-nbytes": "{{PLURAL:$1|$1 بايټ|$1 بايټونه}} ($2; $3%)",
+       "mediastatistics-table-mimetype": "MIME بڼه",
        "mediastatistics-table-count": "د دوتنو شمېر",
-       "mediastatistics-header-audio": "غږ"
+       "mediastatistics-header-unknown": "ناجوت",
+       "mediastatistics-header-bitmap": "بېټ مپ انځورونه",
+       "mediastatistics-header-drawing": "رسمونه (وېکټور انځورونه)",
+       "mediastatistics-header-audio": "غږ",
+       "mediastatistics-header-video": "ويډيوگانې",
+       "mediastatistics-header-multimedia": "بډايه رسنۍ",
+       "mediastatistics-header-office": "دفتر",
+       "mediastatistics-header-text": "متني"
 }
index 6470103..938faae 100644 (file)
        "textmatches": "When displaying search results",
        "notextmatches": "Error message when there are no results",
        "prevn": "This is part of the navigation message on the top and bottom of Special pages (lists of things in alphabetical order, i.e. the '[[Special:Categories]]' page), where it is used as the first argument of {{msg-mw|Viewprevnext}}.\nIt is also used by Category pages (which do ''not'' use {{msg-mw|Viewprevnext}}).\n{{PLURAL:$1|$1}} is the number of items shown per page. It is not used when {{PLURAL:$1|$1}} is zero; not sure what happens when {{PLURAL:$1|$1}} is one.\n[[Special:WhatLinksHere|Whatlinkshere]] pages use {{msg-mw|Whatlinkshere-prev}} instead (still as an argument to {{msg-mw|Viewprevnext}}).\n\n{{Identical|Previous}}",
-       "nextn": "This is part of the navigation message on the top and bottom of Special pages (lists of things in alphabetical order, i.e. the '[[Special:Categories]]' page), where it is used as the second argument of {{msg-mw|Viewprevnext}}.\n\nIt is also used by Category pages (which do ''not'' use {{msg-mw|Viewprevnext}}).\n\nParameters:\n* $1 - the number of items shown per page. It is not used when $1 is zero; not sure what happens when $1 is one.\n[[Special:WhatLinksHere|Whatlinkshere]] pages use {{msg-mw|Whatlinkshere-next}} instead (still as an argument to {{msg-mw|Viewprevnext}}).\n\n{{Identical|Next $1}}",
+       "nextn": "This is part of the navigation message on the top and bottom of Special pages (lists of things in alphabetical order, i.e. the '[[Special:Categories]]' page), where it is used as the second argument of {{msg-mw|Viewprevnext}}.\n\nIt is also used by Category pages (which do ''not'' use {{msg-mw|Viewprevnext}}).\n\nParameters:\n* $1 - the number of items shown per page. It is not used when $1 is zero; not sure what happens when $1 is one.\n[[Special:WhatLinksHere|Whatlinkshere]] pages use {{msg-mw|Whatlinkshere-next}} instead (still as an argument to {{msg-mw|Viewprevnext}}).\n\n{{Identical|Next}}",
        "prevn-title": "Parameters:\n* $1 - number of search results\nSee also:\n* {{msg-mw|Viewprevnext}}",
        "nextn-title": "Parameters:\n* $1 - number of search results\nSee also:\n* {{msg-mw|Viewprevnext}}",
        "shown-title": "Parameters:\n* $1 - number of search results",
index df4600a..52949b0 100644 (file)
        "delete-warning-toobig": "Тота сторінка має велику історію едітацій, через $1 {{PLURAL:$1|верзії|верзій|верзій}}. Мазаня такых сторінок може нарушыти датабазовы операцім {{grammar:2sg|{{SITENAME}}}}; мерькуйте.",
        "deleting-backlinks-warning": "'''Позірь:'''  Сторінка, котру ся рыхтуєте вымазати, є одказована на [[Special:WhatLinksHere/{{FULLPAGENAME}}|іншых сторінках]] ці вложена до них.",
        "rollback": "Вернути назад едітованя",
-       "rollback_short": "Вернути назад",
        "rollbacklink": "вернути назад",
        "rollbacklinkcount": "вернутя $1 {{PLURAL:$1|едітованя|едітовань}} назад",
        "rollbacklinkcount-morethan": "вернутя бівше як $1 {{PLURAL:$1|едітованя|едітовань}} назад",
        "sp-contributions-search": "Глядати приспівкы",
        "sp-contributions-username": "IP-адреса або імя хоснователя:",
        "sp-contributions-toponly": "Вказати лем актуалны ревізії",
+       "sp-contributions-newonly": "Вказати лем ревізії, котры суть створїнями сторінок",
        "sp-contributions-submit": "Найти",
        "whatlinkshere": "Одказы на тоту сторінку",
        "whatlinkshere-title": "Сторінкы, што ся одказують на \"$1\"",
        "import-logentry-interwiki": "міджівікі імпорт $1",
        "import-logentry-interwiki-detail": "$1 {{PLURAL:$1|ревізія|ревізії|ревізій}} з $2",
        "javascripttest": "Тестованя JavaScript",
-       "javascripttest-title": "Біжать тест в $1",
        "javascripttest-pagetext-noframework": "Тота сторінка є резервована про тестованя JavaScript.",
        "javascripttest-pagetext-unknownframework": "Незнаный фреймворк тестованя „$1“.",
        "javascripttest-pagetext-frameworks": "Просиме, звольте єден з наступных фреймворків тестованя : $1",
        "javascripttest-pagetext-skins": "Звольте взгляд під котрым ся мають тесты спустити:",
        "javascripttest-qunit-intro": "Смотьте [$1 документацію тестованя] на mediawiki.org",
-       "javascripttest-qunit-heading": "Сет тестів JavaScript в MediaWiki QUnit",
        "tooltip-pt-userpage": "Ваша сторінка хоснователя",
        "tooltip-pt-anonuserpage": "Сторінка хоснователя про IP-адресу, з котрой едітуєте",
        "tooltip-pt-mytalk": "Ваша діскузна сторінка",
index 8750d56..9d2c85e 100644 (file)
        "action-viewmywatchlist": "преглед вашег списак надгледања",
        "action-viewmyprivateinfo": "прегледање ваших личних података",
        "action-editmyprivateinfo": "уређивање ваших личних података",
+       "action-managechangetags": "прављење и/или брисање ознака из базе података",
        "nchanges": "$1 {{PLURAL:$1|измена|измене|измена}}",
        "enhancedrc-since-last-visit": "$1 {{PLURAL:$1|измена од ваше последње посете}}",
        "enhancedrc-history": "историја",
        "tags-active-no": "Не",
        "tags-edit": "уреди",
        "tags-hitcount": "$1 {{PLURAL:$1|измена|измене|измена}}",
+       "tags-create-heading": "Нова ознака",
+       "tags-create-already-exists": "Ознака „$1“ већ постоји.",
+       "tags-create-warnings-below": "Правите нову ознаку, желите ли да наставите?",
+       "tags-delete-title": "Брисање ознака",
+       "tags-delete-explanation-initial": "Бришете ознаку „$1“ из базе података.",
+       "tags-activate-title": "Активирање ознака",
+       "tags-activate-question": "Активирате ознаку „$1“.",
+       "tags-activate-not-allowed": "Није могуће активирати ознаку „$1“.",
+       "tags-activate-not-found": "Ознака „$1“ не постоји.",
+       "tags-deactivate-title": "Деактивирање ознака",
        "comparepages": "Упоређивање страница",
        "compare-page1": "Страница 1",
        "compare-page2": "Страница 2",
        "logentry-upload-upload": "$1 је {{GENDER:$2|послао|послала}} $3",
        "logentry-upload-overwrite": "$1 је {{GENDER:$2|послао|послала}} нову верзију $3",
        "logentry-upload-revert": "$1 је {{GENDER:$2|послао|послала}} $3",
+       "logentry-managetags-create": "$1 је {{GENDER:$2|направио|направила}} ознаку „$4“",
+       "logentry-managetags-delete": "$1 је {{GENDER:$2|обрисао|обрисала}} ознаку „$4“ (уклоњена је из $5 {{PLURAL:$5|измене или дневника|измена и/или дневника}})",
+       "logentry-managetags-activate": "$1 је {{GENDER:$2|активирао|активирала}} ознаку „$4“ за употребу од стране корисника и ботова",
+       "logentry-managetags-deactivate": "$1 је {{GENDER:$2|деактивирао|деактивирала}} ознаку „$4“ за употребу од стране корисника и ботова",
        "rightsnone": "(нема)",
        "revdelete-summary": "опис измене",
        "feedback-bugornote": "Ако сте спремни да детаљно опишете технички проблем, онда [$1 пријавите грешку].\nУ супротном, послужите се једноставним обрасцем испод. Ваш коментар ће стајати на страници „[$3 $2]“, заједно с корисничким именом и прегледачем који користите.",
index 3863e93..f4550bf 100644 (file)
        "tags-delete-explanation-active": "<strong>Taggen\" $1 \" är fortfarande aktiv, och kommer att fortsätta att appliceras i framtiden.</strong> För att hindra detta, gå till den eller de platser där taggen är inställd att användas, och inaktivera den där.",
        "tags-delete-reason": "Anledning:",
        "tags-delete-submit": "Radera denna tagg oåterkalleligen",
+       "tags-delete-not-allowed": "Tagg definierade med ett tillägg kan inte raderas utan att tillägget specifikt tillåter det.",
        "tags-delete-not-found": "Taggen \"$1\" finns inte.",
        "tags-delete-too-many-uses": "Taggen \"$1\" appliceras på mer än $2 {{PLURAL:$2|version|versioner}}, vilket innebär att den inte kan raderas.",
        "tags-delete-warnings-after-delete": "Taggen \"$1\" raderades, men följande {{PLURAL:$2|varning|varningar}} inträffade:",
index fd4ea73..9da0024 100644 (file)
        "recentchanges-summary": "Yapılan en son değişiklikleri bu sayfadan izleyin.",
        "recentchanges-noresult": "Belirtilen kriterlere uyan herhangi bir değişiklik bulunamadı.",
        "recentchanges-feed-description": "Bu beslemede, viki'de yapılan en son değişiklikleri takip edin.",
-       "recentchanges-label-newpage": "Bu değişiklikle yeni bir sayfa oluşturuldu",
+       "recentchanges-label-newpage": "Bu değişiklikle [[Special:NewPages|yeni bir sayfa]] oluşturuldu",
        "recentchanges-label-minor": "Küçük değişiklik",
        "recentchanges-label-bot": "Bir bot tarafından yapılan değişiklik",
        "recentchanges-label-unpatrolled": "Bu değişiklik henüz gözlenmemiş",
        "recentchanges-label-plusminus": "Sayfa boyutundaki değişikliğin bayt bazında değeri",
        "recentchanges-legend-heading": "'''Gösterge:'''",
-       "recentchanges-legend-newpage": "{{int:recentchanges-label-newpage}} (ayrıca bakınız [[Special:NewPages|yeni sayfalar listesi]])",
+       "recentchanges-legend-newpage": "{{int:recentchanges-label-newpage}}",
        "rcnotefrom": "<strong>$2</strong> tarihinden itibaren yapılan değişiklikler aşağıdadır (en fazla <strong>$1</strong> tanesi gösterilmektedir).",
        "rclistfrom": "$3 $2 tarihinden itibaren yeni değişiklikleri göster",
        "rcshowhideminor": "Küçük değişiklikleri $1",
index 54f5e0b..9a5782b 100644 (file)
        "undelete_short": "{{PLURAL:$1|bitta tahrir|$1 ta tahrir}}ni tiklash",
        "viewdeleted_short": "$1 ta oʻchirilgan tahrirni koʻrish",
        "protect": "Himoyalash",
-       "protect_change": "Oʻzgartirish",
+       "protect_change": "oʻzgartirish",
        "protectthispage": "Ushbu sahifani himoyalash",
        "unprotect": "Himoyadan chiqarish",
        "unprotectthispage": "Ushbu sahifaning himoyasini oʻzgaritish",
        "redirectedfrom": "($1dan yoʻnaltirildi)",
        "redirectpagesub": "Yoʻnaltiruvchi sahifa",
        "redirectto": "Qayta yoʻnaltirish:",
-       "lastmodifiedat": "Bu sahifa oxirgi marta $1 soat $2 da tahrirlangan.",
+       "lastmodifiedat": "Bu sahifa oxirgi marta $1, $2 da tahrirlangan.",
        "viewcount": "Bu sahifaga {{PLURAL:$1|bir marta|$1 marta}} murojaat qilingan.",
        "protectedpage": "Himoyalangan sahifa",
        "jumpto": "Oʻtish:",
        "note": "'''Izoh:'''",
        "previewnote": "'''Bu shunchaki koʻrib chiqish.''' Oʻzgartirishlar hali saqlangani yoʻq!",
        "continue-editing": "tahrirlashni davom ettirish",
-       "editing": "$1 tahrirlanmoqda",
+       "editing": "Tahrirlanmoqda — $1",
        "creating": "«$1» sahifasini yaratish",
-       "editingsection": "$1 tahrirlanmoqda (boʻlim)",
-       "editingcomment": "$1 tahrirlanmoqda (yangi mavzu)",
+       "editingsection": "Tahrirlanmoqda — $1 (boʻlimi)",
+       "editingcomment": "Yangi mavzu yaratilmoqda — $1",
        "editconflict": "Tahrirlash toʻqnashuvi: $1",
        "explainconflict": "Sahifani tahrirlayotgan mahalingizda boshqa birov unga oʻzgarish kiritib ulgurdi.\nYuqoridagi tahrir oynasida sahifaning joriy matnini koʻrishingiz mumkin.\nPastdagida esa siz kiritgan oʻzgarishlar koʻrsatilgan.\nKiritmoqchi boʻlgan oʻzgarishlaringizni pastdagi oynadan yuqoridagiga oʻtkazing.\n«{{int:savearticle}}» tugmasini bossangiz <strong>faqat</strong> yuqoridagi matn saqlanadi.",
        "yourtext": "Sizning matningiz",
        "yourdiff": "Farqlar",
        "copyrightwarning": "Iltimos, {{SITENAME}}ga yuklangan har qanday axborot $2 ostida tarqatilishiga diqqat qiling (batafsil ma'lumot uchun $1ni ko'ring).\nAgar yozganlaringiz keyinchalik tahrir qilinishi va qayta tarqatilishiga rozi bo'lmasangiz, u holda bu yerga yozmang.<br />\nSiz shuningdek bu yozganlaringiz sizniki yoki erkin litsenziya ostida ekanligini va'da qilmoqdasiz.\n'''MUALLIFLIK HUQUQLARI BILAN HIMOYALANGAN ISHLARNI ZINHOR BERUXSAT YUBORMANG!'''",
        "copyrightwarning2": "Iltimos, shuni esda tutingki, {{SITENAME}} sahifalaridagi barcha matnlar boshqa foydalanuvchilar tomonidan tahrirlanishi, almashtirilishi yoki o'chirilishi mumkin. Agar siz yozgan ma'lumotlaringizni bunday tartibda tahrirlanishiga rozi bo'lmasangiz, unda uni bu yerga joylashtirmang.<br />\nBundan tashqari, siz ushbu ma'lumotlarni o'zingiz yozgan bo'lishingiz yoki ruxsat berilgan internet manzilidan yoki shu kabi erkin resursdan nusxa olgan bo'lishingiz lozim (Qo'shimcha ma'lumotlar uchun $1 sahifasiga murojaat qiling).\n'''MUALLIFLIK HUQUQI QO'YILGAN ISHLARNI RUXSATSIZ BU YERGA JOYLASHTIRMANG!'''",
+       "protectedpagewarning": "<strong>Ogohlantirish: Ushbu sahifa himoyalangan boʻlib, faqat administratorlar tomonidan tahrirlanishi mumkin.</strong>\nQuyida himoyalash jurnalidagi oxirgi qayd keltirilgan:",
+       "semiprotectedpagewarning": "<strong>Izoh:</strong> Ushbu sahifa himoyalangan boʻlib, faqat roʻyxatdan oʻtgan foydalanuvchilar tomonidan tahrirlanishi mumkin. Quyida himoyalash jurnalidagi oxirgi qayd keltirilgan:",
        "templatesused": "Ushbu sahifada foydalanilgan {{PLURAL:$1|andoza|andozalar}}:",
        "templatesusedpreview": "Ushbu sahifada foydalanilgan {{PLURAL:$1|andoza|andozalar}}:",
        "templatesusedsection": "Ushbu bo'limda foydalanilgan {{PLURAL:$1|andoza|andozalar}}:",
        "mergehistory-reason": "Sabab:",
        "mergelog": "Birlashtirish qaydlari",
        "revertmerge": "Bo'lish",
-       "history-title": "$1 - oʻzgarishlar tarixi",
+       "history-title": "$1  oʻzgarishlar tarixi",
        "difference-title": "$1 — versiyalar orasidagi farq",
        "difference-title-multipage": "\"$1\" va \"$2\" sahifalar orasidagi farq",
        "difference-multipage": "(Sahifalar orasidagi farq)",
        "lineno": "Qator $1:",
-       "compareselectedversions": "Tanlangan versiyalarni solishtir",
-       "showhideselectedversions": "Tanlangan versiyalarni oʻzgartirish",
+       "compareselectedversions": "Solishtirish",
+       "showhideselectedversions": "Oʻzgartirish",
        "editundo": "bekor qilish",
        "searchresults": "Qidiruv natijalari",
        "searchresults-title": "\"$1\" uchun qidiruv natijalari",
        "excontentauthor": "tarkibi: „$1“ (faqat bitta muallifi bor edi: „[[Special:Contributions/$2|$2]]“)",
        "exbeforeblank": "tozalashdan oldingi tarkibi: „$1“",
        "delete-confirm": "$1 — oʻchirish",
-       "delete-legend": "O‘chirish",
+       "delete-legend": "Sahifani o‘chirish",
        "historywarning": "<strong>Diqqat:</strong> Siz oʻchirmoqchi boʻlayotgan sahifaning tarixida $1 ta {{PLURAL:$1|versiyasi}} bor:",
        "confirmdeletetext": "Siz ushbu sahifani va uning tarixini butunlay oʻchirib tashlamoqchi boʻlyapsiz. Iltimos, [[Special:Whatlinkshere/{{FULLPAGENAMEE}}|bogʻlangan sahifalar]] bilan tanishib chiqishni unutmang.",
        "actioncomplete": "Bajarildi",
        "sessionfailure-title": "Seansda xatolik",
        "protectlogpage": "Himoyalash qaydlari",
        "protectedarticle": "\"[[$1]]\" sahifasi himoyalandi",
-       "modifiedarticleprotection": "\"[[$1]]\" uchun himoyalash darajasini o'zgartirdi",
+       "modifiedarticleprotection": "\"[[$1]]\" sahifasining himoya darajasini oʻzgartirdi",
        "movedarticleprotection": "himoyalash moslamalarini \"[[$2]]\"dan \"[[$1]]\"ga o'tkazdi",
-       "protect-legend": "Himoya oʻrnatishni tasdiqlang",
+       "protect-title": "\"$1\" uchun himoya darajasini oʻrnatish",
+       "protect-legend": "Himoya oʻrnatish",
        "protectcomment": "Sabab:",
-       "protectexpiry": "Tugaydi:",
-       "protect-level-sysop": "Faqat administratorlar uchun",
+       "protectexpiry": "Muddati:",
+       "protect-unchain-permissions": "Qoʻshimcha moslamalarni yoqish",
+       "protect-text": "Bu yerda siz <strong>$1</strong> sahifasining himoya darajasini koʻrishingiz va oʻzgartishingiz mumkin.",
+       "protect-default": "Barcha foydalanuvchilar",
+       "protect-level-autoconfirmed": "Faqat roʻyxatdan oʻtgan foydalanuvchilar",
+       "protect-level-sysop": "Faqat administratorlar",
        "protect-summary-cascade": "pog‘onali",
        "protect-expiring-local": "$1da tugaydi",
        "protect-expiry-indefinite": "muddatsiz",
-       "protect-othertime": "Boshqa vaqt:",
-       "protect-othertime-op": "boshqa vaqt",
+       "protect-cascade": "Ushbu sahifaga bogʻlangan sahifalarni ham himoyalash (pogʻonali himoya)",
+       "protect-othertime": "Boshqa muddat:",
+       "protect-othertime-op": "boshqa muddat",
        "protect-existing-expiry": "Joriy tugash vaqti: $2, $3",
        "protect-otherreason": "Boshqa/qo‘shimcha sabab",
        "protect-otherreason-op": "Boshqa sabab",
-       "protect-edit-reasonlist": "Sabablar ro'yxatini tahrirlash",
+       "protect-edit-reasonlist": "Sabablar roʻyxatini tahrirlash",
        "protect-expiry-options": "1 soat:1 hours,1 kun:1 day,1 hafta:1 week,2 hafta:2 weeks,1 oy:1 month,3 oy:3 months,6 oy:6 months,1 yil:1 year,cheksiz:infinite",
        "restriction-type": "Huquqlar:",
        "restriction-level": "Ruxsat etilganlik darajasi:",
        "blockip": "Foydalanuvchini chetlashtir",
        "blockip-legend": "Foydalanuvchini muhosara qilish",
        "ipaddressorusername": "IP-manzil yoki foydalanuvchi nomi:",
-       "ipbexpiry": "Tugaydi:",
+       "ipbexpiry": "Tugash muddati:",
        "ipbreason": "Sabab:",
        "ipbreason-dropdown": "* Chetlashtirishning odatiy sabablari\n** Yolgʻon maʼlumot kiritish\n** Sahifa matnini toʻliq oʻchirish\n** Tashqi saytlarga spam-havolalar\n** Maʼnosiz matn/axlat qoʻshish\n** Foydalanuvchilarga tahdid qilish, ularni taʼqib qilish\n** Bir nechta hisob yozuvlaridan oʻz manfaatlarida foydalanish\n** Nomaqbul foydalanuvchi nomi",
        "ipbsubmit": "Ushbu foydalanuvchini chetlashtirish",
-       "ipbother": "Boshqa vaqt:",
+       "ipbother": "Boshqa muddat:",
        "ipboptions": "2 soat:2 hours,1 kun:1 day,3 kun:3 days,1 hafta:1 week,2 hafta:2 weeks,1 oy:1 month,3 oy:3 months,6 oy:6 months,1 yil:1 year,cheksiz:infinite",
        "ipb-edit-dropdown": "Sabablar ro‘yxatini tahrirlash",
        "ipb-unblock-addr": "$1dan toʻsiqni olish",
        "ipblocklist-localblock": "Mahalliy chetlashtirish",
        "ipblocklist-otherblocks": "Boshqa {{PLURAL:$1|chetlashtirishlar}}",
        "infiniteblock": "muddatsiz",
-       "expiringblock": "$1 soat $2da tugaydi",
+       "expiringblock": "$1, $2 da tugaydi",
        "anononlyblock": "faqat anonimlar",
        "noautoblockblock": "avtochetlashtirish o‘chirilgan",
        "createaccountblock": "hisob yozuvi yaratish taqiqlangan",
        "delete_and_move_confirm": "Ha, ushbu sahifa o‘chirilsin",
        "fix-double-redirects": "Oldingi nomga yoʻnaltirishlarni toʻgʻrilash",
        "move-leave-redirect": "Qayta yoʻnaltirish qoldirish",
+       "protectedpagemovewarning": "<strong>Ogohlantirish:</strong> Ushbu sahifa himoyalangan boʻlib, faqat administratorlar uning nomini oʻzgartirishi mumkin. Quyida himoyalash jurnalidagi oxirgi qayd keltirilgan:",
+       "semiprotectedpagemovewarning": "<strong>Izoh:</strong> Ushbu sahifa himoyalangan boʻlib, faqat roʻyxatdan oʻtgan foydalanuvchilar uning nomini oʻzgartirishi mumkin.\nQuyida himoyalash jurnalidagi oxirgi qayd keltirilgan:",
        "move-over-sharedrepo": "== Fayl allaqachon mavjud ==\nUmumiy omborda [[:$1]] mavjud. Faylning bu nomga qayta nomlanishi faylning umumiy omborda to‘silishiga olib keladi.",
        "export": "Sahifalar eksporti",
        "export-submit": "Eksport",
index 584d3d5..5ff81b7 100644 (file)
        "action-viewmywatchlist": "באקוקן אײַער אויפֿפאסונג ליסטע",
        "action-viewmyprivateinfo": "באקוקן אײַער פריוואטע אינפארמאציע",
        "action-editmyprivateinfo": "רעדאקטירן אײַער פריוואטע אינפארמאציע",
+       "action-managechangetags": "שאפן און אויסמעקן טאגן פון דער דאטנבאזע",
        "nchanges": "{{PLURAL:$1|ענדערונג|$1 ענדערונגען}}",
        "enhancedrc-since-last-visit": "$1 {{PLURAL:$1|זײַט לעצטן וויזיט}}",
        "enhancedrc-history": "היסטאריע",
index aaf0d36..cf8bd43 100644 (file)
@@ -63,7 +63,7 @@
                ]
        },
        "tog-underline": "底線標示連結:",
-       "tog-hideminor": "在近期變更隱藏小編輯",
+       "tog-hideminor": "隱藏近期變更中的小修訂",
        "tog-hidepatrolled": "隱藏近期變更中巡查過的編輯",
        "tog-newpageshidepatrolled": "隱藏新頁面清單中巡查過的頁面",
        "tog-extendwatchlist": "展開監視清單顯示包含最近以外的所有變更",
        "mytalk": "對話",
        "anontalk": "此 IP 位址的對話頁面",
        "navigation": "導覽",
-       "and": "&#32;和",
+       "and": "&#32;和&#32;",
        "qbfind": "尋找",
        "qbbrowse": "瀏覽",
        "qbedit": "編輯",
        "qbpageoptions": "此頁面",
        "qbmyoptions": "我的頁面",
        "faq": "常見問題",
-       "faqpage": "Project:常見問題",
+       "faqpage": "Project:FAQ",
        "actions": "動作",
        "namespaces": "命名空間",
        "variants": "變體",
        "disclaimers": "免責聲明",
        "disclaimerpage": "Project:General disclaimer",
        "edithelp": "編輯説明",
-       "mainpage": "頁",
+       "mainpage": "頁",
        "mainpage-description": "首頁",
        "policy-url": "Project:Policy",
        "portal": "社群入口",
        "nosuchusershort": "查無使用者 \"$1\",\n請檢查您拼寫是否正確。",
        "nouserspecified": "您必須指定一個使用者名稱。",
        "login-userblocked": "這位使用者已被封鎖,不允許登入。",
-       "wrongpassword": "您輸入的密碼有錯誤,請再嘗試一次。",
+       "wrongpassword": "您輸入的密碼錯誤,請再試一次。",
        "wrongpasswordempty": "輸入的密碼是空的。\n請再試一次。",
        "passwordtooshort": "您的密碼至少需要 $1 個字元。",
        "password-name-match": "您的密碼不可以跟使用者名稱相同。",
        "prefs-watchlist": "監視清單",
        "prefs-editwatchlist": "編輯監視清單",
        "prefs-editwatchlist-label": "編輯在您監視清單上的項目:",
-       "prefs-editwatchlist-edit": "檢視移除在您監視清單上的標題",
+       "prefs-editwatchlist-edit": "檢視移除在您監視清單上的標題",
        "prefs-editwatchlist-raw": "編輯原始監視清單",
        "prefs-editwatchlist-clear": "清除您的監視清單",
        "prefs-watchlist-days": "監視清單中顯示的天數:",
        "javascripttest": "JavaScript 測試",
        "javascripttest-pagetext-noframework": "此頁面保留用來作為 JavaScript 測試使用。",
        "javascripttest-pagetext-unknownframework": "不明的測試 Framework \"$1\"。",
-       "javascripttest-pagetext-unknownaction": "未知操作「$1」。",
+       "javascripttest-pagetext-unknownaction": "不明操作 \"$1\"。",
        "javascripttest-pagetext-frameworks": "請選擇下列一種測試 Framework:$1",
        "javascripttest-pagetext-skins": "選擇執行測試的外觀:",
        "javascripttest-qunit-intro": "請參考 mediawiki.org 的 [$1 測試說明文件]。",
        "tooltip-search": "搜尋 {{SITENAME}}",
        "tooltip-search-go": "若與此名稱相符的頁面存在,前往該頁面",
        "tooltip-search-fulltext": "搜尋使用此文字的頁面",
-       "tooltip-p-logo": "前往頁",
+       "tooltip-p-logo": "前往頁",
        "tooltip-n-mainpage": "前往主頁",
        "tooltip-n-mainpage-description": "前往首頁",
        "tooltip-n-portal": "關於本專案、您可以做什麼、哪裡可以找到您需要的事物",
        "exif-samplesperpixel": "像素數量",
        "exif-planarconfiguration": "資料排列",
        "exif-ycbcrsubsampling": "黃色轉洋紅二次抽樣比率",
-       "exif-ycbcrpositioning": "亮度與彩度偏移",
+       "exif-ycbcrpositioning": "亮度與彩度位置",
        "exif-xresolution": "水平解析度",
        "exif-yresolution": "垂直解析度",
        "exif-stripoffsets": "影像資料位置",
        "exif-objectcycle-b": "上午與下午",
        "exif-gpsdirection-t": "真實方向",
        "exif-gpsdirection-m": "地磁方向",
-       "exif-ycbcrpositioning-1": "置中",
-       "exif-ycbcrpositioning-2": "聯合選址",
+       "exif-ycbcrpositioning-1": "中間",
+       "exif-ycbcrpositioning-2": "同時取樣",
        "exif-dc-contributor": "貢獻者",
        "exif-dc-coverage": "時間或空間性介質範圍",
        "exif-dc-date": "日期",
index 27102ad..96e01fe 100644 (file)
@@ -39,28 +39,46 @@ class NamespaceConflictChecker extends Maintenance {
         */
        protected $db;
 
+       private $resolvableCount = 0;
+       private $totalPages = 0;
+
        public function __construct() {
                parent::__construct();
                $this->mDescription = "";
                $this->addOption( 'fix', 'Attempt to automatically fix errors' );
-               $this->addOption( 'suffix', "Dupes will be renamed with correct namespace with " .
+               $this->addOption( 'merge', "Instead of renaming conflicts, do a history merge with " .
+                       "the correct title" );
+               $this->addOption( 'add-suffix', "Dupes will be renamed with correct namespace with " .
                        "<text> appended after the article name", false, true );
-               $this->addOption( 'prefix', "Do an explicit check for the given title prefix " .
-                       "appended after the article name", false, true );
+               $this->addOption( 'add-prefix', "Dupes will be renamed with correct namespace with " .
+                       "<text> prepended before the article name", false, true );
+               $this->addOption( 'source-pseudo-namespace', "Move all pages with the given source " .
+                       "prefix (with an implied colon following it). If --dest-namespace is not specified, " .
+                       "the colon will be replaced with a hyphen.",
+                       false, true );
+               $this->addOption( 'dest-namespace', "In combination with --source-pseudo-namespace, " .
+                       "specify the namespace ID of the destination.", false, true );
+               $this->addOption( 'move-talk', "If this is specified, pages in the Talk namespace that " .
+                       "begin with a conflicting prefix will be renamed, for example " .
+                       "Talk:File:Foo -> File_Talk:Foo" );
        }
 
        public function execute() {
                $this->db = wfGetDB( DB_MASTER );
 
-               $fix = $this->hasOption( 'fix' );
-               $suffix = $this->getOption( 'suffix', '' );
-               $prefix = $this->getOption( 'prefix', '' );
-               $key = intval( $this->getOption( 'key', 0 ) );
-
-               if ( $prefix ) {
-                       $retval = $this->checkPrefix( $key, $prefix, $fix, $suffix );
+               $options = array(
+                       'fix' => $this->hasOption( 'fix' ),
+                       'merge' => $this->hasOption( 'merge' ),
+                       'add-suffix' => $this->getOption( 'add-suffix', '' ),
+                       'add-prefix' => $this->getOption( 'add-prefix', '' ),
+                       'move-talk' => $this->hasOption( 'move-talk' ),
+                       'source-pseudo-namespace' => $this->getOption( 'source-pseudo-namespace', '' ),
+                       'dest-namespace' => intval( $this->getOption( 'dest-namespace', 0 ) ) );
+
+               if ( $options['source-pseudo-namespace'] !== '' ) {
+                       $retval = $this->checkPrefix( $options );
                } else {
-                       $retval = $this->checkAll( $fix, $suffix );
+                       $retval = $this->checkAll( $options );
                }
 
                if ( $retval ) {
@@ -71,13 +89,13 @@ class NamespaceConflictChecker extends Maintenance {
        }
 
        /**
-        * @todo Document
-        * @param bool $fix Whether or not to fix broken entries
-        * @param string $suffix Suffix to append to renamed articles
+        * Check all namespaces
+        *
+        * @param array $options Associative array of validated command-line options
         *
         * @return bool
         */
-       private function checkAll( $fix, $suffix = '' ) {
+       private function checkAll( $options ) {
                global $wgContLang, $wgNamespaceAliases, $wgCapitalLinks;
 
                $spaces = array();
@@ -131,14 +149,31 @@ class NamespaceConflictChecker extends Maintenance {
                        }
                }
 
-               ksort( $spaces );
-               asort( $spaces );
+               // Sort by namespace index, and if there are two with the same index,
+               // break the tie by sorting by name
+               $origSpaces = $spaces;
+               uksort( $spaces, function ( $a, $b ) use ( $origSpaces ) {
+                       if ( $origSpaces[$a] < $origSpaces[$b] ) {
+                               return -1;
+                       } elseif ( $origSpaces[$a] > $origSpaces[$b] ) {
+                               return 1;
+                       } elseif ( $a < $b ) {
+                               return -1;
+                       } elseif ( $a > $b ) {
+                               return 1;
+                       } else {
+                               return 0;
+                       }
+               } );
 
                $ok = true;
                foreach ( $spaces as $name => $ns ) {
-                       $ok = $this->checkNamespace( $ns, $name, $fix, $suffix ) && $ok;
+                       $ok = $this->checkNamespace( $ns, $name, $options ) && $ok;
                }
 
+               $this->output( "{$this->totalPages} pages to fix, " .
+                       "{$this->resolvableCount} were resolvable.\n" );
+
                return $ok;
        }
 
@@ -158,188 +193,273 @@ class NamespaceConflictChecker extends Maintenance {
        }
 
        /**
-        * @todo Document
-        * @param int $ns A namespace id
+        * Check a given prefix and try to move it into the given destination namespace
+        *
+        * @param int $ns Destination namespace id
         * @param string $name
-        * @param bool $fix Whether to fix broken entries
-        * @param string $suffix Suffix to append to renamed articles
+        * @param array $options Associative array of validated command-line options
         * @return bool
         */
-       private function checkNamespace( $ns, $name, $fix, $suffix = '' ) {
-               $conflicts = $this->getConflicts( $ns, $name );
-               $count = count( $conflicts );
+       private function checkNamespace( $ns, $name, $options ) {
+               $targets = $this->getTargetList( $ns, $name, $options );
+               $count = $targets->numRows();
+               $this->totalPages += $count;
                if ( $count == 0 ) {
                        return true;
                }
 
-               $resolveableCount = 0;
+               $dryRunNote = $options['fix'] ? '' : ' DRY RUN ONLY';
 
                $ok = true;
-               foreach ( $conflicts as $row ) {
-                       $resolvable = $this->reportConflict( $row, $suffix );
-                       $ok = $ok && $resolvable;
+               foreach ( $targets as $row ) {
+
+                       // Find the new title and determine the action to take
+
+                       $newTitle = $this->getDestinationTitle( $ns, $name, $row, $options );
+                       $logStatus = false;
+                       if ( !$newTitle ) {
+                               $logStatus = 'invalid title';
+                               $action = 'abort';
+                       } elseif ( $newTitle->exists() ) {
+                               if ( $options['merge'] ) {
+                                       if ( $this->canMerge( $row->page_id, $newTitle, $logStatus ) ) {
+                                               $action = 'merge';
+                                       } else {
+                                               $action = 'abort';
+                                       }
+                               } elseif ( $options['add-prefix'] == '' && $options['add-suffix'] == '' ) {
+                                       $action = 'abort';
+                                       $logStatus = 'dest title exists and --add-prefix not specified';
+                               } else {
+                                       $newTitle = $this->getAlternateTitle( $newTitle, $options );
+                                       if ( !$newTitle ) {
+                                               $action = 'abort';
+                                               $logStatus = 'alternate title is invalid';
+                                       } elseif ( $newTitle->exists() ) {
+                                               $action = 'abort';
+                                               $logStatus = 'title conflict';
+                                       } else {
+                                               $action = 'move';
+                                               $logStatus = 'alternate';
+                                       }
+                               }
+                       } else {
+                               $action = 'move';
+                               $logStatus = 'no conflict';
+                       }
 
-                       if ( $resolvable ) {
-                               $resolveableCount++;
+                       // Take the action or log a dry run message
+
+                       $logTitle = "id={$row->page_id} ns={$row->page_namespace} dbk={$row->page_title}";
+                       $pageOK = true;
+
+                       switch ( $action ) {
+                               case 'abort':
+                                       $this->output( "$logTitle *** $logStatus\n" );
+                                       $pageOK = false;
+                                       break;
+                               case 'move':
+                                       $this->output( "$logTitle -> " .
+                                               $newTitle->getPrefixedDBkey() . " ($logStatus)$dryRunNote\n" );
+
+                                       if ( $options['fix'] ) {
+                                               $pageOK = $this->movePage( $row->page_id, $newTitle );
+                                       }
+                                       break;
+                               case 'merge':
+                                       $this->output( "$logTitle => " .
+                                               $newTitle->getPrefixedDBkey() . " (merge)$dryRunNote\n" );
+
+                                       if ( $options['fix'] ) {
+                                               $pageOK = $this->mergePage( $row->page_id, $newTitle );
+                                       }
+                                       break;
                        }
 
-                       if ( $fix && ( $resolvable || $suffix != '' ) ) {
-                               $ok = $this->resolveConflict( $row, $resolvable, $suffix ) && $ok;
+                       if ( $pageOK ) {
+                               $this->resolvableCount++;
+                       } else {
+                               $ok = false;
                        }
                }
 
-               $this->output( "{$count} conflicts. {$resolveableCount} are resolveable." );
+               // @fixme Also needs to do like self::getTargetList() on the
+               // *_namespace and *_title fields of pagelinks, templatelinks, and
+               // redirects, and schedule a LinksUpdate job or similar for each found
+               // *_from.
 
                return $ok;
        }
 
        /**
-        * @todo Do this for real
-        * @param int $key
-        * @param string $prefix
-        * @param bool $fix
-        * @param string $suffix
+        * Move the given pseudo-namespace, either replacing the colon with a hyphen
+        * (useful for pseudo-namespaces that conflict with interwiki links) or move
+        * them to another namespace if specified.
+        * @param array $options Associative array of validated command-line options
         * @return bool
         */
-       private function checkPrefix( $key, $prefix, $fix, $suffix = '' ) {
-               $this->output( "Checking prefix \"$prefix\" vs namespace $key\n" );
+       private function checkPrefix( $options ) {
+               $prefix = $options['source-pseudo-namespace'];
+               $ns = $options['dest-namespace'];
+               $this->output( "Checking prefix \"$prefix\" vs namespace $ns\n" );
 
-               return $this->checkNamespace( $key, $prefix, $fix, $suffix );
+               return $this->checkNamespace( $ns, $prefix, $options );
        }
 
        /**
-        * Find pages in mainspace that have a prefix of the new namespace
-        * so we know titles that will need migrating
+        * Find pages in main and talk namespaces that have a prefix of the new
+        * namespace so we know titles that will need migrating
         *
-        * @param int $ns Namespace id (id for new namespace?)
+        * @param int $ns Destination namespace id
         * @param string $name Prefix that is being made a namespace
+        * @param array $options Associative array of validated command-line options
         *
-        * @return array
+        * @return ResultWrapper
         */
-       private function getConflicts( $ns, $name ) {
-               $titleSql = "TRIM(LEADING {$this->db->addQuotes( "$name:" )} FROM page_title)";
-               if ( $ns == 0 ) {
-                       // An interwiki; try an alternate encoding with '-' for ':'
-                       $titleSql = $this->db->buildConcat( array(
-                               $this->db->addQuotes( "$name-" ),
-                               $titleSql,
-                       ) );
+       private function getTargetList( $ns, $name, $options ) {
+               if ( $options['move-talk'] && MWNamespace::isSubject( $ns ) ) {
+                       $checkNamespaces = array( NS_MAIN, NS_TALK );
+               } else {
+                       $checkNamespaces = NS_MAIN;
                }
 
-               return iterator_to_array( $this->db->select( 'page',
+               return $this->db->select( 'page',
                        array(
-                               'id' => 'page_id',
-                               'oldtitle' => 'page_title',
-                               'namespace' => $this->db->addQuotes( $ns ) . ' + page_namespace',
-                               'title' => $titleSql,
-                               'oldnamespace' => 'page_namespace',
+                               'page_id',
+                               'page_title',
+                               'page_namespace',
                        ),
                        array(
-                               'page_namespace' => array( 0, 1 ),
+                               'page_namespace' => $checkNamespaces,
                                'page_title' . $this->db->buildLike( "$name:", $this->db->anyString() ),
                        ),
                        __METHOD__
-               ) );
+               );
        }
 
        /**
-        * Report any conflicts we find
-        *
+        * Get the preferred destination title for a given target page row.
+        * @param integer $ns The destination namespace ID
+        * @param string $name The conflicting prefix
         * @param stdClass $row
-        * @param string $suffix
-        * @return bool
+        * @param array $options Associative array of validated command-line options
+        * @return Title|false
         */
-       private function reportConflict( $row, $suffix ) {
-               $newTitle = Title::makeTitleSafe( $row->namespace, $row->title );
-               if ( is_null( $newTitle ) || !$newTitle->canExist() ) {
-                       // Title is also an illegal title...
-                       // For the moment we'll let these slide to cleanupTitles or whoever.
-                       $this->output( sprintf( "... %d (%d,\"%s\")\n",
-                               $row->id,
-                               $row->oldnamespace,
-                               $row->oldtitle ) );
-                       $this->output( "...  *** cannot resolve automatically; illegal title ***\n" );
-
-                       return false;
+       private function getDestinationTitle( $ns, $name, $row, $options ) {
+               $dbk = substr( $row->page_title, strlen( "$name:" ) );
+               if ( $ns == 0 ) {
+                       // An interwiki; try an alternate encoding with '-' for ':'
+                       $dbk = "$name-" . $dbk;
                }
-
-               $this->output( sprintf( "... %d (%d,\"%s\") -> (%d,\"%s\") [[%s]]\n",
-                       $row->id,
-                       $row->oldnamespace,
-                       $row->oldtitle,
-                       $newTitle->getNamespace(),
-                       $newTitle->getDBkey(),
-                       $newTitle->getPrefixedText() )
-               );
-
-               $id = $newTitle->getArticleID();
-               if ( $id ) {
-                       $this->output( "...  *** cannot resolve automatically; page exists with ID $id ***\n" );
-
+               $destNS = $ns;
+               if ( $row->page_namespace == NS_TALK && MWNamespace::isSubject( $ns ) ) {
+                       // This is an associated talk page moved with the --move-talk feature.
+                       $destNS = MWNamespace::getTalk( $destNS );
+               }
+               $newTitle = Title::makeTitleSafe( $destNS, $dbk );
+               if ( !$newTitle || !$newTitle->canExist() ) {
                        return false;
-               } else {
-                       return true;
                }
+               return $newTitle;
        }
 
        /**
-        * Resolve any conflicts
+        * Get an alternative title to move a page to. This is used if the
+        * preferred destination title already exists.
         *
-        * @param stdClass $row Row from the page table to fix
-        * @param bool $resolvable
-        * @param string $suffix Suffix to append to the fixed page
-        * @return bool
+        * @param Title $title
+        * @param array $options Associative array of validated command-line options
+        * @return Title|bool
         */
-       private function resolveConflict( $row, $resolvable, $suffix ) {
-               if ( !$resolvable ) {
-                       $this->output( "...  *** old title {$row->title}\n" );
-                       while ( true ) {
-                               $row->title .= $suffix;
-                               $this->output( "...  *** new title {$row->title}\n" );
-                               $title = Title::makeTitleSafe( $row->namespace, $row->title );
-                               if ( !$title ) {
-                                       $this->output( "... !!! invalid title\n" );
-
-                                       return false;
-                               }
-                               $id = $title->getArticleID();
-                               if ( $id ) {
-                                       $this->output( "...  *** page exists with ID $id ***\n" );
-                               } else {
-                                       break;
-                               }
+       private function getAlternateTitle( $title, $options ) {
+               $prefix = $options['add-prefix'];
+               $suffix = $options['add-suffix'];
+               if ( $prefix == '' && $suffix == '' ) {
+                       return false;
+               }
+               while ( true ) {
+                       $dbk = $prefix . $title->getDBkey() . $suffix;
+                       $title = Title::makeTitleSafe( $title->getNamespace(), $dbk );
+                       if ( !$title ) {
+                               return false;
+                       }
+                       if ( !$title->exists() ) {
+                               return $title;
                        }
-                       $this->output( "...  *** using suffixed form [[" . $title->getPrefixedText() . "]] ***\n" );
                }
-               $this->resolveConflictOn( $row, 'page', 'page' );
-
-               return true;
        }
 
        /**
-        * Resolve a given conflict
+        * Move a page
         *
-        * @param stdClass $row Row from the old broken entry
-        * @param string $table Table to update
-        * @param string $prefix Prefix for column name, like page or ar
+        * @fixme Update pl_from_namespace etc.
+        *
+        * @param integer $id The page_id
+        * @param Title $newTitle The new title
         * @return bool
         */
-       private function resolveConflictOn( $row, $table, $prefix ) {
-               $this->output( "... resolving on $table... " );
-               $newTitle = Title::makeTitleSafe( $row->namespace, $row->title );
-               $this->db->update( $table,
+       private function movePage( $id, Title $newTitle ) {
+               $this->db->update( 'page',
                        array(
-                               "{$prefix}_namespace" => $newTitle->getNamespace(),
-                               "{$prefix}_title" => $newTitle->getDBkey(),
+                               "page_namespace" => $newTitle->getNamespace(),
+                               "page_title" => $newTitle->getDBkey(),
                        ),
                        array(
-                               // "{$prefix}_namespace" => 0,
-                               // "{$prefix}_title" => $row->oldtitle,
-                               "{$prefix}_id" => $row->id,
+                               "page_id" => $id,
                        ),
                        __METHOD__ );
-               $this->output( "ok.\n" );
 
+               // @fixme Needs updating the *_from_namespace fields in categorylinks,
+               // pagelinks, templatelinks and imagelinks.
+
+               return true;
+       }
+
+       /**
+        * Determine if we can merge a page.
+        * We check if an inaccessible revision would become the latest and
+        * deny the merge if so -- it's theoretically possible to update the
+        * latest revision, but opens a can of worms -- search engine updates,
+        * recentchanges review, etc.
+        *
+        * @param integer $id The page_id
+        * @param Title $newTitle The new title
+        * @param string $logStatus This is set to the log status message on failure
+        * @return bool
+        */
+       private function canMerge( $id, Title $newTitle, &$logStatus ) {
+               $latestDest = Revision::newFromTitle( $newTitle, 0, Revision::READ_LATEST );
+               $latestSource = Revision::newFromPageId( $id, 0, Revision::READ_LATEST );
+               if ( $latestSource->getTimestamp() > $latestDest->getTimestamp() ) {
+                       $logStatus = 'cannot merge since source is later';
+                       return false;
+               } else {
+                       return true;
+               }
+       }
+
+       /**
+        * Merge page histories
+        *
+        * @param integer $id The page_id
+        * @param Title $newTitle The new title
+        */
+       private function mergePage( $id, Title $newTitle ) {
+               $destId = $newTitle->getArticleId();
+               $this->db->begin( __METHOD__ );
+               $this->db->update( 'revision',
+                       // SET
+                       array( 'rev_page' => $destId ),
+                       // WHERE
+                       array( 'rev_page' => $id ),
+                       __METHOD__ );
+
+               $this->db->delete( 'page', array( 'page_id' => $id ), __METHOD__ );
+
+               // @fixme Need WikiPage::doDeleteUpdates() or similar to avoid orphan
+               // rows in the links tables.
+
+               $this->db->commit( __METHOD__ );
                return true;
        }
 }
index 8ab1ddb..182a2c4 100755 (executable)
@@ -56,6 +56,10 @@ class UpdateMediaWiki extends Maintenance {
                        true
                );
                $this->addOption( 'force', 'Override when $wgAllowSchemaUpdates disables this script' );
+               $this->addOption(
+                       'skip-external-dependencies',
+                       'Skips checking whether external dependencies are up to date, mostly for developers'
+               );
        }
 
        function getDbType() {
@@ -132,8 +136,14 @@ class UpdateMediaWiki extends Maintenance {
                }
 
                // Check external dependencies are up to date
-               $composerLockUpToDate = $this->runChild( 'CheckComposerLockUpToDate' );
-               $composerLockUpToDate->execute();
+               if ( !$this->hasOption( 'skip-external-dependencies' ) ) {
+                       $composerLockUpToDate = $this->runChild( 'CheckComposerLockUpToDate' );
+                       $composerLockUpToDate->execute();
+               } else {
+                       $this->output(
+                               "Skipping checking whether external dependencies are up to date, proceed at your own risk\n"
+                       );
+               }
 
                # Attempt to connect to the database as a privileged user
                # This will vomit up an error if there are permissions problems
index 49186e5..467714e 100644 (file)
@@ -516,7 +516,7 @@ table.wikitable > tr > td,
 table.wikitable > * > tr > th,
 table.wikitable > * > tr > td {
        border: 1px solid #aaa;
-       padding: 0.2em;
+       padding: 0.3em 0.4em;
 }
 
 table.wikitable > tr > th,
index c84c884..cffa04c 100644 (file)
        list-style-image: e('/* @embed */') url(@url);
 }
 
+.list-style-image-svg(@svg, @fallback) {
+       list-style-image: e('/* @embed */') url(@svg);
+       /* Fallback to PNG bullet for IE 8 and below using CSS hack */
+       list-style-image: e('/* @embed */') url(@fallback)\9;
+}
+
 .transition(@value) {
        -webkit-transition: @value; // Safari 3.1-6.0, iOS 3.2-6.1, Android 2.1-4.3
        -moz-transition: @value; // Firefox 4-15
index 67f6811..b16570a 100644 (file)
@@ -32,7 +32,7 @@
        border: 1px solid @colorFieldBorder;
        .box-sizing(border-box);
        width: 100%;
-       padding: .4em .3em .2em .6em;
+       padding: .3em .3em .3em .6em;
        display: block;
        vertical-align: middle;
        border-radius: @borderRadius;
index 73e7f6e..8f091e4 100644 (file)
@@ -27,7 +27,7 @@
                 * @param {string|null} value Value of cookie. If `value` is `null` then this method will
                 *   instead remove a cookie by name of `key`.
                 * @param {Object|Date} [options] Options object, or expiry date
-                * @param {Date|null} [options.expires] The expiry date of the cookie.
+                * @param {Date|number|null} [options.expires] The expiry date of the cookie, or lifetime in seconds.
                 *
                 *   If `options.expires` is null, then a session cookie is set.
                 *
                                options = $.extend( defaultOptions, options );
                        }
 
-                       // $.cookie makes session cookies when expiry is omitted,
-                       // however our default is to expire wgCookieExpiration seconds from now.
-                       // Note: If wgCookieExpiration is 0, that is considered a special value indicating
+                       // Default to using wgCookieExpiration (lifetime in seconds).
+                       // If wgCookieExpiration is 0, that is considered a special value indicating
                        // all cookies should be session cookies by default.
                        if ( options.expires === undefined && config.wgCookieExpiration !== 0 ) {
                                date = new Date();
                                date.setTime( Number( date ) + ( config.wgCookieExpiration * 1000 ) );
                                options.expires = date;
+                       } else if ( typeof options.expires === 'number' ) {
+                               // Lifetime in seconds
+                               date = new Date();
+                               date.setTime( Number( date ) + ( options.expires * 1000 ) );
+                               options.expires = date;
                        } else if ( options.expires === null ) {
-                               // $.cookie makes a session cookie when expires is omitted
+                               // $.cookie makes a session cookie when options.expires is omitted
                                delete options.expires;
                        }
 
index 5e0cfcc..c3ec3f3 100644 (file)
@@ -3,13 +3,20 @@
  * @singleton
  */
 ( function ( mw, $ ) {
-       var user,
+       var user, i,
                deferreds = {},
+               byteToHex = [],
                // Extend the skeleton mw.user from mediawiki.js
                // This is kind of ugly but we're stuck with this for b/c reasons
                options = mw.user.options || new mw.Map(),
                tokens = mw.user.tokens || new mw.Map();
 
+       // Maps for number -> hex string conversion (with padding)
+       // idea from: https://github.com/broofa/node-uuid/blob/master/uuid.js
+       for ( i = 0; i < 256; i++ ) {
+               byteToHex[i] = (i + 0x100).toString(16).substr(1);
+       }
+
        /**
         * Get the current user's groups or rights
         *
                tokens: tokens,
 
                /**
-                * Generate a random user session ID (32 alpha-numeric characters)
-                *
+                * Generate a random user session ID
                 * This information would potentially be stored in a cookie to identify a user during a
-                * session or series of sessions. Its uniqueness should not be depended on.
+                * session or series of sessions. Its uniqueness should
+                * not be depended on unless the browser supports the crypto API.
+                *
+                * Known problems with Math.random():
+                * Using the Math.random function we have seen sets
+                * with 1% of non uniques among 200.000 values with Safari providing most of these.
+                * Given the prevalence of Safari in mobile the percentage of duplicates in
+                * mobile usages of this code is probably higher.
+                *
+                * Rationale:
+                * We need about 64 bits to make sure that probability of collision
+                * on 500 million (5*10^8) is <= 1%
+                * See: https://en.wikipedia.org/wiki/Birthday_problem#Probability_table
                 *
-                * @return {string} Random set of 32 alpha-numeric characters
+                * @return {string} 64 bit integer in hex format, padded
                 */
                generateRandomSessionId: function () {
-                       var i, r,
-                               id = '',
-                               seed = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz';
-                       for ( i = 0; i < 32; i++ ) {
-                               r = Math.floor( Math.random() * seed.length );
-                               id += seed.charAt( r );
+                       /*jshint bitwise:false */
+                       var rnds, i, r, cryptoObj, hexRnds = new Array( 8 );
+                       cryptoObj = window.crypto || window.msCrypto; // for IE 11
+
+                       if ( cryptoObj ) {
+                               // We fill an array with 8 random values, each of which is 8 bits.
+                               // note that rnds is an array-like object not a true array
+                               rnds = new Uint8Array( 8 );
+                               cryptoObj.getRandomValues( rnds );
+                       } else {
+                               rnds = new Array( 8 );
+                               // From: https://github.com/broofa/node-uuid/blob/master/uuid.js
+                               for ( i = 0, r; i < 8; i++ ) {
+                                       if ( ( i & 0x03 ) === 0 ) {
+                                               r = Math.random() * 0x100000000;
+                                       }
+                                       rnds[i] = r >>> ( ( i & 0x03 ) << 3 ) & 0xff;
+                               }
                        }
-                       return id;
+                       // convert to hex using byteToHex that already contains padding
+                       for ( i = 0; i < rnds.length; i++ ) {
+                               hexRnds[i] = byteToHex[rnds[i]];
+                       }
+
+                       // concatenation of two random integers with entrophy n and m
+                       // returns a string with entrophy n+m if those strings are independent
+                       return hexRnds.join( '' );
                },
 
                /**
index 0d632c5..d9831e3 100644 (file)
@@ -4684,7 +4684,7 @@ http://www.example.com/?title=AT%26T
 <p><a rel="mw:ExtLink" href="http://www.example.com/?title=AT%26T">http://www.example.com/?title=AT%26T</a></p>
 !! end
 
-# According to http://dev.w3.org/html5/spec/Overview.html#parsing-urls a plain
+# According to http://www.w3.org/TR/2011/WD-html5-20110525/Overview.html#parsing-urls a plain
 # % is actually legal in HTML5. Any change in output would need testing though.
 !! test
 Bug 4781, 5267: %25 in URL
index 44463cf..c013f4f 100644 (file)
@@ -56,6 +56,17 @@ class StatusTest extends MediaWikiLangTestCase {
                $this->assertEquals( $message, $status->getMessage()->getKey() );
        }
 
+       /**
+        *
+        */
+       public function testOkAndErrors() {
+               $status = Status::newGood( 'foo' );
+               $this->assertTrue( $status->ok );
+               $status = Status::newFatal( 'foo', 1, 2 );
+               $this->assertFalse( $status->ok );
+               $this->assertArrayEquals( array( array( 'type' => 'error', 'message' => 'foo', 'params' => array( 1, 2 ) ) ), $status->errors );
+       }
+
        /**
         * @dataProvider provideSetResult
         * @covers Status::setResult
index 6ef2e23..0a977dc 100644 (file)
@@ -415,7 +415,10 @@ class TextPassDumperTest extends DumpTestCase {
        }
 
        /**
+        * Broken per T70653.
+        *
         * @group large
+        * @group Broken
         */
        function testCheckpointPlain() {
                $this->checkpointHelper();
@@ -431,7 +434,10 @@ class TextPassDumperTest extends DumpTestCase {
         * PHP extensions, we go for gzip instead, which triggers the same relevant code
         * paths while still being testable on more systems.
         *
+        * Broken per T70653.
+        *
         * @group large
+        * @group Broken
         */
        function testCheckpointGzip() {
                $this->checkHasGzip();
index c6aa3b7..f5f199e 100644 (file)
@@ -53,7 +53,7 @@
                assert.strictEqual( call[ 1 ], '0', '0 is value' );
        } );
 
-       QUnit.test( 'set( key, value, expires )', 5, function ( assert ) {
+       QUnit.test( 'set( key, value, expires )', 6, function ( assert ) {
                var date, options;
 
                date = new Date();
 
                mw.cookie.set( 'foo', 'bar' );
                options = $.cookie.lastCall.args[ 2 ];
-               assert.deepEqual( options.expires, expiryDate, 'Default cookie expiration is used' );
+               assert.deepEqual( options.expires, expiryDate, 'default expiration' );
 
                mw.cookie.set( 'foo', 'bar', date );
                options = $.cookie.lastCall.args[ 2 ];
-               assert.strictEqual( options.expires, date, 'Custom expiration date' );
+               assert.strictEqual( options.expires, date, 'custom expiration as Date' );
+
+               date = new Date();
+               date.setDate( date.getDate() + 1 );
+
+               mw.cookie.set( 'foo', 'bar', 86400 );
+               options = $.cookie.lastCall.args[ 2 ];
+               assert.deepEqual( options.expires, date, 'custom expiration as lifetime in seconds' );
 
                mw.cookie.set( 'foo', 'bar', null );
                options = $.cookie.lastCall.args[ 2 ];
-               assert.strictEqual( options.expires, undefined, 'Expiry null forces session cookie' );
+               assert.strictEqual( options.expires, undefined, 'null forces session cookie' );
 
                // Per DefaultSettings.php, when wgCookieExpiration is 0, the default should
                // be session cookies
@@ -81,7 +88,7 @@
 
                mw.cookie.set( 'foo', 'bar', date );
                options = $.cookie.lastCall.args[ 2 ];
-               assert.strictEqual( options.expires, date, 'Custom expiration when default is session cookies' );
+               assert.strictEqual( options.expires, date, 'custom expiration (with wgCookieExpiration=0)' );
        } );
 
        QUnit.test( 'set( key, value, options )', 4, function ( assert ) {
index 91321a2..fe22b7a 100644 (file)
 
                this.server.respond();
        } );
+
+       QUnit.test( 'session numbers', 4, function ( assert ) {
+               /*global $:false */
+               var sessionId = mw.user.generateRandomSessionId(),
+               cryptoObj = window.crypto;
+
+               assert.equal( typeof sessionId, 'string', 'generateRandomSessionId should return a string' );
+               assert.equal( $.trim(sessionId), sessionId, 'generateRandomSessionId should not contain whitespace' );
+               // pretend crypto API is not there and do same test, make sure code runs
+               // through  Math.random loop
+               window.crypto = undefined;
+               sessionId =  mw.user.generateRandomSessionId();
+               assert.equal( typeof sessionId, 'string', 'generateRandomSessionId should return a string' );
+               assert.equal( sessionId.trim(), sessionId, 'generateRandomSessionId should not be empty' );
+               //restoring crypto object
+               window.crypto = cryptoObj;
+
+       } );
 }( mediaWiki ) );