Merge "RCFilters: Align TagItemWidget highlight in Safari"
authorjenkins-bot <jenkins-bot@gerrit.wikimedia.org>
Tue, 11 Jul 2017 00:56:39 +0000 (00:56 +0000)
committerGerrit Code Review <gerrit@wikimedia.org>
Tue, 11 Jul 2017 00:56:40 +0000 (00:56 +0000)
159 files changed:
RELEASE-NOTES-1.30
autoload.php
composer.json
includes/DefaultSettings.php
includes/DeprecatedGlobal.php
includes/EditPage.php
includes/GlobalFunctions.php
includes/Linker.php
includes/MediaWikiServices.php
includes/MergeHistory.php
includes/OutputPage.php
includes/ServiceWiring.php
includes/Setup.php
includes/StubObject.php
includes/actions/Action.php
includes/actions/InfoAction.php
includes/api/ApiBase.php
includes/api/ApiErrorFormatter.php
includes/api/ApiStashEdit.php
includes/api/i18n/fr.json
includes/api/i18n/pt-br.json
includes/api/i18n/sv.json
includes/cache/LinkBatch.php
includes/cache/localisation/LocalisationCache.php
includes/content/WikiTextStructure.php
includes/context/ContextSource.php
includes/context/DerivativeContext.php
includes/context/IContextSource.php
includes/context/RequestContext.php
includes/deferred/DeferredUpdates.php
includes/diff/DairikiDiff.php
includes/exception/ErrorPageError.php
includes/exception/LocalizedException.php
includes/filerepo/file/LocalFile.php
includes/installer/CliInstaller.php
includes/installer/LocalSettingsGenerator.php
includes/installer/WebInstaller.php
includes/installer/i18n/ja.json
includes/libs/GenericArrayObject.php
includes/libs/MemoizedCallable.php
includes/libs/rdbms/database/DBConnRef.php
includes/libs/rdbms/database/Database.php
includes/libs/rdbms/database/IDatabase.php
includes/libs/stats/BufferingStatsdDataFactory.php
includes/libs/stats/IBufferingStatsdDataFactory.php [new file with mode: 0644]
includes/libs/stats/MediawikiStatsdDataFactory.php [deleted file]
includes/libs/stats/NullStatsdDataFactory.php
includes/libs/xmp/XMP.php
includes/logging/LogEntry.php
includes/logging/LogEventsList.php
includes/logging/LogFormatter.php
includes/objectcache/SqlBagOStuff.php
includes/parser/Parser.php
includes/parser/ParserCache.php
includes/resourceloader/ResourceLoaderSkinModule.php
includes/search/PerRowAugmentor.php
includes/search/SearchIndexFieldDefinition.php
includes/site/MediaWikiSite.php
includes/site/Site.php
includes/specialpage/ChangesListSpecialPage.php
includes/specials/SpecialLog.php
includes/specials/SpecialMediaStatistics.php
includes/specials/SpecialNewimages.php
includes/specials/SpecialRecentchanges.php
includes/specials/SpecialShortpages.php
includes/specials/SpecialUndelete.php
includes/user/UserRightsProxy.php
includes/utils/FileContentsHasher.php
languages/data/Names.php
languages/i18n/be-tarask.json
languages/i18n/bg.json
languages/i18n/bs.json
languages/i18n/cs.json
languages/i18n/csb.json
languages/i18n/de.json
languages/i18n/en.json
languages/i18n/es.json
languages/i18n/eu.json
languages/i18n/fa.json
languages/i18n/fr.json
languages/i18n/fy.json
languages/i18n/gor.json
languages/i18n/gsw.json
languages/i18n/he.json
languages/i18n/hi.json
languages/i18n/hr.json
languages/i18n/ia.json
languages/i18n/it.json
languages/i18n/ja.json
languages/i18n/jv.json
languages/i18n/ko.json
languages/i18n/lb.json
languages/i18n/lfn.json
languages/i18n/lt.json
languages/i18n/lv.json
languages/i18n/mk.json
languages/i18n/ml.json
languages/i18n/nn.json
languages/i18n/pl.json
languages/i18n/pt.json
languages/i18n/qqq.json
languages/i18n/rif.json
languages/i18n/rm.json
languages/i18n/roa-tara.json
languages/i18n/ru.json
languages/i18n/sah.json
languages/i18n/shi.json
languages/i18n/shn.json
languages/i18n/si.json
languages/i18n/sl.json
languages/i18n/sq.json
languages/i18n/sv.json
languages/i18n/th.json
languages/i18n/uk.json
languages/i18n/wa.json
languages/i18n/wo.json
languages/i18n/zh-hans.json
maintenance/mwdocgen.php
maintenance/purgeParserCache.php
package.json
phpcs.xml
resources/Resources.php
resources/src/mediawiki.rcfilters/dm/mw.rcfilters.dm.ChangesListViewModel.js
resources/src/mediawiki.rcfilters/mw.rcfilters.Controller.js
resources/src/mediawiki.rcfilters/styles/mw.rcfilters.ui.ChangesListWrapperWidget.less
resources/src/mediawiki.rcfilters/styles/mw.rcfilters.ui.FilterWrapperWidget.less
resources/src/mediawiki.rcfilters/styles/mw.rcfilters.ui.LiveUpdateButtonWidget.less [new file with mode: 0644]
resources/src/mediawiki.rcfilters/ui/mw.rcfilters.ui.ChangesListWrapperWidget.js
resources/src/mediawiki.rcfilters/ui/mw.rcfilters.ui.FilterWrapperWidget.js
resources/src/mediawiki.rcfilters/ui/mw.rcfilters.ui.LiveUpdateButtonWidget.js [new file with mode: 0644]
resources/src/mediawiki.rcfilters/ui/mw.rcfilters.ui.MenuSelectWidget.js
resources/src/mediawiki.special/mediawiki.special.changeslist.enhanced.css
resources/src/mediawiki.special/mediawiki.special.newFiles.js [deleted file]
resources/src/mediawiki.ui/components/buttons.less
resources/src/mediawiki/api/upload.js
resources/src/mediawiki/mediawiki.Upload.js
resources/src/mediawiki/mediawiki.js
tests/parser/ParserTestRunner.php
tests/parser/parserTests.php
tests/parser/parserTests.txt
tests/phpunit/includes/DeprecatedGlobalTest.php [new file with mode: 0644]
tests/phpunit/includes/LinkerTest.php
tests/phpunit/includes/MediaWikiServicesTest.php
tests/phpunit/includes/db/DatabaseSQLTest.php
tests/phpunit/includes/db/DatabaseTestHelper.php
tests/phpunit/includes/deferred/DeferredUpdatesTest.php
tests/phpunit/includes/exception/ErrorPageErrorTest.php
tests/phpunit/includes/resourceloader/ResourceLoaderSkinModuleTest.php [new file with mode: 0644]
tests/phpunit/suites/ParserTestTopLevelSuite.php
tests/phpunit/suites/UploadFromUrlTestSuite.php
tests/qunit/suites/resources/mediawiki/mediawiki.loader.test.js
tests/selenium/.eslintrc.json
tests/selenium/README.md
tests/selenium/pageobjects/createaccount.page.js
tests/selenium/pageobjects/edit.page.js
tests/selenium/pageobjects/userlogout.page.js [deleted file]
tests/selenium/specs/page.js
tests/selenium/specs/user.js
tests/selenium/wdio.conf.js

index c8b746d..be21a7d 100644 (file)
@@ -43,7 +43,7 @@ production.
 === External library changes in 1.30 ===
 
 ==== Upgraded external libraries ====
-* 
+* mediawiki/mediawiki-codesniffer updated to 0.8.1.
 
 ==== New external libraries ====
 * The class \TestingAccessWrapper has been moved to the external library
@@ -127,6 +127,13 @@ changes to languages because of Phabricator reports.
   WikiPage::makeParserOptions() to create the ParserOptions object and only
   change options that affect the parser cache key.
 * Article::viewRedirect() is deprecated.
+* DeprecatedGlobal no longer supports passing in a direct value, it requires a
+  callable factory function or a class name.
+* The $parserMemc global, wfGetParserCacheStorage(), and ParserCache::singleton()
+  are all deprecated. The main ParserCache instance should be obtained from
+  MediaWikiServices instead. Access to the underlying BagOStuff is possible
+  through the new ParserCache::getCacheStorage() method.
+* .mw-ui-constructive CSS class (deprecated in 1.27) was removed.
 
 == Compatibility ==
 MediaWiki 1.30 requires PHP 5.5.9 or later. There is experimental support for
index 2560bdb..88b6170 100644 (file)
@@ -604,6 +604,7 @@ $wgAutoloadLocalClasses = [
        'HttpError' => __DIR__ . '/includes/exception/HttpError.php',
        'HttpStatus' => __DIR__ . '/includes/libs/HttpStatus.php',
        'IApiMessage' => __DIR__ . '/includes/api/ApiMessage.php',
+       'IBufferingStatsdDataFactory' => __DIR__ . '/includes/libs/stats/IBufferingStatsdDataFactory.php',
        'ICacheHelper' => __DIR__ . '/includes/cache/CacheHelper.php',
        'IContextSource' => __DIR__ . '/includes/context/IContextSource.php',
        'IDBAccessObject' => __DIR__ . '/includes/dao/IDBAccessObject.php',
@@ -964,7 +965,6 @@ $wgAutoloadLocalClasses = [
        'MediaWiki\\Widget\\TitleInputWidget' => __DIR__ . '/includes/widget/TitleInputWidget.php',
        'MediaWiki\\Widget\\UserInputWidget' => __DIR__ . '/includes/widget/UserInputWidget.php',
        'MediaWiki\\Widget\\UsersMultiselectWidget' => __DIR__ . '/includes/widget/UsersMultiselectWidget.php',
-       'MediawikiStatsdDataFactory' => __DIR__ . '/includes/libs/stats/MediawikiStatsdDataFactory.php',
        'MemCachedClientforWiki' => __DIR__ . '/includes/compat/MemcachedClientCompat.php',
        'MemcLockManager' => __DIR__ . '/includes/libs/lockmanager/MemcLockManager.php',
        'MemcachedBagOStuff' => __DIR__ . '/includes/libs/objectcache/MemcachedBagOStuff.php',
index ea15e61..297af77 100644 (file)
@@ -53,7 +53,7 @@
                "jakub-onderka/php-parallel-lint": "0.9.2",
                "jetbrains/phpstorm-stubs": "dev-master#1b9906084d6635456fcf3f3a01f0d7d5b99a578a",
                "justinrainbow/json-schema": "~3.0",
-               "mediawiki/mediawiki-codesniffer": "0.8.0",
+               "mediawiki/mediawiki-codesniffer": "0.8.1",
                "monolog/monolog": "~1.22.1",
                "nikic/php-parser": "2.1.0",
                "nmred/kafka-php": "0.1.5",
index 1459ab6..11f08b2 100644 (file)
@@ -6333,15 +6333,16 @@ $wgSiteStatsAsyncFactor = false;
  * Parser test suite files to be run by parserTests.php when no specific
  * filename is passed to it.
  *
- * Extensions may add their own tests to this array, or site-local tests
- * may be added via LocalSettings.php
+ * Extensions using extension.json will have any *.txt file in a
+ * tests/parser/ directory automatically run.
+ *
+ * Core tests can be added to ParserTestRunner::$coreTestFiles.
  *
  * Use full paths.
+ *
+ * @deprecated since 1.30
  */
-$wgParserTestFiles = [
-       "$IP/tests/parser/parserTests.txt",
-       "$IP/tests/parser/extraParserTests.txt"
-];
+$wgParserTestFiles = [];
 
 /**
  * Allow running of javascript test suites via [[Special:JavaScriptTest]] (such as QUnit).
@@ -6778,6 +6779,11 @@ $wgStructuredChangeFiltersEnableSaving = true;
  */
 $wgStructuredChangeFiltersEnableExperimentalViews = false;
 
+/**
+ * Whether to allow users to use the experimental live update feature in the new RecentChanges UI
+ */
+$wgStructuredChangeFiltersEnableLiveUpdate = false;
+
 /**
  * Use new page patrolling to check new pages on Special:Newpages
  */
index 7c592c6..60dde40 100644 (file)
  * Class to allow throwing wfDeprecated warnings
  * when people use globals that we do not want them to.
  */
-
 class DeprecatedGlobal extends StubObject {
-       protected $realValue, $version;
+       protected $version;
 
-       function __construct( $name, $realValue, $version = false ) {
-               parent::__construct( $name );
-               $this->realValue = $realValue;
+       /**
+        * @param string $name Global name
+        * @param callable|string $callback Factory function or class name to construct
+        * @param bool|string $version Version global was deprecated in
+        */
+       function __construct( $name, $callback, $version = false ) {
+               parent::__construct( $name, $callback );
                $this->version = $version;
        }
 
@@ -51,7 +54,7 @@ class DeprecatedGlobal extends StubObject {
                 * rather unlikely.
                 */
                wfDeprecated( '$' . $this->global, $this->version, false, 6 );
-               return $this->realValue;
+               return parent::_newObject();
        }
        // @codingStandardsIgnoreEnd
 }
index 6be8771..814c248 100644 (file)
@@ -1493,6 +1493,20 @@ class EditPage {
                return $status;
        }
 
+       /**
+        * Log when a page was successfully saved after the edit conflict view
+        */
+       private function incrementResolvedConflicts() {
+               global $wgRequest;
+
+               if ( $wgRequest->getText( 'mode' ) !== 'conflict' ) {
+                       return;
+               }
+
+               $stats = MediaWikiServices::getInstance()->getStatsdDataFactory();
+               $stats->increment( 'edit.failures.conflict.resolved' );
+       }
+
        /**
         * Handle status, such as after attempt save
         *
@@ -1512,6 +1526,8 @@ class EditPage {
                if ( $status->value == self::AS_SUCCESS_UPDATE
                        || $status->value == self::AS_SUCCESS_NEW_ARTICLE
                ) {
+                       $this->incrementResolvedConflicts();
+
                        $this->didSave = true;
                        if ( !$resultDetails['nullEdit'] ) {
                                $this->setPostEditCookie( $status->value );
index 089ed81..92cb8d8 100644 (file)
@@ -3461,6 +3461,7 @@ function wfGetMessageCacheStorage() {
 /**
  * Get the cache object used by the parser cache
  *
+ * @deprecated since 1.30, use MediaWikiServices::getParserCache()->getCacheStorage()
  * @return BagOStuff
  */
 function wfGetParserCacheStorage() {
index 5845532..f2e4ac4 100644 (file)
@@ -1331,7 +1331,10 @@ class Linker {
                        $link = Linker::makeExternalLink(
                                WikiMap::getForeignURL(
                                        $wikiId,
-                                       $title->getPrefixedText(),
+                                       $title->getNamespace() === 0
+                                               ? $title->getDBkey()
+                                               : MWNamespace::getCanonicalName( $title->getNamespace() ) . ':'
+                                                       . $title->getDBkey(),
                                        $title->getFragment()
                                ),
                                $text,
index 6161ee7..84fc959 100644 (file)
@@ -9,7 +9,7 @@ use EventRelayerGroup;
 use GenderCache;
 use GlobalVarConfig;
 use Hooks;
-use MediawikiStatsdDataFactory;
+use IBufferingStatsdDataFactory;
 use Wikimedia\Rdbms\LBFactory;
 use LinkCache;
 use Wikimedia\Rdbms\LoadBalancer;
@@ -23,6 +23,7 @@ use MWException;
 use MimeAnalyzer;
 use ObjectCache;
 use Parser;
+use ParserCache;
 use ProxyLookup;
 use SearchEngine;
 use SearchEngineConfig;
@@ -446,7 +447,7 @@ class MediaWikiServices extends ServiceContainer {
 
        /**
         * @since 1.27
-        * @return MediawikiStatsdDataFactory
+        * @return IBufferingStatsdDataFactory
         */
        public function getStatsdDataFactory() {
                return $this->getService( 'StatsdDataFactory' );
@@ -573,6 +574,14 @@ class MediaWikiServices extends ServiceContainer {
                return $this->getService( 'Parser' );
        }
 
+       /**
+        * @since 1.30
+        * @return ParserCache
+        */
+       public function getParserCache() {
+               return $this->getService( 'ParserCache' );
+       }
+
        /**
         * @since 1.28
         * @return GenderCache
index cc589c9..48ff97b 100644 (file)
@@ -60,7 +60,6 @@ class MergeHistory {
        protected $revisionsMerged;
 
        /**
-        * MergeHistory constructor.
         * @param Title $source Page from which history will be merged
         * @param Title $dest Page to which history will be merged
         * @param string|bool $timestamp Timestamp up to which history from the source will be merged
index 24a506c..969171d 100644 (file)
@@ -295,7 +295,7 @@ class OutputPage extends ContextSource {
        private $mEnableSectionEditLinks = true;
 
        /**
-        * @var string|null The URL to send in a <link> element with rel=copyright
+        * @var string|null The URL to send in a <link> element with rel=license
         */
        private $copyrightUrl;
 
@@ -3446,7 +3446,7 @@ class OutputPage extends ContextSource {
 
                if ( $copyright ) {
                        $tags['copyright'] = Html::element( 'link', [
-                               'rel' => 'copyright',
+                               'rel' => 'license',
                                'href' => $copyright ]
                        );
                }
index 2dfcc42..e1244e7 100644 (file)
@@ -287,7 +287,18 @@ return [
                return ObjectFactory::constructClassInstance( $conf['class'], [ $conf ] );
        },
 
-       'LinkCache' => function ( MediaWikiServices $services ) {
+       'ParserCache' => function( MediaWikiServices $services ) {
+               $config = $services->getMainConfig();
+               $cache = ObjectCache::getInstance( $config->get( 'ParserCacheType' ) );
+               wfDebugLog( 'caches', 'parser: ' . get_class( $cache ) );
+
+               return new ParserCache(
+                       $cache,
+                       $config->get( 'CacheEpoch' )
+               );
+       },
+
+       'LinkCache' => function( MediaWikiServices $services ) {
                return new LinkCache(
                        $services->getTitleFormatter(),
                        $services->getMainWANObjectCache()
index 5795517..ac00fab 100644 (file)
@@ -683,14 +683,19 @@ $ps_memcached = Profiler::instance()->scopedProfileIn( $fname . '-memcached' );
 
 $wgMemc = wfGetMainCache();
 $messageMemc = wfGetMessageCacheStorage();
-$parserMemc = wfGetParserCacheStorage();
+
+/**
+ * @deprecated since 1.30
+ */
+$parserMemc = new DeprecatedGlobal( 'parserMemc', function() {
+       return MediaWikiServices::getInstance()->getParserCache()->getCacheStorage();
+}, '1.30' );
 
 wfDebugLog( 'caches',
        'cluster: ' . get_class( $wgMemc ) .
        ', WAN: ' . ( $wgMainWANCache === CACHE_NONE ? 'CACHE_NONE' : $wgMainWANCache ) .
        ', stash: ' . $wgMainStash .
        ', message: ' . get_class( $messageMemc ) .
-       ', parser: ' . get_class( $parserMemc ) .
        ', session: ' . get_class( ObjectCache::getInstance( $wgSessionCacheType ) )
 );
 
index 0210ed9..5208b8f 100644 (file)
@@ -55,8 +55,6 @@ class StubObject {
        protected $params;
 
        /**
-        * Constructor.
-        *
         * @param string $global Name of the global variable.
         * @param string|callable $class Name of the class of the real object
         *                               or a factory function to call
index 844a0d6..88382b6 100644 (file)
@@ -259,8 +259,6 @@ abstract class Action implements MessageLocalizer {
        }
 
        /**
-        * Constructor.
-        *
         * Only public since 1.21
         *
         * @param Page $page
index 886bf37..baec944 100644 (file)
@@ -127,7 +127,10 @@ class InfoAction extends FormlessAction {
                        // Messages:
                        // pageinfo-header-basic, pageinfo-header-edits, pageinfo-header-restrictions,
                        // pageinfo-header-properties, pageinfo-category-info
-                       $content .= $this->makeHeader( $this->msg( "pageinfo-${header}" )->escaped() ) . "\n";
+                       $content .= $this->makeHeader(
+                               $this->msg( "pageinfo-${header}" )->escaped(),
+                               "mw-pageinfo-${header}"
+                       ) . "\n";
                        $table = "\n";
                        foreach ( $infoTable as $infoRow ) {
                                $name = ( $infoRow[0] instanceof Message ) ? $infoRow[0]->escaped() : $infoRow[0];
@@ -152,10 +155,11 @@ class InfoAction extends FormlessAction {
         * @param string $header The header text.
         * @return string The HTML.
         */
-       protected function makeHeader( $header ) {
+       protected function makeHeader( $header, $canonicalId ) {
                $spanAttribs = [ 'class' => 'mw-headline', 'id' => Sanitizer::escapeId( $header ) ];
+               $h2Attribs = [ 'id' => Sanitizer::escapeId( $canonicalId ) ];
 
-               return Html::rawElement( 'h2', [], Html::element( 'span', $spanAttribs, $header ) );
+               return Html::rawElement( 'h2', $h2Attribs, Html::element( 'span', $spanAttribs, $header ) );
        }
 
        /**
index 2dcece1..bc3def8 100644 (file)
@@ -894,7 +894,7 @@ abstract class ApiBase extends ContextSource {
         * Get a WikiPage object from a title or pageid param, if possible.
         * Can die, if no param is set or if the title or page id is not valid.
         *
-        * @param array $params
+        * @param array $params User provided set of parameters, as from $this->extractRequestParams()
         * @param bool|string $load Whether load the object's state from the database:
         *        - false: don't load (if the pageid is given, it will still be loaded)
         *        - 'fromdb': load from a replica DB
@@ -935,7 +935,7 @@ abstract class ApiBase extends ContextSource {
         * Can die, if no param is set or if the title or page id is not valid.
         *
         * @since 1.29
-        * @param array $params
+        * @param array $params User provided set of parameters, as from $this->extractRequestParams()
         * @return Title
         */
        public function getTitleFromTitleOrPageId( $params ) {
index 5484a78..7fb1352 100644 (file)
@@ -254,7 +254,7 @@ class ApiErrorFormatter {
                $ret = preg_replace( '!</?(var|kbd|samp|code)>!', '"', $text );
 
                // Strip tags and decode.
-               $ret = html_entity_decode( strip_tags( $ret ), ENT_QUOTES | ENT_HTML5 );
+               $ret = Sanitizer::stripAllTags( $ret );
 
                return $ret;
        }
index c7a00c6..d03fca8 100644 (file)
@@ -44,6 +44,7 @@ class ApiStashEdit extends ApiBase {
 
        const PRESUME_FRESH_TTL_SEC = 30;
        const MAX_CACHE_TTL = 300; // 5 minutes
+       const MAX_SIGNATURE_TTL = 60;
 
        public function execute() {
                $user = $this->getUser();
@@ -391,6 +392,12 @@ class ApiStashEdit extends ApiBase {
                // Put an upper limit on the TTL for sanity to avoid extreme template/file staleness.
                $since = time() - wfTimestamp( TS_UNIX, $parserOutput->getTimestamp() );
                $ttl = min( $parserOutput->getCacheExpiry() - $since, self::MAX_CACHE_TTL );
+
+               // Avoid extremely stale user signature timestamps (T84843)
+               if ( $parserOutput->getFlag( 'user-signature' ) ) {
+                       $ttl = min( $ttl, self::MAX_SIGNATURE_TTL );
+               }
+
                if ( $ttl <= 0 ) {
                        return [ null, 0, 'no_ttl' ];
                }
index 55aaeb8..e419711 100644 (file)
        "apihelp-query+search-paramvalue-prop-sectiontitle": "Ajoute le titre de la section correspondante.",
        "apihelp-query+search-paramvalue-prop-categorysnippet": "Ajoute un extrait analysé de la catégorie correspondante.",
        "apihelp-query+search-paramvalue-prop-isfilematch": "Ajoute un booléen indiquant si la recherche correspond au contenu du fichier.",
-       "apihelp-query+search-paramvalue-prop-score": "<span class=\"apihelp-deprecated\">Désuet et ignoré.</span>",
-       "apihelp-query+search-paramvalue-prop-hasrelated": "<span class=\"apihelp-deprecated\">Désuet et ignoré.</span>",
+       "apihelp-query+search-paramvalue-prop-score": "Ignoré.",
+       "apihelp-query+search-paramvalue-prop-hasrelated": "Ignoré.",
        "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.",
index d0235cb..b09f570 100644 (file)
                        "Felipe L. Ewald"
                ]
        },
+       "apihelp-main-extended-description": "<div class=\"hlist plainlinks api-main-links\">\n* [[mw:Special:MyLanguage/API:Main_page|Documentação]]\n* [[mw:Special:MyLanguage/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 Bugs & solicitações]\n</div>\n<strong>Status:</strong> Todos os recursos exibidos nesta página devem estar funcionando, mas a API ainda está em desenvolvimento ativo e pode mudar a qualquer momento. Inscrever-se na [https://lists.wikimedia.org/pipermail/mediawiki-api-announce/ lista de discussão mediawiki-api-announce] para aviso de atualizações.\n\n<strong>Requisições incorretas:</strong> Quando requisições erradas são enviadas para a API, um cabeçalho HTTP será enviado com a chave \"MediaWiki-API-Error\" e então o valor do cabeçalho e o código de erro enviados de volta serão definidos para o mesmo valor. Para mais informações, veja [[mw:Special:MyLanguage/API:Errors_and_warnings|API: Erros e avisos]].\n\n<strong>Testando:</strong> Para facilitar o teste das requisições da API, consulte [[Special:ApiSandbox]].",
        "apihelp-main-param-action": "Qual ação executar.",
        "apihelp-main-param-format": "O formato da saída.",
-       "apihelp-main-param-smaxage": "Define o cabeçalho <code>s-maxage</code> para esta quantidade de segundos. Os erros não são armazenados em cache.",
-       "apihelp-main-param-maxage": "Define o cabeçalho <code>max-age</code> para esta quantidade de segundos. Os erros não são armazenados em cache.",
-       "apihelp-main-param-assertuser": "Verificar que o utilizador atual é o utilizador nomeado.",
+       "apihelp-main-param-maxlag": "O atraso máximo pode ser usado quando o MediaWiki está instalado em um cluster replicado no banco de dados. Para salvar as ações que causam mais atraso na replicação do site, esse parâmetro pode fazer o cliente aguardar até que o atraso da replicação seja menor do que o valor especificado. Em caso de atraso excessivo, o código de erro <samp>maxlag</samp> é retornado com uma mensagem como <samp>Waiting for $host: $lag seconds lagged</samp>.<br />Veja [[mw:Special:MyLanguage/Manual:Maxlag_parameter|Manual: Maxlag parameter]] para mais informações.",
+       "apihelp-main-param-smaxage": "Define o cabeçalho HTTP de controle de cache <code>s-maxage</code> para esta quantidade de segundos. Erros não são armazenados em cache.",
+       "apihelp-main-param-maxage": "Define o cabeçalho HTTP de controle de cache <code>max-age</code> para esta quantidade de segundos. Erros não são armazenados em cache.",
+       "apihelp-main-param-assert": "Verifique se o usuário está logado se configurado para <kbd>user</kbd> ou tem o direito do usuário do bot se <kbd>bot</kbd>.",
+       "apihelp-main-param-assertuser": "Verificar que o usuário atual é o utilizador nomeado.",
        "apihelp-main-param-requestid": "Qualquer valor dado aqui será incluído na resposta. Pode ser usado para distinguir requisições.",
        "apihelp-main-param-servedby": "Inclua o nome de host que atendeu a solicitação nos resultados.",
-       "apihelp-main-param-curtimestamp": "Inclui a data atual no resultado.",
+       "apihelp-main-param-curtimestamp": "Inclui o timestamp atual no resultado.",
+       "apihelp-main-param-responselanginfo": "Inclua os idiomas usados para <var>uselang</var> e <var>errorlang</var> no resultado.",
        "apihelp-main-param-origin": "Ao acessar a API usando uma solicitação AJAX por domínio cruzado (CORS), defina isto como o domínio de origem. Isto deve estar incluso em toda solicitação ''pre-flight'', sendo portanto parte do URI da solicitação (ao invés do corpo do POST).\n\nPara solicitações autenticadas, isto deve corresponder a uma das origens no cabeçalho <code>Origin</code>, para que seja algo como <kbd>https://pt.wikipedia.org</kbd> ou <kbd>https://meta.wikimedia.org</kbd>. Se este parâmetro não corresponder ao cabeçalho <code>Origin</code>, uma resposta 403 será retornada. Se este parâmetro corresponder ao cabeçalho <code>Origin</code> e a origem for permitida (''whitelisted''), os cabeçalhos <code>Access-Control-Allow-Origin</code> e <code>Access-Control-Allow-Credentials</code> serão definidos.\n\nPara solicitações não autenticadas, especifique o valor <kbd>*</kbd>. Isto fará com que o cabeçalho <code>Access-Control-Allow-Origin</code> seja definido, porém o <code>Access-Control-Allow-Credentials</code> será <code>false</code> e todos os dados específicos para usuários tornar-se-ão restritos.",
-       "apihelp-block-summary": "Bloquear um usuário",
+       "apihelp-main-param-uselang": "Linguagem a ser usada para traduções de mensagens. <kbd>[[Special:ApiHelp/query+siteinfo|action=query&meta=siteinfo]]</kbd> com <kbd>siprop=languages</kbd> retorna uma lista de códigos de idioma ou especifique <kbd>user</kbd> para usar a preferência de idioma do usuário atual ou especifique <kbd>content</kbd> para usar o idioma de conteúdo desta wiki.",
+       "apihelp-main-param-errorformat": "Formato a ser usado aviso e saída de texto de erro.\n; Texto simples: Texto wiki com tags HTML removidas e entidades substituídas.\n; Wikitext: Unparsed wikitext. \n; html: HTML.\n; Bruto: chave e parâmetros da mensagem.\n; Nenhum: sem saída de texto, apenas os códigos de erro.\n; Bc: Formato usado antes do MediaWiki 1.29. <var>errorlang</var> e <var>errorsuselocal</var> são ignorados.",
+       "apihelp-main-param-errorlang": "Linguagem a utilizar para avisos e erros. <kbd>[[Special:ApiHelp/query+siteinfo|action=query&meta=siteinfo]]</kbd> com <kbd>siprop=languages</kbd> retorna uma lista de códigos de idioma ou especifique <kbd>content</kbd> para usar o idioma do conteúdo desta wiki ou especifique <kbd>uselang</kbd> para usar o mesmo valor que o parâmetro <var>uselang</var>.",
+       "apihelp-main-param-errorsuselocal": "Se for dado, os textos de erro usarão mensagens customizadas localmente a partir do espaço nominal {{ns: MediaWiki}}.",
+       "apihelp-block-summary": "Bloquear um usuário.",
        "apihelp-block-param-user": "Nome de usuário, endereço IP ou faixa de IP para bloquear. Não pode ser usado junto com <var>$1userid</var>",
+       "apihelp-block-param-userid": "ID de usuário para bloquear. Não pode ser usado em conjunto com <var>$1user</var>.",
+       "apihelp-block-param-expiry": "Tempo de expiração. Pode ser relativo (por exemplo <kbd>5 meses</kbd> ou <kbd>2 semanas</kbd>) ou absoluto (por exemplo <kbd>2014-09-18T12:34:56Z</kbd>). Se definido para <kbd>infinite</kbd>, <kbd>indefinite</kbd> ou <kbd>never</kbd>, o bloqueio nunca irá expirar.",
        "apihelp-block-param-reason": "Razão do bloqueio.",
-       "apihelp-block-param-anononly": "Bloqueia apenas usuários anônimos (ou seja desativa edições anônimas para este endereço IP).",
+       "apihelp-block-param-anononly": "Bloqueia apenas usuários anônimos (ou seja. desativa edições anônimas para este endereço IP).",
        "apihelp-block-param-nocreate": "Prevenir a criação de conta.",
-       "apihelp-block-param-autoblock": "Bloquear automaticamente o endereço IP usado e quaisquer endereços IPs subseqüentes que tentarem acessar a partir deles.",
+       "apihelp-block-param-autoblock": "Bloquear automaticamente o endereço IP usado e quaisquer endereços IPs subsequentes que tentarem acessar a partir deles.",
+       "apihelp-block-param-noemail": "Impedir que o usuário envie e-mails através da wiki. (Requer o direito <code>blockemail</code>).",
        "apihelp-block-param-hidename": "Oculta o nome do usuário do ''log'' de bloqueio. (Requer o direito <code>hideuser</code>).",
+       "apihelp-block-param-allowusertalk": "Permitir que o usuário edite sua própria página de discussão (depende de <var>[[mw:Special:MyLanguage/Manual:$wgBlockAllowsUTEdit|$wgBlockAllowsUTEdit]]</var>).",
        "apihelp-block-param-reblock": "Se o usuário já estiver bloqueado, sobrescrever o bloqueio existente.",
-       "apihelp-block-param-watchuser": "Vigiar as páginas de utilizador e de discussão, do utilizador ou do endereço IP.",
-       "apihelp-block-example-ip-simple": "Bloquear endereço IP <kbd>192.0.2.5</kbd> por três dias com razão <kbd>Primeira medida</kbd>.",
-       "apihelp-block-example-user-complex": "Bloquear usuário <kbd>Vandal</kbd> indefinidamente com razão <kbd>Vandalism</kbd> e o impede de criar nova conta e envio de emails.",
+       "apihelp-block-param-watchuser": "Vigiar as páginas de usuário e de discussão, do usuário ou do endereço IP.",
+       "apihelp-block-param-tags": "Alterar as tags para se inscrever na entrada no registro de bloqueio.",
+       "apihelp-block-example-ip-simple": "Bloquear endereço IP <kbd>192.0.2.5</kbd> por três dias com razão <kbd>First strike</kbd>.",
+       "apihelp-block-example-user-complex": "Bloquear usuário <kbd>Vandal</kbd> indefinidamente com razão <kbd>Vandalism</kbd> e o impedir de criar nova conta e de enviar e-mails.",
+       "apihelp-changeauthenticationdata-summary": "Alterar os dados de autenticação para o usuário atual.",
+       "apihelp-changeauthenticationdata-example-password": "Tenta alterar a senha do usuário atual para <kbd>ExamplePassword</kbd>.",
+       "apihelp-checktoken-summary": "Verificar a validade de um token de <kbd>[[Special:ApiHelp/query+tokens|action=query&meta=tokens]]</kbd>.",
+       "apihelp-checktoken-param-type": "Tipo de token que está sendo testado.",
        "apihelp-checktoken-param-token": "Token para testar.",
-       "apihelp-clearhasmsg-example-1": "Limpa a bandeira <code>hasmsg</code> do usuário atual.",
+       "apihelp-checktoken-param-maxtokenage": "Idade máxima permitida do token, em segundos.",
+       "apihelp-checktoken-example-simple": "Testa a validade de um token <kbd>csrf</kbd>.",
+       "apihelp-clearhasmsg-summary": "Limpa a etiqueta <code>hasmsg</code> do usuário atual.",
+       "apihelp-clearhasmsg-example-1": "Limpa a etiqueta <code>hasmsg</code> do usuário atual.",
+       "apihelp-clientlogin-summary": "Faça o login no wiki usando o fluxo interativo.",
+       "apihelp-clientlogin-example-login": "Comeca o processo de logar na wiki como usuário <kbd>Exemple</kbd> com a senha <kbd>ExamplePassword</kbd>.",
+       "apihelp-clientlogin-example-login2": "Continuar efetuando login após uma resposta <samp>UI</samp> para autenticação de dois fatores, fornecendo um <var>OATHToken</var> de <kbd>987654</ kbd>.",
+       "apihelp-compare-summary": "Obter a diferença entre duas páginas.",
+       "apihelp-compare-extended-description": "Um número de revisão, um título de página, um ID de página, um texto ou uma referência relativa para \"de\" e \"para\" devem ser fornecidos.",
        "apihelp-compare-param-fromtitle": "Primeiro título para comparar.",
        "apihelp-compare-param-fromid": "Primeiro ID de página para comparar.",
        "apihelp-compare-param-fromrev": "Primeira revisão para comparar.",
+       "apihelp-compare-param-fromtext": "Use este texto em vez do conteúdo da revisão especificada por <var>fromtitle</var>, <var>fromid</var> ou <var>fromrev</var>.",
+       "apihelp-compare-param-frompst": "Faz uma transformação pré-salvar em <var>fromtext</var>.",
+       "apihelp-compare-param-fromcontentmodel": "Modelo de conteúdo de <var>fromtext</var>. Se não for fornecido, será adivinhado com base nos outros parâmetros.",
+       "apihelp-compare-param-fromcontentformat": "Formato de serialização de conteúdo de <var>fromtext</var>.",
        "apihelp-compare-param-totitle": "Segundo título para comparar.",
        "apihelp-compare-param-toid": "Segundo ID de página para comparar.",
        "apihelp-compare-param-torev": "Segunda revisão para comparar.",
+       "apihelp-compare-param-torelative": "Use uma revisão relativa à revisão determinada de <var>fromtitle</var>, <var>fromid</var> ou <var>fromrev</var>. Todas as outras opções 'to' serão ignoradas.",
+       "apihelp-compare-param-totext": "Use este texto em vez do conteúdo da revisão especificada por <var>totitle</var>, <var>toid</var> ou <var>torev</var>.",
+       "apihelp-compare-param-topst": "Faz uma transformação pré-salvar em <var>totext</var>.",
+       "apihelp-compare-param-tocontentmodel": "Modelo de conteúdo de <var>totext</var>. Se não for fornecido, será adivinhado com base nos outros parâmetros.",
+       "apihelp-compare-param-tocontentformat": "Formato de serialização de conteúdo de <var>totext</var>.",
+       "apihelp-compare-param-prop": "Quais peças de informação incluir.",
+       "apihelp-compare-paramvalue-prop-diff": "O dif do HTML.",
+       "apihelp-compare-paramvalue-prop-diffsize": "O tamanho do diff HTML, em bytes.",
+       "apihelp-compare-paramvalue-prop-rel": "Os IDs de revisão da revisão anteriores a 'from' e depois 'to', se houver.",
+       "apihelp-compare-paramvalue-prop-ids": "Os Ids da página e de revisão das revisões 'from' e 'to'.",
+       "apihelp-compare-paramvalue-prop-title": "O título das páginas 'from' e 'to' das revisões.",
+       "apihelp-compare-paramvalue-prop-user": "O nome de usuário e o ID das revisões 'from' e 'to'.",
+       "apihelp-compare-paramvalue-prop-comment": "O comentário das revisões 'from' e 'to'.",
+       "apihelp-compare-paramvalue-prop-parsedcomment": "O comentário analisado sobre as revisões 'from' e 'to'.",
+       "apihelp-compare-paramvalue-prop-size": "O tamanho das revisões 'from' e 'to'.",
        "apihelp-compare-example-1": "Criar um diff entre a revisão 1 e 2.",
        "apihelp-createaccount-summary": "Criar uma nova conta de usuário.",
+       "apihelp-createaccount-param-preservestate": "Se <kbd>[[Special:ApiHelp/query+authmanagerinfo|action=query&meta=authmanagerinfo]]</kbd> retornar true para <samp>hasprimarypreservedstate</samp>, pedidos marcados como <samp>hasprimarypreservedstate</samp> devem ser omitidos. Se retornou um valor não vazio para <samp>preservedusername</samp>, esse nome de usuário deve ser usado pelo parâmetro <var>username</var>.",
+       "apihelp-createaccount-example-create": "Inicie o processo de criação do usuário <kbd>Example</kbd> com a senha <kbd>ExamplePassword</kbd>.",
        "apihelp-createaccount-param-name": "Nome de usuário.",
        "apihelp-createaccount-param-password": "Senha (ignorada se <var>$1mailpassword</var> está definida).",
        "apihelp-createaccount-param-domain": "Domínio para autenticação externa (opcional).",
-       "apihelp-createaccount-param-email": "Endereço de email para o usuário (opcional).",
+       "apihelp-createaccount-param-token": "Token de criação de conta obtido no primeiro pedido.",
+       "apihelp-createaccount-param-email": "Endereço de e-mail para o usuário (opcional).",
        "apihelp-createaccount-param-realname": "Nome real do usuário (opcional).",
+       "apihelp-createaccount-param-mailpassword": "Se configurado para qualquer valor, uma senha aleatória será enviada por e-mail ao usuário.",
+       "apihelp-createaccount-param-reason": "Razão opcional para criar a conta a ser colocada nos logs.",
+       "apihelp-createaccount-param-language": "Código de idioma para definir como padrão para o usuário (opcional, padrão para o idioma do conteúdo).",
+       "apihelp-createaccount-example-pass": "Criar usuário <kbd>testuser</kbd> com senha <kbd>test123</kbd>.",
+       "apihelp-createaccount-example-mail": "Criar usuário <kbd>testmailuser</kbd> e enviar um e-mail com uma senha gerada aleatoriamente.",
+       "apihelp-cspreport-summary": "Usado por navegadores para denunciar violações da Política de Segurança de Conteúdo. Este módulo nunca deve ser usado, exceto quando usado automaticamente por um navegador web compatível com CSP.",
+       "apihelp-cspreport-param-reportonly": "Marque como sendo um relatório de uma política de monitoramento, não uma política forçada",
+       "apihelp-cspreport-param-source": "O que gerou o cabeçalho CSP que desencadeou este relatório",
        "apihelp-delete-summary": "Excluir uma página.",
        "apihelp-delete-param-title": "Título da página para excluir. Não pode ser usado em conjunto com <var>$1pageid</var>.",
-       "apihelp-delete-param-pageid": "ID da página para excluir. Não pode ser usada juntamente com <var>$1title</var>.",
-       "apihelp-delete-param-watch": "Adiciona a página para a lista de vigiados do usuário atual.",
-       "apihelp-delete-param-unwatch": "Remove a página para a lista de vigiados do usuário atual.",
+       "apihelp-delete-param-pageid": "ID da página para excluir. Não pode ser usada em conjunto com <var>$1title</var>.",
+       "apihelp-delete-param-reason": "Razão para a exclusão. Se não for definido, um motivo gerado automaticamente será usado.",
+       "apihelp-delete-param-tags": "Alterar as tags para se inscrever na entrada no registro de exclusão.",
+       "apihelp-delete-param-watch": "Adiciona a página para a lista de páginas vigiadas do usuário atual.",
+       "apihelp-delete-param-watchlist": "Adicione ou remova incondicionalmente a página da lista de páginas vigiadas do usuário atual, use preferências ou não mude a vigilância.",
+       "apihelp-delete-param-unwatch": "Remove a página da lista de páginas vigiadas do usuário atual.",
+       "apihelp-delete-param-oldimage": "O nome da imagem antiga para excluir, conforme fornecido por [[Special:ApiHelp/query+imageinfo|action=query&prop=imageinfo&iiprop=archivename]].",
        "apihelp-delete-example-simple": "Excluir <kbd>Main Page</kbd>.",
+       "apihelp-delete-example-reason": "Excluir <kbd>Main Page</kbd> com o motivo <kbd>Preparing for move</kbd>.",
        "apihelp-disabled-summary": "Este módulo foi desativado.",
        "apihelp-edit-summary": "Criar e editar páginas.",
        "apihelp-edit-param-title": "Título da página para editar. Não pode ser usado em conjunto com <var>$1pageid</var>.",
-       "apihelp-edit-param-pageid": "ID da página para editar. Não pode ser usada juntamente com <var>$1title</var>.",
+       "apihelp-edit-param-pageid": "ID da página para editar. Não pode ser usada em conjunto com <var>$1title</var>.",
+       "apihelp-edit-param-section": "Número da seção. <kbd>0</kbd> para a seção superior, <kbd>new</kbd> para uma nova seção.",
        "apihelp-edit-param-sectiontitle": "O título para uma nova seção.",
-       "apihelp-edit-param-text": "Conteúdo da página",
+       "apihelp-edit-param-text": "Conteúdo da página.",
+       "apihelp-edit-param-summary": "Edit o resumo. Também o título da seção quando $1section=new e $1sectiontitle não está definido.",
+       "apihelp-edit-param-tags": "Alterar as tags para aplicar à revisão.",
        "apihelp-edit-param-minor": "Edição menor.",
        "apihelp-edit-param-notminor": "Edição não-menor.",
        "apihelp-edit-param-bot": "Marcar esta edição como uma edição de bot.",
-       "apihelp-edit-param-createonly": "Não editar a página se já existir.",
+       "apihelp-edit-param-basetimestamp": "Timestamp da revisão base, usada para detectar conflitos de edição. Pode ser obtido através de [[Special:ApiHelp/query+revisions|action=query&prop=revisions&rvprop=timestamp]].",
+       "apihelp-edit-param-starttimestamp": "Timestamp quando o processo de edição começou, usado para detectar conflitos de edição. Um valor apropriado pode ser obtido usando <var>[[Special:ApiHelp/main|curtimestamp]]</var> ao iniciar o processo de edição (por exemplo, ao carregar o conteúdo da página a editar).",
+       "apihelp-edit-param-recreate": "Substitua quaisquer erros sobre a página que foram eliminados enquanto isso.",
+       "apihelp-edit-param-createonly": "Não editar a página se ela já existir.",
        "apihelp-edit-param-nocreate": "Mostra um erro se a página não existir.",
-       "apihelp-edit-param-watch": "Adiciona a página para a lista de vigiados do usuário atual.",
-       "apihelp-edit-param-unwatch": "Remove a página para a lista de vigiados do usuário atual.",
-       "apihelp-edit-param-watchlist": "Incondicionalmente adiciona ou página para a lista de vigiados do usuário atual, usa as preferências ou não modifica.",
+       "apihelp-edit-param-watch": "Adiciona a página para a lista de páginas vigiadas do usuário atual.",
+       "apihelp-edit-param-unwatch": "Remove a página da lista de páginas vigiadas do usuário atual.",
+       "apihelp-edit-param-watchlist": "Adicione ou remova incondicionalmente a página da lista de páginas vigiadas do usuário atual, use preferências ou não mude a vigilância.",
+       "apihelp-edit-param-md5": "O hash MD5 do parâmetro $1text ou os parâmetros $1prependtext e $1appendtext concatenados. Se configurado, a edição não será feita a menos que o hash esteja correto.",
+       "apihelp-edit-param-prependtext": "Adiciona este texto ao início da página. Substitui $1text.",
+       "apihelp-edit-param-appendtext": "Adiciona este texto ao fim da página. Substitui $1text.\n\nUse $1section=new para anexar uma nova seção, em vez deste parâmetro.",
+       "apihelp-edit-param-undo": "Desfazer esta revisão. Substitui $1text, $1prependtext e $1appendtext.",
+       "apihelp-edit-param-undoafter": "Desfazer todas as revisões de $1undo para este. Se não estiver configurado, desfaz uma revisão.",
+       "apihelp-edit-param-redirect": "Resolve redirecionamento automaticamente.",
        "apihelp-edit-param-contentformat": "Formato de serialização de conteúdo usado para o texto de entrada.",
        "apihelp-edit-param-contentmodel": "Modelo de conteúdo do novo conteúdo.",
+       "apihelp-edit-param-token": "O token sempre deve ser enviado como o último parâmetro, ou pelo menos após o parâmetro $1text.",
        "apihelp-edit-example-edit": "Edita uma página.",
        "apihelp-edit-example-prepend": "Antecende <kbd>_&#95;NOTOC_&#95;</kbd> a página.",
-       "apihelp-emailuser-summary": "Envia email para o usuário.",
-       "apihelp-emailuser-param-target": "Usuário a se enviar o email.",
+       "apihelp-edit-example-undo": "Desfazer as revisões 13579 até 13585 com sumário automático.",
+       "apihelp-emailuser-summary": "Envia e-mail para o usuário.",
+       "apihelp-emailuser-param-target": "Usuário a se enviar o e-mail.",
        "apihelp-emailuser-param-subject": "Cabeçalho do assunto.",
-       "apihelp-emailuser-param-text": "Corpo do email.",
-       "apihelp-emailuser-param-ccme": "Envie uma cópia deste email para mim.",
+       "apihelp-emailuser-param-text": "Corpo do e-mail.",
+       "apihelp-emailuser-param-ccme": "Envie uma cópia deste e-mail para mim.",
        "apihelp-emailuser-example-email": "Enviar um e-mail ao usuário <kbd>WikiSysop</kbd> com o texto <kbd>Content</kbd>.",
-       "apihelp-expandtemplates-summary": "Expande todas a predefinições em wikitexto.",
+       "apihelp-expandtemplates-summary": "Expande todas a predefinições em texto wiki.",
        "apihelp-expandtemplates-param-title": "Título da página.",
-       "apihelp-expandtemplates-param-text": "Wikitexto para converter.",
-       "apihelp-expandtemplates-paramvalue-prop-wikitext": "O wikitexto expandido.",
+       "apihelp-expandtemplates-param-text": "Texto wiki para converter.",
+       "apihelp-expandtemplates-param-revid": "ID da revisão, para <nowiki>{{REVISIONID}}</nowiki> e variáveis semelhantes.",
+       "apihelp-expandtemplates-param-prop": "Quais peças de informação obter.\n\nNote que se nenhum valor for selecionado, o resultado conterá o texto wiki, mas o resultado será em um formato obsoleto.",
+       "apihelp-expandtemplates-paramvalue-prop-wikitext": "O texto wiki expandido.",
+       "apihelp-expandtemplates-paramvalue-prop-categories": "Quaisquer categorias presentes na entrada que não estão representadas na saída wikitext.",
+       "apihelp-expandtemplates-paramvalue-prop-properties": "Propriedades da página definidas por palavras mágicas expandidas no texto wiki.",
+       "apihelp-expandtemplates-paramvalue-prop-volatile": "Se a saída é volátil e não deve ser reutilizada em outro lugar dentro da página.",
+       "apihelp-expandtemplates-paramvalue-prop-ttl": "O tempo máximo após o qual os caches do resultado devem ser invalidados.",
+       "apihelp-expandtemplates-paramvalue-prop-modules": "Quaisquer módulos ResourceLoader que as funções do analisador solicitaram foram adicionados à saída. Contudo, <kbd>jsconfigvars</kbd> ou <kbd>encodedjsconfigvars</kbd> devem ser solicitados em conjunto com <kbd>modules</kbd>.",
+       "apihelp-expandtemplates-paramvalue-prop-jsconfigvars": "Fornece as variáveis de configuração JavaScript específicas da página.",
+       "apihelp-expandtemplates-paramvalue-prop-encodedjsconfigvars": "Fornece as variáveis de configuração JavaScript específicas da página como uma string JSON.",
+       "apihelp-expandtemplates-paramvalue-prop-parsetree": "A árvore de analise XML da entrada.",
+       "apihelp-expandtemplates-param-includecomments": "Se devem ser incluídos comentários HTML na saída.",
+       "apihelp-expandtemplates-param-generatexml": "Gerar XML parse tree (substituído por $1prop=parsetree).",
+       "apihelp-expandtemplates-example-simple": "Expandir o texto wiki <kbd><nowiki>{{Project:Sandbox}}</nowiki></kbd>.",
        "apihelp-feedcontributions-summary": "Retorna o feed de contribuições de um usuário.",
        "apihelp-feedcontributions-param-feedformat": "O formato do feed.",
+       "apihelp-feedcontributions-param-user": "De quais usuários receber as contribuições.",
        "apihelp-feedcontributions-param-namespace": "A partir de qual espaço nominal filtrar contribuições.",
-       "apihelp-feedcontributions-param-year": "Ano (inclusive anteriores):",
-       "apihelp-feedcontributions-param-month": "Mês (inclusive anteriores).",
+       "apihelp-feedcontributions-param-year": "Do ano (inclusive anteriores).",
+       "apihelp-feedcontributions-param-month": "Do mês (inclusive anteriores).",
        "apihelp-feedcontributions-param-tagfilter": "Filtrar contribuições que têm essas tags.",
        "apihelp-feedcontributions-param-deletedonly": "Mostrar apenas contribuições excluídas.",
        "apihelp-feedcontributions-param-toponly": "Mostrar somente as edições que sejam a última revisão.",
        "apihelp-feedcontributions-param-newonly": "Mostrar somente as edições que são criação de páginas.",
        "apihelp-feedcontributions-param-hideminor": "Ocultar edições menores.",
        "apihelp-feedcontributions-param-showsizediff": "Mostrar a diferença de tamanho entre as revisões.",
+       "apihelp-feedcontributions-example-simple": "Retornar contribuições do usuário <kbd>Example</kbd>.",
        "apihelp-feedrecentchanges-summary": "Retorna um ''feed'' de mudanças recentes.",
        "apihelp-feedrecentchanges-param-feedformat": "O formato do feed.",
        "apihelp-feedrecentchanges-param-namespace": "Espaço nominal a partir do qual limitar resultados.",
        "apihelp-feedrecentchanges-param-invert": "Todos os espaços nominais, exceto o selecionado.",
-       "apihelp-feedrecentchanges-param-limit": "O número máximo a se retornar.",
+       "apihelp-feedrecentchanges-param-associated": "Inclua espaço nominal associado (discussão ou principal).",
+       "apihelp-feedrecentchanges-param-days": "Dias para limitar os resultados.",
+       "apihelp-feedrecentchanges-param-limit": "Número máximo de resultados.",
        "apihelp-feedrecentchanges-param-from": "Mostra modificações desde então.",
        "apihelp-feedrecentchanges-param-hideminor": "Ocultar modificações menores.",
-       "apihelp-feedrecentchanges-param-hidebots": "Ocultar modificações menores feitas por bots.",
+       "apihelp-feedrecentchanges-param-hidebots": "Ocultar modificações feitas por bots.",
+       "apihelp-feedrecentchanges-param-hideanons": "Ocultar alterações feitas por usuários anônimos.",
+       "apihelp-feedrecentchanges-param-hideliu": "Ocultar alterações feitas por usuários registrados.",
        "apihelp-feedrecentchanges-param-hidepatrolled": "Ocultar mudanças patrulhadas.",
        "apihelp-feedrecentchanges-param-hidemyself": "Ocultar alterações feitas pelo usuário atual.",
-       "apihelp-feedrecentchanges-param-hidecategorization": "Alterações de membros pertencentes à uma categoria.",
+       "apihelp-feedrecentchanges-param-hidecategorization": "Ocultar alterações de associação de categoria.",
        "apihelp-feedrecentchanges-param-tagfilter": "Filtrar por tag.",
+       "apihelp-feedrecentchanges-param-target": "Mostrar apenas as alterações nas páginas vinculadas por esta página.",
+       "apihelp-feedrecentchanges-param-showlinkedto": "Mostra as alterações nas páginas vigiadas à página selecionada.",
+       "apihelp-feedrecentchanges-param-categories": "Mostre apenas as alterações em páginas em todas essas categorias.",
+       "apihelp-feedrecentchanges-param-categories_any": "Mostre apenas as alterações em páginas em qualquer uma das categorias.",
        "apihelp-feedrecentchanges-example-simple": "Mostrar as mudanças recentes.",
        "apihelp-feedrecentchanges-example-30days": "Mostrar as mudanças recentes por 30 dias.",
-       "apihelp-feedwatchlist-summary": "Retornar um feed da lista de vigiados.",
+       "apihelp-feedwatchlist-summary": "Retornar um feed da lista de páginas vigiadas.",
        "apihelp-feedwatchlist-param-feedformat": "O formato do feed.",
        "apihelp-feedwatchlist-param-hours": "Lista páginas modificadas dentro dessa quantia de horas a partir de agora.",
        "apihelp-feedwatchlist-param-linktosections": "Cria link diretamente para seções alteradas, se possível.",
        "apihelp-feedwatchlist-example-default": "Mostra o feed de páginas vigiadas.",
+       "apihelp-feedwatchlist-example-all6hrs": "Mostre todas as alterações nas páginas vigiadas nas últimas 6 horas.",
        "apihelp-filerevert-summary": "Reverte um arquivo para uma versão antiga.",
-       "apihelp-filerevert-param-filename": "Nome do arquivo destino, sem o prefixo File:.",
+       "apihelp-filerevert-param-filename": "Nome do arquivo de destino, sem o prefixo File:.",
        "apihelp-filerevert-param-comment": "Enviar comentário.",
        "apihelp-filerevert-param-archivename": "Nome do arquivo da revisão para qual reverter.",
        "apihelp-filerevert-example-revert": "Reverter <kbd>Wiki.png</kbd> para a versão de <kbd>2011-03-05T15:27:40Z</kbd>.",
        "apihelp-help-summary": "Mostra a ajuda para os módulos especificados.",
+       "apihelp-help-param-modules": "Módulos para exibir ajuda para (valores do parâmetro <var>action</var> e <var>format</var> ou <kbd>main</kbd>). Pode-se especificar submódulos com um <kbd>+</kbd>.",
        "apihelp-help-param-submodules": "Inclui a ajuda para submódulos do módulo nomeado.",
        "apihelp-help-param-recursivesubmodules": "Inclui a ajuda para submódulos de forma recursiva.",
        "apihelp-help-param-helpformat": "Formato da saída da ajuda.",
        "apihelp-help-param-wrap": "Encapsula a saída em uma estrutura de resposta da API padrão.",
-       "apihelp-help-param-toc": "Inclui uma tabela de conteúdo na saída HTML.",
+       "apihelp-help-param-toc": "Inclui uma tabela de conteúdos na saída HTML.",
        "apihelp-help-example-main": "Ajuda para o módulo principal.",
-       "apihelp-help-example-recursive": "Toda ajuda em uma página.",
-       "apihelp-help-example-help": "Ajuda para o próprio módulo de ajuda",
+       "apihelp-help-example-submodules": "Ajuda para <kbd>action=query</kbd> e todos os seus submódulos.",
+       "apihelp-help-example-recursive": "Toda a ajuda em uma página.",
+       "apihelp-help-example-help": "Ajuda para o próprio módulo de ajuda.",
+       "apihelp-help-example-query": "Ajuda para dois submódulos de consulta.",
        "apihelp-imagerotate-summary": "Gira uma ou mais imagens.",
        "apihelp-imagerotate-param-rotation": "Graus para girar imagem no sentido horário.",
+       "apihelp-imagerotate-param-tags": "Tags para se inscrever na entrada no registro de upload.",
        "apihelp-imagerotate-example-simple": "Girar <kbd>File:Example.png</kbd> em <kbd>90</kbd> graus.",
        "apihelp-imagerotate-example-generator": "Girar todas as imagens em <kbd>Category:Flip</kbd> em <kbd>180</kbd> graus.",
-       "apihelp-import-param-summary": "Importar sumário.",
+       "apihelp-import-summary": "Importar uma página de outra wiki ou de um arquivo XML.",
+       "apihelp-import-extended-description": "Observe que o POST HTTP deve ser feito como um upload de arquivos (ou seja, usar multipart/form-data) ao enviar um arquivo para o parâmetro <var>xml</var>.",
+       "apihelp-import-param-summary": "Resumo de importação do log de entrada.",
        "apihelp-import-param-xml": "Enviar arquivo XML.",
+       "apihelp-import-param-interwikisource": "Para importações de interwiki: wiki para importar de.",
+       "apihelp-import-param-interwikipage": "Para importações de interwiki: página para importar.",
+       "apihelp-import-param-fullhistory": "Para importações de interwiki: importa o histórico completo, não apenas a versão atual.",
+       "apihelp-import-param-templates": "Para importações de interwiki: importa também todas as predefinições incluídas.",
        "apihelp-import-param-namespace": "Importar para este espaço nominal. Não pode ser usado em conjunto com <var>$1rootpage</var>.",
-       "apihelp-import-param-rootpage": "Importar como subpágina para esta página. Não pode ser usada juntamente com <var>$1namespace</var>.",
+       "apihelp-import-param-rootpage": "Importar como subpágina para esta página. Não pode ser usada em conjunto com <var>$1namespace</var>.",
+       "apihelp-import-param-tags": "Alterar as tags para aplicar à entrada no registro de importação e à revisão nula nas páginas importadas.",
+       "apihelp-import-example-import": "Importar [[meta:Help:ParserFunctions]] para espaço nominal 100 com histórico completo.",
+       "apihelp-linkaccount-summary": "Vincule uma conta de um provedor de terceiros ao usuário atual.",
+       "apihelp-linkaccount-example-link": "Inicie o processo de vincular uma conta de <kbd>Example</kbd>.",
+       "apihelp-login-summary": "Faça login e obtenha cookies de autenticação.",
+       "apihelp-login-extended-description": "Esta ação só deve ser usada em combinação com[[Special:BotPasswords]]; O uso para login da conta principal está obsoleto e pode falhar sem aviso prévio. Para fazer login com segurança na conta principal, use <kbd>[[Special:ApiHelp/clientlogin|action=clientlogin]]</kbd>.",
+       "apihelp-login-extended-description-nobotpasswords": "Esta ação está depreciada e pode falhar sem aviso prévio. Para efetuar login com segurança, use <kbd>[[Special:ApiHelp/clientlogin|action=clientlogin]]</kbd>.",
        "apihelp-login-param-name": "Nome de usuário.",
        "apihelp-login-param-password": "Senha.",
        "apihelp-login-param-domain": "Domínio (opcional).",
-       "apihelp-login-example-login": "Log in.",
+       "apihelp-login-param-token": "Token de login obtido no primeiro pedido.",
+       "apihelp-login-example-gettoken": "Recupere um token de login.",
+       "apihelp-login-example-login": "Entrar.",
+       "apihelp-logout-summary": "Faça o logout e limpe os dados da sessão.",
+       "apihelp-logout-example-logout": "Finaliza a sessão do usuário atual.",
+       "apihelp-managetags-summary": "Execute tarefas de gerenciamento relacionadas às tags de alteração.",
+       "apihelp-managetags-param-operation": "Qual operação para executar:\n;create: Crie uma nova tag de mudança para uso manual.\n;delete: Remove uma tag de mudança do banco de dados, incluindo a remoção da tag de todas as revisões, entradas recentes de alterações e entradas de log em que é usada.\n;active: Ativar uma tag de alteração, permitindo aos usuários aplicá-la manualmente.\n; deactivate: Desative uma tag de alteração, impedindo que usuários a apliquem manualmente.",
+       "apihelp-managetags-param-tag": "Tag para criar, excluir, ativar ou desativar. Para a criação de tags, a tag não deve existir. Para exclusão de tags, a tag deve existir. Para a ativação da tag, a tag deve existir e não ser usada por uma extensão. Para a desativação da tag, a tag deve estar atualmente ativa e definida manualmente.",
+       "apihelp-managetags-param-reason": "Uma razão opcional para criar, excluir, ativar ou desativar a tag.",
+       "apihelp-managetags-param-ignorewarnings": "Se deseja ignorar quaisquer avisos emitidos durante a operação.",
+       "apihelp-managetags-param-tags": "Alterar as tags para se inscrever na entrada no registro de gerenciamento de tags.",
+       "apihelp-managetags-example-create": "Criar uma tag chamada <kbd>spam</ kbd> com o motivo <kbd>For use in edit patrolling</kbd>",
+       "apihelp-managetags-example-delete": "Excluir a tag <kbd>vandlaism</kbd> com o motivo <kbd>Misspelt</kbd>",
+       "apihelp-managetags-example-activate": "Ativar uma tag nomeada <kbd>spam</kbd> com a razão <kbd>For use in edit patrolling</kbd>",
+       "apihelp-managetags-example-deactivate": "Desative uma tag chamada <kbd> spam </ kbd> com o motivo <kbd>No longer required</kbd>",
+       "apihelp-mergehistory-summary": "Fundir históricos das páginas.",
+       "apihelp-mergehistory-param-from": "Título da página a partir da qual o histórico será mesclado. Não pode ser usado em conjunto com <var>$1fromid</var>.",
+       "apihelp-mergehistory-param-fromid": "ID da página da qual o histórico será mesclado. Não pode ser usado em conjunto com <var>$1from</var>.",
+       "apihelp-mergehistory-param-to": "Título da página ao qual o histórico será mesclado. Não pode ser usado em conjunto com <var>$1toid</var>.",
+       "apihelp-mergehistory-param-toid": "ID da página em que o histórico será mesclado. Não pode ser usado em conjunto com <var>$1to</var>.",
+       "apihelp-mergehistory-param-timestamp": "Timestamp até as revisões que serão movidas do histórico da página de origem para o histórico da página de destino. Se omitido, todo o histórico da página de origem será incorporado na página de destino.",
+       "apihelp-mergehistory-param-reason": "Razão para a fusão de histórico.",
+       "apihelp-mergehistory-example-merge": "Junte todo o histórico de <kbd>Oldpage</kbd> em <kbd>Newpage</kbd>.",
+       "apihelp-mergehistory-example-merge-timestamp": "Junte as revisões da página de <kbd>Oldpage</kbd> datando até <kbd>2015-12-31T04:37:41Z</kbd> em <kbd>Newpage</kbd>.",
        "apihelp-move-summary": "Mover uma página.",
        "apihelp-move-param-from": "Título da página para renomear. Não pode ser usado em conjunto com <var>$1fromid</var>.",
        "apihelp-move-param-fromid": "ID da página a se renomear. Não pode ser usado em conjunto com <var>$1from</var>.",
+       "apihelp-move-param-to": "Título para o qual renomear a página.",
        "apihelp-move-param-reason": "Motivo para a alteração do nome.",
        "apihelp-move-param-movetalk": "Renomear a página de discussão, se existir.",
        "apihelp-move-param-movesubpages": "Renomeia subpáginas, se aplicável.",
        "apihelp-move-param-noredirect": "Não cria um redirecionamento.",
-       "apihelp-move-param-watch": "Adiciona a página e o redirecionamento para a lista de vigiados do usuário atual.",
-       "apihelp-move-param-unwatch": "Remove a página e o redirecionamento para a lista de vigiados do usuário atual.",
+       "apihelp-move-param-watch": "Adiciona a página e o redirecionamento para a lista de páginas vigiadas do usuário atual.",
+       "apihelp-move-param-unwatch": "Remove a página e o redirecionamento para a lista de paginas vigiadas do usuário atual.",
+       "apihelp-move-param-watchlist": "Adicione ou remova incondicionalmente a página da lista de páginas vigiadas do usuário atual, use preferências ou não mude a vigilância.",
        "apihelp-move-param-ignorewarnings": "Ignorar quaisquer avisos.",
+       "apihelp-move-param-tags": "Alterar as tags para aplicar à entrada no log de movimento e à revisão nula na página de destino.",
+       "apihelp-move-example-move": "Mover <kbd>Badtitle</kbd> para <kbd>Goodtitle</kbd> sem deixar um redirecionamento.",
+       "apihelp-opensearch-summary": "Procure na wiki usando o protocolo OpenSearch.",
        "apihelp-opensearch-param-search": "Pesquisar string.",
-       "apihelp-opensearch-param-limit": "O número máximo a se retornar.",
+       "apihelp-opensearch-param-limit": "Número máximo de resultados.",
        "apihelp-opensearch-param-namespace": "Espaço nominal para pesquisar.",
+       "apihelp-opensearch-param-suggest": "Não fazer nada se <var>[[mw:Special:MyLanguage/Manual:$wgEnableOpenSearchSuggest|$wgEnableOpenSearchSuggest]]</var> é false.",
+       "apihelp-opensearch-param-redirects": "Como lidar com os redirecionamentos:\n;return: Retornar o redirecionamento em si.\n;resolve: Retornar a página de destino. Pode retornar menos de $1 resultados.\nPor razões históricas, o padrão é \"return\" para $1format=json e \"resolve\" para outros formatos.",
        "apihelp-opensearch-param-format": "O formato da saída.",
+       "apihelp-opensearch-param-warningsaserror": "Se os avisos forem gerados com <kbd>format=json</kbd>, devolva um erro de API em vez de ignorá-los.",
        "apihelp-opensearch-example-te": "Encontra páginas começando com <kbd>Te</kbd>.",
+       "apihelp-options-summary": "Alterar as preferências do usuário atual.",
+       "apihelp-options-extended-description": "Somente as opções que estão registradas no núcleo ou em uma das extensões instaladas, ou as opções com as chaves com prefixo com <code>userjs-</code> (que podem ser usadas pelos scripts do usuário) podem ser definidas.",
        "apihelp-options-param-reset": "Redefinir preferências para os padrões do site.",
-       "apihelp-options-example-reset": "Resetar todas as preferências",
-       "apihelp-options-example-complex": "Redefine todas as preferências, então define <kbd>skin</kbd> e <kbd>apelido</kbd>.",
-       "apihelp-paraminfo-summary": "Obtém informações sobre módulos de API.",
+       "apihelp-options-param-resetkinds": "Lista de tipos de opções para redefinir quando a opção <var>$1reset</var> está definida.",
+       "apihelp-options-param-change": "Lista de alterações, nome formatado = valor (por exemplo, skin=vector). Se nenhum valor for dado (nem mesmo um sinal de igual), por exemplo, optionname|otheroption|..., a opção será redefinida para seu valor padrão. Se algum valor passado contém o caractere de pipe (<kbd>|</kbd>), use o [[Special:ApiHelp/main#main/datatypes|separador de múltiplo valor alternativo]] para a operação correta.",
+       "apihelp-options-param-optionname": "O nome da opção que deve ser configurado para o valor dado por <var>$1optionvalue</var>.",
+       "apihelp-options-param-optionvalue": "O valor da opção especificada por <var>$1optionname</var>.",
+       "apihelp-options-example-reset": "Resetar todas as preferências.",
+       "apihelp-options-example-change": "Mudar preferências <kbd>skin</kbd> e <kbd>hideminor</kbd>.",
+       "apihelp-options-example-complex": "Redefine todas as preferências, então define <kbd>skin</kbd> e <kbd>nickname</kbd>.",
+       "apihelp-paraminfo-summary": "Obter informações sobre módulos da API.",
+       "apihelp-paraminfo-param-modules": "Lista de nomes de módulos (valores do parâmetro <var>action</var> e <var>format</var> ou <kbd>main</kbd>). Pode-se especificar submódulos com um <kbd>+</kbd>, todos os submódulos com <kbd>+*</kbd> ou todos os submódulos recursivamente com <kbd>+**</kbd>.",
+       "apihelp-paraminfo-param-helpformat": "Formato das strings de ajuda.",
+       "apihelp-paraminfo-param-querymodules": "Lista de nomes de módulos de consulta (valor de parâmetro <var>prop</var>, <var>meta</var> ou <var>list</var>). Use <kbd>$1modules=query+foo</kbd> em vez de <kbd>$1querymodules=foo</kbd>.",
+       "apihelp-paraminfo-param-mainmodule": "Obter também informações sobre o módulo principal (de nível superior). Use <kbd>$1modules=main</kbd> em vez disso.",
+       "apihelp-paraminfo-param-pagesetmodule": "Obter informações sobre o módulo do conjunto de páginas (fornecendo titles= and friends) também.",
+       "apihelp-paraminfo-param-formatmodules": "Lista de nomes de módulos de formato (valor do parâmetro <var>format</var>). Use <var>$1modules</var> em vez disso.",
+       "apihelp-paraminfo-example-1": "Mostrar informações para <kbd>[[Special:ApiHelp/parse|action=parse]]</kbd>, <kbd>[[Special:ApiHelp/jsonfm|format=jsonfm]]</kbd>, <kbd>[[Special:ApiHelp/query+allpages|action=query&list=allpages]]</kbd> e <kbd>[[Special:ApiHelp/query+siteinfo|action=query&meta=siteinfo]]</kbd>.",
+       "apihelp-paraminfo-example-2": "Mostrar informações para todos os submódulos de <kbd>[[Special:ApiHelp/query|action=query]]</kbd>.",
+       "apihelp-parse-summary": "Analisa o conteúdo e retorna a saída do analisador.",
+       "apihelp-parse-extended-description": "Veja os vários módulos de suporte de <kbd>[[Special:ApiHelp/query|action=query]]</kbd> para obter informações da versão atual de uma página.\n\nHá várias maneiras de especificar o texto para analisar:\n# Especifique uma página ou revisão, usando <var>$1page</var>, <var>$1pageid</var>, ou <var>$1oldid</var>.\n#Especifica o conteúdo explicitamente, Usando <var>$1text</var>, <var>$1title</var> e <var>$1contentmodel</var>.\n# Especifique apenas um resumo a analisar. <Var>$1prop</var> deve ter um valor vazio.",
+       "apihelp-parse-param-title": "Título da página ao qual o texto pertence. Se omitido, <var>$1contentmodel</var> deve ser especificado e [[API]] será usado como título.",
+       "apihelp-parse-param-text": "Texto para analisar. Use <var>$1title</var> ou <var>$1contentmodel</var> para controlar o modelo de conteúdo.",
        "apihelp-parse-param-summary": "Sumário para analisar.",
        "apihelp-parse-param-page": "Analisa o conteúdo desta página. Não pode ser usado em conjunto com <var>$1text</var> e <var>$1title</var>.",
-       "apihelp-parse-param-pageid": "Analisa o conteúdo desta página. sobrepõe <var>$1page</var>.",
+       "apihelp-parse-param-pageid": "Analisa o conteúdo desta página. Sobrepõe <var>$1page</var>.",
+       "apihelp-parse-param-redirects": "Se<var>$1page</var> ou <var>$1pageid</var> é definido com um redirecionamento, resolva-o.",
+       "apihelp-parse-param-oldid": "Analise o conteúdo desta revisão. Substitui <var>$1page</var> e <var>$1pageid</var>.",
        "apihelp-parse-param-prop": "Qual pedaço de informação obter:",
-       "apihelp-parse-paramvalue-prop-text": "Fornece o texto analisado do wikitexto.",
-       "apihelp-parse-paramvalue-prop-langlinks": "Fornece os links de idiomas do wikitexto analisado",
-       "apihelp-parse-paramvalue-prop-categories": "Fornece as categorias no wikitexto analisado.",
+       "apihelp-parse-paramvalue-prop-text": "Fornece o texto analisado do texto wiki.",
+       "apihelp-parse-paramvalue-prop-langlinks": "Fornece os links de idiomas do texto wiki analisado.",
+       "apihelp-parse-paramvalue-prop-categories": "Fornece as categorias no texto wiki analisado.",
        "apihelp-parse-paramvalue-prop-categorieshtml": "Fornece a versão HTML das categorias.",
-       "apihelp-parse-paramvalue-prop-links": "Fornece os links internos do wikitexto analisado.",
-       "apihelp-parse-paramvalue-prop-templates": "Fornece a predefinição no wikitexto analisado.",
-       "apihelp-parse-paramvalue-prop-images": "Fornece as imagens no wikitexto analisado.",
-       "apihelp-parse-paramvalue-prop-externallinks": "Fornece os links externos no wikitexto analisado.",
-       "apihelp-parse-paramvalue-prop-sections": "Fornece as seções no wikitexto analisado.",
+       "apihelp-parse-paramvalue-prop-links": "Fornece os links internos do texto wiki analisado.",
+       "apihelp-parse-paramvalue-prop-templates": "Fornece a predefinição no texto wiki analisado.",
+       "apihelp-parse-paramvalue-prop-images": "Fornece as imagens no texto wiki analisado.",
+       "apihelp-parse-paramvalue-prop-externallinks": "Fornece os links externos no texto wiki analisado.",
+       "apihelp-parse-paramvalue-prop-sections": "Fornece as seções no texto wiki analisado.",
+       "apihelp-parse-paramvalue-prop-revid": "Adiciona o ID da revisão da página analisada.",
+       "apihelp-parse-paramvalue-prop-displaytitle": "Adiciona o título do texto wiki analisado.",
        "apihelp-parse-paramvalue-prop-headitems": "Fornece itens para colocar no <code>&lt;head&gt;</code> da página.",
        "apihelp-parse-paramvalue-prop-headhtml": "Fornece <code>&lt;head&gt;</code> analisado da página.",
-       "apihelp-parse-paramvalue-prop-modules": "Fornece os módulos do ResourceLoader usados na página. Ou <kbd>jsconfigvars</kbd> ou <kbd>encodedjsconfigvars</kbd> deve ser solicitado conjuntamente com <kbd>modules</kbd>.",
-       "apihelp-parse-paramvalue-prop-jsconfigvars": "Fornece as variáveis de configuração JavaScript específicas da página.",
+       "apihelp-parse-paramvalue-prop-modules": "Fornece os módulos do ResourceLoader usados na página. Para carregar, use <code>mw.loader.using()</code>. Contudo, <kbd>jsconfigvars</kbd> ou <kbd>encodedjsconfigvars</kbd> deve ser solicitado conjuntamente com <kbd>modules</kbd>.",
+       "apihelp-parse-paramvalue-prop-jsconfigvars": "Fornece as variáveis de configuração JavaScript específicas da página. Para aplicar, use <code>mw.config.set()</code>.",
        "apihelp-parse-paramvalue-prop-encodedjsconfigvars": "Fornece as variáveis de configuração JavaScript específicas da página como uma string JSON.",
        "apihelp-parse-paramvalue-prop-indicators": "Fornece o HTML de indicadores de ''status'' de página utilizados na página.",
-       "apihelp-parse-paramvalue-prop-iwlinks": "Fornece links interwiki no wikitexto analisado.",
-       "apihelp-parse-paramvalue-prop-wikitext": "Fornece o wikitexto original que foi analisado.",
-       "apihelp-parse-paramvalue-prop-properties": "Fornece várias propriedades definidas no wikitexto analisado.",
-       "apihelp-parse-paramvalue-prop-limitreportdata": "Fornece o relatório limite de uma forma estruturada. Não informa dado, quando<var>$1disablelimitreport</var> se definido.",
+       "apihelp-parse-paramvalue-prop-iwlinks": "Fornece links interwiki no texto wiki analisado.",
+       "apihelp-parse-paramvalue-prop-wikitext": "Fornece o texto wiki original que foi analisado.",
+       "apihelp-parse-paramvalue-prop-properties": "Fornece várias propriedades definidas no texto wiki analisado.",
+       "apihelp-parse-paramvalue-prop-limitreportdata": "Fornece o relatório limite de uma forma estruturada. Não informa dado, quando<var>$1disablelimitreport</var> está definido.",
+       "apihelp-parse-paramvalue-prop-limitreporthtml": "Retorna a versão HTML do relatório de limite. Não retorna dados quando <var>$1disablelimitreport</var> está definido.",
+       "apihelp-parse-paramvalue-prop-parsetree": "A árvore de análise XML do conteúdo da revisão (requer modelo de conteúdo <code>$1</code>)",
+       "apihelp-parse-paramvalue-prop-parsewarnings": "Fornece os avisos que ocorreram ao analisar o conteúdo.",
+       "apihelp-parse-param-wrapoutputclass": "Classe CSS usada para envolver a saída do analisador.",
+       "apihelp-parse-param-pst": "Faz uma transformação pré-salvar na entrada antes de analisá-la. Apenas válido quando usado com texto.",
+       "apihelp-parse-param-onlypst": "Faz uma transformação pré-salvar (PST) na entrada, mas não analisa. Retorna o mesmo texto wiki, depois que um PST foi aplicado. Apenas válido quando usado com <var>$1text</var>.",
+       "apihelp-parse-param-effectivelanglinks": "Inclui links de idiomas fornecidos por extensões (para uso com <kbd>$1prop=langlinks</kbd>).",
+       "apihelp-parse-param-section": "Apenas analise o conteúdo deste número de seção.\n\nQuando <kbd>new</kbd>, analise <var>$1text</var> e <var>$1sectiontitle</var> como se adicionasse uma nova seção a página.\n\n<kbd>new</kbd> é permitido somente ao especificar <var>text</var>.",
+       "apihelp-parse-param-sectiontitle": "Novo título de seção quando <var>section</var> é <kbd>new</kbd>.\n\nAo contrário da edição de páginas Isso não recai sobre <var>summary</var> quando omitido ou vazio.",
+       "apihelp-parse-param-disablelimitreport": "Omita o relatório de limite (\"Relatório de limite NewPP\") da saída do analisador.",
+       "apihelp-parse-param-disablepp": "Use <var>$1disablelimitreport</var> em vez.",
+       "apihelp-parse-param-disableeditsection": "Omita os links da seção de edição da saída do analisador.",
+       "apihelp-parse-param-disabletidy": "Não executa a limpeza HTML (por exemplo, tidy) na saída do analisador.",
+       "apihelp-parse-param-generatexml": "Gerar XML parse tree (requer modelo de conteúdo <code>$1</code>, substituído por <kbd>$2prop=parsetree</kbd>).",
+       "apihelp-parse-param-preview": "Analisar no mode de visualização.",
+       "apihelp-parse-param-sectionpreview": "Analise no modo de visualização de seção (também permite o modo de visualização).",
+       "apihelp-parse-param-disabletoc": "Omitir tabela de conteúdos na saída.",
+       "apihelp-parse-param-useskin": "Aplique a skin selecionada na saída do analisador. Pode afetar as seguintes propriedades: <kbd>langlinks</kbd>, <kbd>headitems</kbd>, <kbd>modules</kbd>, <kbd>jsconfigvars</kbd>, <kbd>indicators</kbd>.",
+       "apihelp-parse-param-contentformat": "Formato de serialização de conteúdo usado para o texto de entrada. Válido apenas quando usado com $1text.",
+       "apihelp-parse-param-contentmodel": "Modelo de conteúdo do texto de entrada. Se omitido, $1title deve ser especificado e o padrão será o modelo do título especificado. Válido apenas quando usado com $1text.",
        "apihelp-parse-example-page": "Analisa uma página.",
-       "apihelp-parse-example-text": "Analisa wikitexto.",
-       "apihelp-parse-example-texttitle": "Analisa wikitexto, especificando o título da página.",
+       "apihelp-parse-example-text": "Analisa texto wiki.",
+       "apihelp-parse-example-texttitle": "Analisa texto wiki, especificando o título da página.",
        "apihelp-parse-example-summary": "Analisa uma sumário.",
        "apihelp-patrol-summary": "Patrulha uma página ou revisão.",
        "apihelp-patrol-param-rcid": "ID de Mudanças recentes para patrulhar.",
        "apihelp-patrol-param-revid": "ID de revisão para patrulhar.",
+       "apihelp-patrol-param-tags": "Alterar as tags para se inscrever na entrada no registro de patrulha.",
        "apihelp-patrol-example-rcid": "Patrulha uma modificação recente.",
        "apihelp-patrol-example-revid": "Patrulha uma revisão.",
        "apihelp-protect-summary": "Modifica o nível de proteção de uma página.",
        "apihelp-protect-param-title": "Título da página para (des)proteger. Não pode ser usado em conjunto com $1pageid.",
        "apihelp-protect-param-pageid": "ID da página a se (des)proteger. Não pode ser usado em conjunto com $1title.",
+       "apihelp-protect-param-protections": "Lista de níveis de proteção, formatados <kbd>action=level</kbd> (por exemplo, <kbd>edit=sysop</kbd>). Um nível com <kbd>all</kbd> significa que todos podem tomar a ação, ou seja, sem restrição.\n\n<strong> Nota:</strong> Qualquer ação não listada terá restrições removidas.",
+       "apihelp-protect-param-expiry": "Expiração de timestamps. Se apenas um timestamp for configurado, ele sera usado para todas as proteções. Use <kbd>infinite</kbd>, <kbd>indefinite</kbd>, <kbd>infinity</kbd> ou <kbd>never</kbd>, para uma protecção que nunca expirar.",
        "apihelp-protect-param-reason": "Motivo para (des)proteger.",
+       "apihelp-protect-param-tags": "Alterar as tags para se inscrever na entrada no registro de proteção.",
+       "apihelp-protect-param-cascade": "Ativa a proteção em cascata (ou seja, proteja as predefinições transcluídas e imagens utilizados nesta página). Ignorado se nenhum dos níveis de proteção fornecidos suporte cascata.",
+       "apihelp-protect-param-watch": "Se configurado, adicione a página sendo (des)protegida para a lista de páginas vigiadas do usuário atual.",
+       "apihelp-protect-param-watchlist": "Adicione ou remova incondicionalmente a página da lista de páginas vigiadas do usuário atual, use preferências ou não mude a vigilância.",
        "apihelp-protect-example-protect": "Protege uma página.",
-       "apihelp-protect-example-unprotect": "Desprotege uma página definindo restrições para <kbd>all</kbd>.",
+       "apihelp-protect-example-unprotect": "Desprotege uma página definindo restrições para <kbd>all</kbd> (isto é, todos são autorizados a tomar a ação).",
        "apihelp-protect-example-unprotect2": "Desprotege uma página ao não definir restrições.",
        "apihelp-purge-summary": "Limpe o cache para os títulos especificados.",
        "apihelp-purge-param-forcelinkupdate": "Atualiza as tabelas de links.",
-       "apihelp-purge-param-forcerecursivelinkupdate": "Atualiza a tabela de links, e atualiza as tabelas de links para qualquer página que usa essa página como um modelo.",
+       "apihelp-purge-param-forcerecursivelinkupdate": "Atualiza a tabela de links e atualiza as tabelas de links para qualquer página que usa essa página como uma predefinição.",
        "apihelp-purge-example-simple": "Purga as páginas <kbd>Main Page</kbd> e <kbd>API</kbd>.",
-       "apihelp-purge-example-generator": "Purga as primeiras 10 páginas no namespace principal.",
+       "apihelp-purge-example-generator": "Purga as primeiras 10 páginas no espaço nominal principal.",
+       "apihelp-query-summary": "Obtenha dados de e sobre o MediaWiki.",
+       "apihelp-query-extended-description": "Todas as modificações de dados terão que usar a consulta para adquirir um token para evitar abusos de sites maliciosos.",
        "apihelp-query-param-prop": "Quais propriedades obter para as páginas consultadas.",
        "apihelp-query-param-list": "Quais listas obter.",
        "apihelp-query-param-meta": "Quais metadados obter.",
+       "apihelp-query-param-indexpageids": "Inclua uma seção adicional de pageids listando todas as IDs de página retornadas.",
+       "apihelp-query-param-export": "Exporte as revisões atuais de todas as páginas dadas ou geradas.",
+       "apihelp-query-param-exportnowrap": "Retorna o XML de exportação sem envolvê-lo em um resultado XML (mesmo formato que [[Special:Export]]). Só pode ser usado com $1export.",
+       "apihelp-query-param-iwurl": "Obter o URL completo se o título for um link interwiki.",
+       "apihelp-query-param-rawcontinue": "Retorne os dados de <samp>query-continue</samp> para continuar.",
+       "apihelp-query-example-revisions": "Obter [[Special:ApiHelp/query+siteinfo|site info]] e [[Special:ApiHelp/query+revisions|revisions]] da <kbd>Main Page</kbd>.",
+       "apihelp-query-example-allpages": "Obter revisões de páginas começando com <kbd>API/</kbd>.",
        "apihelp-query+allcategories-summary": "Enumera todas as categorias.",
+       "apihelp-query+allcategories-param-from": "A categoria da qual começar a enumeração.",
+       "apihelp-query+allcategories-param-to": "A categoria na qual parar a enumeração.",
        "apihelp-query+allcategories-param-prefix": "Pesquisa por todo os título de categoria que começam com este valor.",
        "apihelp-query+allcategories-param-dir": "Direção para ordenar.",
        "apihelp-query+allcategories-param-min": "Retorna apenas as categorias com pelo menos esta quantidade de membros.",
        "apihelp-query+allcategories-param-max": "Retorna apenas as categorias com no máximo esta quantidade de membros.",
        "apihelp-query+allcategories-param-limit": "Quantas categorias retornar.",
-       "apihelp-query+allcategories-param-prop": "Que propriedades obter:",
+       "apihelp-query+allcategories-param-prop": "Quais propriedades obter:",
+       "apihelp-query+allcategories-paramvalue-prop-size": "Adiciona o número de páginas na categoria.",
+       "apihelp-query+allcategories-paramvalue-prop-hidden": "Tags categorias que estão ocultas com <code>_&#95;HIDDENCAT_&#95;</code>.",
        "apihelp-query+allcategories-example-size": "Lista categorias com a informação sobre o número de páginas em cada uma.",
+       "apihelp-query+allcategories-example-generator": "Recupera informações sobre a página da categoria em si para as categorias que começam <kbd>List</kbd>.",
        "apihelp-query+alldeletedrevisions-summary": "Lista todas as revisões excluídas por um usuário ou em um espaço nominal.",
        "apihelp-query+alldeletedrevisions-paraminfo-useronly": "Só pode ser usada com <var>$3user</var>.",
        "apihelp-query+alldeletedrevisions-paraminfo-nonuseronly": "Não pode ser usada com <var>$3user</var>.",
        "apihelp-query+alldeletedrevisions-param-tag": "Lista apenas as revisões com esta tag.",
        "apihelp-query+alldeletedrevisions-param-user": "Lista apenas revisões desse usuário.",
        "apihelp-query+alldeletedrevisions-param-excludeuser": "Não lista as revisões deste usuário.",
-       "apihelp-query+alldeletedrevisions-param-namespace": "Lista páginas apenas neste espaço nominal.",
+       "apihelp-query+alldeletedrevisions-param-namespace": "Lista apenas páginas neste espaço nominal.",
+       "apihelp-query+alldeletedrevisions-param-miser-user-namespace": "<strong>Nota:</strong> Devido ao [[mw:Special:MyLanguage/Manual:$wgMiserMode|miser mode]], usar <var>$1user</var> e <var>$1namespace</var> juntos pode resultar em menos de <var>$1limit</var> resultados antes de continuar; em casos extremos, nenhum resultado pode ser retornado.",
+       "apihelp-query+alldeletedrevisions-param-generatetitles": "Quando usado como gerador, gera títulos em vez de IDs de revisão.",
        "apihelp-query+alldeletedrevisions-example-user": "Lista as últimas 50 contribuições excluídas pelo usuário <kbd>Example</kbd>.",
        "apihelp-query+alldeletedrevisions-example-ns-main": "Lista as primeiras 50 edições excluídas no espaço nominal principal.",
        "apihelp-query+allfileusages-summary": "Lista todas as utilizações de arquivo, incluindo os não-existentes.",
        "apihelp-query+allfileusages-param-from": "O título do arquivo a partir do qual começar a enumerar.",
        "apihelp-query+allfileusages-param-to": "O título do arquivo onde parar de enumerar.",
-       "apihelp-query+allfileusages-param-prop": "Que informações incluir:",
+       "apihelp-query+allfileusages-param-prefix": "Procure todos os títulos de arquivos que começam com esse valor.",
+       "apihelp-query+allfileusages-param-unique": "Somente mostra títulos de arquivos distintos. Não pode ser usado com $1prop=ids.\nQuando usado como gerador, produz páginas de destino em vez de páginas de origem.",
+       "apihelp-query+allfileusages-param-prop": "Quais peças de informação incluir:",
+       "apihelp-query+allfileusages-paramvalue-prop-ids": "Adiciona o ID das páginas em uso (não pode ser usado com $1unique).",
        "apihelp-query+allfileusages-paramvalue-prop-title": "Adiciona o título do arquivo.",
        "apihelp-query+allfileusages-param-limit": "Quantos itens retornar.",
        "apihelp-query+allfileusages-param-dir": "A direção na qual listar.",
-       "apihelp-query+allfileusages-example-unique": "Listar títulos únicos de arquivos",
-       "apihelp-query+allfileusages-example-generator": "Obter as páginas contendo os arquivos",
+       "apihelp-query+allfileusages-example-B": "Listar títulos de arquivos, incluindo os que faltam, com IDs de página de que são, começando em <kbd>B</kbd>.",
+       "apihelp-query+allfileusages-example-unique": "Listar títulos únicos de arquivos.",
+       "apihelp-query+allfileusages-example-unique-generator": "Obtém todos os títulos de arquivo, marcando os que faltam.",
+       "apihelp-query+allfileusages-example-generator": "Obter as páginas contendo os arquivos.",
        "apihelp-query+allimages-summary": "Enumera todas as imagens sequencialmente.",
        "apihelp-query+allimages-param-sort": "Propriedade pela qual ordenar.",
-       "apihelp-query+allimages-param-dir": "A direção de listagem.",
+       "apihelp-query+allimages-param-dir": "A direção na qual listar.",
+       "apihelp-query+allimages-param-from": "O título da imagem do qual começar a enumeração. Só pode ser usado com $1sort=name.",
+       "apihelp-query+allimages-param-to": "O título da imagem no qual parar a enumeração. Só pode ser usado com $1sort=nome.",
+       "apihelp-query+allimages-param-start": "O timestamp do qual começar a enumeração. Só pode ser usado com $1sort=timestamp.",
+       "apihelp-query+allimages-param-end": "O timestamp no qual parar a enumeração. Só pode ser usado com $1sort=timestamp.",
+       "apihelp-query+allimages-param-prefix": "Procure todos os títulos de imagens que começam com esse valor. Só pode ser usado com $1sort=nome.",
+       "apihelp-query+allimages-param-minsize": "Limite à imagens com, pelo menos, esses bytes.",
+       "apihelp-query+allimages-param-maxsize": "Limite as imagens com, no máximo, esses bytes.",
+       "apihelp-query+allimages-param-sha1": "SHA1 de imagem. Substitui $1sha1base36.",
+       "apihelp-query+allimages-param-sha1base36": "SHA1 de imagem na base 36 (usado em MediaWiki).",
        "apihelp-query+allimages-param-user": "Retorna apenas os arquivos enviados por este usuário. Só pode ser usado com $1sort=timestamp. Não pode ser usado em conjunto com $1filterbots.",
        "apihelp-query+allimages-param-filterbots": "Como filtrar arquivos enviados por bots. Só pode ser usado com $1sort=timestamp. Não pode ser usado em conjunto com $1user.",
-       "apihelp-query+allimages-param-mime": "Quais tipos MIME pesquisar, ex.: <kbd>image/jpeg</kbd>.",
+       "apihelp-query+allimages-param-mime": "Quais tipos MIME pesquisar, por exemplo: <kbd>image/jpeg</kbd>.",
        "apihelp-query+allimages-param-limit": "Quantas imagens retornar.",
        "apihelp-query+allimages-example-B": "Mostra uma lista de arquivos começando com a letra <kbd>B</kbd>.",
-       "apihelp-query+allimages-example-recent": "Mostra uma lista de arquivos recentemente enviados, semelhante ao [[Special:NewFiles]].",
+       "apihelp-query+allimages-example-recent": "Mostra uma lista de arquivos recentemente enviados, semelhante a [[Special:NewFiles]].",
        "apihelp-query+allimages-example-mimetypes": "Mostra uma lista de arquivos com o tipo MIME <kbd>image/png</kbd> ou <kbd>image/gif</kbd>",
        "apihelp-query+allimages-example-generator": "Mostra informações sobre 4 arquivos começando com a letra <kbd>T</kbd>.",
        "apihelp-query+alllinks-summary": "Enumerar todos os links que apontam para um determinado espaço nominal.",
        "apihelp-query+alllinks-param-from": "O título do link a partir do qual começar a enumerar.",
        "apihelp-query+alllinks-param-to": "O título do link onde parar de enumerar.",
        "apihelp-query+alllinks-param-prefix": "Pesquisa por todos os títulos com link que começam com este valor.",
-       "apihelp-query+alllinks-param-prop": "Que informações incluir:",
+       "apihelp-query+alllinks-param-unique": "Somente mostra títulos vinculados diferenciados. Não pode ser usado com <kbd>$1prop=ids</kbd>.\nQuando usado como um gerador, produz páginas de destino em vez de páginas de origem.",
+       "apihelp-query+alllinks-param-prop": "Quais peças de informação incluir:",
+       "apihelp-query+alllinks-paramvalue-prop-ids": "Adiciona o ID da página da página de ligação (não pode ser usada com <var>$1unique</var>).",
+       "apihelp-query+alllinks-paramvalue-prop-title": "Adiciona o título do link.",
        "apihelp-query+alllinks-param-namespace": "O espaço nominal a se enumerar.",
        "apihelp-query+alllinks-param-limit": "Quantos itens retornar.",
        "apihelp-query+alllinks-param-dir": "A direção na qual listar.",
-       "apihelp-query+alllinks-example-generator": "Obtém páginas contendo os links.",
+       "apihelp-query+alllinks-example-B": "Listar títulos vinculados, incluindo os que faltam, com IDs de página de que são, começando em <kbd>B</kbd>.",
+       "apihelp-query+alllinks-example-unique": "Lista de títulos vinculados exclusivos.",
+       "apihelp-query+alllinks-example-unique-generator": "Obtém todos os títulos vinculados, marcando as que faltam.",
+       "apihelp-query+alllinks-example-generator": "Obter páginas contendo os links.",
        "apihelp-query+allmessages-summary": "Devolver as mensagens deste site.",
+       "apihelp-query+allmessages-param-messages": "Quais mensagens para retornar. <kbd>*</kbd> (padrão) indica todas as mensagens.",
        "apihelp-query+allmessages-param-prop": "Quais propriedades obter.",
-       "apihelp-query+allmessages-param-customised": "Retornar apenas mensagens neste estado personalização.",
+       "apihelp-query+allmessages-param-enableparser": "Defina para ativar o analisador, irá processar o texto wiki da mensagem (substituir palavras mágicas, predefinições manipuladoras, etc.).",
+       "apihelp-query+allmessages-param-nocontent": "Se configurado, não inclua o conteúdo das mensagens na saída.",
+       "apihelp-query+allmessages-param-includelocal": "Inclua também mensagens locais, ou seja, mensagens que não existem no software, mas existem como no {{ns:MediaWiki}} namespace.\nIsso lista todas as páginas de espaço nominal-{{ns: MediaWiki}}, então também irá listar aqueles que não são realmente mensagens, como [[MediaWiki:Common.js|Common.js]].",
+       "apihelp-query+allmessages-param-args": "Argumentos para serem substituídos pela mensagem.",
+       "apihelp-query+allmessages-param-filter": "Retornar apenas mensagens com nomes que contêm essa string.",
+       "apihelp-query+allmessages-param-customised": "Retornar apenas mensagens neste estado de personalização.",
        "apihelp-query+allmessages-param-lang": "Retornar mensagens neste idioma.",
        "apihelp-query+allmessages-param-from": "Retornar mensagens começando com esta mensagem.",
        "apihelp-query+allmessages-param-to": "Retornar mensagens terminando com esta mensagem.",
+       "apihelp-query+allmessages-param-title": "Nome da página para usar como contexto ao analisar a mensagem (para a opção $1enableparser).",
        "apihelp-query+allmessages-param-prefix": "Retornar apenas mensagens com este prefixo.",
        "apihelp-query+allmessages-example-ipb": "Mostrar mensagens começando com <kbd>ipb-</kbd>.",
+       "apihelp-query+allmessages-example-de": "Mostrar mensagens <kbd>august</kbd> e <kbd>mainpage</kbd> em alemão.",
+       "apihelp-query+allpages-summary": "Enumerar todas as páginas sequencialmente em um determinado espaço nominal.",
+       "apihelp-query+allpages-param-from": "O título da página da qual começar a enumeração.",
+       "apihelp-query+allpages-param-to": "O título da página no qual parar de enumerar.",
+       "apihelp-query+allpages-param-prefix": "Pesquisa por todo os título que começam com este valor.",
        "apihelp-query+allpages-param-namespace": "O espaço nominal a se enumerar.",
        "apihelp-query+allpages-param-filterredir": "Quais páginas listar.",
        "apihelp-query+allpages-param-minsize": "Limitar a páginas com pelo menos essa quantidade de bytes.",
        "apihelp-query+allpages-param-maxsize": "Limitar a páginas com no máximo essa quantidade de bytes.",
+       "apihelp-query+allpages-param-prtype": "Limite apenas às páginas protegidas.",
+       "apihelp-query+allpages-param-prlevel": "Proteções de filtro com base no nível de proteção (deve ser usado com $1prtype= parameter).",
+       "apihelp-query+allpages-param-prfiltercascade": "Proteções de filtro baseadas em cascata (ignoradas quando o valor de $1 não está definido).",
        "apihelp-query+allpages-param-limit": "Quantas páginas retornar.",
        "apihelp-query+allpages-param-dir": "A direção na qual listar.",
+       "apihelp-query+allpages-param-filterlanglinks": "Filtrar com base em se uma página tem lingulinks. Observe que isso pode não considerar os langlinks adicionados por extensões.",
+       "apihelp-query+allpages-param-prexpiry": "Qual proteção expira para filtrar a página em:\n;indefinite: Obtém apenas páginas com expiração de proteção indefinida.\n;definite: Obtém apenas páginas com uma expiração de proteção definida (específica).\n;all: Obtém páginas com qualquer validade de proteção.",
+       "apihelp-query+allpages-example-B": "Mostrar uma lista de páginas a partir da letra <kbd>B</kbd>.",
+       "apihelp-query+allpages-example-generator": "Mostre informações sobre 4 páginas começando na letra <kbd>T</kbd>.",
+       "apihelp-query+allpages-example-generator-revisions": "Mostre o conteúdo das primeiras 2 páginas não redirecionadas que começam em <kbd>Re</kbd>.",
        "apihelp-query+allredirects-summary": "Lista todos os redirecionamentos para um espaço nominal.",
        "apihelp-query+allredirects-param-from": "O título do redirecionamento a partir do qual começar a enumerar.",
        "apihelp-query+allredirects-param-to": "O título do redirecionamento onde parar de enumerar.",
-       "apihelp-query+allredirects-param-prop": "Que informações incluir:",
+       "apihelp-query+allredirects-param-prefix": "Procure todas as páginas de destino que começam com esse valor.",
+       "apihelp-query+allredirects-param-unique": "Somente mostra páginas de destino distintas. Não pode ser usado com $1prop=ids|fragment|interwiki.\nQuando usado como gerador, produz páginas de destino em vez de páginas de origem.",
+       "apihelp-query+allredirects-param-prop": "Quais peças de informação incluir:",
+       "apihelp-query+allredirects-paramvalue-prop-ids": "Adiciona o ID da página da página de redirecionamento (não pode ser usada com <var>$1unique</var>).",
+       "apihelp-query+allredirects-paramvalue-prop-title": "Adiciona o título do redirecionamento.",
+       "apihelp-query+allredirects-paramvalue-prop-fragment": "Adiciona o fragmento do redirecionamento, se houver (não pode ser usado com <var>$1unique</var>).",
+       "apihelp-query+allredirects-paramvalue-prop-interwiki": "Adiciona o prefixo interwiki do redirecionamento, se houver (não pode ser usado com <var>$1unique</var>).",
        "apihelp-query+allredirects-param-namespace": "O espaço nominal a se enumerar.",
-       "apihelp-query+allredirects-param-limit": "Quantos item a serem retornados.",
+       "apihelp-query+allredirects-param-limit": "Quantos itens retornar.",
        "apihelp-query+allredirects-param-dir": "A direção na qual listar.",
+       "apihelp-query+allredirects-example-B": "Lista de páginas de destino, incluindo as que faltam, com IDs de página de que são, começando em <kbd>B</kbd>.",
+       "apihelp-query+allredirects-example-unique": "Listar páginas de destino únicas.",
+       "apihelp-query+allredirects-example-unique-generator": "Obtém todas as páginas alvo, marcando as que faltam.",
+       "apihelp-query+allredirects-example-generator": "Obtém páginas contendo os redirecionamentos.",
        "apihelp-query+allrevisions-summary": "Listar todas as revisões.",
+       "apihelp-query+allrevisions-param-start": "A data a partir da qual começar a enumeração.",
+       "apihelp-query+allrevisions-param-end": "A data onde parar a enumeração.",
+       "apihelp-query+allrevisions-param-user": "Lista apenas revisões desse usuário.",
+       "apihelp-query+allrevisions-param-excludeuser": "Não lista as revisões deste usuário.",
+       "apihelp-query+allrevisions-param-namespace": "Lista apenas páginas neste espaço nominal.",
+       "apihelp-query+allrevisions-param-generatetitles": "Quando usado como gerador, gera títulos em vez de IDs de revisão.",
+       "apihelp-query+allrevisions-example-user": "Lista as últimas 50 contribuições por usuário <kbd>Example</kbd>.",
+       "apihelp-query+allrevisions-example-ns-main": "Lista as primeiras 50 revisões no espaço nominal principal.",
+       "apihelp-query+mystashedfiles-summary": "Obter uma lista de arquivos no stash de dados do usuário atual.",
+       "apihelp-query+mystashedfiles-param-prop": "Quais propriedades buscar para os arquivos.",
+       "apihelp-query+mystashedfiles-paramvalue-prop-size": "Obtenha o tamanho do arquivo e as dimensões da imagem.",
+       "apihelp-query+mystashedfiles-paramvalue-prop-type": "Obtenha o tipo MIME e o tipo de mídia do arquivo.",
        "apihelp-query+mystashedfiles-param-limit": "Quantos arquivos a serem retornados.",
-       "apihelp-query+alltransclusions-param-prop": "Que informações incluir:",
+       "apihelp-query+mystashedfiles-example-simple": "Obter a chave de arquivo, o tamanho do arquivo e o tamanho de pixels dos arquivos no stash de dados do usuário atual.",
+       "apihelp-query+alltransclusions-summary": "Liste todas as transclusões (páginas incorporadas usando &#123;&#123;x&#125;&#125;), incluindo não-existentes.",
+       "apihelp-query+alltransclusions-param-from": "O título da transclusão do qual começar a enumeração.",
+       "apihelp-query+alltransclusions-param-to": "O título da transclusão na qual parar a enumeração.",
+       "apihelp-query+alltransclusions-param-prefix": "Procure todos os títulos transcluídos que começam com esse valor.",
+       "apihelp-query+alltransclusions-param-unique": "Somente mostra páginas transcluídas distintas. Não pode ser usado com $1prop=ids. Quando usado como gerador, produz páginas de destino em vez de páginas de origem.",
+       "apihelp-query+alltransclusions-param-prop": "Quais peças de informação incluir:",
+       "apihelp-query+alltransclusions-paramvalue-prop-ids": "Adiciona o ID da página da página de transclusão (não pode ser usado com $1unique).",
+       "apihelp-query+alltransclusions-paramvalue-prop-title": "Adiciona o título da transclusão.",
        "apihelp-query+alltransclusions-param-namespace": "O espaço nominal a se enumerar.",
        "apihelp-query+alltransclusions-param-limit": "Quantos itens retornar.",
        "apihelp-query+alltransclusions-param-dir": "A direção na qual listar.",
-       "apihelp-query+allusers-param-prop": "Que informações incluir:",
+       "apihelp-query+alltransclusions-example-B": "Lista de títulos transcluídos, incluindo os que faltam, com IDs de página de onde são, começando em <kbd>B</kbd>.",
+       "apihelp-query+alltransclusions-example-unique": "Listar títulos translúcidos exclusivos.",
+       "apihelp-query+alltransclusions-example-unique-generator": "Obtém todas as páginas transcluídas, marcando as que faltam.",
+       "apihelp-query+alltransclusions-example-generator": "Obtém páginas contendo as transclusões.",
+       "apihelp-query+allusers-summary": "Enumerar todos os usuários registrados.",
+       "apihelp-query+allusers-param-from": "O nome do usuário do qual começar a enumeração.",
+       "apihelp-query+allusers-param-to": "O nome do usuário para parar de enumerar em.",
+       "apihelp-query+allusers-param-prefix": "Procurar por todos os usuários que começam com esse valor.",
+       "apihelp-query+allusers-param-dir": "Direção para ordenar.",
+       "apihelp-query+allusers-param-group": "Somente inclua usuários nos grupos fornecidos.",
+       "apihelp-query+allusers-param-excludegroup": "Excluir os usuários nos grupos fornecidos.",
+       "apihelp-query+allusers-param-rights": "Somente inclui usuários com os direitos dados. Não inclui direitos concedidos por grupos implícitos ou auto-promovidos como *, usuário ou autoconfirmados.",
+       "apihelp-query+allusers-param-prop": "Quais peças de informação incluir:",
+       "apihelp-query+allusers-paramvalue-prop-blockinfo": "Adiciona a informação sobre um bloco atual no usuário.",
+       "apihelp-query+allusers-paramvalue-prop-groups": "Lista grupos em que o usuário está. Isso usa mais recursos do servidor e pode retornar menos resultados do que o limite.",
+       "apihelp-query+allusers-paramvalue-prop-implicitgroups": "Lista todos os grupos em que o usuário está automaticamente.",
        "apihelp-query+allusers-paramvalue-prop-rights": "Lista os direitos que o usuário possui.",
+       "apihelp-query+allusers-paramvalue-prop-editcount": "Adiciona a contagem de edições do usuário.",
+       "apihelp-query+allusers-paramvalue-prop-registration": "Adiciona o timestamp de quando o usuário se registrou se disponível (pode estar em branco).",
+       "apihelp-query+allusers-paramvalue-prop-centralids": "Adiciona os IDs centrais e o status do anexo do usuário.",
        "apihelp-query+allusers-param-limit": "Quantos nomes de usuário a serem retornados.",
+       "apihelp-query+allusers-param-witheditsonly": "Apenas lista os usuários que fizeram edições.",
+       "apihelp-query+allusers-param-activeusers": "Apenas lista os usuários ativos no último $1 {{PLURAL:$1|dia|dias}}.",
+       "apihelp-query+allusers-param-attachedwiki": "Com <kbd>$1prop=centralids</kbd>, também indica se o usuário está conectado com a wiki identificado por este ID.",
+       "apihelp-query+allusers-example-Y": "Listar usuários começando em <kbd>Y</kbd>.",
+       "apihelp-query+authmanagerinfo-summary": "Recupere informações sobre o status de autenticação atual.",
+       "apihelp-query+authmanagerinfo-param-securitysensitiveoperation": "Teste se o status de autenticação atual do usuário é suficiente para a operação específica de segurança especificada.",
+       "apihelp-query+authmanagerinfo-param-requestsfor": "Obtenha informações sobre os pedidos de autenticação necessários para a ação de autenticação especificada.",
+       "apihelp-query+authmanagerinfo-example-login": "Obtenha os pedidos que podem ser usados ao iniciar um login.",
+       "apihelp-query+authmanagerinfo-example-login-merged": "Obtenha os pedidos que podem ser usados ao iniciar um login, com campos de formulário mesclados.",
+       "apihelp-query+authmanagerinfo-example-securitysensitiveoperation": "Teste se a autenticação é suficiente para ação <kbd>foo</kbd>.",
+       "apihelp-query+backlinks-summary": "Encontre todas as páginas que apontam para a página dada.",
        "apihelp-query+backlinks-param-title": "Título a se pesquisar. Não pode ser usado em conjunto com <var>$1pageid</var>.",
        "apihelp-query+backlinks-param-pageid": "ID da página a se pesquisar. Não pode ser usado em conjunto com <var>$1title</var>.",
        "apihelp-query+backlinks-param-namespace": "O espaço nominal a se enumerar.",
        "apihelp-query+backlinks-param-dir": "A direção na qual listar.",
-       "apihelp-query+blocks-param-ip": "Obtém todos os blocos aplicando a este IP ou intervalos CIDR, incluindo intervalos de blocos.\nNão pode ser usado em conjunto com <var>$3users</var>. Intervalos CIDR mais largos do que IPv4/$1 ou IPv6/$2 não são aceitos.",
+       "apihelp-query+backlinks-param-filterredir": "Como filtrar para redirecionamentos. Se configurado para <kbd>nonredirects</kbd> quando <var>$1redirect</var> estiver ativado, isso só é aplicado ao segundo nível.",
+       "apihelp-query+backlinks-param-limit": "Quantas páginas retornar. Se <var>$1redirect</var> estiver ativado, o limite se aplica a cada nível separadamente (o que significa até 2 * <var>$1limit</var> resultados podem ser retornados).",
+       "apihelp-query+backlinks-param-redirect": "Se a página de link for um redirecionamento, encontre todas as páginas que se liguem a esse redirecionamento também. O limite máximo é reduzido para metade.",
+       "apihelp-query+backlinks-example-simple": "Mostrar links para <kbd>Main page</kbd>.",
+       "apihelp-query+backlinks-example-generator": "Obter informações sobre páginas que ligam para <kbd>Main page</kbd>.",
+       "apihelp-query+blocks-summary": "Liste todos os usuários e endereços IP bloqueados.",
+       "apihelp-query+blocks-param-start": "A data a partir da qual começar a enumeração.",
+       "apihelp-query+blocks-param-end": "A data onde parar a enumeração.",
+       "apihelp-query+blocks-param-ids": "Lista de IDs de bloco para listar (opcional).",
+       "apihelp-query+blocks-param-users": "Lista de usuários para procurar (opcional).",
+       "apihelp-query+blocks-param-ip": "Obter todos os blocos aplicando a este IP ou intervalos CIDR, incluindo intervalos de blocos.\nNão pode ser usado em conjunto com <var>$3users</var>. Intervalos CIDR mais largos do que IPv4/$1 ou IPv6/$2 não são aceitos.",
+       "apihelp-query+blocks-param-limit": "O número máximo de blocos para listar.",
        "apihelp-query+blocks-param-prop": "Quais propriedades obter:",
+       "apihelp-query+blocks-paramvalue-prop-id": "Adiciona o ID do bloco.",
+       "apihelp-query+blocks-paramvalue-prop-user": "Adiciona o nome de usuário do usuário bloqueado.",
+       "apihelp-query+blocks-paramvalue-prop-userid": "Adiciona o ID do usuário bloqueado.",
+       "apihelp-query+blocks-paramvalue-prop-by": "Adiciona o nome de usuário do usuário bloqueador.",
+       "apihelp-query+blocks-paramvalue-prop-byid": "Adiciona o ID do usuário bloqueador.",
+       "apihelp-query+blocks-paramvalue-prop-timestamp": "Adiciona o timestamp de quando o bloqueio foi criado.",
+       "apihelp-query+blocks-paramvalue-prop-expiry": "Adiciona o timestamp de quando o bloqueio expira.",
+       "apihelp-query+blocks-paramvalue-prop-reason": "Adiciona a razão dada para o bloqueio.",
+       "apihelp-query+blocks-paramvalue-prop-range": "Adiciona o intervalo de endereços IP afetados pelo bloqueio.",
+       "apihelp-query+blocks-paramvalue-prop-flags": "Etiqueta a proibição com (autobloqueio, anononly, etc.).",
+       "apihelp-query+blocks-param-show": "Mostre apenas itens que atendam a esses critérios. Por exemplo, para ver apenas blocos indefinidos nos endereços IP, defina <kbd>$1show=ip|!temp</kbd>.",
+       "apihelp-query+blocks-example-simple": "Listar bloqueios.",
+       "apihelp-query+blocks-example-users": "Liste os bloqueios dos usuários <kbd>Alice</kbd> e <kbd>Bob</kbd>.",
+       "apihelp-query+categories-summary": "Liste todas as categorias às quais as páginas pertencem.",
+       "apihelp-query+categories-param-prop": "Quais propriedades adicionais obter para cada categoria:",
+       "apihelp-query+categories-paramvalue-prop-sortkey": "Adiciona a sortkey (string hexadecimal) e o prefixo da sortkey (parte legível para humanos) para a categoria.",
+       "apihelp-query+categories-paramvalue-prop-timestamp": "Adiciona o timestamp de quando a categoria foi adicionada.",
+       "apihelp-query+categories-paramvalue-prop-hidden": "Tags categorias que estão ocultas com <code>_&#95;HIDDENCAT_&#95;</code>.",
+       "apihelp-query+categories-param-show": "Quais tipos de categorias mostrar.",
        "apihelp-query+categories-param-limit": "Quantas categorias retornar.",
+       "apihelp-query+categories-param-categories": "Apenas liste essas categorias. Útil para verificar se uma determinada página está em uma determinada categoria.",
        "apihelp-query+categories-param-dir": "A direção na qual listar.",
+       "apihelp-query+categories-example-simple": "Obter uma lista de categorias para as quais a página <kbd> Albert Einstein </ kbd> pertence.",
+       "apihelp-query+categories-example-generator": "Obter informações sobre todas as categorias usadas na página <kbd>Albert Einstein</kbd>.",
+       "apihelp-query+categoryinfo-summary": "Retorna informações sobre as categorias dadas.",
+       "apihelp-query+categoryinfo-example-simple": "Obter informações sobre <kbd>Category:Foo</kbd> e <kbd>Category:Bar</kbd>.",
        "apihelp-query+categorymembers-summary": "Lista todas as páginas numa categoria específica.",
        "apihelp-query+categorymembers-param-title": "Qual categoria enumerar (obrigatório). Deve incluir o prefixo <kbd>{{ns:category}}:</kbd>. Não pode ser usado em conjunto com <var>$1pageid</var>.",
        "apihelp-query+categorymembers-param-pageid": "ID da página da categoria para enumerar. Não pode ser usado em conjunto com <var>$1title</var>.",
-       "apihelp-query+categorymembers-param-prop": "Que informações incluir:",
+       "apihelp-query+categorymembers-param-prop": "Quais peças de informação incluir:",
+       "apihelp-query+categorymembers-paramvalue-prop-ids": "Adiciona o ID da página.",
+       "apihelp-query+categorymembers-paramvalue-prop-title": "Adiciona o título e o ID do espaço nominal da página.",
+       "apihelp-query+categorymembers-paramvalue-prop-sortkey": "Adiciona a sortkey usada para classificar na categoria (string hexadecimal).",
+       "apihelp-query+categorymembers-paramvalue-prop-sortkeyprefix": "Adiciona o prefixo da sortkey usado para classificar na categoria (parte da sortkey legível para humanos).",
+       "apihelp-query+categorymembers-paramvalue-prop-type": "Adiciona o tipo em que a página foi categorizada como (<samp>page</samp>, <samp>subcat</samp> ou <samp>file</samp>).",
+       "apihelp-query+categorymembers-paramvalue-prop-timestamp": "Adiciona o timestamp de quando a página foi incluida.",
+       "apihelp-query+categorymembers-param-namespace": "Somente inclua páginas nesses espaços de nomes. Observe que <kbd>$1type=subcat</kbd> OU <kbd>$1type=file</kbd> pode ser usado aon invéz de <kbd>$1namespace=14</kbd> ou <kbd>6</kbd>.",
+       "apihelp-query+categorymembers-param-type": "Quais tipos de membros da categoria incluir. Ignorado quando <kbd>$1sort=timestamp</kbd> está ativado.",
+       "apihelp-query+categorymembers-param-limit": "O número máximo de páginas para retornar.",
+       "apihelp-query+categorymembers-param-sort": "Propriedade pela qual ordenar.",
        "apihelp-query+categorymembers-param-dir": "Em qual sentido ordenar.",
+       "apihelp-query+categorymembers-param-start": "O timestamp do qual começar a lista. Só pode ser usado com <kbd>$1sort=timestamp</kbd>.",
+       "apihelp-query+categorymembers-param-end": "Timestamp para encerrar a lista em. Só pode ser usado com <kbd>$1sort=timestamp</kbd>.",
+       "apihelp-query+categorymembers-param-starthexsortkey": "Sortkey para iniciar a listagem como retornado por <kbd>$1prop=sortkey</kbd>. Só pode ser usado com <kbd>$1sort=sortkey</kbd>.",
+       "apihelp-query+categorymembers-param-endhexsortkey": "Sortkey para terminar a listagem, como retornado por <kbd>$1prop=sortkey</kbd>. Só pode ser usado com <kbd>$1sort=sortkey</kbd>.",
+       "apihelp-query+categorymembers-param-startsortkeyprefix": "Prefixo Sortkey para começar a listagem. Só pode ser usado com <kbd>$1sort=sortkey</kbd>. Substitui <var>$1starthexsortkey</var>.",
+       "apihelp-query+categorymembers-param-endsortkeyprefix": "Sortkey prefix para terminar a lista <strong>before</strong> (não <strong>at</strong>; se esse valor ocorrer, não será incluído!). Só pode ser usado com $1sort=sortkey. Substitui $1endhexsortkey.",
+       "apihelp-query+categorymembers-param-startsortkey": "Use $1starthexsortkey em vez.",
+       "apihelp-query+categorymembers-param-endsortkey": "Use $1endhexsortkey em vez.",
+       "apihelp-query+categorymembers-example-simple": "Obter as 10 primeiras páginas em <kbd>Category:Physics</kbd>.",
+       "apihelp-query+categorymembers-example-generator": "Obter informações da página sobre as primeiras 10 páginas em <kbd>Category:Physics</kbd>.",
+       "apihelp-query+contributors-summary": "Obter a lista de contribuidores logados e a contagem de contribuidores anônimos para uma página.",
+       "apihelp-query+contributors-param-group": "Somente inclui usuários nos grupos dados. Não inclui grupos implícitos ou auto-promovidos como *, usuário ou autoconfirmados.",
+       "apihelp-query+contributors-param-excludegroup": "Excluir os usuários nos grupos fornecidos. Não inclui grupos implícitos ou auto-promovidos como *, usuário ou autoconfirmados.",
+       "apihelp-query+contributors-param-rights": "Somente inclui usuários com os direitos dados. Não inclui direitos concedidos por grupos implícitos ou auto-promovidos como *, usuário ou autoconfirmados.",
+       "apihelp-query+contributors-param-excluderights": "Excluir usuários com os direitos dados. Não inclui direitos concedidos por grupos implícitos ou auto-promovidos como *, usuário ou autoconfirmados.",
        "apihelp-query+contributors-param-limit": "Quantas contribuições retornar.",
+       "apihelp-query+contributors-example-simple": "Mostrar contribuidores para a página <kbd>Main Page</kbd>.",
+       "apihelp-query+deletedrevisions-summary": "Obtem informações de revisão excluídas.",
+       "apihelp-query+deletedrevisions-extended-description": "Pode ser usado de várias maneiras:\n# Obtenha revisões excluídas para um conjunto de páginas, definindo títulos ou pageids. Ordenado por título e timestamp.\n# Obter dados sobre um conjunto de revisões excluídas, definindo seus IDs com revids. Ordenado por ID de revisão.",
+       "apihelp-query+deletedrevisions-param-start": "O timestamp no qual começar a enumerar. Ignorado ao processar uma lista de IDs de revisão.",
+       "apihelp-query+deletedrevisions-param-end": "O timestamp no qual parar de enumerar. Ignorado ao processar uma lista de IDs de revisão.",
+       "apihelp-query+deletedrevisions-param-tag": "Lista apenas as revisões com esta tag.",
+       "apihelp-query+deletedrevisions-param-user": "Lista apenas revisões desse usuário.",
+       "apihelp-query+deletedrevisions-param-excludeuser": "Não lista as revisões deste usuário.",
+       "apihelp-query+deletedrevisions-example-titles": "Lista as revisões excluídas das páginas <kbd>Main Page</kbd> e <kbd>Talk:Main Page</kbd>, com conteúdo.",
+       "apihelp-query+deletedrevisions-example-revids": "Lista as informações para a revisão excluída <kbd>123456</kbd>.",
+       "apihelp-query+deletedrevs-summary": "Listar revisões excluídas.",
+       "apihelp-query+deletedrevs-extended-description": "Opera em três modos:\n# Lista revisões excluídas para os títulos fornecidos, ordenados por timestamp.\n# Lista contribuições eliminadas para o usuário fornecido, ordenadas por timestamp (sem títulos especificados).\n# Liste todas as revisões excluídas no espaço nominal dado, classificado por título e timestamp (sem títulos especificados, $1user não definido).\n \nCertos parâmetros aplicam-se apenas a alguns modos e são ignorados em outros.",
+       "apihelp-query+deletedrevs-paraminfo-modes": "{{PLURAL:$1|Modo|Modos}}: $2",
+       "apihelp-query+deletedrevs-param-start": "A data a partir da qual começar a enumeração.",
+       "apihelp-query+deletedrevs-param-end": "A data onde parar a enumeração.",
+       "apihelp-query+deletedrevs-param-from": "Começar listando desse título.",
+       "apihelp-query+deletedrevs-param-to": "Parar a listagem neste título.",
+       "apihelp-query+deletedrevs-param-prefix": "Pesquisa por todo os título que começam com este valor.",
+       "apihelp-query+deletedrevs-param-unique": "Liste apenas uma revisão para cada página.",
+       "apihelp-query+deletedrevs-param-tag": "Lista apenas as revisões com esta tag.",
+       "apihelp-query+deletedrevs-param-user": "Lista apenas revisões desse usuário.",
+       "apihelp-query+deletedrevs-param-excludeuser": "Não lista as revisões deste usuário.",
+       "apihelp-query+deletedrevs-param-namespace": "Lista apenas páginas neste espaço nominal.",
+       "apihelp-query+deletedrevs-param-limit": "A quantidade máxima de revisões para listar.",
+       "apihelp-query+deletedrevs-param-prop": "Quais as propriedades a serem obtidas: \n; revid: Adiciona a ID da revisão da revisão excluída.\n; parentid: Adiciona a ID da revisão da revisão anterior à página.\n;user: Adiciona o usuário que fez a revisão.\n; userid: Adiciona o ID do usuário que fez a revisão. \n; comment: Adiciona o comentário da revisão.\n; parsedcomment: Adiciona o comentário analisado da revisão.\n; minor: Etiqueta se a revisão for menor.\n; len: Adiciona o comprimento (bytes) da revisão.\n; sha1: Adiciona o SHA-1 (base 16) da revisão.\n; content: Adiciona o conteúdo da revisão.\n; token: <span class=\"apihelp-deprecated\">Depreciado.</span> Dá o token de edição.\n; tags: Tags para a revisão.",
+       "apihelp-query+deletedrevs-example-mode1": "Lista as últimas revisões excluídas das páginas <kbd>Main Page</kbd> e <kbd>Talk:Main Page</kbd>, com conteúdo (modo 1).",
+       "apihelp-query+deletedrevs-example-mode2": "Lista as últimas 50 contribuições excluídas por <kbd>Bob</kbd> (modo 2).",
+       "apihelp-query+deletedrevs-example-mode3-main": "Lista as primeiras 50 revisões excluídas no espaço nominal principal (modo 3).",
+       "apihelp-query+deletedrevs-example-mode3-talk": "Lista as primeiras 50 páginas excluídas no espaço nominal {{ns:talk}} (modo 3).",
+       "apihelp-query+disabled-summary": "Este módulo de consulta foi desativado.",
+       "apihelp-query+duplicatefiles-summary": "Liste todos os arquivos que são duplicatas dos arquivos fornecidos com base em valores de hash.",
        "apihelp-query+duplicatefiles-param-limit": "Quantos arquivos duplicados retornar.",
        "apihelp-query+duplicatefiles-param-dir": "A direção na qual listar.",
+       "apihelp-query+duplicatefiles-param-localonly": "Procure apenas arquivos no repositório local.",
+       "apihelp-query+duplicatefiles-example-simple": "Procurar por duplicatas de [[:File:Albert Einstein Head.jpg]].",
+       "apihelp-query+duplicatefiles-example-generated": "Procure duplicatas de todos os arquivos.",
+       "apihelp-query+embeddedin-summary": "Encontre todas as páginas que incorporam (transcluam) o título dado.",
        "apihelp-query+embeddedin-param-title": "Título a se pesquisar. Não pode ser usado em conjunto com $1pageid.",
-       "apihelp-query+embeddedin-param-pageid": "ID da página a se pesquisar. Não pode ser usado em conjunto com $1title.",
+       "apihelp-query+embeddedin-param-pageid": "ID da página para pesquisar. Não pode ser usado em conjunto com $1title.",
        "apihelp-query+embeddedin-param-namespace": "O espaço nominal a se enumerar.",
        "apihelp-query+embeddedin-param-dir": "A direção na qual listar.",
        "apihelp-query+embeddedin-param-filterredir": "Como filtrar por redirecionamentos.",
        "apihelp-query+embeddedin-param-limit": "Quantas páginas retornar.",
        "apihelp-query+embeddedin-example-simple": "Mostrar páginas transcluíndo <kbd>Template:Stub</kbd>.",
-       "apihelp-query+embeddedin-example-generator": "Obtém informação sobre páginas transcluindo <kbd>Template:Stub</kbd>.",
-       "apihelp-query+extlinks-summary": "Retorna todas as URLs externas (não interwikis) a partir das páginas de dados.",
+       "apihelp-query+embeddedin-example-generator": "Obter informação sobre páginas transcluindo <kbd>Template:Stub</kbd>.",
+       "apihelp-query+extlinks-summary": "Retorna todos os URLs externas (não interwikis) a partir das páginas dadas.",
        "apihelp-query+extlinks-param-limit": "Quantos links retornar.",
-       "apihelp-query+exturlusage-param-prop": "Que informações incluir:",
+       "apihelp-query+extlinks-param-protocol": "Protocolo do URL. Se estiver vazio e <var>$1query</var> estiver definido, o protocolo é <kbd>http</kbd>. Deixe o anterior e <var>$1query </var> vazios para listar todos os links externos.",
+       "apihelp-query+extlinks-param-query": "Pesquisar string sem protocolo. Útil para verificar se uma determinada página contém uma determinada URL externa.",
+       "apihelp-query+extlinks-param-expandurl": "Expandir URLs relativos ao protocolo com o protocolo canônico.",
+       "apihelp-query+extlinks-example-simple": "Obter uma lista de links externos em <kbd>Main Page</kbd>.",
+       "apihelp-query+exturlusage-summary": "Enumere páginas que contenham um determinado URL.",
+       "apihelp-query+exturlusage-param-prop": "Quais peças de informação incluir:",
+       "apihelp-query+exturlusage-paramvalue-prop-ids": "Adiciona o ID da página.",
+       "apihelp-query+exturlusage-paramvalue-prop-title": "Adiciona o título e o ID do espaço nominal da página.",
+       "apihelp-query+exturlusage-paramvalue-prop-url": "Adiciona o URL usado na página.",
+       "apihelp-query+exturlusage-param-protocol": "Protocolo do URL. Se estiver vazio e <var>$1query</var> estiver definido, o protocolo é <kbd>http</kbd>. Deixe o anterior e <var>$1query </var> vazios para listar todos os links externos.",
+       "apihelp-query+exturlusage-param-query": "Sequência de pesquisa sem protocolo. Veja [[Special:LinkSearch]]. Deixe vazio para listar todos os links externos.",
+       "apihelp-query+exturlusage-param-namespace": "O espaço nominal das páginas para enumerar.",
        "apihelp-query+exturlusage-param-limit": "Quantas páginas retornar.",
+       "apihelp-query+exturlusage-param-expandurl": "Expandir URLs relativos ao protocolo com o protocolo canônico.",
+       "apihelp-query+exturlusage-example-simple": "Mostra páginas vigiadas à <kbd>http://www.mediawiki.org</kbd>.",
+       "apihelp-query+filearchive-summary": "Enumerar todos os arquivos excluídos sequencialmente.",
+       "apihelp-query+filearchive-param-from": "O título da imagem do qual começar a enumeração.",
+       "apihelp-query+filearchive-param-to": "O título da imagem no qual parar a enumeração.",
+       "apihelp-query+filearchive-param-prefix": "Procure todos os títulos de imagens que começam com esse valor.",
        "apihelp-query+filearchive-param-limit": "Quantas imagens retornar.",
        "apihelp-query+filearchive-param-dir": "A direção na qual listar.",
+       "apihelp-query+filearchive-param-sha1": "SHA1 de imagem. Substitui $1sha1base36.",
+       "apihelp-query+filearchive-param-sha1base36": "SHA1 de imagem na base 36 (usado em MediaWiki).",
+       "apihelp-query+filearchive-param-prop": "Quais informação de imagem obter:",
+       "apihelp-query+filearchive-paramvalue-prop-sha1": "Adiciona o SHA-1 da imagem.",
+       "apihelp-query+filearchive-paramvalue-prop-timestamp": "Adiciona o timestamp para a versão carregada.",
+       "apihelp-query+filearchive-paramvalue-prop-user": "Adiciona o usuário que carregou a versão da imagem.",
+       "apihelp-query+filearchive-paramvalue-prop-size": "Adiciona o tamanho da imagem em bytes e a altura, largura e contagem de páginas (se aplicável).",
+       "apihelp-query+filearchive-paramvalue-prop-dimensions": "Apelido para tamanho.",
+       "apihelp-query+filearchive-paramvalue-prop-description": "Adiciona descrição da versão da imagem.",
+       "apihelp-query+filearchive-paramvalue-prop-parseddescription": "Analise a descrição da versão.",
+       "apihelp-query+filearchive-paramvalue-prop-mime": "Adiciona o tipo MIME da imagem.",
+       "apihelp-query+filearchive-paramvalue-prop-mediatype": "Adiciona o tipo de mídia da imagem.",
+       "apihelp-query+filearchive-paramvalue-prop-metadata": "Lista metadados Exif para a versão da imagem.",
+       "apihelp-query+filearchive-paramvalue-prop-bitdepth": "Adiciona a profundidade de bits da versão.",
+       "apihelp-query+filearchive-paramvalue-prop-archivename": "Adiciona o nome do arquivo da versão arquivada para as versões não-mais recentes.",
+       "apihelp-query+filearchive-example-simple": "Mostrar uma lista de todos os arquivos excluídos.",
+       "apihelp-query+filerepoinfo-summary": "Retorna informações meta sobre repositórios de imagens configurados na wiki.",
+       "apihelp-query+filerepoinfo-param-prop": "Quais propriedades do repositório obter (pode haver mais disponível em algumas wikis):\n;apiurl: URL para a API do repositório - útil para obter informações de imagem do host.\n;name: A chave do repositório - usado em por exemplo, <var>[[mw:Special:MyLanguage/Manual:$wgForeignFileRepos|$wgForeignFileRepos]]</var> e [[Special:ApiHelp/query+imageinfo|imageinfo]] valores de retorno.\n;displayname: O legível para humanos do repositório wiki.\n;rooturl: URL raiz para caminhos de imagem.\n; local: Se esse repositório é o local ou não.",
+       "apihelp-query+filerepoinfo-example-simple": "Obter informações sobre repositórios de arquivos.",
+       "apihelp-query+fileusage-summary": "Encontre todas as páginas que usam os arquivos dados.",
        "apihelp-query+fileusage-param-prop": "Quais propriedades obter:",
+       "apihelp-query+fileusage-paramvalue-prop-pageid": "ID de cada página.",
+       "apihelp-query+fileusage-paramvalue-prop-title": "O título de cada página.",
+       "apihelp-query+fileusage-paramvalue-prop-redirect": "Sinalizar se a página é um redirecionamento.",
+       "apihelp-query+fileusage-param-namespace": "Listar apenas páginas neste espaço nominal.",
        "apihelp-query+fileusage-param-limit": "Quantos retornar.",
+       "apihelp-query+fileusage-param-show": "Mostre apenas itens que atendam a esses critérios.\n;redirect:Apenas mostra redirecionamentos.\n;!redirect:Não mostra redirecionamentos.",
+       "apihelp-query+fileusage-example-simple": "Obter uma lista de páginas usando [[:File:Example.jpg]].",
+       "apihelp-query+fileusage-example-generator": "Obter informação sobre páginas usando [[:File:Example.jpg]].",
+       "apihelp-query+imageinfo-summary": "Retorna a informação do arquivo e o histórico de upload.",
+       "apihelp-query+imageinfo-param-prop": "Quais informações de arquivo para obter:",
+       "apihelp-query+imageinfo-paramvalue-prop-timestamp": "Adiciona o timestamp para a versão carregada.",
+       "apihelp-query+imageinfo-paramvalue-prop-user": "Adiciona o usuário que carregou cada versão do arquivo.",
+       "apihelp-query+imageinfo-paramvalue-prop-userid": "Adiciona a identificação do usuário que carregou cada versão do arquivo.",
+       "apihelp-query+imageinfo-paramvalue-prop-comment": "Comente sobre a versão.",
+       "apihelp-query+imageinfo-paramvalue-prop-parsedcomment": "Analise o comentário na versão.",
+       "apihelp-query+imageinfo-paramvalue-prop-canonicaltitle": "Adiciona o título canônico do arquivo.",
+       "apihelp-query+imageinfo-paramvalue-prop-url": "Fornece o URL para o arquivo e a página de descrição.",
+       "apihelp-query+imageinfo-paramvalue-prop-size": "Adiciona o tamanho do arquivo em bytes e a altura, largura e contagem de páginas (se aplicável).",
+       "apihelp-query+imageinfo-paramvalue-prop-dimensions": "Apelido para tamanho.",
+       "apihelp-query+imageinfo-paramvalue-prop-sha1": "Adiciona o SHA-1 do arquivo.",
+       "apihelp-query+imageinfo-paramvalue-prop-mime": "Adiciona o tipo MIME do arquivo.",
+       "apihelp-query+imageinfo-paramvalue-prop-thumbmime": "Adiciona o tipo MIME da miniatura da imagem (requer url e param $1urlwidth).",
+       "apihelp-query+imageinfo-paramvalue-prop-mediatype": "Adiciona o tipo de mídia do arquivo.",
+       "apihelp-query+imageinfo-paramvalue-prop-metadata": "Lista metadados Exif para a versão do arquivo.",
+       "apihelp-query+imageinfo-paramvalue-prop-commonmetadata": "Lista os metadados genéricos do formato de arquivo para a versão do arquivo.",
+       "apihelp-query+imageinfo-paramvalue-prop-extmetadata": "Lista metadados formatados combinados de várias fontes. Os resultados são formatados em HTML.",
+       "apihelp-query+imageinfo-paramvalue-prop-archivename": "Adiciona o nome do arquivo da versão arquivada para as versões não-mais recentes.",
+       "apihelp-query+imageinfo-paramvalue-prop-bitdepth": "Adiciona a profundidade de bits da versão.",
+       "apihelp-query+imageinfo-paramvalue-prop-uploadwarning": "Usado pela página Special:Upload para obter informações sobre um arquivo existente. Não está destinado a ser usado fora do núcleo do MediaWiki.",
+       "apihelp-query+imageinfo-paramvalue-prop-badfile": "Adiciona se o arquivo está no [[MediaWiki:Bad image list]]",
        "apihelp-query+imageinfo-param-limit": "Quantas revisões de arquivos retornar por arquivo.",
+       "apihelp-query+imageinfo-param-start": "O timestamp do qual começar a enumeração.",
+       "apihelp-query+imageinfo-param-end": "Data e hora para a listagem.",
+       "apihelp-query+imageinfo-param-urlwidth": "Se $2prop=url estiver definido, um URL para uma imagem dimensionada para essa largura será retornado.\nPor motivos de desempenho, se essa opção for usada, não serão retornadas mais de $1 imagens dimensionadas.",
+       "apihelp-query+imageinfo-param-urlheight": "Semelhante a $1urlwidth.",
+       "apihelp-query+imageinfo-param-metadataversion": "Versão dos metadados para usar. Se <kbd>latest</kbd> for especificado, use a versão mais recente. Por padrão, <kbd>1</kbd> para compatibilidade com versões anteriores.",
+       "apihelp-query+imageinfo-param-extmetadatalanguage": "Em qual idioma procurar por extmetadata. Isso afeta tanto a tradução a ser buscada, quanto várias estão disponíveis, bem como a forma como as coisas como números e vários valores são formatados.",
+       "apihelp-query+imageinfo-param-extmetadatamultilang": "Se as traduções para a propriedade extmetadata estiverem disponíveis, procure todas elas.",
+       "apihelp-query+imageinfo-param-extmetadatafilter": "Se especificado e não vazio, apenas essas chaves serão retornadas para $1prop=extmetadata.",
+       "apihelp-query+imageinfo-param-urlparam": "Uma sequência de parâmetro específico do manipulador. Por exemplo, PDFs podem usar <kbd>page15-100px</kbd>. <var>$1urlwidth</var> deve ser usado e ser consistente com <var>$1urlparam</var>.",
+       "apihelp-query+imageinfo-param-badfilecontexttitle": "Se <kbd>$2prop=badfile</kbd> estiver definido, este é o título da página usado ao avaliar a [[MediaWiki:Bad image list]]",
+       "apihelp-query+imageinfo-param-localonly": "Procure apenas arquivos no repositório local.",
+       "apihelp-query+imageinfo-example-simple": "Obtenha informações sobre a versão atual do [[:File:Albert Einstein Head.jpg]].",
+       "apihelp-query+imageinfo-example-dated": "Obtenha informações sobre versões do [[:File:Test.jpg]] a partir de 2008 e posterior.",
+       "apihelp-query+images-summary": "Retorna todos os arquivos contidos nas páginas fornecidas.",
        "apihelp-query+images-param-limit": "Quantos arquivos retornar.",
-       "apihelp-query+images-param-dir": "",
+       "apihelp-query+images-param-images": "Apenas liste esses arquivos. Útil para verificar se uma determinada página possui um determinado arquivo.",
+       "apihelp-query+images-param-dir": "A direção na qual listar.",
+       "apihelp-query+images-example-simple": "Obter uma lista de arquivos usados na [[Main Page]].",
+       "apihelp-query+images-example-generator": "Obter informações sobre todos os arquivos usados na [[Main Page]].",
+       "apihelp-query+imageusage-summary": "Encontre todas as páginas que usam o título da imagem dada.",
        "apihelp-query+imageusage-param-title": "Título a se pesquisar. Não pode ser usado em conjunto com $1pageid.",
        "apihelp-query+imageusage-param-pageid": "ID da página para pesquisar. Não pode ser usado em conjunto com $1title.",
        "apihelp-query+imageusage-param-namespace": "O espaço nominal a se enumerar.",
        "apihelp-query+imageusage-param-dir": "A direção na qual listar.",
+       "apihelp-query+imageusage-param-filterredir": "Como filtrar para redirecionamentos. Se configurado para não-redirecionamentos quando $1redirect estiver habilitado, isso só é aplicado ao segundo nível.",
+       "apihelp-query+imageusage-param-limit": "Quantas páginas retornar. Se <var>$1redirect</var> estiver ativado, o limite se aplica a cada nível separadamente (o que significa até 2 * <var>$1limit</var> resultados podem ser retornados).",
+       "apihelp-query+imageusage-param-redirect": "Se a página de link for um redirecionamento, encontre todas as páginas que se liguem a esse redirecionamento também. O limite máximo é reduzido para metade.",
+       "apihelp-query+imageusage-example-simple": "Mostrar páginas usando [[:File:Albert Einstein Head.jpg]].",
+       "apihelp-query+imageusage-example-generator": "Obter informação sobre páginas usando [[:File:Albert Einstein Head.jpg]].",
+       "apihelp-query+info-summary": "Obter informações básicas sobre a página.",
+       "apihelp-query+info-param-prop": "Quais propriedades adicionais obter:",
+       "apihelp-query+info-paramvalue-prop-protection": "Liste o nível de proteção de cada página.",
+       "apihelp-query+info-paramvalue-prop-talkid": "O ID da página de discussão para cada página de não-discussão.",
+       "apihelp-query+info-paramvalue-prop-watched": "Liste o estado de vigilância de cada página.",
+       "apihelp-query+info-paramvalue-prop-watchers": "Número de observadores, se permitido.",
+       "apihelp-query+info-paramvalue-prop-visitingwatchers": "O número de observadores de cada página que visitou edições recentes para essa página, se permitido.",
+       "apihelp-query+info-paramvalue-prop-notificationtimestamp": "O timestamp da notificação da lista de páginas vigiadas de cada página.",
+       "apihelp-query+info-paramvalue-prop-subjectid": "O ID da página principal para cada página de discussão.",
+       "apihelp-query+info-paramvalue-prop-url": "Retorna um URL completo, de edição e o canônico para cada página.",
        "apihelp-query+info-paramvalue-prop-readable": "Se o usuário pode ler esta página.",
        "apihelp-query+info-paramvalue-prop-preload": "Fornece o texto retornado por EditFormPreloadText.",
        "apihelp-query+info-paramvalue-prop-displaytitle": "Fornece o modo como o título da página é exibido.",
        "apihelp-query+info-param-testactions": "Testa se o usuário atual pode executar determinadas ações na página.",
-       "apihelp-query+info-example-simple": "Obtém informações sobre a página <kbd>Página principal</kbd>.",
-       "apihelp-query+iwbacklinks-summary": "Encontra todas as páginas que apontam para o determinado link interwiki.",
+       "apihelp-query+info-param-token": "Use [[Special:ApiHelp/query+tokens|action=query&meta=tokens]] em vez.",
+       "apihelp-query+info-example-simple": "Obter informações sobre a página <kbd>Main Page</kbd>.",
+       "apihelp-query+info-example-protection": "Obter informações gerais e de proteção sobre a página <kbd>Main Page</kbd>.",
+       "apihelp-query+iwbacklinks-summary": "Encontra todas as páginas que apontam para o link interwiki dado.",
        "apihelp-query+iwbacklinks-extended-description": "Pode ser usado para encontrar todos os links com um prefixo, ou todos os links para um título (com um determinado prefixo). Usar nenhum parâmetro é efetivamente \"todos os links interwiki\".",
        "apihelp-query+iwbacklinks-param-prefix": "Prefixo para o interwiki.",
+       "apihelp-query+iwbacklinks-param-title": "Link interwiki para pesquisar. Deve ser usado com <var>$1blprefix</var>.",
        "apihelp-query+iwbacklinks-param-limit": "Quantas páginas retornar.",
        "apihelp-query+iwbacklinks-param-prop": "Quais propriedades obter:",
+       "apihelp-query+iwbacklinks-paramvalue-prop-iwprefix": "Adiciona o prefixo do interwiki.",
+       "apihelp-query+iwbacklinks-paramvalue-prop-iwtitle": "Adiciona o título do interwiki.",
        "apihelp-query+iwbacklinks-param-dir": "A direção na qual listar.",
+       "apihelp-query+iwbacklinks-example-simple": "Obter páginas apontando para [[wikibooks:Test]].",
+       "apihelp-query+iwbacklinks-example-generator": "Obter informações sobre páginas que ligam para [[wikibooks:Test]].",
+       "apihelp-query+iwlinks-summary": "Retorna todos os links interwiki das páginas fornecidas.",
+       "apihelp-query+iwlinks-param-url": "Obter o URL completo (não pode ser usado com $1prop).",
+       "apihelp-query+iwlinks-param-prop": "Quais propriedades adicionais obter para cada link interlanguage:",
        "apihelp-query+iwlinks-paramvalue-prop-url": "Adiciona o URL completo.",
        "apihelp-query+iwlinks-param-limit": "Quantos interwiki links a serem retornados.",
+       "apihelp-query+iwlinks-param-prefix": "Retornar apenas links interwiki com este prefixo.",
+       "apihelp-query+iwlinks-param-title": "Link interwiki para pesquisar por. Deve ser usado com <var>$1prefix</var>.",
        "apihelp-query+iwlinks-param-dir": "A direção na qual listar.",
+       "apihelp-query+iwlinks-example-simple": "Obtenha links interwiki da página <kbd>Main Page</kbd>.",
+       "apihelp-query+langbacklinks-summary": "Encontre todas as páginas que apontam para o link de idioma dado.",
+       "apihelp-query+langbacklinks-extended-description": "Pode ser usado para encontrar todos os links com um código de idioma ou todos os links para um título (com um determinado idioma). Usar nenhum dos parâmetros é efetivamente \"todos os links de linguagem\". \n\nNote que isso pode não considerar os links de idiomas adicionados por extensões.",
+       "apihelp-query+langbacklinks-param-lang": "Idioma para o link de idioma.",
+       "apihelp-query+langbacklinks-param-title": "Link de idioma para procurar. Deve ser usado com $1lang.",
        "apihelp-query+langbacklinks-param-limit": "Quantas páginas retornar.",
        "apihelp-query+langbacklinks-param-prop": "Quais propriedades obter:",
+       "apihelp-query+langbacklinks-paramvalue-prop-lllang": "Adiciona o código de idioma do link de idioma.",
+       "apihelp-query+langbacklinks-paramvalue-prop-lltitle": "Adiciona o título do link de idioma.",
        "apihelp-query+langbacklinks-param-dir": "A direção na qual listar.",
+       "apihelp-query+langbacklinks-example-simple": "Obter páginas apontando para [[:fr:Test]].",
+       "apihelp-query+langbacklinks-example-generator": "Obter informações sobre páginas que ligam para [[:fr:Test]].",
+       "apihelp-query+langlinks-summary": "Retorna todos os links interlanguage das páginas fornecidas.",
        "apihelp-query+langlinks-param-limit": "Quantos links de idioma retornar.",
+       "apihelp-query+langlinks-param-url": "Obter o URL completo (não pode ser usado com <var>$1prop</var>).",
+       "apihelp-query+langlinks-param-prop": "Quais propriedades adicionais obter para cada link interlanguage:",
+       "apihelp-query+langlinks-paramvalue-prop-url": "Adiciona o URL completo.",
+       "apihelp-query+langlinks-paramvalue-prop-langname": "Adiciona o nome do idioma localizado (melhor esforço). Use <var>$1inlanguagecode</var> para controlar o idioma.",
+       "apihelp-query+langlinks-paramvalue-prop-autonym": "Adiciona o nome do idioma nativo.",
+       "apihelp-query+langlinks-param-lang": "Retornar apenas os links de idioma com este código de idioma.",
+       "apihelp-query+langlinks-param-title": "Link para pesquisar. Deve ser usado com <var>$1lang</var>.",
        "apihelp-query+langlinks-param-dir": "A direção na qual listar.",
+       "apihelp-query+langlinks-param-inlanguagecode": "Código de idioma para nomes de idiomas localizados.",
+       "apihelp-query+langlinks-example-simple": "Obter links de interligação da página <kbd>Main Page</kbd>.",
+       "apihelp-query+links-summary": "Retorna todos os links das páginas fornecidas.",
+       "apihelp-query+links-param-namespace": "Mostre apenas links nesses espaços de nominais.",
        "apihelp-query+links-param-limit": "Quantos links retornar.",
+       "apihelp-query+links-param-titles": "Apenas lista links para esses títulos. Útil para verificar se uma determinada página liga a um certo título.",
        "apihelp-query+links-param-dir": "A direção na qual listar.",
+       "apihelp-query+links-example-simple": "Obter links da página <kbd>Main Page</kbd>",
+       "apihelp-query+links-example-generator": "Obter informações sobre os links de páginas na página <kbd>Main Page</kbd>.",
+       "apihelp-query+links-example-namespaces": "Obter links da página <kbd>Main Page</kbd> nos espaços nominais {{ns:user}} e {{ns:template}}.",
+       "apihelp-query+linkshere-summary": "Encontre todas as páginas que apontam para as páginas dadas.",
        "apihelp-query+linkshere-param-prop": "Quais propriedades obter:",
+       "apihelp-query+linkshere-paramvalue-prop-pageid": "ID de cada página.",
+       "apihelp-query+linkshere-paramvalue-prop-title": "O título de cada página.",
+       "apihelp-query+linkshere-paramvalue-prop-redirect": "Sinalizar se a página é um redirecionamento.",
+       "apihelp-query+linkshere-param-namespace": "Listar apenas páginas neste espaço nominal.",
        "apihelp-query+linkshere-param-limit": "Quantos retornar.",
+       "apihelp-query+linkshere-param-show": "Mostre apenas itens que atendam a esses critérios.\n;redirect:Apenas mostra redirecionamentos.\n;!redirect:Não mostra redirecionamentos.",
+       "apihelp-query+linkshere-example-simple": "Obter uma lista de páginas que ligam para a [[Main Page]].",
+       "apihelp-query+linkshere-example-generator": "Obter informações sobre páginas que ligam para [[Main Page]].",
+       "apihelp-query+logevents-summary": "Recuperar eventos dos logs.",
        "apihelp-query+logevents-param-prop": "Quais propriedades obter:",
+       "apihelp-query+logevents-paramvalue-prop-ids": "Adiciona o ID do log de eventos.",
+       "apihelp-query+logevents-paramvalue-prop-title": "Adiciona o título da página para o log de eventos.",
+       "apihelp-query+logevents-paramvalue-prop-type": "Adiciona o tipo do log de eventos.",
+       "apihelp-query+logevents-paramvalue-prop-user": "Adiciona o usuário responsável pelo evento de log.",
+       "apihelp-query+logevents-paramvalue-prop-userid": "Adiciona o ID do usuário responsável pelo evento de log.",
+       "apihelp-query+logevents-paramvalue-prop-timestamp": "Adiciona o timestamp para o log de eventos.",
+       "apihelp-query+logevents-paramvalue-prop-comment": "Adiciona o comentário do evento de log.",
+       "apihelp-query+logevents-paramvalue-prop-parsedcomment": "Adiciona o comentário analisado do log de eventos.",
+       "apihelp-query+logevents-paramvalue-prop-details": "Lista detalhes adicionais sobre o evento de log.",
+       "apihelp-query+logevents-paramvalue-prop-tags": "Lista as tags para o evento de log.",
+       "apihelp-query+logevents-param-type": "Filtre as entradas de log para apenas esse tipo.",
+       "apihelp-query+logevents-param-action": "Filtre as ações de log para apenas essa ação. Substitui <var>$1type</var>. Na lista de valores possíveis, os valores com asterisco, como <kbd>action/*</kbd>, podem ter strings diferentes após a barra (/).",
+       "apihelp-query+logevents-param-start": "A data a partir da qual começar a enumeração.",
+       "apihelp-query+logevents-param-end": "O timestamp para terminar de enumerar.",
+       "apihelp-query+logevents-param-user": "Filtrar entradas para aquelas feitas pelo usuário fornecido.",
+       "apihelp-query+logevents-param-title": "Filtre as entradas para aquelas relacionadas a uma página.",
+       "apihelp-query+logevents-param-namespace": "Filtrar as entradas para aqueles no espaço nominal fornecido.",
+       "apihelp-query+logevents-param-prefix": "Filtrar as entradas que começam com este prefixo.",
+       "apihelp-query+logevents-param-tag": "Apenas lista as entradas de eventos marcadas com esta etiqueta.",
        "apihelp-query+logevents-param-limit": "Quantas entradas de eventos a serem retornadas.",
        "apihelp-query+logevents-example-simple": "Listar os eventos recentes do registo.",
-       "apihelp-query+pageswithprop-param-prop": "Que informações incluir:",
+       "apihelp-query+pagepropnames-summary": "Liste todos os nomes de propriedade da página em uso na wiki.",
+       "apihelp-query+pagepropnames-param-limit": "O número máximo de nomes a retornar.",
+       "apihelp-query+pagepropnames-example-simple": "Obtenha os primeiros 10 nomes de propriedade.",
+       "apihelp-query+pageprops-summary": "Obter várias propriedades da página definidas no conteúdo da página.",
+       "apihelp-query+pageprops-param-prop": "Apenas liste as propriedades desta página (<kbd>[[Special:ApiHelp/query+pagepropnames|action=query&list=pagepropnames]]</kbd> retorna nomes de propriedade da página em uso). Útil para verificar se as páginas usam uma determinada propriedade da página.",
+       "apihelp-query+pageprops-example-simple": "Obter propriedades para as páginas <kbd>Main Page</kbd> e <kbd>MediaWiki</kbd>.",
+       "apihelp-query+pageswithprop-summary": "Liste todas as páginas usando uma propriedade de página determinada.",
+       "apihelp-query+pageswithprop-param-propname": "Propriedade da página para a qual enumeram páginas (<kbd>[[Special:ApiHelp/query+pagepropnames|action=query&list=pagepropnames]]</kbd> retorna nomes de propriedade da página em uso).",
+       "apihelp-query+pageswithprop-param-prop": "Quais peças de informação incluir:",
+       "apihelp-query+pageswithprop-paramvalue-prop-ids": "Adiciona o ID da página.",
+       "apihelp-query+pageswithprop-paramvalue-prop-title": "Adiciona o título e o ID do espaço nominal da página.",
+       "apihelp-query+pageswithprop-paramvalue-prop-value": "Adiciona o valor da propriedade da página.",
+       "apihelp-query+pageswithprop-param-limit": "O número máximo de páginas para retornar.",
        "apihelp-query+pageswithprop-param-dir": "Em qual sentido ordenar.",
-       "apihelp-query+prefixsearch-param-limit": "O número máximo a se retornar.",
+       "apihelp-query+pageswithprop-example-simple": "Lista as primeiras 10 páginas usando <code>&#123;&#123;DISPLAYTITLE:&#125;&#125;</code>.",
+       "apihelp-query+pageswithprop-example-generator": "Obter informações adicionais sobre as primeiras 10 páginas usando <code>_&#95;NOTOC_&#95;</code>.",
+       "apihelp-query+prefixsearch-summary": "Execute uma pesquisa de prefixo para títulos de página.",
+       "apihelp-query+prefixsearch-extended-description": "Apesar da semelhança nos nomes, este módulo não se destina a ser equivalente a[[Special:PrefixIndex]]; para isso, veja <kbd>[[Special:ApiHelp/query+allpages|action=query&list=allpages]]</kbd> com o parâmetro <kbd>apprefix</kbd>.O propósito deste módulo é semelhante a <kbd>[[Special:ApiHelp/opensearch|action=opensearch]]</kbd>: para inserir o usuário e fornecer os títulos de melhor correspondência. Dependendo do backend do mecanismo de pesquisa, isso pode incluir correção de digitação, evasão de redirecionamento ou outras heurísticas.",
+       "apihelp-query+prefixsearch-param-search": "Pesquisar string.",
+       "apihelp-query+prefixsearch-param-namespace": "Espaço nominal para pesquisar.",
+       "apihelp-query+prefixsearch-param-limit": "Número máximo de resultados.",
+       "apihelp-query+prefixsearch-param-offset": "Número de resultados a ignorar.",
+       "apihelp-query+prefixsearch-example-simple": "Procure títulos de páginas começando com <kbd>meaning</kbd>.",
+       "apihelp-query+prefixsearch-param-profile": "Pesquisar perfil para usar.",
+       "apihelp-query+protectedtitles-summary": "Liste todos os títulos protegidos contra criação.",
+       "apihelp-query+protectedtitles-param-namespace": "Somente lista títulos nesses espaços de nominais.",
+       "apihelp-query+protectedtitles-param-level": "Lista apenas os títulos com esses níveis de proteção.",
        "apihelp-query+protectedtitles-param-limit": "Quantas páginas retornar.",
+       "apihelp-query+protectedtitles-param-start": "Iniciar a listar neste timestamp de proteção.",
+       "apihelp-query+protectedtitles-param-end": "Pare de listar neste timestamp de proteção.",
        "apihelp-query+protectedtitles-param-prop": "Quais propriedades obter:",
-       "apihelp-query+protectedtitles-paramvalue-prop-level": "Adicionar o nível de proteção",
-       "apihelp-query+protectedtitles-example-simple": "Listar títulos protegidos",
-       "apihelp-query+querypage-param-limit": "O número máximo a se retornar.",
+       "apihelp-query+protectedtitles-paramvalue-prop-timestamp": "Adiciona o timestamp de quando a proteção foi adicionada.",
+       "apihelp-query+protectedtitles-paramvalue-prop-user": "Adiciona o usuário que adicionou a proteção.",
+       "apihelp-query+protectedtitles-paramvalue-prop-userid": "Adiciona a ID do usuário que adicionou a proteção.",
+       "apihelp-query+protectedtitles-paramvalue-prop-comment": "Adiciona o comentário para a proteção.",
+       "apihelp-query+protectedtitles-paramvalue-prop-parsedcomment": "Adiciona o comentário analisado para a proteção.",
+       "apihelp-query+protectedtitles-paramvalue-prop-expiry": "Adiciona o timestamp de quando a proteção será encerrada.",
+       "apihelp-query+protectedtitles-paramvalue-prop-level": "Adicionar o nível de proteção.",
+       "apihelp-query+protectedtitles-example-simple": "Listar títulos protegidos.",
+       "apihelp-query+protectedtitles-example-generator": "Encontre links para títulos protegidos no espaço nominal principal.",
+       "apihelp-query+querypage-summary": "Obter uma lista fornecida por uma página especial baseada em QueryPage.",
+       "apihelp-query+querypage-param-page": "O nome da página especial. Note, isso diferencia maiúsculas de minúsculas.",
+       "apihelp-query+querypage-param-limit": "Número de resultados a se retornado.",
+       "apihelp-query+querypage-example-ancientpages": "Retorna resultados de [[Special:Ancientpages]].",
+       "apihelp-query+random-summary": "Obter um conjunto de páginas aleatórias.",
+       "apihelp-query+random-extended-description": "As páginas são listadas em uma sequência fixa, apenas o ponto de partida é aleatório. Isso significa que, se, por exemplo, <samp>Main Page</samp> é a primeira página aleatória da lista, <samp>List of fictional monkeys</samp> será <em>sempre</em> a segunda, <samp>List of people on stamps of Vanuatu</samp> terceiro, etc.",
+       "apihelp-query+random-param-namespace": "Retorne páginas apenas nesses espaços nominais.",
        "apihelp-query+random-param-limit": "Limita quantas páginas aleatórias serão retornadas.",
+       "apihelp-query+random-param-redirect": "Use <kbd>$1filterredir=redirects</kbd> em vez.",
        "apihelp-query+random-param-filterredir": "Como filtrar por redirecionamentos.",
-       "apihelp-query+recentchanges-param-user": "Listar apenas alterações de usuário.",
+       "apihelp-query+random-example-simple": "Retorna duas páginas aleatórias do espaço nominal principal.",
+       "apihelp-query+random-example-generator": "Retorna informações da página sobre duas páginas aleatórias do espaço nominal principal.",
+       "apihelp-query+recentchanges-summary": "Enumere as mudanças recentes.",
+       "apihelp-query+recentchanges-param-start": "A data a partir da qual começar a enumeração.",
+       "apihelp-query+recentchanges-param-end": "O timestamp para terminar de enumerar.",
+       "apihelp-query+recentchanges-param-namespace": "Filtrar apenas as mudanças destes espaços nominais.",
+       "apihelp-query+recentchanges-param-user": "Listar apenas alterações deste usuário.",
        "apihelp-query+recentchanges-param-excludeuser": "Não listar as alterações deste usuário.",
        "apihelp-query+recentchanges-param-tag": "Listar apenas as alterações marcadas com esta etiqueta.",
-       "apihelp-query+recentchanges-paramvalue-prop-flags": "Adicionar indicadores para a edição.",
-       "apihelp-query+recentchanges-paramvalue-prop-tags": "Listar as etiquetas para entrada.",
+       "apihelp-query+recentchanges-param-prop": "Incluir elementos de informação adicional:",
+       "apihelp-query+recentchanges-paramvalue-prop-user": "Adiciona o usuário responsável pela edição e marca se ele é um IP.",
+       "apihelp-query+recentchanges-paramvalue-prop-userid": "Adiciona o ID do usuário responsável pela edição.",
+       "apihelp-query+recentchanges-paramvalue-prop-comment": "Adiciona o comentário para a edição.",
+       "apihelp-query+recentchanges-paramvalue-prop-parsedcomment": "Adiciona o comentário analisado para a edição.",
+       "apihelp-query+recentchanges-paramvalue-prop-flags": "Adiciona etiquetas para a edição.",
+       "apihelp-query+recentchanges-paramvalue-prop-timestamp": "Adiciona o timestamp da edição.",
+       "apihelp-query+recentchanges-paramvalue-prop-title": "Adiciona o título da página da edição.",
+       "apihelp-query+recentchanges-paramvalue-prop-ids": "Adiciona o ID da página, das alterações recentes e dA revisão nova e antiga.",
+       "apihelp-query+recentchanges-paramvalue-prop-sizes": "Adiciona o comprimento novo e antigo da página em bytes.",
+       "apihelp-query+recentchanges-paramvalue-prop-redirect": "Etiqueta a edição se a página é um redirecionamento.",
+       "apihelp-query+recentchanges-paramvalue-prop-patrolled": "Etiquete edições patrulháveis como sendo patrulhadas ou não-patrulhadas.",
+       "apihelp-query+recentchanges-paramvalue-prop-loginfo": "Adiciona informações de registro (ID de registro, tipo de registro, etc.) às entradas do log.",
+       "apihelp-query+recentchanges-paramvalue-prop-tags": "Listar as etiquetas para a entrada.",
+       "apihelp-query+recentchanges-paramvalue-prop-sha1": "Adiciona o checksum do conteúdo para entradas associadas a uma revisão.",
+       "apihelp-query+recentchanges-param-token": "Use <kbd>[[Special:ApiHelp/query+tokens|action=query&meta=tokens]]</kbd> em vez.",
+       "apihelp-query+recentchanges-param-show": "Mostre apenas itens que atendam a esses critérios. Por exemplo, para ver apenas edições menores feitas por usuários conectados, set $1show=minor|!anon.",
        "apihelp-query+recentchanges-param-limit": "Quantas alterações a serem retornadas.",
+       "apihelp-query+recentchanges-param-type": "Quais tipos de mudanças mostrar.",
+       "apihelp-query+recentchanges-param-toponly": "Somente lista as alterações que são as últimas revisões.",
+       "apihelp-query+recentchanges-param-generaterevisions": "Quando usado como gerador, gere IDs de revisão em vez de títulos. As entradas de alterações recentes sem IDs de revisão associadas (por exemplo, a maioria das entradas de log) não gerarão nada.",
        "apihelp-query+recentchanges-example-simple": "Listar mudanças recentes.",
+       "apihelp-query+recentchanges-example-generator": "Obter informações da página sobre as mudanças recentes não patrulhadas.",
+       "apihelp-query+redirects-summary": "Retorna todos os redirecionamentos para as páginas indicadas.",
        "apihelp-query+redirects-param-prop": "Quais propriedades obter:",
+       "apihelp-query+redirects-paramvalue-prop-pageid": "ID de cada redirecionamento.",
        "apihelp-query+redirects-paramvalue-prop-title": "Título de cada redirecionamento.",
        "apihelp-query+redirects-paramvalue-prop-fragment": "Fragmento de cada redirecionamento, se há algum.",
-       "apihelp-query+redirects-param-namespace": "Listar páginas apenas neste espaço nominal.",
+       "apihelp-query+redirects-param-namespace": "Listar apenas páginas neste espaço nominal.",
        "apihelp-query+redirects-param-limit": "Quantos redirecionamentos a serem retornados.",
-       "apihelp-query+revisions-example-last5": "Mostrar as 5 últimas revisões do <kbd>Main Page</kbd>.",
-       "apihelp-query+revisions-example-first5": "Mostrar as 5 primeiras revisões do <kbd>Main Page</kbd>.",
-       "apihelp-query+revisions-example-first5-after": "Mostrar as 5 primeiras revisões do <kbd>Main Page</kbd> feitas depois de 05/01/2006.",
-       "apihelp-query+revisions-example-first5-not-localhost": "Mostrar as 5 primeiras revisões do <kbd>Main Page</kbd> que não foram feitas pelo usuário anônimo <kbd>127.0.0.1</kbd>.",
+       "apihelp-query+redirects-param-show": "Mostrar apenas itens que atendam a esses critérios:\n; fragment: mostra apenas redirecionamentos com um fragmento.\n;!fragment: mostra apenas redirecionamentos sem um fragmento.",
+       "apihelp-query+redirects-example-simple": "Obter uma lista de redirecionamento para [[Main Page]].",
+       "apihelp-query+redirects-example-generator": "Obter informações sobre todos os redirecionamentos para a [[Main Page]].",
+       "apihelp-query+revisions-summary": "Obter informações de revisão.",
+       "apihelp-query+revisions-extended-description": "Pode ser usado de várias maneiras:\n#Obter dados sobre um conjunto de páginas (última revisão), definindo títulos ou pageids.\n# Obter revisões para uma página determinada, usando títulos ou pageids com início, fim ou limite.\n# Obter dados sobre um conjunto de revisões, definindo seus IDs com revids.",
+       "apihelp-query+revisions-paraminfo-singlepageonly": "Só pode ser usado com uma única página (modo #2).",
+       "apihelp-query+revisions-param-startid": "Comece a enumeração do timestamp desta revisão. A revisão deve existir, mas não precisa pertencer a esta página.",
+       "apihelp-query+revisions-param-endid": "Pare a enumeração no timestamp desta revisão. A revisão deve existir, mas não precisa pertencer a esta página.",
+       "apihelp-query+revisions-param-start": "De qual timestamp de revisão iniciar a enumeração.",
+       "apihelp-query+revisions-param-end": "Enumerar até este timestamp.",
+       "apihelp-query+revisions-param-user": "Somente incluir revisões feitas pelo usuário.",
+       "apihelp-query+revisions-param-excludeuser": "Excluir revisões feitas pelo usuário.",
+       "apihelp-query+revisions-param-tag": "Lista apenas as revisões com esta tag.",
+       "apihelp-query+revisions-param-token": "Que tokens obter para cada revisão.",
+       "apihelp-query+revisions-example-content": "Obter dados com conteúdo para a última revisão de títulos <kbd>API</kbd> e <kbd>Main Page</kbd>.",
+       "apihelp-query+revisions-example-last5": "Mostrar as 5 últimas revisões da <kbd>Main Page</kbd>.",
+       "apihelp-query+revisions-example-first5": "Mostrar as 5 primeiras revisões da <kbd>Main Page</kbd>.",
+       "apihelp-query+revisions-example-first5-after": "Mostrar as 5 primeiras revisões da <kbd>Main Page</kbd> feitas depois de 05/01/2006.",
+       "apihelp-query+revisions-example-first5-not-localhost": "Mostrar as 5 primeiras revisões da <kbd>Main Page</kbd> que não foram feitas pelo usuário anônimo <kbd>127.0.0.1</kbd>.",
        "apihelp-query+revisions-example-first5-user": "Mostrar as 5 primeiras revisões da <kbd>Main Page</kbd> que foram feitas pelo usuário <kbd>MediaWiki default</kbd>.",
-       "apihelp-query+revisions+base-param-prop": "Que propriedades mostrar para cada modificação:",
+       "apihelp-query+revisions+base-param-prop": "Quais propriedades mostrar para cada modificação:",
        "apihelp-query+revisions+base-paramvalue-prop-ids": "O ID da revisão.",
+       "apihelp-query+revisions+base-paramvalue-prop-flags": "Etiqueta de revisão (menor).",
+       "apihelp-query+revisions+base-paramvalue-prop-timestamp": "O timestamp da revisão.",
+       "apihelp-query+revisions+base-paramvalue-prop-user": "Usuário que fez a revisão.",
+       "apihelp-query+revisions+base-paramvalue-prop-userid": "ID de usuário do criador da revisão.",
+       "apihelp-query+revisions+base-paramvalue-prop-size": "Comprimento (bytes) da revisão.",
+       "apihelp-query+revisions+base-paramvalue-prop-sha1": "SHA-1 (base 16) da revisão.",
+       "apihelp-query+revisions+base-paramvalue-prop-contentmodel": "ID do modelo de conteúdo da revisão.",
+       "apihelp-query+revisions+base-paramvalue-prop-comment": "Comentário do usuário para a revisão.",
+       "apihelp-query+revisions+base-paramvalue-prop-parsedcomment": "Analisar comentário do usuário para a revisão.",
        "apihelp-query+revisions+base-paramvalue-prop-content": "Texto da revisão.",
        "apihelp-query+revisions+base-paramvalue-prop-tags": "Etiquetas para a revisão.",
+       "apihelp-query+revisions+base-paramvalue-prop-parsetree": "<span class=\"apihelp-deprecated\">Obsoleto.</span> Use <kbd>[[Special:ApiHelp/expandtemplates|action=expandtemplates]]</kbd> ou <kbd>[[Special:ApiHelp/parse|action=parse]]</kbd> em vez. A árvore de análise XML de conteúdo da revisão (requer o modelo de conteúdo <code>$1</code>).",
        "apihelp-query+revisions+base-param-limit": "Limita quantas revisões serão retornadas.",
+       "apihelp-query+revisions+base-param-expandtemplates": "Use <kbd>[[Special:ApiHelp/expandtemplates|action=expandtemplates]]</kbd> em vez disso. Expande predefinições no conteúdo de revisão (requer $1prop=content).",
+       "apihelp-query+revisions+base-param-generatexml": "Use <kbd>[[Special:ApiHelp/expandtemplates|action=expandtemplates]]</kbd> ou <kbd>[[Special:ApiHelp/parse|action=parse]]</kbd> em vez disso. Gerar árvore de analise XML para o conteúdo de revisão (requer $1prop=content).",
+       "apihelp-query+revisions+base-param-parse": "Use <kbd>[[Special:ApiHelp/parse|action=parse]]</kbd> em vez disso. Analisa o conteúdo da revisão (requer $1prop=content). Por motivos de desempenho, se esta opção for usada, $1limit é definindo para 1.",
+       "apihelp-query+revisions+base-param-section": "Apenas recuperar o conteúdo deste número de seção.",
+       "apihelp-query+revisions+base-param-diffto": "Use <kbd>[[Special:ApiHelp/compare|action=compare]]</kbd> em vez disso. ID de revisão para diff cada revisão. Use <kbd>prev</kbd>, <kbd>next</kbd> e <kbd>cur</kbd> para a revisão anterior, próxima e atual, respectivamente.",
+       "apihelp-query+revisions+base-param-difftotext": "Use <kbd>[[Special:ApiHelp/compare|action=compare]]</kbd> em vez disso. Texto para diff cada revisão. Apenas diff um número limitado de revisões. Substitui <var>$1diffto</var>. Se <var>$1section</var> estiver definido, apenas essa seção será diferente desse texto.",
+       "apihelp-query+revisions+base-param-difftotextpst": "Use <kbd>[[Special:ApiHelp/compare|action=compare]]</kbd> em vez disso. Executa uma transformação pré-salvar no texto antes de o difundir. Apenas válido quando usado com <var>$1difftotext</var>.",
+       "apihelp-query+revisions+base-param-contentformat": "Formato de serialização usado para <var>$1difftotext</var> e esperado para saída de conteúdo.",
        "apihelp-query+search-summary": "Fazer uma buscar completa de texto.",
+       "apihelp-query+search-param-search": "Procura por títulos de páginas ou conteúdo que corresponda a este valor. Você pode usar a sequência de pesquisa para invocar recursos de pesquisa especiais, dependendo do que implementa o backend de pesquisa da wiki.",
+       "apihelp-query+search-param-namespace": "Procure apenas nesses espaços de nominais.",
+       "apihelp-query+search-param-what": "Qual tipo de pesquisa realizada.",
+       "apihelp-query+search-param-info": "Quais metadados retornar.",
        "apihelp-query+search-param-prop": "Que propriedades retornar:",
+       "apihelp-query+search-param-qiprofile": "Perfil independente da consulta para usar (afeta o algoritmo de classificação).",
        "apihelp-query+search-paramvalue-prop-size": "Adiciona o tamanho da página em bytes.",
        "apihelp-query+search-paramvalue-prop-wordcount": "Adiciona a contagem de palavras da página.",
        "apihelp-query+search-paramvalue-prop-timestamp": "Adiciona a marcação de data (timestamp) de quando a página foi editada pela última vez.",
        "apihelp-query+search-paramvalue-prop-snippet": "Adiciona um fragmento analisado da página.",
        "apihelp-query+search-paramvalue-prop-titlesnippet": "Adiciona um fragmento analisado do título da página.",
+       "apihelp-query+search-paramvalue-prop-redirectsnippet": "Adiciona um fragmento analisado do redirecionamento do título.",
+       "apihelp-query+search-paramvalue-prop-redirecttitle": "Adiciona o título do redirecionamento correspondente.",
+       "apihelp-query+search-paramvalue-prop-sectionsnippet": "Adiciona um parsed snippet do título da seção correspondente.",
+       "apihelp-query+search-paramvalue-prop-sectiontitle": "Adiciona o título da seção correspondente.",
+       "apihelp-query+search-paramvalue-prop-categorysnippet": "Adiciona um parsed snippet da categoria correspondente.",
+       "apihelp-query+search-paramvalue-prop-isfilematch": "Adiciona um booleano que indica se a pesquisa corresponde ao conteúdo do arquivo.",
+       "apihelp-query+search-paramvalue-prop-score": "Ignorado.",
+       "apihelp-query+search-paramvalue-prop-hasrelated": "Ignorado.",
        "apihelp-query+search-param-limit": "Quantas páginas retornar.",
+       "apihelp-query+search-param-interwiki": "Inclua resultados de interwiki na pesquisa, se disponível.",
+       "apihelp-query+search-param-backend": "Qual o backend de pesquisa a ser usado, se não for o padrão.",
+       "apihelp-query+search-param-enablerewrites": "Habilita a reescrita de consulta interna. Alguns backends de pesquisa podem reescrever a consulta em outro que é pensado para fornecer melhores resultados, por exemplo, corrigindo erros de ortografia.",
        "apihelp-query+search-example-simple": "Procurar por <kbd>meaning</kbd>.",
        "apihelp-query+search-example-text": "Procurar textos para <kbd>meaning</kbd>.",
-       "apihelp-query+siteinfo-paramvalue-prop-general": "Informação geral de sistema",
+       "apihelp-query+search-example-generator": "Obter informações da página sobre as páginas retornadas para uma pesquisa por <kbd>meaning</kbd>.",
+       "apihelp-query+siteinfo-summary": "Retorna informações gerais sobre o site.",
+       "apihelp-query+siteinfo-param-prop": "Quais informação obter:",
+       "apihelp-query+siteinfo-paramvalue-prop-general": "Informação geral do sistema.",
+       "apihelp-query+siteinfo-paramvalue-prop-namespaces": "Lista de espaços nominais registrados e seus nomes canônicos.",
+       "apihelp-query+siteinfo-paramvalue-prop-namespacealiases": "Lista de aliases dos espaços nominais registrados.",
+       "apihelp-query+siteinfo-paramvalue-prop-specialpagealiases": "Lista de alias de página especiais.",
+       "apihelp-query+siteinfo-paramvalue-prop-magicwords": "Lista de palavras mágicas e seus alias.",
        "apihelp-query+siteinfo-paramvalue-prop-statistics": "Voltar às estatísticas do site.",
+       "apihelp-query+siteinfo-paramvalue-prop-interwikimap": "Retorna o mapa interwiki (opcionalmente filtrado, opcionalmente localizado usando <var>$1inlanguagecode</var>).",
+       "apihelp-query+siteinfo-paramvalue-prop-dbrepllag": "Retorna o servidor de banco de dados com o atraso de replicação mais alto.",
+       "apihelp-query+siteinfo-paramvalue-prop-usergroups": "Retorna os grupos de usuários e as permissões associadas.",
+       "apihelp-query+siteinfo-paramvalue-prop-libraries": "Retorna as bibliotecas instaladas na wiki.",
+       "apihelp-query+siteinfo-paramvalue-prop-extensions": "Retorna as extensões instaladas na wiki.",
+       "apihelp-query+siteinfo-paramvalue-prop-fileextensions": "Retorna um lista de extensões de arquivo (tipos de arquivo) permitidos para serem carregados.",
+       "apihelp-query+siteinfo-paramvalue-prop-rightsinfo": "Retorna a informação sobre os direitos wiki (licença), se disponível.",
+       "apihelp-query+siteinfo-paramvalue-prop-restrictions": "Retorna informações sobre os tipos de restrição (proteção) disponíveis.",
+       "apihelp-query+siteinfo-paramvalue-prop-languages": "Retorna uma lista de idiomas suportada pelo MediaWiki (opcionalmente localizada usando <var>$1inlanguagecode</var>).",
+       "apihelp-query+siteinfo-paramvalue-prop-languagevariants": "Retorna uma lista de códigos de idioma para os quais [[mw:Special:MyLanguage/LanguageConverter|LanguageConverter]] está ativado e as variantes suportadas para cada um.",
+       "apihelp-query+siteinfo-paramvalue-prop-skins": "Retorna uma lista de todas as skins protegidas (opcionalmente localizadas usando <var>$1inlanguagecode</var>, caso contrário no idioma do conteúdo).",
+       "apihelp-query+siteinfo-paramvalue-prop-extensiontags": "Retorna uma lista de tags de extensão do analisador.",
+       "apihelp-query+siteinfo-paramvalue-prop-functionhooks": "Retorna uma lista de ganchos de função do analisador.",
+       "apihelp-query+siteinfo-paramvalue-prop-showhooks": "Retorna uma lista de todos os ganchos subscritos (conteúdo de <var>[[mw:Special:MyLanguage/Manual:$wgHooks|$wgHooks]]</var>).",
+       "apihelp-query+siteinfo-paramvalue-prop-variables": "Retorna uma lista de IDs variáveis.",
+       "apihelp-query+siteinfo-paramvalue-prop-protocols": "Retorna uma lista de protocolos que são permitidos em links externos.",
+       "apihelp-query+siteinfo-paramvalue-prop-defaultoptions": "Retorna os valores padrão para as preferências do usuário.",
+       "apihelp-query+siteinfo-paramvalue-prop-uploaddialog": "Retorna a configuração da caixa de diálogo de upload.",
+       "apihelp-query+siteinfo-param-filteriw": "Retorna apenas entradas locais ou únicas não locais do mapa interwiki.",
+       "apihelp-query+siteinfo-param-showalldb": "Liste todos os servidores de banco de dados, e não apenas o que está atrasando.",
        "apihelp-query+siteinfo-param-numberingroup": "Listar o número de usuários nos grupos de usuário.",
+       "apihelp-query+siteinfo-param-inlanguagecode": "Código de idioma para nomes de idiomas localizados (melhor esforço) e nomes de skin.",
        "apihelp-query+siteinfo-example-simple": "Obter informação do site.",
+       "apihelp-query+siteinfo-example-interwiki": "Obtenha uma lista de prefixos interwiki locais.",
+       "apihelp-query+siteinfo-example-replag": "Verificar o atraso de replicação atual.",
+       "apihelp-query+stashimageinfo-summary": "Retorna a informação do arquivo para arquivos stashed.",
+       "apihelp-query+stashimageinfo-param-filekey": "Chave que identifica um upload anterior que foi temporariamente armazenado.",
+       "apihelp-query+stashimageinfo-param-sessionkey": "Apelido para $1filekey, para compatibilidade com versões anteriores.",
+       "apihelp-query+stashimageinfo-example-simple": "Retorna informações de um arquivo stashed.",
+       "apihelp-query+stashimageinfo-example-params": "Retorna as miniaturas para dois arquivos stashed.",
+       "apihelp-query+tags-summary": "Lista etiquetas da modificação.",
        "apihelp-query+tags-param-limit": "O número máximo de tags a serem listadas.",
        "apihelp-query+tags-param-prop": "Quais propriedades obter:",
+       "apihelp-query+tags-paramvalue-prop-name": "Adiciona o nome da tag.",
+       "apihelp-query+tags-paramvalue-prop-displayname": "Adiciona mensagem do sistema para a tag.",
+       "apihelp-query+tags-paramvalue-prop-description": "Adiciona descrição da tag.",
+       "apihelp-query+tags-paramvalue-prop-hitcount": "Adiciona o número de revisões e entradas do log que tem esta tag.",
+       "apihelp-query+tags-paramvalue-prop-defined": "Indique se a etiqueta está definida.",
+       "apihelp-query+tags-paramvalue-prop-source": "Obtém as fontes da etiqueta, que podem incluir <samp>extension</samp> para tags definidas em extensão e <samp>extension</samp> para tags que podem ser aplicadas manualmente pelos usuários.",
+       "apihelp-query+tags-paramvalue-prop-active": "Se a tag ainda está sendo aplicada.",
+       "apihelp-query+tags-example-simple": "Listar as tags disponíveis.",
+       "apihelp-query+templates-summary": "Mostrar apenas as alterações nas páginas associadas desta página.",
+       "apihelp-query+templates-param-namespace": "Mostra as predefinições neste espaços nominais apenas.",
        "apihelp-query+templates-param-limit": "Quantas predefinições retornar.",
+       "apihelp-query+templates-param-templates": "Apenas liste essas predefinições. Útil para verificar se uma determinada página usa uma determinada predefinição.",
        "apihelp-query+templates-param-dir": "A direção na qual listar.",
+       "apihelp-query+templates-example-simple": "Obter predefinições usadas na página <kbd>Main Page</kbd>.",
+       "apihelp-query+templates-example-generator": "Obter informações sobre as páginas de predefinições usada na <kbd>Main Page</kbd>.",
+       "apihelp-query+templates-example-namespaces": "Obter páginas nos espaços nominais {{ns: user}} e {{ns: template}} que são transcluídos na página <kbd>Main Page</kbd>.",
+       "apihelp-query+tokens-summary": "Obtém tokens para ações de modificação de dados.",
+       "apihelp-query+tokens-param-type": "Tipos de token para solicitar.",
+       "apihelp-query+tokens-example-simple": "Recupere um token csrf (o padrão).",
+       "apihelp-query+tokens-example-types": "Recupere um token de vigilância e um token de patrulha.",
+       "apihelp-query+transcludedin-summary": "Encontre todas as páginas que transcluam as páginas dadas.",
        "apihelp-query+transcludedin-param-prop": "Quais propriedades obter:",
+       "apihelp-query+transcludedin-paramvalue-prop-pageid": "ID de cada página.",
+       "apihelp-query+transcludedin-paramvalue-prop-title": "O título de cada página.",
+       "apihelp-query+transcludedin-paramvalue-prop-redirect": "Sinalizar se a página é um redirecionamento.",
+       "apihelp-query+transcludedin-param-namespace": "Listar apenas páginas neste espaço nominal.",
        "apihelp-query+transcludedin-param-limit": "Quantos retornar.",
-       "apihelp-query+usercontribs-summary": "Obtêm todas as edições de um usuário",
-       "apihelp-query+userinfo-param-prop": "Que informações incluir:",
+       "apihelp-query+transcludedin-param-show": "Mostre apenas itens que atendam a esses critérios.\n;redirect:Apenas mostra redirecionamentos.\n;!redirect:Não mostra redirecionamentos.",
+       "apihelp-query+transcludedin-example-simple": "Obter uma lista de páginas que transcluem <kbd>Main Page</kbd>.",
+       "apihelp-query+transcludedin-example-generator": "Obter informações sobre páginas que transcluem <kbd>Main Page</kbd>.",
+       "apihelp-query+usercontribs-summary": "Obtêm todas as edições de um usuário.",
+       "apihelp-query+usercontribs-param-limit": "O número máximo de contribuições para retornar.",
+       "apihelp-query+usercontribs-param-start": "O timestamp de início para retornar.",
+       "apihelp-query+usercontribs-param-end": "O timestamp final para retornar.",
+       "apihelp-query+usercontribs-param-user": "Os usuários dos quais recuperar contribuições. Não pode ser usado com <var>$1userids</var> ou <var>$1userprefix</var>.",
+       "apihelp-query+usercontribs-param-userprefix": "Recupera contribuições para todos os usuários cujos nomes começam com esse valor. Não pode ser usado com <var>$1user</var> ou <var>$1userids</var>.",
+       "apihelp-query+usercontribs-param-userids": "As IDs de usuário das quais recuperar as contribuições. Não pode ser usado com<var>$1user</var> ou <var>$1userprefix</var>.",
+       "apihelp-query+usercontribs-param-namespace": "Apenas lista as contribuições nesses espaços nominais.",
+       "apihelp-query+usercontribs-param-prop": "Incluir elementos de informação adicional:",
+       "apihelp-query+usercontribs-paramvalue-prop-ids": "Adiciona o ID da página e revisão.",
+       "apihelp-query+usercontribs-paramvalue-prop-title": "Adiciona o título e o ID do espaço nominal da página.",
+       "apihelp-query+usercontribs-paramvalue-prop-timestamp": "Adiciona o timestamp da edição.",
+       "apihelp-query+usercontribs-paramvalue-prop-comment": "Adiciona o comentário da edição.",
+       "apihelp-query+usercontribs-paramvalue-prop-parsedcomment": "Adiciona o comentário analisado da edição.",
+       "apihelp-query+usercontribs-paramvalue-prop-size": "Adiciona o novo tamanho da edição.",
+       "apihelp-query+usercontribs-paramvalue-prop-sizediff": "Adiciona o tamanho delta da edição contra o seu pai.",
+       "apihelp-query+usercontribs-paramvalue-prop-flags": "Adiciona etiqueta da edição.",
+       "apihelp-query+usercontribs-paramvalue-prop-patrolled": "Etiquetas de edições patrulhadas.",
+       "apihelp-query+usercontribs-paramvalue-prop-tags": "Lista as tags para editar.",
+       "apihelp-query+usercontribs-param-show": "Mostre apenas itens que atendam a esses critérios, por exemplo, apenas edições não-menores: <kbd>$2show=!minor</kbd>.\n\nSe <kbd>$2show=patrolled</kbd> ou <kbd>$2show=!patrolled</kbd> estiver definido, revisões mais antigas do que <var>[[mw:Special:MyLanguage/Manual:$wgRCMaxAge|$wgRCMaxAge]]</var> ($1 {{PLURAL:$1|segundo|segundos}}) não serão exibidas.",
+       "apihelp-query+usercontribs-param-tag": "Lista apenas as revisões com esta tag.",
+       "apihelp-query+usercontribs-param-toponly": "Somente lista as alterações que são as últimas revisões.",
+       "apihelp-query+usercontribs-example-user": "Mostra as contribuições do usuário <kbd>Example</kbd>.",
+       "apihelp-query+usercontribs-example-ipprefix": "Mostrar contribuições de todos os endereços IP com o prefixo <kbd>192.0.2.</Kbd>.",
+       "apihelp-query+userinfo-summary": "Ober informações sobre o usuário atual.",
+       "apihelp-query+userinfo-param-prop": "Quais peças de informação incluir:",
+       "apihelp-query+userinfo-paramvalue-prop-blockinfo": "Etiqueta se o usuário atual está bloqueado, por quem e por que motivo.",
+       "apihelp-query+userinfo-paramvalue-prop-hasmsg": "Adiciona a tag <samp>messages</samp> se o usuário atual tiver mensagens pendentes.",
+       "apihelp-query+userinfo-paramvalue-prop-groups": "Lista todos os grupos aos quais o usuário atual pertence.",
+       "apihelp-query+userinfo-paramvalue-prop-groupmemberships": "Lista grupos aos quais o usuário atual foi explicitamente designado, incluindo a data de expiração de cada associação de grupo.",
+       "apihelp-query+userinfo-paramvalue-prop-implicitgroups": "Lista todos os grupos aos quais o usuário atual é automaticamente membro.",
+       "apihelp-query+userinfo-paramvalue-prop-rights": "Lista todos os direitos que o usuário atual possui.",
+       "apihelp-query+userinfo-paramvalue-prop-changeablegroups": "Lista os grupos aos quais o usuário atual pode adicionar e remover.",
+       "apihelp-query+userinfo-paramvalue-prop-options": "Lista todas as preferências que o usuário atual estabeleceu.",
+       "apihelp-query+userinfo-paramvalue-prop-preferencestoken": "Obter um token para alterar as preferências do usuário atual.",
+       "apihelp-query+userinfo-paramvalue-prop-editcount": "Adiciona a contagem de edições do usuário atual.",
+       "apihelp-query+userinfo-paramvalue-prop-ratelimits": "Lista todos os limites de taxa aplicáveis ao usuário atual.",
+       "apihelp-query+userinfo-paramvalue-prop-realname": "Adiciona o nome real do usuário.",
+       "apihelp-query+userinfo-paramvalue-prop-email": "Adiciona o endereço de e-mail e a data de autenticação do e-mail.",
+       "apihelp-query+userinfo-paramvalue-prop-acceptlang": "Ecoa o cabeçalho <code>Accept-Language</code> enviado pelo cliente em um formato estruturado.",
+       "apihelp-query+userinfo-paramvalue-prop-registrationdate": "Adiciona a data de registro do usuário.",
+       "apihelp-query+userinfo-paramvalue-prop-unreadcount": "Adiciona a contagem de páginas não lidas na lista de páginas vigiadas do usuário (máximo $1; retorna <samp>$2</samp> se mais).",
+       "apihelp-query+userinfo-paramvalue-prop-centralids": "Adiciona os IDs centrais e o status do anexo do usuário.",
+       "apihelp-query+userinfo-param-attachedwiki": "Com <kbd>$1prop=centralids</kbd>, indique se o usuário está conectado com a wiki identificada por este ID.",
+       "apihelp-query+userinfo-example-simple": "Ober informações sobre o usuário atual.",
+       "apihelp-query+userinfo-example-data": "Obter informações adicionais sobre o usuário atual.",
        "apihelp-query+users-summary": "Obter informação sobre uma lista de usuários.",
-       "apihelp-query+users-param-prop": "Que informações incluir:",
+       "apihelp-query+users-param-prop": "Quais peças de informação incluir:",
+       "apihelp-query+users-paramvalue-prop-blockinfo": "Etiqueta se o usuário estiver bloqueado, por quem e por que motivo.",
+       "apihelp-query+users-paramvalue-prop-groups": "Lista todos os grupos aos quais cada usuário pertence.",
+       "apihelp-query+users-paramvalue-prop-groupmemberships": "Lista grupos aos quais cada usuário foi explicitamente designado, incluindo a data de expiração de cada associação de grupo.",
+       "apihelp-query+users-paramvalue-prop-implicitgroups": "Lista todos os grupos aos quais um usuário é automaticamente membro.",
+       "apihelp-query+users-paramvalue-prop-rights": "Lista todos os direitos que cada usuário possui.",
+       "apihelp-query+users-paramvalue-prop-editcount": "Adiciona a contagem de edição do usuário.",
+       "apihelp-query+users-paramvalue-prop-registration": "Adiciona o timestamp de registro do usuário.",
+       "apihelp-query+users-paramvalue-prop-emailable": "Etiquetar se o usuário pode e deseja receber e-mails através de [[Special:Emailuser]].",
+       "apihelp-query+users-paramvalue-prop-gender": "Etiqueta o gênero do usuário. Retorna \"male\", \"female\" ou \"unknown\".",
+       "apihelp-query+users-paramvalue-prop-centralids": "Adiciona os IDs centrais e o status do anexo do usuário.",
+       "apihelp-query+users-paramvalue-prop-cancreate": "Indica se uma conta para nomes de usuário válidos mas não registrados pode ser criada.",
+       "apihelp-query+users-param-attachedwiki": "Com <kbd>$1prop=centralids</kbd>, indique se o usuário está conectado com a wiki identificada por este ID.",
+       "apihelp-query+users-param-users": "Uma lista de usuários dos quais obter informações.",
+       "apihelp-query+users-param-userids": "Uma lista de IDs de usuários dos quais obter informações.",
+       "apihelp-query+users-param-token": "Use <kbd>[[Special:ApiHelp/query+tokens|action=query&meta=tokens]]</kbd> em vez.",
+       "apihelp-query+users-example-simple": "Retornar informações para o usuário <kbd>Example</kbd>.",
+       "apihelp-query+watchlist-summary": "Obter alterações recentes nas páginas da lista de páginas vigiadas do usuário atual.",
+       "apihelp-query+watchlist-param-allrev": "Inclua várias revisões da mesma página dentro de um prazo determinado.",
+       "apihelp-query+watchlist-param-start": "A data a partir da qual começar a enumeração.",
+       "apihelp-query+watchlist-param-end": "O timestamp para terminar de enumerar.",
+       "apihelp-query+watchlist-param-namespace": "Filtrar apenas as mudanças dos espaços nominais dados.",
+       "apihelp-query+watchlist-param-user": "Listar apenas alterações deste usuário.",
+       "apihelp-query+watchlist-param-excludeuser": "Não listar as alterações deste usuário.",
        "apihelp-query+watchlist-param-limit": "Quantos resultados retornar por solicitação.",
-       "apihelp-query+watchlist-paramvalue-prop-title": "Adicionar título da página.",
+       "apihelp-query+watchlist-param-prop": "Quais propriedades adicionais obter:",
+       "apihelp-query+watchlist-paramvalue-prop-ids": "Adiciona o ID de revisão e de página.",
+       "apihelp-query+watchlist-paramvalue-prop-title": "Adiciona o título da página.",
+       "apihelp-query+watchlist-paramvalue-prop-flags": "Adiciona etiquetas para a edição.",
+       "apihelp-query+watchlist-paramvalue-prop-user": "Adiciona o usuário que fez a edição.",
+       "apihelp-query+watchlist-paramvalue-prop-userid": "Adiciona o ID de usuário de quem fez a edição.",
        "apihelp-query+watchlist-paramvalue-prop-comment": "Adicionar comentário à edição.",
+       "apihelp-query+watchlist-paramvalue-prop-parsedcomment": "Adiciona o comentário analisado da edição.",
+       "apihelp-query+watchlist-paramvalue-prop-timestamp": "Adiciona o timestamp da edição.",
+       "apihelp-query+watchlist-paramvalue-prop-patrol": "Edições de tags que são patrulhadas.",
+       "apihelp-query+watchlist-paramvalue-prop-sizes": "Adiciona os velhos e novos comprimentos da página.",
+       "apihelp-query+watchlist-paramvalue-prop-notificationtimestamp": "Adiciona o timestamp de quando o usuário foi notificado pela última vez sobre a edição.",
+       "apihelp-query+watchlist-paramvalue-prop-loginfo": "Adiciona informações de log, quando apropriado.",
+       "apihelp-query+watchlist-param-show": "Mostre apenas itens que atendam a esses critérios. Por exemplo, para ver apenas edições menores feitas por usuários conectados, set $1show=minor|!anon.",
+       "apihelp-query+watchlist-param-type": "Quais tipos de mudanças mostrar:",
        "apihelp-query+watchlist-paramvalue-type-edit": "Edições comuns nas páginas.",
-       "apihelp-query+watchlist-paramvalue-type-external": "Alterações externas",
+       "apihelp-query+watchlist-paramvalue-type-external": "Alterações externas.",
        "apihelp-query+watchlist-paramvalue-type-new": "Criação de páginas.",
        "apihelp-query+watchlist-paramvalue-type-log": "Registro de entradas.",
        "apihelp-query+watchlist-paramvalue-type-categorize": "Alterações de membros pertencentes à uma categoria.",
+       "apihelp-query+watchlist-param-owner": "Usado juntamente com $1 para acessar a lista de páginas vigiadas de um usuário diferente.",
+       "apihelp-query+watchlist-param-token": "Um token seguro (disponível nas [[Special:Preferences#mw-prefsection-watchlist|preferências]] do usuário) para permitir o acesso à lista de páginas vigiadas de outro usuário.",
+       "apihelp-query+watchlist-example-simple": "Liste a revisão superior para páginas recentemente alteradas na lista de páginas vigiadas do usuário atual.",
+       "apihelp-query+watchlist-example-props": "Obtenha informações adicionais sobre a revisão superior das páginas alteradas recentemente na lista de páginas vigiadas do usuário atual.",
+       "apihelp-query+watchlist-example-allrev": "Obtenha informações sobre todas as mudanças recentes nas páginas da lista de páginas vigiadas do usuário atual.",
+       "apihelp-query+watchlist-example-generator": "Obtenha informações de página para páginas recentemente alteradas na lista de páginas vigiadas do usuário atual.",
+       "apihelp-query+watchlist-example-generator-rev": "Obtenha informações de revisão para as mudanças recentes nas páginas da lista de páginas vigiadas do usuário atual.",
+       "apihelp-query+watchlist-example-wlowner": "Listar a revisão superior para páginas alteradas recentemente na lista de páginas vigiadas do usuário <kbd>Exemplo</ kbd>.",
+       "apihelp-query+watchlistraw-summary": "Obtenha todas as páginas da lista de páginas vigiadas do usuário atual.",
+       "apihelp-query+watchlistraw-param-namespace": "Listar apenas páginas dos espaços nominais dados.",
        "apihelp-query+watchlistraw-param-limit": "Quantos resultados retornar por solicitação.",
+       "apihelp-query+watchlistraw-param-prop": "Quais propriedades adicionais obter:",
+       "apihelp-query+watchlistraw-paramvalue-prop-changed": "Adiciona o timestamp de quando o usuário foi notificado pela última vez sobre a edição.",
+       "apihelp-query+watchlistraw-param-show": "Listar apenas itens que atendam a esses critérios.",
+       "apihelp-query+watchlistraw-param-owner": "Usado juntamente com $1 para acessar a lista de páginas vigiadas de um usuário diferente.",
+       "apihelp-query+watchlistraw-param-token": "Um token seguro (disponível nas [[Special:Preferences#mw-prefsection-watchlist|preferências]] do usuário) para permitir o acesso à lista de páginas vigiadas de outro usuário.",
        "apihelp-query+watchlistraw-param-dir": "A direção na qual listar.",
+       "apihelp-query+watchlistraw-param-fromtitle": "Título (com prefixo do espaço nominal) do qual começar a enumerar.",
+       "apihelp-query+watchlistraw-param-totitle": "Título (com prefixo do espaço nominal) do qual parar de enumerar.",
+       "apihelp-query+watchlistraw-example-simple": "Listar páginas da lista de páginas vigiadas do usuário atual.",
+       "apihelp-query+watchlistraw-example-generator": "Obtenha informações de página para páginas na lista de páginas vigiadas do usuário atual.",
+       "apihelp-removeauthenticationdata-summary": "Remova os dados de autenticação para o usuário atual.",
+       "apihelp-removeauthenticationdata-example-simple": "Tente remover os dados do usuário atual para <kbd>FooAuthenticationRequest</kbd>.",
+       "apihelp-resetpassword-summary": "Envia um e-mail de redefinição de senha para o usuário atual.",
+       "apihelp-resetpassword-extended-description-noroutes": "Não há rotas de redefinição de senha disponíveis.\n\nAtive rotas em <var>[[mw:Special:MyLanguage/Manual:$wgPasswordResetRoutes|$wgPasswordResetRoutes]]</var> para usar este módulo.",
+       "apihelp-resetpassword-param-user": "Usuário sendo reiniciado.",
+       "apihelp-resetpassword-param-email": "Endereço de e-mail do usuário sendo redefinido.",
+       "apihelp-resetpassword-example-user": "Envia um e-mail de redefinição de senha para o usuário <kbd>Example</kbd>.",
+       "apihelp-resetpassword-example-email": "Envia um e-mail de redefinição de senha para todos os usuários com e-mail <kbd>user@example.com</kbd>.",
+       "apihelp-revisiondelete-summary": "Excluir e recuperar revisões.",
+       "apihelp-revisiondelete-param-type": "Tipo de exclusão de revisão em execução.",
+       "apihelp-revisiondelete-param-target": "Título da página para a eliminação da revisão, se necessário para o tipo.",
+       "apihelp-revisiondelete-param-ids": "Identificadores para as revisões a serem excluídas.",
+       "apihelp-revisiondelete-param-hide": "O que ocultar para cada revisão.",
+       "apihelp-revisiondelete-param-show": "O que exibir para cada revisão.",
+       "apihelp-revisiondelete-param-suppress": "Seja para suprimir dados de administradores, bem como de outros.",
+       "apihelp-revisiondelete-param-reason": "Razão para a exclusão ou recuperação.",
+       "apihelp-revisiondelete-param-tags": "Etiquetas para se inscrever na entrada no registo de eliminação.",
+       "apihelp-revisiondelete-example-revision": "Ocultar conteúdo da revisão <kbd>12345</kbd> na página <kbd>Main Page</kbd>.",
+       "apihelp-revisiondelete-example-log": "Ocultar todos os dados na entrada de log <kbd>67890</kbd> com razão <kbd>BLP violation</kbd>.",
+       "apihelp-rollback-summary": "Desfazer a última edição para a página.",
+       "apihelp-rollback-extended-description": "Se o último usuário que editou a página efetuou várias edições consecutivas, todas serão revertidas.",
        "apihelp-rollback-param-title": "Título da página para reverter. Não pode ser usado em conjunto com <var>$1pageid</var>.",
        "apihelp-rollback-param-pageid": "ID da página para reverter. Não pode ser usado em conjunto com <var>$1title</var>.",
+       "apihelp-rollback-param-tags": "Tags para aplicar ao rollback.",
+       "apihelp-rollback-param-user": "Nome do usuário cujas edições devem ser revertidas.",
+       "apihelp-rollback-param-summary": "Resumo de edição personalizado. Se estiver vazio, o resumo padrão será usado.",
+       "apihelp-rollback-param-markbot": "Marca as edições revertidas e a reversão como edições de bot.",
+       "apihelp-rollback-param-watchlist": "Adicione ou remova incondicionalmente a página da lista de páginas vigiadas do usuário atual, use preferências ou não mude a vigilância.",
+       "apihelp-rollback-example-simple": "Reverter as últimas edições de página <kbd>Main Page</kbd> pelo usuário <kbd>Example</kbd>.",
+       "apihelp-rollback-example-summary": "Reverter as últimas edições de página <kbd>Main Page</kbd> pelo IP <kbd>192.0.2.5</kbd> com resumo <kbd>Reverting vandalism</kbd> e marque essas edições e reversões como edições de bot.",
+       "apihelp-rsd-summary": "Exportar um esquema RSD (Really Simple Discovery).",
+       "apihelp-rsd-example-simple": "Exportar o esquema RSD.",
+       "apihelp-setnotificationtimestamp-summary": "Atualize o timestamp de notificação para páginas vigiadas.",
+       "apihelp-setnotificationtimestamp-extended-description": "Isso afeta o destaque das páginas alteradas na lista de exibição e no histórico e o envio de e-mail quando a preferência \"{{int:tog-enotifwatchlistpages}}\" estiver habilitada.",
        "apihelp-setnotificationtimestamp-param-entirewatchlist": "Trabalhar em todas as páginas vigiadas.",
+       "apihelp-setnotificationtimestamp-param-timestamp": "Timestamp para o qual definir o timestamp de notificação.",
+       "apihelp-setnotificationtimestamp-param-torevid": "Revisão para definir o timestamp de notificação para (apenas uma página).",
+       "apihelp-setnotificationtimestamp-param-newerthanrevid": "Revisão para definir o timestamp de notificação mais recente do que (apenas uma página).",
+       "apihelp-setnotificationtimestamp-example-all": "Redefinir o status da notificação para toda a lista de páginas vigiadas.",
+       "apihelp-setnotificationtimestamp-example-page": "Redefinir o status de notificação para a <kbd>Main page</kbd>.",
+       "apihelp-setnotificationtimestamp-example-pagetimestamp": "Define o timestamp da notificação para <kbd>Main page</kbd> para que todas as edições a partir de 1 de janeiro de 2012 não sejam visualizadas.",
+       "apihelp-setnotificationtimestamp-example-allpages": "Restaura o status de notificação para páginas no espaço nominal <kbd>{{ns:user}}</kbd>.",
+       "apihelp-setpagelanguage-summary": "Mudar o idioma de uma página.",
+       "apihelp-setpagelanguage-extended-description-disabled": "Mudar o idioma de uma página não é permitido nesta wiki.\n\nAtive <var>[[mw:Special:MyLanguage/Manual:$wgPageLanguageUseDB|$wgPageLanguageUseDB]]</var> para usar esta ação.",
+       "apihelp-setpagelanguage-param-title": "Título da página cujo idioma você deseja alterar. Não pode ser usado em conjunto com <var>$1pageid</var>.",
+       "apihelp-setpagelanguage-param-pageid": "ID da página cujo idioma você deseja alterar. Não pode ser usado em conjunto com <var>$1title</var>.",
+       "apihelp-setpagelanguage-param-lang": "Código de idioma do idioma para mudar a página para. Usar <kbd>default</kbd> para redefinir a página para o idioma de conteúdo padrão da wiki.",
+       "apihelp-setpagelanguage-param-reason": "Motivo para a mudança.",
+       "apihelp-setpagelanguage-param-tags": "Alterar as tags para aplicar à entrada de log resultante dessa ação.",
+       "apihelp-setpagelanguage-example-language": "Mudar o idioma da <kbd>Main Page</kbd> para Basque.",
+       "apihelp-setpagelanguage-example-default": "Mudar o idioma da página com ID 123 para o idioma padrão da wiki.",
+       "apihelp-stashedit-summary": "Prepare uma edição no cache compartilhado.",
+       "apihelp-stashedit-extended-description": "Isto é destinado a ser usado via AJAX a partir do formulário de edição para melhorar o desempenho da página salvar.",
+       "apihelp-stashedit-param-title": "Título da página que está sendo editada.",
+       "apihelp-stashedit-param-section": "Número da seção. <kbd>0</kbd> para a seção superior, <kbd>new</kbd> para uma nova seção.",
        "apihelp-stashedit-param-sectiontitle": "O título para uma nova seção.",
-       "apihelp-stashedit-param-text": "Conteúdo da página",
+       "apihelp-stashedit-param-text": "Conteúdo da página.",
+       "apihelp-stashedit-param-stashedtexthash": "Hash do conteúdo da página de um stash anterior para usar em vez disso.",
        "apihelp-stashedit-param-contentmodel": "Modelo de conteúdo do novo conteúdo.",
        "apihelp-stashedit-param-contentformat": "Formato de serialização de conteúdo usado para o texto de entrada.",
-       "apihelp-stashedit-param-summary": "Mudar sumário.",
+       "apihelp-stashedit-param-baserevid": "ID de revisão da revisão base.",
+       "apihelp-stashedit-param-summary": "Mudar resumo.",
+       "apihelp-tag-summary": "Adicionar ou remover tags de alteração de revisões individuais ou entradas de log.",
+       "apihelp-tag-param-rcid": "Uma ou mais IDs de alterações recentes a partir das quais adicionar ou remover a etiqueta.",
+       "apihelp-tag-param-revid": "Uma ou mais IDs de revisão a partir das quais adicionar ou remover a etiqueta.",
+       "apihelp-tag-param-logid": "Uma ou mais IDs de entrada de log a partir das quais adicionar ou remover a etiqueta.",
+       "apihelp-tag-param-add": "Tags para adicionar. Apenas as tags manualmente definidas podem ser adicionadas.",
+       "apihelp-tag-param-remove": "Tags para remover. Somente as tags que são definidas manualmente ou completamente indefinidas podem ser removidas.",
        "apihelp-tag-param-reason": "Motivo para a mudança.",
-       "apihelp-unblock-summary": "Desbloquear usuário",
-       "apihelp-unblock-param-id": "ID do bloco para desbloquear (obtido através de <kbd>list=blocks</kbd>). Não pode ser usado em conjunto com <var>$1user</var>.",
-       "apihelp-unblock-param-user": "Nome de usuário, endereço IP ou intervalo de IP para a se desbloquear. Não pode ser usado em conjunto com <var>$1id</var>.",
+       "apihelp-tag-param-tags": "Etiquetas para aplicar à entrada de log que será criada como resultado dessa ação.",
+       "apihelp-tag-example-rev": "Adicionar a tag <kbd>vandalism</kbd> a ID de revisão 123 sem especificar uma razão",
+       "apihelp-tag-example-log": "Remova a tag <kbd>spam</kbd> da ID de entrada de registro 123 com o motivo <kbd>Wrongly applied</kbd>",
+       "apihelp-tokens-summary": "Obter tokens para ações de modificação de dados.",
+       "apihelp-tokens-extended-description": "Este módulo está depreciado em favor de [[Special:ApiHelp/query+tokens|action=query&meta=tokens]].",
+       "apihelp-tokens-param-type": "Tipos de token para solicitar.",
+       "apihelp-tokens-example-edit": "Recupera um token de edição (o padrão).",
+       "apihelp-tokens-example-emailmove": "Recupere um token de e-mail e um token de movimento.",
+       "apihelp-unblock-summary": "Desbloquear usuário.",
+       "apihelp-unblock-param-id": "ID do bloco para desbloquear (obtido através de <kbd>list=blocks</kbd>). Não pode ser usado em conjunto com <var>$1user</var> ou <var>$1userid</var>.",
+       "apihelp-unblock-param-user": "Nome de usuário, endereço IP ou intervalo de IP para desbloquear. Não pode ser usado em conjunto com <var>$1id</var> ou <var>$1userid</var>.",
+       "apihelp-unblock-param-userid": "ID do usuário para desbloquear. Não pode ser usado em conjunto com <var>$1id</var> ou <var>$1user</var>.",
        "apihelp-unblock-param-reason": "Motivo para o desbloqueio.",
+       "apihelp-unblock-param-tags": "Alterar as tags para se inscrever na entrada no registro de bloqueio.",
        "apihelp-unblock-example-id": "Desbloquear bloqueio ID #<kbd>105</kbd>.",
+       "apihelp-unblock-example-user": "Desbloquear o usuário <kbd>Bob</kbd> com o motivo <kbd>Sorry Bob</kbd>.",
+       "apihelp-undelete-summary": "Restaure as revisões de uma página excluída.",
+       "apihelp-undelete-extended-description": "Uma lista de revisões excluídas (incluindo timestamps) pode ser recuperada através de [[Special:ApiHelp/query+deletedrevisions|prop=deletedrevisions]] e uma lista de IDs de arquivo excluídos pode ser recuperada através de [[Special:ApiHelp/query+filearchive|list=filearchive]].",
+       "apihelp-undelete-param-title": "Título da página a ser restaurada.",
        "apihelp-undelete-param-reason": "Razão para restaurar.",
+       "apihelp-undelete-param-tags": "Alterar as tags para se inscrever na entrada no registro de exclusão.",
+       "apihelp-undelete-param-timestamps": "Timestamps das revisões para restaurar. Se ambos <var>$1timestamps</var> e <var>$1fileids</var> estiverem vazios, tudo será restaurado.",
+       "apihelp-undelete-param-fileids": "IDs das revisões de arquivos para restaurar. Se ambos, <var>$1timestamps</var> e <var>$1fileids</var> estiverem, vazios, tudo será restaurado.",
+       "apihelp-undelete-param-watchlist": "Adicione ou remova incondicionalmente a página da lista de páginas vigiadas do usuário atual, use preferências ou não mude a vigilância.",
        "apihelp-undelete-example-page": "Restaurar página <kbd>Main Page</kbd>.",
-       "apihelp-upload-param-watch": "Vigiar esta página",
-       "apihelp-upload-param-ignorewarnings": "Ignorar todos os avisos.",
+       "apihelp-undelete-example-revisions": "Recupere duas revisões da página <kbd>Main Page</kbd>.",
+       "apihelp-unlinkaccount-summary": "Remova uma conta de terceiros vinculada ao usuário atual.",
+       "apihelp-unlinkaccount-example-simple": "Tente remover o link do usuário atual para o provedor associado com <kbd>FooAuthenticationRequest</kbd>.",
+       "apihelp-upload-summary": "Carregue um arquivo ou obtenha o status dos carregamentos pendentes.",
+       "apihelp-upload-extended-description": "Vários métodos estão disponíveis:\n* Carrega o conteúdo do arquivo diretamente, usando o parâmetro <var>$1file</var>.\n* Carrega o arquivo em pedaços, usando os parâmetros <var>$1filesize</var>, <var>$1chunk</var> e <var>$1offset</var>.\n* Tenha o servidor MediaWiki buscando um arquivo de um URL, usando o parâmetro <var>$1url</var>.\n* Complete um carregamento anterior que falhou devido a avisos, usando o parâmetro <var>$1filekey</var>.\nNote que o HTTP POST deve ser feito como um upload de arquivo (ou seja, usando <code>multipart/form-data</code>) ao enviar o <var>$1file</var>.",
+       "apihelp-upload-param-filename": "Nome do arquivo de destino.",
+       "apihelp-upload-param-comment": "Faça o upload do comentário. Também usado como o texto da página inicial para novos arquivos, se <var>$1text</var> não for especificado.",
+       "apihelp-upload-param-tags": "Alterar as tags para aplicar à entrada do log de upload e à revisão da página do arquivo.",
+       "apihelp-upload-param-text": "Texto inicial da página para novos arquivos.",
+       "apihelp-upload-param-watch": "Vigiar esta página.",
+       "apihelp-upload-param-watchlist": "Adicione ou remova incondicionalmente a página da lista de páginas vigiadas do usuário atual, use preferências ou não mude a vigilância.",
+       "apihelp-upload-param-ignorewarnings": "Ignorar quaisquer avisos.",
+       "apihelp-upload-param-file": "Conteúdo do arquivo.",
+       "apihelp-upload-param-url": "URL do qual para buscar o arquivo.",
+       "apihelp-upload-param-filekey": "Chave que identifica um upload anterior que foi temporariamente armazenado.",
+       "apihelp-upload-param-sessionkey": "Igual a $1filekey, mantido para compatibilidade com versões anteriores.",
+       "apihelp-upload-param-stash": "Se configurado, o servidor armazenará o arquivo temporariamente em vez de adicioná-lo ao repositório.",
+       "apihelp-upload-param-filesize": "Tamanho completo do upload.",
+       "apihelp-upload-param-offset": "Deslocamento de pedaços em bytes.",
+       "apihelp-upload-param-chunk": "Conteúdo do pedaço.",
+       "apihelp-upload-param-async": "Tornar as operações de arquivo potencialmente grandes assíncronas quando possível.",
+       "apihelp-upload-param-checkstatus": "Apenas obtenha o status de upload para a chave de arquivo fornecida.",
+       "apihelp-upload-example-url": "Enviar a partir de um URL.",
+       "apihelp-upload-example-filekey": "Complete um upload que falhou devido a avisos.",
+       "apihelp-userrights-summary": "Alterar a associação de um grupo de usuários.",
        "apihelp-userrights-param-user": "Nome de usuário.",
        "apihelp-userrights-param-userid": "ID de usuário.",
-       "apihelp-userrights-param-add": "Adicione o usuário a esses grupos ou, se ele já for membro, atualizar a expiração de sua associação nesse grupo.",
+       "apihelp-userrights-param-add": "Adiciona o usuário a esses grupos ou, se ele já for membro, atualiza a expiração de sua associação nesse grupo.",
+       "apihelp-userrights-param-expiry": "Expiração de timestamps. Pode ser relativo (por exemplo <kbd>5 meses</kbd> ou <kbd>2 semanas</kbd>) ou absoluto (por exemplo <kbd>2014-09-18T12:34:56Z</kbd>). Se apenas um timestamp for configurado, ele sera usado para todos os grupos passados pelo parâmetro <var>$1add</var>. Use <kbd>infinite</kbd>, <kbd>indefinite</kbd>, <kbd>infinity</kbd> ou <kbd>never</kbd>, para um grupo de usuários que nunca expiram.",
        "apihelp-userrights-param-remove": "Remover o usuário destes grupos.",
        "apihelp-userrights-param-reason": "Motivo para a mudança.",
+       "apihelp-userrights-param-tags": "Alterar as tags para se inscrever na entrada no registro de direitos do usuário.",
+       "apihelp-userrights-example-user": "Adicionar o usuário <kbd>FooBot</kbd> ao grupo <kbd>bot</kbd> e remover dos grupos <kbd>sysop</kbd> e <kbd>bureaucrat</kbd>.",
+       "apihelp-userrights-example-userid": "Adicionar o usuário com a ID <kbd>123</kbd> ao grupo global <kbd>bot</kbd> e remover dos grupos <kbd>sysop</kbd> e <kbd>bureaucrat</kbd>.",
+       "apihelp-userrights-example-expiry": "Adicionar o usuário <kbd>SometimeSysop</kbd> ao grupo <kbd>sysop</kbd> por 1 mês.",
+       "apihelp-validatepassword-summary": "Valide uma senha de acordo as políticas de senha da wiki.",
+       "apihelp-validatepassword-extended-description": "A validade é relatada como <samp>Good</samp> se a senha for aceitável, <samp>Change</samp> se a senha for usada para entrar, mas deve ser alterada, ou <samp>Invalid</samp> se a senha não é utilizável.",
+       "apihelp-validatepassword-param-password": "Senha para validar.",
+       "apihelp-validatepassword-param-user": "Nome do usuário, para uso ao testar a criação da conta. O usuário nomeado não deve existir.",
+       "apihelp-validatepassword-param-email": "Endereço de e-mail, para uso ao testar a criação de conta.",
+       "apihelp-validatepassword-param-realname": "Nome real, para uso ao testar a criação de conta.",
+       "apihelp-validatepassword-example-1": "Valide a senha <kbd>foobar</kbd> para o usuário atual.",
+       "apihelp-validatepassword-example-2": "Valide a senha <kbd>qwerty</kbd> para o usuário <kbd>Example</kbd> criado.",
+       "apihelp-watch-summary": "Adicionar ou remover páginas da lista de páginas vigiadas do usuário atual.",
+       "apihelp-watch-param-title": "A página para (não)vigiar. Use <var>$1titles</var> em vez disso.",
+       "apihelp-watch-param-unwatch": "Se configurado, a página deixara de ser vigiada ao invés de vigiada.",
+       "apihelp-watch-example-watch": "Vigiar a página <kbd>Main Page</kbd>.",
+       "apihelp-watch-example-unwatch": "Deixar de vigiar a página <kbd>Main Page</kbd>.",
+       "apihelp-watch-example-generator": "Vigiar as primeiras páginas no espaço nominal principal.",
+       "apihelp-format-example-generic": "Retornar o resultado da consulta no formato $1.",
+       "apihelp-format-param-wrappedhtml": "Retorna o HTML pretty-printed e módulos ResourceLoader associados como um objeto JSON.",
+       "apihelp-json-summary": "Dados de saída em formato JSON.",
+       "apihelp-json-param-callback": "Se especificado, envolve a saída para uma determinada chamada de função. Por segurança, todos os dados específicos do usuário serão restritos.",
+       "apihelp-json-param-utf8": "Se especificado, codifica a maioria (mas não todos) caracteres não-ASCII como UTF-8 em vez de substituí-los por sequências de escape hexadecimais. Padrão quando <var>formatversion</var> não é <kbd>1</kbd>.",
+       "apihelp-json-param-ascii": "Se especificado, codifica todos os não-ASCII usando sequências de escape hexadecimais. Padrão quando <var>formatversion</var> é <kbd>1</kbd>.",
+       "apihelp-json-param-formatversion": "Formatação de saída:\n;1:formato compatível com versões anteriores (XML-style booleans, <samp>*</samp> chaves para nós de conteúdo, etc.).\n;2: formato moderno experimental. Detalhes podem ser alterados!\n;mais recente: use o formato mais recente (atualmente <kbd>2</kbd>), pode mudar sem aviso prévio.",
+       "apihelp-jsonfm-summary": "Dados de saída no formato JSON (pretty-print em HTML).",
        "apihelp-none-summary": "Nenhuma saída.",
+       "apihelp-php-summary": "Dados de saída no formato PHP serializado.",
+       "apihelp-php-param-formatversion": "Formatação de saída:\n;1:formato compatível com versões anteriores (XML-style booleans, <samp>*</samp> chaves para nós de conteúdo, etc.).\n;2: formato moderno experimental. Detalhes podem ser alterados!\n;mais recente: use o formato mais recente (atualmente <kbd>2</kbd>), pode mudar sem aviso prévio.",
+       "apihelp-phpfm-summary": "Dados de saída em formato serializado em PHP (pretty-print em HTML).",
+       "apihelp-rawfm-summary": "Dados de saída, incluindo elementos de depuração, no formato JSON (pretty-print em HTML).",
+       "apihelp-xml-summary": "Dados de saída em formato XML.",
+       "apihelp-xml-param-xslt": "Se especificado, adiciona a página nomeada como uma folha de estilo XSL. O valor deve ser um título no espaço nominal {{ns: MediaWiki}} que termina em <code>.xsl</code>.",
+       "apihelp-xml-param-includexmlnamespace": "Se especificado, adiciona um espaço nominal XML.",
+       "apihelp-xmlfm-summary": "Dados de saída em formato XML (impressão bonita em HTML).",
+       "api-format-title": "Resultado da API MediaWiki",
+       "api-format-prettyprint-header": "Esta é a representação HTML do formato $1. O HTML é bom para depuração, mas não é adequado para o uso da aplicação.\n\nEspecifique o parâmetro <var>format</var> para alterar o formato de saída. Para ver a representação não-HTML do formato $1, defina <kbd>format=$2</kbd>.\n\nVeja a [[mw:Special:MyLanguage/API|documentação completa]] ou a [[Special:ApiHelp/main|ajuda da API]] para obter mais informações.",
+       "api-format-prettyprint-header-only-html": "Esta é uma representação HTML destinada a depuração e não é apropriada para o uso da aplicação.\n\nVeja a documentação completa [[mw:Special:MyLanguage/API|complete documentation]] ou a ajuda [[Special:ApiHelp/main|API help]] para maiores informações.",
+       "api-format-prettyprint-header-hyperlinked": "Esta é a representação HTML do formato $1. O HTML é bom para depuração, mas não é adequado para o uso da aplicação.\n\nEspecifique o parâmetro <var>format</var> para alterar o formato de saída. Para ver a representação não-HTML do formato $1, defina [$3 <kbd>format=$2</kbd>].\n\nVeja a [[mw:API|documentação completa]] ou a [[Special:ApiHelp/main|ajuda da API]] para obter mais informações.",
+       "api-format-prettyprint-status": "Essa resposta seria retornada com o status HTTP $1 $2.",
+       "api-login-fail-aborted": "A autenticação requer interação do usuário, que não é suportada por <kbd>action=login</kbd>. Para poder fazer login com <kbd>action=login</kbd>, veja [[Special:BotPasswords]]. Para continuar usando main-account loign, veja <kbd>[[Special:ApiHelp/clientlogin|action=clientlogin]]</kbd>.",
+       "api-login-fail-aborted-nobotpw": "A autenticação requer interação do usuário, que não é suportada por <kbd>action=login</kbd>. Para fazer loging veja <kbd>[[Special:ApiHelp/clientlogin|action=clientlogin]]</kbd>.",
+       "api-login-fail-badsessionprovider": "Não é possível fazer o login ao usar $1.",
+       "api-login-fail-sameorigin": "Não é possível iniciar sessão quando a mesma política de origem não é aplicada.",
+       "api-pageset-param-titles": "Uma lista de IDs de título para trabalhar.",
+       "api-pageset-param-pageids": "Uma lista de IDs de página para trabalhar.",
+       "api-pageset-param-revids": "Uma lista de IDs de revisão para trabalhar.",
+       "api-pageset-param-generator": "Obter a lista de páginas para trabalhar executando o módulo de consulta especificado.\n\n<strong>Nota:</strong>Os nomes dos parâmetros do gerador devem ser prefixados com um \"g\", veja exemplos.",
+       "api-pageset-param-redirects-generator": "Resolve automaticamente redirecionamentos em <var>$1titles</var>, <var>$1pageids</var> e <var>$1revids</var> e em páginas retornadas por <var>$1generator</var>.",
+       "api-pageset-param-redirects-nogenerator": "Resolve automaticamente redirecionamentos em <var>$1titles</var>, <var>$1pageids</var> e <var>$1revids</var>.",
+       "api-pageset-param-converttitles": "Converte títulos para outras variantes, se necessário. Só funciona se o idioma do conteúdo do wiki suportar a conversão variante. Os idiomas que suportam a conversão variante incluem $1.",
+       "api-help-title": "Ajuda da API MediaWiki",
+       "api-help-lead": "Esta é uma página de documentação da API MediaWiki gerada automaticamente.\n\nDocumentação e exemplos: https://www.mediawiki.org/wiki/API",
+       "api-help-main-header": "Módulo principal",
+       "api-help-undocumented-module": "Nenhuma documentação para o módulo $1.",
        "api-help-flag-deprecated": "Este módulo é obsoleto.",
+       "api-help-flag-internal": "<strong>Este módulo é interno ou instável.</strong> Sua operação pode mudar sem aviso prévio.",
+       "api-help-flag-readrights": "Este módulo requer direitos de leitura.",
+       "api-help-flag-writerights": "Este módulo requer direitos de gravação.",
+       "api-help-flag-mustbeposted": "Este módulo aceita apenas pedidos POST.",
+       "api-help-flag-generator": "Este módulo pode ser usado como um gerador.",
        "api-help-source": "Fonte: $1",
        "api-help-source-unknown": "Fonte: <span class=\"apihelp-unknown\">desconhecida</span>",
        "api-help-license": "Licença: [[$1|$2]]",
        "api-help-license-noname": "Licença: [[$1|Ver ligação]]",
-       "api-help-license-unknown": "Fonte: <span class=\"apihelp-unknown\">desconhecida</span>",
+       "api-help-license-unknown": "Licensa: <span class=\"apihelp-unknown\">desconhecida</span>",
        "api-help-parameters": "{{PLURAL:$1|Parâmetro|Parâmetros}}:",
-       "api-help-param-deprecated": "Obsoleto",
+       "api-help-param-deprecated": "Obsoleto.",
        "api-help-param-required": "Este parâmetro é obrigatório.",
+       "api-help-datatypes-header": "Tipos de dados",
+       "api-help-datatypes": "A entrada para MediaWiki deve ser UTF-8 normalizada pelo NFC. O MediaWiki pode tentar converter outra entrada, mas isso pode causar a falha de algumas operações (como [[Special:ApiHelp/edit|editar]] com verificações MD5).\n\nAlguns tipos de parâmetros em solicitações de API precisam de uma explicação adicional:\n;boolean\n:Os parâmetros booleanos funcionam como caixas de seleção HTML: se o parâmetro for especificado, independentemente do valor, é considerado verdadeiro. Para um valor falso, omita o parâmetro inteiramente.\n;timestamp\n: As marcas de tempo podem ser especificadas em vários formatos. É recomendada a data e a hora ISO 8601. Todos os horários estão em UTC, qualquer fuso horário incluído é ignorado.\n:* Data e hora ISO 8601, <kbd><var>2001</var>-<var>01</var>-<var>15</var>T<var>14</var>:<var>56</var>:<var>00</var>Z</kbd> (pontuação e <kbd>Z</kbd> são opcionais)\n:* ISO 8601 data e hora com segundos fracionados (ignorados), <kbd><var>2001</var>-<var>01</var>-<var>15</var>T<var>14</var>:<var>56</var>:<var>00</var>.<var>00001</var>Z</kbd> (traços, dois pontos e <kbd>Z</kbd> são opcionais)\n:* Formato MediaWiki, <kbd><var>2001</var><var>01</var><var>15</var><var>14</var><var>56</var><var>00</var></kbd>\n:* Formato numérico genérico, <kbd><var>2001</var>-<var>01</var>-<var>15</var> <var>14</var>:<var>56</var>:<var>00</var></kbd> (fuso horário opcional de <kbd>GMT</kbd>, <kbd>+<var>##</var></kbd> ou <kbd>-<var>##</var></kbd> é ignorado)\n:* Formato EXIF, <kbd><var>2001</var>:<var>01</var>:<var>15</var> <var>14</var>:<var>56</var>:<var>00</var></kbd>\n:* Formato RFC 2822 (o fuso horário pode ser omitido), <kbd><var>Mon</var>, <var>15</var> <var>Jan</var> <var>2001</var> <var>14</var>:<var>56</var>:<var>00</var></kbd>\n:* Formato RFC 850 (fuso horário Pode ser omitido), <kbd><var>Monday</var>, <var>15</var>-<var>Jan</var>-<var>2001</var> <var>14</var>:<var>56</var>:<var>00</var></kbd>\n:* C ctime format, <kbd><var>Mon</var> <var>Jan</var> <var>15</var> <var>14</var>:<var>56</var>:<var>00</var> <var>2001</var></kbd>\n:* Segundos desde 1970-01-01T00:00:00Z como um inteiro de 1 a 13 dígitos (excluindo <kbd>0</kbd>)\n:* A string <kbd>now</kbd>\n; valor múltiplo alternativo separador\n: Os parâmetros que levam vários valores são normalmente enviados com os valores separados usando o caractere do pipe, por exemplo <kbd>param=value1|value2</kbd> ou <kbd>param=value1%7Cvalue2</kbd>. Se um valor deve conter o caractere de pipe, use U+001F (separador de unidade) como o separador ''and'' prefixa o valor com U+001F, por exemplo, <kbd>param=%1Fvalue1%1Fvalue2</kbd>.",
+       "api-help-param-type-limit": "Tipo: inteiro ou <kbd>max</kbd>",
+       "api-help-param-type-integer": "Tipo: {{PLURAL:$1|1=inteiro|2=lista de inteiros}}",
+       "api-help-param-type-boolean": "Tipo: boleano ([[Special:ApiHelp/main#main/datatypes|details]])",
+       "api-help-param-type-timestamp": "Tipo: {{PLURAL:$1|1=timestamp|2=lista de timestamps}} ([[Special:ApiHelp/main#main/datatypes|formatos permitidos]])",
+       "api-help-param-type-user": "Tipo: {{PLURAL:$1|1=nome de usuário|2=lista de nomes de usuários}}",
+       "api-help-param-list": "{{PLURAL:$1|1=Um dos seguintes valores|2=Valores (separados com <kbd>{{!}}</kbd> ou [[Special:ApiHelp/main#main/datatypes|alternativos]])}}: $2",
+       "api-help-param-list-can-be-empty": "{{PLURAL:$1|0=Deve estar vazio|Pode estar vazio, ou $2}}",
+       "api-help-param-limit": "Não mais do que $1 permitido.",
+       "api-help-param-limit2": "Não são permitidos mais de $1 ($2 por bots).",
+       "api-help-param-integer-min": "{{PLURAL:$1|1=O valor não pode ser inferior a|2=Os valores não podem ser inferiores a}} $2.",
+       "api-help-param-integer-max": "{{PLURAL:$1|1=O valor deve ser maior que|2=Os valores devem ser maiores que}} $3.",
+       "api-help-param-integer-minmax": "{{PLURAL:$1|1=O valor deve estar entre|2=Os valores devem estar entre}} $2 e $3.",
+       "api-help-param-upload": "Deve ser postado como um upload de arquivo usando multipart/form-data.",
+       "api-help-param-multi-separate": "Valores separados com <kbd>|</kbd> ou [[Special:ApiHelp/main#main/datatypes|alternativas]].",
+       "api-help-param-multi-max": "O número máximo de valores é {{PLURAL:$1|$1}} ({{PLURAL:$2|$2}} para bots).",
+       "api-help-param-multi-all": "Para especificar todos os valores, use <kbd>$1</kbd>.",
        "api-help-param-default": "Padrão: $1",
        "api-help-param-default-empty": "Padrão: <span class=\"apihelp-empty\">(vazio)</span>",
+       "api-help-param-token": "Um token \"$1\" token recuperado de [[Special:ApiHelp/query+tokens|action=query&meta=tokens]]",
+       "api-help-param-token-webui": "Para compatibilidade, o token usado na interface web também é aceito.",
+       "api-help-param-disabled-in-miser-mode": "Desabilitado devido a [[mw:Special:MyLanguage/Manual:$wgMiserMode|miser mode]].",
+       "api-help-param-limited-in-miser-mode": "<strong>Nota:</strong> Devido ao [[mw:Special:MyLanguage/Manual:$wgMiserMode|miser mode]], usar isso pode resultar em menos de <var>$1limit</var> resultados antes de continuar; em casos extremos, nenhum resultado pode ser retornado.",
+       "api-help-param-direction": "Em qual direção enumerar:\n;newer: Lista primeiro mais antigo. Nota: $1start deve ser anterior a $1end.\n;older: Lista mais recente primeiro (padrão). Nota: $1start deve ser posterior a $1end.",
+       "api-help-param-continue": "Quando houver mais resultados disponíveis, use isso para continuar.",
+       "api-help-param-no-description": "<span class=\"apihelp-empty\">(sem descrição)</span>",
+       "api-help-examples": "{{PLURAL:$1|Exemplo|Exemplos}}:",
+       "api-help-permissions": "{{PLURAL:$1|Permissão|Permissões}}:",
+       "api-help-permissions-granted-to": "{{PLURAL:$1|Concedido a|Concedidos a}}: $2",
+       "api-help-right-apihighlimits": "Use limites mais altos nas consultas da API (consultas lentas: $1; consultas rápidas: $2). Os limites para consultas lentas também se aplicam a parâmetros multivalores.",
+       "api-help-open-in-apisandbox": "<small>[abrir na página de testes]</small>",
+       "api-help-authmanager-general-usage": "O procedimento geral para usar este módulo é:\n# Procure os campos disponíveis de <kbd>[[Special:ApiHelp/query+authmanagerinfo|action=query&meta=authmanagerinfo]]</kbd> com <kbd>amirequestsfor=$4</kbd> e um token <kbd>$5</kbd> de <kbd>[[Special:ApiHelp/query+tokens|action=query&meta=tokens]]</kbd>.\n# Apresentar os campos para o usuário e obtenha a sua submissão.\n# Poste em este módulo, fornecendo <var>$1returnurl</var> e quaisquer campos relevantes.\n# Verifique o <samp>status</samp> na resposta.\n#* Se você recebeu <samp>PASS</samp> ou <samp>FAIL</samp>, você terminou. A operação foi bem sucedida ou não.\n#* Se você recebeu <samp>UI</samp>, apresente os novos campos ao usuário e obtenha seu envio. Em seguida, publique neste módulo com <var>$1continue</var> e os campos relevantes sejam definidos e repita a etapa 4.\n#* Se você recebeu <samp>REDIRECT</samp>, direcione o usuário para o <samp>redirecttarget</samp> e aguarde o retorno para <var>$1returnurl</var>. Em seguida, publique neste módulo com <var>$1continue</var> e quaisquer campos passados para o URL de retorno e repita a etapa 4.\n#* Se você recebeu <samp>RESTART</samp>, isso significa que a autenticação funcionou mas não temos uma conta de usuário vinculada. Você pode tratar isso como <samp>UI</samp> ou como <samp>FAIL</samp>.",
+       "api-help-authmanagerhelper-requests": "Utilize apenas estes pedidos de autenticação, pelo <samp>id</samp> retornado de <kbd>[[Special:ApiHelp/query+authmanagerinfo|action=query&meta=authmanagerinfo]]</kbd> com <kbd>amirequestsfor=$1</kbd> ou de uma resposta anterior deste módulo.",
+       "api-help-authmanagerhelper-request": "Use este pedido de autenticação, pelo <samp>id</ samp> retornado de <kbd>[[Special:ApiHelp/query+authmanagerinfo|action=query&meta=authmanagerinfo]]</kbd> com <kbd>amirequestsfor=$1</kbd>.",
+       "api-help-authmanagerhelper-messageformat": "Formato a ser usado para retornar mensagens.",
+       "api-help-authmanagerhelper-mergerequestfields": "Fundir informações de campo para todos os pedidos de autenticação em uma matriz.",
+       "api-help-authmanagerhelper-preservestate": "Preserva o estado de uma tentativa de login anterior com falha, se possível.",
+       "api-help-authmanagerhelper-returnurl": "O URL de retorno para fluxos de autenticação de terceiros deve ser absoluto. Isso ou <var>$1continue</var> é necessário.\n\nQuando receber uma resposta <samp>REDIRECT</samp>, você normalmente abrirá um navegador ou uma visão da web para o <samp>redirecttarget</samp> URL para um fluxo de autenticação de terceiros. Quando isso for concluído, o terceiro enviará ao navegador ou a web para este URL. Você deve extrair qualquer consulta ou parâmetros POST do URL e passá-los como uma solicitação <var>$1continue</var> para este módulo de API.",
+       "api-help-authmanagerhelper-continue": "Esse pedido é uma continuação após uma resposta <samp>UI</samp> ou <samp>REDIRECT</samp> anterior. Ou <var>$1returnurl</var> é requerido.",
+       "api-help-authmanagerhelper-additional-params": "Este módulo aceita parâmetros adicionais dependendo dos pedidos de autenticação disponíveis. Use <kbd>[[Special:ApiHelp/query+authmanagerinfo|action=query&meta=authmanagerinfo]]</kbd> com <kbd>amirequestsfor=$1</kbd> (ou uma resposta anterior deste módulo, se aplicável) para determinar as solicitações disponíveis e os campos que eles usam.",
+       "apierror-allimages-redirect": "Use <kbd>gapfilterredir=nonredirects</kbd> em vez de <var>redirects</var> ao usar <kbd>allimages</kbd> como um gerador.",
+       "apierror-allpages-generator-redirects": "Use <kbd>gapfilterredir=nonredirects</kbd> em vez de <var>redirects</var> ao usar <kbd>allpages</kbd> como um gerador.",
+       "apierror-appendnotsupported": "Não é possível anexar páginas usando o modelo de conteúdo $1.",
+       "apierror-articleexists": "O artigo que você tentou criar já foi criado.",
+       "apierror-assertbotfailed": "Afirmação de que o usuário tem o direito <code>bot</code> falhou.",
+       "apierror-assertnameduserfailed": "Afirmação de que o usuário é \"$1\" falhou.",
+       "apierror-assertuserfailed": "Afirmação de que o usuário está logado falhou.",
+       "apierror-autoblocked": "O seu endereço de IP foi bloqueado automaticamente, porque ele foi usado por um usuário bloqueado.",
+       "apierror-badconfig-resulttoosmall": "O valor de <code>$wgAPIMaxResultSize</code> nesta wiki é muito pequeno para manter a informação básica de resultados.",
+       "apierror-badcontinue": "Parâmetro continue inválido. Você deve passar o valor original retornado pela consulta anterior.",
+       "apierror-baddiff": "O diff não pode ser recuperado. Uma ou ambas as revisões não existem ou você não tem permissão para visualizá-las.",
+       "apierror-baddiffto": "<var>$1diffto</var> deve ser configurado para um número não negativo, <kbd>prev</kbd>, <kbd>next</kbd> ou <kbd>cur</kbd>.",
+       "apierror-badformat-generic": "O formato solicitado $1 não é suportado para o modelo de conteúdo $2.",
+       "apierror-badformat": "O formato solicitado $1 não é suportado para o modelo de conteúdo $2 usado por $3.",
+       "apierror-badgenerator-notgenerator": "O módulo <kbd>$1</kbd> não pode ser usado como um gerador.",
+       "apierror-badgenerator-unknown": "<kbd>generator=$1</kbd> desconhecido.",
+       "apierror-badip": "O parâmetro IP não é válido.",
+       "apierror-badmd5": "O hash MD5 fornecido estava incorreto.",
+       "apierror-badmodule-badsubmodule": "O módulo <kbd>$1</kbd> não possui um submódulo \"$2\".",
+       "apierror-badmodule-nosubmodules": "O módulo <kbd>$1</kbd> não tem submódulos.",
+       "apierror-badparameter": "Valor inválido para o parâmetro <var>$1</var>.",
+       "apierror-badquery": "Consulta inválida.",
+       "apierror-badtimestamp": "Valor \"$2\" inválido para o parâmetro timestamp <var>$1</var>.",
+       "apierror-badtoken": "Token de CSRF inválido.",
+       "apierror-badupload": "O parâmetro de upload do arquivo <var>$1</var> não é um upload de arquivo; Certifique-se de usar <code>multipart/form-data</code> para o seu POST e incluir um nome de arquivo no cabeçalho <code> Content-Disposition</code>.",
        "apierror-badurl": "Valor \"$2\" não é válido para o parâmetro <var>$1</var> da URL.",
+       "apierror-baduser": "Valor \"$2\" inválido para o parâmetro de usuário <var>$1</var>.",
+       "apierror-badvalue-notmultivalue": "U+001F separação de múltiplos valores só pode ser usada para parâmetros de vários valores.",
+       "apierror-bad-watchlist-token": "Foi fornecido um token da lista de páginas vigiadas incorreto. Defina um token correto em [[Special:Preferences]].",
+       "apierror-blockedfrommail": "Você foi bloqueado de enviar e-mail.",
+       "apierror-blocked": "Você foi bloqueado de editar.",
+       "apierror-botsnotsupported": "Esta interface não é suportada por bots.",
+       "apierror-cannot-async-upload-file": "Os parâmetros <var>async</var> e <var>file</var> não podem ser combinados. Se você deseja o processamento assíncrono do seu arquivo carregado, primeiro faça o upload para armazenar (usando o parâmetro <var>stash</var>) e depois publique o arquivo armazenado de forma assíncrona (usando <var>filekey</var> e <var>async</var>).",
+       "apierror-cannotreauthenticate": "Esta ação não está disponível porque sua identidade não pode ser verificada.",
+       "apierror-cannotviewtitle": "Você não tem permissão para ver $1.",
        "apierror-cantblock-email": "Você não tem permissão para impedir que os usuários enviem e-mails através da wiki.",
        "apierror-cantblock": "Você não tem permissão para bloquear usuários.",
        "apierror-cantchangecontentmodel": "Você não tem permissão para mudar o modelo de conteúdo de uma página.",
        "apierror-canthide": "Você não tem permissão para ocultar nomes de usuários do registro de bloqueios.",
        "apierror-cantimport-upload": "Você não tem permissão para importar páginas enviadas.",
        "apierror-cantimport": "Você não tem permissão para importar páginas.",
+       "apierror-cantoverwrite-sharedfile": "O arquivo de destino existe em um repositório compartilhado e você não tem permissão para substituí-lo.",
+       "apierror-cantsend": "Você não está logado, não possui um endereço de e-mail confirmado ou não tem permissão para enviar e-mails para outros usuários, por isso não pode enviar e-mails.",
+       "apierror-cantundelete": "Não foi possível recuperar arquivos: as revisões solicitadas podem não existir ou talvez já tenham sido eliminadas.",
+       "apierror-changeauth-norequest": "Falha ao criar pedido de mudança.",
+       "apierror-chunk-too-small": "O tamanho mínimo do bloco é $1 {{PLURAL:$1|byte|bytes}} para os pedaços não finais.",
+       "apierror-cidrtoobroad": "Os intervalos CIDR $1 maiores que /$2 não são aceitos.",
+       "apierror-compare-no-title": "Não é possível pré-salvar a transformação sem um título. Tente especificar <var>fromtitle</var> ou <var>totitle</var>.",
+       "apierror-compare-relative-to-nothing": "Nenhuma revisão 'from' para <var>torelative</var> para ser relativa à.",
+       "apierror-contentserializationexception": "Falha na serialização de conteúdo: $1",
+       "apierror-contenttoobig": "O conteúdo fornecido excede o limite de tamanho do artigo de $1 {{PLURAL: $1|kilobyte|kilobytes}}.",
+       "apierror-copyuploadbaddomain": "Os uploads por URL não são permitidos deste domínio.",
+       "apierror-copyuploadbadurl": "Envio não permitido a partir deste URL.",
+       "apierror-create-titleexists": "Os títulos existentes não podem ser protegidos com <kbd>create</kbd>.",
+       "apierror-csp-report": "Erro ao processar o relatório CSP: $1.",
+       "apierror-databaseerror": "[$1] Houve um erro na consulta ao banco de dados.",
+       "apierror-deletedrevs-param-not-1-2": "O parâmetro <var>$1</var> não pode ser usado nos modos 1 ou 2.",
+       "apierror-deletedrevs-param-not-3": "O parâmetro <var>$1</var> não pode ser usado no modo 3.",
+       "apierror-emptynewsection": "A criação de novas seções vazias não é possível.",
+       "apierror-emptypage": "Não é permitido criar páginas novas e vazias.",
+       "apierror-exceptioncaught": "[$1] Exceção detectada: $2",
        "apierror-filedoesnotexist": "Arquivo não existe.",
+       "apierror-fileexists-sharedrepo-perm": "O arquivo de destino existe em um repositório compartilhado. Use o parâmetro <var>ignorewarnings</var> para substituí-lo.",
+       "apierror-filenopath": "Não é possível obter o caminho do arquivo local.",
+       "apierror-filetypecannotberotated": "O tipo de arquivo não pode ser girado.",
+       "apierror-formatphp": "Esta resposta não pode ser representada usando o formato <kbd>format=php</kbd>. Consulte https://phabricator.wikimedia.org/T68776.",
+       "apierror-imageusage-badtitle": "O título para <kbd>$1</kbd> deve ser um arquivo.",
+       "apierror-import-unknownerror": "Erro desconhecido na importação: $1.",
+       "apierror-integeroutofrange-abovebotmax": "<var>$1</var> não pode ser maior que $2 (definido para $3) para bots ou sysops.",
+       "apierror-integeroutofrange-abovemax": "<var>$1</var> não pode ser maior que $2 (definido para $3) para usuários.",
+       "apierror-integeroutofrange-belowminimum": "<var>$1</var> não pode ser menor que $2 (definido para $3).",
+       "apierror-invalidcategory": "O nome da categoria que você inseriu não é válido.",
+       "apierror-invalid-chunk": "O deslocamento mais o pedaço atual é maior que o tamanho do arquivo reivindicado.",
        "apierror-invalidexpiry": "Tempo de expiração \"$1\" não válido.",
+       "apierror-invalid-file-key": "Não é uma chave de arquivo válida.",
+       "apierror-invalidlang": "Código de idioma inválido para o parâmetro <var>$1</var>.",
+       "apierror-invalidoldimage": "O parâmetro <var>oldimage</var> possui um formato inválido.",
+       "apierror-invalidparammix-cannotusewith": "O parâmetro <kbd>$1</kbd> não pode ser usado com <kbd>$2</kbd>.",
+       "apierror-invalidparammix-mustusewith": "O parâmetro <kbd>$1</kbd> só pode ser usado com <kbd>$2</kbd>.",
+       "apierror-invalidparammix-parse-new-section": "<kbd>section=new</kbd> não pode ser combinado com os parâmetros <var>oldid</var>, <var>pageid</var> ou <var>page</var>. Por favor, use <var>title</var> e <var>text</var>.",
+       "apierror-invalidparammix": "{{PLURAL:$2|Os parâmetros }} $1 não podem ser usado em conjunto.",
+       "apierror-invalidsection": "O parâmetro <var>section</var> deve ser um ID de seção válida ou <kbd>new</kbd>.",
+       "apierror-invalidsha1base36hash": "O hash SHA1Base36 fornecido não é válido.",
+       "apierror-invalidsha1hash": "O hash SHA1 informado não é válido.",
        "apierror-invalidtitle": "Título incorreto \"$1\".",
+       "apierror-invalidurlparam": "Valor inválido para <var>$1urlparam</var> (<kbd>$2=$3</kbd>).",
        "apierror-invaliduser": "Nome de usuário \"$1\" é inválido.",
+       "apierror-invaliduserid": "O ID de usuário <var>$1</var> não é permitido.",
+       "apierror-maxlag-generic": "Aguardando um servidor de banco de dados: $1 {{PLURAL:$1|segundo|segundos}} atraso.",
+       "apierror-maxlag": "Esperando $2: $1 {{PLURAL: $1|segundo|segundos}} atrasado.",
+       "apierror-mimesearchdisabled": "A pesquisa MIME está desativada no Miser Mode.",
+       "apierror-missingcontent-pageid": "Falta conteúdo para a ID da página $1.",
+       "apierror-missingcontent-revid": "Falta conteúdo para a ID de revisão $1.",
+       "apierror-missingparam-at-least-one-of": "{{PLURAL:$2|O parâmetro|Ao menos um dos parâmetros}} $1 é necessário.",
+       "apierror-missingparam-one-of": "{{PLURAL:$2|O parâmetro|Um dos parâmetros}} $1 é necessário.",
+       "apierror-missingparam": "O parâmetro <var>$1</var> precisa ser definido.",
+       "apierror-missingrev-pageid": "Nenhuma revisão atual da página com ID $1.",
+       "apierror-missingrev-title": "Nenhuma revisão atual do título $1.",
+       "apierror-missingtitle-createonly": "Os títulos em falta só podem ser protegidos com <kbd>create</kbd>.",
+       "apierror-missingtitle": "A página que você especificou não existe.",
        "apierror-missingtitle-byname": "A página $1 não existe.",
+       "apierror-moduledisabled": "O módulo <kbd>$1</kbd> foi desativado.",
+       "apierror-multival-only-one-of": "{{PLURAL:$3|Somente|Somente um de}} $2 é permitido para parâmetro <var>$1</var>.",
+       "apierror-multival-only-one": "Apenas um valor é permitido para o parâmetro <var> $1</var>.",
+       "apierror-multpages": "<var>$1</var> só pode ser usada com uma única página.",
+       "apierror-mustbeloggedin-changeauth": "Você precisa estar autenticado para alterar dados de autenticação.",
        "apierror-mustbeloggedin-generic": "Você deve estar logado.",
+       "apierror-mustbeloggedin-linkaccounts": "Você precisa estar autenticado para vincular contas.",
+       "apierror-mustbeloggedin-removeauth": "Você precisa estar autenticado para remover dados de autenticação.",
+       "apierror-mustbeloggedin-uploadstash": "O upload do stash só está disponível para usuários registrados.",
+       "apierror-mustbeloggedin": "Você precisa estar logado para $1.",
+       "apierror-mustbeposted": "O módulo <kbd>$1</kbd> requer uma solicitação POST.",
+       "apierror-mustpostparams": "{{PLURAL:$2|O seguinte parâmetro foi encontrado|Os seguintes parâmetros foram encontrados}} na string de consulta, mas deve estar no corpo POST: $1.",
+       "apierror-noapiwrite": "A edição deste wiki através da API está desabilitada. Certifique-se de que a declaração <code>$wgEnableWriteAPI=true;</code> está incluída no arquivo <code>LocalSettings.php</code>.",
+       "apierror-nochanges": "Nenhuma alteração foi solicitada.",
+       "apierror-nodeleteablefile": "Nenhuma versão antiga do arquivo.",
+       "apierror-no-direct-editing": "A edição direta via API não é suportada para o modelo de conteúdo $1 usado por $2.",
+       "apierror-noedit-anon": "Os usuários anônimos não podem editar páginas.",
        "apierror-noedit": "Você não tem permissão para editar páginas.",
+       "apierror-noimageredirect-anon": "Os usuários anônimos não podem criar redirecionamentos de imagem.",
        "apierror-noimageredirect": "Você não tem permissão para criar redirecionamentos de imagens.",
+       "apierror-nosuchlogid": "Não há entrada de log com ID $1.",
+       "apierror-nosuchpageid": "Não há página com ID $1.",
+       "apierror-nosuchrcid": "Não há mudança recente com ID $1.",
+       "apierror-nosuchrevid": "Não há revisão com ID $1.",
+       "apierror-nosuchsection": "Não há seção $1.",
+       "apierror-nosuchsection-what": "Não há seção $1 em $2.",
+       "apierror-nosuchuserid": "Não há usuário com ID $1.",
+       "apierror-notarget": "Você não especificou um alvo válido para esta ação.",
+       "apierror-notpatrollable": "A revisão r$1 não pode ser patrulhada, já que é muito antiga.",
+       "apierror-nouploadmodule": "Módulo de upload não definido.",
+       "apierror-offline": "Não foi possível prosseguir devido a problemas de conectividade de rede. Certifique-se de ter uma conexão à internet e tente novamente.",
+       "apierror-opensearch-json-warnings": "Os avisos não podem ser representados no formato JSON do OpenSearch.",
+       "apierror-pagecannotexist": "O espaço nominal não permite as páginas atuais.",
+       "apierror-pagedeleted": "A página foi excluída desde que você obteve seu timestamp.",
+       "apierror-pagelang-disabled": "Mudar o idioma de uma página não é permitido nesta wiki.",
+       "apierror-paramempty": "O parâmetro <var>$1</var> pode não estar vazio.",
+       "apierror-parsetree-notwikitext": "<kbd>prop=parsetree</kbd> só é suportado por conteúdo wikitext.",
+       "apierror-parsetree-notwikitext-title": "<kbd>prop=parsetree</kbd> só é suportado por conteúdo texto wiki, $1 usa conteúdo do modelo $2.",
+       "apierror-pastexpiry": "Tempo de expiração \"$1\" está no passado.",
        "apierror-permissiondenied": "Você não tem permissão para $1.",
+       "apierror-permissiondenied-generic": "Permissão negada.",
+       "apierror-permissiondenied-patrolflag": "Você precisa do direito <code>patrol</code> ou <code>patrolmarks</code> para requisitar a etiqueta \"patrulhado\".",
        "apierror-permissiondenied-unblock": "Você não tem permissão para desbloquear usuários.",
+       "apierror-prefixsearchdisabled": "A pesquisa de prefixos está desativada no Miser Mode.",
+       "apierror-promised-nonwrite-api": "O cabeçalho HTTP <code>Promise-Non-Write-API-Action</code> não pode ser enviado para módulos de API em modo de gravação.",
+       "apierror-protect-invalidaction": "Tipo de proteção \"$1\" inválida.",
+       "apierror-protect-invalidlevel": "Nível de proteção inválido \"$1\".",
+       "apierror-ratelimited": "Você excedeu o limite. Por favor, aguarde algum tempo e tente novamente.",
+       "apierror-readapidenied": "Você precisa da permissão de leitura para usar este módulo.",
+       "apierror-readonly": "Esta wiki está atualmente em modo somente leitura.",
+       "apierror-reauthenticate": "Você não se autenticou recentemente nesta sessão, por favor, se autentique.",
+       "apierror-redirect-appendonly": "Você tentou editar usando o modo de redirecionamento, que deve ser usado em conjunto com <kbd>section=new</kbd>, <var>prependtext</var> ou <var>appendtext</var>.",
+       "apierror-revdel-mutuallyexclusive": "O mesmo campo não pode ser usado em ambos <var>hide</var> e <var>show</var>.",
+       "apierror-revdel-needtarget": "Um título de destino é necessário para este tipo RevDel.",
+       "apierror-revdel-paramneeded": "Pelo menos um valor é necessário para <var>hide</var> e/ou <var>show</var>.",
+       "apierror-revisions-badid": "Nenhuma revisão foi encontrada para o parâmetro <var>$1</var>.",
+       "apierror-revisions-norevids": "O parâmetro <var>revids</var> não pode ser usado com as opções da lista (<var>$1limit</var>, <var>$1startid</var>, <var>$1endid</var>, <kbd>$1dir=newer</kbd>, <var>$1user</var>, <var>$1excludeuser</var>, <var>$1start</var> e <var>$1end</var>).",
+       "apierror-revisions-singlepage": "<var>titles</var>, <var>pageids</var> ou um gerador foi usado para fornecer várias páginas, mas os parâmetros <var>$1limit</var>, <var>$1startid</var>, <var>$1endid</var>, <kbd>$1dir=newer</kbd>, <var>$1user</var>, <var>$1excludeuser</var>, <var>$1start</var> e <var>$1end</var> só podem ser usados em uma única página.",
+       "apierror-revwrongpage": "r$1 não é uma revisão de $2.",
+       "apierror-searchdisabled": "<var>$1</var> pesquisa está desativada.",
+       "apierror-sectionreplacefailed": "Não foi possível mesclar a seção atualizada.",
+       "apierror-sectionsnotsupported": "As seções não são suportadas para o modelo de conteúdo $1.",
+       "apierror-sectionsnotsupported-what": "As seções não são suportadas por $1.",
+       "apierror-show": "Parâmetro incorreto - valores mutuamente exclusivos podem não ser fornecidos.",
+       "apierror-siteinfo-includealldenied": "Não é possível visualizar a informação de todos os servidores, a menos que <var>$wgShowHostNames</var> seja true.",
+       "apierror-sizediffdisabled": "A diferença de tamanho está desativada no Miser Mode.",
+       "apierror-spamdetected": "Sua edição foi bloqueada porque contem um fragmento de spam: <code>$1</code>.",
        "apierror-specialpage-cantexecute": "Você não tem permissão para ver os resultados desta página especial.",
+       "apierror-stashedfilenotfound": "Não foi possível encontrar o arquivo no stash: $1.",
+       "apierror-stashedit-missingtext": "Nenhum texto stashed foi encontrado com o hash informado.",
+       "apierror-stashfailed-complete": "O carregamento fragmentado já está concluído, verifique o status para obter detalhes.",
+       "apierror-stashfailed-nosession": "Nenhuma sessão de upload fragmentada com esta chave.",
+       "apierror-stashfilestorage": "Não foi possível armazenar o upload no stash: $1",
+       "apierror-stashinvalidfile": "Arquivo stashed inválido.",
+       "apierror-stashnosuchfilekey": "Nenhuma dessas chaves de arquivo: $1.",
+       "apierror-stashpathinvalid": "Chave de arquivo de formato impróprio ou inválido: $1.",
+       "apierror-stashwrongowner": "Dono incorreto: $1",
+       "apierror-stashzerolength": "O arquivo é de comprimento zero e não pode ser armazenado no stash: $1.",
+       "apierror-systemblocked": "Você foi bloqueado automaticamente pelo MediaWiki.",
+       "apierror-templateexpansion-notwikitext": "A expansão da predefinição só é suportada pelo conteúdo do texto wiki. $1 usa o modelo de conteúdo $2.",
        "apierror-timeout": "O servidor não respondeu dentro do tempo esperado.",
+       "apierror-toofewexpiries": "{{PLURAL:$1|Foi fornecida $1 data e hora|Foram fornecidas $1 datas e horas}} de expiração quando {{PLURAL:$2|era necessária|eram necessárias}} $2.",
+       "apierror-unknownaction": "A ação especificada, <kbd>$1</kbd>, não é reconhecida.",
+       "apierror-unknownerror-editpage": "Erro EditPage desconhecido: $1.",
+       "apierror-unknownerror-nocode": "Erro desconhecido.",
+       "apierror-unknownerror": "Erro desconhecido: \"$1\".",
+       "apierror-unknownformat": "Formato desconhecido \"$1\".",
+       "apierror-unrecognizedparams": "{{PLURAL: $2|Parâmetro não reconhecido|Parâmetros não reconhecidos}}: $1.",
+       "apierror-unrecognizedvalue": "Valor não reconhecido para o parâmetro <var>$1</var>: $2.",
+       "apierror-unsupportedrepo": "O repositório de arquivos locais não suporta a consulta de todas as imagens.",
+       "apierror-upload-filekeyneeded": "Deve fornecer uma <var>filekey</var> quando <var>offset</var> for diferente de zero.",
+       "apierror-upload-filekeynotallowed": "Não é possível fornecer uma <var>filekey</var> quando <var>offset</var> é 0.",
+       "apierror-upload-inprogress": "Carregar do stash já em andamento.",
+       "apierror-upload-missingresult": "Nenhum resultado em dados de status.",
+       "apierror-urlparamnormal": "Não foi possível normalizar parâmetros de imagem para $1.",
+       "apierror-writeapidenied": "Você não está autorizado a editar esta wiki através da API.",
+       "apiwarn-alldeletedrevisions-performance": "Para um melhor desempenho ao gerar títulos, defina <kbd>$1dir=newer</kbd>.",
+       "apiwarn-badurlparam": "Não foi possível analisar <var>$1urlparam</var> por $2. Usando apenas largura e altura.",
+       "apiwarn-badutf8": "O valor passado para <var>$1</var> contém dados inválidos ou não normalizados. Os dados textuais devem ser válidos, NFC-normalizado Unicode sem caracteres de controle C0 diferentes de HT (\\t), LF (\\n) e CR (\\r).",
+       "apiwarn-checktoken-percentencoding": "Verificar se os símbolos, como \"+\" no token, estão codificados corretamente na URL.",
+       "apiwarn-compare-nocontentmodel": "Nenhum modelo de conteúdo pode ser determinado, assumindo $1.",
+       "apiwarn-deprecation-deletedrevs": "<kbd>list=deletedrevs</kbd> foi depreciado. Por favor, use <kbd>prop=deletedrevisions</kbd> ou <kbd>list=alldeletedrevisions</kbd> em vez.",
+       "apiwarn-deprecation-expandtemplates-prop": "Como nenhum valor foi especificado para o parâmetro <var>prop</var>, um formato herdado foi usado para a saída. Este formato está obsoleto e no futuro um valor padrão será definido para o parâmetro <var>prop</var>, fazendo com que o novo formato sempre seja usado.",
+       "apiwarn-deprecation-httpsexpected": "HTTP usado quando o HTTPS era esperado.",
+       "apiwarn-deprecation-login-botpw": "O login da conta principal via <kbd>action=login</kbd> está obsoleto e pode parar de funcionar sem aviso prévio. Para continuar com o login com <kbd>action=login</ kbd>, consulte [[Special:BotPasswords]]. Para continuar com segurança usando o login da conta principal, veja <kbd>action=clientlogin</kbd>.",
+       "apiwarn-deprecation-login-nobotpw": "O login da conta principal via <kbd>action=login</kbd> está obsoleto e pode parar de funcionar sem aviso prévio. Para fazer login com segurança, veja <kbd>action=clientlogin</kbd>.",
+       "apiwarn-deprecation-login-token": "Obter um token via <kbd>action=login</kbd> está obsoleto. Use <kbd>action=query&meta=tokens&type=login</kbd> em vez.",
+       "apiwarn-deprecation-parameter": "O parâmetro <var>$1</var> é obsoleto.",
+       "apiwarn-deprecation-parse-headitems": "<kbd>prop=headitems</kbd> está depreciado desde o MediaWiki 1.28. Use <kbd>prop=headhtml</kbd> quando for criar novos documentos HTML, ou <kbd>prop=modules|jsconfigvars</kbd> quando for atualizar um documento no lado do cliente.",
+       "apiwarn-deprecation-purge-get": "O uso de <kbd>action=purge</kbd> via GET está obsoleto. Use o POST em vez disso.",
+       "apiwarn-deprecation-withreplacement": "<kbd>$1</kbd> está obsoleto. Por favor, use <kbd>$2</kbd> em vez.",
+       "apiwarn-difftohidden": "Não foi possível diferenciar r$1: o conteúdo está oculto.",
+       "apiwarn-errorprinterfailed": "Falha na impressora de erro. Repetirá sem parâmetros.",
+       "apiwarn-errorprinterfailed-ex": "Falha na impressora de erro (repetirá sem parâmetros): $1",
        "apiwarn-invalidcategory": "\"$1\" não é uma categoria.",
        "apiwarn-invalidtitle": "\"$1\" não é um título válido.",
+       "apiwarn-invalidxmlstylesheetext": "Stylesheet deve ter extensão <code>.xsl</code>.",
+       "apiwarn-invalidxmlstylesheet": "Especificada folha de estilos inválida ou inexistente.",
+       "apiwarn-invalidxmlstylesheetns": "Stylesheet deve estar no espaço nominal {{ns:MediaWiki}}.",
+       "apiwarn-moduleswithoutvars": "A propriedade <kbd>modules</kbd> foi definida, mas não <kbd>jsconfigvars</kbd> ou <kbd>encodedjsconfigvars</kbd>. As variáveis de configuração são necessárias para o uso adequado do módulo.",
        "apiwarn-notfile": "\"$1\" não é um arquivo.",
+       "apiwarn-nothumb-noimagehandler": "Não foi possível criar uma miniatura porque $1 não possui um manipulador de imagem associado.",
+       "apiwarn-parse-nocontentmodel": "Não foi dado <var>title</var> ou <var>contentmodel</var>, assumindo $1.",
+       "apiwarn-parse-titlewithouttext": "<var>title</var> usado sem <var>text</var>, e as propriedades da página analisada foram solicitadas. Você quis usar <var>page</var> ao invés de <var>title</var>?",
+       "apiwarn-redirectsandrevids": "A resolução de redirecionamento não pode ser usada em conjunto com o parâmetro <var>revids</var>. Qualquer redirecionamento <var>revids</var> apontando para não foi resolvido.",
        "apiwarn-tokennotallowed": "A ação \"$1\" não é permitida para o usuário atual.",
+       "apiwarn-tokens-origin": "Os tokens não podem ser obtidos quando a política de origem não é aplicada.",
+       "apiwarn-toomanyvalues": "Muitos valores são fornecidos para o parâmetro <var>$1</var>. O limite é de $2.",
+       "apiwarn-truncatedresult": "Esse resultado foi truncado porque, de outra forma, seria maior do que o limite de $1 bytes.",
+       "apiwarn-unclearnowtimestamp": "Passar \"$2\" para o parâmetro timestamp <var>$1</var> está obsoleto. Se, por algum motivo, você precisa especificar explicitamente o tempo atual sem calcular o lado do cliente, use <kbd>now</kbd>.",
+       "apiwarn-unrecognizedvalues": "{{PLURAL:$3|Valor não reconhecido para o parâmetro|Valores não reconhecidos para o parâmetro}} <var>$1</var>: $2.",
+       "apiwarn-unsupportedarray": "Parâmetro <var>$1</var> usa sintaxe de array PHP não suportada.",
+       "apiwarn-urlparamwidth": "Ignorando o valor de largura definido em <var>$1urlparam</var> ($2) em favor do valor da largura derivado de <var>$1urlwidth</var>/<var>$1urlheight</var> ($3).",
+       "apiwarn-validationfailed-badchars": "caracteres inválidos na chave (apenas <code>a-z</code>, <code>A-Z</code>, <code>0-9</code>, <code>_</code> e <code>-</code> é permitido).",
+       "apiwarn-validationfailed-badpref": "não é uma preferência válida.",
+       "apiwarn-validationfailed-cannotset": "não pode ser configurado por este módulo.",
+       "apiwarn-validationfailed-keytoolong": "chave muito longa (não é permitido mais de $1 bytes).",
+       "apiwarn-validationfailed": "Erro de validação para <kbd>$1</kbd>: $2",
+       "apiwarn-wgDebugAPI": "<strong>Aviso de Segurança</strong>: <var>$wgDebugAPI</var> está ativado.",
        "api-feed-error-title": "Erro ($1)",
-       "api-credits-header": "Créditos"
+       "api-usage-docref": "Veja $1 para uso da API.",
+       "api-usage-mailinglist-ref": "Inscreva-se na lista de discussão mediawiki-api-announce em &lt;https://lists.wikimedia.org/mailman/listinfo/mediawiki-api-announce&gt; Para aviso de depreciações de API e alterações.",
+       "api-exception-trace": "$1 em $2($3)\n$4",
+       "api-credits-header": "Créditos",
+       "api-credits": "Desenvolvedores da API:\n* Yuri Astrakhan (criador, desenvolvedor-chefe Set 2006–Set 2007)\n* Roan Kattouw (desenvolvedor-chefe Set 2007–2009)\n* Victor Vasiliev\n* Bryan Tong Minh\n* Sam Reed\n* Brad Jorsch (desenvolvedor-chefe 2013–presente)\n\nPor favor, envie seus comentários, sugestões e perguntas para mediawiki-api@lists.wikimedia.org\nou apresente um relatório de erro em https://phabricator.wikimedia.org/."
 }
index 7ac2e83..086a726 100644 (file)
        "apihelp-opensearch-param-suggest": "Gör ingenting om <var>[[mw:Special:MyLanguage/Manual:$wgEnableOpenSearchSuggest|$wgEnableOpenSearchSuggest]]</var> är falskt.",
        "apihelp-opensearch-param-format": "Formatet för utdata.",
        "apihelp-opensearch-example-te": "Hitta sidor som börjar med <kbd>Te</kbd>.",
+       "apihelp-options-summary": "Ändra inställningar för nuvarande användare.",
        "apihelp-options-param-reset": "Återställer inställningarna till sidans standardvärden.",
        "apihelp-options-example-reset": "Återställ alla inställningar",
        "apihelp-options-example-complex": "Återställ alla inställningar, ställ sedan in <kbd>skin</kbd> och <kbd>nickname</kbd>.",
        "apihelp-query+prefixsearch-param-profile": "Sök profil att använda.",
        "apihelp-query+protectedtitles-param-limit": "Hur många sidor att returnera totalt.",
        "apihelp-query+protectedtitles-example-simple": "Lista skyddade titlar.",
+       "apihelp-query+random-summary": "Hämta en uppsättning slumpsidor.",
        "apihelp-query+recentchanges-example-simple": "Lista de senaste ändringarna.",
        "apihelp-query+redirects-summary": "Returnerar alla omdirigeringar till angivna sidor.",
        "apihelp-query+revisions-summary": "Hämta information om sidversion.",
        "apihelp-query+revisions-example-first5-not-localhost": "Hämta första 5 revideringarna av <kbd>huvudsidan</kbd> och som inte gjorts av anonym användare <kbd>127.0.0.1</kbd>",
+       "apihelp-query+search-summary": "Utför en heltextsökning.",
        "apihelp-query+search-paramvalue-prop-score": "Ignorerad.",
        "apihelp-query+search-paramvalue-prop-hasrelated": "Ignorerad.",
        "apihelp-query+siteinfo-summary": "Returnera allmän information om webbplatsen.",
index 57d4581..d8e3c38 100644 (file)
@@ -43,7 +43,6 @@ class LinkBatch {
        protected $caller;
 
        /**
-        * LinkBatch constructor.
         * @param LinkTarget[] $arr Initial items to be added to the batch
         */
        public function __construct( $arr = [] ) {
index d499340..58a67ad 100644 (file)
@@ -183,7 +183,6 @@ class LocalisationCache {
        private $mergeableKeys = null;
 
        /**
-        * Constructor.
         * For constructor parameters, see the documentation in DefaultSettings.php
         * for $wgLocalisationCacheConf.
         *
index afa03b8..aeb96b6 100644 (file)
@@ -59,7 +59,6 @@ class WikiTextStructure {
        ];
 
        /**
-        * WikiTextStructure constructor.
         * @param ParserOutput $parserOutput
         */
        public function __construct( ParserOutput $parserOutput ) {
index 36d6df2..434201a 100644 (file)
@@ -170,7 +170,7 @@ abstract class ContextSource implements IContextSource {
         * @deprecated since 1.27 use a StatsdDataFactory from MediaWikiServices (preferably injected)
         *
         * @since 1.25
-        * @return MediawikiStatsdDataFactory
+        * @return IBufferingStatsdDataFactory
         */
        public function getStats() {
                return MediaWikiServices::getInstance()->getStatsdDataFactory();
index 9c3c42a..0d0c149 100644 (file)
@@ -109,7 +109,7 @@ class DerivativeContext extends ContextSource implements MutableContext {
         *
         * @deprecated since 1.27 use a StatsdDataFactory from MediaWikiServices (preferably injected)
         *
-        * @return MediawikiStatsdDataFactory
+        * @return IBufferingStatsdDataFactory
         */
        public function getStats() {
                return MediaWikiServices::getInstance()->getStatsdDataFactory();
index d13e1a5..895e9e4 100644 (file)
@@ -131,7 +131,7 @@ interface IContextSource extends MessageLocalizer {
         * @deprecated since 1.27 use a StatsdDataFactory from MediaWikiServices (preferably injected)
         *
         * @since 1.25
-        * @return MediawikiStatsdDataFactory
+        * @return IBufferingStatsdDataFactory
         */
        public function getStats();
 
index 2cabfe1..2ac4192 100644 (file)
@@ -138,7 +138,7 @@ class RequestContext implements IContextSource, MutableContext {
         *
         * @deprecated since 1.27 use a StatsdDataFactory from MediaWikiServices (preferably injected)
         *
-        * @return MediawikiStatsdDataFactory
+        * @return IBufferingStatsdDataFactory
         */
        public function getStats() {
                return MediaWikiServices::getInstance()->getStatsdDataFactory();
index a3a37f6..e8f27ef 100644 (file)
@@ -76,9 +76,12 @@ class DeferredUpdates {
        public static function addUpdate( DeferrableUpdate $update, $stage = self::POSTSEND ) {
                global $wgCommandLineMode;
 
-               // This is a sub-DeferredUpdate, run it right after its parent update
                if ( self::$executeContext && self::$executeContext['stage'] >= $stage ) {
+                       // This is a sub-DeferredUpdate; run it right after its parent update.
+                       // Also, while post-send updates are running, push any "pre-send" jobs to the
+                       // active post-send queue to make sure they get run this round (or at all).
                        self::$executeContext['subqueue'][] = $update;
+
                        return;
                }
 
@@ -183,16 +186,6 @@ class DeferredUpdates {
                while ( $updates ) {
                        $queue = []; // clear the queue
 
-                       if ( $mode === 'enqueue' ) {
-                               try {
-                                       // Push enqueuable updates to the job queue and get the rest
-                                       $updates = self::enqueueUpdates( $updates );
-                               } catch ( Exception $e ) {
-                                       // Let other updates have a chance to run if this failed
-                                       MWExceptionHandler::rollbackMasterChangesAndLog( $e );
-                               }
-                       }
-
                        // Order will be DataUpdate followed by generic DeferrableUpdate tasks
                        $updatesByType = [ 'data' => [], 'generic' => [] ];
                        foreach ( $updates as $du ) {
@@ -212,13 +205,9 @@ class DeferredUpdates {
                        // Execute all remaining tasks...
                        foreach ( $updatesByType as $updatesForType ) {
                                foreach ( $updatesForType as $update ) {
-                                       self::$executeContext = [
-                                               'update' => $update,
-                                               'stage' => $stage,
-                                               'subqueue' => []
-                                       ];
+                                       self::$executeContext = [ 'stage' => $stage, 'subqueue' => [] ];
                                        /** @var DeferrableUpdate $update */
-                                       $guiError = self::runUpdate( $update, $lbFactory, $stage );
+                                       $guiError = self::runUpdate( $update, $lbFactory, $mode, $stage );
                                        $reportableError = $reportableError ?: $guiError;
                                        // Do the subqueue updates for $update until there are none
                                        while ( self::$executeContext['subqueue'] ) {
@@ -230,7 +219,7 @@ class DeferredUpdates {
                                                        $subUpdate->setTransactionTicket( $ticket );
                                                }
 
-                                               $guiError = self::runUpdate( $subUpdate, $lbFactory, $stage );
+                                               $guiError = self::runUpdate( $subUpdate, $lbFactory, $mode, $stage );
                                                $reportableError = $reportableError ?: $guiError;
                                        }
                                        self::$executeContext = null;
@@ -248,16 +237,26 @@ class DeferredUpdates {
        /**
         * @param DeferrableUpdate $update
         * @param LBFactory $lbFactory
+        * @param string $mode
         * @param integer $stage
         * @return ErrorPageError|null
         */
-       private static function runUpdate( DeferrableUpdate $update, LBFactory $lbFactory, $stage ) {
+       private static function runUpdate(
+               DeferrableUpdate $update, LBFactory $lbFactory, $mode, $stage
+       ) {
                $guiError = null;
                try {
-                       $fnameTrxOwner = get_class( $update ) . '::doUpdate';
-                       $lbFactory->beginMasterChanges( $fnameTrxOwner );
-                       $update->doUpdate();
-                       $lbFactory->commitMasterChanges( $fnameTrxOwner );
+                       if ( $mode === 'enqueue' && $update instanceof EnqueueableDataUpdate ) {
+                               // Run only the job enqueue logic to complete the update later
+                               $spec = $update->getAsJobSpecification();
+                               JobQueueGroup::singleton( $spec['wiki'] )->push( $spec['job'] );
+                       } else {
+                               // Run the bulk of the update now
+                               $fnameTrxOwner = get_class( $update ) . '::doUpdate';
+                               $lbFactory->beginMasterChanges( $fnameTrxOwner );
+                               $update->doUpdate();
+                               $lbFactory->commitMasterChanges( $fnameTrxOwner );
+                       }
                } catch ( Exception $e ) {
                        // Reporting GUI exceptions does not work post-send
                        if ( $e instanceof ErrorPageError && $stage === self::PRESEND ) {
index a08bd9e..d76af31 100644 (file)
@@ -211,7 +211,6 @@ class Diff {
        protected $bailoutComplexity = 0;
 
        /**
-        * Constructor.
         * Computes diff between sequences of strings.
         *
         * @param string[] $from_lines An array of strings.
index 2bed87a..4b18126 100644 (file)
@@ -61,9 +61,12 @@ class ErrorPageError extends MWException implements ILocalizedException {
        }
 
        public function report() {
-               global $wgOut;
-
-               $wgOut->showErrorPage( $this->title, $this->msg, $this->params );
-               $wgOut->output();
+               if ( self::isCommandLine() || defined( 'MW_API' ) ) {
+                       parent::report();
+               } else {
+                       global $wgOut;
+                       $wgOut->showErrorPage( $this->title, $this->msg, $this->params );
+                       $wgOut->output();
+               }
        }
 }
index cbdb53e..d2cb5d1 100644 (file)
@@ -56,7 +56,7 @@ class LocalizedException extends Exception implements ILocalizedException {
                // customizations, and make a basic attempt to turn markup into text.
                $msg = $this->getMessageObject()->inLanguage( 'en' )->useDatabase( false )->text();
                $msg = preg_replace( '!</?(var|kbd|samp|code)>!', '"', $msg );
-               $msg = html_entity_decode( strip_tags( $msg ), ENT_QUOTES | ENT_HTML5 );
+               $msg = Sanitizer::stripAllTags( $msg );
                parent::__construct( $msg, $code, $previous );
        }
 
index f71e1dc..33177d3 100644 (file)
@@ -215,7 +215,6 @@ class LocalFile extends File {
        }
 
        /**
-        * Constructor.
         * Do not call this except from inside a repo class.
         * @param Title $title
         * @param FileRepo $repo
index 661c3ec..6ac78c4 100644 (file)
@@ -47,8 +47,6 @@ class CliInstaller extends Installer {
        ];
 
        /**
-        * Constructor.
-        *
         * @param string $siteName
         * @param string $admin
         * @param array $option
@@ -180,7 +178,7 @@ class CliInstaller extends Installer {
 
                $text = preg_replace( '/<a href="(.*?)".*?>(.*?)<\/a>/', '$2 &lt;$1&gt;', $text );
 
-               return html_entity_decode( strip_tags( $text ), ENT_QUOTES );
+               return Sanitizer::stripAllTags( $text );
        }
 
        /**
index a9710eb..bdaeaca 100644 (file)
@@ -41,8 +41,6 @@ class LocalSettingsGenerator {
        protected $installer;
 
        /**
-        * Constructor.
-        *
         * @param Installer $installer
         */
        public function __construct( Installer $installer ) {
index c94f0bf..a311ce9 100644 (file)
@@ -130,8 +130,6 @@ class WebInstaller extends Installer {
        protected $currentPageName;
 
        /**
-        * Constructor.
-        *
         * @param WebRequest $request
         */
        public function __construct( WebRequest $request ) {
index cf4eb6d..ef286e3 100644 (file)
@@ -21,7 +21,8 @@
                        "Rxy",
                        "Foresttttttt",
                        "ネイ",
-                       "Suchichi02"
+                       "Suchichi02",
+                       "Omotecho"
                ]
        },
        "config-desc": "MediaWiki のインストーラー",
        "config-subscribe-help": "これは、リリースの告知 (重要なセキュリティに関する案内を含む) に使用される、流量が少ないメーリングリストです。\nこのメーリングリストを購読して、新しいバージョンが出た場合にMediaWikiを更新してください。",
        "config-subscribe-noemail": "メールアドレスなしでリリースアナウンスのメーリングリストを購読しようとしています。\nメーリングリストを購読する場合にはメールアドレスを入力してください。",
        "config-pingback": "このインストールに関するデータをMediaWikiの開発者と共有する。",
-       "config-pingback-help": "もし君がこのオプションを選択したら、メデイアウィキは定期的にhttps://www.mediawiki.orgとメデイアウィキのインスタンスに関する基本的のデータをピンします。このデータはシステムのタイプ、PHPのバージョンと選択されたデータベースのバックエンドなどを含んでいます。メデイアウィキファンデーションは将来の",
+       "config-pingback-help": "もしこのオプションを選択すると、メディアウィキは定期的にhttps://www.mediawiki.orgとメディアウィキのインスタンスに関する基本データを呼び出します。このデータは例えばシステムのタイプ、PHPのバージョンと選択したデータベースのバックエンドなどを含んでいます。メディアウィキ財団はメディアウィキ開発者とこの情報を共有し、将来の開発の方向付けに役立たせます。ご使用のシステムに送るデータは次のとおりです。\n<pre>$1</pre>",
        "config-almost-done": "これでほぼ終わりました!\n残りの設定を飛ばして、ウィキを今すぐインストールできます。",
        "config-optional-continue": "私にもっと質問してください。",
        "config-optional-skip": "もう飽きてしまったので、とにかくウィキをインストールしてください。",
index 76e23cf..f76d9a2 100644 (file)
@@ -67,7 +67,6 @@ abstract class GenericArrayObject extends ArrayObject {
        }
 
        /**
-        * Constructor.
         * @see ArrayObject::__construct
         *
         * @since 1.20
index 12a5cad..6b4281f 100644 (file)
@@ -46,8 +46,6 @@ class MemoizedCallable {
        private $callableName;
 
        /**
-        * Constructor.
-        *
         * @throws InvalidArgumentException if $callable is not a callable.
         * @param callable $callable Function or method to memoize.
         * @param int $ttl TTL in seconds. Defaults to 3600 (1hr). Capped at 86400 (24h).
index fb4122d..eb0e954 100644 (file)
@@ -424,6 +424,13 @@ class DBConnRef implements IDatabase {
                return $this->__call( __FUNCTION__, func_get_args() );
        }
 
+       public function unionConditionPermutations(
+               $table, $vars, array $permute_conds, $extra_conds = '', $fname = __METHOD__,
+               $options = [], $join_conds = []
+       ) {
+               return $this->__call( __FUNCTION__, func_get_args() );
+       }
+
        public function conditional( $cond, $trueVal, $falseVal ) {
                return $this->__call( __FUNCTION__, func_get_args() );
        }
index 559c28b..723a4a6 100644 (file)
@@ -2481,6 +2481,77 @@ abstract class Database implements IDatabase, IMaintainableDatabase, LoggerAware
                return '(' . implode( $glue, $sqls ) . ')';
        }
 
+       public function unionConditionPermutations(
+               $table, $vars, array $permute_conds, $extra_conds = '', $fname = __METHOD__,
+               $options = [], $join_conds = []
+       ) {
+               // First, build the Cartesian product of $permute_conds
+               $conds = [ [] ];
+               foreach ( $permute_conds as $field => $values ) {
+                       if ( !$values ) {
+                               // Skip empty $values
+                               continue;
+                       }
+                       $values = array_unique( $values ); // For sanity
+                       $newConds = [];
+                       foreach ( $conds as $cond ) {
+                               foreach ( $values as $value ) {
+                                       $cond[$field] = $value;
+                                       $newConds[] = $cond; // Arrays are by-value, not by-reference, so this works
+                               }
+                       }
+                       $conds = $newConds;
+               }
+
+               $extra_conds = $extra_conds === '' ? [] : (array)$extra_conds;
+
+               // If there's just one condition and no subordering, hand off to
+               // selectSQLText directly.
+               if ( count( $conds ) === 1 &&
+                       ( !isset( $options['INNER ORDER BY'] ) || !$this->unionSupportsOrderAndLimit() )
+               ) {
+                       return $this->selectSQLText(
+                               $table, $vars, $conds[0] + $extra_conds, $fname, $options, $join_conds
+                       );
+               }
+
+               // Otherwise, we need to pull out the order and limit to apply after
+               // the union. Then build the SQL queries for each set of conditions in
+               // $conds. Then union them together (using UNION ALL, because the
+               // product *should* already be distinct).
+               $orderBy = $this->makeOrderBy( $options );
+               $limit = isset( $options['LIMIT'] ) ? $options['LIMIT'] : null;
+               $offset = isset( $options['OFFSET'] ) ? $options['OFFSET'] : false;
+               $all = empty( $options['NOTALL'] ) && !in_array( 'NOTALL', $options );
+               if ( !$this->unionSupportsOrderAndLimit() ) {
+                       unset( $options['ORDER BY'], $options['LIMIT'], $options['OFFSET'] );
+               } else {
+                       if ( array_key_exists( 'INNER ORDER BY', $options ) ) {
+                               $options['ORDER BY'] = $options['INNER ORDER BY'];
+                       }
+                       if ( $limit !== null && is_numeric( $offset ) && $offset != 0 ) {
+                               // We need to increase the limit by the offset rather than
+                               // using the offset directly, otherwise it'll skip incorrectly
+                               // in the subqueries.
+                               $options['LIMIT'] = $limit + $offset;
+                               unset( $options['OFFSET'] );
+                       }
+               }
+
+               $sqls = [];
+               foreach ( $conds as $cond ) {
+                       $sqls[] = $this->selectSQLText(
+                               $table, $vars, $cond + $extra_conds, $fname, $options, $join_conds
+                       );
+               }
+               $sql = $this->unionQueries( $sqls, $all ) . $orderBy;
+               if ( $limit !== null ) {
+                       $sql = $this->limitResult( $sql, $limit, $offset );
+               }
+
+               return $sql;
+       }
+
        public function conditional( $cond, $trueVal, $falseVal ) {
                if ( is_array( $cond ) ) {
                        $cond = $this->makeList( $cond, self::LIST_AND );
index 7c6413c..b82603e 100644 (file)
@@ -1252,7 +1252,7 @@ interface IDatabase {
         * @param array $selectJoinConds Join conditions for the SELECT part of the query, see
         *    IDatabase::select() for details.
         *
-        * @return IResultWrapper
+        * @return bool
         */
        public function insertSelect( $destTable, $srcTable, $varMap, $conds,
                $fname = __METHOD__,
@@ -1276,6 +1276,37 @@ interface IDatabase {
         */
        public function unionQueries( $sqls, $all );
 
+       /**
+        * Construct a UNION query for permutations of conditions
+        *
+        * Databases sometimes have trouble with queries that have multiple values
+        * for multiple condition parameters combined with limits and ordering.
+        * This method constructs queries for the Cartesian product of the
+        * conditions and unions them all together.
+        *
+        * @see IDatabase::select()
+        * @since 1.30
+        * @param string|array $table Table name
+        * @param string|array $vars Field names
+        * @param array $permute_conds Conditions for the Cartesian product. Keys
+        *  are field names, values are arrays of the possible values for that
+        *  field.
+        * @param string|array $extra_conds Additional conditions to include in the
+        *  query.
+        * @param string $fname Caller function name
+        * @param string|array $options Query options. In addition to the options
+        *  recognized by IDatabase::select(), the following may be used:
+        *   - NOTALL: Set to use UNION instead of UNION ALL.
+        *   - INNER ORDER BY: If specified and supported, subqueries will use this
+        *     instead of ORDER BY.
+        * @param string|array $join_conds Join conditions
+        * @return string SQL query string.
+        */
+       public function unionConditionPermutations(
+               $table, $vars, array $permute_conds, $extra_conds = '', $fname = __METHOD__,
+               $options = [], $join_conds = []
+       );
+
        /**
         * Returns an SQL expression for a simple conditional. This doesn't need
         * to be overridden unless CASE isn't supported in your DBMS.
index f687254..73c6a8f 100644 (file)
@@ -32,7 +32,7 @@ use Liuggio\StatsdClient\Factory\StatsdDataFactory;
  *
  * @since 1.25
  */
-class BufferingStatsdDataFactory extends StatsdDataFactory implements MediawikiStatsdDataFactory {
+class BufferingStatsdDataFactory extends StatsdDataFactory implements IBufferingStatsdDataFactory {
        protected $buffer = [];
        /**
         * Collection enabled?
diff --git a/includes/libs/stats/IBufferingStatsdDataFactory.php b/includes/libs/stats/IBufferingStatsdDataFactory.php
new file mode 100644 (file)
index 0000000..64ee267
--- /dev/null
@@ -0,0 +1,30 @@
+<?php
+use Liuggio\StatsdClient\Entity\StatsdData;
+use Liuggio\StatsdClient\Factory\StatsdDataFactoryInterface;
+
+/**
+ * MediaWiki adaptation of StatsdDataFactory that provides buffering functionality.
+ *
+ * @see BufferingStatsdDataFactory
+ */
+interface IBufferingStatsdDataFactory extends StatsdDataFactoryInterface {
+       /**
+        * Check whether this data factory has any data.
+        * @return boolean
+        */
+       public function hasData();
+
+       /**
+        * Return data from the factory.
+        * @return StatsdData[]
+        */
+       public function getData();
+
+       /**
+        * Set collection enable status.
+        * @param bool $enabled Will collection be enabled?
+        * @return void
+        */
+       public function setEnabled( $enabled );
+
+}
diff --git a/includes/libs/stats/MediawikiStatsdDataFactory.php b/includes/libs/stats/MediawikiStatsdDataFactory.php
deleted file mode 100644 (file)
index d560f18..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-<?php
-use Liuggio\StatsdClient\Entity\StatsdData;
-use Liuggio\StatsdClient\Factory\StatsdDataFactoryInterface;
-
-/**
- * Mediawiki adaptation of Statsd data factory.
- */
-interface MediawikiStatsdDataFactory extends StatsdDataFactoryInterface {
-       /**
-        * Check whether this data factory has any data.
-        * @return boolean
-        */
-       public function hasData();
-
-       /**
-        * Return data from the factory.
-        * @return StatsdData[]
-        */
-       public function getData();
-
-       /**
-        * Set collection enable status.
-        * @param bool $enabled Will collection be enabled?
-        * @return void
-        */
-       public function setEnabled( $enabled );
-
-}
index 4fa0248..f2e35b6 100644 (file)
@@ -8,7 +8,7 @@ use Liuggio\StatsdClient\Factory\StatsdDataFactoryInterface;
  * @author Addshore
  * @since 1.27
  */
-class NullStatsdDataFactory implements MediawikiStatsdDataFactory {
+class NullStatsdDataFactory implements IBufferingStatsdDataFactory {
 
        /**
         * This function creates a 'timing' StatsdData.
index debe869..e12766a 100644 (file)
@@ -130,8 +130,6 @@ class XMPReader implements LoggerAwareInterface {
        private $logger;
 
        /**
-        * Constructor.
-        *
         * Primary job is to initialize the XMLParser
         */
        function __construct( LoggerInterface $logger = null ) {
index e7095f0..fa94fe5 100644 (file)
@@ -437,8 +437,6 @@ class ManualLogEntry extends LogEntryBase {
        protected $legacy = false;
 
        /**
-        * Constructor.
-        *
         * @since 1.19
         * @param string $type
         * @param string $subtype
index 1463499..22e5b45 100644 (file)
@@ -23,6 +23,7 @@
  * @file
  */
 
+use MediaWiki\Linker\LinkRenderer;
 use MediaWiki\MediaWikiServices;
 use Wikimedia\Rdbms\IDatabase;
 
@@ -49,17 +50,21 @@ class LogEventsList extends ContextSource {
        protected $allowedActions = null;
 
        /**
-        * Constructor.
+        * @var LinkRenderer|null
+        */
+       private $linkRenderer;
+
+       /**
         * The first two parameters used to be $skin and $out, but now only a context
         * is needed, that's why there's a second unused parameter.
         *
         * @param IContextSource|Skin $context Context to use; formerly it was
         *   a Skin object. Use of Skin is deprecated.
-        * @param null $unused Unused; used to be an OutputPage object.
+        * @param LinkRenderer|null $linkRenderer, previously unused
         * @param int $flags Can be a combination of self::NO_ACTION_LINK,
         *   self::NO_EXTRA_USER_LINKS or self::USE_CHECKBOXES.
         */
-       public function __construct( $context, $unused = null, $flags = 0 ) {
+       public function __construct( $context, $linkRenderer = null, $flags = 0 ) {
                if ( $context instanceof IContextSource ) {
                        $this->setContext( $context );
                } else {
@@ -69,6 +74,21 @@ class LogEventsList extends ContextSource {
 
                $this->flags = $flags;
                $this->showTagEditUI = ChangeTags::showTagEditingUI( $this->getUser() );
+               if ( $linkRenderer instanceof LinkRenderer ) {
+                       $this->linkRenderer = $linkRenderer;
+               }
+       }
+
+       /**
+        * @since 1.30
+        * @return LinkRenderer
+        */
+       protected function getLinkRenderer() {
+               if ( $this->linkRenderer !== null ) {
+                       return $this->linkRenderer;
+               } else {
+                       return MediaWikiServices::getInstance()->getLinkRenderer();
+               }
        }
 
        /**
@@ -149,7 +169,7 @@ class LogEventsList extends ContextSource {
                // Option value -> message mapping
                $links = [];
                $hiddens = ''; // keep track for "go" button
-               $linkRenderer = MediaWikiServices::getInstance()->getLinkRenderer();
+               $linkRenderer = $this->getLinkRenderer();
                foreach ( $filter as $type => $val ) {
                        // Should the below assignment be outside the foreach?
                        // Then it would have to be copied. Not certain what is more expensive.
@@ -359,6 +379,7 @@ class LogEventsList extends ContextSource {
                $entry = DatabaseLogEntry::newFromRow( $row );
                $formatter = LogFormatter::newFromEntry( $entry );
                $formatter->setContext( $this->getContext() );
+               $formatter->setLinkRenderer( $this->getLinkRenderer() );
                $formatter->setShowUserToolLinks( !( $this->flags & self::NO_EXTRA_USER_LINKS ) );
 
                $time = htmlspecialchars( $this->getLanguage()->userTimeAndDate(
@@ -607,8 +628,11 @@ class LogEventsList extends ContextSource {
                        $context = RequestContext::getMain();
                }
 
+               // FIXME: Figure out how to inject this
+               $linkRenderer = MediaWikiServices::getInstance()->getLinkRenderer();
+
                # Insert list of top 50 (or top $lim) items
-               $loglist = new LogEventsList( $context, null, $flags );
+               $loglist = new LogEventsList( $context, $linkRenderer, $flags );
                $pager = new LogPager( $loglist, $types, $user, $page, '', $conds );
                if ( !$useRequestParams ) {
                        # Reset vars that may have been taken from the request
@@ -686,7 +710,7 @@ class LogEventsList extends ContextSource {
                                $urlParam = array_merge( $urlParam, $extraUrlParams );
                        }
 
-                       $s .= MediaWikiServices::getInstance()->getLinkRenderer()->makeKnownLink(
+                       $s .= $linkRenderer->makeKnownLink(
                                SpecialPage::getTitleFor( 'Log' ),
                                $context->msg( 'log-fulllog' )->text(),
                                [],
index 68404bf..2a47943 100644 (file)
@@ -22,6 +22,8 @@
  * @license http://www.gnu.org/copyleft/gpl.html GNU General Public License 2.0 or later
  * @since 1.19
  */
+use MediaWiki\Linker\LinkRenderer;
+use MediaWiki\MediaWikiServices;
 
 /**
  * Implements the default log formatting.
@@ -101,6 +103,11 @@ class LogFormatter {
        /** @var string */
        protected $irctext = false;
 
+       /**
+        * @var LinkRenderer|null
+        */
+       private $linkRenderer;
+
        protected function __construct( LogEntry $entry ) {
                $this->entry = $entry;
                $this->context = RequestContext::getMain();
@@ -114,6 +121,26 @@ class LogFormatter {
                $this->context = $context;
        }
 
+       /**
+        * @since 1.30
+        * @param LinkRenderer $linkRenderer
+        */
+       public function setLinkRenderer( LinkRenderer $linkRenderer ) {
+               $this->linkRenderer = $linkRenderer;
+       }
+
+       /**
+        * @since 1.30
+        * @return LinkRenderer
+        */
+       public function getLinkRenderer() {
+               if ( $this->linkRenderer !== null ) {
+                       return $this->linkRenderer;
+               } else {
+                       return MediaWikiServices::getInstance()->getLinkRenderer();
+               }
+       }
+
        /**
         * Set the visibility restrictions for displaying content.
         * If set to public, and an item is deleted, then it will be replaced
index 6c10301..70795ec 100644 (file)
@@ -148,7 +148,7 @@ class SqlBagOStuff extends BagOStuff {
        protected function getSeparateMainLB() {
                global $wgDBtype;
 
-               if ( $wgDBtype === 'mysql' && $this->usesMainDB() ) {
+               if ( $this->usesMainDB() && $wgDBtype !== 'sqlite' ) {
                        if ( !$this->separateMainLB ) {
                                // We must keep a separate connection to MySQL in order to avoid deadlocks
                                $lbFactory = MediaWikiServices::getInstance()->getDBLoadBalancerFactory();
@@ -156,8 +156,7 @@ class SqlBagOStuff extends BagOStuff {
                        }
                        return $this->separateMainLB;
                } else {
-                       // However, SQLite has an opposite behavior. And PostgreSQL needs to know
-                       // if we are in transaction or not (@TODO: find some PostgreSQL work-around).
+                       // However, SQLite has an opposite behavior due to DB-level locking
                        return null;
                }
        }
index 9ea65e0..4a78ff8 100644 (file)
@@ -4502,12 +4502,16 @@ class Parser {
                # which may corrupt this parser instance via its wfMessage()->text() call-
 
                # Signatures
-               $sigText = $this->getUserSig( $user );
-               $text = strtr( $text, [
-                       '~~~~~' => $d,
-                       '~~~~' => "$sigText $d",
-                       '~~~' => $sigText
-               ] );
+               if ( strpos( $text, '~~~' ) !== false ) {
+                       $sigText = $this->getUserSig( $user );
+                       $text = strtr( $text, [
+                               '~~~~~' => $d,
+                               '~~~~' => "$sigText $d",
+                               '~~~' => $sigText
+                       ] );
+                       # The main two signature forms used above are time-sensitive
+                       $this->mOutput->setFlag( 'user-signature' );
+               }
 
                # Context links ("pipe tricks"): [[|name]] and [[name (context)|]]
                $tc = '[' . Title::legalChars() . ']';
index 3b84c4b..c680129 100644 (file)
@@ -21,6 +21,8 @@
  * @ingroup Cache Parser
  */
 
+use MediaWiki\MediaWikiServices;
+
 /**
  * @ingroup Cache Parser
  * @todo document
@@ -48,18 +50,21 @@ class ParserCache {
 
        /** @var BagOStuff */
        private $mMemc;
+
+       /**
+        * Anything cached prior to this is invalidated
+        *
+        * @var string
+        */
+       private $cacheEpoch;
        /**
         * Get an instance of this object
         *
+        * @deprecated since 1.30, use MediaWikiServices instead
         * @return ParserCache
         */
        public static function singleton() {
-               static $instance;
-               if ( !isset( $instance ) ) {
-                       global $parserMemc;
-                       $instance = new ParserCache( $parserMemc );
-               }
-               return $instance;
+               return MediaWikiServices::getInstance()->getParserCache();
        }
 
        /**
@@ -68,11 +73,13 @@ class ParserCache {
         * This class use an invalidation strategy that is compatible with
         * MultiWriteBagOStuff in async replication mode.
         *
-        * @param BagOStuff $memCached
+        * @param BagOStuff $cache
+        * @param string $cacheEpoch Anything before this timestamp is invalidated
         * @throws MWException
         */
-       protected function __construct( BagOStuff $memCached ) {
-               $this->mMemc = $memCached;
+       public function __construct( BagOStuff $cache, $cacheEpoch = '20030516000000' ) {
+               $this->mMemc = $cache;
+               $this->cacheEpoch = $cacheEpoch;
        }
 
        /**
@@ -159,8 +166,6 @@ class ParserCache {
         * @since 1.30 Changed $useOutdated to an int and added the non-boolean values
         */
        public function getKey( $article, $popts, $useOutdated = self::USE_ANYTHING ) {
-               global $wgCacheEpoch;
-
                if ( is_bool( $useOutdated ) ) {
                        $useOutdated = $useOutdated ? self::USE_ANYTHING : self::USE_CURRENT_ONLY;
                }
@@ -180,7 +185,7 @@ class ParserCache {
                                $cacheTime = $optionsKey->getCacheTime();
                                wfDebugLog( "ParserCache",
                                        "Parser options key expired, touched " . $article->getTouched()
-                                       . ", epoch $wgCacheEpoch, cached $cacheTime\n" );
+                                       . ", epoch {$this->cacheEpoch}, cached $cacheTime\n" );
                                return false;
                        } elseif ( $useOutdated < self::USE_OUTDATED &&
                                $optionsKey->isDifferentRevision( $article->getLatest() )
@@ -221,8 +226,6 @@ class ParserCache {
         * @return ParserOutput|bool False on failure
         */
        public function get( $article, $popts, $useOutdated = false ) {
-               global $wgCacheEpoch;
-
                $canCache = $article->checkTouched();
                if ( !$canCache ) {
                        // It's a redirect now
@@ -264,7 +267,7 @@ class ParserCache {
                        $cacheTime = $value->getCacheTime();
                        wfDebugLog( "ParserCache",
                                "ParserOutput key expired, touched $touched, "
-                               . "epoch $wgCacheEpoch, cached $cacheTime\n" );
+                               . "epoch {$this->cacheEpoch}, cached $cacheTime\n" );
                        $value = false;
                } elseif ( !$useOutdated && $value->isDifferentRevision( $article->getLatest() ) ) {
                        wfIncrStats( "pcache.miss.revid" );
@@ -342,4 +345,15 @@ class ParserCache {
                        wfDebug( "Parser output was marked as uncacheable and has not been saved.\n" );
                }
        }
+
+       /**
+        * Get the backend BagOStuff instance that
+        * powers the parser cache
+        *
+        * @since 1.30
+        * @return BagOStuff
+        */
+       public function getCacheStorage() {
+               return $this->mMemc;
+       }
 }
index 1967a95..ca6e59f 100644 (file)
@@ -34,6 +34,7 @@ class ResourceLoaderSkinModule extends ResourceLoaderFileModule {
        public function getStyles( ResourceLoaderContext $context ) {
                $logo = $this->getLogo( $this->getConfig() );
                $styles = parent::getStyles( $context );
+               $this->normalizeStyles( $styles );
 
                $default = !is_array( $logo ) ? $logo : $logo['1x'];
                $styles['all'][] = '.mw-wiki-logo { background-image: ' .
@@ -66,6 +67,22 @@ class ResourceLoaderSkinModule extends ResourceLoaderFileModule {
                return $styles;
        }
 
+       /**
+        * Ensure all media keys use array values.
+        *
+        * Normalises arrays returned by the ResourceLoaderFileModule::getStyles() method.
+        *
+        * @param array &$styles Associative array, keys are strings (media queries),
+        *   values are strings or arrays
+        */
+       private function normalizeStyles( &$styles ) {
+               foreach ( $styles as $key => $val ) {
+                       if ( !is_array( $val ) ) {
+                               $styles[$key] = [ $val ];
+                       }
+               }
+       }
+
        /**
         * @param Config $conf
         * @return string|array Single url if no variants are defined
index 8eb8b17..a3979f7 100644 (file)
@@ -12,7 +12,6 @@ class PerRowAugmentor implements ResultSetAugmentor {
        private $rowAugmentor;
 
        /**
-        * PerRowAugmentor constructor.
         * @param ResultAugmentor $augmentor Per-result augmentor to use.
         */
        public function __construct( ResultAugmentor $augmentor ) {
index e3e01e8..87d6344 100644 (file)
@@ -39,7 +39,6 @@ abstract class SearchIndexFieldDefinition implements SearchIndexField {
        private $mergeCallback;
 
        /**
-        * SearchIndexFieldDefinition constructor.
         * @param string $name Field name
         * @param int    $type Index type
         */
index 6734d5f..f31a77d 100644 (file)
@@ -40,8 +40,6 @@ class MediaWikiSite extends Site {
        const PATH_PAGE = 'page_path';
 
        /**
-        * Constructor.
-        *
         * @since 1.21
         *
         * @param string $type
index 28f19f9..31e1590 100644 (file)
@@ -122,8 +122,6 @@ class Site implements Serializable {
        protected $internalId = null;
 
        /**
-        * Constructor.
-        *
         * @since 1.21
         *
         * @param string $type
index 0be0646..8c4cc11 100644 (file)
@@ -1287,9 +1287,14 @@ abstract class ChangesListSpecialPage extends SpecialPage {
                $legend .= Html::closeElement( 'dl' ) . "\n";
 
                # Collapsibility
+               $legendHeading = $this->getUser()->getOption(
+                       'rcenhancedfilters'
+               ) ?
+                       $context->msg( 'rcfilters-legend-heading' )->parse() :
+                       $context->msg( 'recentchanges-legend-heading' )->parse();
                $legend =
                        '<div class="mw-changeslist-legend">' .
-                               $context->msg( 'recentchanges-legend-heading' )->parse() .
+                               $legendHeading .
                                '<div class="mw-collapsible-content">' . $legend . '</div>' .
                        '</div>';
 
index 1710b39..511cfbf 100644 (file)
@@ -165,7 +165,7 @@ class SpecialLog extends SpecialPage {
                # Create a LogPager item to get the results and a LogEventsList item to format them...
                $loglist = new LogEventsList(
                        $this->getContext(),
-                       null,
+                       $this->getLinkRenderer(),
                        LogEventsList::USE_CHECKBOXES
                );
 
index 5192eb9..44e0db8 100644 (file)
@@ -307,6 +307,7 @@ class MediaStatisticsPage extends QueryPage {
                                // mediastatistics-header-video, mediastatistics-header-multimedia,
                                // mediastatistics-header-office, mediastatistics-header-text,
                                // mediastatistics-header-executable, mediastatistics-header-archive,
+                               // mediastatistics-header-3d,
                                $this->msg( 'mediastatistics-header-' . strtolower( $mediaType ) )->text()
                        )
                );
index 8528ce2..0a653e7 100644 (file)
@@ -33,6 +33,8 @@ class SpecialNewFiles extends IncludableSpecialPage {
        }
 
        public function execute( $par ) {
+               $context = new DerivativeContext( $this->getContext() );
+
                $this->setHeaders();
                $this->outputHeader();
                $mimeAnalyzer = MediaWiki\MediaWikiServices::getInstance()->getMimeAnalyzer();
@@ -71,6 +73,15 @@ class SpecialNewFiles extends IncludableSpecialPage {
 
                        $opts->setValue( 'start', $start, true );
                        $opts->setValue( 'end', $end, true );
+
+                       // also swap values in request object, which is used by HTMLForm
+                       // to pre-populate the fields with the previous input
+                       $request = $context->getRequest();
+                       $context->setRequest( new DerivativeRequest(
+                               $request,
+                               [ 'start' => $start, 'end' => $end ] + $request->getValues(),
+                               $request->wasPosted()
+                       ) );
                }
 
                // if all media types have been selected, wipe out the array to prevent
@@ -87,10 +98,10 @@ class SpecialNewFiles extends IncludableSpecialPage {
 
                if ( !$this->including() ) {
                        $this->setTopText();
-                       $this->buildForm();
+                       $this->buildForm( $context );
                }
 
-               $pager = new NewFilesPager( $this->getContext(), $opts );
+               $pager = new NewFilesPager( $context, $opts );
 
                $out->addHTML( $pager->getBody() );
                if ( !$this->including() ) {
@@ -98,13 +109,14 @@ class SpecialNewFiles extends IncludableSpecialPage {
                }
        }
 
-       protected function buildForm() {
+       protected function buildForm( IContextSource $context ) {
                $mediaTypesText = array_map( function ( $type ) {
                        // mediastatistics-header-unknown, mediastatistics-header-bitmap,
                        // mediastatistics-header-drawing, mediastatistics-header-audio,
                        // mediastatistics-header-video, mediastatistics-header-multimedia,
                        // mediastatistics-header-office, mediastatistics-header-text,
                        // mediastatistics-header-executable, mediastatistics-header-archive,
+                       // mediastatistics-header-3d,
                        return $this->msg( 'mediastatistics-header-' . strtolower( $type ) )->text();
                }, $this->mediaTypes );
                $mediaTypesOptions = array_combine( $mediaTypesText, $this->mediaTypes );
@@ -184,7 +196,7 @@ class SpecialNewFiles extends IncludableSpecialPage {
                        unset( $formDescriptor['hidepatrolled'] );
                }
 
-               HTMLForm::factory( 'ooui', $formDescriptor, $this->getContext() )
+               HTMLForm::factory( 'ooui', $formDescriptor, $context )
                        // For the 'multiselect' field values to be preserved on submit
                        ->setFormIdentifier( 'specialnewimages' )
                        ->setWrapperLegendMsg( 'newimages-legend' )
@@ -192,8 +204,6 @@ class SpecialNewFiles extends IncludableSpecialPage {
                        ->setMethod( 'get' )
                        ->prepareForm()
                        ->displayForm( false );
-
-               $this->getOutput()->addModules( 'mediawiki.special.newFiles' );
        }
 
        protected function getGroupName() {
index d856d4b..2fe56f9 100644 (file)
@@ -138,9 +138,6 @@ class SpecialRecentChanges extends ChangesListSpecialPage {
         * @param string $subpage
         */
        public function execute( $subpage ) {
-               global $wgStructuredChangeFiltersEnableSaving,
-                       $wgStructuredChangeFiltersEnableExperimentalViews;
-
                // Backwards-compatibility: redirect to new feed URLs
                $feedFormat = $this->getRequest()->getVal( 'feed' );
                if ( !$this->including() && $feedFormat ) {
@@ -180,19 +177,28 @@ class SpecialRecentChanges extends ChangesListSpecialPage {
                                )
                        );
 
+                       $experimentalStructuredChangeFilters =
+                               $this->getConfig()->get( 'StructuredChangeFiltersEnableExperimentalViews' );
+
                        $out->addJsConfigVars( 'wgStructuredChangeFilters', $jsData['groups'] );
                        $out->addJsConfigVars(
                                'wgStructuredChangeFiltersEnableSaving',
-                               $wgStructuredChangeFiltersEnableSaving
+                               $this->getConfig()->get( 'StructuredChangeFiltersEnableSaving' )
                        );
                        $out->addJsConfigVars(
                                'wgStructuredChangeFiltersEnableExperimentalViews',
-                               $wgStructuredChangeFiltersEnableExperimentalViews
+                               $experimentalStructuredChangeFilters
                        );
                        $out->addJsConfigVars(
-                               'wgRCFiltersChangeTags',
-                               $this->buildChangeTagList()
+                               'wgStructuredChangeFiltersEnableLiveUpdate',
+                               $this->getConfig()->get( 'StructuredChangeFiltersEnableLiveUpdate' )
                        );
+                       if ( $experimentalStructuredChangeFilters ) {
+                               $out->addJsConfigVars(
+                                       'wgRCFiltersChangeTags',
+                                       $this->buildChangeTagList()
+                               );
+                       }
                }
        }
 
@@ -202,10 +208,6 @@ class SpecialRecentChanges extends ChangesListSpecialPage {
         * @return Array Tag data
         */
        protected function buildChangeTagList() {
-               function stripAllHtml( $input ) {
-                       return trim( html_entity_decode( strip_tags( $input ) ) );
-               }
-
                $explicitlyDefinedTags = array_fill_keys( ChangeTags::listExplicitlyDefinedTags(), 0 );
                $softwareActivatedTags = array_fill_keys( ChangeTags::listSoftwareActivatedTags(), 0 );
                $tagStats = ChangeTags::tagUsageStatistics();
@@ -228,8 +230,10 @@ class SpecialRecentChanges extends ChangesListSpecialPage {
 
                                $result[] = [
                                        'name' => $tagName,
-                                       'label' => stripAllHtml( ChangeTags::tagDescription( $tagName, $this->getContext() ) ),
-                                       'description' => $desc ? stripAllHtml( $desc->parse() ) : '',
+                                       'label' => Sanitizer::stripAllTags(
+                                               ChangeTags::tagDescription( $tagName, $this->getContext() )
+                                       ),
+                                       'description' => $desc ? Sanitizer::stripAllTags( $desc->parse() ) : '',
                                        'cssClass' => Sanitizer::escapeClass( 'mw-tag-' . $tagName ),
                                        'hits' => $hits,
                                ];
index 3282a7a..f980e71 100644 (file)
@@ -65,6 +65,57 @@ class ShortPagesPage extends QueryPage {
                ];
        }
 
+       public function reallyDoQuery( $limit, $offset = false ) {
+               $fname = static::class . '::reallyDoQuery';
+               $dbr = $this->getRecacheDB();
+               $query = $this->getQueryInfo();
+               $order = $this->getOrderFields();
+
+               if ( $this->sortDescending() ) {
+                       foreach ( $order as &$field ) {
+                               $field .= ' DESC';
+                       }
+               }
+
+               $tables = isset( $query['tables'] ) ? (array)$query['tables'] : [];
+               $fields = isset( $query['fields'] ) ? (array)$query['fields'] : [];
+               $conds = isset( $query['conds'] ) ? (array)$query['conds'] : [];
+               $options = isset( $query['options'] ) ? (array)$query['options'] : [];
+               $join_conds = isset( $query['join_conds'] ) ? (array)$query['join_conds'] : [];
+
+               if ( $limit !== false ) {
+                       $options['LIMIT'] = intval( $limit );
+               }
+
+               if ( $offset !== false ) {
+                       $options['OFFSET'] = intval( $offset );
+               }
+
+               $namespaces = $conds['page_namespace'];
+               if ( count( $namespaces ) === 1 ) {
+                       $options['ORDER BY'] = $order;
+                       $res = $dbr->select( $tables, $fields, $conds, $fname,
+                               $options, $join_conds
+                       );
+               } else {
+                       unset( $conds['page_namespace'] );
+                       $options['INNER ORDER BY'] = $order;
+                       $options['ORDER BY'] = [ 'value' . ( $this->sortDescending() ? ' DESC' : '' ) ];
+                       $sql = $dbr->unionConditionPermutations(
+                               $tables,
+                               $fields,
+                               [ 'page_namespace' => $namespaces ],
+                               $conds,
+                               $fname,
+                               $options,
+                               $join_conds
+                       );
+                       $res = $dbr->query( $sql, $fname );
+               }
+
+               return $res;
+       }
+
        function getOrderFields() {
                return [ 'page_len' ];
        }
index fa38506..1a2153d 100644 (file)
@@ -1099,9 +1099,11 @@ class SpecialUndelete extends SpecialPage {
                // Show revision undeletion warnings and errors
                $status = $archive->getRevisionStatus();
                if ( $status && !$status->isGood() ) {
-                       $out->wrapWikiMsg(
-                               "<div class=\"error\" id=\"mw-error-cannotundelete\">\n$1\n</div>",
-                               'cannotundelete'
+                       $out->addWikiText( '<div class="error" id="mw-error-cannotundelete">' .
+                               $status->getWikiText(
+                                       'cannotundelete',
+                                       'cannotundelete'
+                               ) . '</div>'
                        );
                }
 
index 4df73f7..98586e7 100644 (file)
@@ -29,8 +29,6 @@ use Wikimedia\Rdbms\IDatabase;
 class UserRightsProxy {
 
        /**
-        * Constructor.
-        *
         * @see newFromId()
         * @see newFromName()
         * @param IDatabase $db Db connection
index c74b04d..afe9c0a 100644 (file)
@@ -27,9 +27,6 @@ class FileContentsHasher {
        /** @var FileContentsHasher */
        private static $instance;
 
-       /**
-        * Constructor.
-        */
        public function __construct() {
                $this->cache = ObjectCache::getLocalServerInstance( 'hash' );
        }
index 76ced3e..00d91ce 100644 (file)
@@ -115,7 +115,7 @@ class Names {
                'cho' => 'Choctaw', # Choctaw
                'chr' => 'ᏣᎳᎩ', # Cherokee
                'chy' => 'Tsetsêhestâhese', # Cheyenne
-               'ckb' => 'کوردیی ناوەندی', # Central Kurdish
+               'ckb' => 'کوردی', # Central Kurdish
                'co' => 'corsu', # Corsican
                'cps' => 'Capiceño', # Capiznon
                'cr' => 'Nēhiyawēwin / ᓀᐦᐃᔭᐍᐏᐣ', # Cree
index f243d01..548a3c3 100644 (file)
        "rcfilters-view-namespaces-tooltip": "Фільтар вынікаў паводле прасторы назваў",
        "rcfilters-view-tags-tooltip": "Фільтар вынікаў з дапамогай метак правак",
        "rcfilters-view-return-to-default-tooltip": "Вярнуцца да галоўнага мэню фільтраў",
+       "rcfilters-liveupdates-button": "Імгненныя абнаўленьні",
        "rcnotefrom": "Ніжэй {{PLURAL:$5|знаходзіцца зьмена|знаходзяцца зьмены}} з <strong>$4 $3</strong> (да <strong>$1</strong> на старонку).",
        "rclistfromreset": "Скінуць выбар даты",
        "rclistfrom": "Паказаць зьмены з $2 $3",
        "tooltip-preview": "Праглядзець Вашы зьмены. Калі ласка, выкарыстоўвайце гэтую магчымасьць перад тым, як захаваць старонку!",
        "tooltip-diff": "Паказаць зробленыя Вамі зьмены ў тэксьце",
        "tooltip-compareselectedversions": "Пабачыць розьніцу паміж дзьвюма абранымі вэрсіямі гэтай старонкі.",
-       "tooltip-watch": "Дадаць гэтую старонку ў Ваш сьпіс назіраньня",
+       "tooltip-watch": "Дадаць гэтую старонку ў свой сьпіс назіраньня",
        "tooltip-watchlistedit-normal-submit": "Выдаліць пазначаныя старонкі",
        "tooltip-watchlistedit-raw-submit": "Абнавіць сьпіс назіраньня",
        "tooltip-recreate": "Аднавіць старонку, ня гледзячы на тое, што яна была выдаленая",
        "authpage-cannot-create": "Немагчыма пачаць стварэньне рахунку.",
        "authpage-cannot-create-continue": "Немагчыма працягнуць стварэньне рахунку. Падобна, што тэрмін вашай сэсіі скончыўся.",
        "authpage-cannot-link": "Немагчыма пачаць далучэньне рахунку.",
+       "authpage-cannot-link-continue": "Немагчыма працягнуць далучэньне рахунку. Падобна, што тэрмін вашай сэсіі скончыўся.",
+       "cannotauth-not-allowed-title": "Доступ забаронены",
+       "cannotauth-not-allowed": "Вам не дазволена выкарыстоўваць гэтую старонку",
        "changecredentials": "Зьмена ўліковых зьвестак",
+       "changecredentials-submit": "Зьмяніць уліковыя зьвесткі",
        "removecredentials": "Выдаленьне ўліковых зьвестак",
        "removecredentials-submit": "Выдаліць уліковыя зьвесткі",
        "credentialsform-provider": "Тып уліковых зьвестак:",
index 5909ed0..ee1db3d 100644 (file)
        "right-autopatrol": "Автоматично отбелязване на редакции като проверени",
        "right-patrolmarks": "Показване на отбелязаните като патрулирани последни промени",
        "right-unwatchedpages": "Преглеждане на списъка с ненаблюдаваните страници",
-       "right-mergehistory": "сливане на редакционни истории на страници",
+       "right-mergehistory": "Сливане на редакционни истории на страници",
        "right-userrights": "Редактиране на потребителските права",
-       "right-userrights-interwiki": "редактиране на потребителски права на потребители в други уикита",
-       "right-siteadmin": "заключване и отключване на базата от данни",
+       "right-userrights-interwiki": "Редактиране на потребителски права на потребители в други уикита",
+       "right-siteadmin": "Ð\97аключване и отключване на базата от данни",
        "right-override-export-depth": "Изнасяне на страници, включително свързаните с тях в дълбочина до пето ниво",
        "right-sendemail": "Изпращане на е-писма до другите потребители",
        "grant-group-email": "Изпращане на е-писмо",
        "rightslogtext": "Това е дневник на промените на потребителските права.",
        "action-read": "четене на страницата",
        "action-edit": "редактиране на тази страница",
-       "action-createpage": "Ñ\81Ñ\8aздаване Ð½Ð° Ñ\81Ñ\82Ñ\80аниÑ\86и",
+       "action-createpage": "Ñ\81Ñ\8aздаване Ð½Ð° Ñ\81Ñ\82Ñ\80аниÑ\86аÑ\82а",
        "action-createtalk": "създаване на дискусионни страници",
        "action-createaccount": "създаване на тази потребителска сметка",
        "action-history": "преглед на историята на тази страница",
index 13b183c..0423c05 100644 (file)
        "missingcommentheader": "<strong>Napomena:</strong> Niste napisali naslov ovog komentara.\nAko ponovo kliknete na \"$1\", Vaša izmjena će biti sačuvana bez naslova.",
        "summary-preview": "Pregled sažetka:",
        "subject-preview": "Pregled teme:",
-       "previewerrortext": "Dogodila se greška prilikom prikazivanja vaših izmjena.",
+       "previewerrortext": "Došlo je do greške pri pokušaju pregleda izmjena.",
        "blockedtitle": "Korisnik je blokiran",
        "blockedtext": "'''Vaše korisničko ime ili IP-adresa je blokirana.'''\n\nBlokada izvršena od strane $1.\nDati razlog je sljedeći: ''$2''.\n\n*Početak blokade: $8\n*Kraj perioda blokade: $6\n*Ime blokiranog korisnika: $7\n\nMožete kontaktirati sa $1 ili nekim drugim [[{{MediaWiki:Grouppage-sysop}}|administratorom]] da biste razgovarali o blokadi.\n\nNe možete koristiti opciju ''Pošalji e-mail korisniku'' osim ako niste unijeli e-mail adresu u [[Special:Preferences|Vaše postavke]].\nVaša trenutna IP-adresa je $3, a oznaka blokade je #$5.\nMolimo Vas da navedete gornje podatke pri zahtjevu za deblokadu.",
        "autoblockedtext": "Vaša IP-adresa automatski je blokirana jer ju je koristio drugi korisnik, a blokirao ju je $1.\nNaveden je sljedeći razlog:\n\n:''$2''\n\n* Početak blokade: $8\n* Kraj blokade: $6\n* Blokirani korisnik: $7\n\nMožete kontaktirati sa $1 ili nekim drugim iz grupe [[{{MediaWiki:Grouppage-sysop}}|administratora]] i zahtijevati da Vas deblokira.\n\nZapamtite da ne možete koristiti opciju \"pošalji e-mail ovom korisniku\" sve dok ne unesete validnu e-mail adresu pri registraciji u Vašim [[Special:Preferences|korisničkim postavkama]] i dok niste spriječeni (blokadom) da je koristite.\n\nVaša trenutna IP-adresa je $3, a ID blokade je $5.\nMolimo da navedete sve gore navedene detalje u zahtjevu za deblokadu.",
        "mostinterwikis": "Stranice sa najviše međuwikija",
        "mostrevisions": "Stranice s najviše izmjena",
        "prefixindex": "Sve stranice s prefiksom",
-       "prefixindex-namespace": "Sve stranice s predmetkom (imenski prostor $1)",
+       "prefixindex-namespace": "Sve stranice s prefiksom (imenski prostor $1)",
        "prefixindex-submit": "Prikaži",
        "prefixindex-strip": "Sakrij prefiks u spisku",
        "shortpages": "Kratke stranice",
index 6918de8..9596a37 100644 (file)
@@ -35,7 +35,8 @@
                        "Walter Klosse",
                        "Martin Urbanec",
                        "Marek Pavlica",
-                       "Asmen"
+                       "Asmen",
+                       "Meliganai"
                ]
        },
        "tog-underline": "Podtrhávat odkazy:",
        "rcfilters-filter-previousrevision-label": "Dřívější verze",
        "rcfilters-filter-previousrevision-description": "Všechny změny, které nejsou nejnovější úpravou stránky.",
        "rcfilters-view-tags": "Označené editace",
+       "rcfilters-liveupdates-button": "Živé aktualizace",
        "rcnotefrom": "Níže {{PLURAL:$5|je změna|jsou změny}} od <strong>$3, $4</strong> ({{PLURAL:$1|zobrazena|zobrazeny|zobrazeno}} nejvýše <strong>$1</strong>).",
        "rclistfromreset": "Obnovit výběr data",
        "rclistfrom": "Ukázat nové změny, počínaje od $2, $3",
index 3713ea1..dba078a 100644 (file)
        "tog-extendwatchlist": "Rozwinië lëstã ùzérónëch artiklów bë wëskrzënic wszëtczé zmianë, ni le blós slédné",
        "tog-usenewrc": "Grëpùjë zjinaczi wedle starnów na lëscé slédnych zjinaków ë ùzérónych",
        "tog-numberheadings": "Aùtomatné numerowanié nôgłówków",
-       "tog-showtoolbar": "Wëskrzëni listwã nôrzãdzów edicje",
+       "tog-showtoolbar": "Wëskrzëni listwã nôrzãdzów edicëji",
        "tog-editondblclick": "Editëjë starnë przez dëbeltné klëkniãcé",
        "tog-editsectiononrightclick": "Włączë edicjã sekcji bez klëkniãcé prawą knąpą mëszë na titlu sekcje",
        "tog-watchcreations": "Dodôwôj do mòji lëstë ùzérónëch artiklów starnë, chtërné ùsôdzã, i lopczi, chtërné wladëjã",
        "tog-watchdefault": "Dodôwôj do mòji lëstë ùzérónëch artiklów starnë i lopczi, chtërné editëjã.",
        "tog-watchmoves": "Dodôwôj do mòji lëstë ùzérónëch artiklów starnë i lopczi, jaczé przenoszã.",
        "tog-watchdeletion": "Dodôwôj do mòji lëstë ùzérónëch artiklów starnë i lopczi, jaczé rëmóm.",
+       "tog-watchuploads": "Dodôj do ùzérównych wladowóné mòjé lopczi",
+       "tog-watchrollback": "Dodôj do ùzérównych starnë, w chtënych móm {{GENDER:|copinãtą}} edicëjã",
        "tog-minordefault": "Zaznaczë wszëtczé edicëje domëslno jakno môłé",
        "tog-previewontop": "Pòkażë pòdzérk przed kastką edicëji",
        "tog-previewonfirst": "Pòkażë pòdzérk ju przed pierszą edicëją",
        "tog-shownumberswatching": "Pòkażë lëczba ùzérającëch brëkòwników",
        "tog-oldsig": "Wëzdrzatk twòjegò pòdpisënkù:",
        "tog-fancysig": "Wzérôj na pòdpisënk jakno na wikikòd (bez aùtomatnych lënków)",
-       "tog-uselivepreview": "Brëkùjë wtimczasnegò pòdzérkù",
+       "tog-uselivepreview": "Felënk dinamicznegò pòdzérkù",
        "tog-forceeditsummary": "Pëtôj przed wéńdzenim do pùstégò pòdrechòwania edicëji",
        "tog-watchlisthideown": "Zatacë mòje edicje z lëstë ùzérónëch artiklów",
        "tog-watchlisthidebots": "Zatacë edicëje botów z lëstë ùzérónëch artiklów",
        "tog-watchlisthideminor": "Zatacë môłi zmianë z lëstë ùzérónëch artiklów",
        "tog-watchlisthideliu": "Zatacë edicëje wlogòwónych brëkòwników na lësce ùzérónych artiklów",
+       "tog-watchlistreloadautomatically": "Aùtomatno òdswiérzywôj ùzéróną lëstã pò kòżdi zjinace filtra(nót je JavaScript)",
        "tog-watchlisthideanons": "Zatacë edicëje anonimòwich brëkòwników na lësce ùzérónych artiklów",
        "tog-watchlisthidepatrolled": "Zatacë sprôwdzoné edicëje z lëstë ùzérónych artiklów",
-       "tog-watchlisthidecategorization": "Zatacë kategòrizacjã strón",
-       "tog-ccmeonemails": "Sélôj do mie kòpije e-mailów, chtërné sélóm do jinych brëkòwników",
+       "tog-watchlisthidecategorization": "Zatacë kategòrizacëjã starnów",
+       "tog-ccmeonemails": "Sélôj do mie kòpije e-mailów, chtërné jô sélóm do jinych brëkòwników",
        "tog-diffonly": "Nie wëskrzëniôj zamkłoscë starnë niżi przërónaniô zjinaków",
        "tog-showhiddencats": "Wëskrzëni zataconé kategòrëje",
        "tog-norollbackdiff": "Pòcësni wëskrzënianié zjinaków pò copniãcô sã",
+       "tog-useeditwarning": "Òstrzëgôj mie, jak wëchòdzã ze starnë bez zapisaniô ji zjinaków",
+       "tog-prefershttps": "Ùżëwôj wiedno bezpiécznegò sparłãczenia pò wlogòwaniu",
        "underline-always": "Wiedno",
        "underline-never": "Nigdë",
        "underline-default": "Tak jak w domëslnym przezérnikù abò skórczi.",
        "thursday": "czwiôrtk",
        "friday": "piątk",
        "saturday": "sobòta",
-       "sun": "Nie.",
-       "mon": "pòn",
-       "tue": "wtó",
-       "wed": "str",
-       "thu": "czw",
-       "fri": "pią",
-       "sat": "sob",
+       "sun": "Nie",
+       "mon": "Pòn",
+       "tue": "Wtó",
+       "wed": "Str",
+       "thu": "Czw",
+       "fri": "Pią",
+       "sat": "Sob",
        "january": "stëcznik",
        "february": "gromicznik",
        "march": "strëmiannik",
        "october-date": "$1 pazdzérznika",
        "november-date": "$1 lëstopadnika",
        "december-date": "$1 gòdnika",
+       "period-am": "DP",
+       "period-pm": "PP",
        "pagecategories": "{{PLURAL:$1|Kategòrëjô|Kategòrëje}}",
        "category_header": "Artikle w kategòrëji \"$1\"",
        "subcategories": "Pòdkategòrëje",
        "category-media-header": "Media w kategòrëji \"$1\"",
-       "category-empty": "''Ta ktegòrëja nie zamëkô w se terô niżódnëch artiklów ni mediów.''",
+       "category-empty": "<em>Ta ktegòrëja nie zamëkô w se terô niżódnëch artiklów ni mediów.</em>",
        "hidden-categories": "{{PLURAL:$1|Zataconô kategòrëja|Zataconé kategòrëje}}",
        "hidden-category-category": "Zataconé kategòrëje",
        "category-subcat-count": "{{PLURAL:$2|Na kategòrrjô zamëkô w se blós nôslédną pòdkategòrëjã.|Na kategòrëjô mô {{PLURAL:$1|pòdkategòrëje|$1 pòdkategòrëjôw}}, w $2 kategòrëjach.}}",
        "category-subcat-count-limited": "Na kategòrëjô zamëkô w se {{PLURAL:$1|1 pòdkategòrëjã|$1 pòdkategòrëje|$1 pòdkategòrëjów}}.",
        "category-article-count": "{{PLURAL:$2|Na kategòrëjô zamëkôw w se blós jedną starnã.|Niżi mómë $1 westrzód $2 starów w ti kategòrëji.}}",
+       "category-article-count-limited": "W ti kategòrëji {{PLURAL:$1|je 1 starna|są $1 starnë|je $1 starnów}}.",
        "category-file-count": "{{PLURAL:$2|Na kategòrëjô zamëkô w se blós jeden lopk.|W ti kategòrëji {{PLURAL:$1|je 1 lopk|są $1 lopczi|je $1 lopków}} z oòglowi wielënë $2 lopków.}}",
+       "category-file-count-limited": "W ti kategòrëji {{PLURAL:$1|je 1 lopk|są $1 lopczi|je $1 lopków}}.",
        "listingcontinuesabbrev": "kònt.",
+       "index-category": "Indeksowóné starnë",
+       "noindex-category": "Nieindeksowóné starnë",
+       "broken-file-category": "Starnë lënkùjącé do nieegzystëjących lopków",
        "about": "Ò serwise",
        "article": "Artikel",
        "newwindow": "(òtmëkô sã w nowim òczenkù)",
        "cancel": "Anulëje",
        "moredotdotdot": "Wicy...",
+       "morenotlisted": "Na lësta nie je kòmpletnô",
        "mypage": "Starna",
        "mytalk": "Diskùsëjô",
-       "anontalk": "Diskùsjô",
+       "anontalk": "Diskùsëjô",
        "navigation": "Nawigacëjô",
        "and": "&#32;ë",
        "faq": "FAQ",
        "help": "Pòmòc",
        "search": "Szëkba",
        "searchbutton": "Szëkba",
-       "go": "Biôj!",
+       "go": "Biéj!",
        "searcharticle": "Biéj!",
        "history": "Historëjô starnë",
        "history_short": "Historëjô",
+       "history_small": "historëjô",
        "updatedmarker": "zaktualnioné òd mòji slédny gòscënë",
        "printableversion": "Wersëjô do drëkù",
        "permalink": "Prosti lënk",
        "view": "Pòdzérk",
        "view-foreign": "Òbôczë w {{grammar:MS.lp|$1}}",
        "edit": "Edicëjô",
+       "edit-local": "Editëjë lokalny òpisënk",
        "create": "Ùsadzë",
        "create-local": "Dodôj lokalny òpisënk",
        "delete": "Rëmôj",
        "undelete_short": "Doprowadzë nazôd {{PLURAL:$1|1 edicjã|$1 edicje|$1 edicjów}}",
+       "viewdeleted_short": "Pòdzérk {{PLURAL:$1|rëmniãti wersëji|$1 rëmniãtich wersëjów}}",
        "protect": "Zazychrëjë",
        "protect_change": "zmieni",
        "unprotect": "Òdzychrëjë",
        "personaltools": "Priwatné przërëchtënczi",
        "talk": "Diskùsëjô",
        "views": "Pòdzérków",
-       "toolbox": "Przërëchtënczi",
+       "toolbox": "Nôrzãdza",
+       "tool-link-userrights": "Zjinaka karnów {{GENDER:$1|brëkòwnika|ubrëkòwniczczi}}",
+       "tool-link-userrights-readonly": "Òbôczë karna {{GENDER:$1|brëkòwnika|brëkòwniczczi}}",
+       "tool-link-emailuser": "Sélôj e-mail do {{GENDER:$1|tegò brëkòwnika|ti brëkòwniczcz}}",
        "imagepage": "Starna lopka",
        "mediawikipage": "Wëskrzëni starnã wiadła",
        "templatepage": "Wëskrzëni starnã wëzdrzatkù",
        "jumpto": "Skòczë do:",
        "jumptonavigation": "nawigacëji",
        "jumptosearch": "szëkbë",
+       "view-pool-error": "Serwerë są prawie terô baro przecążoné.\nZa wiele brëkòwników chce wëskrzënic nã starnã.\nPóżdôj kąsk przed nowim òdwòłaniém ti starnë.\n\n$1",
+       "generic-pool-error": "Serwerë są prawie terô baro przecążoné.\nZa wiele brëkòwników chce wëskrzënic nen dostónk.\nPóżdôj kąsk przed nowim òdwòłaniém negò dostónka.",
+       "pool-timeout": "Za dłudżi czas żdaniô na blokadã",
+       "pool-queuefull": "Pòsobnica zadaniów je fùl",
+       "pool-errorunknown": "Nieznónô fela",
+       "pool-servererror": "Ùsłëżnota rëchòwnika nie je przistãpnô ($1).",
+       "poolcounter-usage-error": "Fela ùżëcô: $1",
        "aboutsite": "Ò {{SITENAME}}",
        "aboutpage": "Project:Ò_{{SITENAME}}",
        "copyright": "Zamkłosc hewòtny starnë je ùprzëstãpnianô wedle reglów $1, jeżlë nie pòdóno jinaczi.",
        "privacypage": "Project:Priwatnota",
        "badaccess": "Procëmprawne ùdowierzenie",
        "badaccess-group0": "Ni môsz dosc prawa dlô zrëszeniô tegò dzéjaniô",
+       "badaccess-groups": "Zrëszanié ti òperacëji òstało ógrańczoné do brëkòników w {{PLURAL:$2|karnie|jednym z karnów:}} $1.",
        "versionrequired": "Wëmôgónô wersëjô $1 MediaWiki",
        "versionrequiredtext": "Bë brëkòwac ną starnã wëmôgónô je wersëjô $1 MediaWiki. Òbaczë starnã [[Special:Version]]",
        "ok": "Jo!",
        "retrievedfrom": "Z \"$1\"",
-       "youhavenewmessages": "Môsz $1 ($2).",
+       "youhavenewmessages": "{{PLURAL:$3|Môsz}} $1 ($2).",
+       "youhavenewmessagesfromusers": "{{PLURAL:$4|Môsz}} $1 òd {{PLURAL:$3|jinegò brekòwnika|$3 brëkòwników}} ($2).",
+       "youhavenewmessagesmanyusers": "Môsz $1 òd wielu brëkòwników ($2).",
+       "newmessageslinkplural": "{{PLURAL:$1|nowé wiadło|999=nowé wiadła}}",
+       "newmessagesdifflinkplural": "{{PLURAL:$1|slédnô zjinaka|999=slédné zjinaczi}}",
        "youhavenewmessagesmulti": "Môsz nowé klëczi: $1",
        "editsection": "Edicëjô",
        "editold": "Edicëjô",
        "viewsourcelink": "wëskrzëni zdrój",
        "editsectionhint": "Editëjë dzél: $1",
        "toc": "Spisënk zamkłoscë",
-       "showtoc": "pokôż",
+       "showtoc": "pokôżë",
        "hidetoc": "zatacë",
+       "collapsible-collapse": "Zwinie",
+       "collapsible-expand": "Rozwinie",
+       "confirmable-confirm": "Jes{{GENDER:$1|gwës|gwësnô}}?",
        "confirmable-yes": "Jo",
+       "confirmable-no": "Ni",
        "thisisdeleted": "Wëskrzënic abò dobëc nazôd $1?",
        "viewdeleted": "Òbaczë $1",
        "restorelink": "{{PLURAL:$1|jednô rëmniãtô wersëjô|$1 rëmniãté wersëje|$1 rëmniãtich wersëjów}}",
        "feed-atom": "Atom",
        "feed-rss": "RSS",
        "red-link-title": "$1 (felëje starna)",
+       "sort-descending": "Zortëjë malijąco",
+       "sort-ascending": "Zortëjë roscąco",
        "nstab-main": "Artikel",
        "nstab-user": "Starna brëkòwnika",
        "nstab-media": "Starna lopków",
        "nospecialpagetext": "<strong>Felënk zapëtóny speclajny starnë.</strong>\n\nLësta przistãpnych specjalnych starnó je [[Special:SpecialPages|tuwò]].",
        "error": "Fela",
        "databaseerror": "Fela w pòdôwkòwi baze",
+       "databaseerror-text": "Pòkôża sã fela zapëtania dopòdôwkòwi bazë.\nTo mòże bëc softwôrowô fela.",
+       "databaseerror-textcl": "Fela przë zrëszaniu zapëtania do pòdôwkòwi bazë",
+       "databaseerror-query": "Zapëtanié: $1",
+       "databaseerror-function": "Fùnkcëjô: $1",
+       "databaseerror-error": "Fela: $1",
+       "laggedslavemode": "<strong>Bôczënk:</strong> Na starna mòże nie zamëkac w se nônowszich aktualizacëjów.",
        "readonly": "Baza pòdôwków je zablokòwónô",
+       "enterlockreason": "Pòdôj przëczënã zablokòwaniô pòdôwkòwi bazë ë termin ji òdblokòwaniô",
        "missing-article": "W baze pòdôwków felëje zamkłosc starnë \"$1\" $2.\n\nZwëczajno je to sparłãczoné òdsélaniém do nieaktualnégò lënka nierównoscë dwóch wersëjów starnë abò do rëmniãti wersëji starnë.\n\nJeżlë tak nie je, mòżlëwé je, że je to problem sparłãczony z felą w softwôrze.\nMòże to zgłoszëc [[Special:ListUsers/sysop|sprôwnikòwi]], pòdając adresã URL.",
        "missingarticle-rev": "(wersëjô $1)",
+       "missingarticle-diff": "(diferencëjô: $1, $2)",
        "internalerror": "Bënowô fela",
+       "internalerror_info": "Bënowô fela:$1",
+       "internalerror-fatal-exception": "Kriticzny wëjimk ôrtu \"$1\"",
        "filecopyerror": "Ni mòże skòpérowac lopka \"$1\" do \"$2\".",
        "filerenameerror": "Ni mòże zmienic miona lopka \"$1\" na \"$2\".",
        "filedeleteerror": "Ni mòże rëmac lopka \"$1\".",
+       "directorycreateerror": "Nie dało sã ùsadzëc kataloga \"$1\".",
+       "directoryreadonlyerror": "Katalog \"$1\" je blós do czëtaniô.",
+       "directorynotreadableerror": "Katalog \"$1\" nie je do czëtaniô.",
        "filenotfound": "Ni mòże nalezc lopka \"$1\".",
+       "unexpected": "Nieakceptowólnô wôrtnota: \"$1\"=\"$2\".",
        "formerror": "Fela: ni mòże wëslac fòrmùlara",
        "badarticleerror": "Nie dô zrobic ti akcëji na ti starnie.",
+       "cannotdelete": "Ni mòże rëmnąc starnë abò lopka \"$1\".\nMòże mô to ju chto jinny zrobioné",
+       "cannotdelete-title": "Ni mòże rëmnąc starnë \"$1\"",
+       "delete-hook-aborted": "Rëmanié przerwóné przez hak.\nNieznónô przëczëna.",
+       "no-null-revision": "Nie mòże ùsôdzëc zerowi wersëji starnë \"$1\"",
        "badtitle": "Lëchi titel",
        "badtitletext": "Pòdóny titel starnë nie je pòprôwny. Gwësno je òn pùsti, abò zamëkô w se mërczi chtërnëch brëkòwanié je zakôzané.",
        "viewsource": "Zdrojowi tekst",
+       "viewsource-title": "Zdrojowi tekst starnë $1",
+       "viewsourcetext": "Zdrojowi tekst starnë mòże przezérac ë kòpiérowac.",
        "editinginterface": "'''ÒSTRZÉGA:''' Editëjesz starnã, jakô zamëkô w se tekst interfejsu softwôrë. Wszëtczé zmianë tu zrobioné bãdze widzec na interfejse jinszëch brëkòwników.\nPrzemëszlë dolmaczënié na [https://translatewiki.net/wiki/Main_Page?setlang=csb translatewiki.net], ekstra ùdbie lokalizacëji softwôrë MediaWiki.",
        "logouttext": "'''Jes wëlogòwóny.'''\nMòżesz robic dali na {{SITENAME}} jakno anonimòwi brëkòwnik abò sã <span class='plainlinks'>[$1 wlogòwac]</span> znowa jakno równy, a bò jinszi brëkòwnik.\nBôczë, że do czasu wëczëszczenia pòdrãczny pamiãcë przezérnika, niejedné starnë bãdą wëzdrzëc jakbë të bëł wlogòwóny.",
        "yourname": "Miono brëkòwnika",
        "anonpreviewwarning": "Të nie jes wlogòwóny. Jeżlë wprowadzysz jaczés zjinaczi, twòja adresa IP mdze ùmieszczónô w historie edicji starnë.",
        "summary-preview": "Pòdzérk òpisënka:",
        "blockedtitle": "Brëkòwnik je zascëgóny",
-       "blockedtext": "'''Twòje kònto abò ë IP-adresa òstałë zablokòwóné.'''\n\nZablokòwôł je $1.\nPòdónô przëczëna to:''$2''.\n\n * Zôczątk blokadë: $8\n * Kùńc blokadë: $6\n * Cél blokadë: $7\n\n\nBë zgwësnic sprawã zablokòwaniô mòżesz skòntaktowac sã z $1 abò jińszim [[{{MediaWiki:Grouppage-sysop}}|administratorã]].\nBoczë, że të ni mòżesz stądka sélac e-mailów, jeżlë nié môsz jesz zaregisterowóné e-mailowé adresë w [[Special:Preferences|nastôwach]].\nTwòjô aktualnô adresa IP to $3, a zablokòwónô adresa ID to #$5.\nProszëmë pòdac wëższé pòdôłczi przë wszëtczich pëtaniach.",
+       "blockedtext": "<strong>Twòje kònto abò ë IP-adresa òstałë zablokòwóné.</strong>\n\nZablokòwôł je $1.\nPòdónô przëczëna to:<em>$2</em>.\n\n * Zôczątk blokadë: $8\n * Kùńc blokadë: $6\n * Cél blokadë: $7\n\n\nBë zgwësnic sprawã zablokòwaniô mòżesz skòntaktowac sã z $1 abò jińszim [[{{MediaWiki:Grouppage-sysop}}|administratorã]].\nBoczë, że të ni mòżesz stądka sélac e-mailów, jeżlë nié môsz jesz zaregisterowóné e-mailowé adresë w [[Special:Preferences|nastôwach]].\nTwòjô aktualnô adresa IP to $3, a zablokòwónô adresa ID to #$5.\nProszëmë pòdac wëższé pòdôłczi przë wszëtczich pëtaniach.",
        "loginreqlink": "Wlogùjë",
        "loginreqpagetext": "$1 sã, żebë przezérac jinszé starnë.",
        "accmailtitle": "Parola wësłónô.",
        "anontalkpagetext": "----\n<em>To je starna diskùsje anonimòwégò brëkòwnika, chtëren nie ùsadzëł jesz swòjegò kònta, abò gò nie brëkùje.</em>\nAbë gò rozpòznac, ùżëwómë adresów IP.\nTakô adresa IP mòże bëc równak brëkòwónô przez wiele lëdzy.\nJeżlë jes anonimòwim brëkòwnikã i ùwôżôsz, że ne wiadła nie są do ce sczerowóné, tedë [[Special:CreateAccount|ùsadzë nowé kònto]] abò [[Special:UserLogin|wlogùj sã]], bë niechac niezrozmieniô z jinyma anonimòwima brëkòwnikama.''",
        "noarticletext": "Felëje starna ò tim titlu.\nMòżesz [[Special:Search/{{PAGENAME}}|szëkac za {{PAGENAME}} na jinych starnach]],\n<span class=\"plainlinks\">[{{fullurl:{{#Special:Log}}|page={{FULLPAGENAMEE}}}} szëkac w logù] abò [{{fullurl:{{FULLPAGENAME}}|action=edit}} ùsadzëc nã starnã]</span>",
        "noarticletext-nopermission": "Felëje starna ò tim titlu.\nMòżesz [[Special:Search/{{PAGENAME}}|szëkac za {{PAGENAME}} na jinych starnach]],\n<span class=\"plainlinks\">[{{fullurl:{{#Special:Log}}|page={{FULLPAGENAMEE}}}} szëkac w logù] abò [{{fullurl:{{FULLPAGENAME}}|action=edit}} ùsadzëc nã starnã]</span>",
-       "clearyourcache": "'''Bôczë: Pò zapisanim, mòże bãdzesz mùszôł òminąc pamiãc przezérnika bë òbaczëc zmianë.'''\n'''Mozilla / Firefox / Safari:''' przëtrzëmôj ''Shift'' òbczas klëkaniô na ''Zladëjë znowa'', abò wcësni ''Ctrl-F5'' abò ''Ctrl-R'' (''Command-R'' na kòmpùtrach Mac);\n'''Konqueror:''': klëkni na knąpã ''Zladëjë znowa'', abò wcësni ''F5'';\n'''Opera:''' wëczëszczë pòdrãczną pamiãc w ''Tools→Preferences'';\n'''Internet Explorer:'''przëtrzëmôj ''Ctrl'' òbczas klëkaniô na ''Zladëjë znowa'', abò wcësni ''Ctrl-F5''.",
+       "userpage-userdoesnotexist-view": "Miono brëkòwnika \"$1\" nie jes zaregistrowóné.",
+       "clearyourcache": "<strong>Bôczë:</strong> Pò zapisanim, mòże bãdzesz mùszôł òminąc pamiãc przezérnika bë òbaczëc zmianë.\n<strong>Firefox / Safari:</strong> Przëtrzëmôj <em>Shift</em> òbczas klëkaniô na <em>Zladëjë znowa</em>, abò wcësni <em>Ctrl-F5</em> abò <em>Ctrl-R</em> (<em>⌘-R</em> na kòmpùtrach Mac)\n* <strong>Google Chrome:</strong> Wcësni <em>Ctrl-Shift-R</em> (<em>⌘-Shift-R</em> na kòmpùtrach Mac) * <strong>Internet Explorer:</strong> Przëtrzëmôj <em>Ctrl</em>, równoczasno klëkając <em>Òdswiérzë</em>, abò wcësni knąpë <em>Ctrl+F5</em> * <strong>Opera:</strong> Biéj doo <em>Menu → Nastôwë</em> (<em>Opera → Preferencëje</em> w Mac), a dali <em>Priwatnota ë bezpiék → Wëczëszczë pòdôwczi przezéraniô → Wëczëszczë pòdrãczną pamiãc</em>.",
        "updated": "(Zaktualnioné)",
        "previewnote": "<strong>To je blós pòdzérk.</strong>\n Artikel jesz nie je zapisóny!",
-       "continue-editing": "Przeńdzë do pòla edicje.",
+       "continue-editing": "Biéj do pòla edicëje.",
        "editing": "Edicëjô $1",
        "creating": "Ùsôdzanié $1",
        "editingsection": "Edicëjô $1 (dzél)",
        "template-protected": "(zazychrowónô)",
        "template-semiprotected": "(dzélowò zazychrowóné)",
        "hiddencategories": "Na starna przënôleżi do w {{PLURAL:$1|1 zatacony kategòrëji|$1 zataconych kategòrëjów}}:",
+       "permissionserrors": "Fela przistspù",
        "permissionserrorstext-withaction": "Ni môsz przëstãpù do $2, z {{PLURAL:$1|nôslédny przëczënë|nôslédnych przëczënów}}:",
-       "recreate-moveddeleted-warn": "'''Bôczënk! Chcesz usadzëc starnã, chtërna wczasni òsta rëmniãtô.'''\n\nÙgwësni sã, czë pònowné ùsôdzenié ti starnë je kònieczné. \nNiżi je widzec register rëmaniów i zmian pòzwë ti starnë:",
+       "recreate-moveddeleted-warn": "<strong>Bôczënk! Chcesz usadzëc starnã, chtërna wczasni òsta rëmniãtô.</strong>\n\nÙgwësni sã, czë pònowné ùsôdzenié ti starnë je kònieczné. \nNiżi je widzec register rëmaniów i zmian pòzwë ti starnë:",
        "moveddeleted-notice": "Na starna òsta rëmniãtô.\nSpisënk rëmaniô ë zjinaków miona ti starnë je niżi.",
+       "content-model-wikitext": "wikitekst",
+       "undo-failure": "Edicëjô nié mògłą bëc copniãtô przez zwadã z midzëedicëją.",
        "undo-summary": "Anulowanié wersje $1 aùtora [[Special:Contributions/$2|$2]] ([[User talk:$2|diskùsjô]])",
        "viewpagelogs": "Òbôczë rejestrë dzéjanió dlô ti starnë",
        "currentrev": "Aktualnô wersëjô",
        "history-show-deleted": "Leno rëmniãté",
        "histfirst": "òd nôstarszich",
        "histlast": "òd nônowszich",
+       "history-feed-title": "Historëjô wersëji",
+       "history-feed-description": "Historëjô wersëji ti starnë wiki",
        "history-feed-item-nocomment": "$1 ò $2",
        "rev-delundel": "pòkażë/zatacë",
        "rev-showdeleted": "pokôż",
        "revdelete-hide-current": "Pòkôza sã fela przë taceniu wersëji datowóny na $2, $1. To je nônowszô wersëjô starnë, chtërnô ni mòże bëc zataconô.",
        "revdelete-show-no-access": "Pòkôza sã fela przë próbie wëskrzënieniô elementu datowónegò na $2, $1. Widzawnota negò elementu òsta ògrańczonô - ni môsz przëstãpù.",
        "mergehistory-reason": "Przëczëna:",
+       "mergelog": "Scaloné",
        "revertmerge": "Rozdzélë",
        "history-title": "Historijô zjinaków dlô \"$1\"",
        "difference-title": "$1 - rozeszłoscë midzë wersjama",
        "lineno": "Lëniô $1:",
        "compareselectedversions": "Przërównôj wëbróné wersëje",
        "editundo": "doprowadzë nazôd",
+       "diff-empty": "(Niżódny różnicë)",
        "diff-multi-sameuser": "(Nie wëskrzëniono $1 {{PLURAL:$1|pòstrzedny wersëji ùsôdzony|pòstrzednych wersëjów ùsôdzonych}} przez tegoò sómegò brëkòwnika)",
+       "diff-multi-otherusers": "(Nie wëskrzëniono $1 wersëji{{PLURAL:$1|ùsôdzony|ùsôdzonych}} przez {{PLURAL:$2|jednegò brëkòwnika|$2 brëkòwników}})",
        "searchresults": "Skùtczi szëkbë",
        "searchresults-title": "Skùtczi szëkbë za \"$1\"",
        "notextmatches": "Felënk zamkłosë starnë",
        "prevn": "wczasniészé {{PLURAL:$1|$1}}",
        "nextn": "nôslédné {{PLURAL:$1|$1}}",
+       "prevn-title": "{{PLURAL:$1|Wczasniészi|Wszczasniészé}} $1 {{PLURAL:$1|rezultat|rezultatë|rezultatów}}",
        "nextn-title": "{{PLURAL:$1|Nôslédny|Nôslédne}} $1 {{PLURAL:$1|rezultat|rezultatë|rezultatów}}",
        "shown-title": "Wëskrzëni pò $1 {{PLURAL:$1|rezultace|rezultaczi|resultatów}} na starnã",
        "viewprevnext": "Òbaczë ($1 {{int:pipe-separator}} $2) ($3).",
+       "searchmenu-exists": "<strong>To je starna \"[[:$1]]\" na ti wiki.</strong> {{PLURAL:$2|0=|Òbôczë téż jinszé skùtczi szëkbë.}}",
        "searchmenu-new": "<strong>Usôdzë starnã \"[[:$1]]\"  na ti wiki!</strong> {{PLURAL:$2|0=|Òbôczë téż starnã ze skùtkama szëkbë.|Òbôczë téż skùtczi szëkbë.}}",
        "searchprofile-articles": "Artikle",
        "searchprofile-images": "w mùltimediach",
        "searchprofile-everything-tooltip": "Szëkba w całowny zamkłoscë (téz na starnach diskùsëji)",
        "searchprofile-advanced-tooltip": "Szëkba w wëbrónych rumach mionów",
        "search-result-size": "$1 ({{PLURAL:$2|1 słowò|$2 słowa|$2 słów}})",
+       "search-result-category-size": "{{PLURAL:$1|1 element|$1 elementë|$1 elementów}} ({{PLURAL:$2|1 kategòrija|$2 kategòrije|$2 kategòrijów}}, {{PLURAL:$3|1 lopk|$3 lopczi|$3 lopków}})",
        "search-redirect": "(przeczérowanié z $1)",
        "search-section": "(dzél $1)",
+       "search-file-match": "(pasëje do zamkłoscë lopka)",
        "search-suggest": "Të mëszlôł ò: $1",
        "search-interwiki-caption": "Sosterné ùdbë",
        "search-interwiki-default": "Wëniczi òd $1:",
        "newuserlogpage": "Nowi brëkòwnicë",
        "rightslog": "Prawa brëkòwnika",
        "action-edit": "editëjë tã starnã",
+       "action-createaccount": "ùsôdzaniô negò kònta brëkòwnika",
        "nchanges": "{{PLURAL:$1|zjinaka|zjinaczi|zjinaków}}",
        "enhancedrc-history": "Historijô",
        "recentchanges": "Slédné edicëje",
        "recentchanges-legend": "Òptacëje slédnych zjinaków",
        "recentchanges-summary": "Na starna wëskrzeniô historijã slédnych edicëjów w ti wiki.",
+       "recentchanges-noresult": "Felënk zjinaków w wëbrónym rumie pasëjących do twòjich kriteriów.",
        "recentchanges-feed-description": "Pòdstrzegô slédny zmianë w tim pòwrózkù.",
        "recentchanges-label-newpage": "Na edicëjô ùsôdza nową starnã",
        "recentchanges-label-minor": "To je drobnô edicëjô",
        "recentchanges-label-bot": "Tã edicëjã zrëchtowôł bòt.",
-       "recentchanges-label-unpatrolled": "Ta edicô jesz nie òsta sprawdzónô",
+       "recentchanges-label-unpatrolled": "Ta edicëjô jesz nie òsta sprawdzónô",
        "recentchanges-label-plusminus": "Zjinaczonô wiôlgòsc starnë (lëczba bajtów)",
        "recentchanges-legend-heading": "<strong>Légenda:</strong>",
        "recentchanges-legend-newpage": "{{int:recentchanges-label-newpage}} (òbaczë téż [[Special:NewPages|lëstã nowëch strón]])",
        "rc-change-size-new": "$1 {{PLURAL:$1|bajt|bajtë|bajtów}} pò zjinace",
        "rc-enhanced-expand": "Pòkażë detale (wëmôgô JavaScript)",
        "rc-enhanced-hide": "Zatacë detale",
+       "rc-old-title": "originalno ùsôdzoné jakno \"$1\"",
        "recentchangeslinked": "Zmianë w dolënkòwónëch",
-       "recentchangeslinked-feed": "Zmianë w dolënkòwónëch",
+       "recentchangeslinked-feed": "Zmianë w dolënkòwónych",
        "recentchangeslinked-toolbox": "Zmianë w dolënkòwónëch",
        "recentchangeslinked-title": "Zjinaczi w lënkòwónych z \"$1\"",
        "recentchangeslinked-summary": "Niżi nachôdô sã lësta slédnëch zjinaków na lënkòwónëch starnach z pòdóny starnë (abò we wszëtczich starnach przënôleżącëch do pòdóny kategòrëji).\nStarnë z [[Special:Watchlist|lëstë ùzérónëch artiklów]] są '''pògrëbioné'''.",
        "uploadwarning": "Òstrzega ò wladënkù",
        "savefile": "Zapiszë lôpk",
        "uploaddisabled": "Przeprôszómë! Mòżlëwòta wladënkù lopków na nen serwer òsta wëłączonô.",
+       "license": "Licencëjô:",
        "license-header": "Licencëjô",
        "imgfile": "lopk",
        "listfiles": "Lësta òbrôzków",
        "filehist-datetime": "Datum/Czas",
        "filehist-thumb": "Miniatura",
        "filehist-thumbtext": "Miniatura wersëji z $1",
+       "filehist-nothumb": "Felënk miniaturë",
        "filehist-user": "Brëkòwnik",
        "filehist-dimensions": "Miara",
        "filehist-filesize": "Miara lopka",
        "filehist-comment": "Òpisënk",
        "imagelinks": "Wëkòrzëstanie lopka",
        "linkstoimage": "{{PLURAL:$1|Hewò je starna jakô òdwòłëje|Hewò są starnë jaczé òdwòłëją}} sã do negò lopka:",
+       "linkstoimage-more": "Wicy jak $1 {{PLURAL:$1|lënkùjãcô starna|lenkùjącë starnë|lenkùjących starnów}} do tegò lopka.\nÙniższô lësta pòkazëjë blós {{PLURAL:$1|pierszi lënk|pierszé $1 lënczi|pierszich $1 lënków}} do negò lopka.\nPrzistãpnô je téż [[Special:WhatLinksHere/$2|fùll lësta]].",
        "nolinkstoimage": "Niżódnô starna nie lënkùje do negò lopka.",
+       "linkstoimage-redirect": "$1 (przeczérowôł do lopka) $2",
        "sharedupload": "Nen lopk je na $1 ë mòże bëc brëkòwóny w jinych ùdbach.",
        "sharedupload-desc-here": "Nen lopk je w $1 ë mòże bëc brëkòwóny w jinnych ùdbach.\nNiżi je wëdowiédzô ze [$2 starnë òpisënkù] negò lopka.",
+       "filepage-nofile": "To nie dô lopka ò tim mionie",
        "uploadnewversion-linktext": "Wladëjë nową wersëjã negò lopka",
        "upload-disallowed-here": "Nié mòżesz nadpisac negò lopka",
        "filerevert-comment": "Przëczëna:",
        "statistics-users-active": "Aktiwnëch brëkòwników",
        "statistics-users-active-desc": "Brekòwnicë, jaczi bëlë aktiwni òb òstatné $1 dni",
        "doubleredirects": "Dëbeltné przeczérowania",
+       "double-redirect-fixer": "Naprôwiôcz przeczérowaniów",
        "brokenredirects": "Zerwóné przeczerowania",
        "withoutinterwiki": "Starnë bez jãzëkòwich lënków",
        "nbytes": "$1 {{PLURAL:$1|bajt|bajtë|bajtów}}",
        "specialloguserlabel": "Chto:",
        "speciallogtitlelabel": "Co (titel abò {{ns:user}}:miono brëkòwnika):",
        "log": "Rejestr logòwaniô",
+       "all-logs-page": "Wszëtczé pùbliczné lodżi",
        "alllogstext": "Sparłãczoné registrë wszëtczich ôrtów dzejaniô dlô {{SITENAME}}.\nMòżesz zawãżëc wëszłosc przez wëbranié ôrtu registru, miona brëkòwnika abò miona zajimny dlô ce starnë.",
+       "logempty": "To nie dô w logach zamkłoscë pasowny do zapëtniô",
        "allpages": "Wszëtczé starnë",
        "nextpage": "Nôslédnô starna ($1)",
        "prevpage": "Wczasniészô starna ($1)",
        "allinnamespace": "Wszëtczé starnë (w rumie $1)",
        "allpagessubmit": "Pòkôżë",
        "allpagesprefix": "Pòkôżë naczënającë sã òd:",
+       "allpages-hide-redirects": "Zatacë przeczerowania",
        "categories": "Kategòrëje",
        "deletedcontributions": "Rëmniãti wkłôd brëkòwnika",
        "deletedcontributions-title": "Rëmniãti wkłôd brëkòwnika",
        "emailmessage": "Wiadło:",
        "emailsend": "Wëslë",
        "emailccme": "Sélôj mie e-mailã kòpijã wiadła.",
+       "usermessage-editor": "Systemòwé ògłosë",
        "watchlist": "Ùzéróné",
        "mywatchlist": "Lësta ùzérónëch artiklów",
+       "watchlistfor2": "Dlô $1 $2",
        "watchnologin": "Felënk logòwóniô",
        "addedwatchtext": "Starna \"[[:$1]]\" òsta dodónô do twòji [[Special:Watchlist|lëstë ùzérónëch artiklów]].\nNa ti lësce są registre przińdnëch zjinak ti starne ë na ji starnie dyskùsëji, a samò miono starnë mdze '''wëtłëszczone''' na [[Special:RecentChanges|lësce slédnich edicëji]], bë të mògł to òbaczëc.\n\nCzej chcesz remôc starnã z lëste ùzéronëch artiklów, klikni ''Òprzestôj ùzérac''.",
        "removedwatchtext": "Starna \"[[:$1]]\" òsta rëmniãtô z Twòji [[Special:Watchlist|lëstë ùzérónych]].",
        "unwatchthispage": "Òprzestôj ùzerac ną starnã",
        "notanarticle": "To nie je artikel",
        "watchlist-details": "Twòjô lësta ùzérónych starnów zamëkô w se {{PLURAL:$1|$1 pozycjã|$1 pozycje|$1 pozycjów}}, nie rechùjąc diskùsëjów.",
-       "wlheader-showupdated": "Artiklë jakczé òsta zmienioné òd Twòji slédny wizytë są wëapratnioné <strong>pògrëbieniém</strong>",
-       "wlnote": "Niżi môsz wëskrzënioné {{PLURAL:$1|slédną zmianã|'''$1''' slédnëch zmianów}} zrobioné òb {{PLURAL:$2|gòdzënã|'''$2''' gòdzënë/gòdzënów}}.",
+       "wlheader-showupdated": "Artiklë jakczé òstałë zmienioné òd Twòji slédny wizytë są wëapratnioné <strong>pògrëbieniém</strong>",
+       "wlnote": "Niżi môsz wëskrzënioné {{PLURAL:$1|slédną zmianã|<strong>$1</strong> slédnëch zmianów}} zrobioné òb {{PLURAL:$2|gòdzënã|<strong>$2</strong> gòdzënë/gòdzënów}}, rëchùjąc òd $3 dnia $4.",
        "wlshowlast": "Wëskrzëni zjinaczi z $1 gòdzënów $2 dni",
        "wlshowhidecategorization": "kategòrizacjã strón",
        "watchlist-options": "Òptacëje ùzérónych",
        "protect-cantedit": "Ni mòżesz zmieniac lédżi zazychrowaniô ti starnë, kò ni môsz dosc prawa do ji edicëji.",
        "restriction-type": "Przistãp:",
        "restriction-level": "Léga bezpieczi:",
+       "restriction-edit": "Edicëjô",
+       "restriction-move": "przenoszenié",
        "viewdeletedpage": "Òbaczë rëmóne starnë",
        "undeletebtn": "Doprowadzë nazôd",
        "undeletelink": "wëskrzëni abò doprowadzë nazôd",
        "mycontris": "Mój wkłôd",
        "anoncontribs": "Mój wkłôd",
        "contribsub2": "Dlô {{GENDER:$3|brëkòwnika|brëkòwniczczi}} $1 ($2)",
+       "nocontribs": "Felënk zjinaczi psaowny do tich kriteriów",
        "uctop": "(aktualnô)",
        "month": "Òd miesąca (ë wczasni):",
        "year": "Òd rokù (ë wczasni):",
        "sp-contributions-newbies-sub": "Dlô nowich brëkòwników",
        "sp-contributions-blocklog": "historëjô blokòwaniô",
        "sp-contributions-deleted": "rëmniãti wkłôd brëkòwnika",
+       "sp-contributions-uploads": "Wësłóné lopczi",
+       "sp-contributions-logs": "Rejestr logòwaniô",
        "sp-contributions-talk": "diskùsjô",
        "sp-contributions-blocked-notice-anon": "Ta adresa IP je w tim sztërkù zablokòwónô.\nSlédny wpisënk z registru blokòwaniów je widzec niżi:",
        "sp-contributions-search": "Szëkba za edicëjama",
        "whatlinkshere-hideredirs": "$1 przeczérowania",
        "whatlinkshere-hidetrans": "$1 doparłãczenia",
        "whatlinkshere-hidelinks": "$1 lënczi",
+       "whatlinkshere-hideimages": "$1 lënk z lopków",
        "whatlinkshere-filters": "Filtrë",
        "blockip": "Zascëgôj IP-adresã",
        "blockiptext": "Brëkùje formùlarza niżi abë zascëgòwac prawò zapisënkù spòd gwësny adresë IP. To robi sã blós dlôte abë zascëgnąc wandalëznom, a bëc w zgòdze ze [[{{MediaWiki:Policy-url}}|wskôzama]]. Pòdôj przëczënã (np. dając miona starn, na chtërnëch dopùszczono sã wandalëzny).",
        "autoblocker": "Zablokòwóno ce aùtomatnie, ga brëkùjesz ti sami adresë IP co brëkòwnik \"[[User:$1|$1]]\". Przëczënô blokòwóniô $1 to: \"'''$2'''\".",
        "blocklogpage": "Historëjô blokòwaniô",
        "blocklogentry": "zablokòwôł [[$1]], czas blokadë: $2 $3",
+       "reblock-logentry": "{{GENDER:$2|zjinacził|zjinacziła}} unastôw blokadë dlô [[$1]], czas blokadë: $2 $3",
        "unblocklogentry": "òdblokòwôł $1",
        "block-log-flags-anononly": "leno anonimòwi",
        "block-log-flags-nocreate": "blokada ùsôdzaniô kònta",
        "block-log-flags-noemail": "zablokòwónô adresa e-mail",
+       "proxyblocker": "Blokòwanié proxy",
        "lockbtn": "Zascëgôj bazã pòdôwków",
        "move-page-legend": "Przeniesë starnã",
        "movepagetext": "Z pòmòcą ùiższegò fòrmùlôra zjinaczisz miono starnë, przenosząc równoczasno ji historëjã.\nPòd stôrim titlã bãdze ùsôdzonô przeczérowùjącô starna.\nMòżesz aùtomatno zaktualniac przeczérowania wskazëwôjące titel przed zjinaką.\nJeżlë nie wëbiérzesz ti òptacëji, ùgwësni sã pò przenieseniu starnë, czë nie òstałé ùsôdzoné [[Special:DoubleRedirects|dëbeltné]] abò [[Special:BrokenRedirects|zerwóné przeczérowania]].\nJes òdpòwiedzalny za to, abë lënczi dali robiłë tam dze mają.\n\nStarna '''ni''' bãdze przeniosłô, jeżlë starna ò nowim mionie ju je, chòba że je òna pùstô abò je przeczérowaniém ë mô pùstą historëjã edicëji.\nTo òznôczô, że lëchą òperacëjã zjinaczi miona mòże doprowôdzëc bezpieczno nazôd, zjinaczając nowé miono starnë nawczasniészą, ë że ni mòże nadpisac stranë chtërną ju dô.\n\n'''BÔCZËNK!'''\nTo mòże bëc drasticznô abò nieprzewidëwólnô zjinaka w przëtrôfkù pòpùlarnych starnów.\nÙgwësni sã co do skùtków ti òperacëji, niglë to zrobisz.",
        "allmessagesnotsupportedDB": "'''{{ns:special}}:Allmessages''' nie mòże bëc brëkòwónô, temù że '''$wgUseDatabaseMessages''' je wëłączony.",
        "thumbnail-more": "Zwikszi",
        "import": "Impòrtëjë starnë",
+       "importlogpage": "Log impòrtu",
        "tooltip-pt-userpage": "{{GENDER:|Twòja}} starna brëkòwnika",
        "tooltip-pt-mytalk": "{{GENDER:|Mòjô}} starna diskùsëji",
        "tooltip-pt-anontalk": "Diskùsjô brëkòwnika dlô ti adresë IP",
        "tooltip-ca-nstab-special": "To je specjalnô starna, chtërny ni mòżesz editowac",
        "tooltip-ca-nstab-project": "Òbôczë starnã ùdbë",
        "tooltip-ca-nstab-image": "Wëskrzëni starnã lopka",
+       "tooltip-ca-nstab-mediawiki": "Òbôczë systemòwé wiadło",
        "tooltip-ca-nstab-template": "Wëskrzëni szablónã",
        "tooltip-ca-nstab-help": "Wëskrzëni starnã pòmòcë",
        "tooltip-ca-nstab-category": "Wëskrzëni starnã kategòrëji",
        "others": "jiné",
        "spamprotectiontitle": "Anti-spamòwi filter",
        "simpleantispam-label": "Antispamòwi filter.\n<strong>Nie</strong> wpisëjë tuwò niczegò!",
+       "pageinfo-title": "Wëdowiédzô ò „$1”",
+       "pageinfo-header-basic": "Spòdlowô wëdowiédzô",
+       "pageinfo-header-edits": "Historëjô edicëji",
+       "pageinfo-header-restrictions": "Zazychrowanié starnë",
+       "pageinfo-header-properties": "Swòjiznë starnë",
+       "pageinfo-display-title": "Wëskrzëni titel",
+       "pageinfo-default-sort": "Domëslny klucz sortowaniô",
+       "pageinfo-length": "Długòta starnë (w bajtach)",
+       "pageinfo-article-id": "Jindentifikatora starnë",
+       "pageinfo-language": "Jãzëk zamkłoscë starnë",
+       "pageinfo-content-model": "Mòdel zamkłoscë starnë",
+       "pageinfo-robot-policy": "Jindeksowanié przez robòtë",
+       "pageinfo-robot-index": "Zezwòloné",
+       "pageinfo-robot-noindex": "Niedozwóloné",
+       "pageinfo-watchers": "Wielëna ùżérających",
+       "pageinfo-few-watchers": "Mni jak $1 {{PLURAL:$1|ùzyrający|ùzyrających}}",
+       "pageinfo-redirects-name": "Wielëna przeczérowaniów do ti starnë",
+       "pageinfo-subpages-name": "Wielëna pòdstarnów ti starnë",
+       "pageinfo-subpages-value": "$1 ($2 {{PLURAL:$2|przeczerowanié|przeczerowaniô|przeczerowaniów}}; $3 {{PLURAL:$3|bez przeczerowaniô|bez przeczerowaniów}})",
+       "pageinfo-firstuser": "Ùsôdzca starnë",
+       "pageinfo-firsttime": "Datum ùsôdzenia starnë",
+       "pageinfo-lastuser": "Slédny editora",
+       "pageinfo-lasttime": "Datum slédny edicëji",
+       "pageinfo-edits": "Wielëna edicëji",
+       "pageinfo-authors": "Wielëna ùsôdzców",
+       "pageinfo-recent-edits": "Wielëna slédnych edicëji (w czasu $1)",
+       "pageinfo-recent-authors": "Wielëna slédnych ùsôdzców",
+       "pageinfo-magic-words": "Magiczné {{PLURAL:$1|słowò|słowa|słowów}} ($1)",
+       "pageinfo-hidden-categories": "{{PLURAL:$1|Zataconô kategòrëjô|Zataconé kategòrëje}} ($1)",
+       "pageinfo-templates": "Ùżëwón{{PLURAL:$1|ô szablóna|é szablónë}} ($1)",
        "pageinfo-toolboxlink": "Wëdowiédzô ò ti starnie.",
+       "pageinfo-contentpage": "Rëchòwónô jakno artikel",
+       "pageinfo-contentpage-yes": "Jo",
+       "patrol-log-page": "Log patrolowaniô",
        "previousdiff": "← Pòprzédnô edicëjô",
        "nextdiff": "Nôslédnô edicëjô →",
        "imagemaxsize": "Ògrańczë na starnie òpisënkù òbrôzków jich miarã do:",
        "thumbsize": "Miara miniaturków:",
+       "widthheightpage": "$1 × $2, $3 {{PLURAL:$3|starna|starnë|starnów}}",
        "file-info-size": "$1 × $2 pikslów, miara lopka: $3, ôrt MIME: $4",
+       "file-info-size-pages": "$1 × $2 pikslów, miara lopka: $3, typ MIME: $4, $5 {{PLURAL:$5|starna|starnë|starnów}}",
        "file-nohires": "Felëje wikszô miara.",
        "svg-long-desc": "Lopk SVG, nominalno $1 × $2 pikslów, miara lopka: $3",
        "show-big-image": "Pierwòtny lopk",
        "monthsall": "wszëtczé",
        "confirmemail_loggedin": "Twòjô adresa e-mail òsta pòcwierdzona.",
        "confirm_purge_button": "Jo!",
+       "imgmultipagenext": "nôslédnô starna →",
        "imgmultigo": "Biéj!",
+       "imgmultigoto": "Biéj do starnë $1",
        "autoredircomment": "Przeczérowanié do [[$1]]",
        "autosumm-new": "Pòwsta nowô starna:",
+       "watchlisttools-clear": "Wëczësczë ùzérówną lëstã",
        "watchlisttools-view": "Òbaczë wôżnészé zmianë",
        "watchlisttools-edit": "Òbaczë a editëjë lëstã ùzérónëch artiklów",
-       "watchlisttools-raw": "Editëjë sërą lëstã",
+       "watchlisttools-raw": "Editëjë tekstową lëstã",
        "signature": "[[{{ns:user}}:$1|$2]] ([[{{ns:user_talk}}:$1|diskùsëjô]])",
        "version": "Wersëjô",
+       "redirect": "Przeczérëjë z jidentyfikatora lopka, brëkòwnika, starnë, wersëji abò wpisënka loga",
+       "redirect-summary": "Na szpecjalnô starna przczerowùje do: lopka(ò pòdónym mionie), do sstarny (ò pòdónym numrze wersëji abò jidentyfikatorze starë), do starnë brëkòwnika (ò pòdónym numerowim jidentyfikatorze) abò do rejestru (ò pòdónym numrze akcëji). Òrt ùżëcô: [[{{#Special:Redirect}}/file/Example.jpg]], [[{{#Special:Redirect}}/revision/328429]], [[{{#Special:Redirect}}/user/101]] abò [[{{#Special:Redirect}}/logid/186]].",
+       "redirect-submit": "Biéj",
+       "redirect-lookup": "Szëkôj:",
+       "redirect-value": "Wôrtnota:",
+       "redirect-user": "ID brëkòwnika",
+       "redirect-page": "Jindentifikatora starnë",
+       "redirect-revision": "Wersëjô starnë",
+       "redirect-file": "Miono lopka",
        "specialpages": "Specjalné starnë",
        "tag-filter": "Filtr [[Special:Tags|znakòwników]]:",
        "tag-list-wrapper": "([[Special:Tags|{{PLURAL:$1|Znakòwnik|Znakòwniczi}}]]: $2)",
+       "tags-active-yes": "Jo",
+       "tags-active-no": "Ni",
+       "tags-hitcount": "{{PLURAL:$1|zjinaka|zjinaczi|zjinaków}}",
        "tags-create-reason": "Przëczëna:",
        "tags-delete-reason": "Przëczëna:",
        "tags-activate-reason": "Przëczëna:",
        "tags-deactivate-reason": "Przëczëna:",
        "logentry-delete-delete": "$1 {{GENDER:$2|rëmnął|rëmnãła}} starnã $3",
+       "logentry-delete-restore": "$1 {{GENDER:$2|doprowôdzôł|doprowôdza}} nazôd starnã $3",
+       "logentry-delete-revision": "$1 {{GENDER:$2|zjinacził|zjinacziła}} widzawnotã {{PLURAL:$5|wersëji|$5 wersëji}} starnë $3: $4",
+       "revdelete-content-hid": "zamkłosc òsta zataconô",
        "revdelete-restricted": "nastôwi ògrańczenia dlô sprôwników",
        "revdelete-unrestricted": "rëmôj ògrańczenia dlô sprôwników",
        "logentry-move-move": "$1 {{GENDER:$2|przeniós|przeniosła}} starnã $3 do $4",
+       "logentry-move-move-noredirect": "$1 {{GENDER:$2|przeniós|przeniosła}} starnã $3 na $4, bez òstôwienia przczerowaniô pòd stôrim titlã",
+       "logentry-move-move_redir": "$1 {{GENDER:$2|przeniós|przeniosła}} starnã $3 na $4 w plac przeczérowaniô",
+       "logentry-patrol-patrol-auto": "$1 aùtomatno {{GENDER:$2|nacechòwôł|nacechòwa}} wersëjã $4 starnë $3 jakno przezdrzóna",
        "logentry-newusers-create": "Kònto {{GENDER:$2|brëkòwnika|brëkòwnicczki}} $1 òstało ùsôdzone",
+       "logentry-newusers-autocreate": "$1 aùtomatno {{GENDER:$2|ùsôdzôł|ùsôdza}} kònto brëkòwnika",
        "logentry-protect-protect": "$1 {{GENDER:$2|zazychrowôł|zazychrowała}} $3 $4",
        "logentry-upload-upload": "$1 {{GENDER:$2|przesłôł|przesłała}} $3",
+       "logentry-upload-overwrite": "$1 {{GENDER:$2|wladowôł|wladowa}} nową wersëjã $3",
        "searchsuggest-search": "Szëkba",
+       "duration-days": "$1 {{PLURAL:$1|dzéń|dni}}",
        "pagelang-reason": "Przëczëna",
        "special-characters-group-ipa": "IPA",
        "special-characters-group-symbols": "Céchë",
        "special-characters-group-greek": "Grecczi",
        "special-characters-group-cyrillic": "Cërylica",
        "special-characters-group-arabic": "Arabsczi",
-       "special-characters-group-hebrew": "Hebrajsczi"
+       "special-characters-group-hebrew": "Hebrajsczi",
+       "randomrootpage": "Kawlowô starna (bez pòdstarnów)"
 }
index 87a540f..9602cb5 100644 (file)
        "rcfilters-view-namespaces-tooltip": "Ergebnisse nach Namensraum filtern",
        "rcfilters-view-tags-tooltip": "Ergebnisse filtern, die Bearbeitungsmarkierungen verwenden",
        "rcfilters-view-return-to-default-tooltip": "Zurück zum Hauptfiltermenü",
+       "rcfilters-liveupdates-button": "Live-Aktualisierungen",
        "rcnotefrom": "Angezeigt {{PLURAL:$5|wird die Änderung|werden die Änderungen}} seit <strong>$3, $4</strong> (max. <strong>$1</strong> Einträge).",
        "rclistfromreset": "Datumsauswahl zurücksetzen",
        "rclistfrom": "Nur Änderungen seit $3, $2 Uhr zeigen.",
index 606203b..0599dbc 100644 (file)
        "recentchanges-legend-unpatrolled": "{{int:recentchanges-label-unpatrolled}}",
        "recentchanges-legend-plusminus": "(<em>±123</em>)",
        "recentchanges-submit": "Show",
+       "rcfilters-legend-heading": "<strong>List of abbreviations:</strong>",
        "rcfilters-activefilters": "Active filters",
        "rcfilters-advancedfilters": "Advanced filters",
        "rcfilters-quickfilters": "Saved filters",
        "rcfilters-view-namespaces-tooltip": "Filter results by namespace",
        "rcfilters-view-tags-tooltip": "Filter results using edit tags",
        "rcfilters-view-return-to-default-tooltip": "Return to main filter menu",
+       "rcfilters-liveupdates-button": "Live updates",
        "rcnotefrom": "Below {{PLURAL:$5|is the change|are the changes}} since <strong>$3, $4</strong> (up to <strong>$1</strong> shown).",
        "rclistfromreset": "Reset date selection",
        "rclistfrom": "Show new changes starting from $2, $3",
        "mediastatistics-header-text": "Textual",
        "mediastatistics-header-executable": "Executables",
        "mediastatistics-header-archive": "Compressed formats",
+       "mediastatistics-header-3d": "3D",
        "mediastatistics-header-total": "All files",
        "json-warn-trailing-comma": "$1 trailing {{PLURAL:$1|comma was|commas were}} removed from JSON",
        "json-error-unknown": "There was a problem with the JSON. Error: $1",
index 295d1b4..1090452 100644 (file)
        "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|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 se {{PLURAL:$2|ha encontrado una revisión|han encontrado $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].",
+       "difference-missing-revision": "No se {{PLURAL:$2|ha encontrado una revisión|han encontrado $2 revisiones}} de la comparación solicitada ($1).\n\nLa causa de esto suele ser un enlace obsoleto hacia una edición de una página que 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": "Resultados por título de página",
        "databasenotlocked": "La base de datos no está bloqueada.",
        "lockedbyandtime": "(por {{GENDER:$1|$1}} el $2 a las $3)",
        "move-page": "Trasladar $1",
-       "move-page-legend": "Renombrar página",
+       "move-page-legend": "Trasladar la página",
        "movepagetext": "Al usar el siguiente formulario, se renombrará una página y se trasladará todo su historial al nuevo nombre.\nEl título anterior se convertirá en una redirección al título nuevo.\nPuedes actualizar automáticamente las redirecciones que apuntan al título original.\nSi eliges no hacerlo, asegúrate de revisar posibles redirecciones [[Special:DoubleRedirects|dobles]] o [[Special:BrokenRedirects|incorrectas]].\nTú eres responsable de asegurarte de que los enlaces sigan apuntando adonde se supone que deberían hacerlo.\n\nRecuerda que la página <strong>no</strong> se trasladará si ya existe una página con el título nuevo, salvo que sea una redirección y no tenga historial de edición.\nEsto significa que podrás renombrar una página a su título original si has cometido un error, pero que no podrás sobrescribir una página existente.\n\n<strong>Nota:</strong>\nEste puede ser un cambio drástico e inesperado para una página popular; asegúrate de entender las consecuencias del procedimiento antes de seguir adelante.",
        "movepagetext-noredirectfixer": "Al usar el siguiente formulario, se renombrará una página y se trasladará todo su historial al nuevo nombre.\nEl título anterior se convertirá en una redirección al título nuevo.\nAsegúrate de no dejar [[Special:DoubleRedirects|redirecciones dobles]] o [[Special:BrokenRedirects|incorrectas]].\nTú eres responsable de asegurarte de que los enlaces sigan apuntando adonde se supone que deberían hacerlo.\n\nRecuerda que la página <strong>no</strong> se trasladará si ya existe una página con el título nuevo, salvo que sea una redirección y no tenga historial de edición.\nEsto significa que podrás renombrar una página a su título original si has cometido un error, pero que no podrás sobrescribir una página existente.\n\n<strong>Nota:</strong>\nEste puede ser un cambio drástico e inesperado para una página popular; asegúrate de entender las consecuencias del procedimiento antes de seguir adelante.",
        "movepagetalktext": "Si marcas esta casilla, la página de discusión asociada se trasladará automáticamente al título nuevo a menos que ya exista una página de discusión no vacía allí.\n\nEn este caso, deberás trasladar o fusionar manualmente la página si así lo quieres.",
        "moveuserpage-warning": "<strong>Advertencia:</strong> estás a punto de trasladar una página de usuario. Ten en cuenta que solo se trasladará la página; el usuario <em>no</em> se renombrará.",
        "movecategorypage-warning": "<strong>Advertencia:</strong> estás a punto de trasladar una página de categoría. Ten en cuenta que se trasladará sólo la página, y las páginas en la antigua categoría <em>no</em> se recategorizarán en la nueva.",
-       "movenologintext": "Es necesario ser usuario registrado y [[Special:UserLogin|haber iniciado sesión]] para renombrar una página.",
+       "movenologintext": "Es necesario ser usuario registrado y [[Special:UserLogin|haber accedido a tu cuenta]] para trasladar páginas.",
        "movenotallowed": "No tienes permiso para trasladar páginas.",
        "movenotallowedfile": "No tienes permiso para trasladar archivos.",
        "cant-move-user-page": "No tienes permiso para trasladar páginas de usuario (excepto subpáginas).",
        "namespace-nosubpages": "El espacio de nombres «$1» no permite subpáginas.",
        "newtitle": "Título nuevo:",
        "move-watch": "Vigilar páginas de origen y destino",
-       "movepagebtn": "Renombrar página",
+       "movepagebtn": "Trasladar la página",
        "pagemovedsub": "Renombrado realizado con éxito",
        "movepage-moved": "<strong>«$1» ha sido trasladada a «$2»</strong>",
        "movepage-moved-redirect": "Se ha creado una redirección.",
index 6fbdac0..a70debc 100644 (file)
@@ -57,7 +57,7 @@
        "tog-enotifusertalkpages": "Nire eztabaida orrialdea aldatzen denean e-posta jaso",
        "tog-enotifminoredits": "Orrialde edo fitxategietan aldaketak txikiak direnean ere e-posta jaso",
        "tog-enotifrevealaddr": "Jakinarazpen mezuetan nire e-posta helbidea erakutsi",
-       "tog-shownumberswatching": "Jarraitzen duen erabiltzaile kopurua erakutsi",
+       "tog-shownumberswatching": "Ikusten duten erabiltzaile kopurua erakutsi",
        "tog-oldsig": "Zure egungo sinadura:",
        "tog-fancysig": "Sinadura wikitestu gisa tratatu (lotura automatikorik gabe)",
        "tog-uselivepreview": "Zuzeneko aurrebista erabili",
        "period-am": "AM",
        "period-pm": "PM",
        "pagecategories": "{{PLURAL:$1|Kategoria|Kategoriak}}",
-       "category_header": "«$1» kategoriako artikuluak",
+       "category_header": "«$1» kategoriako orriak",
        "subcategories": "Azpikategoriak",
        "category-media-header": "Media \"$1\" kategorian",
        "category-empty": "''Kategoria honek ez dauka artikulurik uneotan.''",
        "noindex-category": "Indexatugabeko orrialdeak",
        "broken-file-category": "Fitxategiren baterako lotura hautsia duten orriak",
        "about": "Honi buruz",
-       "article": "Artikulua",
+       "article": "Eduki-orria",
        "newwindow": "(leiho berrian irekitzen da)",
        "cancel": "Utzi",
        "moredotdotdot": "Gehiago...",
        "pageswithprop-prophidden-long": "testu luzearen ezagaurria izkutatua ($1)",
        "doubleredirects": "Birbideratze bikoitzak",
        "doubleredirectstext": "Lerro bakoitzean lehen eta bigarren birzuzenketetarako loturak ikus daitezke, eta baita edukia daukan edo eduki beharko lukeen orrialderako lotura ere. Lehen birzuzenketak azken honetara <del>zuzendu</del> beharko luke.",
-       "double-redirect-fixed-move": "«[[$1]]» orria mugitu da.\nAutomatikoki eguneratu da eta orain «[[$2]]» orrira darama.",
-       "double-redirect-fixed-maintenance": "«[[$1]]» orritik «[[$2]]» orrira birbideratze bikoitza automatikoki konpontzea mantentze lan bat da.",
+       "double-redirect-fixed-move": "«[[$1]]» orria mugitu da.\nAutomatikoki eguneratu da, eta orain «[[$2]]» orrira darama.",
+       "double-redirect-fixed-maintenance": "«[[$1]]» orritik «[[$2]]» orrira egindako birbideratze bikoitza automatikoki konpondua, mantentze lanak egitean.",
        "double-redirect-fixer": "Birbideratze zuzentzailea",
        "brokenredirects": "Hautsitako birzuzenketak",
        "brokenredirectstext": "Ondorengo birbideratze hauek existitzen ez diren orrietara bideratuta daude:",
index 98dc113..47eed7a 100644 (file)
        "rcfilters-savedqueries-unsetdefault": "حذف از پیش‌فرض",
        "rcfilters-savedqueries-remove": "حذف",
        "rcfilters-savedqueries-new-name-label": "نام",
-       "rcfilters-savedqueries-apply-label": "ذخیره تنظیمات",
+       "rcfilters-savedqueries-new-name-placeholder": "هدف پالایه را توضیح بده",
+       "rcfilters-savedqueries-apply-label": "ساخت پالایه",
        "rcfilters-savedqueries-cancel-label": "لغو",
        "rcfilters-savedqueries-add-new-title": "ذخیره تنظیمات کنونی پالایه",
        "rcfilters-restore-default-filters": "بازگردانی پالایه‌های پیش‌فرض",
        "rcfilters-filter-excluded": "مستثنی‌شده",
        "rcfilters-tag-prefix-namespace-inverted": "<strong>:نه</strong> $1",
        "rcfilters-view-tags": "ویرایش‌های برچسب‌شده",
+       "rcfilters-view-namespaces-tooltip": "نتیجهٔ پالایه بر پایهٔ فضای نام",
+       "rcfilters-view-tags-tooltip": "نتایج پالایه با کمک برچسب‌های ویرایش",
+       "rcfilters-view-return-to-default-tooltip": "بازگشت به منوی پالایهٔ اصلی",
+       "rcfilters-liveupdates-button": "به‌روزرسانی‌های زنده",
        "rcnotefrom": "در زیر تغییرات از <strong>$3, $4</strong> (تا <strong>$1</strong> {{PLURAL:$5|نشان داده شده‌است|نشان داده شده‌اند}}).",
        "rclistfromreset": "از نو کردن انتخاب تاریخ",
        "rclistfrom": "نمایش تغییرات تازه با شروع از $3 $2",
        "blocklogpage": "سیاههٔ بستن",
        "blocklog-showlog": "دسترسی این کاربر در گذشته بسته شده‌است.\nسیاههٔ قطع دسترسی در زیر نمایش یافته است:",
        "blocklog-showsuppresslog": "دسترسی این کاربر قبلاً بسته شده و این کاربر پنهان شده‌است.\nسیاههٔ قطع دسترسی در زیر نمایش یافته است:",
-       "blocklogentry": "«[[$1]]» را تا $2 بست $3",
+       "blocklogentry": "«[[$1]]» را $2 بست $3",
        "reblock-logentry": "تنظیمات قطع دسترسی [[$1]] را تغییر داد به پایان قطع دسترسی در $2 $3",
        "blocklogtext": "این سیاهه‌ای از بستن و باز کردن کاربرها است.\nنشانی‌های آی‌پی که به طور خودکار بسته شده‌اند فهرست نشده‌اند.\nبرای فهرست محرومیت‌ها و بسته‌شدن‌های حال حاضر به [[Special:BlockList|فهرست بسته‌شده‌ها]] مراجعه کنید.",
        "unblocklogentry": "$1 را باز کرد",
        "revdelete-uname-unhid": "نام کاربری را آشکار کرد",
        "revdelete-restricted": "مدیران را محدود کرد",
        "revdelete-unrestricted": "محدودیت مدیران را لغو کرد",
-       "logentry-block-block": "$1 {{GENDER:$4|$3}} را تا $5 {{GENDER:$2|بست}} $6",
+       "logentry-block-block": "$1 {{GENDER:$4|$3}} را $5 {{GENDER:$2|بست}} $6",
        "logentry-block-unblock": "$1 {{GENDER:$4|$3}} را {{GENDER:$2|بازکرد}}",
        "logentry-block-reblock": "$1 {{GENDER:$2|تنظیمات}} بستن {{GENDER:$4|$3}} را به پایان قطع دسترسی $5 $6 تغییر داد.",
        "logentry-suppress-block": "$1 {{GENDER:$2|بسته شد}} {{GENDER:$4|$3}} با پایان قطع دسترسی در زمان $5 $6",
index 1fdc73d..2937902 100644 (file)
        "tagline": "De {{SITENAME}}",
        "help": "Aide",
        "search": "Rechercher",
-       "search-ignored-headings": " #<!-- laisser cette ligne comme telle --> <pre>\n# Titres des sections qui seront ignorés par la recherche\n# Les changements effectués ici prennent effet dès lors que la page avec le titre est indexée.\n# Vous pouvez forcer la réindexation de la page en effectuant une modification vide\n# La syntaxe est la suivante :\n#   * Toute ligne précédée d’un « # » est un commentaire\n#   * Toute ligne non-vide est le titre exact à ignorer, casse comprise\nRéférences\nLiens externes\nVoir aussi\n #</pre> <!-- laisser cette ligne comme telle -->",
+       "search-ignored-headings": " #<!-- laisser cette ligne comme telle --><pre>\n# Titres des sections qui seront ignorés par la recherche\n# Les changements effectués ici prennent effet dès lors que la page avec le titre est indexée.\n# Vous pouvez forcer la réindexation de la page en effectuant une modification vide\n# La syntaxe est la suivante :\n#   * Toute ligne précédée d’un « # » est un commentaire\n#   * Toute ligne non-vide est le titre exact à ignorer, casse comprise\nRéférences\nLiens externes\nVoir aussi\n #</pre><!-- laisser cette ligne comme telle -->",
        "searchbutton": "Rechercher",
        "go": "Consulter",
        "searcharticle": "Lire",
        "rcfilters-view-namespaces-tooltip": "Résultats du filtrage par espace de noms",
        "rcfilters-view-tags-tooltip": "Résultats du filtrage par balise d'édition",
        "rcfilters-view-return-to-default-tooltip": "Retour au menu principal du filtre",
+       "rcfilters-liveupdates-button": "Mises à jour en direct",
        "rcnotefrom": "Ci-dessous {{PLURAL:$5|la modification effectuée|les modifications effectuées}} depuis le <strong>$3, $4</strong> (affichées jusqu’à <strong>$1</strong>).",
        "rclistfromreset": "Réinitialiser la sélection de la date",
        "rclistfrom": "Afficher les nouvelles modifications depuis le $3 à $2",
        "autoblocklist-submit": "Rechercher",
        "autoblocklist-legend": "Lister les blocages automatiques",
        "autoblocklist-localblocks": "{{PLURAL:$1|Blocage automatique local|Blocages automatiques locaux}}",
-       "autoblocklist-total-autoblocks": "Nombre total de blocages automatiques : $1",
+       "autoblocklist-total-autoblocks": "Nombre total de blocages automatiques : $1",
        "autoblocklist-empty": "La liste des blocages automatiques est vide.",
        "autoblocklist-otherblocks": "{{PLURAL:$1|Autre blocage automatique|Autres blocages automatiques}}",
        "ipblocklist": "Utilisateurs bloqués",
        "anonusers": "{{PLURAL:$2|l'utilisateur anonyme|les utilisateurs anonymes}} $1 de {{SITENAME}}",
        "creditspage": "Crédits de la page",
        "nocredits": "Il n'y a pas d'informations d'attribution disponibles pour cette page.",
-       "spamprotectiontitle": "Filtre de protection anti-pollupostage",
-       "spamprotectiontext": "La page que vous avez voulu sauvegarder a été bloquée par le filtre anti-pollupostage. \nCeci est probablement dû à l’introduction d’un lien vers un site externe apparaissant sur la liste noire.",
-       "spamprotectionmatch": "Le texte suivant a déclenché notre filtre de protection anti-pollupostage : $1",
+       "spamprotectiontitle": "Filtre de protection anti-pourriels",
+       "spamprotectiontext": "La page que vous avez voulu sauvegarder a été bloquée par le filtre anti-pourriels. \nCeci est probablement dû à l’introduction d’un lien vers un site externe apparaissant sur la liste noire.",
+       "spamprotectionmatch": "Le texte suivant a déclenché notre filtre de protection anti-pourriels: $1",
        "spambot_username": "Nettoyage de pourriels par MediaWiki",
        "spam_reverting": "Rétablissement de la dernière version ne contenant pas de lien vers $1",
        "spam_blanking": "Toutes les versions contenant des liens vers $1 sont blanchies",
index 9d7b20b..d60a275 100644 (file)
        "edit-gone-missing": "De side kin net bywurke wurde.\nHy liket fuorthelle te wezen.",
        "edit-conflict": "Bewurkingskonflikt.",
        "edit-no-change": "Jo bewurking is net trochfierd, om 't der gjin feroaring yn 'e tekst oanbrocht is.",
+       "postedit-confirmation-created": "Dizze side is oanmakke.",
        "postedit-confirmation-saved": "Jo bewurking is fêstlein.",
        "edit-already-exists": "De side is net oanmakke.\nHy bestie al.",
        "defaultmessagetext": "Standert berjochttekst",
index 65a720d..bafdb74 100644 (file)
        "anontalk": "Lo'iya",
        "navigation": "Navigasi",
        "and": "&#32;wawu",
-       "qbfind": "Lolohe",
-       "qbbrowse": "Momilohu",
-       "qbedit": "Boli'a",
-       "qbpageoptions": "Halaman botiya",
-       "qbmyoptions": "Halamani'u",
        "faq": "FAQ",
-       "faqpage": "Project:FAQ",
        "actions": "Huhutu",
        "namespaces": "Huwali lo tanggulo",
        "variants": "Varian",
        "edit-local": "Ubawa deskripsi lokal",
        "create": "Mohutu",
        "create-local": "Duhengi deskripsi lokal",
-       "editthispage": "Boli'a halaman botiye",
-       "create-this-page": "Pohutuwa halamani botiye",
        "delete": "Luluta",
-       "deletethispage": "Luluta halaman botiye",
-       "undeletethispage": "Bataliya moluluto",
        "undelete_short": "Batali moluluto {{PLURAL:$1|tuwawu uba|$1 ubawa}}",
        "viewdeleted_short": "Bilohi {{PLURAL:$1|tuwawu yiluluto uba|$1 yiluluto ubawa}}",
        "protect": "Dahawa",
        "protect_change": "boli'a",
-       "protectthispage": "Dahawa halaman boti",
        "unprotect": "dudaha ubaalo",
-       "unprotectthispage": "ubawa dudaha halaman botiye",
        "newpage": "Halaman bohu",
-       "talkpage": "Bisalayi halaman boti",
        "talkpagelinktext": "lo'iya",
        "specialpage": "Halaman uda'a",
        "personaltools": "Pilaakasi lo hihilawo",
-       "articlepage": "Bilohi tuango halaman",
-       "talk": "Biisalawa",
+       "talk": "Lo'iya",
        "views": "Bibilohu",
        "toolbox": "Pilaakasi",
        "tool-link-userrights": "Boli'a lembo'a {{GENDER:$1|pengguna}}",
        "tool-link-userrights-readonly": "Bilohi lembo'a {{GENDER:$1|pengguna}}",
        "tool-link-emailuser": "Lawola email ode {{GENDER:$1|user}}",
-       "userpage": "Bilohi halaman pengguna",
-       "projectpage": "Bilohi halaman proyek",
        "imagepage": "Bilohi halaman berkas",
        "mediawikipage": "Bilohi halaman tahuli",
        "templatepage": "Bilohi halaman templat",
        "editing": "Momoli'o $1",
        "creating": "Mohutu $1",
        "editingsection": "Momoli'o $1 (tayadu)",
+       "yourdiff": "Hihede",
        "templatesused": "{{PLURAL:$1|Template}} pilopohuna to halaman botiye:",
        "template-protected": "(he dahalo)",
        "template-semiprotected": "(dahalo-ngowa)",
        "hiddencategories": "Halaman botiye woluwo anggota {{PLURAL:$1|1 kategori wanto-wanto'o $1}}:",
        "permissionserrorstext-withaction": "Yi'o ja haku akses $2, sababu {{PLURAL:$1|alasani}} botiya:",
        "moveddeleted-notice": "Halaman botiye ma yiluluto.\nSebagai referensi, botiya log piloluluta wawu piloheyiya halaman botiye.",
+       "postedit-confirmation-saved": "Biloli'umu ma tilahu.",
+       "edit-already-exists": "Ja mowali mohutu halaman bohu. Ma woluwo.",
        "viewpagelogs": "Bilohi log lo halaman botiye",
        "currentrev-asof": "Biloli'o pulitiyo to $1",
        "revisionasof": "Biloli'o to $1",
        "currentrevisionlink": "Biloli'o pulitiyo",
        "cur": "mst",
        "last": "diipo",
+       "history-fieldset-title": "Lolohe u biloli'o",
+       "histfirst": "mohihewo da'a",
+       "histlast": "bohu da'a",
        "rev-delundel": "popobilohe/wanto'a",
        "history-title": "Riwayati lo'u loboli'a lonto \"$1\"",
        "difference-title": "$1 hihede revisi",
        "searchall": "nga'amila",
        "search-showingresults": "{{PLURAL:$4|hASIL <strong>$1</strong> of <strong>$3</strong>|Hasil <strong>$1 - $2</strong> lonto <strong>$3</strong>}}",
        "search-nonefound": "Diya'a hasili mohumayawa lo kriteria",
+       "powersearch-toggleall": "Nga'amila",
+       "powersearch-togglenone": "Diya'a",
+       "powersearch-remember": "Eelayi u tilulawoto wonu mololohe pe'eentamayi",
        "mypreferences": "Preperensi",
+       "prefs-skin": "Alipo",
+       "searchresultshead": "Lolohe",
+       "prefs-searchoptions": "Lolohe",
+       "prefs-namespaces": "Huwali lo tanggulo",
+       "default": "Kakali",
+       "yourrealname": "Tanggula banari",
+       "yourlanguage": "Bahasa",
+       "grouppage-bot": "{{ns:project}}:Bot",
        "right-writeapi": "Mopohuna API moluladu",
        "newuserlogpage": "Log ta ohu'uwo bohu",
+       "action-edit": "boli'a halaman botiye",
        "enhancedrc-history": "riwayati",
        "recentchanges": "Boheli loboli'a mola",
        "recentchanges-legend": "Tulawotolo boheli loboli'a mola",
        "recentchanges-summary": "Lolohe u boheli loboli'a mola to wiki halaman botiye.",
+       "recentchanges-noresult": "Diya'a u loboli'a to wakutu botiya mohumayawa lo kriteria.",
+       "recentchanges-feed-description": "Tapula u boheli loboli'a mola to delomo wiki paalo botiye.",
        "recentchanges-label-newpage": "Momoli'a utiye mohutu halaman bohu",
        "recentchanges-label-minor": "Utiye biloli'o ngo'idi",
        "recentchanges-label-bot": "Lomoli'a utiye kilaraja lo bot",
        "rcshowhidebots-show": "Popobilohe",
        "rcshowhidebots-hide": "Wanto'a",
        "rcshowhideliu": "$1 ta ohu'uwo to daputari",
+       "rcshowhideliu-show": "Popobilohe",
        "rcshowhideliu-hide": "Wanto'a",
        "rcshowhideanons": "$1 biloli'o lo tawu weewo",
        "rcshowhideanons-show": "Popobilohe",
        "newpageletter": "B",
        "boteditletter": "b",
        "rc-change-size-new": "$1 {{PLURAL:$1|bita}} lapato biloli'o",
+       "rc-old-title": "bohuliyo pilohutu odelo \"$1\"",
        "recentchangeslinked": "Loboli'a wayitiyo",
        "recentchangeslinked-toolbox": "Loboli'o wayitiyo",
        "recentchangeslinked-title": "Loboli'a a'aayita wolo $1",
        "file-anchor-link": "Berkas",
        "filehist": "Riwaayati lo berkas",
        "filehist-help": "Klik to tanggal/wakutu momilohe berkas to saa'ati botiye.",
+       "filehist-revert": "bataliya",
        "filehist-current": "baharu",
        "filehist-datetime": "Tanggal/Wakutu",
        "filehist-thumb": "Kiki'o",
        "sharedupload-desc-here": "Berkas botiye lonto $1 wawu hepohunaliyo to poroyek uweewo.\nDeskripsi lonto [$2 halaman deskripsiliyo] woluwo to tibawa botiya.",
        "upload-disallowed-here": "Yi'o diila mowali modeehe berkas botiye",
        "randompage": "Halaman totonula",
+       "statistics": "Statistik",
        "nbytes": "$1 {{PLURAL:$1|bita}}",
        "nmembers": "$1 {{PLURAL:$1|tuwango}}",
+       "listusers": "Daputari ta ohu'uwo",
        "newpages": "Halaman bohu",
+       "pager-newer-n": "{{PLURAL:$1|bohu da'a|$1bohu da'a}}",
        "pager-older-n": "{{PLURAL:$1|$1 mohihewo}}",
        "booksources": "Bungo buku",
        "booksources-search-legend": "Lolohe to bungo lo buku",
        "categories": "Kategori",
        "mywatchlist": "Daputari he'awasiyalo",
        "watch": "Dahayi",
+       "wlshowlast": "Popobilohe $1 jam $2 dulahe pulitiyo",
        "dellogpage": "Log loluluto",
        "rollbacklink": "wuwalinga",
        "rollbacklinkcount": "pohuwalinga $1 {{PLURAL:$1|biloli'o}}",
        "protectlogpage": "Log mopo'aamani",
+       "protectedarticle": "modaha \"[[$1]]\"",
+       "protect-default": "Poluliya nga'amila ta ohu'uwo",
        "namespace": "Huwali lo tanggulo",
        "invert": "Pohuwalinga tilulawoto",
        "tooltip-invert": "Centang kotak botiye u mopowanto'o halaman yiloboli'a to delomo huwali lo tanggulo tilulawoto (wawu huwali lo tanggulo a'ayita wanu dicentang)",
        "contributions": "Kontribusi {{GENDER:$1|Ta ohu'uwo}}",
        "mycontris": "Kontribusi",
        "anoncontribs": "Kontribusi",
+       "uctop": "(masatiya)",
        "month": "Lonto hulalo (wawu to'udiipo)",
        "year": "Lonto taawunu (wawu to'udiipo)",
+       "sp-contributions-logs": "log",
+       "sp-contributions-talk": "lo'iya",
+       "sp-contributions-search": "Lolohe kontribusi",
+       "sp-contributions-submit": "Lolohe",
        "whatlinkshere": "Wumbuta",
        "whatlinkshere-title": "Halaman botiye o wumbuta ode \"$1\"",
        "whatlinkshere-page": "Halaman",
        "linkshere": "Halaman botiye woluwo wumbuta ode <strong>[[:$1]]<strong>:",
+       "nolinkshere": "Diya'a halaman wumbuta ode <strong>[[:$1]]</strong>",
        "isredirect": "halaman pilobaleyalo",
        "istemplate": "tranklusi",
        "isimage": "wumbuta lo berkas",
        "whatlinkshere-hideredirs": "$1 mopobale",
        "whatlinkshere-hidetrans": "$1 tansklusi",
        "whatlinkshere-hidelinks": "$1 wumbuta",
+       "whatlinkshere-hideimages": "$1 berkas wumbuta",
        "whatlinkshere-filters": "U'ayahu",
        "blocklink": "tangguwalo",
        "contribslink": "kontrib",
        "tooltip-ca-addsection": "Mulai tayade bohu",
        "tooltip-ca-viewsource": "Halaman botiye daha-daha. Yi'o bo mowali momilohe bungo",
        "tooltip-ca-history": "Biloli'o pulitiyo to halaman botiye",
+       "tooltip-ca-protect": "Dahayi halaman botiye",
+       "tooltip-ca-delete": "Luluta halaman botiye",
        "tooltip-ca-move": "Heyiya halaman botiye",
        "tooltip-ca-watch": "Popoduhengama'o halaman botiye to daputari he'awasiyalo",
+       "tooltip-ca-unwatch": "Yinggila halaman botiye to daputari he'awasiyalo",
        "tooltip-search": "Lolohe {{SITENAME}}",
        "tooltip-search-go": "Lolohe halaman tuwawu wolo tanggula delo odiye wonu woluwo",
        "tooltip-search-fulltext": "Lolohe halaman o tulade odiye",
        "tooltip-save": "Tahuwa u biloli'umu",
        "tooltip-preview": "Bilohipo u biloli'umu. Popopasiya utiye to'u diipo molahu.",
        "tooltip-diff": "Bilohi u loboli'o pilohutumu",
+       "tooltip-compareselectedversions": "Bilohi hihede lohalaman duluwo u tilulawoto.",
        "tooltip-rollback": "\"Wuwalingo\" lopobatali u pilo'opiyohu to halaman botiye ode kontributor pulitiyo pe'enta lo klik.",
        "tooltip-undo": "\"wuwalingo\" lopobatali u biloli'a botiye wawu lomu'o kotak momoli'o wolo mode pratayang. Alasani mowali duhengalo to kotak limbu-limbu'o.",
        "tooltip-summary": "Tuwota tulade limbu-limbu'o",
        "specialpages": "Halaman Spesial",
        "tag-filter": "[[Special:Tags|Tag]]filter:",
        "tag-list-wrapper": "([[Special:Tags|{{PLURAL:$1|Tag}}]]: $2)",
+       "tags-active-yes": "Jo",
        "logentry-delete-delete": "$1 {{GENDER:$2|moluluto}}halaman $3",
        "logentry-move-move": "$1 {{GENDER:$2|moheyi}} halaman $3 ode $4",
        "logentry-newusers-create": "Ta ohu'uwo akun $1 {{GENDER:$2|mohutu}}",
index c6c4dd8..a81f2df 100644 (file)
        "redirectedfrom": "(Witergleitet vun $1)",
        "redirectpagesub": "Umgleiteti Syte",
        "redirectto": "Wyterleitig uf:",
-       "lastmodifiedat": "Letschti Änderig vo dere Syte: $2, $1",
+       "lastmodifiedat": "Letschti Bearbeitig vo dere Syte: $2, $1",
        "viewcount": "Die Syte isch {{PLURAL:$1|eimol|$1 Mol}} bsuecht wore.",
        "protectedpage": "Gschützti Syte",
        "jumpto": "Gump zue:",
index be93555..bccee03 100644 (file)
        "rcfilters-view-namespaces-tooltip": "סינון התוצאות לפי מרחב שם",
        "rcfilters-view-tags-tooltip": "סינון התוצאות לפי תגיות עריכה",
        "rcfilters-view-return-to-default-tooltip": "חזרה לתפריט המסננים הראשי",
+       "rcfilters-liveupdates-button": "עדכונים חיים",
        "rcnotefrom": "להלן {{PLURAL:$5|השינוי שבוצע|השינויים שבוצעו}} מאז <strong>$3, $4</strong> (מוצגים עד <strong>$1</strong>).",
        "rclistfromreset": "איפוס בחירת התאריך",
        "rclistfrom": "הצגת שינויים חדשים החל מ־$2, $3",
index 885df8b..6514725 100644 (file)
        "notvisiblerev": "किसी अन्य सदस्य द्वारा किया अन्तिम अवतरण हटाया गया है",
        "watchlist-details": "वार्ता पृष्ठों के अलावा {{PLURAL:$1|$1 पृष्ठ}} आपकी ध्यानसूची में हैं।",
        "wlheader-enotif": "ई-मेल नोटिफ़िकेशन सक्षम हैं।",
-       "wlheader-showupdated": "पà¥\83षà¥\8dठ à¤\9cà¥\8b à¤\86पà¤\95à¥\87 à¤¦à¥\8dवारा à¤¦à¥\87à¤\96à¥\87 à¤\9cानà¥\87 à¤\95à¥\87 à¤¬à¤¾à¤¦ à¤¬à¤¦à¤²à¥\87 à¤\97यà¥\87 à¤¹à¥\88à¤\82 '''बà¥\8bलà¥\8dड''' à¤¦à¤¿à¤\96à¥\87à¤\82à¤\97à¥\87।",
+       "wlheader-showupdated": "à¤\86पà¤\95à¥\87 à¤¦à¥\87à¤\96à¥\87 à¤\9cानà¥\87 à¤\95à¥\87 à¤¬à¤¾à¤¦ à¤\9cिन à¤ªà¥\83षà¥\8dठà¥\8bà¤\82 à¤®à¥\87à¤\82 à¤¬à¤¦à¤²à¤¾à¤µ à¤¹à¥\8bà¤\97ा, à¤\89नà¤\95à¥\80 à¤\95ड़à¥\80 <strong>à¤\97हरà¥\87</strong> à¤°à¤\82à¤\97 à¤\95à¥\80 à¤¦à¤¿à¤\96à¥\87à¤\97à¥\80।",
        "wlnote": "$3 को $4 बजे तक पिछले <strong>$2</strong> {{PLURAL:$2|घंटे|घंटों}} में {{PLURAL:$1|हुआ एक|हुए <strong>$1</strong>}} परिवर्तन निम्न {{PLURAL:$1|है|हैं}}।",
        "wlshowlast": "पिछले $1 घंटे $2 दिन  देखें",
        "watchlist-hide": "छुपाएँ",
index 8333ad6..3fb2671 100644 (file)
        "permissionserrors": "Pogrješka u pravima",
        "permissionserrorstext": "Nemate ovlasti za tu radnju iz sljedećih {{PLURAL:$1|razlog|razloga}}:",
        "permissionserrorstext-withaction": "Nemate dopuštenje za $2, iz {{PLURAL:$1|navedenog|navedenih}} razloga:",
-       "recreate-moveddeleted-warn": "'''Upozorenje: Ponovno stvarate stranicu koja je prethodno bila izbrisana.'''\n\nRazmotrite je li prikladno nastaviti s uređivanje ove stranice.\nZa Vašu informaciju slijedi evidencija brisanja i premještanja ove stranice:",
+       "recreate-moveddeleted-warn": "<strong>Upozorenje: Ponovo stvarate stranicu koja je prethodno bila izbrisana.</strong>\n\nRazmotrite je li prikladno nastaviti s uređivanje ove stranice.\nZa Vašu informaciju slijedi evidencija brisanja i premještanja ove stranice:",
        "moveddeleted-notice": "Ova stranica je bila izbrisana.\nEvidencija brisanja i evidencija premještanja za ovu stranicu je prikazana niže.",
        "moveddeleted-notice-recent": "Žao nam je, ova stranica je izbrisana u prošla 24 sata. \nNiže je navedena evidencija brisanja i premještanja.",
        "log-fulllog": "Prikaži cijelu evidenciju",
        "mw-widgets-dateinput-no-date": "Nadnevak nije naznačen",
        "mw-widgets-dateinput-placeholder-day": "GGGG-MM-DD",
        "mw-widgets-dateinput-placeholder-month": "GGGG-MM",
+       "mw-widgets-mediasearch-input-placeholder": "Pretraži medijske datoteke",
+       "mw-widgets-mediasearch-noresults": "Nema rezultata.",
        "mw-widgets-titleinput-description-new-page": "stranica još ne postoji",
        "mw-widgets-titleinput-description-redirect": "preusmjeravanje na $1",
        "date-range-from": "Od nadnevka:",
index 9256840..53bacc4 100644 (file)
        "rcfilters-view-namespaces-tooltip": "Filtrar le resultatos per spatio de nomines",
        "rcfilters-view-tags-tooltip": "Filtrar le resultatos usante etiquettas de version",
        "rcfilters-view-return-to-default-tooltip": "Retornar al menu principal de filtros",
+       "rcfilters-liveupdates-button": "Fluxo continue",
        "rcnotefrom": "Ecce le {{PLURAL:$5|modification|modificationes}} a partir del <strong>$3 a $4</strong> (usque a <strong>$1</strong> entratas monstrate).",
        "rclistfromreset": "Reinitialisar selection de data",
        "rclistfrom": "Monstrar nove modificationes a partir del $3 a $2",
index 9f21500..d28eac0 100644 (file)
        "tog-watchlisthidepatrolled": "Nascondi le modifiche verificate negli osservati speciali",
        "tog-watchlisthidecategorization": "Nascondi la categorizzazione delle pagine",
        "tog-ccmeonemails": "Inviami una copia dei messaggi spediti agli altri utenti",
-       "tog-diffonly": "Non visualizzare il contenuto della pagina dopo il confronto tra versioni",
+       "tog-diffonly": "Non mostrare il contenuto della pagina dopo il confronto tra versioni",
        "tog-showhiddencats": "Mostra le categorie nascoste",
        "tog-norollbackdiff": "Non mostrare il confronto tra versioni dopo aver effettuato un rollback",
        "tog-useeditwarning": "Avvisa quando si esce da una pagina di modifica con modifiche non salvate",
index 1adb8ee..cb6ece0 100644 (file)
        "recentchanges-legend-plusminus": "(<em>±123</em>)",
        "recentchanges-submit": "表示",
        "rcfilters-activefilters": "絞り込み",
-       "rcfilters-quickfilters": "フィルター設定を保存",
+       "rcfilters-quickfilters": "フィルターを保存",
        "rcfilters-quickfilters-placeholder-title": "リンクはまだ保存されていません",
        "rcfilters-quickfilters-placeholder-description": "フィルターの設定を保存し、後で再び使用するためには、下のアクティブフィルター内のブックマークアイコンをクリックしてください。",
        "rcfilters-savedqueries-defaultlabel": "フィルターを保存",
        "rcfilters-savedqueries-unsetdefault": "既定から削除",
        "rcfilters-savedqueries-remove": "削除",
        "rcfilters-savedqueries-new-name-label": "名称",
-       "rcfilters-savedqueries-apply-label": "設定を保存",
+       "rcfilters-savedqueries-new-name-placeholder": "このフィルターの目的を説明してください",
+       "rcfilters-savedqueries-apply-label": "フィルターを作成",
        "rcfilters-savedqueries-cancel-label": "キャンセル",
        "rcfilters-savedqueries-add-new-title": "現在のフィルター設定を保存する",
        "rcfilters-restore-default-filters": "標準設定の絞り込み条件を適用",
index c821e24..069c712 100644 (file)
        "viewsource-title": "Deleng sumberé $1",
        "actionthrottled": "Tindakan diwatesi",
        "actionthrottledtext": "Minangka upaya lumawan tumindak salah-guna, panjenengan diwatesi nalika ngayahi iki ping bola-bali tur rikat, lan panjenengan wis munjuli watesané.\nMangga jajalen manèh mengko.",
-       "protectedpagetext": "Kaca iki wis digembok supaya ora bisa disunting lan diapa-apakaké.",
+       "protectedpagetext": "Kaca iki wis direksa supaya ora dibesut lan diapa-apakaké.",
        "viewsourcetext": "Panjenengan bisa ndeleng lan nurun sumberé kaca iki.",
        "viewyourtext": "Panjenengan bisa ndeleng lan nurun sumberé <strong>besutané panjenengan</strong> nyang kaca iki.",
        "protectedinterface": "Kaca iki isiné tèks antarmuka sing dienggo software lan wis dikunci kanggo menghindari kasalahan.",
        "mycustomjsprotected": "Sampèyan ora duwé idin kanggo ngowah kaca JavaScript iki.",
        "myprivateinfoprotected": "Sampèyan ora duwé idin kanggo ngowah informasi privat sampèyan.",
        "mypreferencesprotected": "Sampèyan ora duwé idin kanggo ngowah preferensi sampèyan.",
-       "ns-specialprotected": "Kaca ing bilik nama astaméwa utawa kusus, ora bisa disunting.",
+       "ns-specialprotected": "Kaca mirunggan ora bisa dibesut.",
        "titleprotected": "Irah-irahan iki direksa ora olèh digawé déning [[User:$1|$1]].\nAlesané yaiku <em>$2</em>.",
        "filereadonlyerror": "Ora bisa ndandani barkas \"$1\" amarga panyimpenan barkas \"$2\" mung bisa diwaca.\n\nPangurus sistem sing ngunci iku njlèntrèhaké: \"$3\".",
        "invalidtitle-knownnamespace": "Irah-irahan ora sah mawa bilik jeneng \"$2\" lan tèks \"$3\"",
        "listusers-submit": "Tuduhna",
        "listusers-noresult": "Panganggo ora ana.",
        "listusers-blocked": "(diblokir)",
-       "activeusers": "Dhaptar panganggo aktif",
+       "activeusers": "Pratélan panganggo aktif",
        "activeusers-intro": "Iki daptar panganggo sing katon lakuné ing $1 {{PLURAL:$1|dina|dina}} kapungkur.",
        "activeusers-count": "$1 {{PLURAL:$1|suntingan|suntingan}} ing {{PLURAL:$3|dina|$3 dina}} pungkasan",
        "activeusers-from": "Tampilna panganggo wiwit saka:",
        "restriction-level-sysop": "kareksa sawutuhé",
        "restriction-level-autoconfirmed": "semu kareksa",
        "restriction-level-all": "kabèh tingkatan",
-       "undelete": "Kembalikan halaman yang telah dihapus",
+       "undelete": "Deleng kaca sing dibusak",
        "undeletepage": "Deleng lan pulihaké kaca kabusak",
        "undeletepagetitle": "'''Ing ngisor iki kapacak daftar révisi sing dibusak saka [[:$1]]'''.",
        "viewdeletedpage": "Deleng kaca sing wis dibusak",
        "ipb-hardblock": "Wurungaké panganggo sing wis mlebu log mbesut saka alamat IP iki",
        "ipbcreateaccount": "Penggak panggawéné akun",
        "ipbemailban": "Penggak panganggo saka ngirim layang-èl",
-       "ipbenableautoblock": "Blokir alamat IP pungkasan sing dienggo déning pengguna iki sacara otomatis, lan kabèh alamat sabanjuré sing dicoba arep dienggo nyunting.",
+       "ipbenableautoblock": "Otomatis blokir alamat IP pungkasan sing dienggo panganggo iki, lan samubarang alamat IP ing tembé sing arep dienggo mbesut.",
        "ipbsubmit": "Blokir panganggo iki",
        "ipbother": "Wektu liya",
        "ipboptions": "2 jam:2 hours,1 dina:1 day,3 dina:3 days,1 minggu:1 week,2 minggu:2 weeks,1 wulan:1 month,3 wulan:3 months,6 wulan:6 months,1 taun:1 year,tanpa wates:infinite",
        "ipbhidename": "Delikna jeneng panganggo saka suntingan lan pratélan",
-       "ipbwatchuser": "Wasi kaca panganggo lan kaca parembugané panganggo iki",
+       "ipbwatchuser": "Awasi kaca panganggo lan kaca parembugané panganggo iki",
        "ipb-disableusertalk": "Wurungaké panganggo iki mbesut kaca parembugané dhéwé nalika diblokir",
        "ipb-change-block": "Blokir manèh panganggo kanthi sèting iki",
        "ipb-confirm": "Konfirmasi blokiran",
        "specialpages-group-media": "Lapuran média lan pangunggahan",
        "specialpages-group-users": "Panganggo lan hak-haké",
        "specialpages-group-highuse": "Kaca-kaca sing akèh dienggo",
-       "specialpages-group-pages": "Dhaptar kaca",
+       "specialpages-group-pages": "Pratélan kaca",
        "specialpages-group-pagetools": "Piranti-piranti kaca",
        "specialpages-group-wiki": "Data lan piranti wiki",
        "specialpages-group-redirects": "Ngalihaké kaca astamèwa",
index 62454c0..0783eb0 100644 (file)
        "rcfilters-view-namespaces-tooltip": "이름공간으로 결과 필터",
        "rcfilters-view-tags-tooltip": "편집 태그를 사용하여 결과 필터",
        "rcfilters-view-return-to-default-tooltip": "주 필터 메뉴로 돌아가기",
+       "rcfilters-liveupdates-button": "실시간 업데이트",
        "rcnotefrom": "아래는 <strong>$3, $4</strong>부터 시작하는 {{PLURAL:$5|바뀜이 있습니다}}. (최대 <strong>$1</strong>개가 표시됨)",
        "rclistfromreset": "날짜 선택 초기화",
        "rclistfrom": "$3 $2부터 시작하는 새로 바뀐 문서 보기",
index 819b72b..e5c42be 100644 (file)
        "nospecialpagetext": "<strong>Dir hutt eng Spezialsäit ofgefrot déi et net gëtt.</strong>\n\nAll Spezialsäiten déi et gëtt, sinn op der [[Special:SpecialPages|{{int:specialpages}}]] ze fannen.",
        "error": "Feeler",
        "databaseerror": "Datebank Feeler",
-       "databaseerror-text": "Et ass ee Feeler bei enger Ufro un Datebank geschitt. Dat deit op e Feeler an der Software.",
+       "databaseerror-text": "Et ass ee Feeler bei enger Ufro un d'Datebank geschitt. Dat deit op e Feeler an der Software.",
        "databaseerror-textcl": "Et ass e Feeler bei enger Ufro un d'Datebank geschitt.",
        "databaseerror-query": "Ufro: $1",
        "databaseerror-function": "Funktioun: $1",
        "rcfilters-filter-excluded": "Ausgeschloss",
        "rcfilters-tag-prefix-namespace-inverted": "<strong>:net</strong> $1",
        "rcfilters-view-tags": "Markéiert Ännerungen",
+       "rcfilters-view-namespaces-tooltip": "Resultater no Nummraum filteren",
+       "rcfilters-liveupdates-button": "Live-Aktualiséierungen",
        "rcnotefrom": "Hei drënner {{PLURAL:$5|gëtt d'Ännerung|ginn d'Ännerungen}} zanter <strong>$3, $4</strong> (maximal <strong>$1</strong> Ännerunge gi gewisen).",
        "rclistfrom": "Nei Ännerunge vum $3 $2 u weisen",
        "rcshowhideminor": "Kleng Ännerunge $1",
index 5ab613e..446a372 100644 (file)
@@ -8,7 +8,8 @@
                        "Urhixidur",
                        "아라",
                        "Katxis",
-                       "Chabi"
+                       "Chabi",
+                       "Angel Blaise"
                ]
        },
        "tog-underline": "Sulinia lias:",
        "friday": "venerdi",
        "saturday": "saturdi",
        "sun": "Sol",
-       "mon": "Lun",
-       "tue": "Mar",
-       "wed": "Mer",
-       "thu": "Jov",
-       "fri": "Ven",
-       "sat": "Sat",
+       "mon": "lun",
+       "tue": "mar",
+       "wed": "mer",
+       "thu": "jov",
+       "fri": "ven",
+       "sat": "sat",
        "january": "janero",
        "february": "febrero",
        "march": "marto",
        "october": "otobre",
        "november": "novembre",
        "december": "desembre",
-       "january-gen": "Janero",
-       "february-gen": "Febrero",
-       "march-gen": "Marto",
-       "april-gen": "April",
-       "may-gen": "Maio",
+       "january-gen": "janero",
+       "february-gen": "febrero",
+       "march-gen": "marto",
+       "april-gen": "april",
+       "may-gen": "maio",
        "june-gen": "Junio",
        "july-gen": "Julio",
-       "august-gen": "Agosto",
-       "september-gen": "Setembre",
-       "october-gen": "Otobre",
-       "november-gen": "Novembre",
-       "december-gen": "Desembre",
+       "august-gen": "agosto",
+       "september-gen": "setembre",
+       "october-gen": "otobre",
+       "november-gen": "novembre",
+       "december-gen": "desembre",
        "jan": "jan",
        "feb": "feb",
        "mar": "mar",
        "period-am": "am",
        "period-pm": "pm",
        "pagecategories": "{{PLURAL:$1|Categoria|Categorias}}",
-       "category_header": "Articles en categoria \"$1\"",
+       "category_header": "Pajes en categoria \"$1\"",
        "subcategories": "Sucategorias",
-       "category-media-header": "Medio en catagoria \"$1\"",
-       "category-empty": "''Aora, esta categoria no conteni pajes o medio.''",
+       "category-media-header": "Medias en catagoria \"$1\"",
+       "category-empty": "<em>Esta categoria conteni no pajes e no medias.</em>",
        "hidden-categories": "{{PLURAL:$1|Categoria|Categorias}} ascondeda",
        "hidden-category-category": "Categorias ascondeda",
-       "category-subcat-count": "{{PLURAL:$2|Esta categoria ave sola la sucategoria seguente.|Esta categoria ave la {{PLURAL:$1|sucategoria|$1 sucategorias}} seguente, entre $2 tota.}}",
+       "category-subcat-count": "{{PLURAL:$2|Esta categoria ave sola la sucategoria seguente.|Esta categoria ave la {{PLURAL:$1|sucategoria|$1 sucategorias}} seguente, de un cuantia intera de $2.}}",
        "category-subcat-count-limited": "Esta categoria ave la {{PLURAL:$1|sucategoria|$1sucategorias}} seguente.",
-       "category-article-count": "{{PLURAL:$2|Esta categoria conteni sola la paje seguente.|La {{PLURAL:$1|paje es|$1 pajes es}} seguente en esta categoria, estra $2 tota.}}",
+       "category-article-count": "{{PLURAL:$2|Esta categoria conteni sola la paje seguente.|La {{PLURAL:$1|paje|$1 pajes}} seguente es en esta categoria, de un cuantia intera de $2.}}",
        "category-article-count-limited": "La {{PLURAL:$1|paje|$1pajes}} seguente es en la categoria presente.",
-       "category-file-count": "{{PLURAL:$2|Esta categoria conteni sola la fix seguente.|La {{PLURAL:$1|fix|$1 fixes}} seguente es en esta categoria, estra $2 tota.}}",
+       "category-file-count": "{{PLURAL:$2|Esta categoria conteni sola la fix seguente.|La {{PLURAL:$1|fix|$1 fixes}} seguente es en esta categoria, de un cuantia intera de $2.}}",
        "category-file-count-limited": "The {{PLURAL:$1|fix|$1 fixes}} seguente es en la categoria presente.",
        "listingcontinuesabbrev": "cont.",
        "index-category": "Pajes indiseda",
-       "noindex-category": "Pajes nonindiseda",
+       "noindex-category": "Pajes noncatalogida",
        "broken-file-category": "Pajes con lias rompeda de fixes",
-       "about": "Supra",
+       "about": "Sur",
        "article": "Paje de contenis",
-       "newwindow": "(va abri en fenetra nova)",
+       "newwindow": "(abri en fenetra nova)",
        "cancel": "Cansela",
        "moredotdotdot": "Plu...",
        "morenotlisted": "Esta lista es posible noncompleta.",
        "and": "&#32;e",
        "faq": "Demandas comun",
        "actions": "Atas",
-       "namespaces": "Locas de nom",
+       "namespaces": "Spasios de nom",
        "variants": "Varias",
-       "navigation-heading": "Menu per naviga",
+       "navigation-heading": "Menu de naviga",
        "errorpagetitle": "Era",
-       "returnto": "Restora a $1.",
+       "returnto": "Revade a $1.",
        "tagline": "De {{SITENAME}}",
-       "help": "Disionario",
+       "help": "Aida",
        "search": "Xerca",
        "search-ignored-headings": " #<!-- leave this line exactly as it is --> <pre>\n# Titulos cual va es iniorada par xerca.\n# Cambias a esta va aveni pronto cuando la paje con la titulo es indiseda.\n# Tu pote forsa la reindise de un paje par fa un edita vacua.\n# La sintax es como la seguente:\n#   * Tota de la sinia \"#\" a la fini de la linia es un comenta.\n#   * Tota linia nonvacua es la titulo esata per iniora, incluinte caso etc.\nReferes\nLias esterna\nVide ance\n #</pre> <!-- leave this line exactly as it is -->",
        "searchbutton": "Xerca",
        "printableversion": "Varia primable",
        "permalink": "Lia permanente",
        "print": "Primi",
-       "view": "Vide",
-       "view-foreign": "Vide a $1",
-       "edit": "Cambia",
+       "view": "Leje",
+       "view-foreign": "Mostra en $1",
+       "edit": "Edita",
        "edit-local": "Edita descrive local",
        "create": "Crea",
-       "create-local": "Ajunta descrive local",
+       "create-local": "Ajunta un descrive local",
        "delete": "Sutrae",
        "undelete_short": "Desutrae {{PLURAL:$1|edita|editas}}",
        "viewdeleted_short": "Vide {{PLURAL:$1|un edit desutraeda|$1 editas desutraeda}}",
        "protect_change": "cambia",
        "unprotect": "Cambia la proteje",
        "newpage": "Paje nova",
-       "talkpagelinktext": "Parla",
+       "talkpagelinktext": "discute",
        "specialpage": "Paje spesial",
        "personaltools": "Utiles personal",
        "talk": "Discutes",
-       "views": "Vides",
+       "views": "Aspetas",
        "toolbox": "Utiles",
        "tool-link-userrights": "Cambia grupos de {{GENDER:$1|usor}}",
        "tool-link-userrights-readonly": "Vide grupos de {{GENDER:$1|usor}}",
        "viewtalkpage": "Vide la discute",
        "otherlanguages": "En otra linguas",
        "redirectedfrom": "(Redirijeda de $1)",
-       "redirectpagesub": "Redireta la paje",
+       "redirectpagesub": "Paje redirijente",
        "redirectto": "Redirije a:",
-       "lastmodifiedat": "Esta paje ia es cambiada a $1, a $2",
+       "lastmodifiedat": "La edita la plu resente de esta paje ia es a $1, a $2",
        "viewcount": "Esta paje es asesada a $1 {{PLURAL:$1|ves|veses}}.",
        "protectedpage": "Paje protejeda",
        "jumpto": "Salta a:",
        "jumptosearch": "xerca",
        "view-pool-error": "Pardona, la servadores es tro cargada a esta ora.\nTro multe usores es atenta vide esta paje.\nPer favore espeta ante cuanto tu atenta vide esta paje denova.\n\n$1",
        "generic-pool-error": "Pardona, la servadores es tro cargada a esta ora.\nTro multe usores es atentante vide esta recurso.\nPer favore espeta ante cuando tu atenta vide esta recurso denova.",
-       "aboutsite": "Supra {{SITENAME}}",
-       "aboutpage": "Project:Supra",
-       "copyright": "Contenis es disponable su $1, estra diferente notada.",
+       "aboutsite": "Sur {{SITENAME}}",
+       "aboutpage": "Project:Sur",
+       "copyright": "La contenida es disponeda su $1, estra diferes notada.",
        "copyrightpage": "{{ns:project}}:Diretos de autor",
-       "currentevents": "Avenis presente",
-       "currentevents-url": "Project:Avenis presente",
-       "disclaimers": "Negas de respondablia",
-       "disclaimerpage": "Project:Nega jeneral de respondablia",
-       "edithelp": "Aida con edita",
+       "currentevents": "Avenis corente",
+       "currentevents-url": "Project:Avenis corente",
+       "disclaimers": "Renunsias",
+       "disclaimerpage": "Project:Renunsia jeneral",
+       "edithelp": "Aida sur edita",
        "helppage-top-gethelp": "Aida",
-       "mainpage": "Paje Prima",
-       "mainpage-description": "Paje Prima",
+       "mainpage": "Paje Xef",
+       "mainpage-description": "Paje xef",
        "policy-url": "Project:Politica",
-       "portal": "Porta comunial",
-       "portal-url": "Project:Porta comunial",
-       "privacy": "Promete de privadia",
-       "privacypage": "Project:Promete de privadia",
+       "portal": "Porton de comunia",
+       "portal-url": "Project:Porton de comunia",
+       "privacy": "Promete de privatia",
+       "privacypage": "Project:Promete de privatia",
        "ok": "Oce",
        "retrievedfrom": "Retraeda de \"$1\"",
-       "youhavenewmessages": "Tu ave $1 ($2).",
-       "youhavenewmessagesfromusers": "{{PLURAL:$4|Tu ave}} $1 de {{PLURAL:$3|otra usor|$3 usores}} ($2).",
+       "youhavenewmessages": "{{PLURAL:$3|Tu ave}} $1 ($2).",
+       "youhavenewmessagesfromusers": "{{PLURAL:$4|Tu ave}} $1 de {{PLURAL:$3|un otra usor|$3 usores}} ($2).",
        "newmessageslinkplural": "{{PLURAL:$1|un mesaje nova|999=mesajes nova}}",
-       "newmessagesdifflinkplural": "ultima {{PLURAL:$1|cambia|cambias}}",
+       "newmessagesdifflinkplural": "{{PLURAL:$1|cambia|cambias}} resente",
        "youhavenewmessagesmulti": "Tu ave mesajes nova en $1",
-       "editsection": "cambia",
+       "editsection": "edita",
        "editold": "edita",
-       "viewsourceold": "vide orijin",
-       "editlink": "cambia",
-       "viewsourcelink": "vide orijin",
-       "editsectionhint": "Edita sesion: $1",
+       "viewsourceold": "fonte",
+       "editlink": "edita",
+       "viewsourcelink": "fonte",
+       "editsectionhint": "Edita de parte: $1",
        "toc": "Contenida",
        "showtoc": "mostra",
        "hidetoc": "asconde",
        "viewdeleted": "Vide $1?",
        "feedlinks": "Flue:",
        "site-rss-feed": "$1 RSS Flue",
-       "site-atom-feed": "$1 Atom Flue",
+       "site-atom-feed": "$1 Flue Atom",
        "page-rss-feed": "\"$1\" RSS Flue",
-       "page-atom-feed": "\"$1\" Enflue de atom",
+       "page-atom-feed": "\"$1\" Flue Atom",
        "red-link-title": "$1 (paje no esiste)",
        "nstab-main": "Paje",
        "nstab-user": "Paje de usor",
        "nstab-project": "Paje de projeta",
        "nstab-image": "Fix",
        "nstab-mediawiki": "Mesaje",
-       "nstab-template": "Model",
+       "nstab-template": "Stensil",
        "nstab-help": "Paje de aida",
        "nstab-category": "Categoria",
-       "mainpage-nstab": "Paje Prima",
-       "nosuchspecialpage": "No esiste tal paje spesial",
-       "nospecialpagetext": "<strong>Tu ia demanda per un paje spesial nonpertinente.</strong>\n\nUn lista de pajes spesial pertinente pote es trovada en\n[[Special:SpecialPages|{{int:specialpages}}]].",
+       "mainpage-nstab": "Paje xef",
+       "nosuchspecialpage": "Paje spesial nonesistente",
+       "nospecialpagetext": "<strong>Tu ia solisita un paje spesial nonvalida.</strong>\n\nUn lista de pajes spesial valida es disponable en [[Special:SpecialPages|{{int:specialpages}}]].",
        "error": "Era",
        "databaseerror": "Era de base de datos",
        "missingarticle-diff": "(Difere: $1, $2)",
        "internalerror": "Era interna",
        "internalerror_info": "Era interna: $1",
-       "badtitle": "Titulo es mal",
-       "badtitletext": "La titulo de la paje tu ia desira ia es nonlegal, es vacua, o es un titulo intervici o interlingual no liada coreta. Es posable ce es un o plu simboles ce no pote es usada en titulos.",
-       "viewsource": "Vide la orijin",
-       "viewsource-title": "Vide fonte per $1",
-       "viewsourcetext": "Tu pote vide e copia la orijina de esta paje:",
+       "badtitle": "Mal titulo",
+       "badtitletext": "La titulo de la paje spesifada es nonlegal, vacua, o un titulo interlingual o intervici de lia noncoreta. Cisa lo conteni un o plu sinias cual on no pote usa en titulos.",
+       "viewsource": "Mostra la fonte",
+       "viewsource-title": "Regarda la fonte per $1",
+       "viewsourcetext": "Tu pote regarda e copia la fonte de esta paje:",
        "mycustomcssprotected": "Tu no ave permete per edita esta paje CSS.",
        "mycustomjsprotected": "Tu no ave permete per edita esta paje JavaScript.",
        "myprivateinfoprotected": "Tu no ave permete per edita tua informa privata.",
        "userlogin-yourname": "Nom de usor",
        "userlogin-yourname-ph": "Entra tua nom de usor",
        "yourpassword": "Sinia de entra:",
-       "userlogin-yourpassword": "Clave",
-       "userlogin-yourpassword-ph": "Entra tua sinia secreta",
-       "createacct-yourpassword-ph": "Entra un sinia secreta",
+       "userlogin-yourpassword": "Parola secreta",
+       "userlogin-yourpassword-ph": "Tape tua parola secreta",
+       "createacct-yourpassword-ph": "Tape un parola secreta",
        "yourpasswordagain": "Retape la sinia:",
-       "createacct-yourpasswordagain": "Confirma la sinia secreta",
-       "createacct-yourpasswordagain-ph": "Entra un sinia secreta denova",
-       "userlogin-remembermypassword": "Reteni me como identifiada",
+       "createacct-yourpasswordagain": "Confirma la parola secreta",
+       "createacct-yourpasswordagain-ph": "Retape la parola secreta",
+       "userlogin-remembermypassword": "Manteni mea identifia",
        "yourdomainname": "Tu domina:",
        "login": "Identifia",
        "nav-login-createaccount": "Sinia per entra",
        "logout": "Retira",
        "userlogout": "Sinia per retira",
        "userlogin-noaccount": "Tu no ave un conta?",
-       "userlogin-joinproject": "Crea un conta con {{SITENAME}}",
+       "userlogin-joinproject": "Crea un conta de {{SITENAME}}",
        "createaccount": "Crea un conta",
-       "userlogin-resetpassword-link": "Tu ia oblida tua sinia secreta?",
-       "userlogin-helplink2": "Aida me per identifia me",
+       "userlogin-resetpassword-link": "Tu ia oblida tua parola secreta?",
+       "userlogin-helplink2": "Aida sur identifia",
        "createacct-emailrequired": "Adirije de e-posta",
-       "createacct-emailoptional": "Adirije de e-posta (elejable)",
+       "createacct-emailoptional": "Adirije de e-posta (si desirada)",
        "createacct-email-ph": "Entra tua adirije de e-posta",
        "createacct-another-email-ph": "Entra tua adirije de e-posta",
        "createacct-reason": "Razona:",
        "createacct-submit": "Crea tua conta",
        "createacct-another-submit": "Crea un conta",
-       "createacct-benefit-heading": "{{SITENAME}} es fabricada par persones como tu.",
+       "createacct-benefit-heading": "{{SITENAME}} es realida par persones como tu.",
        "createacct-benefit-body1": "{{PLURAL:$1|edita|editas}}",
        "createacct-benefit-body2": "{{PLURAL:$1|paje|pajes}}",
-       "createacct-benefit-body3": "{{PLURAL:$1|contribuor|contribuores}}",
+       "createacct-benefit-body3": "{{PLURAL:$1|contribuor|contribuores}} resente",
        "loginerror": "Era de entra",
        "loginsuccesstitle": "Tu ia entra",
        "loginsuccess": "'''Tu ia entrada aora a {{SITENAME}} como \"$1\".'''",
        "accountcreated": "Conta es creada",
        "loginlanguagelabel": "Lingua: $1",
        "pt-login": "Identifia se",
-       "pt-login-button": "Identifia tua",
+       "pt-login-button": "Identifia",
        "pt-createaccount": "Crea un conta",
        "pt-userlogout": "Desidentifia",
        "oldpassword": "Sinia secreta vea:",
        "retypenew": "Re-entra tu sinia secreta nova:",
        "resetpass-submit-loggedin": "Cambia la sinia secreta",
        "resetpass-temp-password": "Sinia secreta tempora:",
-       "passwordreset": "Reinisia sinia secreta",
+       "passwordreset": "Reinisia tua parola secreta",
        "passwordreset-username": "Nom de usor:",
        "passwordreset-domain": "Domina:",
        "passwordreset-email": "Adirije de e-posta",
        "passwordreset-invalidemail": "Adirije de e-posta no es valida",
        "changeemail-submit": "Cambia e-posta",
-       "bold_sample": "Testo en leteras forte",
-       "bold_tip": "Testo en leteras forte",
-       "italic_sample": "Testo en leteras italica",
-       "italic_tip": "Testo en leteras italica",
+       "bold_sample": "Testo en leteras spesa",
+       "bold_tip": "Testo en leteras spesa",
+       "italic_sample": "Testo en leteras apoiada",
+       "italic_tip": "Testo en leteras apoiada",
        "link_sample": "Titulo de lia",
        "link_tip": "Lia interna",
        "extlink_sample": "http://www.example.com titulo de lia",
-       "extlink_tip": "Lia esterna (recorda la prefis http://)",
+       "extlink_tip": "Lia esterna (recorda la prefisa http://)",
        "headline_sample": "Testo de titulo",
        "headline_tip": "Titulo de nivel 2",
-       "nowiki_sample": "Introdui testo nonformida asi",
-       "nowiki_tip": "Iniora la forma de la vici",
+       "nowiki_sample": "Ajunta testo nonformatida asi",
+       "nowiki_tip": "Iniora la formati de vici",
        "image_tip": "Fix interna",
        "media_tip": "Lia a fix",
-       "sig_tip": "Tu sinia con la primi de la ora",
-       "hr_tip": "Linia orizonal (usa nonfrecuente)",
-       "summary": "Soma:",
+       "sig_tip": "Tua suscrive con marca de ora",
+       "hr_tip": "Linia orizonal (per usas rara)",
+       "summary": "Resoma:",
        "subject": "Sujeto:",
        "minoredit": "Esta es un cambia minor",
-       "watchthis": "Oserva esta paje",
-       "savearticle": "Fisa paje",
+       "watchthis": "Monitori esta paje",
+       "savearticle": "Fisa la paje",
        "publishpage": "Publici paje",
        "publishchanges": "Publica la cambias",
        "preview": "Previde",
        "showpreview": "Mostra previde",
        "showdiff": "Mostra diferes",
-       "anoneditwarning": "'''Avisa:''' Tu no ia identifia se.\nTu adirije de IP va es memorada en la istoria de revisas de esta paje. Si tu <strong>[$1 identifia se]</strong> o <strong>[$2 crea un conta]</strong>, tua editas va es atribuida a tua nom de usor, con otra benefias.",
+       "anoneditwarning": "<strong>Avisa:</strong> Tu no ia identifia tu. Tua adirije IP va es publica vidable si tu fa un edita. Si tu <strong>[$1 identifia tu]</strong> o <strong>[$2 crea un conta]</strong>, tua editas va es atribuida a tua nom de usor, entre otra beneficas.",
        "summary-preview": "Previde soma:",
        "blockedtitle": "Usor es impedida",
-       "blockedtext": "'''Tu nom de usor o adirije de IP ia es impedida.'''\n\nLa impedi ia es fada par $1.\nLa razon donada es ''$2''.\n\n* Comensa de impedi: $8\n* Fini de impedi: $6\n* Ci algun intende impedi: $7\n\nTu pote contata $1 o un otra [[{{MediaWiki:Grouppage-sysop}}|dirijor]] per discute esta impedi.\nTu no pote usa la 'envia un eposta a esta usor' sin un adirije de eposta legal es indicada en tu\n[[Special:Preferences|preferis de conta]] e tu no es impedida de usa el.\nTu adirije de IP es aora $3, e la identia de la impedi es #$5.\nPer favore inclui tota esta detales en tu demandas.",
+       "blockedtext": "'''Tua nom de usor o adirije IP es impedida.'''\n\nLa impedi ia es fada par $1.\nLa razona donada es ''$2''.\n\n* Comensa de impedi: $8\n* Fini de impedi: $6\n* Conta impedida: $7\n\nTu pote contata $1 o un otra [[{{MediaWiki:Grouppage-sysop}}|dirijor]] per discute esta impedi.\nTu no pote usa la funsiona \"envia un e-posta a esta usor\" estra si un adirije valida de e-posta legal es spesifada en tua [[Special:Preferences|preferes de conta]] e tu no es impedida de usa lo.\nTua adirije IP presente es $3, e la numero de impedi es #$5.\nInclui tota esta detalias en cualce demandas cual tu fa, per favore.",
        "loginreqtitle": "Entra de identia nesesada",
-       "loginreqlink": "Identifia se",
+       "loginreqlink": "identifia",
        "newarticle": "(Nova)",
-       "newarticletext": "Tu ia segue un lia a un paje ce no esista ja.\nPer crea la paje, comensa scrive en la caxa a su\n(vide la [$1 paje de aida] per plu).\nSi tu es asi par era, clica a la boton '''retro''' de tu surfador.",
-       "noarticletext": "On ave aora no testo a esta paje.\nTu pote [[Special:Search/{{PAGENAME}}|xerca per la titulo de esta paje]] en otra pajes,\n<span class=\"plainlinks\">[{{fullurl:{{#Special:Log}}|page={{FULLPAGENAMEE}}}} xerca la arcivos relatada],\no [{{fullurl:{{FULLPAGENAME}}|action=edit}} edita esta paje]</span>.",
-       "noarticletext-nopermission": "On ave presente no testo en esta paje.\nTu pote [[Special:Search/{{PAGENAME}}|xerca per esta titulo de paje]] en otra pajes, o <span class=\"plainlinks\">[{{fullurl:{{#Special:Log}}|page={{FULLPAGENAMEE}}}} xerca arcivos relatada]</span>, ma tu no es permeteda per crea esta paje.",
-       "userpage-userdoesnotexist-view": "La conta de usor \"$1\" no es enscriveda",
-       "clearyourcache": "<strong>Note:</strong> After saving, you may have to bypass your browser's cache to see the changes.\n* <strong>Firefox / Safari:</strong> Hold <em>Shift</em> while clicking <em>Reload</em>, or press either <em>Ctrl-F5</em> or <em>Ctrl-R</em> (<em>⌘-R</em> on a Mac)\n* <strong>Google Chrome:</strong> Press <em>Ctrl-Shift-R</em> (<em>⌘-Shift-R</em> on a Mac)\n* <strong>Internet Explorer:</strong> Hold <em>Ctrl</em> while clicking <em>Refresh</em>, or press <em>Ctrl-F5</em>\n* <strong>Opera:</strong> Go to <em>Menu → Settings</em> (<em>Opera → Preferences</em> on a Mac) and then to <em>Privacy & security → Clear browsing data → Cached images and files</em>.",
-       "previewnote": "<strong>Esta es sola un previde.</strong>\nTua cambias no es fisada ja!",
+       "newarticletext": "Tu ia segue un lia a un paje cual ancora no esista. Per crea la paje, comensa tape en la caxa a su (vide la [$1 paje de aida] per plu informa).\nSi tu ia veni asi par era, clica la boton <strong>retro</strong> de tua surfador.",
+       "anontalkpagetext": "<em>Esta es la paje de discute per un usor anonim ci ancora no ia crea un conta, o ci no usa lo.</em>\n Donce nos identifia el par adirije IP numeral.\nUn tal adirije pote es compartida par plu ca un usor.\nSi tu es un usor anonim e opina ce on ia dirije comentas nonpertinente a tu, per favore [[Special:CreateAccount|crea un conta]] o [[Special:UserLogin|identifia tu]] per evita confusas futur con otra usores anonim.",
+       "noarticletext": "No testo esiste en esta paje. Tu pote [[Special:Search/{{PAGENAME}}|xerca la titulo de esta paje]] en otra pajes, <span class=\"plainlinks\">[{{fullurl:{{#Special:Log}}|page={{FULLPAGENAMEE}}}} xerca en la arcivos relatada], o [{{fullurl:{{FULLPAGENAME}}|action=edit}} crea esta paje]</span>.",
+       "noarticletext-nopermission": "No testo esiste en esta paje. Tu pote [[Special:Search/{{PAGENAME}}|xerca esta titulo de paje]] en otra pajes, o <span class=\"plainlinks\">[{{fullurl:{{#Special:Log}}|page={{FULLPAGENAMEE}}}} xerca en arcivos relatada]</span>, ma on no permete ce tu crea esta paje.",
+       "userpage-userdoesnotexist-view": "La conta de usor \"$1\" no es rejistrada",
+       "clearyourcache": "<strong>Nota:</strong> Pos fisa, tu debe cisa sircoveni la memoria de tua surfador per vide la cambias.\n* <strong>Firefox / Safari:</strong> Presa la tecla <em>Maj</em> (<em>Shift</em>) e clica <em>Refresci</em>, o presa o <em>Ctrl-F5</em> o <em>Ctrl-R</em> (<em>⌘-R</em> a Mac)\n* <strong>Google Chrome:</strong> Presa <em>Ctrl-Shift-R</em> (<em>⌘-Shift-R</em> a Mac)\n* <strong>Internet Explorer:</strong> Presa <em>Ctrl</em> e clica <em>Refresci</em>, o presa <em>Ctrl-F5</em>\n* <strong>Opera:</strong> Vade a <em>Menu → Settings</em> (<em>Opera → Preferences</em> a Mac) e de ala a <em>Privacy & security → Clear browsing data → Cached images and files</em>.",
+       "previewnote": "<strong>Recorda ce esta es sola un previde.</strong> Tua cambias es ancora no fisada!",
        "continue-editing": "Vade a la loca de edita",
-       "editing": "En la prosede de edita $1",
+       "editing": "Editante $1",
        "creating": "Creante $1",
-       "editingsection": "Edita $1 (sesion)",
+       "editingsection": "Editante $1 (un parte)",
        "editingcomment": "Edita $1 (sesion nova)",
        "yourdiff": "Diferes",
        "copyrightwarning": "Per favore nota ce tota labora a {{SITENAME}} es judida ce el es relasada su la $2 (vide $1 per detalias). Si tu no desira ce tu scrives ta es editada sin compati e redistribui sin tu permite, no sumita el asi!<br />\nTu ance promete a nos ce tu ia scriveda esta par tu mesma, o copiada esta de un domina publica o otra orijin libre.\n'''NO SUMITA LABORA SU DIRETOS DE AUTOR SIN PERMITE!!'''",
        "templatesused": "{{PLURAL:$1|Modele|Modeles}} usada en esta paje:",
-       "templatesusedpreview": "{{PLURAL:$1|Modele|Modeles}} usada en esta previde:",
+       "templatesusedpreview": "{{PLURAL:$1|Stensil|Stensiles}} usada en esta previde:",
        "template-protected": "(protejeda)",
-       "template-semiprotected": "(proteje en parte)",
+       "template-semiprotected": "(partal protejeda)",
        "hiddencategories": "Esta paje es un membro de {{PLURAL:$1|1 categoria ascondeda|$1 categorias ascondeda}}:",
        "nocreatetext": "{{SITENAME}} ave un restringe a la capas per crea pajes nova.\nTu pote vade a retro e edita un paje esistente, o  [[Special:UserLogin|sinia per entra o crea un conta]].",
        "permissionserrors": "Era de permete",
-       "permissionserrorstext-withaction": "Tua no es permeteda per $2, per la {{PLURAL:$1|razona|razonas}} seguente:",
-       "recreate-moveddeleted-warn": "<strong>Avisa: Tu es recreante un paje cual ia es sutraeda a ante.</strong>\nTu debe pensa si la continua de edita de esta paje conveni.\nLa arcivo de sutraes e moves per esta paje es asi per tua conveni:",
-       "moveddeleted-notice": "Esta paje ia es sutraeda.\nLa arcivo de sutraes e moves per la paje es furnida a su per refere.",
+       "permissionserrorstext-withaction": "Tu no pote $2, per la {{PLURAL:$1|razona|razonas}} seguente:",
+       "recreate-moveddeleted-warn": "<strong>Avisa: Tu recrea un paje cual on ia sutrae a ante.</strong>\n\nConsidera esce lo conveni ce tu continua edita esta paje. La arcivos de sutrae e move per la paje es presentada asi per aida:",
+       "moveddeleted-notice": "On ia sutrae esta paje. La arcivos de sutrae e move per la paje es presentada a su per clari.",
        "content-model-wikitext": "vicitesto",
-       "undo-failure": "Esta edita ia no pote es desfada par causa de editas media.",
-       "viewpagelogs": "Vide la arcivo de esta paje",
+       "undo-failure": "Esta edita no pote es desfada par causa de editas interveninte cual contradise lo.",
+       "viewpagelogs": "Mostra la arcivos per esta paje",
        "currentrev": "Cambia presente",
-       "currentrev-asof": "Cambia presente a departi di $1",
+       "currentrev-asof": "Revisa la plu resente de $1",
        "revisionasof": "Revisa de $1",
        "revision-info": "Revisa de $1 par $2",
-       "previousrevision": "← Altera presedente",
-       "nextrevision": "Revisa plu nova→",
-       "currentrevisionlink": "Revisa presente",
+       "previousrevision": "← Revisa presedente",
+       "nextrevision": "Revisa plu nova →",
+       "currentrevisionlink": "Revisa la plu resente",
        "cur": "aora",
        "next": "seguente",
        "last": "dife",
        "page_first": "prima",
        "page_last": "final",
-       "histlegend": "Diferente eleje: Marca la caxas de radio de esta varias per compare e clica entra o la boton a la funda.<br />\n(presente) = difere de la varia presente,\n(presedente) = difere con varia presedente, M = edita minor.",
-       "history-fieldset-title": "Surfa per revisas",
-       "histfirst": "La plu vea",
-       "histlast": "La plu nova",
+       "histlegend": "Eleje de diferes: Marca la caxas de la revisas cual tu vole compara. Alora presa la tecla de entra, o clica la boton a su.<br />\nLegend: <strong>({{int:cur}})</strong> = compara con la revisa la plu resente, <strong>({{int:last}})</strong> = compara con la revisa presedente, <strong>{{int:minoreditletter}}</strong> = edita minor.",
+       "history-fieldset-title": "Xerca revisas",
+       "histfirst": "la plu vea",
+       "histlast": "la plu nova",
        "historysize": "({{PLURAL:$1|1 otuple|$1 otuples}})",
        "historyempty": "(vacua)",
        "history-feed-title": "Istoria de revises",
-       "history-feed-description": "Istoria de revide per esta paje en la vici",
+       "history-feed-description": "Istoria de revisas per esta paje en la vici",
        "history-feed-item-nocomment": "$1 a $2",
        "rev-delundel": "mostra/asconde",
        "rev-showdeleted": "mostra",
        "revdelete-radio-unset": "Vidable",
        "pagehist": "Istoria de paje",
        "deletedhist": "Istoria sutraeda",
-       "mergelog": "Fusa jornal de ativia",
-       "history-title": "Istoria de cambias de \"$1\"",
+       "mergelog": "Fusa arcivo",
+       "history-title": "Istoria de revisas de \"$1\"",
        "difference-title": "Difere entre revisas de \"$1\"",
        "lineno": "Linia $1:",
-       "compareselectedversions": "Compare varias elejeda",
+       "compareselectedversions": "Compara revisas elejeda",
        "editundo": "desfa",
-       "diff-empty": "(Zero difere)",
-       "diff-multi-sameuser": "({{PLURAL:$1|Un revisa media|$1 revisas media}} par la mesma usor no mostrada)",
-       "diff-multi-otherusers": "({{PLURAL:$1|Un revisa media|$1 revisas media}} par {{PLURAL:$2|otra usor|$2 usores}} no mostrada)",
-       "searchresults": "Resultas de xerca",
-       "searchresults-title": "Xerca la resultas per \"$1\"",
+       "diff-empty": "(No diferes)",
+       "diff-multi-sameuser": "({{PLURAL:$1|Un revisa media|$1 revisas media}} par la mesma usor no es mostrada)",
+       "diff-multi-otherusers": "({{PLURAL:$1|Un revisa media|$1 revisas media}} par {{PLURAL:$2|un otra usor|$2 usores}} no es mostrada)",
+       "searchresults": "Trovadas",
+       "searchresults-title": "Trovadas per \"$1\"",
        "prevn": "{{PLURAL:$1|$1}} presedente",
        "nextn": "{{PLURAL:$1|$1}} seguente",
-       "prevn-title": "Seguente $1 {{PLURAL:$1|resulta|resultas}}",
-       "nextn-title": "Seguente $1 {{PLURAL:$1|resulta|resultas}}",
-       "shown-title": "Mostra $1 {{PLURAL:$1|resulta|resultas}} per paje",
-       "viewprevnext": "Vide ($1 {{int:pipe-separator}} $2) ($3)",
-       "searchmenu-exists": "<strong>Lo esiste un paje nomida \"[[:$1]]\" en esta vici.</strong> {{PLURAL:$2|0=|Vide ance la otra resultas de xerca trovada.}}",
-       "searchmenu-new": "<strong>Crea la paje \"[[:$1]]\" a esta wiki!</strong> {{PLURAL:$2|0=|Vide ance la paje trovada con tua xerca.|Vide ance la resultas trovada par la xerca.}}",
-       "searchprofile-articles": "Pajes de contenis",
-       "searchprofile-images": "Multimedios",
+       "prevn-title": "$1 {{PLURAL:$1|resulta|resultas}} presedente",
+       "nextn-title": "$1 {{PLURAL:$1|resulta|resultas}} seguente",
+       "shown-title": "Mostra $1 {{PLURAL:$1|resulta|resultas}} en cada paje",
+       "viewprevnext": "Mostra ($1 {{int:pipe-separator}} $2) ($3)",
+       "searchmenu-exists": "<strong>Un paje nomida \"[[:$1]]\" esiste en esta vici.</strong> {{PLURAL:$2|0=|Vide ance la otra trovadas.}}",
+       "searchmenu-new": "<strong>Crea la paje \"[[:$1]]\" en esta vici!</strong> {{PLURAL:$2|0=|Vide ance la paje trovada par tua xerca.|Vide ance la pajes trovada par tua xerca.}}",
+       "searchprofile-articles": "Pajes de contenida",
+       "searchprofile-images": "Multimediales",
        "searchprofile-everything": "Tota",
        "searchprofile-advanced": "Avansada",
        "searchprofile-articles-tooltip": "Xerca en $1",
-       "searchprofile-images-tooltip": "Xerca per fixes",
-       "searchprofile-everything-tooltip": "Xerca tota contenidas (incluinte pajes de conversa)",
-       "searchprofile-advanced-tooltip": "Xerca en nomspasios unica",
+       "searchprofile-images-tooltip": "Xerca fixes",
+       "searchprofile-everything-tooltip": "Xerca en la contenida intera (incluinte pajes de discute)",
+       "searchprofile-advanced-tooltip": "Spesifa spasios de nom",
        "search-result-size": "$1 ({{PLURAL:$2|1 parola|$2 parolas}})",
-       "search-result-category-size": "{{PLURAL:$1|1 membro |$1 membros}} ({{PLURAL:$2|1 sucategoria|$2 sucategorias}}, {{PLURAL:$3|1 arcivo|$3 arcivos}})",
+       "search-result-category-size": "{{PLURAL:$1|1 membro|$1 membros}} ({{PLURAL:$2|1 sucategoria|$2 sucategorias}}, {{PLURAL:$3|1 arcivo|$3 arcivos}})",
        "search-redirect": "(redirije de $1)",
-       "search-section": "(sesion $1)",
-       "search-file-match": "(coresponde con la contenida de la arcivo)",
-       "search-suggest": "Tu ia intende: $1",
+       "search-section": "(parte $1)",
+       "search-file-match": "(coresponde a la contenida de fix)",
+       "search-suggest": "Esce tu ia intende: $1",
        "search-interwiki-default": "Resultas de $1:",
        "search-interwiki-more": "(plu)",
        "searchall": "tota",
        "search-showingresults": "{{PLURAL:$4|Resulta <strong>$1</strong> de <strong>$3</strong>|Resultas <strong>$1 - $2</strong> de <strong>$3</strong>}}",
-       "search-nonefound": "On ave no resultas cual conforma con la demanda.",
+       "search-nonefound": "No resultas ia es trovada per la xerca.",
        "powersearch-toggleall": "Tota",
        "powersearch-togglenone": "Zero",
        "preferences": "Preferis",
-       "mypreferences": "Preferis",
+       "mypreferences": "Preferes",
        "skin-preview": "Previde",
        "saveprefs": "Fisa",
        "searchresultshead": "Xerca",
        "saveusergroups": "Fisa la grupo de usores",
        "group": "Grupo:",
        "group-user": "Usores",
-       "group-bot": "Bots",
+       "group-bot": "Botes",
        "group-sysop": "Dirijores",
        "group-all": "(tota)",
        "group-user-member": "{{GENDER:$1|usor}}",
        "grouppage-user": "{{ns:project}}:Usores",
-       "grouppage-bot": "{{ns:project}}:Bots",
+       "grouppage-bot": "{{ns:project}}:Botes",
        "grouppage-sysop": "{{ns:project}}:Dirijores",
-       "right-writeapi": "Usa de la API de scrive",
+       "right-writeapi": "Usa de la api de scrive",
        "newuserlogpage": "Arcivo de creas de usor",
-       "rightslog": "Catalogo de diretos de usor",
+       "rightslog": "Arcivo de diretos de usor",
        "action-edit": "edita esta paje",
        "action-createaccount": "crea esta conta de usor",
        "nchanges": "$1 {{PLURAL:$1|cambia|cambias}}",
        "enhancedrc-history": "istoria",
        "recentchanges": "Cambias resente",
-       "recentchanges-legend": "Elejes  per cambias resente",
-       "recentchanges-summary": "Asi la lista de cambias resente en la vici.",
-       "recentchanges-noresult": "No cambias en la periodo donada coresponde con esta criterios.",
-       "recentchanges-feed-description": "Seque la cambias plu resente a la vici en esta flue.",
+       "recentchanges-legend": "Elejes per cambias resente",
+       "recentchanges-summary": "Segue asi la cambias la plu resente a la vici.",
+       "recentchanges-noresult": "No cambias en la periodo spesifada coresponde a esta criterios.",
+       "recentchanges-feed-description": "Segue la cambias la plu resente a la vici en esta flue.",
        "recentchanges-label-newpage": "Esta edita ia crea un paje nova",
        "recentchanges-label-minor": "Esta es un edita minor",
        "recentchanges-label-bot": "Esta edita ia es fada par un bot",
-       "recentchanges-label-unpatrolled": "Esta edita no ia es ja patruliada",
-       "recentchanges-label-plusminus": "La grandia de esta paje es cambiada par esta cuantia de baites",
-       "recentchanges-legend-heading": "<strong>Titulo:</strong>",
-       "recentchanges-legend-newpage": "{{int:recentchanges-label-newpage}} (vide ance [[Special:NewPages|la lista de pajes nova]])",
-       "rcnotefrom": "A su {{PLURAL:$5|es la cambia|es la cambias}} de <strong>$3, $4</strong> (asta <strong>$1</strong> shown).",
-       "rclistfrom": "Mostra cambias nova, comensante de $3 $2",
+       "recentchanges-label-unpatrolled": "On ancora no ia patrulia esta edita.",
+       "recentchanges-label-plusminus": "La grandia de esta paje ia es cambiada par esta cuantia de baites",
+       "recentchanges-legend-heading": "<strong>Esplica:</strong>",
+       "recentchanges-legend-newpage": "{{int:recentchanges-label-newpage}} (vide ance la [[Special:NewPages|lista de pajes nova]])",
+       "rcnotefrom": "A su {{PLURAL:$5|es la cambia|es la cambias}} de <strong>$3, $4</strong> (mostrante asta <strong>$1</strong>).",
+       "rclistfrom": "Mostra cambias nova, comensante de $2, $3",
        "rcshowhideminor": "$1 editas minor",
        "rcshowhideminor-show": "Mostra",
        "rcshowhideminor-hide": "Asconde",
        "rcshowhidebots": "$1 botes",
        "rcshowhidebots-show": "Mostra",
        "rcshowhidebots-hide": "Asconde",
-       "rcshowhideliu": "$1 usores identifiada aora",
+       "rcshowhideliu": "$1 usores rejistrada",
        "rcshowhideliu-show": "Mostra",
        "rcshowhideliu-hide": "Asconde",
        "rcshowhideanons": "$1 usores sin nom",
        "rcshowhideanons-show": "Mostra",
        "rcshowhideanons-hide": "Asconde",
-       "rcshowhidepatr": "$1 editas patroliada",
-       "rcshowhidemine": "$1 me editas",
+       "rcshowhidepatr": "$1 editas patruliada",
+       "rcshowhidemine": "$1 mea editas",
        "rcshowhidemine-show": "Mostra",
        "rcshowhidemine-hide": "Asconde",
-       "rclinks": "Mostra la $1 cambias presedente en la $2 dias presedente",
+       "rclinks": "Mostra la $1 cambias resente en la $2 dias presedente",
        "diff": "dife",
        "hist": "isto",
        "hide": "Asconde",
        "newpageletter": "N",
        "boteditletter": "b",
        "rc_categories_any": "Cualce de la elejeda",
-       "rc-change-size-new": "$1 {{PLURAL:$1|bait|baites}}  pos cambia",
+       "rc-change-size-new": "$1 {{PLURAL:$1|bait|baites}} pos cambia",
        "rc-enhanced-expand": "Mostra detalias",
        "rc-enhanced-hide": "Asconde detalias",
-       "rc-old-title": "creada orijinal como \"$1\"",
-       "recentchangeslinked": "Cambias relateda",
-       "recentchangeslinked-feed": "Cambias relateda",
-       "recentchangeslinked-toolbox": "Cambias relateda",
+       "rc-old-title": "orijinal creada como \"$1\"",
+       "recentchangeslinked": "Cambias relatada",
+       "recentchangeslinked-feed": "Cambias relatada",
+       "recentchangeslinked-toolbox": "Cambias relatada",
        "recentchangeslinked-title": "Cambias relatada a \"$1\"",
-       "recentchangeslinked-summary": "Esta lista conteni la cambias plu resente de la pajes liada a otra (o de la membros de un categoria).\nPajes a [[Special:Watchlist|tu lista de pajes oservada]] es en leteras '''forte'''.",
-       "recentchangeslinked-page": "Nom de la paje:",
-       "recentchangeslinked-to": "En loca, mostra cambia a pajes liada a la paje presentada",
-       "upload": "Envia fixes",
+       "recentchangeslinked-summary": "Esta es un lista de cambias resente a pajes liada (o a la membros de un categoria spesifada). Pajes en [[Special:Watchlist|tua lista de pajes monitorida]] es <strong>spesa</strong>.",
+       "recentchangeslinked-page": "Nom de paje:",
+       "recentchangeslinked-to": "Mostra cambias a pajes cual lia a la paje indicada, en loca",
+       "upload": "Carga un fix",
        "uploadbtn": "Envia la fix",
-       "uploadlogpage": "Envia arcivo",
+       "uploadlogpage": "Carga arcivo",
        "filedesc": "Resoma",
        "savefile": "Fisa fix",
        "upload-file-error": "Era interna",
        "license": "Lisensa:",
        "license-header": "Lisensa",
        "imgfile": "fix",
-       "listfiles": "Lista de imajes",
+       "listfiles": "Lista de fixes",
        "listfiles_name": "Nom",
        "file-anchor-link": "Fix",
        "filehist": "Istoria de fix",
-       "filehist-help": "Clica a un data/tempo per vide la fix como el ia aperi alora.",
+       "filehist-help": "Clica un data/tempo per vide la fix en sua forma de alora.",
+       "filehist-revert": "reversa",
        "filehist-current": "aora",
-       "filehist-datetime": "Date/Tempo",
+       "filehist-datetime": "Data/Tempo",
        "filehist-thumb": "Imajeta",
-       "filehist-thumbtext": "Imajeta per varia pos $1",
+       "filehist-thumbtext": "Imajeta per varia de $1",
        "filehist-nothumb": "No imajeta",
        "filehist-user": "Usor",
        "filehist-dimensions": "Mesuras",
        "filehist-filesize": "Grandia de fix",
        "filehist-comment": "Comenta",
        "imagelinks": "Usas de fix",
-       "linkstoimage": "Esta {{PLURAL:$1|paje|pajes}} lia a esta fix:",
-       "linkstoimage-more": "Plu ca $1 {{PLURAL:$1|un paje lia|pajes lia}} a esta arcivo.\nLa lista a su mostra la {{PLURAL:$1|prima lia|prima $1 lias}} a esta arcivo.\nUn [[Special:WhatLinksHere/$2|lista completa]] es disposable.",
-       "nolinkstoimage": "Es no pajes ce lia a esta fix.",
-       "linkstoimage-redirect": "$1 (redirije de arcivo) $2",
+       "linkstoimage": "La {{PLURAL:$1|paje|pajes}} seguente lia a esta fix:",
+       "linkstoimage-more": "Plu ca $1 {{PLURAL:$1|paje|pajes}} lia a esta fix.\nLa lista seguente mostra sola la {{PLURAL:$1|lia|$1 lias}} prima a esta fix.\nUn [[Special:WhatLinksHere/$2|lista completa]] es disponable.",
+       "nolinkstoimage": "No pajes lia a esta fix.",
+       "linkstoimage-redirect": "$1 (redirije de fix) $2",
        "sharedupload": "Esta fix es parte de $1 e pote es usada par otra projetas.",
-       "sharedupload-desc-here": "Esta fix es de $1 e pote es usada par otra projetas.\nLa descrive su sua [$2 paje de descrive de fix] ala es mostra a su.",
-       "filepage-nofile": "No esiste un arcivo con esta nom.",
+       "sharedupload-desc-here": "Esta fix es de $1 e es cisa usada par otra projetas.\nLa descrive en sua [$2 paje de descrive de fix] ala es mostrada a su.",
+       "filepage-nofile": "No fix con esta nom esiste.",
        "uploadnewversion-linktext": "Envia un varia nova de esta fix",
-       "upload-disallowed-here": "Tu no pote suprascrive esta arcivo.",
+       "upload-disallowed-here": "Tu no pote recambia esta arcivo.",
        "mimesearch": "Xerca de MIME",
        "listredirects": "Lista redirijes",
        "unusedtemplates": "modeles no usada",
        "brokenredirects": "Redirijes rompeda",
        "withoutinterwiki": "Pajes sin lias de lingua",
        "fewestrevisions": "Pajes con la min revides",
-       "nbytes": "$1 {{PLURAL:$1|oteta|otetas}}",
+       "nbytes": "$1 {{PLURAL:$1|bait|baites}}",
        "nlinks": "$1 {{PLURAL:$1|lia|lias}}",
        "nmembers": "$1 {{PLURAL:$1|membro|membros}}",
        "lonelypages": "Pajes orfanida",
        "unusedcategoriestext": "La categorias seguente esiste sin es usada par otra articles o categorias.",
        "pager-newer-n": "{{PLURAL:$1|1 plu resente|$1 plu resentes}}",
        "pager-older-n": "{{PLURAL:$1|1 plu vea|$1 plu veas}}",
-       "booksources": "Orijines de libros",
-       "booksources-search-legend": "Xerca per fontes de libros",
+       "booksources": "Fontes de libros",
+       "booksources-search-legend": "Xerca fontes de libros",
        "booksources-search": "Xerca",
-       "specialloguserlabel": "Usor:",
-       "speciallogtitlelabel": "Ojeto (titulo o {{ns:usor}}:nom de usor per la usor):",
-       "log": "Lista de atas",
-       "all-logs-page": "Tota catalogos",
-       "logempty": "No matching items in log.",
+       "specialloguserlabel": "Faor:",
+       "speciallogtitlelabel": "Ojeto (titulo o {{ns:usor}}:Nom per un usor):",
+       "log": "Arcivos",
+       "all-logs-page": "Tota arcivos publica",
+       "alllogstext": "Un presenta combinada de tota arcivos disponable de {{SITENAME}}. On pote restrinje la presenta par eleje un tipo de arcivo, la nom de usor (distinguinte leteras major), o la paje afetada (ance distinguinte leteras major).",
+       "logempty": "No operas corespondente en la arcivos.",
        "allpages": "Tota pajes",
        "nextpage": "Paje seguente ($1)",
        "prevpage": "Paje presedente ($1)",
        "linksearch-ok": "Xerca",
        "listgrouprights-group": "Grupo",
        "listgrouprights-members": "(lista de membros)",
-       "emailuser": "Envia un eposta a esta usor",
+       "emailuser": "Envia un e-posta a esta usor",
        "emailfrom": "De:",
        "emailto": "A:",
        "emailsubject": "Sujeto:",
        "emailmessage": "Mesaje:",
        "emailsend": "Envia",
        "emailsent": "E-posta ia es enviada",
-       "usermessage-editor": "Notas de sistem",
-       "watchlist": "Lista de pajes oservada",
-       "mywatchlist": "Lista de pajes oservada",
+       "usermessage-editor": "Mesajor de sistem",
+       "watchlist": "Pajes monitorida",
+       "mywatchlist": "Lista de pajes monitorida",
        "watchlistfor2": "Per $1 $2",
        "nowatchlist": "Tu ave no cosas en tu lista oservada",
        "addedwatchtext": "La paje \"[[:$1]]\" ia es juntada a tu [[Special:Watchlist|lista de pajes oservada]].\nCambias future a esta paje e se paje de discutes va es listada ala, e la paje va apera en leteras '''forte''' en la [[Special:RecentChanges|lista de cambias resente]] per es plu fasil oservada.\n\nSi tu vole sutrae la paje de tu lista de pajes oservada en la futur, clica a \"no oserva\" en la bara a la lado.",
        "removedwatchtext": "La paje \"[[:$1]]\" ia es sutraeda de [[Special:Watchlist|tu lista de pajes oservada]].",
-       "watch": "Oserva",
+       "watch": "Monitori",
        "watchthispage": "Oserva esta paje",
-       "unwatch": "Nonoserva",
-       "watchlist-details": "{{PLURAL:$1|$1 paje|$1 pajes}} oservada, sin pajes de discutes.",
-       "wlheader-showupdated": "La pajes cual ia es cambiada de la ultima ves ce tu ia visita los es mostrada en <strong>spesa</strong>.",
-       "wlnote": "A su {{PLURAL:$1|ies la ultima cambia|es la ultima<strong>$1</strong> cambias}} en la ultima {{PLURAL:$2|ora|<strong>$2</strong> oras}}, en $3, $4.",
+       "unwatch": "Desmonitori",
+       "watchlist-details": "Tu monitori {{PLURAL:$1|$1 paje|$1 pajes}}, iniorante pajes de discute.",
+       "wlheader-showupdated": "Pajes cual on ia cambia pos tua visita la plu resente apare en leteras <strong>spesa</strong>.",
+       "wlnote": "A su es la {{PLURAL:$1|cambia|<strong>$1</strong> cambias}} en la {{PLURAL:$2|ora|<strong>$2</strong> oras}} la plu resente, a $3, $4.",
        "wlshowlast": "Mostra la $1 oras e $2 dias presedente",
-       "watchlist-options": "Elejes de lista de oserva.",
+       "watchlist-options": "Preferes per la lista de pajes monitorida.",
        "watching": "Oserva...",
        "unwatching": "No oserva...",
-       "enotif_reset": "Marca la pajes visitada",
+       "enotif_reset": "Marca tota pajes como visitada",
        "created": "Creada",
        "deletepage": "Sutrae la paje",
        "confirm": "Aproba",
        "confirmdeletetext": "Tu va pronto sutrae un paje con tota se istoria. Per favore, afirma ce tu intende esta, ce tu comprende la resultas, e ce tu fa esta en acorda con [[{{MediaWiki:Policy-url}}|la prometes]].",
        "actioncomplete": "Ata completada",
        "deletedtext": "\"$1\" ia es sutraeda.\nVide $2 per un catalogo de sutraes resente.",
-       "dellogpage": "catalogo de sutraes",
+       "dellogpage": "Arcivo de sutraes",
        "deletecomment": "Razona:",
        "deleteotherreason": "Otra/plu razona:",
        "deletereasonotherlist": "Otra razona",
-       "rollbacklink": "retro",
+       "rollbacklink": "reversa",
        "rollbacklinkcount": "reversa $1 {{PLURAL:$1|edita|editas}}",
-       "protectlogpage": "Catalogo de protejes",
-       "protectedarticle": "\"[[$1]]\" protejeda",
-       "modifiedarticleprotection": "cambia nivel de proteje a \"[[$1]]\"",
+       "protectlogpage": "Arcivo de protejes",
+       "protectedarticle": "proteje \"[[$1]]\"",
+       "modifiedarticleprotection": "cambia nivel de proteje per \"[[$1]]\"",
        "unprotectedarticle": "''[[$1]]'' desprotejeda",
        "protect-title": "Fisa nivel de proteje a \"$1\"",
        "prot_1movedto2": "[[$1]] es moveda a [[$2]]",
        "undelete": "Restora paje sutraeda",
        "undeletebtn": "Restora",
        "undelete-search-submit": "Xerca",
-       "namespace": "Loca de nom:",
-       "invert": "Reversa la eleje",
-       "tooltip-invert": "Marca esta caxa per asconde cambias a pajes en la nomspasio elejeda (e la nomspasio asosiada si marcada)",
-       "namespace_association": "Nomspasio asosiada",
-       "tooltip-namespace_association": "Marca esta caxa per inclui ance la nomspasio de discute o sujeto asosiada con la nomspasio elejeda",
-       "blanknamespace": "(Prima)",
-       "contributions": "Contribuis de {{GENDER:$1|usor}}",
-       "contributions-title": "Contribuis de la usor per $1",
+       "namespace": "Spasio de nom:",
+       "invert": "Inversa la eleje",
+       "tooltip-invert": "Marca esta caxa per asconde cambias a pajes en la spasio elejeda (e ance la spasio asosiada si acel es marcada)",
+       "namespace_association": "Spasio de nom asosiada",
+       "tooltip-namespace_association": "Marca esta caxa per inclui ance la spasio de discute o tema asosiada con la spasio elejeda",
+       "blanknamespace": "(Xef)",
+       "contributions": "Contribuis par {{GENDER:$1|usor}}",
+       "contributions-title": "Contribuis de usor per $1",
        "mycontris": "Mea contribuis",
        "anoncontribs": "Contribuis",
        "contribsub2": "Per {{GENDER:$3|$1}} ($2)",
-       "nocontribs": "No cambias ia es trovada corespondente con esta criterios.",
+       "nocontribs": "No cambias coresponde a esta criterios.",
        "uctop": "(aora)",
-       "month": "De mensa (e plu vea):",
+       "month": "De mense (e plu vea):",
        "year": "De anio (e plu vea):",
-       "sp-contributions-newbies": "Sola mostra contribuis de contas nova",
+       "sp-contributions-newbies": "Mostra sola contribuis par contas nova",
        "sp-contributions-newbies-sub": "Per contas nova",
-       "sp-contributions-blocklog": "Impedi arcivo",
+       "sp-contributions-blocklog": "impedi arcivo",
        "sp-contributions-uploads": "cargas",
-       "sp-contributions-logs": "Lista de atas",
+       "sp-contributions-logs": "Lista de arcivos",
        "sp-contributions-talk": "discute",
        "sp-contributions-userrights": "Dirije de la diretos de usores",
-       "sp-contributions-search": "Xerca per contribuis",
+       "sp-contributions-search": "Xerca contribuis",
        "sp-contributions-username": "Adirije de IP o nom de usor:",
-       "sp-contributions-toponly": "Sola mostra editas cual es la revisas ultima.",
-       "sp-contributions-newonly": "Sola mostra editas cual es creas de pajes.",
+       "sp-contributions-toponly": "Mostra sola editas cual es revisas la plu resente.",
+       "sp-contributions-newonly": "Mostra sola editas cual es creas de pajes",
        "sp-contributions-submit": "Xerca",
-       "whatlinkshere": "Ce es liada a asi",
-       "whatlinkshere-title": "Pajes ci lia a \"$1\"",
+       "whatlinkshere": "Lias a esta paje",
+       "whatlinkshere-title": "Pajes cual lia a \"$1\"",
        "whatlinkshere-page": "Paje:",
-       "linkshere": "Esta pajes lia a '''[[:$1]]''':",
+       "linkshere": "La pajes seguente lia a <strong>[[:$1]]</strong>:",
        "nolinkshere": "No pajes lia a '''[[:$1]]'''.",
-       "isredirect": "redirije paje",
-       "istemplate": "inclui",
+       "isredirect": "paje redirijente",
+       "istemplate": "transclui",
        "isimage": "lia de fix",
-       "whatlinkshere-prev": "{{PLURAL:$1|presesdente|$1 presedente}}",
-       "whatlinkshere-next": "{{PLURAL:$1|seguente|$1 seguente}}",
+       "whatlinkshere-prev": "{{PLURAL:$1|presedente|$1 presedentes}}",
+       "whatlinkshere-next": "{{PLURAL:$1|seguente|$1 seguentes}}",
        "whatlinkshere-links": "← lias",
        "whatlinkshere-hideredirs": "$1 redirijes",
        "whatlinkshere-hidetrans": "$1 transcluis",
        "whatlinkshere-hidelinks": "$1 lias",
-       "whatlinkshere-hideimages": "$1 lias de arcivo",
+       "whatlinkshere-hideimages": "$1 lias de fix",
        "whatlinkshere-filters": "Filtros",
        "blockip": "Impedi usor",
        "ipbreason": "Razona:",
        "ipbsubmit": "Impedi esta usor",
-       "ipboptions": "2 oras:2 hours,1 dia:1 day,3 dias:3 days,1 semana:1 week,2 semanas:2 weeks,1 mensa:1 month,3 mensas:3 months,6 mensas:6 months,1 anio:1 year,nonlimitada:infinite",
+       "ipboptions": "2 oras:2 hours,1 dia:1 day,3 dias:3 days,1 semana:1 week,2 semanas:2 weeks,1 mense:1 month,3 menses:3 months,6 menses:6 months,1 anio:1 year,infinita:infinite",
        "blockipsuccesssub": "La impedi susede",
        "ipusubmit": "Desimpedi esta adirije",
        "ipblocklist": "Liste de adirijes de IP e usores impedida",
        "ipblocklist-submit": "Xerca",
+       "infiniteblock": "infinita",
        "blocklink": "impedi",
        "unblocklink": "desimpedi",
        "contribslink": "contribuis",
-       "blocklogpage": "impedi arcivo",
-       "blocklogentry": "impedida [[$1]] con un tempo de fini de $2 $3",
+       "blocklogpage": "Impedi arcivo",
+       "blocklogentry": "impedi [[$1]] per desvalidi a $2 $3",
+       "reblock-logentry": "cambia la impedi de [[$1]] per desvalidi a $2 $3",
        "block-log-flags-nocreate": "crea de contas descapasida",
-       "proxyblocker": "Proxy blocker",
+       "proxyblocker": "Blocador de proxis",
        "move-page-legend": "Move paje",
        "movepagetext": "Usa la forma a su va cambia la nom de un paje, e va move tota se istoria a la nom nova.\nLa titulo vea va deveni un paje de redirije a la titulo nova.\nLias a la titulo de la paje vea no va es cambiada;\nTu debe vide serta ce es redirijes duple o rompeda.\nTu es respondable per es serta ce la lias va continua vade a la locas intendeda.\n\nNota ce la paje '''no''' va es moveda si es ja un paje a la titulo nova, sin el es vacua o un redirije e no ave un istoria de editas presedente.\nEsta sinifia ce tu pote cambia la nom de un paje a la loca presedente si tu era, e tu no pote scrive supra un paje ce esiste ja.\n\n'''AVISA!'''\nEsta pote es un cambia dramos e nonespetada per un paje poplal;\nper favore, es serta ce tu comprende la resulta de esta ata ante tu continua.",
        "movepagetalktext": "La paje de discuta de esta paje va es moveda automatica con el '''eseta si:'''\n*Un paje de discuta ce no es vacua esiste ja su la nom nova, o\n*Tu cambia la indica en la caxa su.\n\nEn esta casos, tu va nesesa move o fusa la paje per mano, si desirada.",
        "movepage-moved": "'''\"$1\" ia es moveda a \"$2\"'''",
        "articleexists": "Un paje con acel nom esiste ja, o la nom ce tu ia eleje no es un nom legal. Per favore, eleje un otra nom.",
        "movetalk": "Move la paje de discutes ance",
-       "movelogpage": "Move arcive",
+       "movelogpage": "Move arcivo",
        "movelogpagetext": "A su es un lista de pajes moveda",
        "movereason": "Razona:",
        "revertmove": "retro",
        "tooltip-pt-userpage": "{{GENDER:|Tua}} page de usor",
        "tooltip-pt-mytalk": "{{GENDER:|Tua}} paje de discutes",
        "tooltip-pt-preferences": "{{GENDER:|Tua}} preferes",
-       "tooltip-pt-watchlist": "La lista de pajes ce tu oserva per cambias",
-       "tooltip-pt-mycontris": "Lista de tua contribuis",
-       "tooltip-pt-login": "Nos preferi si tu sinia per entra, ma tu es no obligada.",
-       "tooltip-pt-logout": "Sinia per retira",
-       "tooltip-pt-createaccount": "Tu es corajida per crea un conta e identifia se; an si, esta no es obligante",
-       "tooltip-ca-talk": "Discute de la paje de contenis",
+       "tooltip-pt-watchlist": "Un lista de pajes cual tu monitori per cambias",
+       "tooltip-pt-mycontris": "Un lista de tua contribuis",
+       "tooltip-pt-login": "Nos prefere ce tu identifia tu, ma esta no es no obligante",
+       "tooltip-pt-logout": "Desidentifia",
+       "tooltip-pt-createaccount": "Nos recomenda ce tu crea un conta e identifia tu, ma esta no es obligante",
+       "tooltip-ca-talk": "Discute de la paje de contenida",
        "tooltip-ca-edit": "Edita esta paje",
        "tooltip-ca-addsection": "Inisia un sesion nova",
-       "tooltip-ca-viewsource": "Esta paje es protejeda. Tu pote vide se orijin.",
+       "tooltip-ca-viewsource": "Esta paje es protejeda. Tu pote regarda sua fonte",
        "tooltip-ca-history": "Revisas pasada de esta paje",
        "tooltip-ca-protect": "Proteje esta paje",
        "tooltip-ca-delete": "Sutrae esta paje",
        "tooltip-ca-move": "Move esta paje",
-       "tooltip-ca-watch": "Junta esta paje a tu lista de pajes oservada",
-       "tooltip-ca-unwatch": "Sutrae esta paje de tu lista de pajes oservada",
+       "tooltip-ca-watch": "Ajunta esta paje a tua lista de pajes monitorida",
+       "tooltip-ca-unwatch": "Sutrae esta paje de tua lista de pajes monitorida",
        "tooltip-search": "Xerca {{SITENAME}}",
-       "tooltip-search-go": "Vade a un paje con esta nom esata, si lo esiste",
-       "tooltip-search-fulltext": "MediaWiki:Tooltip-xerca-testoplen/lfn",
-       "tooltip-p-logo": "Visita la paje prima",
-       "tooltip-n-mainpage": "Visita la paje prima",
-       "tooltip-n-mainpage-description": "Visita la paje prima",
-       "tooltip-n-portal": "De la projeta, ce tu pote fa, do tu pote trova cosas",
-       "tooltip-n-currentevents": "Trova informa presedente de avenis nova",
-       "tooltip-n-recentchanges": "La lista de cambias resente en la vici.",
-       "tooltip-n-randompage": "Carga un paje acaso",
+       "tooltip-search-go": "Vade a un paje con esata esta nom si lo esiste",
+       "tooltip-search-fulltext": "Xerca esta testo en la pajes",
+       "tooltip-p-logo": "Visita la paje xef",
+       "tooltip-n-mainpage": "Visita la paje xef",
+       "tooltip-n-mainpage-description": "Visita la paje xef",
+       "tooltip-n-portal": "Sur la projeta, la modos de aida e la locas de cosas",
+       "tooltip-n-currentevents": "Trova informa fondal sur avenis corente",
+       "tooltip-n-recentchanges": "Un lista de cambias resente en la vici",
+       "tooltip-n-randompage": "Visita un paje acaso",
        "tooltip-n-help": "La loca per descovre.",
-       "tooltip-t-whatlinkshere": "Lista de tota pajes de vici ce lia a asi",
-       "tooltip-t-recentchangeslinked": "Cambia resente en pajes liada de esta paje",
-       "tooltip-feed-atom": "Enflue de atom per esta paje",
-       "tooltip-t-contributions": "Vide la lista de contribuis de {{GENDER:$1|esta usor}}",
+       "tooltip-t-whatlinkshere": "Un lista de tota pajes de vici cual lia a esta paje",
+       "tooltip-t-recentchangeslinked": "Cambias resente en pajes a cual esta paje lia",
+       "tooltip-feed-atom": "Flue Atom per esta paje",
+       "tooltip-t-contributions": "Un lista de contribuis par {{GENDER:$1|esta usor}}",
        "tooltip-t-emailuser": "Envia un e-posta a {{GENDER:$1|esta usor}}",
-       "tooltip-t-upload": "Envia fixes",
-       "tooltip-t-specialpages": "Lista de tota pajes spesial",
+       "tooltip-t-upload": "Carga fixes",
+       "tooltip-t-specialpages": "Un lista de tota pajes spesial",
        "tooltip-t-print": "Varia primable de esta paje",
        "tooltip-t-permalink": "Lias permanente a esta revisa de la paje",
-       "tooltip-ca-nstab-main": "Vide la paje de contenis",
-       "tooltip-ca-nstab-user": "Vide la paje de usor",
-       "tooltip-ca-nstab-special": "Esta es un paje special, e no pote es editada.",
-       "tooltip-ca-nstab-project": "Vide la paje de la projeta",
-       "tooltip-ca-nstab-image": "Vide la paje de fix",
-       "tooltip-ca-nstab-mediawiki": "Vide la mesaje de sistem",
-       "tooltip-ca-nstab-template": "Mostra la model",
+       "tooltip-ca-nstab-main": "Mostra la paje de contenida",
+       "tooltip-ca-nstab-user": "Mostra la paje de usor",
+       "tooltip-ca-nstab-special": "Esta es un paje special e on no pote edita lo.",
+       "tooltip-ca-nstab-project": "Mostra la paje de projeta",
+       "tooltip-ca-nstab-image": "Mostra la paje de fix",
+       "tooltip-ca-nstab-mediawiki": "Mostra la mesaje de sistem",
+       "tooltip-ca-nstab-template": "Mostra la stensil",
        "tooltip-ca-nstab-help": "Vide la paje de aida",
-       "tooltip-ca-nstab-category": "Vide la paje de la categoria",
-       "tooltip-minoredit": "Indica ce esta es un edita minor",
+       "tooltip-ca-nstab-category": "Mostra la paje de categoria",
+       "tooltip-minoredit": "Marca esta como un edita minor",
        "tooltip-save": "Fisa tu cambias",
-       "tooltip-preview": "Previde tu cambias; per favore usa esta ante fisa!",
-       "tooltip-diff": "Mostra tu cambias de la testo.",
-       "tooltip-compareselectedversions": "Vide la diferes entre la du varias elejeda de esta paje.",
-       "tooltip-watch": "Junta esta paje a tu lista de pajes oservada",
-       "tooltip-rollback": "\"Rollback\" reverts the last contributor's edit(s) to this page in one click\n\n\"Reversa\" reversa la edita o editas a esta paje par la contribuor presedente con un clica",
-       "tooltip-undo": "\"Desfa\" reversa esta edita e abri la forma de edita en la modo de previde. Lo permete la ajunta de un razona en la resoma.",
-       "tooltip-summary": "Entra un resoma corta",
+       "tooltip-preview": "Previde tua cambias. Usa esta ante fisa, per favore.",
+       "tooltip-diff": "Mostra la cambias cual tu ia fa a la testo.",
+       "tooltip-compareselectedversions": "Regarda la diferes entre la du revisas elejeda de esta paje.",
+       "tooltip-watch": "Ajunta esta paje a tua lista de pajes monitorida",
+       "tooltip-rollback": "\"Reversa\" desfa direta la edita(s) par la contribuor la plu resente a esta paje",
+       "tooltip-undo": "\"Desfa\" reversa esta edita e abri la formulario de edita en moda de previde, permetente ajunta un razona en la resoma.",
+       "tooltip-summary": "Ajunta un resoma corta",
        "others": "otras",
-       "simpleantispam-label": "Proba anti-spam.\n<strong>No</strong> completa esta!",
+       "simpleantispam-label": "Antispam. <strong>No</strong> completi esta!",
        "pageinfo-title": "Informa per \"$1\"",
        "pageinfo-header-basic": "Informa fundal",
        "pageinfo-header-edits": "Edita la istoria",
-       "pageinfo-header-restrictions": "Cambia la proteje",
-       "pageinfo-header-properties": "Proprias de la paje",
+       "pageinfo-header-restrictions": "Proteje de paje",
+       "pageinfo-header-properties": "Proprias de paje",
        "pageinfo-display-title": "Mostra la titulo",
-       "pageinfo-default-sort": "Default sort key",
+       "pageinfo-default-sort": "Clave de ordina implicada",
        "pageinfo-length": "Longia de paje (en baites)",
-       "pageinfo-article-id": "Carta de identia de la paje",
-       "pageinfo-language": "Lingua de la paje de contenidas",
-       "pageinfo-content-model": "Model de la paje de contenidas",
-       "pageinfo-robot-policy": "Catalogo par robotes",
+       "pageinfo-article-id": "Numero de paje",
+       "pageinfo-language": "Lingua de contenida de paje",
+       "pageinfo-content-model": "Model de contenida de paje",
+       "pageinfo-robot-policy": "Catalogi par robotes",
        "pageinfo-robot-index": "Permeteda",
-       "pageinfo-watchers": "Numeros de oservores de paje",
-       "pageinfo-few-watchers": "Min ca $1 {{PLURAL:$1|oservor|oservores}}",
-       "pageinfo-redirects-name": "Numero de redirijes a esta paje",
-       "pageinfo-subpages-name": "Numero de supajes de esta paje",
+       "pageinfo-robot-noindex": "Proibida",
+       "pageinfo-watchers": "Cuantia de usores ci monitori esta paje",
+       "pageinfo-few-watchers": "Min ca $1 {{PLURAL:$1|usor|usores}} monitorinte",
+       "pageinfo-redirects-name": "Cuantia de redirijes a esta paje",
+       "pageinfo-subpages-name": "Cuantia de supajes de esta paje",
+       "pageinfo-subpages-value": "$1 ($2 {{PLURAL:$2|redirije|redirijes}}; $3 {{PLURAL:$3|nonredirije|nonredirijes}})",
        "pageinfo-firstuser": "Creor de paje",
-       "pageinfo-firsttime": "Data de crea de la paje",
-       "pageinfo-lastuser": "Editor la plu nova",
-       "pageinfo-lasttime": "Data de la ultima edita",
-       "pageinfo-edits": "Numero total de editas",
-       "pageinfo-authors": "Numero total de autores diferente",
-       "pageinfo-recent-edits": "Numero resente de editas (en la pasada $1)",
-       "pageinfo-recent-authors": "Numero total de autores diferente",
-       "pageinfo-magic-words": "{{PLURAL:$1|parola|parolas}} majial ($1)",
+       "pageinfo-firsttime": "Data de crea de paje",
+       "pageinfo-lastuser": "Contribuor la plu nova",
+       "pageinfo-lasttime": "Data de la edita la plu resente",
+       "pageinfo-edits": "Cuantia intera de editas",
+       "pageinfo-authors": "Cuantia intera de autores individua",
+       "pageinfo-recent-edits": "Cuantia de editas resente (en la $1 pasada)",
+       "pageinfo-recent-authors": "Cuantia de autores individua resente",
+       "pageinfo-magic-words": "{{PLURAL:$1|parola|parolas}} majiosa ($1)",
        "pageinfo-hidden-categories": "{{PLURAL:$1|Categoria|Categorias}} ascondeda ($1)",
-       "pageinfo-templates": "Transcluded {{PLURAL:$1|template|templates}} ($1)",
+       "pageinfo-templates": "{{PLURAL:$1|stensil|stensiles}} transcluida ($1)",
        "pageinfo-toolboxlink": "Informa de paje",
-       "pageinfo-contentpage": "Contada como paje de contenidas",
+       "pageinfo-contentpage": "Tratada como paje de contenida",
        "pageinfo-contentpage-yes": "Si",
-       "patrol-log-page": "Patrol log",
-       "previousdiff": "← Difere plu vea",
-       "nextdiff": "Difere plu nova →",
+       "patrol-log-page": "Arcivo de patrulias",
+       "previousdiff": "← Edita plu vea",
+       "nextdiff": "Edita plu nova →",
        "widthheightpage": "$1 × $2, $3 {{PLURAL:$3|paje|pajes}}",
-       "file-info-size": "$1 × $2 pixel, grandia de fix: $3, MIME tipo: $4",
-       "file-info-size-pages": "$1 × $2 pixels, file size: $3, MIME type: $4, $5 {{PLURAL:$5|paje|pajes}}",
-       "file-nohires": "No plu densia posable.",
-       "svg-long-desc": "SVG fix, per nom $1 × $2 pixeles, grandia de fix: $3",
-       "show-big-image": "Arcivo orijinal",
+       "file-info-size": "$1 × $2 pixeles, grandia de fix: $3, tipo MIME: $4",
+       "file-info-size-pages": "$1 × $2 pixeles, grandia de fix: $3, tipo MIME: $4, $5 {{PLURAL:$5|paje|pajes}}",
+       "file-nohires": "No densia plu alta es disponable.",
+       "svg-long-desc": "fix svg, densia: $1 × $2 pixeles, grandia: $3",
+       "show-big-image": "Fix orijinal",
        "show-big-image-preview": "Grandia de esta previde: $1",
        "show-big-image-other": "Otra {{PLURAL:$2|densia|densias}}: $1.",
        "show-big-image-size": "$1 × $2 pixeles",
        "newimages": "Imajes nova",
        "ilsubmit": "Xerca",
        "bad_image_list": "La forma es la seguente:\n\nSola linias de un lista (ce comensa con *) es considerada.\nLa lia prima a la linia nesesa es un lia a un mal fix.\nCada lias seguente a la mesma linia es considerada es esetas, ce es, la pajes do la fix pote aveni enlinia.",
-       "metadata": "Metadata",
-       "metadata-help": "Esta fix conteni plu informa, posable juntada de un camera dijital o un scanador usada per crea o dijiti el.\nSi la fix ia es cambiada de se stato orijinal, alga detalias pote no es clara en la fix cambiada.",
+       "metadata": "Metadatos",
+       "metadata-help": "Esta fix conteni plu informa, posable ajuntada de la camera o scanador usada per crea o dijitali lo.\nSi la fix ia cambia de sua state orijinal, cisa alga detalias no pertine bon a la fix cambiada.",
        "metadata-expand": "Mostra detalias estendente",
        "metadata-collapse": "Asconde detalias estendeda",
-       "metadata-fields": "Campos de EXIF metadata listada en esta mesaje va es incluida cuando la table de metadata es minimida.\n* make\n* model\n* datetimeoriginal\n* exposuretime\n* fnumber\n* isospeedratings\n* focallength\n* artist\n* copyright\n* imagedescription\n* gpslatitude\n* gpslongitude\n* gpsaltitude",
+       "metadata-fields": "Metadatos de imaje listada en esta mesaje va es incluida cuando la table de metadatos es minimida.\n* make\n* model\n* datetimeoriginal\n* exposuretime\n* fnumber\n* isospeedratings\n* focallength\n* artist\n* copyright\n* imagedescription\n* gpslatitude\n* gpslongitude\n* gpsaltitude",
        "exif-orientation": "Orienta",
        "exif-xresolution": "Densia orizonal",
        "exif-yresolution": "Densia vertical",
        "exif-datetime": "Data e ora de cambia de fix",
        "exif-make": "Fabricor de camera",
        "exif-model": "Model de camera",
-       "exif-software": "Programas usada",
+       "exif-software": "Program usada",
        "exif-exifversion": "Varia de Exif",
        "exif-colorspace": "Spasio de color",
        "exif-datetimeoriginal": "Data e ora de jenera de datos",
        "confirm_purge_button": "Oce",
        "imgmultipagenext": "paje seguente →",
        "imgmultigo": "Vade!",
-       "imgmultigoto": "Vade a la paje $1",
-       "watchlisttools-clear": "Clari la lista de oserva.",
-       "watchlisttools-view": "Vide cambias pertinente",
-       "watchlisttools-edit": "Vide e edita la lista de pajes oservada",
-       "watchlisttools-raw": "Edita la lista rua de pajes oservada",
+       "imgmultigoto": "Vade a paje $1",
+       "watchlisttools-clear": "Vacui la lista de pajes monitorida.",
+       "watchlisttools-view": "Mostra cambias pertinente",
+       "watchlisttools-edit": "Mostra e edita la lista de pajes monitorida",
+       "watchlisttools-raw": "Edita la lista cru de pajes monitorida",
        "signature": "[[{{ns:user}}:$1|$2]] ([[{{ns:user_talk}}:$1|discute]])",
        "version": "Varia",
        "version-version": "($1)",
-       "redirect": "Redirijeda par arcivo, suor, paje, revisa, o carta de identia per identifia se",
+       "redirect": "Redirije par fix, usor, paje, revisa o numero de arcivo",
+       "redirect-summary": "Esta paje spesial redirije a un fix (si on spesifa un nom), un paje (si on spesifa un numero de revisa o de paje), un paje de usor (si on spesida un numero de usor), o un article de arcivo (si on spesifia un numero). Esemplos: [[{{#Special:Redirect}}/file/Example.jpg]], [[{{#Special:Redirect}}/page/64308]], [[{{#Special:Redirect}}/revision/328429]], [[{{#Special:Redirect}}/user/101]], or [[{{#Special:Redirect}}/logid/186]].",
        "redirect-submit": "Vade",
-       "redirect-lookup": "Lookup:",
+       "redirect-lookup": "Trova:",
        "redirect-value": "Valua:",
-       "redirect-user": "Carta de identia de la usor",
-       "redirect-page": "Carta de identia de la paje",
-       "redirect-revision": "Revisa de la paje",
-       "redirect-file": "Nom de arcivo",
+       "redirect-user": "Numero de usor",
+       "redirect-page": "Numero de paje",
+       "redirect-revision": "Revisa de paje",
+       "redirect-file": "Nom de fix",
        "fileduplicatesearch-submit": "Xerca",
        "specialpages": "Pajes spesial",
-       "tag-filter": "Filtre de [[Special:Tags|eticeta]]:",
-       "tag-list-wrapper": "([[Special:Tags|{{PLURAL:$1|Tag|Tags}}]]: $2)",
+       "tag-filter": "Filtro par [[Special:Tags|eticeta]]:",
+       "tag-list-wrapper": "([[Special:Tags|{{PLURAL:$1|Eticeta|Eticetas}}]]: $2)",
        "tags-active-yes": "Si",
        "tags-active-no": "No",
        "tags-hitcount": "$1 {{PLURAL:$1|cambia|cambias}}",
-       "logentry-delete-delete": "$1 {{GENDER:$2|sutraeda}} paje $3",
-       "logentry-delete-restore": "$1 {{GENDER:$2|reponeda}} paje $3 ($4)",
-       "logentry-delete-revision": "$1 {{GENDER:$2|ia cambia}} vidablia de {{PLURAL:$5|un revisa|$5 revisas}} en la paje $3: $4",
+       "logentry-delete-delete": "$1 {{GENDER:$2|sutrae}} paje $3",
+       "logentry-delete-restore": "$1 {{GENDER:$2|restora}} paje $3 ($4)",
+       "logentry-delete-revision": "$1 {{GENDER:$2|cambia}} la vidablia de {{PLURAL:$5|un revisa|$5 revisas}} en paje $3: $4",
        "revdelete-content-hid": "contenida ascondeda",
-       "logentry-move-move": "$1 {{GENDER:$2|moveda}} paje $3 a $4",
-       "logentry-move-move-noredirect": "$1 {{GENDER:$2|ia move}} la paje $3 a $4 sin lasa un redirije",
-       "logentry-move-move_redir": "$1 {{GENDER:$2|ia move}} la paje $3 a $4 per redirije",
-       "logentry-patrol-patrol-auto": "$1 {{GENDER:$2|ia marca}} revisa de forma automata $4 de paje $3 patruliada",
+       "logentry-move-move": "$1 {{GENDER:$2|move}} paje $3 a $4",
+       "logentry-move-move-noredirect": "$1 {{GENDER:$2|move}} la paje $3 a $4 sin lasa un redirije",
+       "logentry-move-move_redir": "$1 {{GENDER:$2|move}} la paje $3 a $4 con redirije",
+       "logentry-patrol-patrol-auto": "$1 {{GENDER:$2|marca}} automata la revisa $4 de paje $3 como patruliada",
        "logentry-newusers-create": "Conta de usor $1 ia es {{GENDER:$2|creada}}",
-       "logentry-newusers-autocreate": "La conta de usor $1 ia es {{GENDER:$2|creada}} direta",
-       "logentry-upload-upload": "$1 {{GENDER:$2|cargada}} $3",
-       "logentry-upload-overwrite": "$1 {{GENDER:$2|ia carga}} un varia nova de $3",
+       "logentry-newusers-autocreate": "Conta de usor $1 es automata {{GENDER:$2|creada}}",
+       "logentry-upload-upload": "$1 {{GENDER:$2|carga}} $3",
+       "logentry-upload-overwrite": "$1 {{GENDER:$2|carga}} un varia nova de $3",
        "searchsuggest-search": "Xerca {{SITENAME}}",
        "duration-days": "$1 {{PLURAL:$1|dia|dias}}",
        "expand_templates_ok": "Oce",
-       "randomrootpage": "Paje radis acaso"
+       "randomrootpage": "Paje acaso de radis"
 }
index bb0588a..0b5e469 100644 (file)
        "recentchanges-legend-newpage": "{{int:recentchanges-label-newpage}} (taip pat žiūrėkite [[Special:NewPages|naujausių straipsnių sąrašą]])",
        "recentchanges-submit": "Rodyti",
        "rcfilters-activefilters": "Aktyvūs filtrai",
-       "rcfilters-quickfilters": "Išsaugoti filtro nustatymai",
+       "rcfilters-advancedfilters": "Detalūs filtrai",
+       "rcfilters-quickfilters": "Išsaugoti filtrai",
        "rcfilters-quickfilters-placeholder-title": "Nėra išsaugotų nuorodų",
        "rcfilters-savedqueries-defaultlabel": "Išsaugoti filtrai",
        "rcfilters-savedqueries-rename": "Pervadinti",
        "rcfilters-savedqueries-unsetdefault": "Pašalinti kaip numatytą",
        "rcfilters-savedqueries-remove": "Pašalinti",
        "rcfilters-savedqueries-new-name-label": "Pavadinimas",
+       "rcfilters-savedqueries-new-name-placeholder": "Apibūdinkite šio filtro tikslą.",
        "rcfilters-savedqueries-apply-label": "Išsaugoti nustatymus",
        "rcfilters-savedqueries-cancel-label": "Atšaukti",
        "rcfilters-savedqueries-add-new-title": "Išsaugoti dabartinius filtro nustatymus",
        "rcfilters-filter-logactions-label": "Įrašyti veiksmai",
        "rcfilters-filter-lastrevision-description": "Naujausias puslapio keitimas.",
        "rcfilters-filter-previousrevision-description": "Visi keitimai, kurie nėra naujausi puslapio keitimai.",
+       "rcfilters-view-tags": "Pažymėti keitimai",
        "rcnotefrom": "Žemiau yra {{PLURAL:$5|pakeitimas|pakeitimai}} pradedant <strong>$3, $4</strong> (rodoma iki <strong>$1</strong> pakeitimų).",
        "rclistfromreset": "Nustatyti duomenų pasirinkimą iš naujo",
        "rclistfrom": "Rodyti naujus pakeitimus pradedant $3 $2",
        "pageid": "puslapio ID $1",
        "rawhtml-notallowed": "&lt;html&gt; negali būti naudojamos ne normaliuose puslapiuose.",
        "gotointerwiki": "Išeinama iš {{SITENAME}}",
-       "gotointerwiki-invalid": "Nurodytas pavadinimas negalimas."
+       "gotointerwiki-invalid": "Nurodytas pavadinimas negalimas.",
+       "pagedata-bad-title": "Negalimas pavadinimas: $1."
 }
index e5e453f..837374e 100644 (file)
        "emailmessage": "Vēstījums:",
        "emailsend": "Nosūtīt",
        "emailccme": "Atsūtīt man uz e-pastu mana ziņojuma kopiju.",
+       "emailccsubject": "Ziņojuma kopija $1: $2",
        "emailsent": "E-pasts nosūtīts",
        "emailsenttext": "Tavs e-pasts ir nosūtīts.",
        "emailuserfooter": "Šis e-pasts ir dalībnieka $1 sūtīts dalībniekam $2, izmantojot \"Sūtīt e-pastu šim dalībniekam\" funkciju {{SITENAME}}.",
index eae5755..1167f1f 100644 (file)
        "rcfilters-view-namespaces-tooltip": "Филтрирај исход по именски постор",
        "rcfilters-view-tags-tooltip": "Филтрирај исход по уредувачки ознаки",
        "rcfilters-view-return-to-default-tooltip": "Назад на главното филтерско мени",
+       "rcfilters-liveupdates-button": "Поднови во живо",
        "rcnotefrom": "Подолу {{PLURAL:$5|е прикажана промената|се прикажани промените}} почнувајќи од <strong>$3, $4</strong>  (се прикажуваат до <b>$1</b>).",
        "rclistfromreset": "Нов избор на датуми",
        "rclistfrom": "Прикажи нови промени почнувајќи од $3 $2",
index d5775fe..fd48e9a 100644 (file)
        "anontalk": "സംവാദം",
        "navigation": "ഉള്ളടക്കം",
        "and": "&#32;ഒപ്പം",
-       "qbfind": "കണ്ടെത്തുക",
-       "qbbrowse": "ബ്രൗസ്",
-       "qbedit": "തിരുത്തുക",
-       "qbpageoptions": "ഈ താൾ",
-       "qbmyoptions": "എന്റെ താളുകൾ",
        "faq": "പതിവുചോദ്യങ്ങൾ",
-       "faqpage": "Project:പതിവുചോദ്യങ്ങൾ",
        "actions": "നടപടികൾ",
        "namespaces": "നാമമേഖല",
        "variants": "രൂപഭേദങ്ങൾ",
        "edit-local": "ഇവിടുത്തെ വിവരണം തിരുത്തുക",
        "create": "ഈ താൾ സൃഷ്ടിക്കുക",
        "create-local": "ഇവിടെ വിവരണം ചേർക്കുക",
-       "editthispage": "ഈ താൾ തിരുത്തുക",
-       "create-this-page": "ഈ താൾ സൃഷ്ടിക്കുക",
        "delete": "മായ്ക്കുക",
-       "deletethispage": "ഈ താൾ നീക്കം ചെയ്യുക",
-       "undeletethispage": "ഈ താൾ പുനഃസ്ഥാപിക്കുക",
        "undelete_short": "{{PLURAL:$1|ഒരു തിരുത്ത്|$1 തിരുത്തുകൾ}} പുനഃസ്ഥാപിക്കുക",
        "viewdeleted_short": "{{PLURAL:$1|മായ്ക്കപ്പെട്ട ഒരു തിരുത്തൽ|മായ്ക്കപ്പെട്ട $1 തിരുത്തലുകൾ}} കാണുക",
        "protect": "സം‌രക്ഷിക്കുക",
        "protect_change": "സംരക്ഷണമാനത്തിൽ മാറ്റം വരുത്തുക",
-       "protectthispage": "ഈ താൾ സം‌രക്ഷിക്കുക",
        "unprotect": "സംരക്ഷണം",
-       "unprotectthispage": "ഈ താളിന്റെ സംരക്ഷണത്തിൽ മാറ്റംവരുത്തുക",
        "newpage": "പുതിയ താൾ",
-       "talkpage": "ഈ താളിനെക്കുറിച്ച്‌ ചർച്ച ചെയ്യുക",
        "talkpagelinktext": "സംവാദം",
        "specialpage": "പ്രത്യേക താൾ",
        "personaltools": "സ്വകാര്യതാളുകൾ",
-       "articlepage": "ലേഖനം കാണുക",
        "talk": "സംവാദം",
        "views": "ദർശനീയത",
        "toolbox": "ഉപകരണങ്ങൾ",
-       "userpage": "ഉപയോക്താവിന്റെ താൾ കാണുക",
-       "projectpage": "പദ്ധതി താൾ കാണുക",
        "imagepage": "പ്രമാണ താൾ കാണുക",
        "mediawikipage": "സന്ദേശങ്ങളുടെ താൾ കാണുക",
        "templatepage": "ഫലകം താൾ കാണുക",
        "searchrelated": "ബന്ധപ്പെട്ടവ",
        "searchall": "എല്ലാം",
        "showingresults": "'''$2''' മുതലുള്ള {{PLURAL:$1|'''ഒരു''' ഫലം|'''$1''' ഫലങ്ങൾ}} താഴെ പ്രദർശിപ്പിക്കുന്നു.",
-       "showingresultsinrange": "#<strong>$2</strong> മുതൽ #<strong>$3</strong> വരെയുള്ള പരിധിയിലെ {{PLURAL:$1|<strong>ഒരു</strong> ഫലം|<strong>$1</strong> ഫലങ്ങൾ}} താഴെ പ്രദർശിപിക്കുന്നു.",
+       "showingresultsinrange": "#<strong>$2</strong> à´®àµ\81തൽ #<strong>$3</strong> à´µà´°àµ\86à´¯àµ\81à´³àµ\8dà´³ à´ªà´°à´¿à´§à´¿à´¯à´¿à´²àµ\86 {{PLURAL:$1|<strong>à´\92à´°àµ\81</strong> à´«à´²à´\82|<strong>$1</strong> à´«à´²à´\99àµ\8dà´\99ൾ}} à´¤à´¾à´´àµ\86 à´ªàµ\8dരദർശിപàµ\8dപിà´\95àµ\8dà´\95àµ\81à´¨àµ\8dà´¨àµ\81.",
        "search-showingresults": "{{PLURAL:$4|<strong>$3</strong> ഫലത്തിൽ<strong>$1</strong>|<strong>$3</strong> ഫലത്തിൽ <strong>$1 മുതൽ $2</strong> വരെയുള്ളവ}}",
        "search-nonefound": "താങ്കൾ തിരഞ്ഞ പദത്തിനു യോജിച്ച ഫലങ്ങളൊന്നും ലഭിച്ചില്ല.",
        "search-nonefound-thiswiki": "ഈ അന്വേഷണത്തിനു യോജിച്ച ഫലങ്ങളൊന്നും ഈ സൈറ്റിൽ നിന്നും ലഭിച്ചില്ല.",
index 1db91d1..21533aa 100644 (file)
        "pageinfo-length": "Sidelengd (i byte)",
        "pageinfo-article-id": "Side-ID",
        "pageinfo-language": "Sideinnhaldsspråk",
+       "pageinfo-content-model": "Type sideinnhald",
        "pageinfo-robot-policy": "Botindeksering",
        "pageinfo-robot-index": "Tillate",
        "pageinfo-robot-noindex": "Ikkje tillate",
        "pageinfo-watchers": "Tal på overvakarar av sida",
+       "pageinfo-visiting-watchers": "Overvakarar av sida som såg nylege endringar",
        "pageinfo-few-watchers": "Færre enn $1 {{PLURAL:$1|som overvakar}}",
        "pageinfo-redirects-name": "Tal på omdirigeringar til sida",
        "pageinfo-subpages-name": "Undersider av sida",
        "logentry-protect-move_prot": "$1 {{GENDER:$2|flytte}} verneinnstillingar frå $4 til $3",
        "logentry-protect-unprotect": "$1 {{GENDER:$2|fjerna}} vern av $3",
        "logentry-protect-protect": "$1 {{GENDER:$2|verna}} $3 $4",
+       "logentry-protect-modify": "$1 {{GENDER:$2|endra}} vernenivå for $3 $4",
+       "logentry-protect-modify-cascade": "$1 {{GENDER:$2|endra}} vernenivå for $3 $4 [djupvern]",
        "logentry-rights-rights": "$1 {{GENDER:$2|endra}} gruppemedlemskap for $3 frå $4 til $5",
        "logentry-rights-rights-legacy": "$1 {{GENDER:$2|endra}} gruppemedlemskap for $3",
        "logentry-rights-autopromote": "$1 vart automatisk {{GENDER:$2|forfremja}} frå $4 til $5",
index 336e6e8..fa083c7 100644 (file)
        "post-expand-template-inclusion-warning": "Uwaga – zbyt duża wielkość wykorzystanych szablonów.\nNiektóre szablony nie zostaną użyte.",
        "post-expand-template-inclusion-category": "Strony, w których przekroczone jest ograniczenie wielkości użytych szablonów",
        "post-expand-template-argument-warning": "Uwaga – strona zawiera co najmniej jeden argument szablonu, który po rozwinięciu jest zbyt duży.\nArgument ten będzie pominięty.",
-       "post-expand-template-argument-category": "Strony, w których użyto szablon z pominięciem argumentów",
+       "post-expand-template-argument-category": "Strony, w których użyto szablonu z pominięciem argumentów",
        "parser-template-loop-warning": "Wykryto pętlę w szablonie [[$1]]",
        "template-loop-category": "Strony z pętlami szablonów",
        "template-loop-category-desc": "Strona zawiera pętlę szablonów, czyli szablon, który wywołuje sam siebie rekursywnie.",
        "rcfilters-view-namespaces-tooltip": "Przefiltruj wyniki według przestrzeni nazw",
        "rcfilters-view-tags-tooltip": "Przefiltruj wyniki według znaczników zmian",
        "rcfilters-view-return-to-default-tooltip": "Wróć do głównego menu filtra",
+       "rcfilters-liveupdates-button": "Aktualizacje na bieżąco",
        "rcnotefrom": "Poniżej {{PLURAL:$5|pokazano zmianę|pokazano zmiany}} {{PLURAL:$5|wykonaną|wykonane}} po <strong>$3, $4</strong> (nie więcej niż '''$1''' pozycji).",
        "rclistfromreset": "Zresetuj wybór daty",
        "rclistfrom": "Pokaż nowe zmiany od $3 $2",
        "authmanager-provider-password": "Uwierzytelnianie oparte na haśle",
        "authmanager-provider-password-domain": "Uwierzytelnianie na podstawie hasła i domeny",
        "authmanager-provider-temporarypassword": "Hasło tymczasowe",
+       "authprovider-confirmlink-message": "Bazując na poprzednich próbach logowania, to konto może być połączone z twoim kontem wiki. Połączenie ich pozwala się na zalogowanie przez te konta. Wybierz które powinny być połączone.",
        "authprovider-confirmlink-request-label": "Konta, które powinny być powiązane",
        "authprovider-confirmlink-success-line": "$1: Połączono.",
        "authprovider-confirmlink-failed": "Powiązanie konta nie udało się w pełni: $1",
        "authprovider-confirmlink-ok-help": "Kontynuuj po wyświetleniu komunikatów o błędach linkowania.",
        "authprovider-resetpass-skip-label": "Pomiń",
        "authprovider-resetpass-skip-help": "Pomiń resetowanie hasła.",
+       "authform-nosession-login": "Konto zostało utworzone, lecz twoja przeglądarka nie może \"pamiętać\" o zalogowaniu się.\n\n$1",
+       "authform-nosession-signup": "Konto zostało utworzone, lecz twoja przeglądarka nie może \"pamiętać\" o zalogowaniu się.\n\n$1",
        "authform-newtoken": "Brakujący token. $1",
        "authform-notoken": "Brakujący token",
        "authform-wrongtoken": "Nieprawidłowy token",
        "authpage-cannot-create": "Nie można rozpocząć tworzenie konta.",
        "authpage-cannot-create-continue": "Nie można kontynuować tworzenia konta. Twoja sesja najprawdopodobniej wygasła.",
        "authpage-cannot-link": "Nie udało się rozpocząć dowiązania konta.",
+       "authpage-cannot-link-continue": "Nie można kontynuować tworzenia konta. Twoja sesja najprawdopodobniej wygasła.",
        "cannotauth-not-allowed-title": "Brak dostępu",
        "cannotauth-not-allowed": "Nie masz uprawnień, aby skorzystać z tej strony",
        "changecredentials": "Zmiana poświadczeń",
index 84b8301..fdaa69a 100644 (file)
        "rcfilters-filter-excluded": "Excluído",
        "rcfilters-tag-prefix-namespace-inverted": "<strong>:não</strong> $1",
        "rcfilters-view-tags": "Edições marcadas",
+       "rcfilters-view-namespaces-tooltip": "Filtrar resultados por espaço nominal",
+       "rcfilters-view-tags-tooltip": "Filtrar resultados usando etiquetas de edição",
+       "rcfilters-view-return-to-default-tooltip": "Voltar ao menu do filtro principal",
+       "rcfilters-liveupdates-button": "Atualizações instantâneas",
        "rcnotefrom": "Abaixo {{PLURAL:$5|está a mudança|estão as mudanças}} desde <strong>$2</strong> (mostradas até <strong>$1</strong>).",
        "rclistfromreset": "Reiniciar a seleção da data",
        "rclistfrom": "Mostrar as novas mudanças a partir das $2 de $3",
index d4f5285..e2857aa 100644 (file)
        "recentchanges-legend-unpatrolled": "Used as legend on [[Special:RecentChanges]] and [[Special:Watchlist]].\n\nRefers to {{msg-mw|Recentchanges-label-unpatrolled}}.",
        "recentchanges-legend-plusminus": "{{optional}}\nA plus/minus sign with a number for the legend.",
        "recentchanges-submit": "Label for submit button in [[Special:RecentChanges]]\n{{Identical|Show}}",
+       "rcfilters-legend-heading": "Used as a heading for legend box on [[Special:RecentChanges]] and [[Special:Watchlist]] when RCFilters are enabled.",
        "rcfilters-activefilters": "Title for the filters selection showing the active filters.",
        "rcfilters-advancedfilters": "Title for the buttons allowing the user to switch to the various advanced filters views.",
        "rcfilters-quickfilters": "Label for the button that opens the saved filter settings menu in [[Special:RecentChanges]]",
        "rcfilters-view-namespaces-tooltip": "Tooltip for the button that loads the namespace view in [[Special:RecentChanges]]",
        "rcfilters-view-tags-tooltip": "Tooltip for the button that loads the tags view in [[Special:RecentChanges]]",
        "rcfilters-view-return-to-default-tooltip": "Tooltip for the button that returns to the default filter view in [[Special:RecentChanges]]",
+       "rcfilters-liveupdates-button": "Label for the button to enable or disable live updates on [[Special:RecentChanges]]",
        "rcnotefrom": "This message is displayed at [[Special:RecentChanges]] when viewing recentchanges from some specific time.\n\nThe corresponding message is {{msg-mw|Rclistfrom}}.\n\nParameters:\n* $1 - the maximum number of changes that are displayed\n* $2 - (Optional) a date and time\n* $3 - a date\n* $4 - a time\n* $5 - Number of changes are displayed, for use with PLURAL",
        "rclistfromreset": "Used on [[Special:RecentChanges]] to reset a selection of a certain date range.",
        "rclistfrom": "Used on [[Special:RecentChanges]]. Parameters:\n* $1 - (Currently not use) date and time. The date and the time adds to the rclistfrom description.\n* $2 - time. The time adds to the rclistfrom link description (with split of date and time).\n* $3 - date. The date adds to the rclistfrom link description (with split of date and time).\n\nThe corresponding message is {{msg-mw|Rcnotefrom}}.",
        "mediastatistics-header-text": "Header on [[Special:MediaStatistics]] for file types that are in the text category. This includes simple text formats, including plain text formats, json, csv, and xml. Source code of compiled programming languages may be included here in the future, but isn't currently.",
        "mediastatistics-header-executable": "Header on [[Special:MediaStatistics]] for file types that are in the executable category. This includes things like source files for interpreted programming language (Shell scripts, javascript, etc).",
        "mediastatistics-header-archive": "Header on [[Special:MediaStatistics]] for file types that are in the archive category. Includes things like tar, zip, gzip etc.",
+       "mediastatistics-header-3d": "Header on [[Special:MediaStatistics]] for file types that are in the 3D category. Includes STL files.",
        "mediastatistics-header-total": "Header on [[Special:MediaStatistics]] for a summary of all file types.",
        "json-warn-trailing-comma": "A warning message notifying that JSON text was automatically corrected by removing erroneous commas.\n\nParameters:\n* $1 - number of commas that were removed\n{{Related|Json-error}}",
        "json-error-unknown": "User error message when there’s an unknown error.\n\nThis error is shown if we received an unexpected value from PHP. See http://php.net/manual/en/function.json-last-error.php\n\nParameters:\n* $1 - integer error code\n{{Related|Json-error}}",
index 1a2dec3..9da374a 100644 (file)
@@ -8,15 +8,17 @@
                        "Mmistmurt",
                        "MoubarikBelkasim",
                        "Urhixidur",
-                       "아라"
+                       "아라",
+                       "Amara-Amaziɣ"
                ]
        },
-       "sunday": "Asamas (Eřḥedd)",
-       "monday": "Aynas (Řetnayen)",
+       "underline-always": "ⵍⴱⴷⴰ",
+       "sunday": "ⴰⵙⴰⵎⴰⵙ",
+       "monday": "ⴰⵢⵏⴰⵙ",
        "tuesday": "Asinas (Ettřata)",
        "wednesday": "Akṛas (Řarbeɛ)",
-       "thursday": "Akwas (Řexmis)",
-       "friday": "Asimwas (Ejjemɛa)",
+       "thursday": "ⴰⴽⵡⴰⵙ",
+       "friday": "ⴰⵙⵉⵎⵡⴰⵙ",
        "saturday": "Asiḍyas (Esseft)",
        "sun": "Asamas",
        "mon": "Aynas",
        "march": "Mares",
        "april": "Abril",
        "may_long": "May",
-       "june": "Yunyu",
-       "july": "Yulyuz",
-       "august": "Ɣuct",
-       "september": "Cutenbir",
-       "october": "Ktubar",
-       "november": "Nuwanbir",
-       "december": "Dujembir",
-       "january-gen": "Ynnayr",
+       "june": "ⵢⵓⵏⵢⵓ",
+       "july": "ⵢⵓⵍⵢⵓⵣ",
+       "august": "ⵖⵓⵛⵜ",
+       "september": "ⵛⵓⵜⴰⵏⴱⵉⵔ",
+       "october": "ⴽⵜⵓⴱⵔ",
+       "november": "ⵏⵓⵡⴰⵏⴱⵉⵔ",
+       "december": "ⴷⵓⵊⴰⵏⴱⵉⵔ",
+       "january-gen": "ⵉⵏⵏⴰⵢⵔ",
        "february-gen": "Ybrayr",
        "march-gen": "Mars",
        "april-gen": "Ibrir",
-       "may-gen": "May",
-       "june-gen": "Yunyu",
-       "july-gen": "Yulyuz",
-       "august-gen": "Ghuct",
-       "september-gen": "Cutanbir",
-       "october-gen": "Ktubar",
-       "november-gen": "Nuwanbir",
-       "december-gen": "Dujanbir",
-       "jan": "Yen",
+       "may-gen": "ⵎⴰⵢⵢⵓ",
+       "june-gen": "ⵢⵓⵏⵢⵓ",
+       "july-gen": "ⵢⵓⵍⵢⵓⵣ",
+       "august-gen": "ⵖⵓⵛⵜ",
+       "september-gen": "ⵛⵓⵜⴰⵏⴱⵉⵔ",
+       "october-gen": "ⴽⵜⵓⴱⵔ",
+       "november-gen": "ⵏⵓⵡⴰⵏⴱⵉⵔ",
+       "december-gen": "ⴷⵓⵊⴰⵏⴱⵉⵔ",
+       "jan": "ⵉⵏⵏ",
        "feb": "Yebrayer",
-       "mar": "Mars",
+       "mar": "ⵎⴰⵔ",
        "apr": "Abrir",
-       "may": "May",
-       "jun": "Yunyu",
-       "jul": "Yulyuz",
-       "aug": "Ɣuct",
-       "sep": "Cutembir",
-       "oct": "Ktubar",
-       "nov": "Nuwanbir",
-       "dec": "Dujenbir",
-       "category_header": "Tasniwin di taggayt \"$1\"",
-       "subcategories": "Tadu-ggayin",
+       "may": "ⵎⴰⵢ",
+       "jun": "ⵢⵓⵏ",
+       "jul": "ⵢⵓⵍ",
+       "aug": "ⵖⵓⵛ",
+       "sep": "ⵛⵓⵜ",
+       "oct": "ⴽⵜⵓ",
+       "nov": "ⵏⵓⵡ",
+       "dec": "ⴷⵓⵊ",
+       "january-date": "$1 ⵉⵏⵏⴰⵢⵔ",
+       "may-date": "$1 ⵎⴰⵢⵢⵓ",
+       "june-date": "$1 ⵢⵓⵏⵢⵓ",
+       "july-date": "$1 ⵢⵓⵍⵢⵓⵣ",
+       "august-date": "$1 ⵖⵓⵛⵜ",
+       "september-date": "$1 ⵛⵓⵜⴰⵏⴱⵉⵔ",
+       "october-date": "$1 ⴽⵜⵓⴱⵔ",
+       "november-date": "$1 ⵏⵓⵡⴰⵏⴱⵉⵔ",
+       "december-date": "$1 ⴷⵓⵊⴰⵏⴱⵉⵔ",
+       "pagecategories": "{{PLURAL:$1|ⴰⵙⵎⵉⵍ|ⵉⵙⵎⵉⵍⵏ}}",
+       "category_header": "ⵜⴰⵙⵏⵉⵡⵉⵏ ⴳ ⵓⵙⵎⵉⵍ \"$1\"",
+       "subcategories": "ⵉⴷⵓⵙⵎⵉⵍⵏ",
        "category-media-header": "Media di category \"$1\"",
        "category-empty": "''Taggayt a war dags bu ca n Tasna niɣ ca n umedia.''",
        "listingcontinuesabbrev": "arni-d.",
-       "about": "Xef",
+       "about": "ⵅⴼ",
+       "article": "ⵜⴰⵙⵏⴰ ⵏ ⵜⵓⵎⴰⵢⵜ",
        "newwindow": "(Areẓm di tburjet d-tamaynut)",
        "cancel": "Sbdd",
-       "mytalk": "Amsawal inu",
+       "mypage": "ⵜⴰⵙⵏⴰ",
+       "mytalk": "ⴰⵎⵙⴰⵡⴰⵍ",
+       "anontalk": "ⴰⵎⵙⴰⵡⴰⵍ",
        "navigation": "Tagriwa",
-       "qbfind": "Af",
-       "qbedit": "Ẓṛeg",
-       "actions": "Timegga",
-       "errorpagetitle": "Anezri",
+       "and": "&#32;ⴷ",
+       "actions": "ⵜⵉⴳⴰⵡⵉⵏ",
+       "errorpagetitle": "ⵜⴰⵣⴳⵍⵜ",
        "returnto": "Dwl ghar $1.",
        "tagline": "Zi {{SITENAME}}",
-       "help": "Tallalt",
-       "search": "Tarezzut",
-       "searchbutton": "Rzu",
+       "help": "ⵜⵉⵡⵉⵙⵉ",
+       "search": "ⵔⵣⵓ",
+       "searchbutton": "ⵔⵣⵓ",
        "go": "Raḥ ɣa",
        "searcharticle": "Uyur",
-       "history": "Amzruy n Tasna",
-       "history_short": "Amezruy",
+       "history": "ⴰⵎⵣⵔⵓⵢ ⵏ ⵜⴰⵙⵏⴰ",
+       "history_short": "ⴰⵎⵣⵔⵓⵢ",
+       "history_small": "ⴰⵎⵣⵔⵓⵢ",
        "printableversion": "Tanghelt n usiggez",
        "permalink": "Tamghunt iqqimen",
        "edit": "Ẓṛeg",
        "create": "Egg",
-       "editthispage": "Ẓṛg tasna ya",
-       "delete": "Kks",
+       "delete": "ⴽⴽⵙ",
        "protect": "Mstn",
-       "protect_change": "beddeř",
-       "newpage": "Tasna d-tamaynut",
-       "talkpage": "Siwl xf tasna ya",
-       "talkpagelinktext": "Awal",
+       "protect_change": "ⵙⵏⴼⵍ",
+       "newpage": "ⵜⴰⵙⵏⴰ ⵜⴰⵎⴰⵢⵏⵓⵜ",
+       "talkpagelinktext": "ⴰⵎⵙⴰⵡⴰⵍ",
        "personaltools": "Imassen inu",
        "talk": "siwel",
        "views": "Timmeẓṛa",
-       "toolbox": "Tanakat n imassen",
+       "toolbox": "ⵉⵎⴰⵙⵙⵏ",
        "otherlanguages": "S tutlayin nneḍni",
        "redirectedfrom": "(Itwasnnmd-d zi $1)",
        "redirectpagesub": "Tasna n (Redirect)",
        "jumpto": "Nḍu ghar:",
        "jumptonavigation": "tagriwa",
-       "jumptosearch": "tarezzut",
-       "aboutsite": "Awal xef {{SITENAME}}",
-       "aboutpage": "Project:Awal xef",
+       "jumptosearch": "ⵔⵣⵓ",
+       "aboutsite": "ⵅⴼ {{SITENAME}}",
+       "aboutpage": "Project:ⵅⴼ",
        "copyrightpage": "{{ns:project}}:izrefan ussenɣel",
        "currentevents": "Mayn itemsaren rux",
        "currentevents-url": "Project:mayn itmesaren ruxa",
        "disclaimers": "Ismigilen",
        "disclaimerpage": "Project:Asmigel amatu",
        "edithelp": "Tallalt deg uẓareg",
+       "helppage-top-gethelp": "ⵜⵉⵡⵉⵙⵉ",
        "mainpage": "Tasna Tamezwarut",
        "mainpage-description": "Tasna Tamezwarut",
+       "policy-url": "Project:ⵜⴰⵙⵔⵜⵉⵜ",
        "portal": "Tawwart n timetti",
        "portal-url": "Project:tawwart n yiwdan",
        "privacy": "Tasertit n tusligi",
        "editlink": "ẓṛg",
        "viewsourcelink": "ẓṛ aghbalu",
        "editsectionhint": "Ẓṛeg tigezmi: $1",
-       "toc": "Iktturn",
+       "toc": "ⵜⵓⵎⴰⵢⵉⵏ",
        "showtoc": "sskn-d",
        "hidetoc": "snuffar",
+       "confirmable-yes": "ⵢⴰⵀ",
+       "confirmable-no": "ⵓⵀⵓ",
        "site-rss-feed": "Tilgha n RSS n $1",
        "site-atom-feed": "Talɣut n Atom n $1",
        "page-rss-feed": "Asudem n RSS n \"$1\"",
-       "red-link-title": "$1 (tasna wer telli)",
-       "nstab-main": "Tasna",
+       "red-link-title": "$1 (ⵜⴰⵙⵏⴰ ⵓⵔ ⵉⵍⵍⵉⵏ)",
+       "nstab-main": "ⵜⴰⵙⵏⴰ",
        "nstab-user": "Tasna n User",
        "nstab-project": "Tasna usenfar",
-       "nstab-image": "Asatul",
+       "nstab-image": "ⴰⴼⴰⵢⵍⵓ",
+       "nstab-mediawiki": "ⵜⵓⵣⵉⵏⵜ",
        "nstab-template": "Tamudemt",
-       "nstab-category": "Taggayt(category)",
+       "nstab-help": "ⵜⴰⵙⵏⴰ ⵏ ⵜⵡⵉⵙⵉ",
+       "nstab-category": "ⴰⵙⵎⵉⵍ",
        "badtitle": "isem war icni ca",
        "badtitletext": "Isem n Tasna itexised war icni ca, ixwa, niɣ  isem n ajar-tutlayt niɣ ajar-wiki war icni ca.\nteqqad ad yilli days ca n usekkil war itwagg deg isem .",
        "viewsource": "Ẓeṛ aɣbalu",
        "viewsourcetext": "Tzemred a tẓerd u atsneɣled aɣbal n Tasna ya :",
        "yourname": "Izwl-usqdac:",
        "yourpassword": "Tawalt n wadaf:",
-       "remembermypassword": "ejj (login) inu deg uselkim a (for a maximum of $1 {{PLURAL:$1|day|days}})",
-       "login": "Adf",
+       "login": "ⴰⴷⴼ",
        "nav-login-createaccount": "Adef / egg amiḍan",
-       "userlogin": "Adf / egg amiḍan",
        "logout": "Ufugh",
        "userlogout": "Ufugh",
-       "nologin": "war ɣark login? '''$1'''.",
-       "nologinlink": "Egg amiḍan",
        "createaccount": "Egg amiḍan",
-       "gotaccount": "ɣark  amiḍan? '''$1'''.",
-       "gotaccountlink": "Adeff",
+       "createacct-benefit-body2": "{{PLURAL:$1|ⵜⴰⵙⵏⴰ|ⵜⴰⵙⵏⵉⵡⵉⵏ}}",
        "loginsuccesstitle": "Adaf icna",
        "loginsuccess": "'''Qac tudeffed di {{SITENAME}} s \"$1\".'''",
        "nosuchuser": "War illi ca n useqdac s isem a\"$1\".\nxemm tirra , niɣ egg amiḍan d amaynu.",
        "noemail": "War illi ca n e-mail ɣar useqdac a \"$1\".",
        "passwordsent": "Taguri n wadaf tamaynut twassekked i e-mail  \"$1\".\nadeff-d xmi ɣa teṭfed.",
        "eauthentsent": "ijj n e-mail itwasekked ɣar e-mail nni.\nzzat ma ca n e-mail nniḍen ma ad itwasekk ɣar umiḍan , ixessa ad tegged manayenni di e-mail, bac ad nessen ila qa amiḍan a inec.",
+       "loginlanguagelabel": "ⵜⵓⵜⵍⴰⵢⵜ: $1",
        "retypenew": "Ɛawd arri Taguri n wadaf tamaynut:",
+       "botpasswords-label-delete": "ⴽⴽⵙ",
        "bold_sample": "Tirra tizurarin",
        "bold_tip": "Tira tizurarin",
        "italic_sample": "Tirra titalyanin",
        "sig_tip": "Azewl(signature) inec ag ukud(time) .",
        "hr_tip": "Acariḍ aglawan",
        "summary": "Tagḍwit:",
-       "subject": "Abatu/izwl:",
+       "subject": "ⴰⵙⵏⵜⵍ:",
        "minoredit": "Ta d taẓrigt d-tamẓeyant",
        "watchthis": "Ḥḍa tasna ya",
        "savearticle": "Xmml tasna",
        "anoneditwarning": "'''ɣark:''' war tudifd ca s isem inec.\nTansa n IP inac ad-teqqim deg umezruy n teẓṛigin n Tasna ya .",
        "summary-preview": "Azar-ascan n Tegḍwit:",
        "blockedtext": "'''Isem useqdac niɣ tansa IP inecc tewabluca  .'''\n\niblocat  $1.\nMaynzi ''$2''.\n\n* Abluki ibda di: $8\n* Ad ikemmel di: $6\n* Abluki ig itwaxsen d: $7\n\nTzemred ad temsawaded ag $1 niɣ [[{{MediaWiki:Grouppage-sysop}}|administrator]] nniḍn bac ad tsiwled x ubluki a.\nwar tzemred ca ad ad tesxedmed 'e-mail this user' ɣar mala ca n e-mail illa ɣark di [[Special:Preferences|Isemyifiyen n umiḍan]] u war twabluki ca usexdem ines.\nTansa IP inecc n ruxa d $3, u ID icecc iteblukan d #$5.\nmaṛṛa manaya deg ujenna eggit di tabrat i ɣ-ad tsekked.",
-       "newarticle": "(Amaynu)",
+       "newarticle": "(ⴰⵎⴰⵢⵏⵓ)",
        "newarticletext": "Tdefar-d tazdayt n Tasna εad war telli .\nbac ad tegged , arri di taflwit a swadday (xemm i [$1  Tasna n Tallalt] i ineɣmisen ifruryen).\nmala qacek da s ɣalaṭ waha, tecca di tbutunt n '''deffar''' di (browser) inec .",
        "noarticletext": "Rxxu ur din llint ca tira di tasna ya.\nTzmmard [[Special:Search/{{PAGENAME}}|rzu xf yizwl n tasna ya]] di tasniwin nnḍni,\n<span class=\"plainlinks\">[{{fullurl:{{#Special:Log}}|page={{FULLPAGENAMEE}}}} search the related logs],\nnigh [{{fullurl:{{FULLPAGENAME}}|action=edit}} edit this page]</span>.",
        "previewnote": "'''Wa d Azar-ascan waha;\ntiẓṛigin εad war twaḥḍent!'''",
        "previousrevision": "←Affegged n zik/zic",
        "nextrevision": "Afegged d amaynu→",
        "currentrevisionlink": "Afegged n rux",
-       "cur": "",
+       "cur": "ⵎⵔⵏ",
        "last": "anggaru",
        "page_first": "amzwaru",
        "page_last": "anggaru",
        "histlast": "Anggaru n marra",
        "history-feed-item-nocomment": "$1 ɣar $2",
        "rev-delundel": "sken/ffer",
+       "revdelete-show-file-submit": "ⵢⴰⵀ",
+       "revdelete-log": "ⵜⴰⵎⵏⵜⵉⵍⵜ:",
+       "deletedhist": "ⴰⵎⵣⵔⵓⵢ ⵉⵜⵜⵡⴰⴽⴽⵙⵏ",
+       "mergehistory-reason": "ⵜⴰⵎⵏⵜⵉⵍⵜ:",
        "history-title": "Amezruy n teẓṛigt n \"$1\"",
        "lineno": "Tabrit $1:",
        "compareselectedversions": "Smequdda tunɣilin a",
        "editundo": "kkes min ggiɣ",
-       "searchresults": "Tifellawin n tarezzut",
-       "searchresults-title": "Tifellawin n tarezzut xef \"$1\"",
+       "searchresults": "ⵜⵉⵢⴰⴼⵓⵜⵉⵏ ⵏ ⵓⵔⵣⵣⵓ",
+       "searchresults-title": "ⵜⵉⵢⴰⴼⵓⵜⵉⵏ ⵏ ⵓⵔⵣⵣⵓ ⵅⴼ \"$1\"",
        "prevn": "Amzray {{PLURAL:$1|$1}}",
        "nextn": "wn d-itasn {{PLURAL:$1|$1}}",
        "viewprevnext": "Ẓeṛ ($1 {{int:pipe-separator}} $2) ($3)",
-       "searchprofile-everything": "Marra",
-       "searchprofile-articles-tooltip": "Rzu di $1",
+       "searchprofile-articles": "ⵜⴰⵙⵏⵉⵡⵉⵏ ⵏ ⵜⵓⵎⴰⵢⵜ",
+       "searchprofile-everything": "ⵎⴰⵔⵔⴰ",
+       "searchprofile-articles-tooltip": "ⵔⵣⵓ ⴳ $1",
        "search-result-size": "$1 ({{PLURAL:$2|1 tawalt|$2 tiwalin}})",
        "search-redirect": "(awi $1)",
-       "search-suggest": "Ttugha txsd a tinid: $1",
+       "search-section": "(ⵜⵉⴳⵣⵎⵉ $1)",
+       "search-category": "(ⴰⵙⵎⵉⵍ $1)",
+       "search-suggest": "ⵎⴰ ⵜⵅⵙⴷ ⴰⴷ ⵜⵉⵏⵉⴷ: $1",
        "search-interwiki-caption": "Awmatn n usnfar",
-       "search-interwiki-more": "(ujar)",
-       "searchall": "maṛṛa",
+       "search-interwiki-more": "(ⵓⴳⴰⵔ)",
+       "searchall": "ⵎⴰⵔⵔⴰ",
        "powersearch-legend": "Tarzzut tanmhazt",
+       "powersearch-toggleall": "ⵎⴰⵔⵔⴰ",
        "preferences": "Ismyifiyn",
        "mypreferences": "Isemyifiyen inu",
-       "searchresultshead": "Tarzzut",
-       "yourrealname": "isem n deṣṣaḥ :",
+       "searchresultshead": "ⵔⵣⵓ",
+       "stub-threshold-sample-link": "ⴰⵎⴷⵢⴰ",
+       "prefs-searchoptions": "ⴰⵔⵣⵣⵓ",
+       "yourrealname": "ⵉⵙⵎ ⵏ ⵜⵉⴷⵜ:",
+       "yourlanguage": "ⵜⵓⵜⵍⴰⵢⵜ:",
        "prefs-help-realname": "isem inec n deṣṣaḥ mala txesad waha .\nmala tucit-id, ataf Lxdant inec a tetwassan ila inec.",
+       "prefs-dateformat": "ⵜⴰⵍⵖⴰ ⵏ ⵓⵙⴰⴽⵓⴷ",
+       "userrights-groupsmember": "ⴰⴳⵎⴰⵎ ⴳ:",
+       "userrights-reason": "ⵜⴰⵎⵏⵜⵉⵍⵜ:",
+       "group": "ⵜⴰⵔⴰⴱⴱⵓⵜ:",
        "group-sysop": "Indbaln",
-       "group-all": "(maṛṛa)",
+       "group-all": "(ⵎⴰⵔⵔⴰ)",
        "grouppage-sysop": "{{ns:project}}:inedbalen",
+       "right-read": "ⵖⵔ ⵜⴰⵙⵏⵉⵡⵉⵏ",
+       "right-edit": "ⵙⵏⴼⵍ ⵜⴰⵙⵏⵉⵡⵉⵏ",
+       "right-move": "ⵙⵎⵓⵜⵜⵉ ⵜⴰⵙⵏⵉⵡⵉⵏ",
+       "right-movefile": "ⵙⵎⵓⵜⵜⵉ ⵉⴼⴰⵢⵍⵓⵜⵏ",
+       "right-delete": "ⴽⴽⵙ ⵜⴰⵙⵏⵉⵡⵉⵏ",
        "rightslog": "Aghmis n talghut n izrfan n usqdac",
+       "action-read": "ⵖⵔ ⵜⴰⵙⵏⴰ ⴰ",
+       "action-edit": "ⵙⵏⴼⵍ ⵜⴰⵙⵏⴰ ⴰ",
+       "action-delete": "ⴽⴽⵙ ⵜⴰⵙⵏⴰ ⴰ",
        "nchanges": "$1 {{PLURAL:$1|tiẓṛegt|tiẓṛigin}}",
+       "enhancedrc-history": "ⴰⵎⵣⵔⵓⵢ",
        "recentchanges": "Tiẓṛigin tineggura",
        "recentchanges-feed-description": "Bbar tiẓṛigin timayutin n wiki deg usudem(feed) a .",
+       "rcfilters-savedqueries-new-name-label": "ⵉⵙⵎ",
+       "rcfilters-filter-bots-label": "ⴰⵔⵓⴱⵓ",
        "rcnotefrom": "ɣar wadday d tiẓṛigin zi '''$2''' (ar '''$1''' ).",
        "rclistfrom": "Ẓar tiẓṛigin timaynutin ig ibeddan zi $3 $2",
        "rcshowhideminor": "$1 tiẓṛigin d-timeẓyanin",
-       "rcshowhidebots": "$1 iroboten(robots)",
+       "rcshowhidebots": "$1 ⵉⵔⵓⴱⵓⵜⵏ",
        "rcshowhideliu": "$1 users ig yudeffen",
        "rcshowhideanons": "$1 users war twasnen",
        "rcshowhidepatr": "Tiẓṛigin ig itwaẓrent di $1",
        "rcshowhidemine": "$1 tiẓṛigin inu",
        "rclinks": "Ẓar $1 tiẓṛigin tinggura di $2 n ussan inggura",
        "diff": "imṣebḍan",
-       "hist": "Amezruy",
+       "hist": "ⴰⵎⵣⵔⵓⵢ",
        "hide": "Snuffar",
        "show": "semmel-d",
-       "minoreditletter": "m",
-       "newpageletter": "N",
-       "boteditletter": "b",
+       "minoreditletter": "ⵎⵥⵢ",
+       "newpageletter": "ⵎⵢⵏ",
+       "boteditletter": "",
        "recentchangeslinked": "Isenfilen i yudsen wa",
        "recentchangeslinked-feed": "Tiẓṛigin ag ta",
        "recentchangeslinked-toolbox": "Tiẓṛigin ag ta",
        "recentchangeslinked-title": "Tiẓṛigin ssaɣant-id ɣar \"$1\"",
        "recentchangeslinked-summary": "Ta d tabdart n isnfiln itwaggn drus zggwami di tasniwin id-iqqnen zg ict tasna nniḍn (nigh iqqnen ghar iwdan zi ca n taggayt).\nTasniwin di [[Special:Watchlist|your watchlist]] d '''tizurarin'''.",
-       "recentchangeslinked-page": "Izwl n tasna:",
+       "recentchangeslinked-page": "ⵉⵙⵎ ⵏ ⵜⴰⵙⵏⴰ:",
        "upload": "Zdem-d asatul",
        "uploadbtn": "Zdem-d afaylu",
        "uploadlogpage": "Zdem-d aɣmis",
        "filedesc": "Asgbr",
        "fileuploadsummary": "Asgbr:",
        "watchthisupload": "Xm tasbtirt a",
-       "listfiles": "Tabdart n ifayluten",
-       "file-anchor-link": "Afaylu",
+       "upload-dialog-button-upload": "ⵙⴽⵜⵔ",
+       "upload-form-label-infoform-name": "ⵉⵙⵎ",
+       "upload-form-label-infoform-description": "ⴰⴳⵍⴰⵎ",
+       "upload-form-label-infoform-date": "ⴰⵙⴰⴽⵓⴷ",
+       "listfiles-delete": "ⴽⴽⵙ",
+       "imgfile": "ⴰⴼⴰⵢⵍⵓ",
+       "listfiles": "ⵜⴰⵍⴳⴰⵎⵜ ⵏ ⵉⴼⴰⵢⵍⵓⵜⵏ",
+       "listfiles_date": "ⴰⵙⴰⴽⵓⴷ",
+       "listfiles_name": "ⵉⵙⵎ",
+       "listfiles_description": "ⴰⴳⵍⴰⵎ",
+       "listfiles_count": "ⵜⵓⵏⵖⵉⵍⵉⵏ",
+       "listfiles-latestversion": "ⵜⵓⵏⵖⵉⵍⵜ ⵜⴰⵎⵉⵔⴰⵏⵜ",
+       "listfiles-latestversion-yes": "ⵢⴰⵀ",
+       "listfiles-latestversion-no": "ⵓⵀⵓ",
+       "file-anchor-link": "ⴰⴼⴰⵢⵍⵓ",
        "filehist": "Amzruy n usatul",
        "filehist-help": "Tka di date/time bac ad tẓerd afaylu mamec ja d-itban di Lwaqt a .",
+       "filehist-deleteall": "ⴽⴽⵙ ⵎⴰⵔⵔⴰ",
        "filehist-deleteone": "sfaḍ",
-       "filehist-current": "aturaw",
-       "filehist-datetime": "Azmz/Akud",
+       "filehist-current": "ⴰⵎⵉⵔⴰⵏ",
+       "filehist-datetime": "ⴰⵙⴰⴽⵓⴷ/ⴰⴽⵓⴷ",
        "filehist-user": "Aseqdac",
        "filehist-dimensions": "Tisektiwin",
        "filehist-filesize": "Tiddi n ufaylu",
-       "filehist-comment": "Tinit",
+       "filehist-comment": "ⴰⵅⴼⴰⵡⴰⵍ",
        "imagelinks": "Aseqdec usatul",
        "linkstoimage": "{{PLURAL:$1|Tasna ya teqn-ad|$1 Tasniwin a qnent-id}} ɣa ufaylu ya :",
        "nolinkstoimage": "war telli ca n Tasna teqqen-d ɣa ufaylu ya.",
        "sharedupload": "Wa d ijj ufaylu itwacrec jar aṭṭas n isenfaren(projects).",
        "uploadnewversion-linktext": "Zdem-d tunɣilt d-tamaynut n ufaylu a",
-       "filedelete-submit": "Sfaḍ",
+       "filerevert-comment": "ⵜⴰⵎⵏⵜⵉⵍⵜ:",
+       "filedelete": "ⴽⴽⵙ $1",
+       "filedelete-legend": "ⴽⴽⵙ ⴰⴼⴰⵢⵍⵓ",
+       "filedelete-comment": "ⵜⴰⵎⵏⵜⵉⵍⵜ:",
+       "filedelete-submit": "ⴽⴽⵙ",
+       "filedelete-success": "ⵉⵜⵜⵡⴰⴽⴽⵙ <strong>$1</strong>.",
        "mimesearch": "tarezzut n MIME",
+       "download": "ⴰⴳⵎ",
        "listredirects": "Ẓar (redirects)",
        "unusedtemplates": "Timudmiwin war twasexedment",
        "randompage": "Tasna mamec ma tella",
+       "randomincategory-category": "ⴰⵙⵎⵉⵍ:",
+       "randomincategory-submit": "Raḥ ɣa",
        "randomredirect": "(redirect) zi ṭṭarf",
        "statistics": "tisiḍanin",
+       "statistics-articles": "ⵜⴰⵙⵏⵉⵡⵉⵏ ⵏ ⵜⵓⵎⴰⵢⵜ",
+       "statistics-pages": "ⵜⴰⵙⵏⵉⵡⵉⵏ",
        "doubleredirects": "(redirects) ɛɛawdent",
        "brokenredirects": "(redirects) arẓent",
        "brokenredirects-edit": "arri",
-       "brokenredirects-delete": "sfaḍ",
+       "brokenredirects-delete": "ⴽⴽⵙ",
        "withoutinterwiki": "Tasna bla tiẓdayin n tutlayt",
        "withoutinterwiki-submit": "Smmrad",
        "fewestrevisions": "Tasniwin s cwayt n ifeggiden",
        "nbytes": "$1 {{PLURAL:$1|atamḍan|itamḍanen}}",
        "nlinks": "$1 {{PLURAL:$1|Tazdayt|Tizdayin}}",
-       "nmembers": "$1 {{PLURAL:$1|amaslad|imasladen}}",
-       "lonelypages": "Tasniwin tigujilin",
+       "nmembers": "$1 {{PLURAL:$1|ⵓⴳⵎⴰⵎ|ⵉⴳⵎⴰⵎⵏ}}",
+       "lonelypages": "ⵜⴰⵙⵏⵉⵡⵉⵏ ⵜⵉⴳⵓⵊⵉⵍⵉⵏ",
        "uncategorizedpages": "Tasniwin bla taggayt",
        "uncategorizedcategories": "Taggayin bla taggayt",
        "uncategorizedimages": "ifayluten bla taggayt",
        "longpages": "Tasniwin d-tizirarin",
        "deadendpages": "Tasniwin s tizdayin mmutent",
        "protectedpages": "Tasniwin ẓarqent",
+       "protectedpages-page": "ⵜⴰⵙⵏⴰ",
+       "protectedpages-reason": "ⵜⴰⵎⵏⵜⵉⵍⵜ",
        "listusers": "Tabdart n iseqdacen",
-       "newpages": "Tasniwin timaynutin",
+       "newpages": "ⵜⴰⵙⵏⵉⵡⵉⵏ ⵜⵉⵎⴰⵢⵏⵓⵜⵉⵏ",
        "ancientpages": "Tasniwin n zik qqaε",
-       "move": "Smutti",
-       "movethispage": "Smutti tasna ya",
+       "move": "ⵙⵎⵓⵜⵜⵉ",
+       "movethispage": "ⵙⵎⵓⵜⵜⵉ ⵜⴰⵙⵏⴰ ⴰ",
        "pager-newer-n": "{{PLURAL:$1|amynu 1|amynu $1}}",
        "pager-older-n": "{{PLURAL:$1|aqbur 1|aqbur $1}}",
+       "apisandbox-reset": "ⵙⴼⴹ",
+       "apisandbox-examples": "ⵉⵎⴷⵢⴰⵜⵏ",
+       "apisandbox-results": "ⵜⵉⵢⴰⴼⵓⵜⵉⵏ",
+       "apisandbox-continue-clear": "ⵙⴼⴹ",
        "booksources": "Ighbula n udlis",
+       "booksources-search": "ⵔⵣⵓ",
        "specialloguserlabel": "Aseqdac:",
        "speciallogtitlelabel": "isem:",
        "log": "Aɣmis",
        "all-logs-page": "Maṛṛa iɣmisen",
-       "allpages": "Marra tasniwin",
+       "checkbox-all": "ⵎⴰⵔⵔⴰ",
+       "allpages": "ⵎⴰⵔⵔⴰ ⵜⴰⵙⵏⵉⵡⵉⵏ",
        "nextpage": "Tasna zzat ($1)",
        "prevpage": "Tasna zzat ($1)",
        "allpagesfrom": "Scan-d Tasniwin beddant zi:",
-       "allarticles": "Marra tasniwin",
+       "allarticles": "ⵎⴰⵔⵔⴰ ⵜⴰⵙⵏⵉⵡⵉⵏ",
        "allpagessubmit": "Uyur",
        "allpagesprefix": "Ẓar Tasniwin s usekkil amzwaru:",
-       "categories": "Taggayin",
-       "linksearch-ok": "Tarzzut",
+       "categories": "ⵉⵙⵎⵉⵍⵏ",
+       "sp-deletedcontributions-contribs": "ⵜⵓⵎⵓⵜⵉⵏ",
+       "linksearch-ok": "ⵔⵣⵓ",
        "listusers-submit": "Smmrad",
+       "activeusers-submit": "smmrad",
+       "listgrouprights-group": "ⵜⴰⵔⴰⴱⴱⵓⵜ",
        "emailuser": "Ssek E-mail i bnadm a",
+       "emailto": "ⵉ:",
+       "emailsubject": "ⴰⵙⵏⵜⵍ:",
+       "emailmessage": "ⵜⵓⵣⵉⵏⵜ:",
+       "emailsend": "ⴰⵣⵏ",
        "watchlist": "Tabdart uḥṭṭu inu",
        "mywatchlist": "Tabdart uḥṭṭu inu",
+       "watchlistfor2": "ⵉ $1 $2",
        "addedwatchtext": "Tasna \"[[:$1]]\" Temmarni ɣar [[Special:Watchlist|Tabdart uḥṭṭu]].",
        "removedwatchtext": "Tasna \"[[:$1]]\" twakkes zi [[Special:Watchlist|Tabdart uḥṭṭu inec]].",
        "watch": "Ḥḍa",
        "wlshowlast": "Sseml-ad $1 tisεεatin $2 ussan  inggura",
        "watching": "Ḥṭṭigh...",
        "unwatching": "Ur ḥṭṭigh...",
-       "deletepage": "Kks tasna",
-       "delete-legend": "Sfaḍ",
+       "deletepage": "ⴽⴽⵙ ⵜⴰⵙⵏⴰ",
+       "delete-confirm": "ⴽⴽⵙ \"$1\"",
+       "delete-legend": "ⴽⴽⵙ",
        "historywarning": "ɣark: Tasna i txisd atekesd ɣars amzruy :",
        "confirmdeletetext": "Ur d ac iqqim walu a tsfḍed ict tasna ak marra amzruy nns.\nMa nican txsd a tggd manaya? Ma tssnd min ttggd? Ma ttggd manaya amc teqqaṛ  [[{{MediaWiki:Policy-url}}|tasrtit n Wiki]] ?",
        "actioncomplete": "Tiggawt tsala",
        "deleteotherreason": "Ca n ssebba nniḍn:",
        "deletereasonotherlist": "Ssebba nniḍn",
        "rollbacklink": "Sdwl ghar dffar",
+       "changecontentmodel-reason-label": "ⵜⴰⵎⵏⵜⵉⵍⵜ:",
+       "changecontentmodel-submit": "ⵙⵏⴼⵍ",
        "protectlogpage": "Aghmis n umstn",
-       "prot_1movedto2": "[[$1]] twaneql ɣa [[$2]]",
-       "protectcomment": "Ssebba:",
+       "prot_1movedto2": "ⵜⵎⵓⵜⵜⵉ [[$1]] ⵖⵔ [[$2]]",
+       "protectcomment": "ⵜⴰⵎⵏⵜⵉⵍⵜ:",
        "protectexpiry": "Itsala:",
        "protect_expiry_invalid": "Akud n usali ur illi nican.",
        "protect_expiry_old": "Akud usali izri, idwl d amzruy.",
        "protect-cascade": "Ḥḍa Tasniwin i yudfen di Tasna ya (cascading protection)",
        "protect-cantedit": "war tezemred ca ad tbedeld iswiren n uḥeṭṭu n Tasna ya, mayenzi war ɣark turagt bac ad tẓṛegd.",
        "protect-expiry-options": "2 tasεεat:2 hours,1 ass:1 day,3 ussan:3 days,1 amalass:1 week,2 imallasen:2 weeks,1 ayur:1 month,3 iyuren:3 months,6 iyuren:6 months,1 asggas:1 year,infinite:infinite",
-       "restriction-type": "Turagt:",
+       "restriction-type": "ⵜⵓⵔⴰⴳⵜ:",
        "restriction-level": "Aswir uskref:",
        "restriction-edit": "Arri",
+       "restriction-move": "ⵙⵎⵓⵜⵜⵉ",
+       "restriction-upload": "ⵙⴽⵜⵔ",
        "undeletebtn": "Ar-ad",
        "undeleteviewlink": "ẓeṛ",
+       "undeletecomment": "ⵜⴰⵎⵏⵜⵉⵍⵜ:",
        "undelete-search-submit": "Tarzzut",
+       "undelete-show-file-submit": "ⵢⴰⵀ",
        "namespace": "Tallunt-izwel:",
        "invert": "Dren mayn testid (tixtard)",
        "blanknamespace": "(Amezwaru)",
        "contributions": "Tiggawin n useqdac",
-       "mycontris": "Tiggawin inu",
-       "contribsub2": "i $1 ($2)",
-       "uctop": "(snnj)",
+       "mycontris": "ⵜⵓⵎⵓⵜⵉⵏ",
+       "anoncontribs": "ⵜⵓⵎⵓⵜⵉⵏ",
+       "contribsub2": "ⵉ {{GENDER:$3|$1}} ($2)",
+       "uctop": "(ⵜⴰⵎⵉⵔⴰⵏⵜ)",
        "month": "Zg wayur (d zik):",
        "year": "Zg usggwas (d zik):",
        "sp-contributions-newbies": "Ẓar Tabdart n tiggawin n useqdac a deg umiḍan amaynu waha",
        "sp-contributions-newbies-sub": "i imiḍan imaynuten",
        "sp-contributions-blocklog": "sbdd tabdart n talghut",
-       "sp-contributions-talk": "Awal",
+       "sp-contributions-talk": "ⵎⵙⴰⵡⵍ",
        "sp-contributions-search": "Arzu x tiggawin",
        "sp-contributions-username": "Tansa IP d isem useqdac:",
-       "sp-contributions-submit": "Tarzzut",
+       "sp-contributions-submit": "ⵔⵣⵓ",
        "whatlinkshere": "Min iteqqnen ghar da",
        "whatlinkshere-title": "Tasniwin id-izedyen ɣar \"$1\"",
-       "whatlinkshere-page": "Tasna:",
+       "whatlinkshere-page": "ⵜⴰⵙⵏⴰ:",
        "linkshere": "Tasna ya tzedi ɣa '''[[:$1]]''':",
        "nolinkshere": "war tlli ca n Tasna tqqen-d da '''[[:$1]]'''.",
        "isredirect": "Tasna n (redirect)",
        "whatlinkshere-links": "← tizdayin",
        "whatlinkshere-hidelinks": "$1 timqqan",
        "blockip": "Sbdd asqdac a",
+       "ipbreason": "ⵜⴰⵎⵏⵜⵉⵍⵜ:",
        "ipboptions": "2 n timirin:2 hours,1 n wass:1 day,3 n wussan:3 days,1 imalass:1 week,2 imallassn:2 weeks,1 wayur:1 month,3 wayurn:3 months,6 wayurn:6 months,1 asggwas:1 year,tartalla:infinite",
+       "autoblocklist-submit": "ⵔⵣⵓ",
        "ipblocklist": "Tabdart n tansiwin IP d isemawen n iseqdacen ig iteblukan",
-       "ipblocklist-submit": "Tarzzut",
-       "blocklink": "Sbedd",
+       "blocklist-reason": "ⵜⴰⵎⵏⵜⵉⵍⵜ",
+       "ipblocklist-submit": "ⵔⵣⵓ",
+       "blocklink": "ⴳⴷⵍ",
        "unblocklink": "Ṛẓem",
-       "contribslink": "Tiggawin",
+       "contribslink": "ⵜⵓⵎⵓⵜⵉⵏ",
        "blocklogpage": "Ẓareqq aɣmis",
        "blocklogentry": "ibloka [[$1]] ar $2 $3",
        "block-log-flags-nocreate": "timggit n imiḍanen imaynutn ttwasbdd",
+       "move-page": "ⵙⵎⵓⵜⵜⵉ $1",
+       "move-page-legend": "ⵙⵎⵓⵜⵜⵉ ⵜⴰⵙⵏⴰ",
        "movepagetext": "mala tesxedmed taseddast(form) a swadday, ad tessenaqled maṛṛa amzruy ines ɣar isem amaynu.\nisem aqbur ad idwel d Tasna n (redirect) ɣar isem amaynu .\ntzemred ad tebedled (redirects) bac ad qnent ɣar isem amezwaru s ufus.\nmala war texsed ca, ẓar [[Special:DoubleRedirects|double]] niɣ [[Special:BrokenRedirects|broken redirects]].\nxak ig illa ad txemmed ma tizdayin zedyent mani ig ixeṣ niɣ lla.\n\nTasna  '''war tniqil ca''' mala qaddin ca n Tasna s isem a amaynu, ɣar mala texwa niɣ d (redirect) u war ɣar-s bu ca n umzruy n uẓṛeg\n\nmala amya, itxessa cekk ad tesnaqled s ufus mala txisd\n'''ɣark!'''\nmanaya itebeddal Tasniwin, ixessa ad tesned mliḥ man tegged zzat ma ad tkemled manaya.",
        "movepagetalktext": "Tasna n usiwl ad twanqel ag Tasna ines '''ɣar mala:'''\n*Ca n Tasna usiwl tella dini s isem a amaynu, niɣ\n*Mala war tixtard tabelludt a swadday.\n\nmala amya, itxessa cekk ad tesnaqled s ufus mala txisd.",
-       "movearticle": "Smutti tasna:",
        "newtitle": "Ghar yizwl amaynu:",
        "move-watch": "Ẓar Tasna ya",
-       "movepagebtn": "Snaqel Tasna",
+       "movepagebtn": "ⵙⵎⵓⵜⵜⵉ ⵜⴰⵙⵏⴰ",
        "pagemovedsub": "Asmutti itwagg",
        "movepage-moved": "'''\"$1\" twanql ɣar \"$2\"'''",
        "articleexists": "Tasna s isem a tella da, niɣ isem itucid war icni.\nixdar isem nniḍn.",
        "movetalk": "Snaqel Tasniwin n usiwl igg illan akid-s",
        "movelogpage": "Snaql aɣmis",
-       "movereason": "Ssebba:",
+       "movereason": "ⵜⴰⵎⵏⵜⵉⵍⵜ:",
        "revertmove": "sedwel",
        "export": "Sekk tasniwin",
+       "export-addcat": "ⵔⵏⵓ",
+       "export-addns": "ⵔⵏⵓ",
        "allmessages": "inzan n unagraw",
+       "allmessagesname": "ⵉⵙⵎ",
+       "allmessages-filter-all": "ⵎⴰⵔⵔⴰ",
+       "allmessages-language": "ⵜⵓⵜⵍⴰⵢⵜ:",
+       "allmessages-filter-translate": "ⵙⵙⵓⵖⵍ",
        "thumbnail-more": "Smghar",
        "thumbnail_error": "Error creating thumbnail: $1",
+       "import-comment": "ⴰⵅⴼⴰⵡⴰⵍ:",
        "importlogpage": "Siri-d aɣmis",
        "tooltip-pt-userpage": "Tasna inu",
        "tooltip-pt-mytalk": "Tasna usiwl inu",
        "tooltip-pt-preferences": "Min d-ac itteɛjiben",
        "tooltip-pt-watchlist": "Tabdart n Tasniwin umi txmamd bac ad-ten teẓṛegd",
-       "tooltip-pt-mycontris": "Umuɣ n tiwuriwin inu",
+       "tooltip-pt-mycontris": "ⵜⴰⵍⴳⴰⵎⵜ ⵏ ⵜⵓⵎⵓⵜⵉⵏ {{GENDER:|ⵏⵏⴽ|ⵏⵏⵎ}}",
        "tooltip-pt-login": "Neqqar ac adef s umiḍan nnek; maca malla texsed waha",
-       "tooltip-pt-logout": "Ufuɣ",
-       "tooltip-ca-talk": "Amsawal xef tasna n ukettur",
-       "tooltip-ca-edit": "Tzemmared a tẓeṛged tasna ya.\nBbeẓ x ufeskar n uzar-timeẓṛi zzat i gha txemmled min turid",
+       "tooltip-pt-logout": "ⴼⴼⵖ",
+       "tooltip-ca-talk": "ⴰⵎⵙⴰⵡⴰⵍ ⵅⴼ ⵜⴰⵙⵏⴰ ⵏ ⵜⵓⵎⴰⵢⵜ",
+       "tooltip-ca-edit": "ⵙⵏⴼⵍ ⵜⴰⵙⵏⴰ ⴰ",
        "tooltip-ca-addsection": "Arni tinit deg usiwl a.",
        "tooltip-ca-viewsource": "Tasna ya tẓarq. tzemred atẓred aɣbal ines.",
        "tooltip-ca-history": "Isughulen izrin n tasna ya.",
        "tooltip-ca-protect": "Ẓarq Tasna ya",
-       "tooltip-ca-delete": "Kks Tasna ya",
-       "tooltip-ca-move": "Snaql Tasna a",
+       "tooltip-ca-delete": "ⴽⴽⵙ ⵜⴰⵙⵏⴰ ⴰ",
+       "tooltip-ca-move": "ⵙⵎⵓⵜⵜⵉ ⵜⴰⵙⵏⴰ ⴰ",
        "tooltip-ca-watch": "Arni tasna ya ghar tbdart uḥṭṭu nnc",
        "tooltip-ca-unwatch": "Kkes Tasna ya zi Tabdart uḥṭṭu inec",
-       "tooltip-search": "Rzu {{SITENAME}}",
+       "tooltip-search": "ⵔⵣⵓ ⴳ {{SITENAME}}",
        "tooltip-search-go": "Uyur ghar tasna s yizwel a s imant nnes malla tella",
        "tooltip-search-fulltext": "Rzu di tasniwin xef waḍṛis a",
        "tooltip-p-logo": "Tasbtirt Tamzwarut",
        "tooltip-t-recentchangeslinked": "Isenfilen n drus zggwami di tasniwin i yetwaqqnen zi tasna ya",
        "tooltip-t-contributions": "Ẓar Tabdart n tiggawin n useqdac a",
        "tooltip-t-emailuser": "Sekk e-mail i bnadem a",
-       "tooltip-t-upload": "Zdem-d isatulen",
+       "tooltip-t-upload": "ⵙⴽⵜⵔ ⵉⴼⴰⵢⵍⵓⵜⵏ",
        "tooltip-t-specialpages": "Tabdart n marra tasniwin tinemmezrayin",
        "tooltip-t-print": "Tanghelt usiggez n tasna ya",
        "tooltip-ca-nstab-main": "Ẓeṛ tasna n ukettur",
        "tooltip-diff": "Ẓar tiẓṛigin i teggid deg uḍṛiṣ a.",
        "tooltip-compareselectedversions": "Ẓar imsebeḍiyen jar tunɣilin n Tasna ya.",
        "tooltip-watch": "Arni Tasna ya ɣa Tabdart uḥṭṭu inec",
+       "pageinfo-contentpage-yes": "ⵢⴰⵀ",
+       "pageinfo-protect-cascading-yes": "ⵢⴰⵀ",
        "previousdiff": "← imṣebḍan n zzat",
        "nextdiff": "Amṣebḍi zzat  →",
+       "widthheightpage": "$1 × $2, $3 {{PLURAL:$3|ⵜⴰⵙⵏⴰ|ⵜⴰⵙⵏⵉⵡⵉⵏ}}",
        "file-info-size": "$1 × $2 pixel, tiddisize n ufaylu: $3, anawtype n MIME: $4",
        "file-nohires": "walu ca n resolution yemɣa x wa.",
        "svg-long-desc": "Afaylu n SVG, dis $1 × $2 pixel, Tiddi n ufaylu: $3",
        "show-big-image": "Resolution ameqran",
        "newimages": "Amewlaf n ifayluten imaynuten",
-       "ilsubmit": "Tarzzut",
+       "ilsubmit": "ⵔⵣⵓ",
+       "minutes": "{{PLURAL:$1|$1 ⵜⵓⵙⴷⵉⴷⵜ|$1 ⵜⵓⵙⴷⵉⴷⵉⵏ}}",
+       "hours": "{{PLURAL:$1|$1 ⵜⵙⵔⴰⴳⵜ|$1 ⵜⵙⵔⴰⴳⵉⵏ}}",
+       "days": "{{PLURAL:$1|$1 ⵡⴰⵙⵙ|$1 ⵡⵓⵙⵙⴰⵏ}}",
+       "years": "{{PLURAL:$1|$1 ⵓⵙⴳⴳⵯⴰⵙ|$1 ⵉⵙⴳⴳⵯⴰⵙⵏ}}",
        "bad_image_list": "Talɣa tella ammu :\n\nImagraden n tebdart (ɣar-sent * deg umezwaru) waha iy yellan nican, inneḍni uhu.\nAmaqqan amezwarutdi tebridt ixessa ad tili teqqen ɣer ijen usatul aɛeffan.\nMarra imaqqanen nneḍni xef ijen uceṛṛid simant nnes ad ilin d tuksawin, amecnaw tasniwin mani izemmer usatul ad d-yeffeɣ deg uceṛṛiḍ.",
        "metadata": "Timuca Meta",
        "metadata-help": "Afaylu a ɣar-s tilɣa(informations) nniḍn, teqqad ad tili tarnitent camera niɣ scanner i tiggin.\nmala afaylu a itwabeddel x mamec ja illa g umezwaru, ca n tilɣa teqqad ad ilint msebḍant x ufaylu amezwaru.",
        "metadata-expand": "Sicen-d tilɣa nnumɣarent",
        "metadata-collapse": "Snuffar tilgha innumgharn",
        "metadata-fields": "Igran n EXIF metadata i yllan di tbrat a ad adfn di tasna n twlaft xmnni d-gha twḍa  tflwit n metadata.\nInnḍni ad twaffrn dg umzwar.\n* make\n* model\n* datetimeoriginal\n* exposuretime\n* fnumber\n* isospeedratings\n* focallength\n* artist\n* copyright\n* imagedescription\n* gpslatitude\n* gpslongitude\n* gpsaltitude",
-       "namespacesall": "marra",
-       "monthsall": "marra",
+       "exif-languagecode": "ⵜⵓⵜⵍⴰⵢⵜ",
+       "exif-iimcategory": "ⴰⵙⵎⵉⵍ",
+       "exif-exposureprogram-1": "ⴰⵡⴼⵓⵙ",
+       "namespacesall": "ⵎⴰⵔⵔⴰ",
+       "monthsall": "ⵎⴰⵔⵔⴰ",
        "imgmultigo": "Raḥ ɣa!",
+       "img-lang-default": "(ⵜⵓⵜⵍⴰⵢⵜ ⵙ ⵓⵡⵏⵓⵍ)",
        "table_pager_limit_submit": "Raḥ ɣa",
        "watchlisttools-view": "Sicen ibeddilen i ssaɣan ɣar wayawya",
        "watchlisttools-edit": "Ẓar d tẓṛegd Tabdart uḥṭṭu",
        "watchlisttools-raw": "Ẓṛeg Tabdart uḥṭṭu tamenzut",
-       "version": "Tunɣilt",
+       "signature": "[[{{ns:user}}:$1|$2]] ([[{{ns:user_talk}}:$1|ⴰⵎⵙⴰⵡⴰⵍ]])",
+       "version": "ⵜⵓⵏⵖⵉⵍⵜ",
        "version-specialpages": "Tudmawin Special",
-       "fileduplicatesearch-submit": "Tarzzut",
-       "specialpages": "Tasniwin tinemmezrayin"
+       "version-software-product": "ⴰⵢⴰⴼⵓ",
+       "version-software-version": "ⵜⵓⵏⵖⵉⵍⵜ",
+       "version-libraries-version": "ⵜⵓⵏⵖⵉⵍⵜ",
+       "version-libraries-license": "ⵜⵓⵔⴰⴳⵜ",
+       "version-libraries-description": "ⴰⴳⵍⴰⵎ",
+       "fileduplicatesearch-submit": "ⵔⵣⵓ",
+       "specialpages": "Tasniwin tinemmezrayin",
+       "tags-active-yes": "ⵢⴰⵀ",
+       "tags-active-no": "ⵓⵀⵓ",
+       "tags-delete": "ⴽⴽⵙ",
+       "tags-create-reason": "ⵜⴰⵎⵏⵜⵉⵍⵜ:",
+       "tags-delete-reason": "ⵜⴰⵎⵏⵜⵉⵍⵜ:",
+       "tags-activate-reason": "ⵜⴰⵎⵏⵜⵉⵍⵜ:",
+       "tags-deactivate-reason": "ⵜⴰⵎⵏⵜⵉⵍⵜ:",
+       "tags-edit-reason": "ⵜⴰⵎⵏⵜⵉⵍⵜ:",
+       "compare-page1": "ⵜⴰⵙⵏⴰ 1",
+       "compare-page2": "ⵜⴰⵙⵏⴰ 2",
+       "htmlform-no": "ⵓⵀⵓ",
+       "htmlform-yes": "ⵢⴰⵀ",
+       "logentry-delete-delete": "{{GENDER:$2|ⵉⴽⴽⵙ|ⵜⴽⴽⵙ}} $1 ⵜⴰⵙⵏⴰ $3",
+       "restore-count-files": "{{PLURAL:$1|1 ⵓⴼⴰⵢⵍⵓ|$1 ⵉⴼⴰⵢⵍⵓⵜⵏ}}",
+       "feedback-message": "ⵜⵓⵣⵉⵏⵜ:",
+       "feedback-subject": "ⴰⵙⵏⵜⵍ:",
+       "feedback-thanks-title": "ⵜⴰⵏⵎⵎⵉⵔⵜ!",
+       "searchsuggest-search": "ⵔⵣⵓ ⴳ {{SITENAME}}",
+       "duration-minutes": "$1 {{PLURAL:$1|ⵜⵓⵙⴷⵉⴷⵜ|ⵜⵓⵙⴷⵉⴷⵉⵏ}}",
+       "duration-hours": "$1 {{PLURAL:$1|ⵜⵙⵔⴰⴳⵜ|ⵜⵙⵔⴰⴳⵉⵏ}}",
+       "duration-days": "$1 {{PLURAL:$1|ⵡⴰⵙⵙ|ⵡⵓⵙⵙⴰⵏ}}",
+       "duration-years": "$1 {{PLURAL:$1|ⵓⵙⴳⴳⵯⴰⵙ|ⵉⵙⴳⴳⵯⴰⵙⵏ}}",
+       "duration-centuries": "$1 {{PLURAL:$1|ⵜⴰⵙⵓⵜ|ⵜⴰⵙⵓⵜⵉⵏ}}",
+       "expand_templates_output": "ⵜⴰⵢⴰⴼⵓⵜ",
+       "pagelanguage": "ⵙⵏⴼⵍ ⵜⵓⵜⵍⴰⵢⵜ ⵏ ⵜⴰⵙⵏⴰ",
+       "pagelang-name": "ⵜⴰⵙⵏⴰ",
+       "pagelang-language": "ⵜⵓⵜⵍⴰⵢⵜ",
+       "pagelang-reason": "ⵜⴰⵎⵏⵜⵉⵍⵜ"
 }
index 9eef1dc..5cfc039 100644 (file)
        "actionthrottled": "Acziun limitada",
        "actionthrottledtext": "Sco mesira cunter spam na pos ti betg exequir questa acziun memia bleras giadas en curt temp. Ti has surpassà questa limita. \nEmprova danovamain en in per minutas.",
        "protectedpagetext": "Questa pagina è vegnida bloccada per evitar ch'ella modificaziuns ed autras acziuns.",
-       "viewsourcetext": "Ti pos guardar e copiar il code-fundamental da questa pagina:",
+       "viewsourcetext": "Ti pos guardar e copiar il code-fundamental da questa pagina.",
        "viewyourtext": "Ti pos giardar e copiar la il code da funatuna da '''tias midadas''' vid questa pagina:",
        "protectedinterface": "Questa pagina cuntegna ils texts per l'interfatscha da la software ed è protegida per evitar abus.",
        "editinginterface": "'''Attenziun:''' Questa pagina cuntegna text che vegn duvra en la interfatscha da questa software. \nMidadas influenzeschan directamain l'interfatscha per tut ils utilisaders sin questa vichi. \nSche ti vuls far translaziuns u correcturas per tut las vichis, lura utilisescha [https://translatewiki.net/ translatewiki.net], il project per translatar MediaWiki.",
        "accmailtext": "In pled-clav casual per [[User talk:$1|$1]] è vegnì tramess a $2. El po vegnir midà sin la pagina ''[[Special:ChangePassword|midar pled-clav]]'' suenter che ti t'es annunzià.",
        "newarticle": "(Nov)",
        "newarticletext": "Ti has cliccà ina colliaziun ad ina pagina che n'exista anc betg. Per crear ina pagina, entschaiva a tippar en la stgaffa sutvart (guarda [$1 la pagina d'agid] per t'infurmar).",
-       "anontalkpagetext": "----''Quai è la pagina da discussiun per in utilisader anomim che n'ha anc betg creà in conto d'utilisader u che n'al utilisescha betg.\nPerquai avain nus d'utilisar l'adressa dad IP per l'identifitgar.\nIna tala adressa dad IP po vegnir utilisada da differents utilisaders.\nSche ti es in utilisaders anonim e pensas che commentaris che na pertutgan betg tai vegnan adressads a tai, lura [[Special:CreateAccount|creescha in conto]] u [[Special:UserLogin|t'annunzia]] per evitar en futur che ti vegns sbaglià cun auters utilisaders.''",
+       "anontalkpagetext": "----\n<em>Quai è la pagina da discussiun per in utilisader anomim che n'ha anc betg creà in conto d'utilisader u che n'al utilisescha betg.</em>\nPerquai avain nus d'utilisar l'adressa dad IP per l'identifitgar.\nIna tala adressa dad IP po vegnir utilisada da differents utilisaders.\nSche ti es in utilisaders anonim e pensas che commentaris che na pertutgan betg tai vegnan adressads a tai, lura [[Special:CreateAccount|creescha in conto]] u [[Special:UserLogin||t'annunzia]] per evitar en futur che ti vegns sbaglià cun auters utilisaders.",
        "noarticletext": "Questa pagina na cuntegna actualmain nagin text.\nTi pos [[Special:Search/{{PAGENAME}}|tschertgar il term]] sin in'autra pagina,\n<span class=\"plainlinks\">[{{fullurl:{{#Special:Log}}|page={{FULLPAGENAMEE}}}} tschertgar en ils protocols],\nu [{{fullurl:{{FULLPAGENAME}}|action=edit}} crear questa pagina]</span>.",
        "noarticletext-nopermission": "Questa pagina na cuntegna actualmain nagin text.\nTi pos [[Special:Search/{{PAGENAME}}|tschertgar quest titel]] en autras paginas u <span class=\"plainlinks\">[{{fullurl:{{#Special:Log}}|page={{FULLPAGENAMEE}}}} tschertgar en ils protocols correspundents]</span>, ma ti n'has betg ils dretgs da crear questa pagina.",
        "missing-revision": "La versiun #$1 da la pagina cun il num \"{{FULLPAGENAME}}\" n'exista betg.\n\nQuai capita savnes sche ti cliccas sin ina colliaziun antiquada en la cronologia per ina pagina ch'è vegnida stizzada.\nDetagls pon vegnri chattads en il [{{fullurl:{{#Special:Log}}/delete|page={{FULLPAGENAMEE}}}} protocol da stizzar].",
        "compareselectedversions": "cumparegliar las versiuns selecziunadas",
        "showhideselectedversions": "Mussar/zuppentar las versiuns tschernidas",
        "editundo": "revocar",
+       "diff-empty": "(negina differenza)",
        "diff-multi-manyusers": "({{PLURAL:$1|Ina versiun|$1 versiuns}} tranteren da dapli che $2 {{PLURAL:$2|utilisader|utilisaders}} na vegn betg mussada)",
        "difference-missing-revision": "{{PLURAL:$2|Ina versiun|$2 versiuns}} da questa differenza ($1) {{PLURAL:$2|n'è betg vegnida chattada|n'èn betg vegnidas chattadas}}.\n\nPer ordinari vegn quai chaschunà dad ina colliaziun da diff antiquada ad ina pagian ch'è vegnida stizzada. \nDetagls pon vegnir chattads en il [{{fullurl:{{#Special:Log}}/delete|page={{FULLPAGENAMEE}}}} protocol da stizzar].",
        "searchresults": "Resultats da tschertga",
        "searchprofile-advanced-tooltip": "Tschertgar en ulteriurs tips da pagina",
        "search-result-size": "$1 ({{PLURAL:$2|in pled|$2 pleds}})",
        "search-result-category-size": "{{PLURAL:$1|1 commember|$1 commembers}} ({{PLURAL:$2|1 sutcategoria|$2 sutcategorias}}, {{PLURAL:$3|1 datoteca|$3 datotecas}})",
-       "search-redirect": "(renvià da $1)",
+       "search-redirect": "(renviament da $1)",
        "search-section": "(chapitel $1)",
        "search-suggest": "Has ti manegià: $1",
        "search-interwiki-caption": "Projects sumegliants",
        "searchrelated": "sumegliant",
        "searchall": "tuts",
        "showingresults": "Sutvart èn enfin {{PLURAL:$1|'''in''' resultat|'''$1''' resultats}} cumenzond cun il numer '''$2'''.",
+       "search-showingresults": "{{PLURAL:$4|resultat <strong>$1</strong> da<strong>$3</strong>|resultats<strong>$1 - $2</strong> da <strong>$3</strong>}}",
        "search-nonefound": "Per il term tschertgà èn nagins resultats vegnids chattads.",
        "powersearch-legend": "Tschertga extendida",
        "powersearch-ns": "Tschertgar en tips da pagina:",
        "booksources-text": "Sutvart è ina glista da las colliaziuns ad autras paginas che vendan cudeschs novs ed utilisads e che pudessan avair dapli infurmaziuns davart ils cudeschs che ti tschertgas:",
        "booksources-invalid-isbn": "Il numer ISBN na para betg dad esser valid; controllescha che ti n'has betg fatg errurs cun la scriver.",
        "specialloguserlabel": "Acziun exequida da:",
-       "speciallogtitlelabel": "Destinaziun (titel u utilisader):",
+       "speciallogtitlelabel": "Destinaziun (titel u {{ns:user}}:num d'utilisader per utilisaders):",
        "log": "Protocols",
        "all-logs-page": "Tut ils protocols publics",
        "alllogstext": "Quai è ina visualisaziun cumbinada da tut ils protocols da {{SITENAME}}.\nTi pos restrenscher la vista cun tscherner in tip da protocol, il num d'utilisader (resguardar maiusclas/minusclas) u la pagina pertutgada (era resguardar maiusclas/minusclas).",
        "watchlist-details": "Ti has {{PLURAL:$1|$1 pagina|$1 paginas}} sin tia glista d'observaziun, paginas da discussiun exclusas.",
        "wlheader-enotif": "Il servetsch d'infurmaziun per e-mail è activà.",
        "wlheader-showupdated": "Paginas ch'èn vegnidas modifitgadas suenter che ti has vis els la davosa giada èn mussads '''grass'''",
-       "wlnote": "Sutvart {{PLURAL:$1|è l'ultima midada|èn las ultimas '''$1''' midadas}} entaifer {{PLURAL:$2|l'ultima ura|las ultimas '''$2''' uras}}. Actualisà ils $3 las $4.",
-       "wlshowlast": "Mussar: las ultimas $1 uras, ils ultims $2 dis u .",
+       "wlnote": "Sutvart {{PLURAL:$1|è l'ultima midada|èn las ultimas <strong>$1</strong> midadas}} entaifer {{PLURAL:$2|l'ultima ura|las ultimas <strong>$2</strong> uras}}. Actualisà ils $3 las $4.",
+       "wlshowlast": "Mussar: las ultimas $1 uras, ils ultims $2 dis.",
        "watchlist-options": "Opziuns per la glista d'observaziun",
        "watching": "observ...",
        "unwatching": "observ betg pli...",
        "tooltip-pt-anonuserpage": "La pagina d'utilisader per l'adressa IP cun la quala che ti fas modificaziuns",
        "tooltip-pt-mytalk": "Mussar {{GENDER:|tia}} pagina da discussiun",
        "tooltip-pt-anontalk": "Discussiun davart modificaziuns che derivan da questa adressa dad IP",
-       "tooltip-pt-preferences": "mias preferenzas",
+       "tooltip-pt-preferences": "{{GENDER:|tias}} preferenzas",
        "tooltip-pt-watchlist": "La glista da las paginas da las qualas jau observ las midadas",
-       "tooltip-pt-mycontris": "Mussar la glista da tut tias contribuziuns",
+       "tooltip-pt-mycontris": "Mussar la glista da tut {{GENDER:|tias}} contribuziuns",
        "tooltip-pt-login": "I fiss bun sche ti s'annunziassas, ti na stos dentant betg.",
        "tooltip-pt-logout": "Sortir",
        "tooltip-ca-talk": "Discussiuns davart il cuntegn da l'artitgel",
        "tooltip-feed-rss": "RSS feed per questa pagina",
        "tooltip-feed-atom": "Atom feed per questa pagina",
        "tooltip-t-contributions": "Mussar las contribuziuns da {{GENDER:$1|quest utilisader}}",
-       "tooltip-t-emailuser": "Trametter in e-mail a quest utilisader",
+       "tooltip-t-emailuser": "Trametter in e-mail a {{GENDER:$1|quest utilisader}}",
        "tooltip-t-upload": "Chargiar si datotecas",
        "tooltip-t-specialpages": "Glista da tut las paginas spezialas",
        "tooltip-t-print": "Versiun per stampar da questa pagina",
        "version-entrypoints": "URLs dals puncts d'entrada",
        "version-entrypoints-header-entrypoint": "Punct d'entrada",
        "version-entrypoints-header-url": "URL",
+       "redirect-submit": "Dai",
+       "redirect-value": "Valuta:",
+       "redirect-user": "ID da l'utilisader",
+       "redirect-page": "ID da la pagina",
+       "redirect-file": "Num da datoteca",
        "fileduplicatesearch": "Tschertgar datotecas dublas",
        "fileduplicatesearch-summary": "Tschertgar datotecas dublas a basa da valurs da hash.",
        "fileduplicatesearch-filename": "Num da datoteca:",
        "tags-display-header": "Num sin la glista da modificaziuns",
        "tags-description-header": "Descripziun cumpletta da la muntada",
        "tags-hitcount-header": "Modificaziuns signalisadas",
+       "tags-active-yes": "Gea",
+       "tags-active-no": "Na",
        "tags-edit": "modifitgar",
        "tags-hitcount": "$1 {{PLURAL:$1|midada|midadas}}",
        "comparepages": "Cumparegliar paginas",
        "htmlform-reset": "Revocar las midadas",
        "htmlform-selectorother-other": "Auters",
        "logentry-delete-delete": "$1 {{GENDER:$2|ha stizzà}} la pagina $3",
-       "logentry-delete-restore": "$1 {{GENDER:$2|ha restaurà}} la pagina $3",
+       "logentry-delete-restore": "$1 {{GENDER:$2|ha restaurà}} la pagina $3 ($4)",
        "logentry-delete-event": "$1 ha midà la visibilitad da{{PLURAL:$5|d ina occurrenza en il protocol| $5 occurrenzas en il protocol}} da '''$3''': $4",
-       "logentry-delete-revision": "$1 ha midà la visibilitad da{{PLURAL:$5|d ina versiun| $5 versiuns}} da la pagina $3: $4",
+       "logentry-delete-revision": "$1 {{GENDER:$2|ha midà}} la visibilitad da {{PLURAL:$5|d ina versiun|$5 versiuns}} da la pagina $3: $4",
        "logentry-delete-event-legacy": "$1 ha midà la visibilitad dad occurrenzas da protocol sin $3",
        "logentry-delete-revision-legacy": "$1 ha midà la visibilitad da versiuns sin la pagina $3",
        "logentry-suppress-delete": "$1 ha supprimì la pagina $3",
        "revdelete-restricted": "applitgà restricziuns per administraturs",
        "revdelete-unrestricted": "allontanà restricziuns per administraturs",
        "logentry-move-move": "$1 {{GENDER:$2|ha spustà}} la pagina $3 a $4",
-       "logentry-move-move-noredirect": "$1 ha spustà la pagina $3 a $4 senza crear in renviament",
-       "logentry-move-move_redir": "$1 ha spustà la pagina $3 a $4 e surscrit quatras in renviament",
+       "logentry-move-move-noredirect": "$1 {{GENDER:$2|ha spustà}} la pagina $3 a $4 senza crear in renviament",
+       "logentry-move-move_redir": "$1 {{GENDER:$2|ha spustà}} la pagina $3 a $4 e surscrit quatras in renviament",
        "logentry-move-move_redir-noredirect": "$1 ha spustà la pagina $3 a $4 e surscrit quatras in renviament senza crear in renviament",
        "logentry-patrol-patrol": "$1 ha marcà la versiun $4 da la pagina $3 sco controllada",
-       "logentry-patrol-patrol-auto": "$1 ha marcà automaticamain la versiun $4 da la pagina $3 sco controllada",
+       "logentry-patrol-patrol-auto": "$1 {{GENDER:$2|ha marcà}} automaticamain la versiun $4 da la pagina $3 sco controllada",
        "logentry-newusers-newusers": "Il conto $1 è vegnì creà",
        "logentry-newusers-create": "Il conto $1 è vegnì {{GENDER:$2|creà}}",
        "logentry-newusers-create2": "Il conto $3 è vegnì creà da $1",
-       "logentry-newusers-autocreate": "Il conto $1 è vegnì creà automaticamain",
+       "logentry-newusers-autocreate": "Il conto d'utilisader $1 {{GENDER:$2|è vegnì creà}} automaticamain",
        "logentry-rights-rights": "$1 ha midà la commembranza da gruppas per $3 da $4 a $5",
        "logentry-rights-rights-legacy": "$1 ha {{GENDER:$2|midà}} la commembranza da gruppas per $3",
        "logentry-rights-autopromote": "$1 è vegnì {{GENDER:$2|promovì|promovida}} automaticamain da $4 a $5",
+       "logentry-upload-upload": "$1 {{GENDER:$2|ha chargià si}} $3",
        "rightsnone": "(nagins)",
        "feedback-adding": "Agiuntar il resun a la pagina…",
        "feedback-bugcheck": "Grondius! Controllescha simplamain che quai n'è betg gia in da las [$1 errurs enconuschentas].",
index 1975137..d61bc58 100644 (file)
        "unblock": "Sbluècche l'utende",
        "blockip": "Blocche {{GENDER:$1|l'utende}}",
        "blockip-legend": "Bluecche l'utende",
-       "blockiptext": "Ause 'a schermata de sotte pe bloccà l'accesse in scritture de 'nu specifiche indirizze IP o utende.\nQuiste avessa essere fatte sulamende pe prevenìe 'u vandalisme e in accorde cu [[{{MediaWiki:Policy-url}}|le reghele]].\nMitte pure 'nu mutive specifiche aqquà sotte (pe esembije, nnomene 'a pàgene addò è acchiate 'u vandalisme).",
+       "blockiptext": "Ause 'a schermata de sotte pe bloccà l'accesse in scritture de 'nu specifiche indirizze IP o utende.\nQuiste avessa essere fatte sulamende pe prevenìe 'u vandalisme e in accorde cu [[{{MediaWiki:Policy-url}}|le regole]].\nMitte pure 'nu mutive specifiche aqquà sotte (pe esembije, nnomene 'a pàgene addò è acchiate 'u vandalisme).\nPuè bloccà le indervalle de indirizze IP ausanne 'a sindasse [https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing CIDR]; 'u 'ndervalle cchiù larije ca se pò mettere jè /$1 pe IPv4 e /$2 pe IPv6.",
        "ipaddressorusername": "Indirizze IP o nome de l'utende:",
        "ipbexpiry": "More:",
        "ipbreason": "Mutive:",
        "move-leave-redirect": "Lasse 'nu ridirezionamende rréte",
        "protectedpagemovewarning": "'''Attenziò:''' Sta pàgene ha state bloccate accussì sulamende l'utinde cu le deritte d'amministratore 'a ponne spustà.\nL'urteme archivije de le trasute ha state mise aqquà sotte pe referimende:",
        "semiprotectedpagemovewarning": "'''Vide Bbuène:''' Sta pàgene ha state blocchete accussì sulamende l'utinde reggistrate 'a ponne spustà.\nL'urteme archivije de le trasute ha state mise aqquà sotte pe referimende:",
-       "move-over-sharedrepo": "== 'U file esiste ==\n[[:$1]] esiste sus a 'n'archivie condivise. Spustanne 'u file sus a stu titele tu vè sovrascrive 'u file condivise.",
+       "move-over-sharedrepo": "[[:$1]] esiste sus a 'n'archivie condivise. Spustanne 'u file sus a stu titole vèje a sovrascrive 'u file condivise.",
        "file-exists-sharedrepo": "'U nome d'u file ca è scacchiate jè già ausate sus a 'n'archivie condivise.\nPe piacere scacchiene 'notre.",
        "export": "Pàggene esportete",
        "exporttext": "Tu puè esportà 'u teste e cangià 'a storie de 'na particolare pàgene o 'n'inzieme de pàggene ca stonne jndr'à quacche XML.\nQuiste po essere 'mbortate jndr'à 'n'otra uicchi ausanne [[Special:Import|'mborta pàgene]] de MediaUicchi.\n\nPe esportà pàggene, mitte le titele jndr'à scatele de sotte, 'nu titele pe linèe e scacchie ce tu vuè 'a revisiona corrende o tutte le revisiune, ce le linèe d'a storie d'a pàgene, e 'a revisione corrende cu le 'mbormaziune sus a l'urteme cangiamende.\n\nCumme urteme case, tu puè pure ausà 'nu collegamende, pe esembie [[{{#Special:Export}}/{{MediaWiki:Mainpage}}]] pa pàgene \"[[{{MediaWiki:Mainpage}}]]\".",
        "scarytranscludetoolong": "[URL jè troppe longhe]",
        "deletedwhileediting": "'''Fà attenziò''': Sta pàgene ha state scangellete apprime ca tu acumenzasse a fà 'u cangiamende!",
        "confirmrecreate": "L'utende [[User:$1|$1]] ([[User talk:$1|'Ngazzaminde]]) ha {{GENDER:$1|scangellate}} sta pàgene apprisse ca tu è accumenzate a cangiarle, cu stu mutive:\n: <em>$2</em>\nPe piacere conferme ca tu vuè avveramende reccrejà sta pàgene.",
-       "confirmrecreate-noreason": "L'utende [[User:$1|$1]] ([[User talk:$1|'ngazzaminde]]) ha scangellate sta pàgene apprisse ca tu l'è cangiate. Pe piacere conferme ca tu vuè avveramende reccrejà sta pàgene.",
+       "confirmrecreate-noreason": "L'utende [[User:$1|$1]] ([[User talk:$1|'ngazzaminde]]) ave {{GENDER:$1|scangellate}} sta pàgene apprisse ca tu l'è cangiate. Pe piacere conferme ca tu vuè avveramende reccrejà sta pàgene.",
        "recreate": "Ccreje n'otra vote",
        "unit-pixel": "px",
        "confirm_purge_button": "OK",
index 268fdac..86759b4 100644 (file)
        "rcfilters-view-namespaces-tooltip": "Результаты фильтра по пространствам имён",
        "rcfilters-view-tags-tooltip": "Результаты фильтра, использующего метки правок",
        "rcfilters-view-return-to-default-tooltip": "Вернуться в главное меню фильтров",
+       "rcfilters-liveupdates-button": "Обновлять автоматически",
        "rcnotefrom": "Ниже {{PLURAL:$5|указано изменение|перечислены изменения}} с <strong>$3, $4</strong> (показано не более <strong>$1</strong>).",
        "rclistfromreset": "Сбросить выбор даты",
        "rclistfrom": "Показать изменения с $3 $2.",
index 1d98160..0acabaf 100644 (file)
        "nimagelinks": "$1 {{PLURAL:$1|сирэйгэ|ахсааннаах сирэйгэ}} туттуллар",
        "ntransclusions": "$1 {{PLURAL:$1|сирэйгэ|ахсааннаах сирэйгэ}} туттуллар",
        "specialpage-empty": "Көрдөөн тугу да булбата.",
-       "lonelypages": "Ð\90Ñ\82Ñ\8bн Ñ\81иÑ\80Ñ\8dйдÑ\8dÑ\80и ÐºÑ\8bÑ\82Ñ\82а Ñ\81ибÑ\8dÑ\8dÒ»Ñ\8d Ñ\81Ñ\83ох сирэйдэр",
+       "lonelypages": "ТÑ\83лаайах сирэйдэр",
        "lonelypagestext": "Манна көстөр сирэйдэргэ {{SITENAME}} атын сирэйдэрэ сигэммэттэр.",
        "uncategorizedpages": "Ханнык да категорияҕа киирбэтэх сирэйдэр",
        "uncategorizedcategories": "Ханнык да категорияҕа киирбэтэх категориялар",
index 1969077..368e648 100644 (file)
@@ -44,7 +44,7 @@
        "tog-diffonly": "Ad ur tml may illan ɣ tisniwin, ml ɣir mattnt isnaḥyan",
        "tog-showhiddencats": "sbaynd tsnifat ihbanin",
        "tog-norollbackdiff": "hiyd lfarq baad lqiyam bstirjaa",
-       "underline-always": "dima",
+       "underline-always": "ⴷⵉⵎⴰ",
        "underline-never": "ⵊⵊⵓ",
        "underline-default": "ala hssad regalhe n lmotasaffih",
        "editfont-style": "lkht n lmintaqa nthrir",
        "pagetitle": "$1 - {{SITENAME}}",
        "pagetitle-view-mainpage": "{{SITENAME}}",
        "retrievedfrom": "Yurrid z \"$1\"",
-       "youhavenewmessages": "Illa dark $1 ($2).",
+       "youhavenewmessages": "{{PLURAL:$3|{{GENDER:$3|ⴷⴰⵔⴽ|ⴷⴰⵔⵎ}}}} $1 ($2).",
        "newmessageslinkplural": "{{PLURAL:$1|ⵜⵓⵣⵉⵏⵜ ⵜⴰⵎⴰⵢⵏⵓⵜ|ⵜⵓⵣⵉⵏⵉⵏ ⵜⵉⵎⴰⵢⵏⵓⵜⵉⵏ}}",
        "newmessagesdifflinkplural": "{{PLURAL:$1|ⴰⵙⵏⴼⵍ ⵉⴳⴳⵯⵔⴰⵏ|ⵉⵙⵏⴼⵍⵏ ⴳⴳⵯⵔⴰⵏⵉⵏ}}",
-       "youhavenewmessagesmulti": "Dark tibratin timaynutin ɣ $1",
+       "youhavenewmessagesmulti": "{{GENDER:|ⴷⴰⵔⴽ|ⴷⴰⵔⵎ}} ⵜⵓⵣⵉⵏⵉⵏ ⵜⵉⵎⴰⵢⵏⵓⵜⵉⵏ ⴳ $1",
        "editsection": "ⵙⵏⴼⵍ",
        "editold": "ⵙⵏⴼⵍ",
        "viewsourceold": "Mel aɣbalu",
        "confirmable-no": "ⵓⵀⵓ",
        "thisisdeleted": "Mel niɣd rard $1?",
        "viewdeleted": "Mel $1?",
-       "restorelink": "{{PLURAL:$1|Ambddel lli imḥin|imbddel lli imḥin}}",
+       "restorelink": "{{PLURAL:$1|ⵢⴰⵏ ⵓⵙⵏⴼⵍ ⵉⵜⵜⵡⴰⴽⴽⵙⵏ|imbddel lli imḥin}}",
        "feedlinks": "ⵉⴼⵉⵍⵉ:",
        "feed-invalid": "Anaw n usurdm ur gis iffuy umya",
        "feed-unavailable": "Isudmn ur llanin ɣil",
        "nstab-help": "ⵜⴰⵙⵏⴰ ⵏ ⵜⵡⵉⵙⵉ",
        "nstab-category": "ⴰⵙⵎⵉⵍ",
        "mainpage-nstab": "ⵜⴰⵙⵏⴰ ⵏ ⵓⵙⵏⵓⴱⴳ",
-       "nosuchaction": "Ur illa mat iskrn",
+       "nosuchaction": "ⵓⵔ ⵜⵍⵍⵉ ⵜⵉⴳⴰⵡⵜ ⴰⴷ",
        "nosuchactiontext": "Mytuskarn ɣu tansa yad ur tti tgi.\n\nIrwas is turit tansa  skra mani yaḍnin, ulla azday ur igi amya.\n\nTzdar attili tamukrist ɣ {{SITENAME}}.",
        "nosuchspecialpage": "ⵓⵔ ⵜⵍⵍⵉ ⵜⴰⵙⵏⴰ ⴰⴷ ⵉⵥⵍⵉⵏ",
        "nospecialpagetext": "<strong>Trit yat tasna tamzlit ur illan.</strong>\n\nTifilit n tasnayin gaddanin ratn taft ɣid [[Special:SpecialPages|{{int:specialpages}}]].",
        "badtitle": "Azwl ur ifulkin",
        "badtitletext": "Azwl n tasna lli trit ur igadda, ixwa, niɣd iga aswl n gr tutlayt niḍ ngr tuwwurins ur izdimzyan. Ẓr urgis tgit kra nu uskkil niɣd mnnaw lli gis ur llanin",
        "viewsource": "Mel iɣbula",
-       "virus-unknownscanner": "antivirus oritwsan",
-       "yourname": "smiyt o-msxdam:",
+       "virus-unknownscanner": "ⴰⵎⴳⵍⴼⵉⵔⵓⵙ ⴰⵔⵓⵙⵙⵉⵏ:",
+       "yourname": "ⵉⵙⵎ ⵏ ⵓⵙⵎⵔⴰⵙ:",
        "yourpassword": "awal iḥdan:",
        "yourpasswordagain": "Зawd ara awal iḥdan:",
        "yourdomainname": "Taɣult nek",
index 7788fc2..d8258da 100644 (file)
        "anontalk": "တွၼ်ႈဢုပ်ႇ",
        "navigation": "ၼႄတၢင်း",
        "and": "&#32;လႄႈ",
-       "qbfind": "ႁႃ",
-       "qbbrowse": "ပိုတ်ႇႁႃ",
-       "qbedit": "မူၼ်ႉမႄး",
-       "qbpageoptions": "ၼႃႈလိၵ်ႈၼႆ့",
-       "qbmyoptions": "ၼႃႈလိၵ်ႈၵဝ်ၶႃႈ",
        "faq": "ၶေႃႈထၢမ်ၵႆႉႁူပ်ႉ",
-       "faqpage": "Project:တွၼ်ႈတွင်ႈထၢမ်",
        "actions": "ၵၢၼ်ႁဵတ်းသၢင်ႈ",
        "namespaces": "ဢွင်ႈတီႈၸိုဝ်ႈ",
        "variants": "လွင်ႈပႅၵ်ႇပိူင်ႈ",
        "edit-local": "မႄးထတ်း ၶေႃႈသပ်းလႅင်းလူဝ်ႇၵႄႇ",
        "create": "သၢင်ႈ",
        "create-local": "ထႅမ်သႂ်ႇ ၶေႃႈသပ်းလႅင်းလူဝ်ႇၵႄႇ",
-       "editthispage": "မူၼ်ႉမႄး ၼႃႈလိၵ်ႈၼႆႉ",
-       "create-this-page": "သၢင်ႈ ၼႃႈလိၵ်ႈၼႆႉ",
        "delete": "ယႃႉ",
-       "deletethispage": "ယႃႉ ၼႃႈလိၵ်ႈၼႆႉ",
-       "undeletethispage": "ဢဝ်ၶိုၼ်း ၼႃႈလိၵ်ႈၼႆ့",
        "undelete_short": "ဢဝ်ၶိုၼ်း {{PLURAL:$1|ဢၼ် ထတ်းသၢင်ႈ |$1 ၸိူဝ်းထတ်းသၢင်ႈ}}",
        "viewdeleted_short": "တူၺ်း {{PLURAL:$1|လွင်ႈထတ်းသၢင်ႈ ဢၼ်မွတ်ႇပႅတ်ႈ|$1 ၸိူဝ်းထတ်းသၢင်ႈ ဢၼ်မွတ်ႇပႅတ်ႈ}}",
        "protect": "ႁေႉၵင်ႈ",
        "protect_change": "လႅၵ်ႈလၢႆႈ",
-       "protectthispage": "ႁေႉၵင်ႈ ၼႃႈလိၵ်ႈၼႆႉ",
        "unprotect": "လႅၵ်ႈလၢႆႊ ၵၢၼ်ႁေႉၵင်ႈ",
-       "unprotectthispage": "လႅၵ်ႈလၢႆႊ ၵၢၼ်ႁေႉၵင်ႈ ၼႃႈလိၵ်ႈၼႆႉ",
        "newpage": "ၼႃႈလိၵ်ႈမႂ်ႇ",
-       "talkpage": "ဢုပ်ႇလိူၺ်ႈ ၼႃႈလိၵ်ႈၼႆႉ",
        "talkpagelinktext": "တွၼ်ႈဢုပ်ႇ",
        "specialpage": "ၼႃႈလိၵ်ႈ ၶိုၵ်ႉတွၼ်း",
        "personaltools": "ၶိူင်ႈ​သုၼ်ႇ​လဵ​ဝ်",
-       "articlepage": "တူၺ်း ၼႃႈလိၵ်ႈ ၼမ်းၼႂ်း",
        "talk": "တႃႇဢုပ်ႇ",
        "views": "လူတူၺ်း",
        "toolbox": "ၶိူင်ႈၵမ်ႉၵႅမ်",
        "tool-link-userrights": "လႅၵ်ႈလၢႆႈ {{GENDER:$1|ၽူႈၸႂ်ႉတိုဝ်း}} ၸုမ်း",
        "tool-link-userrights-readonly": "တူၺ်း {{GENDER:$1|ၽူႈၸႂ်ႉတိုဝ်း}} ၸုမ်း",
        "tool-link-emailuser": "သူင်ႇဢီးမေးလ်ဢၼ်ၼႆႉ {{GENDER:$1|ၽူႈၸႂ်ႉတိုဝ်း}}",
-       "userpage": "တူၺ်းၼႃႈလိၵ်ႈၽူႈၸႂ်ႉတိုဝ်း",
-       "projectpage": "တူၺ်းၼႃႈလိၵ်ႈ ပရေႃးၵျႅၵ်ႉ",
        "imagepage": "တူၺ်းၼႃႈလိၵ်ႈၾၢႆႇ",
        "mediawikipage": "တူၺ်းၼႃႈလိၵ်ႈ ၶေႃႈၶၢဝ်ႇ",
        "templatepage": "တူၺ်းၼႃႈလိၵ်ႈ လွၵ်းပိူင်",
        "recentchanges": "မီးလွင်ႈလႅၵ်ႈလၢႆႈပႆႇႁိုင်",
        "recentchanges-legend": "ၵၼ်လိူၵ်ႈသၢင်ႈ လွင်ႈလႅၵ်ႈလၢႆႈဢၼ်ပူၼ်ႉမႃး",
        "recentchanges-summary": "ၸွမ်းတူၺ်းႁွႆး ဢၼ်ပဵၼ်ၵၢၼ် တိုၵ်ႉႁႃလႅၵ်ႈလၢႆႈၵႂႃႇ တွၼ်ႈတႃႇၼႃႈလိၵ်ႈ ဝီႇၶီႇၼႆႉ။",
+       "recentchanges-noresult": "ၼႂ်းၵႃႈၶၢဝ်းယၢမ်း ဢၼ်ပၼ်ဝႆႉ တႃႇၵိုၵ်းတူၺ်း ပိူင်တႅၵ်ႈတႃႇတႅပ်းတတ်းၼၼ်ႉ ဢမ်ႇႁၼ်မီး လွင်ႈလႅၵ်ႈလၢႆႈသင်။",
        "recentchanges-feed-description": "ၸွမ်းတူၺ်းႁွႆး ဢၼ်ပဵၼ်ၵၢၼ် တိုၵ်ႉႁႃလႅၵ်ႈလၢႆႈၵႂႃႇ တွၼ်ႈတႃႇၼႃႈလိၵ်ႈ ဝီႇၶီႇၼႆႉ။",
        "recentchanges-label-newpage": "လွင်ႈမႄးထတ်းဢၼ်ၼႆႉ ၵေႃႇသၢင်ႈ ၼႃႈလိၵ်ႈဢၼ်မႂ်ႇယဝ်ႉ",
        "recentchanges-label-minor": "ပဵၼ်လွင်ႈမႄးထတ်းဢိတ်းဢီႈ",
        "rcfilters-filter-newpages-label": "လွင်ႈၵေႃႇသၢင်ႈ ၼႃႈလိၵ်ႈ",
        "rcfilters-filter-newpages-description": "မႄးထတ်း ဢၼ်ႁဵတ်းပဵၼ် ၼႃႈလိၵ်ႈဢၼ်မႂ်ႇ",
        "rcfilters-filter-categorization-label": "လႅၵ်ႈလၢႆႈ တွၼ်ႈၵၼ်",
+       "rcnotefrom": "ၽၢႆႇတႂ်ႈ {{PLURAL:$5|ၼႆႉ ပဵၼ်လွင်ႈလႅၵ်ႈလၢႆႈ|ၸိူဝ်းၼႆႉ ပဵၼ်လွင်ႈလႅၵ်ႈလၢႆႈ}} ဝႆႉ ၸဵမ်မိူဝ်ႈ <strong>$3, $4</strong> (တေႃႇထိုင် <strong>$1</strong> ဢၼ်ၼႄဝႆႉ).",
        "rclistfrom": "ၼႄ လွင်ႈ​လႅၵ်ႈလၢႆႈဢၼ်မႂ်ႇ တႄႇတီႈ $2, $3",
        "rcshowhideminor": "$1 လွင်ႈမူၼ်ႉမႄး ဢိတ်းဢီႈ",
        "rcshowhideminor-show": "ၼႄ",
        "rcshowhideanons": "$1 ၽူႈၸႂ်ႉတိုဝ်းဢမ်ႇသႂ်ႇၸိုဝ်ႈ",
        "rcshowhideanons-show": "ၼႄ",
        "rcshowhideanons-hide": "သိူင်ႇ",
+       "rcshowhidepatr": "$1 ၵၢၼ်မႄးထတ်း ဢၼ်ထုၵ်ႇပႂ်ႉတူၺ်း",
        "rcshowhidepatr-show": "ၼႄ",
        "rcshowhidepatr-hide": "သိူင်ႇ",
        "rcshowhidemine": "$1 ဢၼ်ၵဝ်ၶႃႈ မူၼ်ႉမႄး",
        "notargettitle": "ဢမ်ႇမီး တီႈယိူင်း",
        "notargettext": "ၸဝ်ႈၵဝ်ႇ ဢမ်ႇလႆႈမၵ်းမၼ်ႈဝႆႉ ၼႃႈလိၵ်ႈတီႈယိူင်း ဢမ်ႇၼၼ် ၽူႈၸႂ်ႉတိုဝ်း တွၼ်ႈတႃႇႁဵတ်း ၼႃႈၵၢၼ်ၼႆႉ။",
        "nopagetitle": "ဢမ်ႇမီး ၼႃႈလိၵ်ႈ တီႈယိူင်းၸူး",
+       "pager-newer-n": "{{PLURAL:$1|ဢၼ်မႂ်ႇမႂ်ႇ 1|ဢၼ်မႂ်ႇမႂ်ႇ $1}}",
        "pager-older-n": "{{PLURAL:$1|older 1|ဢၼ်ၵဝ်ႇၵဝ်ႇ $1}}",
        "apisandbox-reset": "ၽဵဝ်ႈလၢင်ႉ",
        "apisandbox-retry": "ၶိုၼ်းၶတ်းၸႂ်တူၺ်း",
        "contributions": "{{GENDER:$1|User}} ၶဝ်ႈႁူမ်ႈပႃး",
        "mycontris": "လွင်ႈၶဝ်ႈႁူမ်ႈ",
        "anoncontribs": "လွင်ႈၶဝ်ႈႁူမ်ႈ",
+       "uctop": "(ယၢမ်းလဵဝ်)",
        "month": "တႄႇဢဝ်လိူၼ် (လႄႈ ဢၼ်ပူၼ်ႉမႃး):",
        "year": "တႄႇဢဝ်ပီ (လႄႈ ဢၼ်ပူၼ်ႉမႃး):",
        "sp-contributions-newbies-sub": "တွၼ်ႈတႃႇဢၶွင်ႉ ဢၼ်မႂ်ႇ",
        "pageinfo-authors": "ႁူဝ်ႁုပ်ႈတၢင်းၼမ် ၽူႈတႅမ်ႈလိၵ်ႈ ပႅၵ်ႇပိူင်ႈ",
        "pageinfo-recent-edits": "တၢင်းၼမ်လွင်ႈမႄးထတ်း ၸိူဝ်းပႆႇပေႃးႁိုင် (တီႈၼႂ်း ၶၢဝ်းပူၼ်ႉမႃး $1)",
        "pageinfo-recent-authors": "တၢင်းၼမ် ၽူႈတႅမ်ႈလိၵ်ႈ ပႅၵ်ႇပိူင်ႈ ၸိူဝ်းဢၼ်ပႆႇပေႃးႁိုင်",
+       "pageinfo-hidden-categories": "သိူင်ႇဝႆႉ {{PLURAL:$1|လိူင်ႈ|လိူင်ႈ(ၼမ်)}} ($1)",
        "pageinfo-toolboxlink": "လွၼ်ႉၶၢဝ်ႇၼႃႈလိၵ်ႈ",
        "pageinfo-redirectsto": "ဝိၼ်ႇၵႂႃႇၸူး",
        "pageinfo-redirectsto-info": "လွၼ်ႉၶၢဝ်ႇ",
        "previousdiff": "ၵၢၼ်မႄးထတ်း ဢၼ်ၵဝ်ႇ",
        "nextdiff": "ထတ်းသၢင်ႈဢၼ်မႂ်ႇမႂ်ႇ",
        "file-info-size": "$1 × $2 pixels, တၢင်းလဵၵ်ႉတၢင်းယႂ်ႇ ၾၢႆႇ: $3, ယိူင်ႈ MIME: $4",
+       "file-info-size-pages": "$1 × $2 pixels, သႅၼ်းၾၢႆႇ: $3, ၸုပ်ႈ MIME: $4, $5 {{PLURAL:$5|ၼႃႈ|ၼႃႈ(ၼမ်)}}",
        "file-nohires": "ဢမ်ႇမီး ဢၼ်ႁႅင်းၸိုၼ်ႈသႂ်ႇမၼ်း သုင်သုင်",
        "svg-long-desc": "ၾၢႆႇ SVG, ၸိုဝ်ႈ $1 × $2 pixels, သႅၼ်းၾၢႆႇ : $3",
        "show-big-image": "ၾၢႆႇငဝ်ႈတိုၼ်း",
        "namespacesall": "တင်းမူတ်း",
        "monthsall": "တင်းမူတ်း",
        "confirm-rollback-top": "တေပိၼ်ႈၶိုၼ်း လွင်ႈမႄးထတ်း ၼႃႈလိၵ်ႈဢၼ်ၼႆႉၼႄႇ?",
+       "imgmultipagenext": "ၼႃႈလိၵ်ႈတေမႃး",
+       "imgmultigo": "ၵႂႃႇ!",
+       "imgmultigoto": "ၵႂႃႇၸူး ၼႃႈလိၵ်ႈ $1",
        "watchlistedit-normal-title": "မႄးထတ်း သဵၼ်ႈမၢႆပႂ်ႉတူၺ်း",
        "watchlistedit-normal-legend": "ထွၼ်ပႅတ်ႈ ႁူဝ်ၶေႃႈ တမ်ႈတီႈ သဵၼ်ႈမၢႆမႂ်ႉတူၺ်း",
        "watchlistedit-normal-submit": "ထွၼ်ပႅတ်ႈ ႁူဝ်ၶေႃႈ",
        "tag-filter": "ၶတ်းလိူၵ်ႈဢဝ်[[Special:Tags|Tag]]:",
        "tag-list-wrapper": "([[Special:Tags|{{PLURAL:$1|Tag|Tags}}]]: $2)",
        "logentry-delete-delete": "$1 {{GENDER:$2|မွတ်ႇယဝ်ႉ}} ၼႃႈလိၵ်ႈ $3",
+       "logentry-delete-restore": "$1 {{GENDER:$2|ဢဝ်ၶိုၼ်း}} ၼႃႈလိၵ်ႈ $3 ($4)",
        "logentry-move-move": "$1 {{GENDER:$2|ၶၢႆႉယဝ်ႉ}} ၼႃႈလိၵ်ႈ $3 တေႃႇ $4",
        "logentry-newusers-create": "ဢၶွင်ႉၽူႈၸႂ်ႉတိုဝ်း $1 ၼႆႉ လႆႈ  {{GENDER:$2|ၵေႃႇသၢင်ႈယဝ်ႉ}}",
        "logentry-upload-upload": "$1 {{GENDER:$2|လူတ်ႇၶိုၼ်ႈၵႂႃႇယဝ်ႉ}} $3",
index 5f8034b..502108a 100644 (file)
        "about": "පිළිබඳ",
        "article": "පටුන",
        "newwindow": "(නව කවුළුවක විවෘතවේ)",
-       "cancel": "à¶\85තà·\8aà·\84රà·\92න්න",
+       "cancel": "à¶\85à·\80ලà¶\82à¶\9cà·\94 à¶\9aරන්න",
        "moredotdotdot": "තවත්...",
        "morenotlisted": "තවත් දේ ලැයිස්තුගත කොට නොමැත...",
        "mypage": "පිටුව",
-       "mytalk": "à·\83à·\8fà¶\9aචà·\8aඡà·\8fà·\80",
+       "mytalk": "à\9aතà·\8fබà·\84",
        "anontalk": "සාකච්ඡාව",
        "navigation": "යාත්‍රණය",
        "and": "&#32;සහ",
-       "qbfind": "සොයන්න",
-       "qbbrowse": "පිරික්සන්න",
-       "qbedit": "සංස්කරණය",
-       "qbpageoptions": "මෙම පිටුව",
-       "qbmyoptions": "මගේ පිටු",
        "faq": "නිවිප්‍ර",
-       "faqpage": "Project:නිවිප්‍ර",
        "actions": "කාර්යයන්",
        "namespaces": "නාමඅවකාශයන්",
        "variants": "ප්‍රභේද",
        "returnto": "$1 වෙත නැවත යන්න.",
        "tagline": "{{SITENAME}} වෙතින්",
        "help": "උදවු",
-       "search": "à·\83ොයන්න",
+       "search": "à·\84ොයන්න",
        "searchbutton": "සොයන්න",
        "go": "යන්න",
        "searcharticle": "යන්න",
        "print": "මුද්‍රණය කරන්න",
        "view": "දසුන",
        "view-foreign": "$1 බලන්න",
-       "edit": "සංස්කරණය කරන්න",
+       "edit": "සංස්කරණය",
        "edit-local": "ස්ථානික විස්තරය සංස්කරනය කරන්න",
        "create": "තනන්න",
        "create-local": "ස්ථානීය විස්තරයක් එක් කරන්න",
-       "editthispage": "මෙම පිටුව සංස්කරණය කරන්න",
-       "create-this-page": "මෙම පිටුව තනන්න",
        "delete": "මකන්න",
-       "deletethispage": "මෙම පිටුව මකන්න",
-       "undeletethispage": "මෙම පිටුව මැකුම අවලංගු කරන්න",
        "undelete_short": "{{PLURAL:$1|එක් සංස්කරණයක|සංස්කරණ $1 ක}} මකා දැමීම ප්‍රතිලෝම කරන්න",
        "viewdeleted_short": "මකා දමනු ලැබූ {{PLURAL:$1|එක් සංස්කරණයක්|සංස්කරණ $1  ක්}} බලන්න",
        "protect": "ආරක්‍ෂණය",
        "protect_change": "වෙනස් කරන්න",
-       "protectthispage": "මෙම පිටුව ආරක්‍ෂණය කරන්න",
        "unprotect": "ආරක්ෂණ තත්වය වෙනස් කරන්න",
-       "unprotectthispage": "මෙම පිටුවෙහි ආරක්ෂණ තත්වය වෙනස් කරන්න",
        "newpage": "නව පිටුව",
-       "talkpage": "මෙම පිටුව පිළිබඳ සංවාදයකට එළඹෙන්න",
        "talkpagelinktext": "කතාබහ",
        "specialpage": "විශේෂ පිටුව",
        "personaltools": "පුද්ගලික මෙවලම්",
-       "articlepage": "අන්තර්ගත පිටුව නරඹන්න",
        "talk": "සාකච්ඡාව",
        "views": "දසුන්",
        "toolbox": "මෙවලම්",
-       "userpage": "පරිශීලක පිටුව නරඹන්න",
-       "projectpage": "ව්‍යාපෘති පිටුව නරඹන්න",
        "imagepage": "ගොනු පිටුව නරඹන්න",
        "mediawikipage": "පණිවුඩ පිටුව නරඹන්න",
        "templatepage": "සැකිලි පිටුව නරඹන්න",
        "viewhelppage": "උදවු පිටුව නරඹන්න",
        "categorypage": "ප්‍රවර්ග පිටුව නරඹන්න",
        "viewtalkpage": "සාකච්ඡාව පෙන්වන්න",
-       "otherlanguages": "වෙනත් භාෂා වලින්",
+       "otherlanguages": "වෙන භාෂාවලින්",
        "redirectedfrom": "($1 වෙතින් යළි-යොමු කරන ලදි)",
        "redirectpagesub": "පිටුව යළි-යොමු කරන්න",
        "redirectto": "වෙත යළියොමුව:",
-       "lastmodifiedat": "මà·\99ම à¶´à·\92ටà·\94à·\80 à¶\85à·\80à·\83නà·\8a à·\80රට à·\80à·\99නà·\83à·\8a à¶\9aරන à¶½à¶¯à·\8aදà·\9a $1 à¶¯à·\92නදී, $2 වේලාවෙහිදීය.",
+       "lastmodifiedat": "මà·\9a à¶´à·\92ටà·\94à·\80 à¶\85නà·\8aතà·\92මට à·\83à·\90à¶\9aà·\83à·\94à·\80à·\9a $1 à¶¯à·\92න දී, $2 වේලාවෙහිදීය.",
        "viewcount": "මෙම පිටුවට {{PLURAL:$1|එක් වරක්|$1 වරක්}} පිවිස ඇත.",
        "protectedpage": "ආරක්ෂිත පිටුව",
        "jumpto": "වෙත පනින්න:",
        "currentevents": "කාලීන සිදුවීම්",
        "currentevents-url": "Project:කාලීන සිදුවීම්",
        "disclaimers": "වියාචනයන්",
-       "disclaimerpage": "Project:පොදු වියාචන",
+       "disclaimerpage": "Project:පොදු වියාචන",
        "edithelp": "සංස්කරණයට උදවු",
        "helppage-top-gethelp": "උදව්",
        "mainpage": "මුල් පිටුව",
        "portal": "ප්‍රජා ද්වාරය",
        "portal-url": "Project:ප්‍රජා ද්වාරය",
        "privacy": "පෞද්ගලිකත්ව ප්‍රතිපත්තිය",
-       "privacypage": "Project:පà·\94දà·\8aà¶\9cලà·\92à¶\9aතà·\8aà·\80 ප්‍රතිපත්තිය",
+       "privacypage": "Project:රà·\84à·\83à·\8aâ\80\8dයතà·\8f ප්‍රතිපත්තිය",
        "badaccess": "අවසරදීමේ දෝෂයකි",
        "badaccess-group0": "ඔබ විසින් අයැදුම් කර සිටි කාර්යය ක්‍රියාත්මක කිරීමට ඔබ හට ඉඩ ලබා දෙනු නොලැබේ.",
        "badaccess-groups": "ඔබ අයැදුම් කර සිටි කාර්යය, ඉදිරි {{PLURAL:$2| කාණ්ඩයට| කාණ්ඩ සමූහය අතුරින් එකකට}} අයත් පරිශීලකයන්ගේ පරිහරණයට සීමා කර ඇත: $1.",
        "newmessageslinkplural": "{{PLURAL:$1|නව පණිවුඩයක්|999=nනව පණිවුඩ}}",
        "newmessagesdifflinkplural": "අවසන් {{PLURAL:$1|වෙනස්වීම|999=වෙනස්වීම්}}",
        "youhavenewmessagesmulti": "ඔබ හට $1 හි නව පණිවුඩ ඇත",
-       "editsection": "සංස්කරණය කරන්න",
+       "editsection": "සංස්කරණය",
        "editold": "සංස්කරණය",
        "viewsourceold": "මූලාශ්‍රය නරඹන්න",
        "editlink": "සංස්කරණය",
-       "viewsourcelink": "මà·\96ලà·\8fà·\81à·\8aâ\80\8dරය à¶±à¶»à¶¹න්න",
+       "viewsourcelink": "මà·\96ලà·\8fà·\81à·\8aâ\80\8dරය à¶¶à¶½න්න",
        "editsectionhint": "ඡේදය සංස්කරණය: $1",
        "toc": "පටුන",
        "showtoc": "පෙන්වන්න",
        "welcomecreation-msg": "ඔබගේ ගිණුම තනා ඇත.\nඔබගේ [[Special:Preferences|{{SITENAME}} අභිරුචීන්]] නෙස් කිරීමට අමතක නොකරන්න.",
        "yourname": "පරිශීලක නාමය:",
        "userlogin-yourname": "පරිශීලක නාමය",
-       "userlogin-yourname-ph": "à¶\94බà¶\9cà·\9a à¶´à¶»à·\92à·\81à·\93ලà¶\9a à¶±à·\8fමය ඇතුළු කරන්න",
+       "userlogin-yourname-ph": "à¶\94යà·\8fà¶\9cà·\9a à¶´à¶»à·\92à·\81à·\93ලà¶\9a à¶±à¶¸ ඇතුළු කරන්න",
        "createacct-another-username-ph": "ඔබගේ පරිශීලක නම ඇතුළු කරන්න",
        "yourpassword": "මුරපදය:",
        "userlogin-yourpassword": "මුරපදය",
        "yourpasswordagain": "මුරපදය යළි ඇතුළු කරන්න:",
        "createacct-yourpasswordagain": "මුරපදය සනාථ කරන්න",
        "createacct-yourpasswordagain-ph": "මුරපදය යළි ඇතුළු කරන්න",
-       "userlogin-remembermypassword": "මා ප්‍රවිසීම් තත්වයේම තබන්න",
+       "userlogin-remembermypassword": "මාව පිවිසීම තබන්න",
        "userlogin-signwithsecure": "ආරක්‍ෂිත සබඳතාව භාවිතා කරන්න",
        "cannotloginnow-title": "දැන් පිවිසීමට නොහැකිය",
        "cannotloginnow-text": "$1 භාවිතා කරන විට පිවිසීමට නොහැකිය.",
        "logout": "නික්මීම",
        "userlogout": "නික්මීම",
        "notloggedin": "ප්‍රවිසී නැත",
-       "userlogin-noaccount": "à¶\9cà·\92ණà·\94මà¶\9aà·\8a à¶±à·\9cමà·\90තà·\92ද?",
-       "userlogin-joinproject": "{{SITENAME}} à·\84à·\8f à¶\91à¶\9aà·\8aවන්න",
+       "userlogin-noaccount": "à¶\9cà·\92ණà·\94මà¶\9aà·\8a à¶±à·\90දà·\8aද?",
+       "userlogin-joinproject": "{{SITENAME}} à\91à¶\9aතà·\94 වන්න",
        "createaccount": "අලුත් ගිණුමක් තනන්න",
        "userlogin-resetpassword-link": "ඔබේ මුරපදය නැති වුනාද?",
-       "userlogin-helplink2": "à¶\9cà·\92ණà·\94ම à·\80à·\99ත à¶´à·\92à·\80à·\92à·\83à·\93ම à·\83ඳà·\84à·\8f à¶\8bදà·\80à·\94",
+       "userlogin-helplink2": "පිවිසීම සඳහා උදවු",
        "userlogin-loggedin": "ඔබ දැනටමත් {{GENDER:$1|}} ලෙස පිවිසී ඇත.\nනව පරිශීලකයෙකු ලෙස ඇතුළු වීමට පහත ආකෘතිය පුරවන්න.",
        "userlogin-createanother": "තවත් ගිණුමක් ආරම්භ කරන්න",
        "createacct-emailrequired": "වි-තැපෑල ලිපිනය",
        "pt-login": "පිවිසෙන්න",
        "pt-login-button": "පිවිසෙන්න",
        "pt-createaccount": "ගිණුමක් තනන්න",
-       "pt-userlogout": "නà·\92à¶\9aà·\8aමà·\93ම",
+       "pt-userlogout": "නà·\92à¶\9aà·\8aමà·\99නà·\8aන",
        "php-mail-error-unknown": "php mail() ශ්‍රිතයේ හඳුනානොගත් ගැටළුවකි",
        "user-mail-no-addy": "විද්‍යුත් තැපැල් ලිපිනයක් නොමැතිව විද්‍යුත් තැපැල් පණිවුඩයක් යැවීමට උත්සහ දරා ඇත.",
        "user-mail-no-body": "හිස් හෝ ඉතා කෙටි පෙළක් සහිත ඊ-තැපෑලක් යැවීමට උත්සාහ කර ඇත.",
        "nowiki_sample": "ආකෘතිකරණය-නොකල පෙළ මෙහි ඇතුළුකරන්න",
        "nowiki_tip": "විකි ආකෘතිකරණය නොසලකාහරින්න",
        "image_sample": "නිදසුන.jpg",
-       "image_tip": "කා වැද්දූ ගොනුව",
+       "image_tip": "කාවැද්දූ ගොනුව",
        "media_sample": "නිදසුන.ogg",
        "media_tip": "ගොනු සබැඳිය",
        "sig_tip": "වේලා මුද්‍රාව හා සමග ඔබගේ විද්‍යුත් අත්සන",
        "newarticle": "(නව)",
        "newarticletext": "බැඳියක් ඔස්සේ පැමිණ ඔබ පිවිස ඇත්තේ දැනට නොපවතින පිටුවකටයි.\nමෙම ලිපිය තැනීමට අවශ්‍ය නම්, පහත ඇති කොටුව තුල අකුරු ලිවීම අරඹන්න (වැඩිදුර තොරතුරු සඳහා [$1 උදවු පිටුව] බලන්න).\nඔබ මෙහි පිවිස ඇත්තේ අත්වැරැද්දකින් නම්, ඔබගේ ගවේෂකයෙහි '''ආපසු''' බොත්තම ඔබන්න.",
        "anontalkpagetext": "----''මෙම සංවාද පිටුව අයත් වන්නේ තවමත් ගිණුමක් තනා නැති හෝ එසේ කොට එනමුදු එය භාවිතා නොකරන හෝ නිර්නාමික පරිශීලකයෙකුටය.\nඑබැවින්, ඔහු/ඇය හැඳින්වීමට සංඛ්‍යාත්මක IP ලිපිනය භාවිතා කිරීමට අප හට සිදුවේ.\nපරිශීලකයන් කිහිප දෙනෙකු විසින් මෙවැනි IP ලිපිනයක් හවුලේ පරිහරණය කරනවා විය හැක.\nඔබ නිර්නාමික පරිශීලකයෙකු නම් හා ඔබ පිළිබඳ අනනුකූල පරිකථනයන් සිදුවෙන බවක් ඔබට හැ‍ඟේ නම්, අනෙකුත් නිර්නාමික පරිශීලකයන් හා සමග  මෙවැනි සංකූලතා ඇතිවීම වලක්වනු වස්,  කරුණාකර  [[Special:CreateAccount|ගිණුමක් තැනීමට]] හෝ [[Special:UserLogin|ප්‍රවිෂ්ට වීමට]]  කාරුණික වන්න.''",
-       "noarticletext": "දà·\90නට à¶¸à·\99ම à¶´à·\92ටà·\94à·\80à·\99à·\84à·\92 à¶\9aà·\92à·\83à·\92දà·\94 à¶´à·\99à·\85à¶\9aà·\8a à¶±à·\9cමà·\90ත.\nඅනෙකුත් පිටුවල  [[Special:Search/{{PAGENAME}}|මෙම පිටු ශීර්ෂය සඳහා ගවේශනය කිරීම]] හෝ,\n<span class=\"plainlinks\">[{{fullurl:{{#Special:Log}}|page={{FULLPAGENAMEE}}}} අදාළ ලඝු-සටහන් සඳහා ගවේෂණය කිරීම],\nහෝ [{{fullurl:{{FULLPAGENAME}}|action=edit}} මෙම පිටුව සංස්කරණය කිරීම] හෝ ඔබට සිදු කල හැක</span>.",
+       "noarticletext": "දà·\90නට à¶¸à·\9a à¶´à·\92ටà·\94à·\80à·\9a à¶\9aà·\92à·\83à·\92ම à¶´à·\99à·\85à¶\9aà·\8a à¶±à·\90à·\84à·\90.\nඅනෙකුත් පිටුවල  [[Special:Search/{{PAGENAME}}|මෙම පිටු ශීර්ෂය සඳහා ගවේශනය කිරීම]] හෝ,\n<span class=\"plainlinks\">[{{fullurl:{{#Special:Log}}|page={{FULLPAGENAMEE}}}} අදාළ ලඝු-සටහන් සඳහා ගවේෂණය කිරීම],\nහෝ [{{fullurl:{{FULLPAGENAME}}|action=edit}} මෙම පිටුව සංස්කරණය කිරීම] හෝ ඔබට සිදු කල හැක</span>.",
        "noarticletext-nopermission": "දැනට මෙම පිටුවෙහි කිසිදු පෙළක් නොමැත.\nඅනෙකුත් පිටුවල [[Special:Search/{{PAGENAME}}|මෙම පිටු ශීර්ෂය සඳහා ගවේශනය කිරීම]] හෝ, <span class=\"plainlinks\">[{{fullurl:{{#Special:Log}}|page={{FULLPAGENAMEE}}}}අදාළ ලඝු-සටහන් සඳහා ගවේෂණය කිරීම]</span>, හෝ මෙම පිටුව සංස්කරණය කිරීම හෝ ඔබට කල හැක.",
        "missing-revision": "සංශෝධනය නම් පිටුවේ #$1 \"{{FULLPAGENAME}}\" නොපවතියි.\n\nමෙය සාමාන්යයෙන් මකා දැමූ පිටුවක ඉතිහාසය සබැඳියන් යල් පැනගිය පහත සඳහන් හේතු වේ [{{fullurl:{{#Special:Log}}/මකන්න|page={{FULLPAGENAMEE}}}} මැකීමේ ලොගය].",
        "userpage-userdoesnotexist": "\"<nowiki>$1</nowiki>\" යන පරිශීලක ගිණුම ලේඛනගත කොට නොමැත.\nඔබ හට මෙම පිටුව තැනීමට/සංස්කරණය කිරීමට ඇවැසිද යන බව විමසා බලන්න.",
        "lineno": "$1 පේළිය:",
        "compareselectedversions": "තෝරාගත් සංශෝධන සසඳන්න",
        "showhideselectedversions": "තෝරාගත් සංශෝධන පෙන්වන්න/සඟවන්න",
-       "editundo": "à¶\85à·\84à·\9dà·\83à·\92 à¶\9aරනà·\8aන",
+       "editundo": "පà·\83à·\94à¶\9cමනය",
        "diff-empty": "(වෙනසක් නොමැත)",
        "diff-multi-sameuser": "(නොපෙන්වන එම පරිශීලකයා මගින් {{PLURAL:$1|එක් අතරමැදි සංස්කරණයක්|අතරමැදි සංස්කරණ $1ක්}})",
        "diff-multi-otherusers": "({{PLURAL:$1|එක් අතරමැදි සංශෝධනය|අතරමැදි සංශෝධන $1}} විසින් {{PLURAL:$2|තවත් එක් පරිශීලක|පරිශීලක $2}} පෙන්වා නැත)",
        "diff-multi-manyusers": "(පරිශීලකයන් $2 කට වඩා වැඩි ගණනකගේ ආසන්න පුනරීක්‍ෂණ $1ක් පෙන්වා නොමැත)",
        "difference-missing-revision": "{{PLURAL:$2|එක් සංශෝධනයක්|සංශෝධන $2}} මෙම වෙනස, ($1), {{PLURAL:$2|ලදී|ලද}} ක් සොයාගත නොහැකි විය.\n\nමෙය සාමාන්යයෙන් මකා දැමූ පිටුවක යල් පැන ගිය වෙනස පහත සබැඳිය නිසා වේ. [{{fullurl:{{#Special:Log}}/delete|page={{FULLPAGENAMEE}}}} මකාදැමීම් ලඝු-සටහන]. විස්තර සොයා ගත හැක.",
-       "searchresults": "à\9cà·\80à·\9aà·\82ණ ප්‍රතිඵල",
-       "searchresults-title": "\"$1\" à·\83ඳà·\84à·\8f à\9cà·\80à·\9aà·\82ණ ප්‍රතිඵල",
+       "searchresults": "à·\83à·\99à·\80à·\94මà·\8a ප්‍රතිඵල",
+       "searchresults-title": "\"$1\" à·\83ඳà·\84à·\8f à·\83à·\99à·\80à·\94මà·\8a ප්‍රතිඵල",
        "titlematches": "පිටු ශීර්ෂය ගැළපෙයි",
        "textmatches": "පිටු පෙළ ගැළපෙයි",
        "notextmatches": "පිටු පෙළ කිසිවක් නොගැළපෙයි",
        "listusers-desc": "අවරෝහණ පිළිවෙලට සකස් කරන්න",
        "usereditcount": " {{PLURAL:$1|සංස්කරණ එකකි|සංස්කරණ $1 කි}}",
        "usercreated": "$1 දින $2 වේලාවේදී {{GENDER:$3|තනන ලදි}}",
-       "newpages": "නà·\80 පිටු",
+       "newpages": "à¶\85ලà·\94තà·\8a පිටු",
        "newpages-submit": "පෙන්වන්න",
        "newpages-username": "පරිශීලක-නාමය:",
        "ancientpages": "පැරණිම පිටු",
        "usermessage-summary": "පද්ධති පණිවුඩයක් තබමි.",
        "usermessage-editor": "පද්ධති පණිවුඩ කරු",
        "watchlist": "මුරලැයිස්තුව",
-       "mywatchlist": "මුර-ලැයිස්තුව",
+       "mywatchlist": "මුරලැයිස්තුව",
        "watchlistfor2": "$1 සඳහා ($2)",
        "nowatchlist": "ඔබගේ මුර-ලැයිස්තුවේ කිසිදු අයිතමයක් නොමැත.",
        "watchlistanontext": "ඔබගේ මුර-ලැයිස්තුවෙහි අයිතම නැරඹීමට හෝ සංස්කරණය කිරීමට ප්රවිෂ්ට වන්න.",
        "minimum-size": "අවම විශාලත්වය",
        "maximum-size": "උපරිම විශාලත්වය:",
        "pagesize": "(බයිට්)",
-       "restriction-edit": "සංස්කරණය කරන්න",
+       "restriction-edit": "සංස්කරණය",
        "restriction-move": "ගෙන යන්න",
        "restriction-create": "තනන්න",
        "restriction-upload": "උඩුගත කරන්න",
        "import-logentry-upload-detail": " {{PLURAL:$1|සංශෝධනය|සංශෝධන $1 ක්}}",
        "import-logentry-interwiki-detail": "$2 වෙතින් {{PLURAL:$1|එක් සංශෝධනයක්|සංශෝධන $1 ක්}}",
        "javascripttest": "ජාවාස්ක්‍රිප්ට් පරික්ෂාකරමින්",
-       "tooltip-pt-userpage": "ඔබගේ පරිශීලක පිටුව",
+       "tooltip-pt-userpage": "{{GENDER:|ඔයාගේ පරිශීලක}} පිටුව",
        "tooltip-pt-anonuserpage": "සංස්කරණයට ඔබ භාවිතා කරමින් පවතින අන්තර්ජාල ලිපිනය සඳහා පරිශීලක පිටුව",
-       "tooltip-pt-mytalk": "ඔබගේ සංවාද පිටුව",
+       "tooltip-pt-mytalk": "{{GENDER:|ඔයාගේ}} කතාබහ පිටුව",
        "tooltip-pt-anontalk": "මෙම අන්තර්ජාල ලිපිනයෙන් කර ඇති සංස්කරණයන් පිළිබඳ සාකච්ඡාව",
-       "tooltip-pt-preferences": "මගේ අභිරුචි සැකසුම්",
+       "tooltip-pt-preferences": "{{GENDER:|ඔයාගේ}} මනාප",
        "tooltip-pt-watchlist": "වෙනස්වීම් සිදුවී තිබේදැයි යන්න පිලිබඳව ඔබගේ විමසුමට ලක්ව ඇති පිටු ලැයිස්තුව",
-       "tooltip-pt-mycontris": "ඔබගේ දායකත්ව ලැයිස්තුව‍",
+       "tooltip-pt-mycontris": "{{GENDER:|ඔයාගේ}} දායකත්ව ලැයිස්තුව‍ක්",
        "tooltip-pt-login": "අඩවියට පිවිසීමට ඔබව දිරිගැන්වේ. එහෙත් පිවිසීම අනිවාර්ය නොවේ.",
        "tooltip-pt-logout": "නික්මීම",
        "tooltip-pt-createaccount": "ඔබ ගිණුමක් තනා පිවිසෙන්නේ නම් මැනවි; කෙසේ වුවත්, එය අනිවාර්ය නොවේ.",
        "tooltip-ca-talk": "අන්තර්ගත පිටුව පිළිබඳ සාකච්ඡාව",
-       "tooltip-ca-edit": "මෙම පිටුව සංස්කරණය කරන්න",
+       "tooltip-ca-edit": "මෙම පිටුව සංස්කරණය",
        "tooltip-ca-addsection": "නව කොටසක් අරඹන්න",
        "tooltip-ca-viewsource": "මෙම පිටුව ආරක්‍ෂණය කොට ඇත.\nඔබට එහි මූලාශ්‍රය නැරඹිය හැක.",
        "tooltip-ca-history": "මෙම පිටුවේ පෙර සංශෝධන",
        "tooltip-ca-nstab-project": "ව්‍යාපෘති පිටුව නරඹන්න",
        "tooltip-ca-nstab-image": "ගොනු පිටුව නරඹන්න",
        "tooltip-ca-nstab-mediawiki": "පද්ධති පණිවුඩය නරඹන්න",
-       "tooltip-ca-nstab-template": "à·\83à·\90à¶\9aà·\92ලà·\8aල à¶±à¶»à¶¹න්න",
+       "tooltip-ca-nstab-template": "à·\83à·\90à¶\9aà·\92ලà·\8aල à¶¶à¶½න්න",
        "tooltip-ca-nstab-help": "උදවු පිටුව නරඹන්න",
        "tooltip-ca-nstab-category": "ප්‍රවර්ග පිටුව නරඹන්න",
        "tooltip-minoredit": "මෙය සුළු සංස්කරණයක් ලෙස සටහන් කරන්න",
        "feedback-submit": "යොමන්න",
        "feedback-thanks": "ස්තුතියි! ඔබේ ප්‍රතිචාරය \"[$2 $1]\" පිටුවට එක් කරන ලදී.",
        "feedback-useragent": "පරිශීලක නියෝජිත:",
-       "searchsuggest-search": "ගවේශණය කරන්න",
+       "searchsuggest-search": "{{SITENAME}} හොයන්න",
        "searchsuggest-containing": "ඇතුළත් වෙමින් පවතී...",
        "api-error-badtoken": "අභ්‍යන්තර දෝෂය: නොසුදුසු ටෝකනය.",
        "api-error-emptypage": "නවතම එකක් තනමින්, හිස් පිටුවලට ඉඩ නොදේ.",
index b262200..90e7af0 100644 (file)
        "rcfilters-view-namespaces-tooltip": "Filtriraj rezultate po imenskem prostoru",
        "rcfilters-view-tags-tooltip": "Filtriraj rezultate z uporabo oznak urejanj",
        "rcfilters-view-return-to-default-tooltip": "Vrni se na glavni meni filtriranja",
+       "rcfilters-liveupdates-button": "Posodobitve v živo",
        "rcnotefrom": "{{PLURAL:$5|Navedena je sprememba|Navedeni sta spremembi|Navedene so spremembe}} od <strong>$3 $4</strong> dalje (prikazujem jih do <strong>$1</strong>).",
        "rclistfromreset": "Ponastavi izbiro datuma",
        "rclistfrom": "Prikaži spremembe od $3 $2 naprej",
index aef1519..1d0d3e4 100644 (file)
        "recentchanges-legend-newpage": "{{int:recentchanges-label-newpage}} (shiko gjithashtu [[Special:NewPages|listën e faqeve të reja]])",
        "recentchanges-submit": "Shfaq",
        "rcfilters-activefilters": "Filtrat aktiv",
-       "rcfilters-quickfilters": "Ruaj rregullimet e filtrit",
+       "rcfilters-advancedfilters": "Filtra të avancuar",
+       "rcfilters-quickfilters": "Filtrat e ruajtur",
        "rcfilters-quickfilters-placeholder-title": "Asnjë lidhje e ruajtur",
        "rcfilters-savedqueries-defaultlabel": "Filtrat e ruajtur",
        "rcfilters-savedqueries-rename": "Riemro",
        "rcfilters-savedqueries-unsetdefault": "Hiqe si parazgjedhje",
        "rcfilters-savedqueries-remove": "Largo",
        "rcfilters-savedqueries-new-name-label": "Emri",
-       "rcfilters-savedqueries-apply-label": "Ruaj rregullimet",
+       "rcfilters-savedqueries-apply-label": "Krijo filtër",
        "rcfilters-savedqueries-cancel-label": "Anulo",
        "rcfilters-savedqueries-add-new-title": "Ruaj rregullimet e tanishme të filtrit",
        "rcfilters-restore-default-filters": "Kthej filtrat e parazgjedhur",
        "rcfilters-filter-previousrevision-description": "Të gjitha ndryshimet që nuk janë ndryshimet më të fundit në një faqe.",
        "rcfilters-filter-excluded": "Përjashtuar",
        "rcfilters-tag-prefix-namespace-inverted": "<strong>:jo</strong> $1",
-       "rcfilters-view-tags": "Etiketat",
+       "rcfilters-view-tags": "Redaktimet e etiketuara",
+       "rcfilters-view-namespaces-tooltip": "Filtro rezultatet sipas hapësirës",
+       "rcfilters-view-tags-tooltip": "Filtro rezultatet duke përdorur etiketat e redaktimit",
+       "rcfilters-view-return-to-default-tooltip": "Kthehu te menyja kryesore e filtrave",
+       "rcfilters-liveupdates-button": "Freskimet drejtpërdrejtë",
        "rcnotefrom": "Më poshtë {{PLURAL:$5|është shfaqur ndryshimi|janë shfaqur ndryshimet}} që nga <strong>$3, $4</strong> (deri në <strong>$1</strong>).",
        "rclistfromreset": "Anulo përzgjedhjen e datës",
        "rclistfrom": "Tregon ndryshime së fundmi duke filluar nga $3 $2",
        "autoblocklist-submit": "Kërko",
        "autoblocklist-legend": "Rreshto autobllokimet",
        "autoblocklist-localblocks": "{{PLURAL:$1|Autoblloku lokal|Autobllokimet lokale}}",
+       "autoblocklist-total-autoblocks": "Numri i përgjithshëm i vet-bllokimeve: $1",
        "autoblocklist-empty": "Lista e autobllokimeve është e zbrazët.",
        "autoblocklist-otherblocks": "{{PLURAL:$1|Autoblloku tjetër|Autoblloqet tjera}}",
        "ipblocklist": "Përdorues i Bllokuar",
        "cant-move-user-page": "Ju nuk keni të drejat për të lzhvendosur faqet e përdoruesve (përveç nën-faqeve).",
        "cant-move-to-user-page": "Ju nuk keni të drejta për të zhvendosur një faqe tek një faqe përdoruesi (përvç tek një nën-faqe përdoruesi).",
        "cant-move-category-page": "Nuk ju lejohet të zhvendosni kategori.",
+       "cant-move-to-category-page": "Nuk ju lejohet të zhvendosni një faqe në një faqe kategori.",
+       "cant-move-subpages": "Nuk ju lejohet të zhvendosni nënfaqe.",
+       "namespace-nosubpages": "Hapësira \"$1\" nuk lejon nënfaqe.",
        "newtitle": "Titull i ri:",
        "move-watch": "Mbikqyre këtë faqe",
        "movepagebtn": "Zhvendose faqen",
        "immobile-target-namespace-iw": "Lidhja ndër-wiki nuk është një objektiv i vlefshëm për zhvendosjen e faqes.",
        "immobile-source-page": "Kjo faqe është e pa lëvizshme.",
        "immobile-target-page": "Nuk mund të zhvendoset tek titulli i destinuar.",
+       "bad-target-model": "Caku i dëshiruar përdor model tjetër të përmbajtjes. Nuk mund të shndërroj nga $1 në $2.",
        "imagenocrossnamespace": "Nuk mund të lëvizet skeda tek hapësira e jo-skedës",
        "nonfile-cannot-move-to-file": "Nuk mund të lëvizet jo-skeda tek hapësira e skedës",
        "imagetypemismatch": "Skeda e re nuk përputhet me llojin e vet",
        "export-download": "Ruaje si skedë",
        "export-templates": "Përfshinë stampa",
        "export-pagelinks": "Përfshini faqet e lidhura në një thellësi prej:",
+       "export-manual": "Shto vet faqet:",
        "allmessages": "Mesazhet e sistemit",
        "allmessagesname": "Emri",
        "allmessagesdefault": "Teksti i parazgjedhur",
        "thumbnail-temp-create": "Nuk mund të krijohej parapamja e përkohshme e skedës",
        "thumbnail-dest-create": "Nuk mund të ruhej parapamja tek destinacioni",
        "thumbnail_invalid_params": "Parametrat thumbnail të pavlefshme",
+       "thumbnail_toobigimagearea": "Skedar me dimensione më të mëdha se $1",
        "thumbnail_dest_directory": "Në pamundësi për të krijuar dosjen e destinacionit",
        "thumbnail_image-type": "Lloji i fotografisë nuk mbështetet",
        "thumbnail_gd-library": "Konfigurim librarie GD i paplotë: mungon funksoni $1",
        "import-interwiki-history": "Kopjo të gjitha versionet e historisë për këtë faqe",
        "import-interwiki-templates": "Përfshini të gjitha stampat",
        "import-interwiki-submit": "Importo",
+       "import-mapping-default": "Importo në lokacione të paracaktuara",
+       "import-mapping-namespace": "Importo në një hapësirë:",
+       "import-mapping-subpage": "Importo si nënfaqe të faqes në vazhdim:",
        "import-upload-filename": "Emri i skedës:",
        "import-comment": "Arsyeja:",
        "importtext": "Ju lutem eksportoni këtë skedë nga burimi wiki duke përdorur  [[Special:Export|export utility]].! XAU Save atë në kompjuterin tuaj dhe ngarkoni këtu.",
        "import-error-interwiki": "Faqja \"$1\" nuk është importuar sepse emri i saj është rezervuar për lidhje të jashtme (interwiki)",
        "import-error-special": "Faqja \"$1\" nuk është importuar sepse ajo i përket një hapësire të veçantë që nuk lejon faqe.",
        "import-error-invalid": "Faqja \"$1\" nuk është importuar sepse emri me të cilin do të importohej është i palejueshëm në këtë wiki.",
+       "import-options-wrong": "{{PLURAL:$2|Opsion i gabuar|Opsione të gabuara}}: <nowiki>$1</nowiki>",
+       "import-rootpage-invalid": "Faqja rrënjë ka titull të pavlefshëm.",
        "importlogpage": "Regjistri i importeve",
        "importlogpagetext": "Importimet administrative të faqeve me historik redaktimi nga wiki-t e tjera.",
        "import-logentry-upload-detail": "$1 {{PLURAL:$1|version|versione}} u importuan",
        "newimages-legend": "Filtrues",
        "newimages-label": "Emri i skedës (ose një pjesë e tij):",
        "newimages-user": "Adresë IP ose emër përdoruesi",
+       "newimages-newbies": "Trego vetëm redaktimet e llogarive të reja",
        "newimages-showbots": "Trego ngarkimet nga robotët",
        "newimages-hidepatrolled": "Fshih ngarkimet e patrolluara",
        "newimages-mediatype": "Tipi i medias:",
        "tags-deactivate-reason": "Arsyeja:",
        "tags-deactivate-not-allowed": "Nuk është i mundur çaktivizimi i etiketës \"$1\".",
        "tags-deactivate-submit": "Çaktivizo",
+       "tags-update-remove-not-allowed-one": "Etiketa \"$1\" nuk lejohet të hiqet.",
        "tags-edit-title": "Redakto etiketat",
        "tags-edit-manage-link": "Menaxho etiketat",
        "tags-edit-existing-tags": "Etiketat ekzistuese:",
        "logentry-rights-rights": "$1 {{GENDER:$2|ndërroi}} anëtarësinë e grupit për $3 nga $4 në $5",
        "logentry-rights-autopromote": "$1 është {{GENDER:$2|promovuar}} automatikisht nga $4 në $5",
        "logentry-upload-upload": "$1 {{GENDER:$2|ngarkoi}} $3",
+       "log-name-tag": "Regjistri i etiketës",
        "rightsnone": "(asgjë)",
        "feedback-adding": "Duke shtuar përshtypjen te faqja...",
        "feedback-back": "Prapa",
        "feedback-bugornote": "Nëse jeni gati për të përshkruar një problem teknik me detaje ju lutemi [$1 raportoni një problem].\nPërndryshe, ju mund të formularin e thjeshtë më poshtë. Komenti juaj do të shtohet te faqja \"[$3 $2]\"\", së bashku me emrin tuaj të përdoruesit dhe shfletuesin të cilin jeni duke përdorur.",
        "feedback-cancel": "Anulo",
        "feedback-close": "Përfunduar",
+       "feedback-external-bug-report-button": "Krijo një detyrë teknike",
        "feedback-dialog-title": "Dërgo përshtypjet",
        "feedback-error1": "Gabim: Rezultat i panjohur nga API",
        "feedback-error2": "Gabim: Redaktimi dështoi",
        "duration-decades": "$1 {{PLURAL:$1|dekadë|dekada}}",
        "duration-centuries": "$1 {{PLURAL:$1|shekull|shekuj}}",
        "duration-millennia": "$1 {{PLURAL:$1|milennium|mileniume}}",
+       "limitreport-templateargumentsize-value": "$1/$2 {{PLURAL:$2|bajt|bajta}}",
        "expandtemplates": "Parapamje stampash",
        "expand_templates_intro": "Kjo faqe speciale merr tekstin dhe zgjeron të gjitha shabllonet në të në mënyrë rekursive.\nAi gjithashtu zgjeron funksionet e parser të mbështetura si\n<code><nowiki>{{</nowiki>#language: ...}}</code>dhe variablat si\n<code><nowiki>{{</nowiki>CURRENTDAY}}</code>.\nNë të vërtetë, ajo zgjeron çdo gjë në kllapa gjarpërore të dyfishta.",
        "expand_templates_title": "Titulli i faqes për rrethanën, si {{FULLPAGENAME}} etj.:",
        "expand_templates_input": "Teksti me stampa:",
        "expand_templates_output": "Parapamja",
        "expand_templates_xml_output": "Rezultat XML",
+       "expand_templates_html_output": "HTML i papërpunuar",
        "expand_templates_ok": "Shko",
        "expand_templates_remove_comments": "Hiq komentet",
+       "expand_templates_remove_nowiki": "Mos shfaq etiketat <nowiki> në rezultate",
+       "expand_templates_generate_xml": "Trego XML parse tree",
+       "expand_templates_generate_rawhtml": "Trego HTML të papërpunuar",
        "expand_templates_preview": "Parapamje",
        "expand_templates_input_missing": "Duhet të jepni së paku pak tekst.",
        "pagelanguage": "Ndrysho gjuhën e faqës",
        "sessionprovider-generic": "$1 sesione",
        "sessionprovider-mediawiki-session-cookiesessionprovider": "sesione të bazuara në biskota",
        "sessionprovider-nocookies": "Biskotat mund të jenë paaftësuar. Sigurohu që keni aktivizuar biskotat dhe filloni prapë.",
+       "randomrootpage": "Faqe rrënjë e rastit",
        "log-action-filter-block": "Lloji i bllokimit:",
        "log-action-filter-contentmodel": "Lloji i ndryshimit të modelit të përmbajtjes:",
        "log-action-filter-delete": "Lloji i fshirjes:",
index 2730a1b..1d30588 100644 (file)
        "rcfilters-view-namespaces-tooltip": "Filtrera resultat efter namnrymder",
        "rcfilters-view-tags-tooltip": "Filtrera resultat med redigeringsmärken",
        "rcfilters-view-return-to-default-tooltip": "Återvänd till huvudfiltreringsmenyn",
+       "rcfilters-liveupdates-button": "Liveuppdateringar",
        "rcnotefrom": "Nedan visas {{PLURAL:$5|ändringen|ändringar}} sedan <strong>$3, $4</strong> (upp till <strong>$1</strong> ändringar visas).",
        "rclistfromreset": "Återställ datumval",
        "rclistfrom": "Visa nya ändringar från och med $2 $3",
index 3319b62..dcbfeaa 100644 (file)
        "post-expand-template-argument-warning": "<strong>คำเตือน:</strong> หน้านี้มีอาร์กิวเมนต์แม่แบบอย่างน้อยหนึ่งที่มีขนาดขยายใหญ่เกินไป\nสละอาร์กิวเมนต์เหล่านี้แล้ว",
        "post-expand-template-argument-category": "หน้าที่มีอาร์กิวเมนต์แม่แบบถูกสละ",
        "parser-template-loop-warning": "ตรวจพบวงวนแม่แบบ: [[$1]]",
+       "template-loop-category": "หน้าที่มีแม่แบบวน",
        "parser-template-recursion-depth-warning": "เกินขีดจำกัดความลึกการเรียกแม่แบบซ้ำ ($1)",
        "language-converter-depth-warning": "เกินขีดจำกัดความลึกตัวแปลงผันภาษา ($1)",
        "node-count-exceeded-category": "หน้าที่จำนวนปมเกิน",
        "page_first": "แรกสุด",
        "page_last": "ท้ายสุด",
        "histlegend": "การเลือกผลต่าง: เลือกปุ่มของสองรุ่นที่ต้องการเปรียบเทียบ และกดป้อนเข้าหรือปุ่มด้านล่าง<br />\nคำอธิบาย: <strong>({{int:cur}})</strong> = ผลต่างกับรุ่นปัจจุบัน, <strong>({{int:last}})</strong> = ผลต่างกับรุ่นก่อนหน้า, <strong>{{int:minoreditletter}}</strong> = การแก้ไขเล็กน้อย",
-       "history-fieldset-title": "à¸\84à¹\89à¸\99à¸\94ูà¸\9bระวัà¸\95ิ",
+       "history-fieldset-title": "à¸\84à¹\89à¸\99หารุà¹\88à¸\99à¸\9bรัà¸\9aà¸\9bรุà¸\87",
        "history-show-deleted": "เฉพาะรุ่นที่ถูกลบ",
        "histfirst": "แรกสุด",
        "histlast": "ล่าสุด",
        "search-file-match": "(เนื้อหาไฟล์ตรง)",
        "search-suggest": "คุณอาจหมายถึง: $1",
        "search-rewritten": "กำลังแสดงผลลัพธ์สำหรับ $1 ค้นหา $2 แทน",
-       "search-interwiki-caption": "โครงการพี่น้อง",
+       "search-interwiki-caption": "à¸\9cลà¸\81ารà¸\84à¹\89à¸\99หาà¸\88าà¸\81à¹\82à¸\84รà¸\87à¸\81ารà¸\9eีà¹\88à¸\99à¹\89อà¸\87",
        "search-interwiki-default": "ผลลัพธ์จาก $1:",
        "search-interwiki-more": "(เพิ่มเติม)",
+       "search-interwiki-more-results": "ดูผลการค้นหาเพิ่ม",
        "search-relatedarticle": "สัมพันธ์",
        "searchrelated": "สัมพันธ์",
        "searchall": "ทั้งหมด",
        "prefs-help-prefershttps": "การตั้งค่านี้จะมีผลเมื่อคุณล็อกอินครั้งถัดไป",
        "prefswarning-warning": "คุณเปลี่ยนแปลงการตั้งค่าของคุณที่ยังไม่ได้บันทึก\nหากคุณออกจากหน้านี้โดยไม่คลิก \"$1\" จะไม่ปรับการตั้งค่าของคุณ",
        "prefs-tabs-navigation-hint": "แนะนำ: คุณสามารถใช้แป้นลูกศรซ้ายและขวาเพื่อนำทางระหว่างแถบในรายการแถบได้",
-       "userrights": "à¸\81ารà¸\9aริหารสิà¸\97à¸\98ิà¸\9cูà¹\89à¹\83à¸\8aà¹\89",
+       "userrights": "สิทธิผู้ใช้",
        "userrights-lookup-user": "เลือกผู้ใช้",
        "userrights-user-editname": "ใส่ชื่อผู้ใช้:",
        "editusergroup": "โหลดกลุ่มผู้ใช้",
        "userrights-expiry-current": "หมดอายุ $1",
        "userrights-expiry-none": "ไม่มีวันหมดอายุ",
        "userrights-expiry": "หมดอายุ:",
+       "userrights-expiry-othertime": "เวลาอื่น:",
+       "userrights-expiry-options": "1 วัน:1 day,1 สัปดาห์:1 week,1 เดือน:1 month,3 เดือน:3 months,6 เดือน:6 months,1 ปี:1 year",
        "userrights-conflict": "พบการเปลี่ยนแปลงสิทธิผู้ใช้ขัดกัน! โปรดทบทวนและยืนยันการเปลี่ยนแปลงของคุณ",
        "group": "กลุ่ม:",
        "group-user": "ผู้ใช้",
        "grant-editpage": "แก้ไขหน้านี้",
        "grant-editprotected": "แก้ไขหน้าที่ถูกล็อก",
        "grant-highvolume": "การแก้ไขในปริมาณสูง",
+       "grant-oversight": "ซ่อนผู้ใช้ และ ยับยั้งรุ่นปรับปรุง",
        "grant-patrol": "ลาดตระเวนตรวจการเปลี่ยนแปลงหน้าต่าง ๆ",
        "grant-privateinfo": "เข้าถึงข้อมูลส่วนบุคคล",
        "grant-protect": "ล็อกและปลดล็อกหน้าต่าง ๆ",
        "recentchanges-legend-newpage": "{{int:recentchanges-label-newpage}} (ดูเพิ่มที่ [[Special:NewPages|รายชื่อหน้าใหม่]])",
        "recentchanges-submit": "แสดง",
        "rcfilters-activefilters": "ตัวกรองที่ทำงาน",
-       "rcfilters-quickfilters": "การตั้งค่าตัวกรองที่บันทึกไว้",
+       "rcfilters-advancedfilters": "ตัวกรองขั้นสูง",
+       "rcfilters-quickfilters": "ตัวกรองที่บันทึกไว้",
+       "rcfilters-quickfilters-placeholder-title": "ยังไม่มีลิงก์ที่บันทึกไว้",
+       "rcfilters-savedqueries-defaultlabel": "ตัวกรองที่บันทึกไว้",
+       "rcfilters-savedqueries-rename": "เปลี่ยนชื่อ",
+       "rcfilters-savedqueries-setdefault": "ตั้งเป็นค่าปริยาย",
+       "rcfilters-savedqueries-unsetdefault": "ลบค่าปริยาย",
+       "rcfilters-savedqueries-remove": "ลบออก",
        "rcfilters-savedqueries-new-name-label": "ชื่อ",
-       "rcfilters-savedqueries-apply-label": "บันทึกการตั้งค่า",
+       "rcfilters-savedqueries-new-name-placeholder": "อธิบายจุดประสงค์ของตัวกรอง",
+       "rcfilters-savedqueries-apply-label": "สร้างตัวกรอง",
        "rcfilters-savedqueries-cancel-label": "ยกเลิก",
        "rcfilters-savedqueries-add-new-title": "บันทึกการตั้งค่าตัวกรองปัจจุบัน",
        "rcfilters-restore-default-filters": "คืนค่าตัวกรองปริยาย",
        "rcfilters-clear-all-filters": "ล้างตัวกรองทั้งหมด",
+       "rcfilters-search-placeholder": "กรองปรับปรุงล่าสุด (เรียกดูหรือเริ่มพิมพ์)",
        "rcfilters-invalid-filter": "ตัวกรองไม่ถูกต้อง",
        "rcfilters-filterlist-title": "ตัวกรอง",
+       "rcfilters-filterlist-whatsthis": "นี้คืออะไร?",
+       "rcfilters-highlightbutton-title": "ผลลัพธ์การเน้นสี",
        "rcfilters-highlightmenu-title": "เลือกสี",
+       "rcfilters-highlightmenu-help": "เลือกสีสำหรับเน้นการแสดงคุณสมบัตินี้",
        "rcfilters-filterlist-noresults": "ไม่พบตัวกรองใด ๆ",
        "rcfilters-noresults-conflict": "ไม่พบผลลัพธ์ เนื่องจากเงื่อนไขการค้นขัดแย้งกัน",
        "rcfilters-filtergroup-registration": "การลงทะเบียนผู้ใช้",
index 836963e..92f157d 100644 (file)
@@ -69,7 +69,8 @@
                        "MMH",
                        "Олександр",
                        "Similartothissimilartothat",
-                       "Bunyk"
+                       "Bunyk",
+                       "Choomaq"
                ]
        },
        "tog-underline": "Підкреслювання посилань:",
        "changeemail-submit": "Змінити адресу електронної пошти",
        "changeemail-throttled": "Ви зробили надто багато спроб ввійти до системи.\nБудь ласка, зачекайте $1 перед повторною спробою.",
        "changeemail-nochange": "Будь ласка, введіть адресу електронної пошти, відмінну від попередньої.",
-       "resettokens": "Скидання жетонів",
-       "resettokens-text": "Ви можете скинути жетони, що забезпечують доступ до певних особистих даних, пов'язаних тут із вашим обліковим записом.\nВам слід це зробити, якщо ви випадково поділились жетонами з кимось, або якщо ваш обліковий запис було зламано.",
+       "resettokens": "Скидання токенів",
+       "resettokens-text": "Ви можете скинути токени, що забезпечують доступ до певних особистих даних, пов'язаних тут із вашим обліковим записом.\nВам слід це зробити, якщо ви випадково поділились токенами з кимось, або якщо ваш обліковий запис було зламано.",
        "resettokens-no-tokens": "Немає жетонів до скидання.",
-       "resettokens-tokens": "Ð\96еÑ\82они:",
+       "resettokens-tokens": "Токени:",
        "resettokens-token-label": "$1 (поточне значення: $2)",
        "resettokens-watchlist-token": "Маркер стрічки новин (Atom/RSS) щодо [[Special:Watchlist|зміни на сторінці з вашого списку спостереження]]",
-       "resettokens-done": "Ð\96еÑ\82они скинуто.",
-       "resettokens-resetbutton": "Скинути обрані жетони",
+       "resettokens-done": "Токени скинуто.",
+       "resettokens-resetbutton": "Скинути обрані токени",
        "bold_sample": "Жирний текст",
        "bold_tip": "Жирний текст",
        "italic_sample": "Курсив",
index 066206e..1ef5077 100644 (file)
        "edit-gone-missing": "Li pàdje n' a sepou esse rapontieye.\nMotoit k' elle a stî tapêye evoye.",
        "edit-conflict": "Ecramiaedje di candjmints.",
        "edit-no-change": "Vosse sicrijhaedje n' a nén passé, paski rén n' a stî candjî al modêye di dvant.",
+       "postedit-confirmation-created": "Li pådje a stî ahivêye",
        "postedit-confirmation-saved": "vosse candjmint a stî schapé",
        "edit-already-exists": "Li novele pâdje n' a savou esse ahivêye, ca cisse pâdje la egzistêye dedja.",
        "editwarning-warning": "Cwiter cisse pådje ci vos frè piede tos les candjmints ki vos avoz fwait.\nSi vos estoz elodjî, vos ploz dismete cist adviertixhmint ci dins l' linwete «Boesse di tecse» di vos preferinces.",
index fffb4fa..8556531 100644 (file)
        "anontalk": "Waxtaan ak bii IP",
        "navigation": "Joowiin",
        "and": "&#32;ak",
-       "qbfind": "Seet",
-       "qbbrowse": "Lemmi",
-       "qbedit": "Soppi",
-       "qbpageoptions": "Xëtuw tànneef",
-       "qbmyoptions": "Samay tànneef",
        "faq": "Laaj yi ëpp",
-       "faqpage": "Project:FAQ",
        "actions": "Jëf",
        "namespaces": "Barabu tur",
        "variants": "Wuute",
        "edit": "Soppi",
        "create": "Sos",
        "create-local": "Yokk faramfàcceb barab bii",
-       "editthispage": "Soppi xët wii",
-       "create-this-page": "Sos wii xët",
        "delete": "Far",
-       "deletethispage": "Far wii xët",
        "undelete_short": "Delloowaat {{PLURAL:$1|1 coppite| $1 ciy coppite}}",
        "protect": "Aar",
        "protect_change": "soppi",
-       "protectthispage": "Aar wii xët",
        "unprotect": "Aaradi",
-       "unprotectthispage": "Aaradil wii xët",
        "newpage": "Xët wu bees",
-       "talkpage": "Xëtu waxtaanuwaay",
        "talkpagelinktext": "Waxtaan",
        "specialpage": "Xëtu jagleel",
        "personaltools": "Samay jumtukaay",
-       "articlepage": "Gis jukki bi",
        "talk": "Waxtaan",
        "views": "Wone yi",
        "toolbox": "Boyotu jumtukaay",
-       "userpage": "Xëtu jëfandikukat",
-       "projectpage": "Wone xëtu sémb wi",
        "imagepage": "Wone xëtu dencukaay bi",
        "mediawikipage": "Wone xëtu bataaxal bi",
        "templatepage": "Wone xëtu royuwaay bi",
        "editlink": "soppi",
        "viewsourcelink": "xool gongikuwaayam",
        "editsectionhint": "Soppi bii xaaj : $1",
-       "toc": "Ëmbiit",
+       "toc": "Ëmbéef",
        "showtoc": "Wone",
        "hidetoc": "Nëbb",
        "thisisdeleted": "Da ngaa bëgg a wone walla delloowaat $1 ?",
        "logdelete-selected": "{{PLURAL:$1|Xew-xewu yéenekaay bi falu|Xew-xewi yéenekaay yi falu}}:",
        "revdelete-legend": "Taxawal ay digal ci sumb yi ñu far:",
        "revdelete-hide-text": "Nëbb mbindum sumb bi",
-       "revdelete-hide-image": "Nëbb ëmbiitu dencukaay bi",
+       "revdelete-hide-image": "Nëbb ëmbéefu dencukaay bi",
        "revdelete-hide-name": "Nëbb jëf ji ak njeexitam",
        "revdelete-hide-comment": "Nëbb saraay coppite gi",
        "revdelete-hide-user": "Nëbb tur walla màkkaanu IP bu soppikat bi",
        "viewprevnext": "Xool ($1 {{int:pipe-separator}} $2) ($3).",
        "searchmenu-exists": "'''wenn xët wu tudd « [[:$1]] » moo am ci bii wiki'''",
        "searchmenu-new": "<strong>Sosal xët wii di « [[:$1|$1]] » ci bii wiki !</strong>\n{{PLURAL:$2|0=|Xoolal itam xët wees gis ak sa ceet gi.|Xoolal itam ngértey ceet gi.}}",
-       "searchprofile-articles": "Xëti ëmbiit",
+       "searchprofile-articles": "Xëti ëmbéef",
        "searchprofile-images": "Barixibaarukaay",
        "searchprofile-everything": "Lépp",
        "searchprofile-advanced": "Ceet gu xóot",
        "filedelete-reason-otherlist": "yeneeni ngirte",
        "filedelete-reason-dropdown": "* Ngirtey far yi ëpp\n** jalgati aqi aji-sos\n** dencukaay bees ñaaral",
        "filedelete-edit-reasonlist": "Soppi ngirtey far gi",
-       "mimesearch": "Seet ci xeeti ëmbiit yii di MIME",
+       "mimesearch": "Seet ci xeeti ëmbéef yu MIME",
        "mimesearch-summary": "Xët wii dina la may nga man segg xeeti dencukaay yu MIME.\nDuggalal baat bi ci pax mi  ''xeet/''ron-xeet'', ci misaal <code>image/jpeg</code>.",
        "mimetype": "Xeet wu MIME :",
        "download": "yebbi",
        "statistics-header-edits": "Limbari ñeel coppite yi",
        "statistics-header-users": "Limbari ñeel jëfandikukat yi",
        "statistics-header-hooks": "Yeneen limbari",
-       "statistics-articles": "Xëti ëmbiit",
+       "statistics-articles": "Xëti ëmbéef",
        "statistics-pages": "Xët",
        "statistics-pages-desc": "Xët yépp yi ci wiki bi, xëti waxtaanuwaay yi, jubluwaat yi, añs.",
        "statistics-files": "Xët yees yeb fii",
index d0d01e5..667c4a5 100644 (file)
        "rcfilters-view-namespaces-tooltip": "按名字空间过滤结果",
        "rcfilters-view-tags-tooltip": "按编辑标签过滤结果",
        "rcfilters-view-return-to-default-tooltip": "返回主过滤菜单",
+       "rcfilters-liveupdates-button": "在线更新",
        "rcnotefrom": "下面{{PLURAL:$5|是}}<strong>$3 $4</strong>之后的更改(最多显示<strong>$1</strong>个)。",
        "rclistfromreset": "重置时间选择",
        "rclistfrom": "显示$3 $2之后的新更改",
index d005629..43041a4 100644 (file)
@@ -105,7 +105,7 @@ class MWDocGen extends Maintenance {
                        $this->excludePatterns[] = 'extensions';
                }
 
-               $this->doDot = `which dot`;
+               $this->doDot = shell_exec( 'which dot' );
                $this->doMan = $this->hasOption( 'generate-man' );
        }
 
index e00a55d..da2d850 100644 (file)
@@ -24,6 +24,8 @@
 
 require __DIR__ . '/Maintenance.php';
 
+use MediaWiki\MediaWikiServices;
+
 /**
  * Maintenance script to remove old objects from the parser cache.
  *
@@ -67,7 +69,7 @@ class PurgeParserCache extends Maintenance {
                $this->output( "Deleting objects expiring before " .
                        $english->timeanddate( $date ) . "\n" );
 
-               $pc = wfGetParserCacheStorage();
+               $pc = MediaWikiServices::getInstance()->getParserCache()->getCacheStorage();
                $success = $pc->deleteObjectsExpiringBefore( $date, [ $this, 'showProgressAndWait' ] );
                if ( !$success ) {
                        $this->error( "\nCannot purge this kind of parser cache.", 1 );
index 66c13cd..fe3c910 100644 (file)
@@ -24,6 +24,7 @@
     "karma-firefox-launcher": "1.0.1",
     "karma-mocha-reporter": "2.2.3",
     "karma-qunit": "1.0.0",
+    "nodemw": "0.10.1",
     "qunitjs": "1.23.1",
     "stylelint-config-wikimedia": "0.4.1",
     "wdio-junit-reporter": "0.2.0",
index a02e1a8..92a218a 100644 (file)
--- a/phpcs.xml
+++ b/phpcs.xml
@@ -43,6 +43,7 @@
                <exclude-pattern>*/includes/StubObject.php</exclude-pattern>
        </rule>
        <file>.</file>
+       <arg name="bootstrap" value="vendor/mediawiki/mediawiki-codesniffer/utils/bootstrap-ci.php"/>
        <arg name="encoding" value="UTF-8"/>
        <arg name="extensions" value="php,php5,inc,sample"/>
        <exclude-pattern>node_modules/</exclude-pattern>
index 12f482f..a8cf91d 100644 (file)
@@ -1789,6 +1789,7 @@ return [
                        'resources/src/mediawiki.rcfilters/ui/mw.rcfilters.ui.FormWrapperWidget.js',
                        'resources/src/mediawiki.rcfilters/ui/mw.rcfilters.ui.FilterItemHighlightButton.js',
                        'resources/src/mediawiki.rcfilters/ui/mw.rcfilters.ui.HighlightColorPickerWidget.js',
+                       'resources/src/mediawiki.rcfilters/ui/mw.rcfilters.ui.LiveUpdateButtonWidget.js',
                        'resources/src/mediawiki.rcfilters/mw.rcfilters.HighlightColors.js',
                        'resources/src/mediawiki.rcfilters/mw.rcfilters.init.js',
                ],
@@ -1812,6 +1813,7 @@ return [
                        'resources/src/mediawiki.rcfilters/styles/mw.rcfilters.ui.SavedLinksListWidget.less',
                        'resources/src/mediawiki.rcfilters/styles/mw.rcfilters.ui.SavedLinksListItemWidget.less',
                        'resources/src/mediawiki.rcfilters/styles/mw.rcfilters.ui.SaveFiltersPopupButtonWidget.less',
+                       'resources/src/mediawiki.rcfilters/styles/mw.rcfilters.ui.LiveUpdateButtonWidget.less',
                ],
                'skinStyles' => [
                        'monobook' => [
@@ -1859,6 +1861,7 @@ return [
                        'rcfilters-view-namespaces-tooltip',
                        'rcfilters-view-tags-tooltip',
                        'rcfilters-view-return-to-default-tooltip',
+                       'rcfilters-liveupdates-button',
                        'blanknamespace',
                        'namespaces',
                        'invert',
@@ -1877,6 +1880,7 @@ return [
                        'oojs-ui.styles.icons-interactions',
                        'oojs-ui.styles.icons-content',
                        'oojs-ui.styles.icons-layout',
+                       'oojs-ui.styles.icons-media',
                ],
        ],
        'mediawiki.special' => [
@@ -2030,12 +2034,6 @@ return [
        'mediawiki.special.movePage.styles' => [
                'styles' => 'resources/src/mediawiki.special/mediawiki.special.movePage.css',
        ],
-       'mediawiki.special.newFiles' => [
-               'scripts' => 'resources/src/mediawiki.special/mediawiki.special.newFiles.js',
-               'dependencies' => [
-                       'mediawiki.widgets.datetime',
-               ],
-       ],
        'mediawiki.special.pageLanguage' => [
                'scripts' => 'resources/src/mediawiki.special/mediawiki.special.pageLanguage.js',
                'dependencies' => [
index d6ce734..c839a13 100644 (file)
@@ -28,6 +28,7 @@
        /**
         * @event update
         * @param {jQuery|string} changesListContent
+        * @param {jQuery} $fieldset
         *
         * The list of change is now up to date
         */
index 27387c9..5858566 100644 (file)
                this._trackHighlight( 'clear', filterName );
        };
 
+       /**
+        * Enable or disable live updates.
+        * @param {boolean} enable True to enable, false to disable
+        */
+       mw.rcfilters.Controller.prototype.toggleLiveUpdate = function ( enable ) {
+               if ( enable && !this.liveUpdateTimeout ) {
+                       this._scheduleLiveUpdate();
+               } else if ( !enable && this.liveUpdateTimeout ) {
+                       clearTimeout( this.liveUpdateTimeout );
+                       this.liveUpdateTimeout = null;
+               }
+       };
+
+       /**
+        * Set a timeout for the next live update.
+        * @private
+        */
+       mw.rcfilters.Controller.prototype._scheduleLiveUpdate = function () {
+               this.liveUpdateTimeout = setTimeout( this._doLiveUpdate.bind( this ), 3000 );
+       };
+
+       /**
+        * Perform a live update.
+        * @private
+        */
+       mw.rcfilters.Controller.prototype._doLiveUpdate = function () {
+               var controller = this;
+               this.updateChangesList( {}, true )
+                       .always( function () {
+                               if ( controller.liveUpdateTimeout ) {
+                                       // Live update was not disabled in the meantime
+                                       controller._scheduleLiveUpdate();
+                               }
+                       } );
+       };
+
        /**
         * Save the current model state as a saved query
         *
         * Update the list of changes and notify the model
         *
         * @param {Object} [params] Extra parameters to add to the API call
+        * @param {boolean} [isLiveUpdate] Don't update the URL or invalidate the changes list
+        * @return {jQuery.Promise} Promise that is resolved when the update is complete
         */
-       mw.rcfilters.Controller.prototype.updateChangesList = function ( params ) {
-               this._updateURL( params );
-               this.changesListModel.invalidate();
-               this._fetchChangesList()
+       mw.rcfilters.Controller.prototype.updateChangesList = function ( params, isLiveUpdate ) {
+               if ( !isLiveUpdate ) {
+                       this._updateURL( params );
+                       this.changesListModel.invalidate();
+               }
+               return this._fetchChangesList()
                        .then(
                                // Success
                                function ( pieces ) {
index 20a78d0..89acdc0 100644 (file)
                }
        }
 
+       .mw-changeslist-legend {
+               background-color: #fff;
+       }
+
        // Correction for Enhanced RC
        // This is outside the scope of the 'highlights' wrapper
        table.mw-enhanced-rc {
index 1a29459..5aa866d 100644 (file)
@@ -7,4 +7,8 @@
        &-viewToggleButtons {
                margin-top: 1em;
        }
+
+       &-bottom {
+               margin-top: 1em;
+       }
 }
diff --git a/resources/src/mediawiki.rcfilters/styles/mw.rcfilters.ui.LiveUpdateButtonWidget.less b/resources/src/mediawiki.rcfilters/styles/mw.rcfilters.ui.LiveUpdateButtonWidget.less
new file mode 100644 (file)
index 0000000..63ea264
--- /dev/null
@@ -0,0 +1,37 @@
+.mw-rcfilters-ui-liveUpdateButtonWidget {
+       &.oo-ui-toggleWidget-on {
+               position: relative;
+               overflow: hidden;
+               &:after {
+                       content: '';
+                       mix-blend-mode: screen;
+                       position: absolute;
+                       width: 1.875em;
+                       height: 1.875em;
+                       top: 1.875em / 4;
+                       left: 0.46875em;
+                       background: rgba( 51, 102, 204, 0.5 );
+                       border-radius: 100%;
+                       transform-origin: 50% 50%;
+                       opacity: 0;
+                       animation: ripple 1.2s ease-out infinite;
+                       animation-delay: 1s;
+               }
+       }
+}
+
+@keyframes ripple {
+       0%,
+       35% {
+               transform: scale( 0 );
+               opacity: 1;
+       }
+       50% {
+               transform: scale( 1.5 );
+               opacity: 0.8;
+       }
+       100% {
+               opacity: 0;
+               transform: scale( 4 );
+       }
+}
index c7754be..843acce 100644 (file)
         * @param {jQuery|string} $content The content of the updated changes list
         */
        mw.rcfilters.ui.ChangesListWrapperWidget.prototype.setupHighlightContainers = function ( $content ) {
-               var $highlights = $( '<div>' )
+               var uri = new mw.Uri(),
+                       $highlights = $( '<div>' )
                                .addClass( 'mw-rcfilters-ui-changesListWrapperWidget-highlights' )
                                .append(
                                        $( '<div>' )
                        );
                } );
 
-               if ( Number( mw.user.options.get( 'usenewrc' ) ) ) {
+               if (
+                       ( uri.query.enhanced !== undefined && Number( uri.query.enhanced ) ) ||
+                       ( uri.query.enhanced === undefined && Number( mw.user.options.get( 'usenewrc' ) ) )
+               ) {
                        // Enhanced RC
                        $content.find( 'td.mw-enhanced-rc' )
                                .parent()
index ebef62f..a748063 100644 (file)
@@ -14,6 +14,7 @@
         * @cfg {jQuery} [$overlay] A jQuery object serving as overlay for popups
         */
        mw.rcfilters.ui.FilterWrapperWidget = function MwRcfiltersUiFilterWrapperWidget( controller, model, savedQueriesModel, config ) {
+               var $bottom;
                config = config || {};
 
                // Parent
                        { $overlay: this.$overlay }
                );
 
+               this.liveUpdateButton = new mw.rcfilters.ui.LiveUpdateButtonWidget(
+                       this.controller
+               );
+
                // Initialize
                this.$element
                        .addClass( 'mw-rcfilters-ui-filterWrapperWidget' );
 
                }
 
+               $bottom = $( '<div>' )
+                       .addClass( 'mw-rcfilters-ui-filterWrapperWidget-bottom' );
+
+               if ( mw.config.get( 'wgStructuredChangeFiltersEnableLiveUpdate' ) ) {
+                       $bottom.append( this.liveUpdateButton.$element );
+               }
+
                this.$element.append(
-                       this.filterTagWidget.$element
+                       this.filterTagWidget.$element,
+                       $bottom
                );
        };
 
diff --git a/resources/src/mediawiki.rcfilters/ui/mw.rcfilters.ui.LiveUpdateButtonWidget.js b/resources/src/mediawiki.rcfilters/ui/mw.rcfilters.ui.LiveUpdateButtonWidget.js
new file mode 100644 (file)
index 0000000..8bab981
--- /dev/null
@@ -0,0 +1,42 @@
+( function ( mw ) {
+       /**
+        * Widget for toggling live updates
+        *
+        * @extends OO.ui.ToggleButtonWidget
+        *
+        * @constructor
+        * @param {mw.rcfilters.Controller} controller
+        * @param {Object} config Configuration object
+        */
+       mw.rcfilters.ui.LiveUpdateButtonWidget = function MwRcfiltersUiLiveUpdateButtonWidget( controller, config ) {
+               config = config || {};
+
+               // Parent
+               mw.rcfilters.ui.LiveUpdateButtonWidget.parent.call( this, $.extend( {
+                       icon: 'play',
+                       label: mw.message( 'rcfilters-liveupdates-button' ).text()
+               } ), config );
+
+               this.controller = controller;
+
+               // Events
+               this.connect( this, { change: 'onChange' } );
+
+               this.$element.addClass( 'mw-rcfilters-ui-liveUpdateButtonWidget' );
+       };
+
+       /* Initialization */
+
+       OO.inheritClass( mw.rcfilters.ui.LiveUpdateButtonWidget, OO.ui.ToggleButtonWidget );
+
+       /* Methods */
+
+       /**
+        * Respond to the button being toggled.
+        * @param {boolean} enable Whether the button is now pressed/enabled
+        */
+       mw.rcfilters.ui.LiveUpdateButtonWidget.prototype.onChange = function ( enable ) {
+               this.controller.toggleLiveUpdate( enable );
+       };
+
+}( mediaWiki ) );
index d9a1822..2bb0fdf 100644 (file)
 
                        this.emit( 'itemVisibilityChange' );
                }
+
+               this.noResults.toggle( !this.getItems().some( function ( item ) {
+                       return item.isVisible();
+               } ) );
        };
 
        /**
index a484350..d6b06e6 100644 (file)
@@ -16,11 +16,11 @@ table.mw-enhanced-rc td {
 
 td.mw-enhanced-rc {
        white-space: nowrap;
-       font-family: monospace;
+       font-family: monospace, monospace;
 }
 
 .mw-enhanced-rc-time {
-       font-family: monospace;
+       font-family: monospace, monospace;
 }
 
 table.mw-enhanced-rc td.mw-enhanced-rc-nested {
diff --git a/resources/src/mediawiki.special/mediawiki.special.newFiles.js b/resources/src/mediawiki.special/mediawiki.special.newFiles.js
deleted file mode 100644 (file)
index 5e86eaa..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-/*!
- * JavaScript for Special:NewFiles
- */
-( function ( mw, $ ) {
-       $( function () {
-               var start = mw.widgets.datetime.DateTimeInputWidget.static.infuse( 'mw-input-start' ),
-                       end = mw.widgets.datetime.DateTimeInputWidget.static.infuse( 'mw-input-end' ),
-                       temp;
-
-               // If the start date comes after the end date, swap the two values.
-               // This swap is already done internally when the form is submitted with a start date that
-               // comes after the end date, but this swap makes the change visible in the HTMLForm.
-               if ( start.getValue() !== '' &&
-                       end.getValue() !== '' &&
-                       start.getValue() > end.getValue() ) {
-                       temp = start.getValue();
-                       start.setValue( end.getValue() );
-                       end.setValue( temp );
-               }
-       } );
-}( mediaWiki, jQuery ) );
index abe7c46..d94a983 100644 (file)
        // Progressive buttons
        //
        // Use progressive buttons for actions which lead to a next step in the process.
-       // .mw-ui-constructive is deprecated; consolidated with `progressive`, see T110555
        //
        // Markup:
        // <div>
        // </div>
        //
        // Styleguide 2.1.1.
-       &.mw-ui-progressive,
-       &.mw-ui-constructive {
+       &.mw-ui-progressive {
                .button-colors-primary( @colorProgressive, @colorProgressiveHighlight, @colorProgressiveActive );
 
                &.mw-ui-quiet {
index 520b9ec..9814142 100644 (file)
                 * @param {Object} data Other upload options, see action=upload API docs for more
                 * @param {number} [chunkSize] Size (in bytes) per chunk (default: 5MB)
                 * @param {number} [chunkRetries] Amount of times to retry a failed chunk (default: 1)
-                * @returns {jQuery.Promise}
+                * @return {jQuery.Promise}
                 */
                chunkedUpload: function ( file, data, chunkSize, chunkRetries ) {
                        var start, end, promise, next, active,
                 * @param {File} file
                 * @param {number} start
                 * @param {number} stop
-                * @returns {Blob}
+                * @return {Blob}
                 */
                slice: function ( file, start, stop ) {
                        if ( file.mozSlice ) {
                        }
                },
 
+               /**
+                * This function will handle how uploads to stash (via uploadToStash or
+                * chunkedUploadToStash) are resolved/rejected.
+                *
+                * After a successful stash, it'll resolve with a callback which, when
+                * called, will finalize the upload in stash (with the given data, or
+                * with additional/conflicting data)
+                *
+                * A failed stash can still be recovered from as long as 'filekey' is
+                * present. In that case, it'll also resolve with the callback to
+                * finalize the upload (all warnings are then ignored.)
+                * Otherwise, it'll just reject as you'd expect, with code & result.
+                *
+                * @private
+                * @param {jQuery.Promise} uploadPromise
+                * @param {Object} data
+                * @return {jQuery.Promise}
+                * @return {Function} return.finishUpload Call this function to finish the upload.
+                * @return {Object} return.finishUpload.data Additional data for the upload.
+                * @return {jQuery.Promise} return.finishUpload.return API promise for the final upload
+                * @return {Object} return.finishUpload.return.data API return value for the final upload
+                */
+               finishUploadToStash: function ( uploadPromise, data ) {
+                       var filekey,
+                               api = this;
+
+                       function finishUpload( moreData ) {
+                               return api.uploadFromStash( filekey, $.extend( data, moreData ) );
+                       }
+
+                       return uploadPromise.then(
+                               function ( result ) {
+                                       filekey = result.upload.filekey;
+                                       return finishUpload;
+                               },
+                               function ( errorCode, result ) {
+                                       if ( result && result.upload && result.upload.filekey ) {
+                                               // Ignore any warnings if 'filekey' was returned, that's all we care about
+                                               filekey = result.upload.filekey;
+                                               return $.Deferred().resolve( finishUpload );
+                                       }
+                                       return $.Deferred().reject( errorCode, result );
+                               }
+                       );
+               },
+
                /**
                 * Upload a file to the stash.
                 *
                 * @param {File|HTMLInputElement} file
                 * @param {Object} [data]
                 * @return {jQuery.Promise}
-                * @return {Function} return.finishStashUpload Call this function to finish the upload.
-                * @return {Object} return.finishStashUpload.data Additional data for the upload.
-                * @return {jQuery.Promise} return.finishStashUpload.return API promise for the final upload
-                * @return {Object} return.finishStashUpload.return.data API return value for the final upload
+                * @return {Function} return.finishUpload Call this function to finish the upload.
+                * @return {Object} return.finishUpload.data Additional data for the upload.
+                * @return {jQuery.Promise} return.finishUpload.return API promise for the final upload
+                * @return {Object} return.finishUpload.return.data API return value for the final upload
                 */
                uploadToStash: function ( file, data ) {
-                       var filekey,
-                               api = this;
+                       var promise;
 
                        if ( !data.filename ) {
                                throw new Error( 'Filename not included in file data.' );
                        }
 
-                       function finishUpload( moreData ) {
-                               return api.uploadFromStash( filekey, $.extend( data, moreData ) );
+                       promise = this.upload( file, { stash: true, filename: data.filename } );
+
+                       return this.finishUploadToStash( promise, data );
+               },
+
+               /**
+                * Upload a file to the stash, in chunks.
+                *
+                * This function will return a promise, which when resolved, will pass back a function
+                * to finish the stash upload.
+                *
+                * @see #method-uploadToStash
+                * @param {File|HTMLInputElement} file
+                * @param {Object} [data]
+                * @param {number} [chunkSize] Size (in bytes) per chunk (default: 5MB)
+                * @param {number} [chunkRetries] Amount of times to retry a failed chunk (default: 1)
+                * @return {jQuery.Promise}
+                * @return {Function} return.finishUpload Call this function to finish the upload.
+                * @return {Object} return.finishUpload.data Additional data for the upload.
+                * @return {jQuery.Promise} return.finishUpload.return API promise for the final upload
+                * @return {Object} return.finishUpload.return.data API return value for the final upload
+                */
+               chunkedUploadToStash: function ( file, data, chunkSize, chunkRetries ) {
+                       var promise;
+
+                       if ( !data.filename ) {
+                               throw new Error( 'Filename not included in file data.' );
                        }
 
-                       return this.upload( file, { stash: true, filename: data.filename } ).then(
-                               function ( result ) {
-                                       filekey = result.upload.filekey;
-                                       return finishUpload;
-                               },
-                               function ( errorCode, result ) {
-                                       if ( result && result.upload && result.upload.filekey ) {
-                                               // Ignore any warnings if 'filekey' was returned, that's all we care about
-                                               filekey = result.upload.filekey;
-                                               return $.Deferred().resolve( finishUpload );
-                                       }
-                                       return $.Deferred().reject( errorCode, result );
-                               }
+                       promise = this.chunkedUpload(
+                               file,
+                               { stash: true, filename: data.filename },
+                               chunkSize,
+                               chunkRetries
                        );
+
+                       return this.finishUploadToStash( promise, data );
                },
 
                /**
index 02df2a8..7e6cfb6 100644 (file)
 
                this.setState( Upload.State.UPLOADING );
 
-               return this.api.upload( this.getFile(), {
+               return this.api.chunkedUpload( this.getFile(), {
                        watchlist: ( this.getWatchlist() ) ? 1 : undefined,
                        comment: this.getComment(),
                        filename: this.getFilename(),
 
                this.setState( Upload.State.UPLOADING );
 
-               this.stashPromise = this.api.uploadToStash( this.getFile(), {
+               this.stashPromise = this.api.chunkedUploadToStash( this.getFile(), {
                        filename: this.getFilename()
                } ).then( function ( finishStash ) {
                        upload.setState( Upload.State.STASHED );
index d172a39..7a835a8 100644 (file)
                         *     is used)
                         *   - load-callback: exception thrown by user callback
                         *   - module-execute: exception thrown by module code
+                        *   - resolve: failed to sort dependencies for a module in mw.loader.load
                         *   - store-eval: could not evaluate module code cached in localStorage
                         *   - store-localstorage-init: localStorage or JSON parse error in mw.loader.store.init
                         *   - store-localstorage-json: JSON conversion error in mw.loader.store.set
                                return resolved;
                        }
 
+                       /**
+                        * Like #resolve(), except it will silently ignore modules that
+                        * are missing or have missing dependencies.
+                        *
+                        * @private
+                        * @param {string[]} modules Array of string module names
+                        * @return {Array} List of dependencies.
+                        */
+                       function resolveStubbornly( modules ) {
+                               var i, saved, resolved = [];
+                               for ( i = 0; i < modules.length; i++ ) {
+                                       saved = resolved.slice();
+                                       try {
+                                               sortDependencies( modules[ i ], resolved );
+                                       } catch ( err ) {
+                                               // This module is unknown or has unknown dependencies.
+                                               // Undo any incomplete resolutions made and keep going.
+                                               resolved = saved;
+                                               mw.track( 'resourceloader.exception', {
+                                                       exception: err,
+                                                       source: 'resolve'
+                                               } );
+                                       }
+                               }
+                               return resolved;
+                       }
+
                        /**
                         * Load and execute a script.
                         *
                                /**
                                 * Load an external script or one or more modules.
                                 *
+                                * This method takes a list of unrelated modules. Use cases:
+                                *
+                                * - A web page will be composed of many different widgets. These widgets independently
+                                *   queue their ResourceLoader modules (`OutputPage::addModules()`). If any of them
+                                *   have problems, or are no longer known (e.g. cached HTML), the other modules
+                                *   should still be loaded.
+                                * - This method is used for preloading, which must not throw. Later code that
+                                *   calls #using() will handle the error.
+                                *
                                 * @param {string|Array} modules Either the name of a module, array of modules,
                                 *  or a URL of an external script or style
                                 * @param {string} [type='text/javascript'] MIME type to use if calling with a URL of an
                                                modules = [ modules ];
                                        }
 
-                                       // Filter out undefined modules, otherwise resolve() will throw
-                                       // an exception for trying to load an undefined module.
-                                       // Undefined modules are acceptable here in load(), because load() takes
-                                       // an array of unrelated modules, whereas the modules passed to
-                                       // using() are related and must all be loaded.
+                                       // Filter out top-level modules that are unknown or failed to load before.
                                        filtered = $.grep( modules, function ( module ) {
                                                var state = mw.loader.getState( module );
                                                return state !== null && state !== 'error' && state !== 'missing';
                                        } );
-
-                                       if ( filtered.length === 0 ) {
-                                               return;
-                                       }
-                                       // Resolve entire dependency map
-                                       filtered = resolve( filtered );
+                                       // Resolve remaining list using the known dependency tree.
+                                       // This also filters out modules with unknown dependencies. (T36853)
+                                       filtered = resolveStubbornly( filtered );
                                        // If all modules are ready, or if any modules have errors, nothing to be done.
                                        if ( allReady( filtered ) || anyFailed( filtered ) ) {
                                                return;
                                        }
+                                       if ( filtered.length === 0 ) {
+                                               return;
+                                       }
                                        // Some modules are not yet ready, add to module load queue.
                                        enqueue( filtered, undefined, undefined );
                                },
index a373142..9255733 100644 (file)
@@ -34,6 +34,18 @@ use Wikimedia\TestingAccessWrapper;
  * @ingroup Testing
  */
 class ParserTestRunner {
+
+       /**
+        * MediaWiki core parser test files, paths
+        * will be prefixed with __DIR__ . '/'
+        *
+        * @var array
+        */
+       private static $coreTestFiles = [
+               'parserTests.txt',
+               'extraParserTests.txt',
+       ];
+
        /**
         * @var bool $useTemporaryTables Use temporary tables for the temporary database
         */
@@ -147,6 +159,43 @@ class ParserTestRunner {
                }
        }
 
+       /**
+        * Get list of filenames to extension and core parser tests
+        *
+        * @return array
+        */
+       public static function getParserTestFiles() {
+               global $wgParserTestFiles;
+
+               // Add core test files
+               $files = array_map( function( $item ) {
+                       return __DIR__ . "/$item";
+               }, self::$coreTestFiles );
+
+               // Plus legacy global files
+               $files = array_merge( $files, $wgParserTestFiles );
+
+               // Auto-discover extension parser tests
+               $registry = ExtensionRegistry::getInstance();
+               foreach ( $registry->getAllThings() as $info ) {
+                       $dir = dirname( $info['path'] ) . '/tests/parser';
+                       if ( !file_exists( $dir ) ) {
+                               continue;
+                       }
+                       $dirIterator = new RecursiveIteratorIterator(
+                               new RecursiveDirectoryIterator( $dir )
+                       );
+                       foreach ( $dirIterator as $fileInfo ) {
+                               /** @var SplFileInfo $fileInfo */
+                               if ( substr( $fileInfo->getFilename(), -4 ) === '.txt' ) {
+                                       $files[] = $fileInfo->getPathname();
+                               }
+                       }
+               }
+
+               return array_unique( $files );
+       }
+
        public function getRecorder() {
                return $this->recorder;
        }
@@ -266,7 +315,10 @@ class ParserTestRunner {
                $setup['wgSVGConverters'] = [ 'null' => 'echo "1">$output' ];
 
                // Fake constant timestamp
-               Hooks::register( 'ParserGetVariableValueTs', 'ParserTestRunner::getFakeTimestamp' );
+               Hooks::register( 'ParserGetVariableValueTs', function ( &$parser, &$ts ) {
+                       $ts = $this->getFakeTimestamp();
+                       return true;
+               } );
                $teardown[] = function () {
                        Hooks::clear( 'ParserGetVariableValueTs' );
                };
@@ -747,6 +799,7 @@ class ParserTestRunner {
                $context = RequestContext::getMain();
                $user = $context->getUser();
                $options = ParserOptions::newFromContext( $context );
+               $options->setTimestamp( $this->getFakeTimestamp() );
 
                if ( !isset( $opts['wrap'] ) ) {
                        $options->setWrapOutputClass( false );
@@ -774,6 +827,7 @@ class ParserTestRunner {
 
                if ( isset( $opts['pst'] ) ) {
                        $out = $parser->preSaveTransform( $test['input'], $title, $user, $options );
+                       $output = $parser->getOutput();
                } elseif ( isset( $opts['msg'] ) ) {
                        $out = $parser->transformMsg( $test['input'], $options, $title );
                } elseif ( isset( $opts['section'] ) ) {
@@ -824,6 +878,12 @@ class ParserTestRunner {
                        }
                }
 
+               if ( isset( $output ) && isset( $opts['showflags'] ) ) {
+                       $actualFlags = array_keys( TestingAccessWrapper::newFromObject( $output )->mFlags );
+                       sort( $actualFlags );
+                       $out .= "\nflags=" . join( ', ', $actualFlags );
+               }
+
                ScopedCallback::consume( $teardownGuard );
 
                $expected = $test['result'];
@@ -1598,11 +1658,14 @@ class ParserTestRunner {
        }
 
        /**
-        * The ParserGetVariableValueTs hook, used to make sure time-related parser
+        * Fake constant timestamp to make sure time-related parser
         * functions give a persistent value.
+        *
+        * - Parser::getVariableValue (via ParserGetVariableValueTs hook)
+        * - Parser::preSaveTransform (via ParserOptions)
         */
-       static function getFakeTimestamp( &$parser, &$ts ) {
-               $ts = 123; // parsed as '1970-01-01T00:02:03Z'
-               return true;
+       private function getFakeTimestamp() {
+               // parsed as '1970-01-01T00:02:03Z'
+               return 123;
        }
 }
index 1d0867a..2735f93 100644 (file)
@@ -80,7 +80,7 @@ class ParserTestsMaintenance extends Maintenance {
        }
 
        public function execute() {
-               global $wgParserTestFiles, $wgDBtype;
+               global $wgDBtype;
 
                // Cases of weird db corruption were encountered when running tests on earlyish
                // versions of SQLite
@@ -167,7 +167,7 @@ class ParserTestsMaintenance extends Maintenance {
                }
 
                // Default parser tests and any set from extensions or local config
-               $files = $this->getOption( 'file', $wgParserTestFiles );
+               $files = $this->getOption( 'file', ParserTestRunner::getParserTestFiles() );
 
                $norm = $this->hasOption( 'norm' ) ? explode( ',', $this->getOption( 'norm' ) ) : [];
 
index 44bcdff..041b40f 100644 (file)
@@ -10421,11 +10421,13 @@ parsoid={ "modes": ["wt2html","wt2wt"], "normalizePhp": true }
 Magic Word: {{REVISIONID}}
 !! options
 parsoid={ "modes": ["wt2html","wt2wt"], "normalizePhp": true }
+showflags
 !! wikitext
 {{REVISIONID}}
 !! html/*
 <p>1337
 </p>
+flags=vary-revision-id
 !! end
 
 !! test
@@ -13619,17 +13621,34 @@ pre-save transform: Signature expansion
 pst
 !! wikitext
 * ~~~
+* ~~~~
+* ~~~~~
 * <noinclude>~~~</noinclude>
 * <includeonly>~~~</includeonly>
 * <onlyinclude>~~~</onlyinclude>
 !! html/php
 * [[Special:Contributions/127.0.0.1|127.0.0.1]]
+* [[Special:Contributions/127.0.0.1|127.0.0.1]] 00:02, 1 January 1970 (UTC)
+* 00:02, 1 January 1970 (UTC)
 * <noinclude>[[Special:Contributions/127.0.0.1|127.0.0.1]]</noinclude>
 * <includeonly>[[Special:Contributions/127.0.0.1|127.0.0.1]]</includeonly>
 * <onlyinclude>[[Special:Contributions/127.0.0.1|127.0.0.1]]</onlyinclude>
 !! end
 
 
+!! test
+ParserOutput flags from signature expansion (T84843)
+!! options
+pst
+showflags
+!! wikitext
+~~~~
+!! html/php
+[[Special:Contributions/127.0.0.1|127.0.0.1]] 00:02, 1 January 1970 (UTC)
+flags=user-signature
+!! end
+
+
 !! test
 pre-save transform: Signature expansion in nowiki tags (T2093)
 !! options
diff --git a/tests/phpunit/includes/DeprecatedGlobalTest.php b/tests/phpunit/includes/DeprecatedGlobalTest.php
new file mode 100644 (file)
index 0000000..76a4f51
--- /dev/null
@@ -0,0 +1,70 @@
+<?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
+ */
+
+/**
+ * @covers DeprecatedGlobal
+ */
+class DeprecatedGlobalTest extends MediaWikiTestCase {
+       public function testObjectDeStub() {
+               global $wgDummy;
+
+               $wgDummy = new DeprecatedGlobal( 'wgDummy', new HashBagOStuff(), '1.30' );
+               $this->assertInstanceOf( DeprecatedGlobal::class, $wgDummy );
+
+               $this->hideDeprecated( '$wgDummy' );
+               // Trigger de-stubification
+               $wgDummy->get( 'foo' );
+
+               $this->assertInstanceOf( HashBagOStuff::class, $wgDummy );
+       }
+
+       public function testLazyLoad() {
+               global $wgDummyLazy;
+
+               $called = false;
+               $factory = function() use ( &$called ) {
+                       $called = true;
+                       return new HashBagOStuff();
+               };
+
+               $wgDummyLazy = new DeprecatedGlobal( 'wgDummyLazy', $factory, '1.30' );
+               $this->assertInstanceOf( DeprecatedGlobal::class, $wgDummyLazy );
+
+               $this->hideDeprecated( '$wgDummyLazy' );
+               $this->assertFalse( $called );
+               // Trigger de-stubification
+               $wgDummyLazy->get( 'foo' );
+               $this->assertTrue( $called );
+               $this->assertInstanceOf( HashBagOStuff::class, $wgDummyLazy );
+       }
+
+       /**
+        * @expectedException PHPUnit_Framework_Error
+        * @expectedExceptionMessage Use of $wgDummy1 was deprecated in MediaWiki 1.30
+        */
+       public function testWarning() {
+               global $wgDummy1;
+
+               $wgDummy1 = new DeprecatedGlobal( 'wgDummy1', new HashBagOStuff(), '1.30' );
+               $wgDummy1->get( 'foo' );
+               $this->assertInstanceOf( HashBagOStuff::class, $wgDummy1 );
+       }
+
+}
index 3e3fb0f..f4844f8 100644 (file)
@@ -306,6 +306,11 @@ class LinkerTest extends MediaWikiLangTestCase {
                                'foo bar [[Special:BlankPage]]',
                                'enwiki',
                        ],
+                       [
+                               'foo bar <a class="external" rel="nofollow" href="//en.example.org/w/File:Example">Image:Example</a>',
+                               'foo bar [[Image:Example]]',
+                               'enwiki',
+                       ],
                ];
                // @codingStandardsIgnoreEnd
        }
index b4e9626..9eae643 100644 (file)
@@ -303,7 +303,7 @@ class MediaWikiServicesTest extends MediaWikiTestCase {
                        'MainConfig' => [ 'MainConfig', Config::class ],
                        'SiteStore' => [ 'SiteStore', SiteStore::class ],
                        'SiteLookup' => [ 'SiteLookup', SiteLookup::class ],
-                       'StatsdDataFactory' => [ 'StatsdDataFactory', MediawikiStatsdDataFactory::class ],
+                       'StatsdDataFactory' => [ 'StatsdDataFactory', IBufferingStatsdDataFactory::class ],
                        'InterwikiLookup' => [ 'InterwikiLookup', InterwikiLookup::class ],
                        'EventRelayerGroup' => [ 'EventRelayerGroup', EventRelayerGroup::class ],
                        'SearchEngineFactory' => [ 'SearchEngineFactory', SearchEngineFactory::class ],
@@ -317,6 +317,7 @@ class MediaWikiServicesTest extends MediaWikiTestCase {
                        'CryptHKDF' => [ 'CryptHKDF', CryptHKDF::class ],
                        'MediaHandlerFactory' => [ 'MediaHandlerFactory', MediaHandlerFactory::class ],
                        'Parser' => [ 'Parser', Parser::class ],
+                       'ParserCache' => [ 'ParserCache', ParserCache::class ],
                        'GenderCache' => [ 'GenderCache', GenderCache::class ],
                        'LinkCache' => [ 'LinkCache', LinkCache::class ],
                        'LinkRenderer' => [ 'LinkRenderer', LinkRenderer::class ],
index 206655c..2b587db 100644 (file)
@@ -750,6 +750,175 @@ class DatabaseSQLTest extends MediaWikiTestCase {
                ];
        }
 
+       /**
+        * @dataProvider provideUnionConditionPermutations
+        * @covers Database::unionConditionPermutations
+        */
+       public function testUnionConditionPermutations( $params, $expect ) {
+               if ( isset( $params['unionSupportsOrderAndLimit'] ) ) {
+                       $this->database->setUnionSupportsOrderAndLimit( $params['unionSupportsOrderAndLimit'] );
+               }
+
+               $sql = trim( $this->database->unionConditionPermutations(
+                       $params['table'],
+                       $params['vars'],
+                       $params['permute_conds'],
+                       isset( $params['extra_conds'] ) ? $params['extra_conds'] : '',
+                       'FNAME',
+                       isset( $params['options'] ) ? $params['options'] : [],
+                       isset( $params['join_conds'] ) ? $params['join_conds'] : []
+               ) );
+               $this->assertEquals( $expect, $sql );
+       }
+
+       public static function provideUnionConditionPermutations() {
+               return [
+                       // @codingStandardsIgnoreStart Generic.Files.LineLength.TooLong
+                       [
+                               [
+                                       'table' => [ 'table1', 'table2' ],
+                                       'vars' => [ 'field1', 'alias' => 'field2' ],
+                                       'permute_conds' => [
+                                               'field3' => [ 1, 2, 3 ],
+                                               'duplicates' => [ 4, 5, 4 ],
+                                               'empty' => [],
+                                               'single' => [ 0 ],
+                                       ],
+                                       'extra_conds' => 'table2.bar > 23',
+                                       'options' => [
+                                               'ORDER BY' => [ 'field1', 'alias' ],
+                                               'INNER ORDER BY' => [ 'field1', 'field2' ],
+                                               'LIMIT' => 100,
+                                       ],
+                                       'join_conds' => [
+                                               'table2' => [ 'JOIN', 'table1.foo_id = table2.foo_id' ],
+                                       ],
+                               ],
+                               "(SELECT  field1,field2 AS alias  FROM table1 JOIN table2 ON ((table1.foo_id = table2.foo_id))   WHERE field3 = '1' AND duplicates = '4' AND single = '0' AND (table2.bar > 23)  ORDER BY field1,field2 LIMIT 100  ) UNION ALL " .
+                               "(SELECT  field1,field2 AS alias  FROM table1 JOIN table2 ON ((table1.foo_id = table2.foo_id))   WHERE field3 = '1' AND duplicates = '5' AND single = '0' AND (table2.bar > 23)  ORDER BY field1,field2 LIMIT 100  ) UNION ALL " .
+                               "(SELECT  field1,field2 AS alias  FROM table1 JOIN table2 ON ((table1.foo_id = table2.foo_id))   WHERE field3 = '2' AND duplicates = '4' AND single = '0' AND (table2.bar > 23)  ORDER BY field1,field2 LIMIT 100  ) UNION ALL " .
+                               "(SELECT  field1,field2 AS alias  FROM table1 JOIN table2 ON ((table1.foo_id = table2.foo_id))   WHERE field3 = '2' AND duplicates = '5' AND single = '0' AND (table2.bar > 23)  ORDER BY field1,field2 LIMIT 100  ) UNION ALL " .
+                               "(SELECT  field1,field2 AS alias  FROM table1 JOIN table2 ON ((table1.foo_id = table2.foo_id))   WHERE field3 = '3' AND duplicates = '4' AND single = '0' AND (table2.bar > 23)  ORDER BY field1,field2 LIMIT 100  ) UNION ALL " .
+                               "(SELECT  field1,field2 AS alias  FROM table1 JOIN table2 ON ((table1.foo_id = table2.foo_id))   WHERE field3 = '3' AND duplicates = '5' AND single = '0' AND (table2.bar > 23)  ORDER BY field1,field2 LIMIT 100  ) " .
+                               "ORDER BY field1,alias LIMIT 100"
+                       ],
+                       [
+                               [
+                                       'table' => 'foo',
+                                       'vars' => [ 'foo_id' ],
+                                       'permute_conds' => [
+                                               'bar' => [ 1, 2, 3 ],
+                                       ],
+                                       'extra_conds' => [ 'baz' => null ],
+                                       'options' => [
+                                               'NOTALL',
+                                               'ORDER BY' => [ 'foo_id' ],
+                                               'LIMIT' => 25,
+                                       ],
+                               ],
+                               "(SELECT  foo_id  FROM foo    WHERE bar = '1' AND baz IS NULL  ORDER BY foo_id LIMIT 25  ) UNION " .
+                               "(SELECT  foo_id  FROM foo    WHERE bar = '2' AND baz IS NULL  ORDER BY foo_id LIMIT 25  ) UNION " .
+                               "(SELECT  foo_id  FROM foo    WHERE bar = '3' AND baz IS NULL  ORDER BY foo_id LIMIT 25  ) " .
+                               "ORDER BY foo_id LIMIT 25"
+                       ],
+                       [
+                               [
+                                       'table' => 'foo',
+                                       'vars' => [ 'foo_id' ],
+                                       'permute_conds' => [
+                                               'bar' => [ 1, 2, 3 ],
+                                       ],
+                                       'extra_conds' => [ 'baz' => null ],
+                                       'options' => [
+                                               'NOTALL' => true,
+                                               'ORDER BY' => [ 'foo_id' ],
+                                               'LIMIT' => 25,
+                                       ],
+                                       'unionSupportsOrderAndLimit' => false,
+                               ],
+                               "(SELECT  foo_id  FROM foo    WHERE bar = '1' AND baz IS NULL  ) UNION " .
+                               "(SELECT  foo_id  FROM foo    WHERE bar = '2' AND baz IS NULL  ) UNION " .
+                               "(SELECT  foo_id  FROM foo    WHERE bar = '3' AND baz IS NULL  ) " .
+                               "ORDER BY foo_id LIMIT 25"
+                       ],
+                       [
+                               [
+                                       'table' => 'foo',
+                                       'vars' => [ 'foo_id' ],
+                                       'permute_conds' => [],
+                                       'extra_conds' => [ 'baz' => null ],
+                                       'options' => [
+                                               'ORDER BY' => [ 'foo_id' ],
+                                               'LIMIT' => 25,
+                                       ],
+                               ],
+                               "SELECT  foo_id  FROM foo    WHERE baz IS NULL  ORDER BY foo_id LIMIT 25"
+                       ],
+                       [
+                               [
+                                       'table' => 'foo',
+                                       'vars' => [ 'foo_id' ],
+                                       'permute_conds' => [
+                                               'bar' => [],
+                                       ],
+                                       'extra_conds' => [ 'baz' => null ],
+                                       'options' => [
+                                               'ORDER BY' => [ 'foo_id' ],
+                                               'LIMIT' => 25,
+                                       ],
+                               ],
+                               "SELECT  foo_id  FROM foo    WHERE baz IS NULL  ORDER BY foo_id LIMIT 25"
+                       ],
+                       [
+                               [
+                                       'table' => 'foo',
+                                       'vars' => [ 'foo_id' ],
+                                       'permute_conds' => [
+                                               'bar' => [ 1 ],
+                                       ],
+                                       'options' => [
+                                               'ORDER BY' => [ 'foo_id' ],
+                                               'LIMIT' => 25,
+                                               'OFFSET' => 150,
+                                       ],
+                               ],
+                               "SELECT  foo_id  FROM foo    WHERE bar = '1'  ORDER BY foo_id LIMIT 150,25"
+                       ],
+                       [
+                               [
+                                       'table' => 'foo',
+                                       'vars' => [ 'foo_id' ],
+                                       'permute_conds' => [],
+                                       'extra_conds' => [ 'baz' => null ],
+                                       'options' => [
+                                               'ORDER BY' => [ 'foo_id' ],
+                                               'LIMIT' => 25,
+                                               'OFFSET' => 150,
+                                               'INNER ORDER BY' => [ 'bar_id' ],
+                                       ],
+                               ],
+                               "(SELECT  foo_id  FROM foo    WHERE baz IS NULL  ORDER BY bar_id LIMIT 175  ) ORDER BY foo_id LIMIT 150,25"
+                       ],
+                       [
+                               [
+                                       'table' => 'foo',
+                                       'vars' => [ 'foo_id' ],
+                                       'permute_conds' => [],
+                                       'extra_conds' => [ 'baz' => null ],
+                                       'options' => [
+                                               'ORDER BY' => [ 'foo_id' ],
+                                               'LIMIT' => 25,
+                                               'OFFSET' => 150,
+                                               'INNER ORDER BY' => [ 'bar_id' ],
+                                       ],
+                                       'unionSupportsOrderAndLimit' => false,
+                               ],
+                               "SELECT  foo_id  FROM foo    WHERE baz IS NULL  ORDER BY foo_id LIMIT 150,25"
+                       ],
+                       // @codingStandardsIgnoreEnd
+               ];
+       }
+
        /**
         * @covers Database::commit
         */
index ce05e33..9ed8f15 100644 (file)
@@ -31,6 +31,11 @@ class DatabaseTestHelper extends Database {
         */
        protected $tablesExists;
 
+       /**
+        * Value to return from unionSupportsOrderAndLimit()
+        */
+       protected $unionSupportsOrderAndLimit = true;
+
        public function __construct( $testName, array $opts = [] ) {
                $this->testName = $testName;
 
@@ -203,4 +208,12 @@ class DatabaseTestHelper extends Database {
 
                return new FakeResultWrapper( $res );
        }
+
+       public function unionSupportsOrderAndLimit() {
+               return $this->unionSupportsOrderAndLimit;
+       }
+
+       public function setUnionSupportsOrderAndLimit( $v ) {
+               $this->unionSupportsOrderAndLimit = (bool)$v;
+       }
 }
index 2c199bc..3b42356 100644 (file)
@@ -192,4 +192,30 @@ class DeferredUpdatesTest extends MediaWikiTestCase {
 
                DeferredUpdates::doUpdates();
        }
+
+       public function testPresendAddOnPostsendRun() {
+               $this->setMwGlobals( 'wgCommandLineMode', true );
+
+               $x = false;
+               $y = false;
+               wfGetLBFactory()->commitMasterChanges( __METHOD__ ); // clear anything
+
+               DeferredUpdates::addCallableUpdate(
+                       function () use ( &$x, &$y ) {
+                               $x = true;
+                               DeferredUpdates::addCallableUpdate(
+                                       function () use ( &$y ) {
+                                               $y = true;
+                                       },
+                                       DeferredUpdates::PRESEND
+                               );
+                       },
+                       DeferredUpdates::POSTSEND
+               );
+
+               DeferredUpdates::doUpdates();
+
+               $this->assertTrue( $x, "Outer POSTSEND update ran" );
+               $this->assertTrue( $y, "Nested PRESEND update ran" );
+       }
 }
index 71398e3..e72865f 100644 (file)
@@ -43,6 +43,7 @@ class ErrorPageErrorTest extends MediaWikiTestCase {
                $mock->expects( $this->once() )
                        ->method( 'output' );
                $this->setMwGlobals( 'wgOut', $mock );
+               $this->setMwGlobals( 'wgCommandLineMode', false );
 
                $e = new ErrorPageError( $title, $mockMessage, $params );
                $e->report();
diff --git a/tests/phpunit/includes/resourceloader/ResourceLoaderSkinModuleTest.php b/tests/phpunit/includes/resourceloader/ResourceLoaderSkinModuleTest.php
new file mode 100644 (file)
index 0000000..c567698
--- /dev/null
@@ -0,0 +1,67 @@
+<?php
+
+/**
+ * @group Database
+ * @group ResourceLoader
+ */
+class ResourceLoaderSkinModuleTest extends PHPUnit_Framework_TestCase {
+
+       public static function provideGetStyles() {
+               return [
+                       [
+                               'parent' => [],
+                               'expected' => [
+                                       'all' => [ '.mw-wiki-logo { background-image: url(/logo.png); }' ],
+                               ],
+                       ],
+                       [
+                               'parent' => [
+                                       'screen' => '.example {}',
+                               ],
+                               'expected' => [
+                                       'screen' => [ '.example {}' ],
+                                       'all' => [ '.mw-wiki-logo { background-image: url(/logo.png); }' ],
+                               ],
+                       ],
+               ];
+       }
+
+       /**
+        * @dataProvider provideGetStyles
+        * @covers ResourceLoaderSkinModule::normalizeStyles
+        * @covers ResourceLoaderSkinModule::getStyles
+        */
+       public function testGetStyles( $parent, $expected ) {
+               $module = $this->getMockBuilder( ResourceLoaderSkinModule::class )
+                       ->disableOriginalConstructor()
+                       ->setMethods( [ 'readStyleFiles' ] )
+                       ->getMock();
+               $module->expects( $this->once() )->method( 'readStyleFiles' )
+                       ->willReturn( $parent );
+               $module->setConfig( new HashConfig( [
+                       'ResourceBasePath' => '/w',
+                       'Logo' => '/logo.png',
+                       'LogoHD' => false,
+               ] ) );
+
+               $ctx = $this->getMockBuilder( ResourceLoaderContext::class )
+                       ->disableOriginalConstructor()->getMock();
+
+               $this->assertEquals(
+                       $module->getStyles( $ctx ),
+                       $expected
+               );
+       }
+
+       /**
+        * @covers ResourceLoaderSkinModule::isKnownEmpty
+        */
+       public function testIsKnownEmpty() {
+               $module = $this->getMockBuilder( ResourceLoaderSkinModule::class )
+                       ->disableOriginalConstructor()->setMethods( null )->getMock();
+               $ctx = $this->getMockBuilder( ResourceLoaderContext::class )
+                       ->disableOriginalConstructor()->getMock();
+
+               $this->assertFalse( $module->isKnownEmpty( $ctx ) );
+       }
+}
index 5d5d693..09052f3 100644 (file)
@@ -69,7 +69,7 @@ class ParserTestTopLevelSuite extends PHPUnit_Framework_TestSuite {
                if ( is_string( $flags ) ) {
                        $flags = self::CORE_ONLY;
                }
-               global $wgParserTestFiles, $IP;
+               global $IP;
 
                $mwTestDir = $IP . '/tests/';
 
@@ -81,7 +81,8 @@ class ParserTestTopLevelSuite extends PHPUnit_Framework_TestSuite {
                $filesToTest = [];
 
                # Filter out .txt files
-               foreach ( $wgParserTestFiles as $parserTestFile ) {
+               $files = ParserTestRunner::getParserTestFiles();
+               foreach ( $files as $parserTestFile ) {
                        $isCore = ( 0 === strpos( $parserTestFile, $mwTestDir ) );
 
                        if ( $isCore && $wantsCore ) {
index 8366369..f2e6858 100644 (file)
@@ -61,7 +61,6 @@ class UploadFromUrlTestSuite extends PHPUnit_Framework_TestSuite {
                DeferredUpdates::clearPendingUpdates();
                $wgMemc = wfGetMainCache();
                $messageMemc = wfGetMessageCacheStorage();
-               $parserMemc = wfGetParserCacheStorage();
 
                RequestContext::resetMain();
                $context = RequestContext::getMain();
index 06ea9bc..9dc9e5d 100644 (file)
        } );
 
        QUnit.test( '.load() - Error: Circular dependency', function ( assert ) {
+               var capture = [];
                mw.loader.register( [
                        [ 'test.circleA', '0', [ 'test.circleB' ] ],
                        [ 'test.circleB', '0', [ 'test.circleC' ] ],
                        [ 'test.circleC', '0', [ 'test.circleA' ] ]
                ] );
-               assert.throws( function () {
-                       mw.loader.load( 'test.circleC' );
-               }, /Circular/, 'Detect circular dependency' );
+               this.sandbox.stub( mw, 'track', function ( topic, data ) {
+                       capture.push( {
+                               topic: topic,
+                               error: data.exception && data.exception.message,
+                               source: data.source
+                       } );
+               } );
+
+               mw.loader.load( 'test.circleC' );
+               assert.deepEqual(
+                       [ {
+                               topic: 'resourceloader.exception',
+                               error: 'Circular reference detected: test.circleB -> test.circleC',
+                               source: 'resolve'
+                       } ],
+                       capture,
+                       'Detect circular dependency'
+               );
        } );
 
        QUnit.test( '.using() - Error: Unregistered', function ( assert ) {
                mw.loader.load( 'test.using.unreg2' );
        } );
 
+       // Regression test for T36853
+       QUnit.test( '.load() - Error: Missing dependency', function ( assert ) {
+               var capture = [];
+               this.sandbox.stub( mw, 'track', function ( topic, data ) {
+                       capture.push( {
+                               topic: topic,
+                               error: data.exception && data.exception.message,
+                               source: data.source
+                       } );
+               } );
+
+               mw.loader.register( [
+                       [ 'test.load.missingdep1', '0', [ 'test.load.missingdep2' ] ],
+                       [ 'test.load.missingdep', '0', [ 'test.load.missingdep1' ] ]
+               ] );
+               mw.loader.load( 'test.load.missingdep' );
+               assert.deepEqual(
+                       [ {
+                               topic: 'resourceloader.exception',
+                               error: 'Unknown dependency: test.load.missingdep2',
+                               source: 'resolve'
+                       } ],
+                       capture
+               );
+       } );
+
        QUnit.test( '.implement( styles={ "css": [text, ..] } )', function ( assert ) {
                var $element = $( '<div class="mw-test-implement-a"></div>' ).appendTo( '#qunit-fixture' );
 
index d64ada9..db736b7 100644 (file)
@@ -10,5 +10,8 @@
        },
        "globals": {
                "browser": false
+       },
+       "rules":{
+               "no-console":0
        }
 }
index 479b958..a14cccb 100644 (file)
@@ -27,8 +27,8 @@ To run only one file (for example page.js), you first need to spawn the chromedr
 
 Then in another terminal:
 
-    cd mediawiki/tests/selenium
-    ../../node_modules/.bin/wdio --spec page.js
+    cd tests/selenium
+    ../../node_modules/.bin/wdio --spec specs/page.js
 
 The runner reads the config file `wdio.conf.js` and runs the spec listed in
 `page.js`.
index a0b9490..f54e31c 100644 (file)
@@ -21,5 +21,57 @@ class CreateAccountPage extends Page {
                this.create.click();
        }
 
+       apiCreateAccount( username, password ) {
+               const url = require( 'url' ), // https://nodejs.org/docs/latest/api/url.html
+                       baseUrl = url.parse( browser.options.baseUrl ), // http://webdriver.io/guide/testrunner/browserobject.html
+                       Bot = require( 'nodemw' ), // https://github.com/macbre/nodemw
+                       client = new Bot( {
+                               protocol: baseUrl.protocol,
+                               server: baseUrl.hostname,
+                               port: baseUrl.port,
+                               path: baseUrl.path,
+                               debug: false
+                       } );
+
+               return new Promise( ( resolve, reject ) => {
+                       client.api.call(
+                               {
+                                       action: 'query',
+                                       meta: 'tokens',
+                                       type: 'createaccount'
+                               },
+                               /**
+                                * @param {Error|null} err
+                                * @param {Object} info Processed query result
+                                * @param {Object} next More results?
+                                * @param {Object} data Raw data
+                                */
+                               function ( err, info, next, data ) {
+                                       if ( err ) {
+                                               reject( err );
+                                               return;
+                                       }
+                                       client.api.call( {
+                                               action: 'createaccount',
+                                               createreturnurl: browser.options.baseUrl,
+                                               createtoken: data.query.tokens.createaccounttoken,
+                                               username: username,
+                                               password: password,
+                                               retype: password
+                                       }, function ( err ) {
+                                               if ( err ) {
+                                                       reject( err );
+                                                       return;
+                                               }
+                                               resolve();
+                                       }, 'POST' );
+                               },
+                               'POST'
+                       );
+
+               } );
+
+       }
+
 }
 module.exports = new CreateAccountPage();
index 819c546..25da8cb 100644 (file)
@@ -8,15 +8,37 @@ class EditPage extends Page {
        get heading() { return browser.element( '#firstHeading' ); }
        get save() { return browser.element( '#wpSave' ); }
 
-       open( name ) {
+       openForEditing( name ) {
                super.open( name + '&action=edit' );
        }
 
        edit( name, content ) {
-               this.open( name );
+               this.openForEditing( name );
                this.content.setValue( content );
                this.save.click();
        }
 
+       apiEdit( name, content ) {
+               const url = require( 'url' ), // https://nodejs.org/docs/latest/api/url.html
+                       baseUrl = url.parse( browser.options.baseUrl ), // http://webdriver.io/guide/testrunner/browserobject.html
+                       Bot = require( 'nodemw' ), // https://github.com/macbre/nodemw
+                       client = new Bot( {
+                               protocol: baseUrl.protocol,
+                               server: baseUrl.hostname,
+                               port: baseUrl.port,
+                               path: baseUrl.path,
+                               debug: false
+                       } );
+
+               return new Promise( ( resolve, reject ) => {
+                       client.edit( name, content, `Created page with "${content}"`, function ( err ) {
+                               if ( err ) {
+                                       return reject( err );
+                               }
+                               resolve();
+                       } );
+               } );
+       }
+
 }
 module.exports = new EditPage();
diff --git a/tests/selenium/pageobjects/userlogout.page.js b/tests/selenium/pageobjects/userlogout.page.js
deleted file mode 100644 (file)
index e355fd5..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-'use strict';
-const Page = require( './page' );
-
-class UserLogoutPage extends Page {
-
-       open() {
-               super.open( 'Special:UserLogout' );
-       }
-
-}
-module.exports = new UserLogoutPage();
index da80aaf..06d3d60 100644 (file)
@@ -1,14 +1,22 @@
 'use strict';
 const assert = require( 'assert' ),
+       EditPage = require( '../pageobjects/edit.page' ),
        HistoryPage = require( '../pageobjects/history.page' ),
-       EditPage = require( '../pageobjects/edit.page' );
+       UserLoginPage = require( '../pageobjects/userlogin.page' );
 
 describe( 'Page', function () {
 
        var content,
                name;
 
+       before( function () {
+               // disable VisualEditor welcome dialog
+               UserLoginPage.open();
+               browser.localStorage( 'POST', { key: 've-beta-welcome-dialog', value: '1' } );
+       } );
+
        beforeEach( function () {
+               browser.deleteCookie();
                content = Math.random().toString();
                name = Math.random().toString();
        } );
@@ -29,12 +37,14 @@ describe( 'Page', function () {
                var content2 = Math.random().toString();
 
                // create
-               EditPage.edit( name, content );
+               browser.call( function () {
+                       return EditPage.apiEdit( name, content );
+               } );
 
                // edit
                EditPage.edit( name, content2 );
 
-               // check content
+               // check
                assert.equal( EditPage.heading.getText(), name );
                assert.equal( EditPage.displayedContent.getText(), content2 );
 
@@ -43,7 +53,9 @@ describe( 'Page', function () {
        it( 'should have history', function () {
 
                // create
-               EditPage.edit( name, content );
+               browser.call( function () {
+                       return EditPage.apiEdit( name, content );
+               } );
 
                // check
                HistoryPage.open( name );
index 6746c5b..3f3872d 100644 (file)
@@ -1,16 +1,22 @@
 'use strict';
 const assert = require( 'assert' ),
        CreateAccountPage = require( '../pageobjects/createaccount.page' ),
-       UserLoginPage = require( '../pageobjects/userlogin.page' ),
-       UserLogoutPage = require( '../pageobjects/userlogout.page' ),
-       PreferencesPage = require( '../pageobjects/preferences.page' );
+       PreferencesPage = require( '../pageobjects/preferences.page' ),
+       UserLoginPage = require( '../pageobjects/userlogin.page' );
 
 describe( 'User', function () {
 
        var password,
                username;
 
+       before( function () {
+               // disable VisualEditor welcome dialog
+               UserLoginPage.open();
+               browser.localStorage( 'POST', { key: 've-beta-welcome-dialog', value: '1' } );
+       } );
+
        beforeEach( function () {
+               browser.deleteCookie();
                username = `User-${Math.random().toString()}`;
                password = Math.random().toString();
        } );
@@ -28,10 +34,9 @@ describe( 'User', function () {
        it( 'should be able to log in', function () {
 
                // create
-               CreateAccountPage.createAccount( username, password );
-
-               // logout
-               UserLogoutPage.open();
+               browser.call( function () {
+                       return CreateAccountPage.apiCreateAccount( username, password );
+               } );
 
                // log in
                UserLoginPage.login( username, password );
@@ -46,9 +51,14 @@ describe( 'User', function () {
                var realName = Math.random().toString();
 
                // create
-               CreateAccountPage.createAccount( username, password );
+               browser.call( function () {
+                       return CreateAccountPage.apiCreateAccount( username, password );
+               } );
+
+               // log in
+               UserLoginPage.login( username, password );
 
-               // change real name
+               // change
                PreferencesPage.changeRealName( realName );
 
                // check
index adbd8c3..c8fb8a7 100644 (file)
@@ -217,8 +217,21 @@ exports.config = {
        // },
        //
        // Function to be executed after a test (in Mocha/Jasmine) or a step (in Cucumber) starts.
-       // afterTest: function (test) {
-       // },
+       // from https://github.com/webdriverio/webdriverio/issues/269#issuecomment-306342170
+       afterTest: function ( test ) {
+               var filename, filePath;
+               // if test passed, ignore, else take and save screenshot
+               if ( test.passed ) {
+                       return;
+               }
+               // get current test title and clean it, to use it as file name
+               filename = encodeURIComponent( test.title.replace( /\s+/g, '-' ) );
+               // build file path
+               filePath = this.screenshotPath + filename + '.png';
+               // save screenshot
+               browser.saveScreenshot( filePath );
+               console.log( '\n\tScreenshot location:', filePath, '\n' );
+       },
        //
        // Hook that gets executed after the suite has ended
        // afterSuite: function (suite) {