Merge "Bump minimum required MySQL Version to 5.5.8"
authorjenkins-bot <jenkins-bot@gerrit.wikimedia.org>
Mon, 17 Jul 2017 17:11:54 +0000 (17:11 +0000)
committerGerrit Code Review <gerrit@wikimedia.org>
Mon, 17 Jul 2017 17:11:55 +0000 (17:11 +0000)
53 files changed:
autoload.php
docs/hooks.txt
includes/api/i18n/fr.json
includes/api/i18n/ko.json
includes/api/i18n/pl.json
includes/filerepo/FileRepo.php
includes/installer/i18n/fr.json
includes/installer/i18n/nl.json
includes/specialpage/ChangesListSpecialPage.php
includes/specials/pagers/UsersPager.php
includes/user/User.php
languages/i18n/ace.json
languages/i18n/be-tarask.json
languages/i18n/bg.json
languages/i18n/bho.json
languages/i18n/bs.json
languages/i18n/ca.json
languages/i18n/cs.json
languages/i18n/csb.json
languages/i18n/din.json
languages/i18n/el.json
languages/i18n/eu.json
languages/i18n/fa.json
languages/i18n/fr.json
languages/i18n/gl.json
languages/i18n/ha.json
languages/i18n/hu.json
languages/i18n/ia.json
languages/i18n/ja.json
languages/i18n/km.json
languages/i18n/lv.json
languages/i18n/nl.json
languages/i18n/pl.json
languages/i18n/pt.json
languages/i18n/qqq.json
languages/i18n/roa-tara.json
languages/i18n/ru.json
languages/i18n/sah.json
languages/i18n/su.json
languages/i18n/te.json
languages/i18n/tg-cyrl.json
languages/i18n/zh-hans.json
languages/i18n/zh-hant.json
maintenance/recountCategories.php [new file with mode: 0644]
resources/src/mediawiki.rcfilters/ui/mw.rcfilters.ui.FilterWrapperWidget.js
resources/src/mediawiki.rcfilters/ui/mw.rcfilters.ui.MenuSelectWidget.js
tests/phpunit/includes/resourceloader/ResourceLoaderStartUpModuleTest.php
tests/phpunit/includes/resourceloader/ResourceLoaderTest.php
tests/qunit/data/callMwLoaderTestCallback.js [deleted file]
tests/qunit/data/mwLoaderTestCallback.js [new file with mode: 0644]
tests/qunit/data/qunitOkCall.js [deleted file]
tests/qunit/suites/resources/mediawiki/mediawiki.loader.test.js
tests/qunit/suites/resources/mediawiki/mediawiki.toc.test.js

index 30ec1d7..ce69ecd 100644 (file)
@@ -1190,6 +1190,7 @@ $wgAutoloadLocalClasses = [
        'RecentChange' => __DIR__ . '/includes/changes/RecentChange.php',
        'RecentChangesUpdateJob' => __DIR__ . '/includes/jobqueue/jobs/RecentChangesUpdateJob.php',
        'RecompressTracked' => __DIR__ . '/maintenance/storage/recompressTracked.php',
+       'RecountCategories' => __DIR__ . '/maintenance/recountCategories.php',
        'RedirectSpecialArticle' => __DIR__ . '/includes/specialpage/RedirectSpecialPage.php',
        'RedirectSpecialPage' => __DIR__ . '/includes/specialpage/RedirectSpecialPage.php',
        'RedisBagOStuff' => __DIR__ . '/includes/libs/objectcache/RedisBagOStuff.php',
index fec7d44..3ff3365 100644 (file)
@@ -3116,7 +3116,7 @@ UsersPager::formatRow().
 &$item: HTML to be returned. Will be wrapped in <li></li> after the hook finishes
 $row: Database row object
 
-'SpecialListusersHeader': Called before closing the <fieldset> in
+'SpecialListusersHeader': Called after adding the submit button in
 UsersPager::getPageHeader().
 $pager: The UsersPager instance
 &$out: The header HTML
index e419711..7913b8a 100644 (file)
        "apihelp-parse-paramvalue-prop-sections": "Fournit les sections dans le wikitexte analysé.",
        "apihelp-parse-paramvalue-prop-revid": "Ajoute l’ID de révision de la page analysée.",
        "apihelp-parse-paramvalue-prop-displaytitle": "Ajoute le titre du wikitexte analysé.",
-       "apihelp-parse-paramvalue-prop-headitems": "<span class=\"apihelp-deprecated\">Désuet.</span> Fournit les éléments à mettre dans le <code>&lt;head&gt;</code> de la page.",
+       "apihelp-parse-paramvalue-prop-headitems": "Fournit les éléments à mettre dans le <code>&lt;head&gt;</code> de la page.",
        "apihelp-parse-paramvalue-prop-headhtml": "Fournit le <code>&lt;head&gt;</code> analysé de la page.",
        "apihelp-parse-paramvalue-prop-modules": "Fournit les modules ResourceLoader utilisés sur la page. Pour les charger, utiliser <code>mw.loader.using()</code>. Soit <kbd>jsconfigvars</kbd> soit <kbd>encodedjsconfigvars</kbd> doit être demandé avec <kbd>modules</kbd>.",
        "apihelp-parse-paramvalue-prop-jsconfigvars": "Fournit les variables de configuration JavaScript spécifiques à la page. Pour les appliquer, utiliser <code>mw.config.set()</code>.",
        "apihelp-query+filearchive-paramvalue-prop-mime": "Ajoute le MIME de l’image.",
        "apihelp-query+filearchive-paramvalue-prop-mediatype": "Ajoute le type de média de l’image.",
        "apihelp-query+filearchive-paramvalue-prop-metadata": "Liste les métadonnées Exif pour la version de l’image.",
-       "apihelp-query+filearchive-paramvalue-prop-bitdepth": "Ajoute la profondeur de bit de la version.",
+       "apihelp-query+filearchive-paramvalue-prop-bitdepth": "Ajoute la profondeur de bits de la version.",
        "apihelp-query+filearchive-paramvalue-prop-archivename": "Ajoute le nom de fichier de la version d’archive pour les versions autres que la dernière.",
        "apihelp-query+filearchive-example-simple": "Afficher une liste de tous les fichiers supprimés",
        "apihelp-query+filerepoinfo-summary": "Renvoyer les méta-informations sur les référentiels d’images configurés dans le wiki.",
        "apihelp-query+revisions+base-paramvalue-prop-parsedcomment": "Commentaire analysé de l’utilisateur sur la révision.",
        "apihelp-query+revisions+base-paramvalue-prop-content": "Texte de la révision.",
        "apihelp-query+revisions+base-paramvalue-prop-tags": "Balises de la révision.",
-       "apihelp-query+revisions+base-paramvalue-prop-parsetree": "L’arbre d’analyse XML du contenu de la révision (nécessite le modèle de contenu <code>$1</code>).",
+       "apihelp-query+revisions+base-paramvalue-prop-parsetree": "<span class=\"apihelp-deprecated\">Deprecated.</span> Utiliser  <kbd>[[Special:ApiHelp/expandtemplates|action=expandtemplates]]</kbd> ou <kbd>[[Special:ApiHelp/parse|action=parse]]</kbd> à la place. L’arbre d’analyse XML du contenu de la révision (nécessite le modèle de contenu <code>$1</code>).",
        "apihelp-query+revisions+base-param-limit": "Limiter le nombre de révisions retournées.",
-       "apihelp-query+revisions+base-param-expandtemplates": "Développer les modèles dans le contenu de la révision (nécessite $1prop=content).",
-       "apihelp-query+revisions+base-param-generatexml": "Générer l’arbre d’analyse XML pour le contenu de la révision (nécessite $1prop=content ; remplacé par <kbd>$1prop=parsetree</kbd>).",
-       "apihelp-query+revisions+base-param-parse": "Analyser le contenu de la révision (nécessite $1prop=content). Pour des raisons de performance, si cette option est utilisée, $1limit est forcé à 1.",
+       "apihelp-query+revisions+base-param-expandtemplates": "Utiliser <kbd>[[Special:ApiHelp/expandtemplates|action=expandtemplates]]</kbd> à la place. Développer les modèles dans le contenu de la révision (nécessite $1prop=content).",
+       "apihelp-query+revisions+base-param-generatexml": "Utiliser <kbd>[[Special:ApiHelp/expandtemplates|action=expandtemplates]]</kbd> ou <kbd>[[Special:ApiHelp/parse|action=parse]]</kbd> à la place. Générer l’arbre d’analyse XML pour le contenu de la révision (nécessite $1prop=content).",
+       "apihelp-query+revisions+base-param-parse": "Utiliser <kbd>[[Special:ApiHelp/parse|action=parse]]</kbd> à la place. Analyser le contenu de la révision (nécessite $1prop=content). Pour des raisons de performance, si cette option est utilisée, $1limit est forcé à 1.",
        "apihelp-query+revisions+base-param-section": "Récupérer uniquement le contenu de ce numéro de section.",
-       "apihelp-query+revisions+base-param-diffto": "ID de révision à prendre pour comparer chaque révision. Utiliser <kbd>prev</kbd>, <kbd>next</kbd> et <kbd>cur</kbd> pour la version précédente, suivante et actuelle respectivement.",
-       "apihelp-query+revisions+base-param-difftotext": "Texte auquel comparer chaque révision. Compare uniquement un nombre limité de révisions. Écrase <var>$1diffto</var>. Si <var>$1section</var> est positionné, seule cette section sera comparée avec ce texte.",
-       "apihelp-query+revisions+base-param-difftotextpst": "Effectuer une transformation avant enregistrement sur le texte avant de le comparer. Valide uniquement quand c’est utilisé avec <var>$1difftotext</var>.",
+       "apihelp-query+revisions+base-param-diffto": "Utiliser <kbd>[[Special:ApiHelp/compare|action=compare]]</kbd> à la place. ID de révision à prendre pour comparer chaque révision. Utiliser <kbd>prev</kbd>, <kbd>next</kbd> et <kbd>cur</kbd> pour la version précédente, suivante et actuelle respectivement.",
+       "apihelp-query+revisions+base-param-difftotext": "Utiliser <kbd>[[Special:ApiHelp/compare|action=compare]]</kbd> à la place. Texte auquel comparer chaque révision. Compare uniquement un nombre limité de révisions. Écrase <var>$1diffto</var>. Si <var>$1section</var> est positionné, seule cette section sera comparée avec ce texte.",
+       "apihelp-query+revisions+base-param-difftotextpst": "Utiliser <kbd>[[Special:ApiHelp/compare|action=compare]]</kbd> à la place. Effectuer une transformation avant enregistrement sur le texte avant de le comparer. Valide uniquement quand utilisé avec <var>$1difftotext</var>.",
        "apihelp-query+revisions+base-param-contentformat": "Format de sérialisation utilisé pour <var>$1difftotext</var> et attendu pour la sortie du contenu.",
        "apihelp-query+search-summary": "Effectuer une recherche en texte intégral.",
        "apihelp-query+search-param-search": "Rechercher les titres de page ou le contenu correspondant à cette valeur. Vous pouvez utiliser la chaîne de recherche pour invoquer des fonctionnalités de recherche spéciales, selon ce que le serveur de recherche du wiki implémente.",
        "apihelp-query+userinfo-paramvalue-prop-rights": "Liste tous les droits qu’a l’utilisateur actuel.",
        "apihelp-query+userinfo-paramvalue-prop-changeablegroups": "Liste les groupes pour lesquels l’utilisateur actuel peut ajouter ou supprimer.",
        "apihelp-query+userinfo-paramvalue-prop-options": "Liste toutes les préférences qu’a définies l’utilisateur actuel.",
-       "apihelp-query+userinfo-paramvalue-prop-preferencestoken": "<span class=\"apihelp-deprecated\">Obsolete.</span> Obtenir un jeton pour modifier les préférences de l’utilisateur actuel.",
+       "apihelp-query+userinfo-paramvalue-prop-preferencestoken": "Obtenir un jeton pour modifier les préférences de l’utilisateur actuel.",
        "apihelp-query+userinfo-paramvalue-prop-editcount": "Ajoute le compteur de modifications de l’utilisateur actuel.",
        "apihelp-query+userinfo-paramvalue-prop-ratelimits": "Liste toutes les limites de débit s’appliquant à l’utilisateur actuel.",
        "apihelp-query+userinfo-paramvalue-prop-realname": "Ajoute le vrai nom de l’utilisateur actuel.",
        "api-format-title": "Résultat de l’API de MediaWiki",
        "api-format-prettyprint-header": "Voici la représentation HTML du format $1. HTML est utile pour le débogage, mais inapproprié pour être utilisé dans une application.\n\nSpécifiez le paramètre <var>format</var> pour modifier le format de sortie. Pour voir la représentation non HTML du format $1, mettez <kbd>format=$2</kbd>.\n\nVoyez la [[mw:Special:MyLanguage/API|documentation complète]], ou l’[[Special:ApiHelp/main|aide de l’API]] pour plus d’information.",
        "api-format-prettyprint-header-only-html": "Ceci est une représentation HTML à des fins de débogage, et n’est pas approprié pour une utilisation applicative.\n\nVoir la [[mw:Special:MyLanguage/API|documentation complète]], ou l’[[Special:ApiHelp/main|aide de l’API]] pour plus d’information.",
+       "api-format-prettyprint-header-hyperlinked": "Voici la représentation HTML du format $1. HTML est bien pour le débogage, mais inapproprié pour être utilisé dans une application.\n\nSpécifiez le paramètre <var>format</var> pour modifier le format de sortie. Pour voir la représentation non HTML du format $1, mettez [$3 <kbd>format=$2</kbd>].\n\nVoir la [[mw:API|documentation complète]], ou l’ [[Special:ApiHelp/main|aide de l’API]] pour plus d’information.",
        "api-format-prettyprint-status": "Cette réponse serait retournée avec l'état HTTP $1 $2.",
        "api-login-fail-aborted": "L’authentification nécessite une interaction avec l’utilisateur, qui n’est pas prise en charge par <kbd>action=login</kbd>. Pour pouvoir se connecter avec <kbd>action=login</kbd>, voyez [[Special:BotPasswords]]. Pour continuer à utiliser la connexion du compte principal, voyez <kbd>[[Special:ApiHelp/clientlogin|action=clientlogin]]</kbd>.",
        "api-login-fail-aborted-nobotpw": "L’authentification nécessite une interaction avec l’utilisateur, qui n’est pas prise en charge par <kbd>action=login</kbd>. Pour se connecter, voyez <kbd>[[Special:ApiHelp/clientlogin|action=clientlogin]]</kbd>.",
        "apierror-notarget": "Vous n’avez pas spécifié une cible valide pour cette action.",
        "apierror-notpatrollable": "La révision r$1 ne peut pas être patrouillée car elle est trop ancienne.",
        "apierror-nouploadmodule": "Aucun module de téléversement défini.",
-       "apierror-offline": "Impossible de continuer du fait de problèmes de connexion au réseau. Assurez-vous d’avoir une connexion internet active et réessayez.",
+       "apierror-offline": "Impossible de continuer du fait de problèmes de connexion au réseau. Assurez-vous d’avoir une connexion internet opérationnelle et réessayez.",
        "apierror-opensearch-json-warnings": "Les avertissements ne peuvent pas être représentés dans le format JSON OpenSearch.",
        "apierror-pagecannotexist": "L’espace de noms ne permet pas de pages réelles.",
        "apierror-pagedeleted": "La page a été supprimée depuis que vous avez récupéré son horodatage.",
index 158aa91..36b580e 100644 (file)
        "apihelp-resetpassword-example-email": "<kbd>user@example.com</kbd> 이메일 주소를 가진 모든 사용자에 대해 비밀번호 재설정 이메일을 보냅니다.",
        "apihelp-revisiondelete-summary": "판을 삭제하거나 되살립니다.",
        "apihelp-revisiondelete-param-reason": "삭제 또는 복구 이유.",
+       "apihelp-rollback-summary": "문서의 마지막 편집을 취소합니다.",
        "apihelp-rollback-param-tags": "되돌리기를 적용하기 위해 태그합니다.",
        "apihelp-rollback-param-watchlist": "현재 사용자의 주시목록에서 문서를 무조건적으로 추가하거나 제거하거나, 환경 설정을 사용하거나 주시를 변경하지 않습니다.",
        "apihelp-rollback-example-simple": "<kbd>Project:대문</kbd> 문서의 <kbd>예시</kbd>의 마지막 판을 되돌리기",
index 7876b3a..9b509ee 100644 (file)
@@ -57,6 +57,7 @@
        "apihelp-compare-param-fromtitle": "Pierwszy tytuł do porównania.",
        "apihelp-compare-param-fromid": "ID pierwszej strony do porównania.",
        "apihelp-compare-param-fromrev": "Pierwsza wersja do porównania.",
+       "apihelp-compare-param-frompst": "Dokonaj zapisu wersji roboczej transformacji przeprowadzonej na <var>fromtext</var>.",
        "apihelp-compare-param-totitle": "Drugi tytuł do porównania.",
        "apihelp-compare-param-toid": "Numer drugiej strony do porównania.",
        "apihelp-compare-param-torev": "Druga wersja do porównania.",
index 8edf81f..f89d96b 100644 (file)
@@ -776,7 +776,7 @@ class FileRepo {
        public function getDescriptionRenderUrl( $name, $lang = null ) {
                $query = 'action=render';
                if ( !is_null( $lang ) ) {
-                       $query .= '&uselang=' . $lang;
+                       $query .= '&uselang=' . urlencode( $lang );
                }
                if ( isset( $this->scriptDirUrl ) ) {
                        return $this->makeUrl(
index db21da6..2510a9e 100644 (file)
@@ -81,7 +81,7 @@
        "config-outdated-sqlite": "'''Attention''': vous avez SQLite $1, qui est inférieur à la version minimale requise $2. SQLite sera indisponible.",
        "config-no-fts3": "'''Attention :''' SQLite est compilé sans le module [//sqlite.org/fts3.html FTS3] ; les fonctions de recherche ne seront pas disponibles sur ce moteur.",
        "config-pcre-old": "'''Fatal :''' PCRE $1 ou ultérieur est nécessaire.\nVotre binaire PHP est lié avec PCRE $2.\n[https://www.mediawiki.org/wiki/Manual:Errors_and_symptoms/Plus d’information sur PCRE].",
-       "config-pcre-no-utf8": "'''Erreur fatale''': Le module PCRE de PHP semble être compilé sans le support PCRE_UTF8.\nMédiaWiki nécessite la gestion d’UTF-8 pour fonctionner correctement.",
+       "config-pcre-no-utf8": "'''Erreur fatale''': Le module PCRE de PHP semble être compilé sans la prise en charge de PCRE_UTF8.\nMédiaWiki nécessite la gestion d’UTF-8 pour fonctionner correctement.",
        "config-memory-raised": "Le paramètre <code>memory_limit</code> de PHP était à $1, porté à $2.",
        "config-memory-bad": "'''Attention :''' Le paramètre <code>memory_limit</code> de PHP est à $1.\nCette valeur est probablement trop faible.\nIl est possible que l’installation échoue !",
        "config-xcache": "[http://xcache.lighttpd.net/ XCache] est installé",
@@ -89,7 +89,7 @@
        "config-apcu": "[http://www.php.net/apcu APCu] est installé",
        "config-wincache": "[http://www.iis.net/download/WinCacheForPhp WinCache] est installé",
        "config-no-cache-apcu": "<strong>Attention :</strong> Impossible de trouver [http://www.php.net/apcu APCu], [http://xcache.lighttpd.net/ XCache] ou [http://www.iis.net/download/WinCacheForPhp WinCache].\nLa mise en cache d'objets n'est pas activée.",
-       "config-mod-security": "'''Attention''': Votre serveur web a [http://modsecurity.org/ mod_security] activé. S'il est mal configuré, cela peut poser des problèmes à MediaWiki ou à d'autres applications qui permettent aux utilisateurs de publier un contenu quelconque.\nReportez-vous à [http://modsecurity.org/documentation/ la documentation de mod_security] ou contactez le support de votre hébergeur si vous rencontrez des erreurs aléatoires.",
+       "config-mod-security": "'''Attention''': Votre serveur web a [http://modsecurity.org/ mod_security] activé. S’il est mal configuré, cela peut poser des problèmes à MediaWiki ou à d’autres applications qui permettent aux utilisateurs de publier un contenu quelconque.\nReportez-vous à [http://modsecurity.org/documentation/ la documentation de mod_security] ou contactez le soutien de votre hébergeur si vous rencontrez des erreurs aléatoires.",
        "config-diff3-bad": "GNU diff3 introuvable.",
        "config-git": "Logiciel de contrôle de version Git trouvé : <code>$1</code>.",
        "config-git-bad": "Logiciel de contrôle de version Git non trouvé.",
        "config-type-oracle": "Oracle",
        "config-type-mssql": "Microsoft SQL Server",
        "config-support-info": "MediaWiki prend en charge ces systèmes de bases de données :\n\n$1\n\nSi vous ne voyez pas le système de base de données que vous essayez d’utiliser ci-dessous, alors suivez les instructions ci-dessus (voir liens) pour activer la prise en charge.",
-       "config-dbsupport-mysql": "* [{{int:version-db-mysql-url}} MySQL] est le premier choix pour MediaWiki et est le mieux pris en charge. MediaWiki fonctionne aussi avec [{{int:version-db-mariadb-url}} MariaDB] et [{{int:version-db-percona-url}} Percona Server], qui sont compatibles avec MySQL. ([http://www.php.net/manual/en/mysqli.installation.php Comment compiler PHP avec le support MySQL])",
-       "config-dbsupport-postgres": "* [{{int:version-db-postgres-url}} PostgreSQL] est un système de base de données populaire et ''open source'' qui peut être une alternative à MySQL ([http://www.php.net/manual/en/pgsql.installation.php Comment compiler PHP avec le support de PostgreSQL]).",
+       "config-dbsupport-mysql": "* [{{int:version-db-mysql-url}} MySQL] est le premier choix pour MediaWiki et est le mieux pris en charge. MediaWiki fonctionne aussi avec [{{int:version-db-mariadb-url}} MariaDB] et [{{int:version-db-percona-url}} Percona Server], qui sont compatibles avec MySQL. ([http://www.php.net/manual/en/mysqli.installation.php Comment compiler PHP avec la prise en charge de MySQL])",
+       "config-dbsupport-postgres": "* [{{int:version-db-postgres-url}} PostgreSQL] est un système de base de données populaire en ''source ouverte'' qui peut être une alternative à MySQL ([http://www.php.net/manual/en/pgsql.installation.php Comment compiler PHP avec la prise en charge de PostgreSQL]).",
        "config-dbsupport-sqlite": "* [{{int:version-db-sqlite-url}} SQLite] est un système de base de données léger bien pris en charge. ([http://www.php.net/manual/fr/pdo.installation.php Comment compiler PHP avec la prise en charge de SQLite], en utilisant PDO)",
-       "config-dbsupport-oracle": "* [{{int:version-db-oracle-url}} Oracle] est un système commercial de gestion de base de données d’entreprise. ([http://www.php.net/manual/en/oci8.installation.php Comment compiler PHP avec le support OCI8])",
-       "config-dbsupport-mssql": "* [{{int:version-db-mssql-url}} Microsoft SQL Server] est une base de données commerciale d’entreprise pour Windows. ([http://www.php.net/manual/en/sqlsrv.installation.php Comment compiler PHP avec le support de SQLSRV])",
+       "config-dbsupport-oracle": "* [{{int:version-db-oracle-url}} Oracle] est un système commercial de gestion de base de données d’entreprise. ([http://www.php.net/manual/en/oci8.installation.php Comment compiler PHP avec la prise en charge d’OCI8])",
+       "config-dbsupport-mssql": "* [{{int:version-db-mssql-url}} Microsoft SQL Server] est une base de données commerciale d’entreprise pour Windows. ([http://www.php.net/manual/en/sqlsrv.installation.php Comment compiler PHP avec la prise en charge de SQLSRV])",
        "config-header-mysql": "Paramètres de MySQL",
        "config-header-postgres": "Paramètres de PostgreSQL",
        "config-header-sqlite": "Paramètres de SQLite",
index 09cbc75..2154e7e 100644 (file)
        "config-extensions": "Uitbreidingen",
        "config-extensions-help": "De bovenstaande uitbreidingen zijn aangetroffen in de map <code>./extensions</code>.\n\nMogelijk moet u aanvullende instellingen maken, maar u kunt deze uitbreidingen nu inschakelen.",
        "config-skins": "Vormgevingen",
-       "config-skins-help": "De hierboven weergegeven vormgevingen zijn aangetroffen in de map <code>./skins</code>. U moet ten minste één vormgeving inschakelen en het standaard uiterlijk kiezen.",
+       "config-skins-help": "De hierboven weergegeven vormgevingen zijn aangetroffen in de map <code>./skins</code>. U moet ten minste één vormgeving inschakelen en de standaard vormgeving selecteren.",
        "config-skins-use-as-default": "Als standaard vormgeving instellen",
-       "config-skins-missing": "Er zijn geen uiterlijken aangetroffen. MediaWiki gebruikt een basisuiterlijk totdat u een uiterlijk installeert.",
+       "config-skins-missing": "Er zijn geen vormgevingen aangetroffen. MediaWiki gebruikt een basisvormgeving totdat u een vormgeving installeert.",
        "config-skins-must-enable-some": "U moet minstens één vormgeving kiezen om in te schakelen.",
        "config-skins-must-enable-default": "De vormgeving gekozen als standaard moet ingeschakeld zijn.",
        "config-install-alreadydone": "'''Waarschuwing:''' het lijkt alsof u MediaWiki al hebt geïnstalleerd en probeert het programma opnieuw te installeren.\nGa door naar de volgende pagina.",
index 8c4cc11..b85d272 100644 (file)
@@ -22,6 +22,7 @@
  */
 use MediaWiki\Logger\LoggerFactory;
 use Wikimedia\Rdbms\ResultWrapper;
+use Wikimedia\Rdbms\FakeResultWrapper;
 use Wikimedia\Rdbms\IDatabase;
 
 /**
@@ -518,13 +519,7 @@ abstract class ChangesListSpecialPage extends SpecialPage {
                $rows = $this->getRows();
                $opts = $this->getOptions();
                if ( $rows === false ) {
-                       if ( !$this->including() ) {
-                               $this->doHeader( $opts, 0 );
-                               $this->outputNoResults();
-                               $this->getOutput()->setStatusCode( 404 );
-                       }
-
-                       return;
+                       $rows = new FakeResultWrapper( [] );
                }
 
                $batch = new LinkBatch;
index 9aef9ad..7fa03ba 100644 (file)
@@ -270,71 +270,87 @@ class UsersPager extends AlphabeticPager {
        function getPageHeader() {
                list( $self ) = explode( '/', $this->getTitle()->getPrefixedDBkey() );
 
-               $this->getOutput()->addModules( 'mediawiki.userSuggest' );
-
-               # Form tag
-               $out = Xml::openElement(
-                               'form',
-                               [ 'method' => 'get', 'action' => wfScript(), 'id' => 'mw-listusers-form' ]
-                       ) .
-                       Xml::fieldset( $this->msg( 'listusers' )->text() ) .
-                       Html::hidden( 'title', $self );
-
-               # Username field (with autocompletion support)
-               $out .= Xml::label( $this->msg( 'listusersfrom' )->text(), 'offset' ) . ' ' .
-                       Html::input(
-                               'username',
-                               $this->requestedUser,
-                               'text',
-                               [
-                                       'class' => 'mw-autocomplete-user',
-                                       'id' => 'offset',
-                                       'size' => 20,
-                                       'autofocus' => $this->requestedUser === ''
-                               ]
-                       ) . ' ';
-
-               # Group drop-down list
-               $sel = new XmlSelect( 'group', 'group', $this->requestedGroup );
-               $sel->addOption( $this->msg( 'group-all' )->text(), '' );
+               $groupOptions = [ $this->msg( 'group-all' )->text() =>  '' ];
                foreach ( $this->getAllGroups() as $group => $groupText ) {
-                       $sel->addOption( $groupText, $group );
+                       $groupOptions[ $groupText ] = $group;
                }
 
-               $out .= Xml::label( $this->msg( 'group' )->text(), 'group' ) . ' ';
-               $out .= $sel->getHTML() . '<br />';
-               $out .= Xml::checkLabel(
-                       $this->msg( 'listusers-editsonly' )->text(),
-                       'editsOnly',
-                       'editsOnly',
-                       $this->editsOnly
-               );
-               $out .= '&#160;';
-               $out .= Xml::checkLabel(
-                       $this->msg( 'listusers-creationsort' )->text(),
-                       'creationSort',
-                       'creationSort',
-                       $this->creationSort
-               );
-               $out .= '&#160;';
-               $out .= Xml::checkLabel(
-                       $this->msg( 'listusers-desc' )->text(),
-                       'desc',
-                       'desc',
-                       $this->mDefaultDirection
-               );
-               $out .= '<br />';
+               $optionsDefault = [];
+               if ( $this->editsOnly ) {
+                       $optionsDefault[] = 'editsOnly';
+               }
+               if ( $this->creationSort ) {
+                       $optionsDefault[] = 'creationSort';
+               }
+               if ( $this->mDefaultDirection ) {
+                       $optionsDefault[] = 'desc';
+               }
 
-               Hooks::run( 'SpecialListusersHeaderForm', [ $this, &$out ] );
+               $formDescriptor = [
+                       'user' => [
+                               'class' => 'HTMLUserTextField',
+                               'label' => $this->msg( 'listusersfrom' )->text(),
+                               'name' => 'username',
+                               'value' => $this->requestedUser,
+                       ],
+                       'dropdown' => [
+                               'label' => $this->msg( 'group' ),
+                               'name' => 'group',
+                               'value' => $this->requestedGroup,
+                               'class' => 'HTMLSelectField',
+                               'options' => $groupOptions,
+                       ],
+                       'options' => [
+                               'class' => 'HTMLMultiSelectField',
+                               'options' => [
+                                       $this->msg( 'listusers-editsonly' )->text() => 'editsOnly',
+                                       $this->msg( 'listusers-creationsort' )->text() => 'creationSort',
+                                       $this->msg( 'listusers-desc' )->text() => 'desc'
+                               ],
+                               'default' => $optionsDefault
+                       ],
+                       'limithiddenfield' => [
+                               'class' => 'HTMLHiddenField',
+                               'name' => 'limit',
+                               'value' => $this->mLimit
+                       ]
+               ];
+
+               $beforeSubmitButtonHookOut = '';
+               Hooks::run( 'SpecialListusersHeaderForm', [ $this, &$beforeSubmitButtonHookOut ] );
+
+               if ( $beforeSubmitButtonHookOut !== '' ) {
+                       $formDescriptior[ 'beforeSubmitButtonHookOut' ] = [
+                               'class' => 'HTMLInfoField',
+                               'raw' => true,
+                               'default' => $beforeSubmitButtonHookOut
+                       ];
+               }
 
-               # Submit button and form bottom
-               $out .= Html::hidden( 'limit', $this->mLimit );
-               $out .= Xml::submitButton( $this->msg( 'listusers-submit' )->text() );
-               Hooks::run( 'SpecialListusersHeader', [ $this, &$out ] );
-               $out .= Xml::closeElement( 'fieldset' ) .
-                       Xml::closeElement( 'form' );
+               $formDescriptor[ 'submit' ] = [
+                       'class' => 'HTMLSubmitField',
+                       'buttonlabel-message' => 'listusers-submit',
+               ];
+
+               $beforeClosingFieldsetHookOut = '';
+               Hooks::run( 'SpecialListusersHeader', [ $this, &$beforeClosingFieldsetHookOut ] );
+
+               if ( $beforeClosingFieldsetHookOut !== '' ) {
+                       $formDescriptior[ 'beforeClosingFieldsetHookOut' ] = [
+                               'class' => 'HTMLInfoField',
+                               'raw' => true,
+                               'default' => $beforeClosingFieldsetHookOut
+                       ];
+               }
 
-               return $out;
+               $htmlForm = HTMLForm::factory( 'ooui', $formDescriptor, $this->getContext() );
+               $htmlForm
+                       ->setMethod( 'get' )
+                       ->setId( 'mw-listusers-form' )
+                       ->setFormIdentifier( 'mw-listusers-form' )
+                       ->suppressDefaultSubmit()
+                       ->setWrapperLegendMsg( 'listusers' );
+               return $htmlForm->prepareForm()->getHTML( true );
        }
 
        /**
index a1119fa..7bf6be5 100644 (file)
@@ -305,12 +305,6 @@ class User implements IDBAccessObject {
        /** @var integer User::READ_* constant bitfield used to load data */
        protected $queryFlagsUsed = self::READ_NORMAL;
 
-       /** @var string Indicates type of block (used for eventlogging)
-        * Permitted values: 'cookie-block', 'proxy-block', 'openproxy-block', 'xff-block',
-        * 'config-block'
-        */
-       public $blockTrigger = false;
-
        public static $idCacheByName = [];
 
        /**
@@ -1676,7 +1670,6 @@ class User implements IDBAccessObject {
                                        'address' => $ip,
                                        'systemBlock' => 'proxy',
                                ] );
-                               $this->blockTrigger = 'proxy-block';
                        } elseif ( $this->isAnon() && $this->isDnsBlacklisted( $ip ) ) {
                                $block = new Block( [
                                        'byText' => wfMessage( 'sorbs' )->text(),
@@ -1684,7 +1677,6 @@ class User implements IDBAccessObject {
                                        'address' => $ip,
                                        'systemBlock' => 'dnsbl',
                                ] );
-                               $this->blockTrigger = 'openproxy-block';
                        }
                }
 
@@ -1703,7 +1695,6 @@ class User implements IDBAccessObject {
                                # Mangle the reason to alert the user that the block
                                # originated from matching the X-Forwarded-For header.
                                $block->mReason = wfMessage( 'xffblockreason', $block->mReason )->text();
-                               $this->blockTrigger = 'xff-block';
                        }
                }
 
@@ -1719,7 +1710,6 @@ class User implements IDBAccessObject {
                                'anonOnly' => true,
                                'systemBlock' => 'wgSoftBlockRanges',
                        ] );
-                       $this->blockTrigger = 'config-block';
                }
 
                if ( $block instanceof Block ) {
@@ -1733,7 +1723,6 @@ class User implements IDBAccessObject {
                        $this->mBlockedby = '';
                        $this->mHideName = 0;
                        $this->mAllowUsertalk = false;
-                       $this->blockTrigger = false;
                }
 
                // Avoid PHP 7.1 warning of passing $this by reference
@@ -1766,7 +1755,6 @@ class User implements IDBAccessObject {
                                $useBlockCookie = ( $config->get( 'CookieSetOnAutoblock' ) === true );
                                if ( $blockIsValid && $useBlockCookie ) {
                                        // Use the block.
-                                       $this->blockTrigger = 'cookie-block';
                                        return $tmpBlock;
                                } else {
                                        // If the block is not valid, remove the cookie.
index 8da3a9e..5bf2296 100644 (file)
@@ -19,6 +19,7 @@
        "tog-hideminor": "Peusom neuandam bacut bak neuubah barô",
        "tog-hidepatrolled": "Peusom neuandam teurunda bak neuubah barô",
        "tog-newpageshidepatrolled": "Peusom laman teurunda nibak dapeuta ôn barô",
+       "tog-hidecategorization": "Peusom kawan mieng",
        "tog-extendwatchlist": "Peuhah dapeuta keunalön keu peuleumah ban dum neuubah, kön nyang barô mantöng",
        "tog-usenewrc": "Peusaho neuandam bak neuleumah neuubah barô ngön dapeuta keunalön meunurôt ôn",
        "tog-numberheadings": "Bôh numbôi nan keudroë",
@@ -37,8 +38,8 @@
        "tog-enotifminoredits": "Peu'ék cit surat-e keu lôn bak neuubah ubit",
        "tog-enotifrevealaddr": "Peuleumah alamat surat-e lôn bak neubrithèë surat-e",
        "tog-shownumberswatching": "Peuleumah jumeulah ureueng kalon",
-       "tog-oldsig": "Tanda jaroe jinoe:",
-       "tog-fancysig": "Peujeuet tanda jaroe sibagoe naseukah wiki (hana hubông keudroe)",
+       "tog-oldsig": "Tanda jaroe Droeneuh nyang ka na:",
+       "tog-fancysig": "Peujeuet tanda jaroe sibagoe naseukah wiki (hana peunawôt keudroe)",
        "tog-uselivepreview": "Ngui peuleumah hasé langsông",
        "tog-forceeditsummary": "Peuingat lôn meunyo plôk neuringkaih neuandam mantöng soh",
        "tog-watchlisthideown": "Peusöm nyang lôn andam nibak dapeuta keunalön",
        "newwindow": "(peuhah bak tingkap barô)",
        "cancel": "Peubateuë",
        "moredotdotdot": "Lom...",
-       "morenotlisted": "Dapeuta nyoe hana leungkap",
+       "morenotlisted": "Dapeuta nyoe kadang hana leungkap",
        "mypage": "Laman",
        "mytalk": "Marit",
-       "anontalk": "Peugah haba IP nyoë.",
+       "anontalk": "Marit",
        "navigation": "Keumudoë",
        "and": "&#32;ngön",
        "faq": "Teunanyöng Umom",
        "actions": "Buët",
        "namespaces": "Ruweuëng nan",
        "variants": "Ragam",
-       "navigation-heading": "Menu navigasi",
+       "navigation-heading": "Keumudoe",
        "errorpagetitle": "Seunalah",
        "returnto": "Gisa u $1.",
        "tagline": "Nibak {{SITENAME}}",
        "categorypage": "Eu laman kawan",
        "viewtalkpage": "Eu laman marit",
        "otherlanguages": "Bahsa la’én",
-       "redirectedfrom": "(Geupeupinah nibak $1)",
+       "redirectedfrom": "(Geupupinah nibak $1)",
        "redirectpagesub": "Laman peuninah",
        "redirectto": "Peupinah u:",
        "lastmodifiedat": "Mieng nyoe seuneulheueh geuandam bak $1, poh $2.",
        "hidetoc": "peusom",
        "collapsible-collapse": "Peuubeut",
        "collapsible-expand": "Peuluwaih",
-       "confirmable-yes": "Nyoe",
-       "confirmable-no": "Kön",
+       "confirmable-confirm": "Peue {{GENDER:$1|Droeneuh}} yakin?",
+       "confirmable-yes": "Nyo",
+       "confirmable-no": "H`an",
        "thisisdeleted": "Eu atawa peuriwang $1?",
        "viewdeleted": "Eu $1?",
        "restorelink": "$1 {{PLURAL:$1|neuandam|neuandam}} nyang ka geusampoh",
        "exception-nologin-text": "Droëneuh suwah [[Special:Userlogin|neutamöng]] mangat jeuët neupeuhah laman nyoë",
        "virus-unknownscanner": "Antivirus hana meuturi:",
        "logouttext": "'''Droeneuh ka neutubiet log.'''\n\nBeuneuteupue meunyoe na padum-padum laman nyang deuh lagèe na neutamöng log, sampoe ka lheuh neupeugléh ''cache''.",
+       "cannotlogoutnow-title": "H`an jeuet teubiet log jinoe",
        "welcomeuser": "Seulamat trôk teuka, $1 !",
        "welcomecreation-msg": "Nan droëneuh ka geupeugöt. \nBèk tuwo neuatô [[Special:Preferences|geunalak {{SITENAME}}]] droëneuh.",
        "yourname": "Ureuëng ngui:",
        "yourpasswordagain": "Pasoë lom lageuëm rahsia:",
        "createacct-yourpasswordagain": "Peunyo lageuëm rahsia",
        "createacct-yourpasswordagain-ph": "Pasoë lom lageuëm rahsia",
-       "userlogin-remembermypassword": "Peubiyeuë lôn tamöng",
-       "userlogin-signwithsecure": "Ngui server aman",
+       "userlogin-remembermypassword": "Pubiyeuë lôn tamöng",
+       "userlogin-signwithsecure": "Ngui koneksi aman",
+       "cannotlogin-title": "H`an jeuet tamong log",
        "yourdomainname": "Domain droeneuh:",
        "password-change-forbidden": "Droëneuh h‘an jeuët neuubah lageuëm rahsia bak wiki nyoë.",
        "externaldberror": "Na seunalah bak peusahèh basis data luwa atawa droëneuh hana geubri idin keu neupeubarô akun luwa droëneuh",
        "createacct-another-email-ph": "Pasoë alamat surat-e",
        "createaccountmail": "Neungui lageuëm rahsia beurangkapeuë keu si’at nyoë. Lheuëh nyan neupeu’et u surat-e nyang droëneuh meuh’eut",
        "createacct-realname": "Nan aseuli (hana wajéb)",
-       "createacct-reason": "Choë:",
+       "createacct-reason": "Alasan:",
        "createacct-reason-ph": "Pakön droëneuh neupeugöt nan ureuëng ngui la’én",
        "createacct-submit": "Peudapeuta nan barô",
        "createacct-another-submit": "Peugöt nan ureuëng ngui la’én",
        "createaccounterror": "H‘an jeuët peudapeuta nan: $1",
        "nocookiesnew": "Nan ureueng ngui nyoe ka meupeugöt, tapi goh meutamöng.\n{{SITENAME}} jingui ''cookies'' keu peutamöng ureueng ngui.\n''Cookies'' droeneuh hana meupeuudép.\nNeupeuudép ''cookies'' dilèe, lheuh nyan neutamöng ngön nan ureueng ngui ngön lageuem rahsia droeneuh.",
        "noname": "Nan ureuëng ngui nyang Droënueh peutamöng hana sah.",
-       "loginsuccesstitle": "Meuhasé tamöng",
+       "loginsuccesstitle": "Meuhasé tamöng log",
        "loginsuccess": "'''Droëneuh  jinoë ka neutamöng di {{SITENAME}} sibagoë \"$1\".'''",
-       "nosuchuser": "Hana ureuëng ngui ngön nan \"$1\".\nNan ureuëng ngui jipeubida haraih rayek.\nTulông neuparéksa keulayi neuija Droëneuh, atawa [[Special:CreateAccount|neudapeuta barô]].",
+       "nosuchuser": "Hana ureuëng ngui ngön nan \"$1\".\nHaraih rayek ngön haraih ubeut na peungarôh.\nTulông neuparéksa keulayi ijaan-neuh, atawa [[Special:CreateAccount|neudapeuta barô]].",
        "nosuchusershort": "Hana ureuëng ngui ngön nan \"$1\".\nPréksa keulayi neu’ija Droëneuh.",
        "nouserspecified": "Neupasoë nan Droëneuh.",
        "login-userblocked": "Ureuëng ngui nyoë ka teublokir, hana idin/hanjeut tamöng.",
        "createacct-another-realname-tip": "Nan aseuli hana meucéh neupasoe.\nMeunyö neupasoe, euntreuk nan droëneuh nyan geupeuleumah mangat jitupeue soe nyang tuléh.",
        "pt-login": "Tamöng",
        "pt-login-button": "Tamöng",
-       "pt-createaccount": "Peudapeuta nan barô",
+       "pt-createaccount": "Peugöt akun",
        "pt-userlogout": "Teubiët",
        "php-mail-error-unknown": "Ralat hana geuteupeuë lam guna surat() PHP",
        "user-mail-no-addy": "Ujoe kirém surat-e ngön hana alamat surat-e.",
        "resetpass_submit": "Atô lageuëm rahsia lheuëh nyan tamöng",
        "changepassword-success": "Lageuëm rahsia droëneuh meuhasé geugantoë!",
        "resetpass_forbidden": "Lageuëm rahsia h'an jeuët geugantoë",
+       "resetpass_forbidden-reason": "Lageuëm rahsia h`an jeuët geugantoë: $1",
        "resetpass-no-info": "Droëneuh suwah neutamöng mangat jeuët neu'eu laman nyoë",
        "resetpass-submit-loggedin": "Gantoë lageuëm rahsia",
        "resetpass-submit-cancel": "Pubateuë",
        "passwordreset-email": "Alamat surat-e:",
        "passwordreset-emailtitle": "Teuneurang nan ureueng ngui bak {{SITENAME}}",
        "passwordreset-emailelement": "Nan ureuëng ngui: \n$1\n\nLageuëm rahsia sijamong: \n$2",
-       "changeemail": "Gantoe alamat surat-e",
+       "changeemail": "Gantoe atawa sampôh alamat surat-e",
        "changeemail-header": "Gantoe alamat surat-e",
        "changeemail-no-info": "Droeneuh suwah neutamöng mangat jeuet neu'eu laman nyoe",
        "changeemail-oldemail": "Alamat surat-e jinoe:",
        "sig_tip": "Tanda jaroë Droëneuh ngön tanda watèë",
        "hr_tip": "Garéh data",
        "summary": "Éhtisa:",
-       "subject": "Bhah/nan:",
+       "subject": "Bhaih:",
        "minoredit": "Nyoë lôn andam bacut",
        "watchthis": "Kalön miëng nyoë",
        "savearticle": "Keubah miëng",
+       "savechanges": "Keubah neuubah",
+       "publishpage": "Peuteubiet mieng",
+       "publishchanges": "Peuteubiet neuubah",
        "preview": "Eu dilèë",
-       "showpreview": "Peuleumah hasé",
-       "showdiff": "Peuleumah neuubah",
+       "showpreview": "Peudeuih hasé",
+       "showdiff": "Peudeuih neuubah",
        "anoneditwarning": "<strong>Peuneugah:</strong> Droëneuh hana lom neutamong. Alamat IP-neuh jeuët deuh bak ureuëng la'én meunyö neumeuandam. Meunyö Droëneuh <strong>[$1 neutamong]</strong> atawa <strong>[$2 neudapeuta]</strong>, neuandamneuh jeuët teutuléh ateuëh nan Droëneuh ngön na lom meunapha'at nyang la'én.",
        "missingcommenttext": "Neupasoë beunalah di yup.",
-       "summary-preview": "Eu dilèë neuringkaih:",
+       "summary-preview": "Eu neuringkaih neuandam:",
        "blockedtitle": "Ureueng ngui geutheun",
        "blockedtext": "'''Nan ureuëng nguy atawa alamat IP Droëneuh  ka geutheun.'''\n\nGeutheun lé $1. Dalèh jih nakeuh ''$2''.\n\n* Geutheun yôh: $8\n* Neutheun maté tanggay bak: $6\n* Nyang geutheun: $7\n\nDroëneuh   jeuët neutanyong bak $1 atawa [[{{MediaWiki:Grouppage-sysop}}|nyang urôh nyang la’én]] keu peugah haba bhah nyoë.\n\nDroëneuh   h’an jeuët neunguy alat 'Kirém surat-e ureuëng nguy nyoë' keucuali ka neupasoë alamat surat-e nyang sah di [[Special:Preferences|Geunalak]] Droëneuh ngön Droëneuh ka geutheun keu nguy nyan.\n\nAlamat IP Droëneuh nakeuh $3, ngön ID neutheun nakeuh $5. Tulông peuseureuta salah saboh atawa ban duwa beurita nyoë bak tiëp teunanyöng nyang neupeugöt.",
        "autoblockedtext": "'''Nan ureuëng nguy atawa alamat IP Droëneuh  ka geutheun.'''\n\nGeutheun lé $1. Dalèh jih nakeuh ''$2''.\n\n* Geutheun yôh: $8\n* Neutheun maté tanggay bak: $6\n* Nyang geutheun: $7\n\nDroëneuh   jeuët neutanyong bak $1 atawa [[{{MediaWiki:Grouppage-sysop}}|nyang urôh nyang la’én]] keu peugah haba bhah nyoë.\n\nDroëneuh   h’an jeuët neunguy alat 'Kirém surat-e ureuëng nguy nyoë' keucuali ka neupasoë alamat surat-e nyang sah di [[Special:Preferences|Geunalak]] Droëneuh ngön Droëneuh ka geutheun keu nguy nyan.\n\nAlamat IP Droëneuh nakeuh $3, ngön ID neutheun nakeuh $5. Tulông peuseureuta salah saboh atawa ban duwa beurita nyoë bak tiëp teunanyöng nyang neupeugöt.",
        "postedit-confirmation-saved": "Neuandam droeneuh ka meukubah.",
        "edit-already-exists": "Han jeut peugöt ôn barô.\nÔn nyoe ka lheuh na.",
        "defaultmessagetext": "Naseukah peusan pukok",
-       "content-model-wikitext": "naseukah wiki",
+       "content-model-wikitext": "seunurat wiki",
        "post-expand-template-inclusion-warning": "'''Ingat:''' Seunipat seunaleuëk nyang neunguy rayek that.\nLadôm seunaleuëk hana geupeurôh",
        "post-expand-template-inclusion-category": "Laman ngön seunipat seunaleuëk nyang leubèh bataih",
        "post-expand-template-argument-warning": "'''Ingat:''' Laman nyoe na paléng h'an saboh alasan seunaleuëk nyang na sunipat èkspansi nyang raya that.\nAlasan-alasan nyan hana geupeureumeuën.",
        "revdelete-radio-same": "(bèk neugantoe)",
        "revdelete-radio-set": "Teusom",
        "revdelete-radio-unset": "Deuih",
-       "revdelete-log": "Dalèh:",
+       "revdelete-log": "Alasan:",
        "revdel-restore": "Gantoë seuneudeuih",
-       "pagehist": "Taréh laman",
-       "deletedhist": "Taréh nyang meusampôh",
-       "mergehistory-from": "Asai ôn:",
+       "pagehist": "Riwayat miëng",
+       "deletedhist": "Riwayat nyang teusampôh",
+       "mergehistory-from": "Nè mieng:",
+       "mergehistory-into": "Mieng nyang geutuju:",
        "mergehistory-invalid-source": "Asai ôn payah nan nyang beutôi.",
-       "mergehistory-reason": "Dalèh:",
+       "mergehistory-reason": "Alasan:",
        "mergelog": "Peugabông log",
        "revertmerge": "Hana jadèh peugabông",
        "history-title": "Riwayat geunantoë nibak \"$1\"",
        "prefs-watchlist-days-max": "{{PLURAL:$1|uroë}}",
        "prefs-misc": "La'én-la'én",
        "prefs-resetpass": "Gantoe lageuem rahsia",
-       "prefs-changeemail": "Gantoe alamat surat-e",
+       "prefs-changeemail": "Gantoe atawa böh alamat surat-e",
        "prefs-setemail": "Pasoe alamat surat-e",
        "prefs-email": "Peuniléh surat-e",
        "prefs-rendering": "Seuneudeuh",
        "block-log-flags-nocreate": "pumeugöt akun geupumaté",
        "movepagetext": "Formulir di yup nyoë geunguy keu jak ubah nan saboh ôn ngön jak peupinah ban dum data riwayat u nan barô. Nan nyang trép euntreuk jeuët keu ôn peupinah u nan nyang barô. Hubông u nan trép hana meu’ubah. Neupeupaseuti keu neupréksa peuninah ôn nyang reulöh atawa meuganda lheuëh neupinah. Droëneuh nyang mat tanggông jaweuëb keu neupeupaseuti meunyo hubông laju teusambông u ôn nyang patôt.\n\nBeu neuingat that meunyo ôn '''h’an''' jan geupeupinah meunyo ka na ôn nyang geunguy nan barô, keucuali meunyo ôn nyan soh atawa nakeuh ôn peuninah ngön hana riwayat andam. Nyoë areutijih Droëneuh jeuët neu’ubah nan ôn keulayi lagèë söt meunyo Droëneuh neupeugöt seunalah, ngön Droëneuh h‘an jeuët neutimpa ôn nyang ka na.\n'''INGAT'''\nNyoë jeuët geupeuakébat neu’ubah nyang h’an neuduga ngön kreuëh ngön bacah keu ôn nyang meuceuhu. Neupeupaseuti Droëneuh meuphôm akébat nibak buët nyoë sigohlom neulanjut.",
        "movepagetalktext": "Ôn peugah haba nyang na hubôngan euntreuk teupinah keudroë '''keucuali meunyo:'''\n\n*Saboh ôn peugah haba nyang hana soh ka na di yup nan barô, atawa\n*Droëneuh hana neubôh tanda cunténg bak kutak di yup nyoë\n\nLam masalah nyoë, meunyo neuhawa, Droëneuh jeuët neupeupinah atawa neupeugabông ôn keudroë.",
-       "newtitle": "U nan barô:",
+       "newtitle": "Nan barô:",
        "move-watch": "Kalön laman nyoë",
        "movepagebtn": "Peupinah laman",
        "pagemovedsub": "Peupinah meuhasé",
        "tooltip-summary": "Pasoë éhtisa paneuk",
        "interlanguage-link-title": "$1 – $2",
        "simpleantispam-label": "Paréksa anti-spam.\n<strong>BÈK</strong> neupasoë!",
-       "pageinfo-toolboxlink": "Teuneurang miëng",
+       "pageinfo-toolboxlink": "Keutrangan miëng",
        "previousdiff": "← Bida awai",
        "nextdiff": "Geunantoë lheuëh nyan →",
        "file-info-size": "$1 × $2 piksel, rayek beureukaih: $3, MIME jeunèh: $4",
index 1faa55d..ec0cdb2 100644 (file)
        "undelete-search-title": "Пошук выдаленых старонак",
        "undelete-search-box": "Пошук выдаленых старонак",
        "undelete-search-prefix": "Паказаць старонкі, назвы якіх пачынаюцца з:",
+       "undelete-search-full": "Паказаць назвы старонак, якія ўтрымліваюць:",
        "undelete-search-submit": "Паказаць",
        "undelete-no-results": "У архіве выдаленьняў ня знойдзеныя адпаведныя старонкі.",
        "undelete-filename-mismatch": "Немагчыма аднавіць вэрсію файла з датай $1: несупадзеньне назвы файла",
        "pageinfo-language-change": "зьмяніць",
        "pageinfo-content-model": "Мадэль зьместу старонкі",
        "pageinfo-content-model-change": "зьмяніць",
-       "pageinfo-robot-policy": "Ð\86ндÑ\8dкÑ\81аÑ\86Ñ\8bÑ\8f Ð¿Ð°Ñ\88Ñ\83кавÑ\96камі",
+       "pageinfo-robot-policy": "Ð\86ндÑ\8dкÑ\81аÑ\86Ñ\8bÑ\8f Ð¿Ð¾Ñ\88Ñ\83кавÑ\8bмÑ\96 Ñ\80обаÑ\82амі",
        "pageinfo-robot-index": "Дазволеная",
        "pageinfo-robot-noindex": "Не дазволеная",
        "pageinfo-watchers": "Колькасьць назіральнікаў і назіральніц",
        "changecredentials": "Зьмена ўліковых зьвестак",
        "changecredentials-submit": "Зьмяніць уліковыя зьвесткі",
        "changecredentials-invalidsubpage": "$1 не зьяўляецца слушным тыпам уліковых зьвестак.",
+       "changecredentials-success": "Вашыя ўліковыя зьвесткі былі зьмененыя.",
        "removecredentials": "Выдаленьне ўліковых зьвестак",
        "removecredentials-submit": "Выдаліць уліковыя зьвесткі",
+       "removecredentials-invalidsubpage": "$1 не зьяўляецца слушным тыпам уліковых зьвестак.",
+       "removecredentials-success": "Вашыя ўліковыя зьвесткі былі выдаленыя.",
        "credentialsform-provider": "Тып уліковых зьвестак:",
        "credentialsform-account": "Назва рахунку:"
 }
index 81319c1..0d966e0 100644 (file)
        "mergehistory-fail-self-merge": "Изходната и целевата страница се еднакви.",
        "mergehistory-no-source": "Изходната страница $1 не съществува.",
        "mergehistory-no-destination": "Целевата страница $1 не съществува.",
-       "mergehistory-invalid-source": "Ð\98зÑ\85однаÑ\82а Ñ\81Ñ\82Ñ\80аниÑ\86а Ñ\82Ñ\80Ñ\8fбва Ð´Ð° Ð¸Ð¼Ð° ÐºÐ¾Ñ\80екÑ\82но Ð¸Ð¼е.",
-       "mergehistory-invalid-destination": "ЦелеваÑ\82а Ñ\81Ñ\82Ñ\80аниÑ\86а Ñ\82Ñ\80Ñ\8fбва Ð´Ð° Ð¸Ð¼Ð° ÐºÐ¾Ñ\80екÑ\82но Ð¸Ð¼е.",
+       "mergehistory-invalid-source": "Ð\98зÑ\85однаÑ\82а Ñ\81Ñ\82Ñ\80аниÑ\86а Ñ\82Ñ\80Ñ\8fбва Ð´Ð° Ð¸Ð¼Ð° Ð²Ð°Ð»Ð¸Ð´Ð½Ð¾ Ð·Ð°Ð³Ð»Ð°Ð²Ð¸е.",
+       "mergehistory-invalid-destination": "ЦелеваÑ\82а Ñ\81Ñ\82Ñ\80аниÑ\86а Ñ\82Ñ\80Ñ\8fбва Ð´Ð° Ð¸Ð¼Ð° Ð²Ð°Ð»Ð¸Ð´Ð½Ð¾ Ð·Ð°Ð³Ð»Ð°Ð²Ð¸е.",
        "mergehistory-autocomment": "Слята [[:$1]] в [[:$2]]",
        "mergehistory-comment": "Слята [[:$1]] в [[:$2]]: $3",
        "mergehistory-same-destination": "Изходната и целевата страница не могат да съвпадат",
        "watchlistedit-raw-explain": "По-долу са показани заглавията на страниците от списъка ви за наблюдение. Можете да ги редактирате, като добавяте или премахвате по едно заглавие на ред. Като приключите, щракнете върху бутона „{{int:Watchlistedit-raw-submit}}“.\nМожете да използвате и [[Special:EditWatchlist|стандартния редактор]].",
        "watchlistedit-raw-titles": "Страници:",
        "watchlistedit-raw-submit": "Обновяване на списъка за наблюдение",
-       "watchlistedit-raw-done": "СпиÑ\81Ñ\8aкÑ\8aÑ\82 Ð²и за наблюдение беше обновен.",
+       "watchlistedit-raw-done": "СпиÑ\81Ñ\8aкÑ\8aÑ\82 Ð\92и за наблюдение беше обновен.",
        "watchlistedit-raw-added": "{{PLURAL:$1|1 страница беше добавена|$1 страници бяха добавени}}:",
        "watchlistedit-raw-removed": "{{PLURAL:$1|Една страница беше премахната|$1 страници бяха премахнати}}:",
        "watchlistedit-clear-title": "Изчистване на списъка за наблюдение",
        "version-ext-colheader-description": "Описание",
        "version-ext-colheader-credits": "Автори",
        "version-license-title": "Лиценз за $1",
-       "version-poweredby-credits": "Това Ñ\83ики Ñ\80абоÑ\82и Ð¿Ð¾ Ñ\81оÑ\84Ñ\82Ñ\83еÑ\80а на <strong>[https://www.mediawiki.org/ MediaWiki]</strong>, copyright © 2001-$1 $2.",
+       "version-poweredby-credits": "Това Ñ\83ики Ñ\80абоÑ\82и Ð½Ð° Ð±Ð°Ð·Ð°Ñ\82а на <strong>[https://www.mediawiki.org/ MediaWiki]</strong>, copyright © 2001-$1 $2.",
        "version-poweredby-others": "други",
        "version-poweredby-translators": "преводачи в translatewiki.net",
        "version-credits-summary": "Бихме искали да изкажем признателност на следните хора за техните приноси към [[Special:Version|МедияУики]].",
        "specialpages-group-developer": "Инструменти за разработчици",
        "blankpage": "Празна страница",
        "intentionallyblankpage": "Тази страница умишлено е оставена празна",
-       "external_image_whitelist": " #Ð\9eÑ\81Ñ\82авеÑ\82е Ñ\82ози Ñ\80ед Ñ\82ака, ÐºÐ°ÐºÑ\82о Ð³Ð¾ Ð²Ð¸Ð¶Ð´Ð°Ñ\82е. <pre>\n#Ð\9fоÑ\81Ñ\82авеÑ\82е Ð´Ð¾Ð»Ñ\83 Ñ\84Ñ\80агменÑ\82и Ð¾Ñ\82 Ñ\80егÑ\83лÑ\8fÑ\80ни Ð¸Ð·Ñ\80ази (Ñ\81амо Ñ\87аÑ\81Ñ\82Ñ\82а Ð¼ÐµÐ¶Ð´Ñ\83 //).\n#Тези Ñ\84Ñ\80агменÑ\82и Ñ\89е Ñ\81е Ñ\81Ñ\8aпоÑ\81Ñ\82авÑ\8fÑ\82 Ñ\81 Ð¸Ð½Ñ\82еÑ\80неÑ\82 Ð°Ð´Ñ\80еÑ\81иÑ\82е Ð½Ð° Ð²Ñ\8aнÑ\88ниÑ\82е (hotlinked) ÐºÐ°Ñ\80Ñ\82инки.\n#Ð\9aаÑ\80Ñ\82инкиÑ\82е, Ñ\87ииÑ\82о Ð°Ð´Ñ\80еÑ\81и Ð¾Ñ\82говаÑ\80Ñ\8fÑ\82 Ð½Ð° Ð²Ð¿Ð¸Ñ\81аниÑ\82е Ñ\80егÑ\83лÑ\8fÑ\80ни Ð¸Ð·Ñ\80ази, Ñ\89е Ñ\81е Ð²Ð¸Ð·Ñ\83ализиÑ\80аÑ\82, Ð·Ð° Ð¾Ñ\81Ñ\82аналиÑ\82е Ñ\89е Ñ\81е Ð¿Ð¾Ñ\8fвÑ\8fва Ñ\81амо Ð²Ñ\80Ñ\8aзка.\n#РедовеÑ\82е, Ð·Ð°Ð¿Ð¾Ñ\87ваÑ\89и Ñ\81 # Ñ\81е Ð²Ñ\8aзпÑ\80иемаÑ\82 ÐºÐ°Ñ\82о ÐºÐ¾Ð¼ÐµÐ½Ñ\82аÑ\80и.\n#Ð\9aомандиÑ\82е Ñ\81а Ñ\87Ñ\83вÑ\81Ñ\82виÑ\82елни Ð½Ð° Ð¼Ð°Ð»ÐºÐ¸ Ð¸ Ð³Ð»Ð°Ð²Ð½Ð¸ Ð±Ñ\83кви.\n\n#СлагайÑ\82е Ð²Ñ\81иÑ\87ки Ñ\84Ñ\80агменÑ\82и Ð¾Ñ\82 Ñ\80егÑ\83лÑ\8fÑ\80ни Ð¸Ð·Ñ\80ази Ð\9dÐ\90Ð\94 този ред. Оставете този ред така, както го виждате. </pre>",
+       "external_image_whitelist": " #Ð\9eÑ\81Ñ\82авеÑ\82е Ñ\82ози Ñ\80ед Ñ\82ака, ÐºÐ°ÐºÑ\82о Ð³Ð¾ Ð²Ð¸Ð¶Ð´Ð°Ñ\82е. <pre>\n#Ð\9fоÑ\81Ñ\82авеÑ\82е Ð´Ð¾Ð»Ñ\83 Ñ\84Ñ\80агменÑ\82и Ð¾Ñ\82 Ñ\80егÑ\83лÑ\8fÑ\80ни Ð¸Ð·Ñ\80ази (Ñ\81амо Ñ\87аÑ\81Ñ\82Ñ\82а Ð¼ÐµÐ¶Ð´Ñ\83 //).\n#Тези Ñ\84Ñ\80агменÑ\82и Ñ\89е Ñ\81е Ñ\81Ñ\8aпоÑ\81Ñ\82авÑ\8fÑ\82 Ñ\81 Ð\98нÑ\82еÑ\80неÑ\82 Ð°Ð´Ñ\80еÑ\81иÑ\82е Ð½Ð° Ð²Ñ\8aнÑ\88ниÑ\82е (hotlinked) ÐºÐ°Ñ\80Ñ\82инки.\n#Ð\9aаÑ\80Ñ\82инкиÑ\82е, Ñ\87ииÑ\82о Ð°Ð´Ñ\80еÑ\81и Ð¾Ñ\82говаÑ\80Ñ\8fÑ\82 Ð½Ð° Ð²Ð¿Ð¸Ñ\81аниÑ\82е Ñ\80егÑ\83лÑ\8fÑ\80ни Ð¸Ð·Ñ\80ази, Ñ\89е Ñ\81е Ð²Ð¸Ð·Ñ\83ализиÑ\80аÑ\82, Ð·Ð° Ð¾Ñ\81Ñ\82аналиÑ\82е Ñ\89е Ñ\81е Ð¿Ð¾Ñ\8fвÑ\8fва Ñ\81амо Ð²Ñ\80Ñ\8aзка.\n#РедовеÑ\82е, Ð·Ð°Ð¿Ð¾Ñ\87ваÑ\89и Ñ\81 # Ñ\81е Ð²Ñ\8aзпÑ\80иемаÑ\82 ÐºÐ°Ñ\82о ÐºÐ¾Ð¼ÐµÐ½Ñ\82аÑ\80и.\n#Ð\9aомандиÑ\82е Ñ\81а Ñ\87Ñ\83вÑ\81Ñ\82виÑ\82елни Ð½Ð° Ð¼Ð°Ð»ÐºÐ¸ Ð¸ Ð³Ð»Ð°Ð²Ð½Ð¸ Ð±Ñ\83кви.\n\n#СлагайÑ\82е Ð²Ñ\81иÑ\87ки Ñ\84Ñ\80агменÑ\82и Ð¾Ñ\82 Ñ\80егÑ\83лÑ\8fÑ\80ни Ð¸Ð·Ñ\80ази Ð½Ð°Ð´ този ред. Оставете този ред така, както го виждате. </pre>",
        "tags": "Валидни етикети за промени",
        "tag-filter": "Филтър на [[Special:Tags|етикета]]:",
        "tag-filter-submit": "Филтриране",
        "tags-create-reason": "Причина:",
        "tags-create-submit": "Създаване",
        "tags-create-no-name": "Трябва да посочите име на етикет.",
-       "tags-create-invalid-chars": "Имената на етикети не трябва да съдържат запетайки (<code>,</code>) или наклонени черти (<code>/</code>).",
+       "tags-create-invalid-chars": "Имената на етикети не трябва да съдържат запетайки (<code>,</code>), прави черти (<code>|</code>) или наклонени черти (<code>/</code>).",
        "tags-create-invalid-title-chars": "Имената на етикети не трябва да съдържат знаци, които не могат да бъдат използвани в заглавия на страници.",
        "tags-create-already-exists": "Етикет „$1“ вече съществува.",
        "tags-create-warnings-below": "Искате ли да продължите със създаването на етикета?",
        "tags-delete-not-found": "Етикет „$1“ не съществува.",
        "tags-activate-title": "Активиране на етикета",
        "tags-activate-reason": "Причина:",
-       "tags-activate-not-allowed": "Eтикет \"$1\" не е възможно да бъде активиран.",
+       "tags-activate-not-allowed": "Етикет „$1“ не може  да бъде активиран.",
        "tags-activate-not-found": "Етикет „$1“ не съществува.",
        "tags-activate-submit": "Активиране",
        "tags-deactivate-title": "Деактивиране на етикета",
-       "tags-deactivate-question": "Вие ще деактивирате етикет \"$1\".",
+       "tags-deactivate-question": "Вие ще деактивирате етикет „$1“.",
        "tags-deactivate-reason": "Причина:",
-       "tags-deactivate-not-allowed": "Деактивирането на етикет \"$1\" не е възможно.",
+       "tags-deactivate-not-allowed": "Деактивирането на етикет „$1“ не е възможно.",
        "tags-deactivate-submit": "Деактивиране",
        "tags-update-no-permission": "Нямате права за добавяне или премахване на етикети от индивидуални версии или дневници.",
        "tags-edit-title": "Редактиране на етикетите",
        "compare-rev1": "Версия 1",
        "compare-rev2": "Версия 2",
        "compare-submit": "Сравняване",
-       "compare-invalid-title": "Посоченото заглавие е невалидно",
+       "compare-invalid-title": "Посоченото заглавие е невалидно.",
        "compare-title-not-exists": "Посоченото заглавие не съществува.",
        "compare-revision-not-exists": "Посочената версия не съществува.",
        "dberr-problems": "Съжаляваме! Сайтът изпитва технически затруднения.",
        "htmlform-datetime-placeholder": "ГГГГ-ММ-ДД ЧЧ:ММ:СС",
        "htmlform-date-invalid": "Избраната от вас стойност за дата не е разпозната. Опитайте да използвате формат ГГГГ-ММ-ДД.",
        "htmlform-datetime-invalid": "Избраната от вас стойност за дата не е разпозната. Опитайте да използвате формат ГГГГ-ММ-ДД ЧЧ:ММ:СС.",
-       "htmlform-title-badnamespace": "[[:$1]] не е в именното пространство \"{{ns:$2}}\".",
+       "htmlform-title-badnamespace": "[[:$1]] не е в именното пространство „{{ns:$2}}“.",
        "htmlform-title-not-exists": "$1 не съществува.",
        "htmlform-user-not-exists": "<strong>$1</strong> не съществува.",
        "htmlform-user-not-valid": "<strong>$1</strong> не е валидно потребителско име.",
        "logentry-upload-revert": "$1 {{GENDER:$2|качи}} $3",
        "log-name-managetags": "Дневник на управлението на етикети",
        "log-description-managetags": "На тази страница са изброени задачи, свързани с управлението на [[Special:Tags|етикети]]. Дневникът съдържа само действия, извършвани ръчно от администратор. Етикети могат да бъдат създавани или изтривани от уики софтуера без това да бъде отразено в този дневник.",
-       "logentry-managetags-create": "$1 {{GENDER:$2|създаде}} етикета \"$4\"",
+       "logentry-managetags-create": "$1 {{GENDER:$2|създаде}} етикета „$4“",
        "log-name-tag": "Дневник на етикетите",
        "log-description-tag": "Тази страница показва, кога потребителите са добавили или премахнали [[Special:Tags|етикети]] от отделни версии или записи. Списъкът не включва подобни действия, когато те се появяват, като част от процеса на редактиране, изтриване или подобни действия.",
        "rightsnone": "(никакви)",
index e93c826..696ce6d 100644 (file)
        "filedelete-success": "'''$1''' के मिटा दिहल गईल बा।",
        "filedelete-nofile": "'''$1''' उपलब्ध नईखे।",
        "mimesearch": "MIME खोज",
-       "unwatchedpages": "धà¥\8dयान à¤¨ à¤¦à¤¿à¤¹à¤² à¤\97à¤\87ल पन्ना",
-       "listredirects": "पà¥\81नरà¥\8dनिरà¥\8dदà¥\87शन à¤\95à¥\87 à¤¸à¥\82à¤\9aà¥\80",
-       "unusedtemplates": "बिना à¤ªà¥\8dरयà¥\8bà¤\97 à¤\95à¥\87 à¤\96ाà¤\81à¤\9aा",
+       "unwatchedpages": "बिना à¤§à¤¿à¤¯à¤¾à¤¨à¤¸à¥\82à¤\9aà¥\80 à¤®à¥\87à¤\82 à¤\9cà¥\8bड़ल पन्ना",
+       "listredirects": "à¤\85नà¥\81पà¥\8dरà¥\87षण à¤ªà¤¨à¥\8dना à¤¸à¤­ à¤\95à¥\87 à¤²à¤¿à¤¸à¥\8dà¤\9f",
+       "unusedtemplates": "बिना à¤\87सà¥\8dतà¥\87माल à¤\9fà¥\87मà¥\8dपलà¥\87à¤\9f",
        "randompage": "अट्रेंडम पन्ना",
        "randomincategory": "श्रेणी में अनियमित पन्ना",
        "randomincategory-nopages": "[[:Category:$1|$1]] श्रेणी में कउनो पन्ना नइखे।",
        "nimagelinks": "Used on $1 {{PLURAL:$1|पन्ना|पन्ना सभ}}",
        "ntransclusions": "used on $1 {{PLURAL:$1|पन्ना|पन्ना सभ}}",
        "specialpage-empty": "एह रिपोर्ट खातिर कौनों रिजल्ट नइखे",
-       "lonelypages": "à¤\85नाथ पन्ना",
+       "lonelypages": "à¤\85à¤\95à¥\87ल à¤\9bà¥\82à¤\9fल पन्ना",
        "lonelypagestext": "ई पन्ना कुल कौनों दूसर पन्ना से नइखें जुड़ल न कौनों में ट्रांसक्लूड बाड़ें",
        "uncategorizedpages": "बिना श्रेणी के पन्ना",
        "uncategorizedcategories": "बिना श्रेणी के श्रेणी",
        "uncategorizedtemplates": "बिना श्रेणी के टेम्पलेट",
        "unusedcategories": "बिना इस्तेमाल श्रेणी",
        "unusedimages": "बिना इस्तेमाल फाइल",
-       "wantedcategories": "शà¥\8dरà¥\87णà¥\80 à¤\9aाहत à¤¬à¤¾",
-       "wantedpages": "पनà¥\8dना à¤\9aाहत à¤¬à¤¾",
-       "wantedfiles": "à¤\9cरà¥\81रत à¤\95à¥\87 à¤«à¤¾à¤\88लसभ",
+       "wantedcategories": "à¤\9cरà¥\82रत à¤\95à¥\87 à¤¶à¥\8dरà¥\87णà¥\80 à¤¸à¤­",
+       "wantedpages": "à¤\9cरà¥\82रत à¤\95à¥\87 à¤ªà¤¨à¥\8dना à¤¸à¤­",
+       "wantedfiles": "à¤\9cरà¥\82रत à¤\95à¥\87 à¤«à¤¾à¤\87ल सभ",
        "wantedfiletext-nocat-noforeign": "ई फाइल सभ इस्तेमाल में बाटे बाकी मौजूद नइखे।",
-       "wantedtemplates": "à¤\9fà¥\87मà¥\8dपलà¥\87à¤\9f à¤\9cिनहन à¤\95à¥\87 à¤\9cरà¥\82रत à¤¬à¤¾",
+       "wantedtemplates": "à¤\9cरà¥\82रत à¤\95à¥\87 à¤\9fà¥\87मà¥\8dपलà¥\87à¤\9f à¤¸à¤¬",
        "mostlinked": "पन्ना जहाँ सभसे ढेर कड़ी आ के जुड़त बा",
        "mostlinkedcategories": "सबसे अधिक से जुड़ल श्रेणी",
        "mostlinkedtemplates": "सभसे ढेर ट्रांसक्लूड पन्ना",
        "mostimages": "पन्ना जिनहन पर सभसे ढेर फाइल बा",
        "mostinterwikis": "पन्ना जिनहन में सभसे ढेर इंटरविकि कड़ी बा",
        "mostrevisions": "सभसे ढेर बदलाव इतिहास वाला पन्ना",
-       "prefixindex": "सà¤\97रà¥\80 à¤ªà¤¨à¥\8dना à¤\9cिनहन à¤®à¥\87à¤\82 à¤\89पसरà¥\8dà¤\97 à¤¬à¤¾",
+       "prefixindex": "सà¥\81रà¥\81à¤\86तà¥\80 à¤\85à¤\95à¥\8dषर à¤\85नà¥\81सार à¤ªà¤¨à¥\8dना à¤\96à¥\8bà¤\9cà¥\80à¤\82",
        "prefixindex-namespace": "सगरी पन्ना जिनहन में उपसर्ग ($1 नाँवस्थान) बा",
        "prefixindex-submit": "देखीं",
-       "shortpages": "à¤\9bà¥\8bà¤\9f à¤ªà¤¨à¥\8dना",
-       "longpages": "लमहर à¤ªà¤¨à¥\8dना",
+       "shortpages": "सभसà¥\87 à¤\9bà¥\8bà¤\9f à¤ªà¤¨à¥\8dना à¤¸à¤¬",
+       "longpages": "सभसà¥\87 à¤²à¤®à¤¹à¤° à¤ªà¤¨à¥\8dना à¤¸à¤¬",
        "deadendpages": "अंतिम छोर पर छूटल पन्ना",
        "protectedpages": "सुरक्षित पन्ना",
        "protectedpages-noredirect": "अनुप्रेषण छिपाईं",
        "usereditcount": "$1 {{PLURAL:$1|संपादन|संपादन सभ}}",
        "newpages": "नया पन्ना",
        "newpages-username": "प्रयोगकर्तानाँव:",
-       "ancientpages": "पà¥\81रान पन्ना",
+       "ancientpages": "सबसà¥\87 à¤ªà¥\81रान à¤¸à¤\82शà¥\8bधन à¤µà¤¾à¤²à¤¾ पन्ना",
        "move": "स्थानांतरण",
        "movethispage": "एह पन्ना के स्थानांतरण करीं",
        "suppress": "ओवरसाइटर",
index 0423c05..a17799a 100644 (file)
        "search-suggest": "Jeste li mislili: $1",
        "search-rewritten": "Prikazujem rezultate za $1. Umjesto toga potraži $2.",
        "search-interwiki-caption": "Rezultati s bratskih projekata",
-       "search-interwiki-default": "$1 rezultati:",
+       "search-interwiki-default": "Rezultati sa $1:",
        "search-interwiki-more": "(više)",
        "search-interwiki-more-results": "više rezultata",
        "search-relatedarticle": "Povezano",
index 535d7db..ce07b06 100644 (file)
        "action-createaccount": "crear aquest compte d'usuari",
        "action-autocreateaccount": "crea automàtica aquest compte d'usuari extern",
        "action-history": "mostra l'historial de la pàgina",
-       "action-minoredit": "marcar aquesta modificació com a menor",
+       "action-minoredit": "marcar aquesta edició com a menor",
        "action-move": "moure aquesta pàgina",
        "action-move-subpages": "moure aquesta pàgina, i llurs subpàgines",
        "action-move-rootuserpages": "reanomenar la pàgina principal d'un usuari",
        "tooltip-ca-nstab-template": "Vegeu la plantilla",
        "tooltip-ca-nstab-help": "Vegeu la pàgina d'ajuda",
        "tooltip-ca-nstab-category": "Vegeu la pàgina de la categoria",
-       "tooltip-minoredit": "Marca-ho com una modificació menor",
+       "tooltip-minoredit": "Marca els canvis com a edició menor",
        "tooltip-save": "Deseu els canvis",
        "tooltip-publish": "Publica els canvis",
        "tooltip-preview": "Previsualitzeu els vostres canvis. Feu-ho abans de desar res.",
        "tooltip-diff": "Mostra quins canvis heu fet al text",
        "tooltip-compareselectedversions": "Vegeu les diferències entre les dues versions seleccionades d'aquesta pàgina.",
-       "tooltip-watch": "Afegiu aquesta pàgina a la vostra llista de seguiment",
+       "tooltip-watch": "Afegeix aquesta pàgina a la vostra llista de seguiment",
        "tooltip-watchlistedit-normal-submit": "Suprimeix els títols",
        "tooltip-watchlistedit-raw-submit": "Actualitza la llista de seguiment",
        "tooltip-recreate": "Recrea la pàgina malgrat hagi estat suprimida",
index 9596a37..64bba7a 100644 (file)
        "recentchanges-legend-newpage": "{{int:recentchanges-label-newpage}} (vizte též [[Special:NewPages|seznam nových stránek]])",
        "recentchanges-legend-plusminus": "(''±123'')",
        "recentchanges-submit": "Zobrazit",
+       "rcfilters-legend-heading": "<strong>Seznam zkratek:</strong>",
        "rcfilters-activefilters": "Aktivní filtry",
        "rcfilters-advancedfilters": "Pokročilé filtry",
        "rcfilters-quickfilters": "Uložené filtry",
        "undelete-header": "Vizte nedávno smazané stránky v [[Special:Log/delete|knize smazaných stránek]].",
        "undelete-search-title": "Hledání smazaných stránek",
        "undelete-search-box": "Hledání smazaných stránek",
-       "undelete-search-prefix": "Zobraz stránky začínající na:",
+       "undelete-search-prefix": "Zobrazit stránky začínající na:",
+       "undelete-search-full": "Zobrazit názvy stránek obsahující:",
        "undelete-search-submit": "Hledat",
        "undelete-no-results": "Dotazu žádné smazané stránky neodpovídají.",
        "undelete-filename-mismatch": "Nelze obnovit verzi souboru s časovou značkou $1: jméno souboru neodpovídá",
index 4e7086e..f604e6a 100644 (file)
        "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.",
+       "exception-nologin": "Nie jes wlogòwôny/a",
        "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.",
+       "welcomeuser": "Witôj, $1!",
        "yourname": "Miono brëkòwnika",
        "userlogin-yourname": "Miono brëkòwnika",
        "userlogin-yourname-ph": "Wpiszë swòjé miono brëkòwnika",
+       "createacct-another-username-ph": "Wpiszë miono brëkòwnika",
        "yourpassword": "Twòja parola",
        "userlogin-yourpassword": "Parola",
        "userlogin-yourpassword-ph": "Wprowadzë swòją parolã",
        "createacct-yourpasswordagain": "Pòcwierdzë parolã",
        "createacct-yourpasswordagain-ph": "Wprowôdzë parolã przistãpù znowa",
        "userlogin-remembermypassword": "Nie wëlogùjë mie",
+       "cannotlogin-title": "Ni mòże sã wlogòwac",
+       "cannotlogin-text": "Logòwanié nie je mòżlëwé",
+       "cannotloginnow-title": "Ni mòże sã terô wlogòwac",
+       "cannotcreateaccount-title": "Ni mòże ùsôdzëc kòntów",
        "yourdomainname": "Twòjô domena",
        "login": "Wlogùjë mie",
        "nav-login-createaccount": "Logòwanié",
        "createaccount": "Założë nowé kònto",
        "userlogin-resetpassword-link": "Zabëtô parola?",
        "userlogin-helplink2": "Pòmòc przë logòwaniu",
+       "createacct-emailrequired": "E-mailowô adresa",
        "createacct-emailoptional": "Adresa e-mail (òptacjowò)",
        "createacct-email-ph": "Wpiszë swóją e-mailową adresã.",
+       "createacct-another-email-ph": "Wpiszë e-mailową adresã",
        "createaccountmail": "Ùżij timczasowégò hasła i wësli je na pòdóny adres e-mail.",
        "createacct-reason": "Przëczëna",
        "createacct-submit": "Ùsôdzë kònto",
+       "createacct-another-submit": "Ùsadzë kònto",
+       "createacct-continue-submit": "Biëj dali z ùsadzaniém kònta",
+       "createacct-another-continue-submit": "Biëj dali z ùsadzaniém kònta",
        "createacct-benefit-heading": "{{grammar:B.lp|{{SITENAME}}}} ùsôdzają lëdze taczi jak Të.",
        "createacct-benefit-body1": "{{PLURAL:$1|edicëjô|edicëje|edicëjów}}",
        "createacct-benefit-body2": "{{PLURAL:$1|starna|starnë|starnów}}",
        "badretype": "Wprowadzone parole jinaczą sã midze sobą.",
        "userexists": "To miono brëkòwnika je ju w ùżëcym. Proszã wëbrac jiné miono.",
        "loginerror": "Fela logòwaniô",
+       "createacct-error": "Fela ùsadzaniô kònta",
        "loginsuccesstitle": "Ùdałé logòwanié",
        "loginsuccess": "Të jes wlogòwóny do {{SITENAME}} jakno \"$1\".",
        "nosuchuser": "Nie mô brëkòwnika ò mionie \"$1\".\nW pòzwie brëkòwnika mô znaczenié wiôlgòsc lëtrów.\nSprawdzë pisënk abò [[Special:CreateAccount|ùsadzë nowé kònto]].",
        "revertmerge": "Rozdzélë",
        "history-title": "Historijô zjinaków dlô \"$1\"",
        "difference-title": "$1 - rozeszłoscë midzë wersjama",
-       "lineno": "Liniô $1:",
+       "lineno": "Linijô $1:",
        "compareselectedversions": "Przërównôj wëbróné wersëje",
        "editundo": "doprowadzë nazôd",
        "diff-empty": "(Niżódny różnicë)",
        "allpagesto": "Wëskrzëni starnë z kùniuszkã:",
        "allarticles": "Wszëtczé artikle",
        "allinnamespace": "Wszëtczé starnë (w rumie $1)",
-       "allpagessubmit": "Pòkażë",
+       "allpagessubmit": "Biéj",
        "allpagesprefix": "Pòkôżë naczënającë sã òd:",
        "allpages-hide-redirects": "Zatacë przeczerowania",
        "categories": "Kategòrëje",
index e88d6a9..8c967f0 100644 (file)
        "oct": "Pthi",
        "nov": "Ptht",
        "dec": "Pthr",
-       "pagecategories": "{{PLURAL:$1|atëkthok|atëkthuɔk}}",
+       "pagecategories": "{{PLURAL:$1|Atëkthok|Atëkthuɔk}}",
        "category_header": "Apääm në atëkthok \"$1\"ic",
-       "subcategories": "Tëktëëkor",
-       "category-media-header": "Kuat në alëk $1 yic",
+       "subcategories": "Tëktëëkkor",
+       "category-media-header": "Kuat në bekätakthook  $1 yic",
        "hidden-categories": "{{PLURAL:$1|Atëkthok cï thiaan|Atëkthuɔk cï thiaan}}",
-       "category-subcat-count": "{{PLURAL:$2|Akuutkäŋë anɔŋ akutkäŋ-thiikɛ̈ kepɛ̈c.|Akuutkäŋë anɔŋ \n{{PLURAL:$1|akuutkäŋë|$1 akuutkäŋkɛ̈}}, në $2 yic̈;}}",
+       "category-subcat-count": "{{PLURAL:$2|Bekätakthookë anɔŋ bekätakthookthiikɛ̈ kepɛ̈c.|Akuutkäŋë anɔŋ \n{{PLURAL:$1|bekätakthookë|$1 bekäŋtakthookkɛ̈}}, në $2 yic̈;}}",
        "category-article-count": "{{PLURAL:$2|Bekätakthookë anɔŋic yärë yetök.|{{PLURAL:$1|Yärë atɔ̈|$1 yɔ̈rkɛ̈ aatɔ̈}} bekätakthook thiöökë yic, në $2 yic.}}",
        "category-file-count": "{{PLURAL:$2|Bekätakthook kän anɔŋic wëtmät kän etök.|{{PLURAL:|Wëtmät de $1 thiöökë atɔ̈ |wëlmäät ke $1 thiookkɛ̈ aa tɔ̈}} në bekätakthook känic, në $2 yiic ëbɛ̈n.}}",
        "listingcontinuesabbrev": "ɣäthtueŋ",
@@ -74,7 +74,6 @@
        "anontalk": "Jam",
        "navigation": "Äden",
        "and": "&#32;ku",
-       "qbedit": "Cokic",
        "namespaces": "Rinɣɔnläu",
        "variants": "Aalelthook",
        "navigation-heading": "Dentënëɔ̈ɔ̈tu",
@@ -95,7 +94,6 @@
        "edit": "Cokic",
        "create": "Cak",
        "create-local": "Matë tɛ̈ɛ̈tëyic ë  ɣänthiök thïn",
-       "editthispage": "Cok apamë-yic",
        "newpage": "Apam yam",
        "talkpagelinktext": "jam",
        "personaltools": "Kakëluɔi ke ŋɛk",
        "editsection": "cokic",
        "editold": "cokic",
        "editlink": "cokic",
-       "viewsourcelink": "Ɣoi tënëyök",
+       "viewsourcelink": "ɣoi tënëyök",
        "editsectionhint": "Cokic akut: $1",
        "toc": "Kätɔ̈",
        "showtoc": "nyooth",
        "bold_sample": "Gɔ̈t dïtnyin",
        "bold_tip": "Gɔ̈t dïtnyin",
        "italic_sample": "Rïugäät",
-       "italic_tip": "Gɔ̈t cïrïu",
+       "italic_tip": "Rïugäät",
        "link_sample": "Nuɛ̈të rinënyooth",
        "link_tip": "Nuɛ̈t akenythïn",
        "extlink_sample": "http://www.example.com ruk rin",
        "showpreview": "Nyooth këkoŋtiŋ",
        "showdiff": "Nyoothë käcëwaar",
        "anoneditwarning": "<strong>Nyïïn:</strong> Yin akɛ̈cë ŋaanythïn.  IP de tëcieŋdu abë tïc tënë jäŋ ëbɛ̈n të gɛ̈t yïn ke waar käŋ. Të <strong>[$1 bɛk yïn ɣöt]</strong> tëdɛ̈ <strong>[$2 të ciɛk yïn cinakuɛ̈n]</strong>, ka kä gɔ̈tke ku kä waarke (ku kä kɔ̈k nɔŋ kony ayɛ) aabï ke gät rinëduluuiku.",
-       "loginreqlink": "Å\8aaanythïn",
+       "loginreqlink": "Å\8baanythïn",
        "newarticletext": "Yïn acë anuët lɔ apam liu buɔɔthcök.\nTë wïc yin ba apam kënë cak, ka jɔk ba gɔ̈t në akeer  tɔ̈ piinyic (tïŋ [$1 apamëkuɔny] të wic yin ba wëlëŋïc yök).\nTë tɔ̈ yïn ëtɛ̈n ke kɛ̈ce ŋuun, kayï tuany gakyeethany de <strong>ciëën</strong> në akuenarekwëldu-yic.",
        "noarticletext": "Amɛn, acïn gɔ̈t tɔ̈ ee apam thiöökë-yic.\nYïn alëu ba [[Special:Search/{{PAGENAME}}|wɛ̈tnhom thiööke göör]] në apam kɔ̈kiic,\n<span class=\"plainlinks\">[{{fullurl:{{#Special:Log}}|page={{FULLPAGENAMEE}}}} göör cökthɛɛr nɔŋkaariic],\nnadëk [{{fullurl:{{FULLPAGENAME}}|action=edit}} cak apamë]</span>.",
        "noarticletext-nopermission": "Amɛn, acïn gär ee apam kënë yic.  Yïn alëu ba  [[Special:Search/{{PAGENAME}}|këjiɛɛmë de apam thööke göör]]  këjiɛɛmë de apam thööke göör në apɛmkɔ̈k yiic, tëdɛ̈ ka <span class=\"plainlinks\">[{{fullurl:{{#Special:Log}}|page={{FULLPAGENAMEE}}}}] yïn alëu ba athörtɔ̈ɔ̈uke nɔŋ kar ke apam thiöökë gööric ayɛ. Lakin, yïn acï  nɔŋ yic ba apam yam cak.",
        "search-section": "(akut $1)",
        "search-suggest": "Ee $1 yen ca ŋuun?",
        "searchall": "ëbɛ̈n",
-       "search-showingresults": "{{PLURAL:$4|Käcïyök <riɛl>$1</riɛl> de <riɛl>$3</riɛl>|Këcïyök <riɛl>$1 - $2</riɛl> de <riɛl>$3</riɛl>}}",
+       "search-showingresults": "{{PLURAL:$4|Käcïyök <strong>$1</strong> de <strong>$3</strong>|Këcïyök <strong>$1 - $2</strong> de <strong>$3</strong>}}",
        "search-nonefound": "Acin këcïbenbei ë thɔ̈ŋ ke thiëc",
        "preferences": "Känyaar",
        "mypreferences": "Känyaar",
        "recentchanges-label-bot": "Acökic kënë acï looi në bot",
        "recentchanges-label-unpatrolled": "Cökic kënë akëcë kɔc ruu ë cath",
        "recentchanges-label-plusminus": "Themdït ë yär acë rat war në kolook ka lɛ̈",
-       "recentchanges-legend-heading": "<riɛl>Atekkït:</riɛl>",
+       "recentchanges-legend-heading": "<strong>Atekkït:</strong>",
        "recentchanges-legend-newpage": "{{int:recentchanges-label-newpage}} (tïŋ ayɛ [[Special:NewPages|marec de yɔ̈r yam]])",
        "recentchanges-submit": "Nyooth",
        "rclistfrom": "Nyoothë weer yam jɔɔk $2, $3",
        "recentchangeslinked-toolbox": "Kaceyiicwar nɔŋ kar",
        "recentchangeslinked-title": "Weer thöŋ kekë \"$1\"",
        "recentchangeslinked-summary": "Kän areny de wɛ̈r cïloi wɛ̈ramɛn tënɔŋ apam nuɛtke apam nhic (nadëk ka nuɛtke kɔcakuut de bekätakthook nhic).\nApam tɔ̈ [[Special:Watchlist|abërtïtdu]] aa <strong>gɔ̈tdïtnyin</strong>.",
-       "recentchangeslinked-page": "Rin ë akap",
+       "recentchangeslinked-page": "Rin ë akap:",
        "recentchangeslinked-to": "Nyuɔɔthë kä cï ke waar në apɛ̈m cï nuɛ̈ɛ̈t ke apam tiöökë, ku acie kä cï ke waar në yen apam thiöökë yic",
        "upload": "Wälë apamduööt",
        "filedesc": "Cuutyic",
        "filehist-help": "Tuenyë në aköl/akɔ̈licic apamduööt ɣoi kecit rɔt nyuɔɔth në akölic.",
        "filehist-current": "ee mënë",
        "filehist-datetime": "Aköl/Akɔ̈lic",
-       "filehist-thumb": "riöpbundït",
+       "filehist-thumb": "Riöpbundït",
        "filehist-thumbtext": "Alelthook ë riöpcök, tɛ̈cït $1",
        "filehist-user": "Dului",
        "filehist-dimensions": "Thëmthëm",
        "sp-contributions-talk": "jam",
        "sp-contributions-submit": "Yiɔ̈ɔ̈p",
        "whatlinkshere": "Këkerɛkthïn",
-       "whatlinkshere-title": "apääm aanyuët tënë \"$1\"",
+       "whatlinkshere-title": "Apääm aanyuët tënë \"$1\"",
        "whatlinkshere-page": "Apam:",
        "linkshere": "Apɛ̈m bɔ̈ anuët në <riɛl>[[:$1]]</riɛl>:",
        "isredirect": "bɛnwel apam",
        "istemplate": "tɛ̈wë anuët në athööric ku bë athöördɛ̈ nyooth",
-       "isimage": "Nuɛ̈t ë apamduööt",
+       "isimage": "nuɛ̈t ë apamduööt",
        "whatlinkshere-prev": "{{PLURAL:$1|ketueŋ|ketueŋ $1}}",
        "whatlinkshere-next": "{{PLURAL:$1|la|la $1}}",
        "whatlinkshere-links": "← anyuët",
index 1492aa4..78a26e0 100644 (file)
        "summary": "Σύνοψη:",
        "subject": "Θέμα:",
        "minoredit": "Αυτή είναι μια μικροαλλαγή",
-       "watchthis": "Παρακολούθηση αυτής της σελίδας",
+       "watchthis": "Παρακολούθηση της σελίδας",
        "savearticle": "Αποθήκευση σελίδας",
        "savechanges": "Αποθήκευση αλλαγών",
        "publishpage": "Δημοσίευση σελίδας",
index 9dd6be4..eb36a71 100644 (file)
        "botpasswords-created-title": "Botaren pasahitza sortu da",
        "botpasswords-updated-title": "Botaren pasahitza eguneratu da",
        "botpasswords-deleted-title": "Botaren pasahitza ezabatu da",
+       "botpasswords-deleted-body": "$2 erabiltzailearen $1 errobot izenak duen errobot pasahitza ezabatua izan da.",
        "botpasswords-no-provider": "BotPasswordsSessionProvider ez dago eskuragarri.",
        "botpasswords-restriction-failed": "Errobot pasahitza murrizketek logina saihesten dute.",
        "resetpass_forbidden": "Ezin dira pasahitzak aldatu",
        "content-not-allowed-here": "\"$1\" edukia ez dago baimendua [[$2]] orrialdean",
        "editwarning-warning": "Orri honetatik irteten bazara, egindako aldaketak galdu egingo dira, beharbada.\nSaioa hasi baduzu, mezu hau kendu dezakezu zure hobespenen orriko «{{int:prefs-editing}}» atalean.",
        "editpage-invalidcontentmodel-title": "Eduki eredua ez da onartzen.",
+       "editpage-invalidcontentmodel-text": "$1 eduki eredua ezin da erabili.",
        "editpage-notsupportedcontentformat-title": "Eduki formatu hori ez da onartzen",
+       "editpage-notsupportedcontentformat-text": "$2 eduki ereduak ezin da erabili $1 eduki formatuarekin.",
        "content-model-wikitext": "wikitestua",
        "content-model-text": "testu laua",
        "content-model-javascript": "JavaScript",
        "node-count-exceeded-category": "Nodo-zenbaketa gainditu den orrialdeak",
        "node-count-exceeded-warning": "Orriak nodo-kopuruaren muga gainditu du",
        "expansion-depth-exceeded-category": "Orrialdearen espantsio sakonera gainditu da",
+       "expansion-depth-exceeded-category-desc": "Orriak zabalkunde sakonera maximoa gainditzen du.",
        "expansion-depth-exceeded-warning": "Espantsio sakonera gainditu duten orrialdeak",
        "parser-unstrip-loop-warning": "Loop unstrip bat aurkitu da",
        "parser-unstrip-recursion-limit": "Unstrip errekurtsio limitea gainditu da ($1)",
        "right-protect": "Orrialde babestuak aldatu eta babes maila aldatu",
        "right-editprotected": "Babestutako orrialdeak aldatu (babes jauzirik gabe)",
        "right-editsemiprotected": "Aldatu \"{{int:protect-level-autoconfirmed}}\" babesa duten orrialdeak",
+       "right-editcontentmodel": "Aldatu orri bateko eduki eredua",
        "right-editinterface": "Erabiltzailearen interfazea aldatu",
        "right-editusercss": "Beste lankideen CSS fitxategiak aldatu",
        "right-edituserjs": "Beste lankideen JS fitxategiak aldatu",
        "rcfilters-clear-all-filters": "Iragazki guztiak garbitu",
        "rcfilters-search-placeholder": "Aldaketa berriak iragazi (nabigatu ala idatzi)",
        "rcfilters-invalid-filter": "Balio ez duen iragazkia",
+       "rcfilters-empty-filter": "Filtro aktiborik ez dago. Ekarpen guztiak erakusten.",
        "rcfilters-filterlist-title": "Iragazkiak",
        "rcfilters-filterlist-whatsthis": "Zer da hau?",
        "rcfilters-highlightbutton-title": "Nabarmendu emaitzak",
        "rcfilters-filterlist-noresults": "Ez da iragazkirik aurkitu",
        "rcfilters-filtergroup-registration": "Erabiltzaile erregistroa",
        "rcfilters-filter-registered-label": "Erregistratuak",
+       "rcfilters-filter-registered-description": "Sesioa hasi duten editoreak.",
        "rcfilters-filter-unregistered-label": "Ez erregistratuak",
+       "rcfilters-filter-unregistered-description": "Saioa hasi ez duten editoreak.",
        "rcfilters-filtergroup-authorship": "Ekarpenaren egiletza",
        "rcfilters-filter-editsbyself-label": "Zuk egindako aldaketak",
        "rcfilters-filter-editsbyself-description": "Zure ekarpenak",
        "rcfilters-filter-editsbyother-label": "Besteek egindako aldaketak",
        "rcfilters-filter-editsbyother-description": "Aldaketa guztiak norberarenak izan ezik.",
        "rcfilters-filter-user-experience-level-newcomer-label": "Iritsiberriak",
+       "rcfilters-filter-user-experience-level-newcomer-description": "10 aldaketa eta 4 ekintza-egun baino gutxiago.",
        "rcfilters-filter-user-experience-level-learner-label": "Ikasleak",
        "rcfilters-filter-user-experience-level-experienced-label": "Erabiltzaile trebatuak",
        "rcfilters-filter-user-experience-level-experienced-description": "30 eguneko jarduera eta 500 aldaketa baino gehiago.",
        "rcfilters-filter-previousrevision-label": "Aurreko berrikuspenak",
        "rcfilters-filter-excluded": "Baztertua",
        "rcfilters-view-tags": "Etiketa aldaketak",
+       "rcfilters-view-tags-tooltip": "Iragazi emaitzak aldaketa etiketak erabiliz",
+       "rcfilters-view-return-to-default-tooltip": "Oinarrizko iragazketa menura bueltatu",
        "rcfilters-liveupdates-button": "Zuzenean egindako eguneraketak",
        "rcnotefrom": "Jarraian azaltzen diren {{PLURAL:$5|aldaketak}} data honetatik aurrerakoak dira: <strong>$3,$4</strong> (gehienez <b>$1</b> erakusten dira).",
        "rclistfrom": "Erakutsi $3 $2 ondorengo aldaketa berriak",
        "download": "jaitsi",
        "unwatchedpages": "Jarraitu gabeko orrialdeak",
        "listredirects": "Birzuzenketen zerrenda",
+       "listduplicatedfiles": "Kopiak dituzten artxiboen zerrenda",
        "unusedtemplates": "Erabili gabeko txantiloiak",
        "unusedtemplatestext": "Orrialde honetan beste edozein orrialdetan erabiltzen ez diren {{ns:template}} izen-tarteko orrialdeak zerrendatzen dira. Ez ahaztu txantiloietara egon daitezkeen loturak egiaztatzeaz ezabatu aurretik.",
        "unusedtemplateswlh": "beste loturak",
        "wantedpages-summary": "Lotura gehien dituzten eta existitzen ez diren orrialdeen zerrenda da hau, eurengana birzuzenketak baino ez dituzten orrialdeak kenduta. Eurenganako birzuzenketak dituzten baina existitzen ez diren orrialdeen zerrenda bat ikusteko, [[{{#special:BrokenRedirects}}|apurtutako birzuzenketen zerrendara]] jo dezakezu.",
        "wantedpages-badtitle": "Izenburu okerra hautatutako emaitzetan: $1",
        "wantedfiles": "Eskatutako fitxategiak",
+       "wantedfiletext-nocat-noforeign": "Hurrengo artxiboak erabiltzen ari dira baina ez dira existitzen.",
        "wantedtemplates": "Eskatutako txantiloiak",
        "mostlinked": "Gehien lotutako orrialdeak",
        "mostlinkedcategories": "Gehien lotutako kategoriak",
        "apihelp": "API laguntza",
        "apihelp-no-such-module": "Ez da \"$1\" modulua aurkitu.",
        "apisandbox": "API proba orria",
+       "apisandbox-jsonly": "API sandbox-a erabiltzeko JavaScript eskatzen da.",
        "apisandbox-fullscreen": "Zabaldu panela",
        "apisandbox-unfullscreen": "Erakutsi orria",
        "apisandbox-submit": "Egin eskaera",
        "apisandbox-dynamic-parameters-add-label": "Gehitu parametroa:",
        "apisandbox-dynamic-parameters-add-placeholder": "Parametroaren izena",
        "apisandbox-dynamic-error-exists": "$1 parametro izena dagoeneko existitzen da",
+       "apisandbox-submit-invalid-fields-title": "Zelai batzuk ez dute balio.",
+       "apisandbox-submit-invalid-fields-message": "Mesedez, zuzendu markatutako zelaiak eta saiatu berrio.",
        "apisandbox-results": "Emaitzak",
        "apisandbox-sending-request": "APIari eskaera bidaltzen...",
        "apisandbox-loading-results": "APIaren emaitzak jasotzen...",
+       "apisandbox-request-url-label": "Eskatutako URLa:",
+       "apisandbox-request-json-label": "Eskatutako JSONa:",
+       "apisandbox-request-time": "Eskakisun denbora: {{PLURAL:$1|$1 ms}}",
+       "apisandbox-alert-page": "Orri honetako zelaiek ez dute balio.",
+       "apisandbox-alert-field": "Zelai honetako balioak ez du balio.",
        "apisandbox-continue": "Jarraitu",
        "apisandbox-continue-clear": "Garbitu",
        "apisandbox-multivalue-all-values": "$1 (balio guztiak)",
        "rollbacklinkcount": "desegin {{PLURAL:$1|edizio bat|$1 edizio}}",
        "rollbacklinkcount-morethan": "desegin {{PLURAL:$1|edizio bat|$1 edizio}} baino gehiago",
        "rollbackfailed": "Desegiteak huts egin dud",
+       "rollback-missingrevision": "Berrikusketa data ezin izan da kargatu.",
        "cantrollback": "Ezin da aldaketa desegin; erabiltzaile bakarrak hartu du parte.",
        "alreadyrolled": "Ezin da [[User:$2|$2]] ([[User talk:$2|eztabaida]]{{int:pipe-separator}}[[Special:Contributions/$2|{{int:contribslink}}]]) wikilariak «[[:$1]]» orrian egindako azken aldaketa desegin;\nbeste norbaitek editatu edo desegin du jadanik.\n\nAzken aldaketa [[User:$3|$3]] ([[User talk:$3|eztabaida]]{{int:pipe-separator}}[[Special:Contributions/$3|{{int:contribslink}}]]) wikilariak egin du.",
        "editcomment": "Aldaketaren laburpena: <em>$1</em>.",
        "rollback-success": "{{GENDER:$3|$1}}; wikilariaren aldaketak deseginda,\nedukia {{GENDER:$4|$2}} wikilariaren azken bertsiora itzuli da.",
        "sessionfailure-title": "Saio-akatsa",
        "sessionfailure": "Badirudi saioarekin arazoren bat dagoela; bandalismoak saihesteko ekintza hau ezeztatu egin da. Mesedez, nabigatzaileko \"atzera\" botoian klik egin, hona ekarri zaituen orrialde hori berriz kargatu, eta saiatu berriz.",
+       "changecontentmodel": "Aldatu orri bateko eduki eredua",
+       "changecontentmodel-legend": "Aldatu eduki eredua",
        "changecontentmodel-title-label": "Orriaren izenburua",
+       "changecontentmodel-model-label": "Eduki eredu berria",
        "changecontentmodel-reason-label": "Arrazoia:",
        "changecontentmodel-submit": "Aldatu",
+       "changecontentmodel-success-title": "Eduki eredua aldatu egin da",
+       "changecontentmodel-emptymodels-title": "Eduki eredurik ez dago eskuragarri",
        "logentry-contentmodel-change-revertlink": "desegin",
        "logentry-contentmodel-change-revert": "desegin",
        "protectlogpage": "Babes erregistroa",
        "block-log-flags-hiddenname": "lankide-izen ezkutua",
        "range_block_disabled": "Administratzaileak IP eremuak blokeatzeko gaitasuna ezgaituta dago.",
        "ipb_expiry_invalid": "Aldiaren bukaerako data ez da baliozkoa.",
+       "ipb_expiry_old": "Epemuga iraganean dago.",
        "ipb_expiry_temp": "Izkutuan dauden lankide izenen blokeoa betierekikoa izan behar du.",
        "ipb_hide_invalid": "Ezin izan da kontu hau ezabatu; aldaketa asko izan baitezake.",
        "ipb_already_blocked": "\"$1\" badago blokeatuta",
        "lockdbsuccesstext": "Datu-basea blokeatu egin da. <br />Ez ahaztu mantenu lanak burutu ondoren [[Special:UnlockDB|blokeoa kentzeaz]].",
        "unlockdbsuccesstext": "Datu-basea desblokeatu egin da.",
        "lockfilenotwritable": "Ezin da datu-baseko blokeo fitxategian idatzi. Datu-basea blokeatu edo desblokeatzeko, zerbitzariak idazteko aukera izan beharra dauka.",
+       "databaselocked": "Datu-basea blokeatuta dago jada.",
        "databasenotlocked": "Datu-basea ez dago blokeatuta.",
        "lockedbyandtime": "({{GENDER:$1|$1}}k egina $2ko $3(e)tan)",
        "move-page": "Mugitu «$1»",
        "pageinfo-category-pages": "Orrialde kopurua",
        "pageinfo-category-subcats": "Azpikategorien zenbakia",
        "pageinfo-category-files": "Fitxategi kopurua",
+       "pageinfo-user-id": "Erabiltzaile IDa",
        "markaspatrolleddiff": "Patruilatutzat markatu",
        "markaspatrolledtext": "Artikulu hau patruilatutzat markatu",
        "markaspatrolledtext-file": "Fitxategi honen bertsioa patruilatutzat markatu",
        "patrol-log-header": "Hau patruliatutako aldaketen log bat da.",
        "log-show-hide-patrol": "$1 patruilatze loga",
        "log-show-hide-tag": "$1 etiketa erregistroa",
+       "confirm-markpatrolled-button": "Ados",
        "deletedrevision": "$1 berrikuspen zaharra ezabatu da",
        "filedeleteerror-short": "Errorea fitxategia ezabatzerakoan: $1",
        "filedeleteerror-long": "Erroreak gertatu dira fitxategia ezabatzerakoan:\n\n$1",
        "newimages-legend": "Iragazkia",
        "newimages-label": "Fitxategia (edo bere zati bat):",
        "newimages-user": "IP helbidea edo erabiltzaile-izena",
+       "newimages-newbies": "Soilik kontu berrien ekarpenak erakutsi",
        "newimages-showbots": "Erakutsi botek igotako fitxategiak",
+       "newimages-hidepatrolled": "Izkutatu patruilatutako igoerak",
+       "newimages-mediatype": "Media mota:",
        "noimages": "Ez dago ezer ikusteko.",
        "ilsubmit": "Bilatu",
        "bydate": "dataren arabera",
        "deletedwhileediting": "'''Oharra''': Zu aldaketak egiten hasi ondoren orrialdea ezabatua izan da!",
        "confirmrecreate": "[[User:$1|$1]] erabiltzaileak ([[User talk:$1|eztabaida]]) orrialde hau ezabatu zu aldatzen hasi eta gero. Hona arrazoia: : ''$2'' Mesedez, baieztatu orrialde hau berriz sortu nahi duzula.",
        "recreate": "Birsortu",
+       "confirm-purge-title": "Orri hau purgatu",
        "confirm_purge_button": "Ados",
        "confirm-purge-top": "Orrialde honen katxea ezabatu?",
        "confirm-purge-bottom": "Orrialdea purgatzean katxea ezabatzen du eta orrialdearen bertsiorik eguneratuena erakustera behartzen du.",
        "redirect-page": "Orriaren IDa",
        "redirect-revision": "Orrialdearen berrikuspena",
        "redirect-file": "Fitxategiaren izena",
+       "redirect-logid": "Log IDa",
        "redirect-not-exists": "Ez da baliorik aurkitu",
        "fileduplicatesearch": "Artxibo bikoiztuen bilaketa",
        "fileduplicatesearch-summary": "Bikoiztutako fitxategiak bilatu bere hash balioaren arabera.",
        "tag-filter": "[[Special:Tags|Etiketa]] iragazkia:",
        "tag-filter-submit": "Iragazkia",
        "tag-list-wrapper": "([[Special:Tags|{{PLURAL:$1|Etiketa|Etiketak}}]]: $2)",
+       "tag-mw-contentmodelchange": "Eduki eredu aldaketa",
        "tags-title": "Etiketak",
        "tags-intro": "Orri honek softwareak aldatzeko bezala marka ditzazkeen etiketak zerrendatzen ditu, eta berauen esanahia.",
        "tags-tag": "Etiketaren izena",
        "tags-delete-title": "Etiketa ezabatu",
        "tags-delete-explanation-initial": "Datu-basetik \"$1\" etiketa ezabatzera zoaz",
        "tags-delete-reason": "Arrazoia:",
+       "tags-delete-submit": "Betirako ezabatu etiketa hau",
        "tags-delete-not-found": "\"$1\" etiketa  ez da existitzen.",
+       "tags-delete-no-permission": "Ez daukazu baimenik etiketa aldaketak ezabatzeko.",
        "tags-activate-title": "Etiketa aktibatu",
        "tags-activate-question": "\"$1\" etiketa aktibatzear zaude.",
        "tags-activate-reason": "Arrazoia:",
        "tags-edit-remove": "Kendu etiketa hauek:",
        "tags-edit-remove-all-tags": "(kendu etiketa guztiak)",
        "tags-edit-chosen-placeholder": "Hautatu etiketa batzuk",
+       "tags-edit-chosen-no-results": "Balio duen etiketarik ez da aurkitu",
        "tags-edit-reason": "Arrazoia:",
        "tags-edit-success": "Aldaketak ezarri dira.",
        "tags-edit-failure": "Ezin izan dira aldaketak ezarri:\n$1",
+       "tags-edit-nooldid-title": "Baliogabeko berrikusketa helburua",
        "comparepages": "Orrialdeak alderatu",
        "compare-page1": "1. orrialdea",
        "compare-page2": "2. orrialdea",
        "htmlform-chosen-placeholder": "Aukeratu",
        "htmlform-cloner-create": "Gehitu gehiago",
        "htmlform-cloner-delete": "Kendu",
+       "htmlform-cloner-required": "Gutxienez balio bat behar da.",
        "htmlform-date-placeholder": "UUUU-HH-EE",
        "htmlform-time-placeholder": "OO:MM:SS",
        "htmlform-datetime-placeholder": "UUUU-HH-EE OO:MM:SS",
        "pagelang-language": "Hizkuntza",
        "pagelang-use-default": "Hizkuntza lehenetsia erabili",
        "pagelang-select-lang": "Hizkuntza aukeratu",
+       "pagelang-reason": "Arrazoia",
        "pagelang-submit": "Bidali",
+       "pagelang-nonexistent-page": "$1 orria ez da existitzen.",
        "pagelang-unchanged-language": "$1 orrialdea jada $2 hizkuntzan dago.",
        "right-pagelang": "Aldatu orrialdearen hizkuntza",
        "action-pagelang": "orrialdearen hizkuntza aldatu",
        "special-characters-group-ipa": "NAF",
        "special-characters-group-symbols": "Ikurrak",
        "special-characters-group-greek": "Greziera",
+       "special-characters-group-greekextended": "Luzatutako Greziera",
        "special-characters-group-cyrillic": "Zirilikoa",
        "special-characters-group-arabic": "Arabiera",
        "special-characters-group-arabicextended": "Arabiera hedatua",
        "special-characters-group-thai": "Thaiera",
        "special-characters-group-lao": "Laosera",
        "special-characters-group-khmer": "Khmerrera",
+       "special-characters-group-canadianaboriginal": "Kanadiar aborigenoa",
        "special-characters-title-endash": "en lerroa",
        "special-characters-title-emdash": "em lerroa",
        "special-characters-title-minus": "minus zeinua",
        "mw-widgets-dateinput-no-date": "Ez duzu datarik aukeratu",
+       "mw-widgets-mediasearch-input-placeholder": "Multimedia bilatu",
        "mw-widgets-mediasearch-noresults": "Ez da emaitzarik aurkitu.",
        "mw-widgets-titleinput-description-new-page": "orri hori oraindik ez da existitzen",
        "mw-widgets-titleinput-description-redirect": "$1ra birzuzendu",
        "sessionprovider-generic": "$1 sesio",
        "randomrootpage": "Ausazko sustrai orria",
        "log-action-filter-block": "Blokeatze mota:",
+       "log-action-filter-contentmodel": "Eduki eredu motaren aldaketa:",
        "log-action-filter-delete": "Ezabatze mota:",
        "log-action-filter-import": "Inportazio mota:",
        "log-action-filter-move": "Mugimendu mota:",
        "log-action-filter-block-block": "Blokeatu",
        "log-action-filter-block-reblock": "Blokeoa aldatu",
        "log-action-filter-block-unblock": "blokeoa kendu",
+       "log-action-filter-contentmodel-change": "Aldatu eduki eredua",
+       "log-action-filter-delete-delete": "Orri ezabaketa",
+       "log-action-filter-delete-restore": "Ezabatutako orria berreskuratu",
        "log-action-filter-delete-revision": "Berrikuspen ezabaketa",
        "log-action-filter-import-interwiki": "Transwiki inportazioa",
        "log-action-filter-import-upload": "Inportatu XML igoera bidez",
        "log-action-filter-managetags-delete": "Etiketa ezabaketa",
        "log-action-filter-managetags-activate": "Etiketa aktibazioa",
        "log-action-filter-managetags-deactivate": "Etiketa desaktibazioa",
+       "log-action-filter-newusers-create": "Erabiltzaile anonimo batek sortua",
+       "log-action-filter-newusers-create2": "Izena emandako erabiltzaile batek idatzia",
        "log-action-filter-newusers-autocreate": "Sorrera automatikoa",
+       "log-action-filter-patrol-patrol": "Patruilaketa manuala",
+       "log-action-filter-patrol-autopatrol": "Patruilaketa automatikoa",
        "log-action-filter-protect-protect": "Babesa",
+       "log-action-filter-protect-modify": "Babespen aldaketa",
+       "log-action-filter-protect-unprotect": "Babesgabea",
+       "log-action-filter-protect-move_prot": "Mugitutako babesa",
        "log-action-filter-rights-rights": "Eskuzko aldaketa",
        "log-action-filter-rights-autopromote": "Aldaketa automatikoa",
        "log-action-filter-upload-upload": "Igoera berria",
+       "log-action-filter-upload-overwrite": "Birkargatu",
+       "authmanager-authplugin-setpass-failed-title": "Ezin izan da pasahitza aldatu",
+       "authmanager-authplugin-setpass-bad-domain": "Balio ez duen domeinua.",
+       "authmanager-autocreate-noperm": "Ezin da automatikoki erabiltzaile bat sortu.",
        "authmanager-userdoesnotexist": "\"$1\" erabiltzaile kontua ez dago erregistratua.",
+       "authmanager-retype-help": "Pasahitza berriro baieztatzeko.",
        "authmanager-email-label": "Emaila",
        "authmanager-email-help": "Helbide elektronikoa",
        "authmanager-realname-label": "Benetako izena",
        "authmanager-realname-help": "Erabiltzailearen benetako izena",
+       "authmanager-provider-password": "Pasahitzan oinarritutako baieztapena",
+       "authmanager-provider-password-domain": "Pasahitza eta domeinuan oinarritutako baieztapena",
        "authmanager-provider-temporarypassword": "Behin-behineko pasahitza",
        "authprovider-resetpass-skip-label": "Utzi",
        "authform-wrongtoken": "Token okerra",
+       "specialpage-securitylevel-not-allowed-title": "Baimenik gabe",
+       "cannotauth-not-allowed-title": "Ez da baimendu",
+       "cannotauth-not-allowed": "Ez duzu baimenik orri hau erabiltzeko",
+       "changecredentials": "Kredentzialak aldatu",
        "credentialsform-account": "Kontuaren izena:",
        "gotointerwiki": "{{SITENAME}}(e)tik irteten"
 }
index 47eed7a..4f63845 100644 (file)
        "recentchanges-legend-newpage": "{{int:recentchanges-label-newpage}} (همچنین به [[Special:NewPages|فهرست صفحات تازه]] نگاه کنید)",
        "recentchanges-legend-plusminus": "(<em>±۱۲۳</em>)",
        "recentchanges-submit": "نمایش",
+       "rcfilters-legend-heading": "<strong>فهرست کوته‌نوشت‌ها:</strong>",
        "rcfilters-activefilters": "پالایه‌های فعال",
        "rcfilters-advancedfilters": "پالایه‌‌های پیشرفته",
        "rcfilters-quickfilters": "پالایه‌های ذخیره‌شده",
index 2937902..e0d2f21 100644 (file)
        "passwordtoolong": "Les mots de passe ne peuvent pas dépasser $1 caractère{{PLURAL:$1||s}}.",
        "passwordtoopopular": "Les mots de passe trop courants ne peuvent pas être utilisés. Veuillez choisir un mot de passe plus original.",
        "password-name-match": "Votre mot de passe doit être différent de votre nom d’utilisateur.",
-       "password-login-forbidden": "L’utilisation de ce nom d’utilisateur et/ou de ce mot de passe a été interdite.",
+       "password-login-forbidden": "L’utilisation de ce nom d’utilisateur ou de ce mot de passe a été interdite.",
        "mailmypassword": "Réinitialiser le mot de passe",
        "passwordremindertitle": "Nouveau mot de passe temporaire pour {{SITENAME}}",
        "passwordremindertext": "Quelqu’un (probablement vous, ayant l’adresse IP $1) a demandé un nouveau mot de\npasse pour {{SITENAME}} ($4). Un mot de passe temporaire pour l’utilisateur\n« $2 » a été créé et est « $3 ». Si cela était votre intention,\nvous devrez vous connecter et choisir un nouveau mot de passe.\nVotre mot de passe temporaire expirera dans $5 jour{{PLURAL:$5||s}}.\n\nSi vous n’êtes pas l’auteur de cette demande, ou si vous vous souvenez à présent de\nvotre mot de passe et ne souhaitez plus en changer, vous pouvez ignorer ce message\net continuer à utiliser votre ancien mot de passe.",
        "recentchanges-legend-newpage": "{{int:recentchanges-label-newpage}} (voir aussi la [[Special:NewPages|liste des nouvelles pages]]).",
        "recentchanges-legend-plusminus": "(''±123'')",
        "recentchanges-submit": "Lister",
+       "rcfilters-legend-heading": "<strong>Liste des abréviations :</strong>",
        "rcfilters-activefilters": "Filtres actifs",
        "rcfilters-advancedfilters": "Filtres avancés",
        "rcfilters-quickfilters": "Filtres sauvegardés",
        "undelete-search-title": "Rechercher les pages supprimées",
        "undelete-search-box": "Rechercher les pages supprimées",
        "undelete-search-prefix": "Montrer les pages commençant par :",
+       "undelete-search-full": "Afficher les pages de titre contenant :",
        "undelete-search-submit": "Rechercher",
        "undelete-no-results": "Aucune page correspondante n’a été trouvée dans les archives de suppression.",
        "undelete-filename-mismatch": "Impossible de restaurer la version du fichier datée du $1 : le nom de fichier ne correspond pas.",
        "ip_range_invalid": "Plage d’adresses IP incorrecte.",
        "ip_range_toolarge": "Les plages de blocage plus grandes que /$1 ne sont pas autorisées.",
        "proxyblocker": "Bloqueur de mandataires",
-       "proxyblockreason": "Votre adresse IP a été bloquée car il s'agit d'un mandataire ouvert.\nVeuillez contacter votre fournisseur d'accès Internet ou votre support technique et l'informer de ce sérieux problème de sécurité.",
+       "proxyblockreason": "Votre adresse IP a été bloquée car il s’agit d’un mandataire ouvert.\nVeuillez contacter votre fournisseur d’accès Internet ou votre soutien technique et l’informer de ce sérieux problème de sécurité.",
        "sorbsreason": "Votre adresse IP est listée comme mandataire ouvert dans le DNSBL utilisé par {{SITENAME}}.",
        "sorbs_create_account_reason": "Votre adresse IP est listée comme mandataire ouvert dans le DNSBL utilisé par {{SITENAME}}.\nVous ne pouvez pas créer un compte.",
        "softblockrangesreason": "Les contributions anonymes ne sont pas autorisées à partir de votre adresse IP ($1). Veuillez vous connecter.",
        "tags-create-warnings-below": "Voulez-vous continuer la création de la balise?",
        "tags-delete-title": "Supprimer la balise",
        "tags-delete-explanation-initial": "Vous êtes sur le point de supprimer la balise « $1 » de la base de données.",
-       "tags-delete-explanation-in-use": "Elle sera supprimée de {{PLURAL:$2|$2 révision ou entrée de journal à laquelle|toutes les $2 révisions et/ou entrées de journal auxquelles}} elle est actuellement appliquée.",
+       "tags-delete-explanation-in-use": "Elle sera supprimée de {{PLURAL:$2|$2 révision ou entrée de journal à laquelle|toutes les $2 révisions ou entrées de journal auxquelles}} elle est actuellement appliquée.",
        "tags-delete-explanation-warning": "Cette action est <strong>irréversible</strong> et <strong>ne peut pas être annulée</strong>, même pas par les administrateurs de base de données. Soyez certain que c'est cette balise que vous voulez supprimer.",
        "tags-delete-explanation-active": "<strong>La balise « $1 » est toujours active, et continuera à être appliquée dans le futur. </strong> Pour arrêter cela, allez à l'endroit (ou aux endroits) où la balise est appliquée, et désactivez la.",
        "tags-delete-reason": "Motif :",
        "log-name-pagelang": "Tracer les changements de langue",
        "log-description-pagelang": "Ceci est un journal des changements dans les langues des pages.",
        "logentry-pagelang-pagelang": "$1 {{GENDER:$2|a changé}} la langue de la page $3 de $4 à $5.",
-       "default-skin-not-found": "Oups ! L’habillage par défaut pour votre wiki, défini par <code dir=\"ltr\">$wgDefaultSkin</code> comme <code>$1</code>, n’est pas disponible.\n\nVotre installation semble inclure {{PLURAL:$4|l’habillage suivant|les habillages suivants}}. Voyez [https://www.mediawiki.org/wiki/Manual:Skin_configuration le manuel de configuration des habillages] pour savoir comment {{PLURAL:$4|l’|les }}activer et choisir celui par défaut.\n\n$2\n\n; Si vous venez juste d’installer MediaWiki :\n: Vous l’avez probablement installé depuis git, ou directement depuis le code source avec une autre méthode. C’est normal. Essayez d’installer des habillages depuis [https://www.mediawiki.org/wiki/Category:All_skins le répertoire des habillages de mediawiki.org], en:\n:* Téléchargeant le [https://www.mediawiki.org/wiki/Download fichier tar de l’installeur], qui comprend plusieurs habillages et extensions. Vous pouvez copier et coller le répertoire <code>skins/</code> depuis là.\n:* Téléchargeant les fichiers tar d’habillage individuel depuis [https://www.mediawiki.org/wiki/Special:SkinDistributor mediawiki.org].\n:* [https://www.mediawiki.org/wiki/Download_from_Git#Using_Git_to_download_MediaWiki_skins Téléchargeant des habillages avec Git].\n: Faire ainsi ne devrait pas interférer avec votre dépôt git, si vous êtes un développeur de MediaWiki.\n\n; Si vous venez juste de mettre à jour MediaWiki :\n: MediaWiki 1.24 et au-delà n’active plus automatiquement les habillages installés (voyez [https://www.mediawiki.org/wiki/Manual:Skin_autodiscovery le manuel sur la découverte automatique des habillages]). Vous pouvez coller {{PLURAL:$5|la ligne suivante|les lignes suivantes}} dans <code>LocalSettings.php</code> pour activer {{PLURAL:$5|l’habillage actuellement installé|tous les habillages actuellement installés}} :\n\n<pre dir=\"ltr\">$3</pre>\n\n; Si vous venez de modifier <code>LocalSettings.php</code> :\n: Vérifiez deux fois le nom des habillages pour éviter les erreurs de frappe.",
-       "default-skin-not-found-no-skins": "Oups ! L’habillage par défaut pour votre wiki , défini par <code>$wgDefaultSkin</code> comme <code>$1</code>, n’est pas disponible.\n\nVous n’avez aucun habillage d’installé.\n\n; Si vous venez juste d’installer ou de mettre à jour MediaWiki :\n: Vous l’avez sans doute fait depuis git, ou directement depuis le code source avec une autre méthode. C’est normal. MediaWiki 1.24 et au-delà n’inclut aucun habillage dans le dépôt principal. Essayez d’installer des habillages depuis [https://www.mediawiki.org/wiki/Category:All_skins le répertoire des habillages de mediawiki.org], en :\n:* Téléchargeant [https://www.mediawiki.org/wiki/Download le fichier tar de l’installeur], qui comprend différents habillages et extensions. Vous pouvez copier et coller le répertoire <code>skins/</code> depuis là.\n:* Téléchargeant les fichiers tar d’habillage individuel depuis [https://www.mediawiki.org/wiki/Special:SkinDistributor mediawiki.org].\n:* [https://www.mediawiki.org/wiki/Download_from_Git#Using_Git_to_download_MediaWiki_skins Utiliser Git pour télécharger des habillages].\n: Faire ainsi ne devrait pas interférer avec votre dépôt git si vous êtes un développeur de MediaWiki. Voyez [https://www.mediawiki.org/wiki/Manual:Skin_configuration le manuel de la configuration des habillages] pour des instructions sur la manière d’activer les habillages et choisir celui par défaut.",
+       "default-skin-not-found": "Oups ! L’habillage par défaut pour votre wiki, défini par <code dir=\"ltr\">$wgDefaultSkin</code> comme <code>$1</code>, n’est pas disponible.\n\nVotre installation semble inclure {{PLURAL:$4|l’habillage suivant|les habillages suivants}}. Voyez [https://www.mediawiki.org/wiki/Manual:Skin_configuration le manuel de configuration des habillages] pour savoir comment {{PLURAL:$4|l’|les }}activer et choisir celui par défaut.\n\n$2\n\n; Si vous venez juste d’installer MediaWiki :\n: Vous l’avez probablement installé depuis git, ou directement depuis le code source avec une autre méthode. C’est normal. Essayez d’installer des habillages depuis [https://www.mediawiki.org/wiki/Category:All_skins le répertoire des habillages de mediawiki.org], en:\n:* Téléchargeant le [https://www.mediawiki.org/wiki/Download fichier tar du programme d’installation], qui comprend plusieurs habillages et extensions. Vous pouvez copier et coller le répertoire <code>skins/</code> depuis là.\n:* Téléchargeant les fichiers tar d’habillage individuel depuis [https://www.mediawiki.org/wiki/Special:SkinDistributor mediawiki.org].\n:* [https://www.mediawiki.org/wiki/Download_from_Git#Using_Git_to_download_MediaWiki_skins Téléchargeant des habillages avec Git].\n: Faire ainsi ne devrait pas interférer avec votre dépôt git, si vous êtes un développeur de MediaWiki.\n\n; Si vous venez juste de mettre à jour MediaWiki :\n: MediaWiki 1.24 et au-delà n’active plus automatiquement les habillages installés (voyez [https://www.mediawiki.org/wiki/Manual:Skin_autodiscovery le manuel sur la découverte automatique des habillages]). Vous pouvez coller {{PLURAL:$5|la ligne suivante|les lignes suivantes}} dans <code>LocalSettings.php</code> pour activer {{PLURAL:$5|l’habillage actuellement installé|tous les habillages actuellement installés}} :\n\n<pre dir=\"ltr\">$3</pre>\n\n; Si vous venez de modifier <code>LocalSettings.php</code> :\n: Vérifiez deux fois le nom des habillages pour éviter les erreurs de frappe.",
+       "default-skin-not-found-no-skins": "Oups ! L’habillage par défaut pour votre wiki , défini par <code>$wgDefaultSkin</code> comme <code>$1</code>, n’est pas disponible.\n\nVous n’avez aucun habillage d’installé.\n\n; Si vous venez juste d’installer ou de mettre à jour MediaWiki :\n: Vous l’avez sans doute fait depuis git, ou directement depuis le code source avec une autre méthode. C’est normal. MediaWiki 1.24 et au-delà n’inclut aucun habillage dans le dépôt principal. Essayez d’installer des habillages depuis [https://www.mediawiki.org/wiki/Category:All_skins le répertoire des habillages de mediawiki.org], en :\n:* Téléchargeant [https://www.mediawiki.org/wiki/Download le fichier tar du programme d’installation], qui comprend différents habillages et extensions. Vous pouvez copier et coller le répertoire <code>skins/</code> depuis là.\n:* Téléchargeant les fichiers tar d’habillage individuel depuis [https://www.mediawiki.org/wiki/Special:SkinDistributor mediawiki.org].\n:* [https://www.mediawiki.org/wiki/Download_from_Git#Using_Git_to_download_MediaWiki_skins Utiliser Git pour télécharger des habillages].\n: Faire ainsi ne devrait pas interférer avec votre dépôt git si vous êtes un développeur de MediaWiki. Voyez [https://www.mediawiki.org/wiki/Manual:Skin_configuration le manuel de la configuration des habillages] pour des instructions sur la manière d’activer les habillages et choisir celui par défaut.",
        "default-skin-not-found-row-enabled": "* <code>$1</code> / $2 (activé)",
        "default-skin-not-found-row-disabled": "* <code>$1</code> / $2 (<strong>désactivé</strong>)",
        "mediastatistics": "Statistiques sur les médias",
        "undelete-cantcreate": "Vous ne pouvez pas annuler la suppression de cette page car il n’existe pas de page avec ce nom, et vous n’êtes pas autorisé à la créer.",
        "pagedata-title": "Données de page",
        "pagedata-text": "Cette page fournit une interface de données aux pages. Veuillez fournir le titre de la page dans l’URL en utilisant la syntaxe de sous-page.\n* La négociation de contenu s’applique d’après l’entête Accept de votre client. Cela veut dire que les données de la page seront fournies dans le format préféré par votre client.",
-       "pagedata-not-acceptable": "Aucun format correspondant trouvé. Types MIME supportés : $1",
+       "pagedata-not-acceptable": "Aucun format correspondant trouvé. Types MIME pris en charge : $1",
        "pagedata-bad-title": "Titre non valide : $1."
 }
index 09a8aad..9de6680 100644 (file)
        "recentchanges-legend-newpage": "{{int:recentchanges-label-newpage}} (véxase tamén a [[Special:NewPages|lista de páxinas novas]])",
        "recentchanges-legend-plusminus": "(''±123'')",
        "recentchanges-submit": "Mostrar",
+       "rcfilters-legend-heading": "<strong>Lista de abreviaturas:</strong>",
        "rcfilters-activefilters": "Filtros activos",
        "rcfilters-advancedfilters": "Filtros avanzados",
        "rcfilters-quickfilters": "Filtros gardados",
        "undelete-search-title": "Procurar páxinas borradas",
        "undelete-search-box": "Procurar páxinas borradas",
        "undelete-search-prefix": "Mostrar as páxinas que comecen por:",
+       "undelete-search-full": "Amosar páxinas que conteñan:",
        "undelete-search-submit": "Procurar",
        "undelete-no-results": "Non se atoparon páxinas coincidentes no arquivo de eliminacións.",
        "undelete-filename-mismatch": "Non se pode restaurar a revisión do ficheiro datada en $1: Non corresponde o nome do ficheiro.",
index 37b3a57..44fe822 100644 (file)
        "anontalk": "Magana",
        "navigation": "Shawagi",
        "faq": "Jerin tambayoyi",
+       "actions": "ayyuka",
        "errorpagetitle": "Tangarɗa",
        "returnto": "Koma $1",
        "tagline": "Daga {{SITENAME}}",
        "redirectedfrom": "(an turo daga $1)",
        "redirectpagesub": "Shafin turawa",
        "lastmodifiedat": "Gyaran baya na wannan shafi ran $1, a $2.",
+       "protectedpage": "Shafi da aka kare",
        "jumpto": "A tsallaka zuwa:",
        "jumptonavigation": "Shawagi",
        "jumptosearch": "nema",
        "mainpage": "Marhabin",
        "mainpage-description": "Babban shafi",
        "policy-url": "Shiri:Siyasa",
+       "portal": "Kofan al'umma",
        "portal-url": "Shiri:Kofan al'umma",
        "privacy": "Manufar kare sirri",
        "privacypage": "Project:Manufar kare sirri",
        "badaccess": "Tangarɗar lamuncewa",
+       "badaccess-group0": "ba ka da damar yin wannan aikin",
        "ok": "Toh",
        "retrievedfrom": "Daga \"$1\"",
        "youhavenewmessages": "Kuna da $1 ($2).",
        "editsection": "gyarawa",
        "editold": "gyarawa",
+       "viewsourceold": "duba masomi",
        "editlink": "gyarawa",
        "viewsourcelink": "duba tushe",
        "editsectionhint": "Gyara sashe: $1",
        "createacct-yourpasswordagain": "Tabbata kalmar sirri",
        "createacct-yourpasswordagain-ph": "Shiga kalmar sirri sake",
        "userlogin-remembermypassword": "Ci gaba da ni cikin",
+       "userlogin-signwithsecure": "amfani da kafaffen haɗi",
+       "cannotlogin-title": "iya ba shiga",
+       "cannotlogin-text": "iya ba shiga",
+       "cannotloginnow-title": "iya ba shiga yanzu",
        "login": "Shiga",
        "nav-login-createaccount": "Shiga / ƙirƙiri akwanti",
        "logout": "Fita",
        "userlogout": "Fita",
+       "createacct-emailrequired": "adireshin i-mel",
+       "createacct-emailoptional": "adireshin i-mel (zaɓi)",
+       "createacct-email-ph": "shiga adireshinka i-mel",
+       "createacct-another-email-ph": "shiga adireshin i-mel",
        "createacct-realname": "Suna na hakika (zaɓi)",
        "mailmypassword": "Aiken kalmar sirri ta Imel",
        "emailconfirmlink": "Tabbata adireshinka i-mel",
index 629bb70..24b6059 100644 (file)
        "booksources-search": "Keresés",
        "booksources-text": "Alább látható a másik webhelyekre mutató hivatkozások listája, ahol új és használt könyveket árulnak, és\ntovábbi információkat lelhetsz ott az általad keresett könyvekről:",
        "booksources-invalid-isbn": "A megadott ISBN hibásnak tűnik; ellenőrizd, hogy jól másoltad-e át az eredeti forrásból.",
+       "magiclink-tracking-rfc": "Mágikus RFC-linkeket használó lapok",
+       "magiclink-tracking-rfc-desc": "Ez az oldal mágikus RFC-linkeket használ. Javításukhoz a [https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Magic_links mediawiki.org]-on találsz segítséget.",
+       "magiclink-tracking-pmid": "Mágikus PMID-linkeket használó lapok",
+       "magiclink-tracking-pmid-desc": "Ez az oldal mágikus PMID-linkeket használ. Javításukhoz a [https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Magic_links mediawiki.org]-on találsz segítséget.",
+       "magiclink-tracking-isbn": "Mágikus ISBN-linkeket használó lapok",
+       "magiclink-tracking-isbn-desc": "Ez az oldal mágikus ISBN-linkeket használ. Javításukhoz a [https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Magic_links mediawiki.org]-on találsz segítséget.",
        "specialloguserlabel": "Szerkesztő:",
        "speciallogtitlelabel": "Cél (cím vagy felhasználóhoz {{ns:user}}:felhasználói név):",
        "log": "Rendszernaplók",
        "autoblocklist-submit": "Keresés",
        "autoblocklist-legend": "Autoblokkok listája",
        "autoblocklist-localblocks": "Helyi {{PLURAL:$1|autoblokk|autoblokkok}}",
+       "autoblocklist-total-autoblocks": "Autoblokkok száma: $1",
        "autoblocklist-empty": "Az autoblokklista üres.",
        "autoblocklist-otherblocks": "Egyéb {{PLURAL:$1|autoblokk|autoblokkok}}",
        "ipblocklist": "Blokkolt felhasználók",
        "newimages-legend": "Fájlnév",
        "newimages-label": "Fájlnév (vagy annak részlete):",
        "newimages-user": "IP-cím vagy felhasználónév",
+       "newimages-newbies": "Csak az újonnan regisztrált szerkesztők közreműködéseinek mutatása",
        "newimages-showbots": "Botos feltöltések mutatása",
        "newimages-hidepatrolled": "Ellenőrzött szerkesztések elrejtése",
        "newimages-mediatype": "Médiatípus:",
        "tags-create-reason": "Indoklás:",
        "tags-create-submit": "Létrehozás",
        "tags-create-no-name": "Kötelező megadnod egy címkenevet.",
-       "tags-create-invalid-chars": "Címkenevek nem tartalmazhatnak vesszőt (<code>,</code>) és normál perjelet (<code>/</code>).",
+       "tags-create-invalid-chars": "Címkenevek nem tartalmazhatnak vesszőt (<code>,</code>), függőleges vonalat (<code>|</code>) és normál perjelet (<code>/</code>).",
        "tags-create-invalid-title-chars": "Címkenevek nem tartalmazhatnak lapcímben nem használható karaktereket.",
        "tags-create-already-exists": "A(z) „$1” címke már létezik.",
        "tags-create-warnings-above": "A következő {{PLURAL:$2|figyelmeztetést|figyelmeztetéseket}} találtam a(z) „$1” címke létrehozási kísérlete közben:",
        "gotointerwiki-external": "A(z) {{SITENAME}} elhagyására és a(z) [[$2]] meglátogatására készülsz, ami egy másik webhelyen található.\n\n[$1 Kattints ide a(z) $1 oldalra való továbblépéshez.]",
        "undelete-cantedit": "Nem állíthatod helyre ezt a lapot, mert nincs jogosultságod a szerkesztéséhez.",
        "undelete-cantcreate": "Nem állíthatod helyre ezt a lapot, mert nem létezik ilyen című lap, és nincs jogosultságod létrehozni azt.",
+       "pagedata-title": "Az oldal adatai",
+       "pagedata-not-acceptable": "Nem található megfelelő formátum. Támogatott MIME-típusok: $1",
        "pagedata-bad-title": "Érvénytelen cím: $1."
 }
index 53bacc4..c44863c 100644 (file)
        "recentchanges-legend-newpage": "{{int:recentchanges-label-newpage}} (vide etiam le [[Special:NewPages|lista de nove paginas]])",
        "recentchanges-legend-plusminus": "(''±123'')",
        "recentchanges-submit": "Monstrar",
+       "rcfilters-legend-heading": "<strong>Lista de abbreviationes:</strong>",
        "rcfilters-activefilters": "Filtros active",
        "rcfilters-advancedfilters": "Filtros avantiate",
        "rcfilters-quickfilters": "Filtros salveguardate",
        "undelete-search-title": "Cercar paginas delite",
        "undelete-search-box": "Cercar paginas delite",
        "undelete-search-prefix": "Monstrar paginas que comencia con:",
+       "undelete-search-full": "Monstrar paginas con titulos que contine:",
        "undelete-search-submit": "Cercar",
        "undelete-no-results": "Nulle paginas correspondente trovate in le archivo de deletiones.",
        "undelete-filename-mismatch": "Non pote restaurar le version del file con data e hora $1: le nomine del file non corresponde",
index d9e730d..df9fad9 100644 (file)
@@ -82,7 +82,8 @@
                        "Aefgh39622",
                        "Ayame",
                        "Omotecho",
-                       "Thibaut120094"
+                       "Thibaut120094",
+                       "Translatealcd"
                ]
        },
        "tog-underline": "リンクの下線:",
        "userrights-viewusergroup": "{{GENDER:$1|利用者}}グループ",
        "saveusergroups": "{{GENDER:$1|利用者}}グループを保存",
        "userrights-groupsmember": "所属グループ:",
-       "userrights-groupsmember-auto": "自動的に付与される権限:",
+       "userrights-groupsmember-auto": "秘匿した所属グループ",
        "userrights-groupsmember-type": "$1",
        "userrights-groups-help": "この利用者が属するグループを変更できます。\n* チェックが入っているボックスは、この利用者がそのグループに属していることを意味します。\n* チェックが入っていないボックスは、この利用者がそのグループに属していないことを意味します。\n*「*」はグループに一旦追加した場合に除去 (あるいはその逆) ができないことを示しています。\n*「#」は有効期限の延長のみを行うことができるグループの参加資格を示します; 現在の期限よりも短縮することはできません。",
        "userrights-reason": "理由:",
        "group-bot": "ボット",
        "group-sysop": "管理者",
        "group-bureaucrat": "ビューロクラット",
-       "group-suppress": "ç§\98å\8c¿è\80\85",
+       "group-suppress": "ç\9b£ç\9d£å\93¡",
        "group-all": "(全員)",
        "group-user-member": "{{GENDER:$1|登録利用者}}",
        "group-autoconfirmed-member": "{{GENDER:$1|自動承認された利用者}}",
        "recentchanges-legend-newpage": "{{int:recentchanges-label-newpage}} ([[Special:NewPages|新しいページ一覧]]も参照)",
        "recentchanges-legend-plusminus": "(<em>±123</em>)",
        "recentchanges-submit": "表示",
+       "rcfilters-legend-heading": "<strong>略語のリスト:</strong>",
        "rcfilters-activefilters": "絞り込み",
+       "rcfilters-advancedfilters": "詳細フィルター",
        "rcfilters-quickfilters": "フィルターを保存",
        "rcfilters-quickfilters-placeholder-title": "リンクはまだ保存されていません",
        "rcfilters-quickfilters-placeholder-description": "フィルターの設定を保存し、後で再び使用するためには、下のアクティブフィルター内のブックマークアイコンをクリックしてください。",
        "rcfilters-filtergroup-lastRevision": "最新版",
        "rcfilters-filter-lastrevision-label": "最新版",
        "rcfilters-filter-lastrevision-description": "ページの最新の変更",
-       "rcfilters-filter-previousrevision-label": "新しい版",
+       "rcfilters-filter-previousrevision-label": "い版",
        "rcfilters-filter-previousrevision-description": "ページの最新の変更ではない全ての変更。",
+       "rcfilters-view-namespaces-tooltip": "名前空間別のフィルター結果",
+       "rcfilters-view-tags-tooltip": "編集タグを利用した絞込み",
        "rcnotefrom": "以下は<strong>$3 $4</strong>以降の{{PLURAL:$5|更新です}} (最大 <strong>$1</strong> 件)。",
        "rclistfromreset": "日時指定をリセット",
        "rclistfrom": "$3の$2以降の更新を表示する",
        "newimages-legend": "絞り込み",
        "newimages-label": "ファイル名 (またはその一部):",
        "newimages-user": "IPアドレスまたは利用者名:",
+       "newimages-newbies": "新規利用者の投稿のみ表示",
        "newimages-showbots": "ボットによるアップロードを表示",
        "newimages-hidepatrolled": "巡回済みのアップロードを隠す",
        "noimages": "表示できるものがありません。",
        "gotointerwiki-external": "{{SITENAME}}を離れ、別のウェブサイトである[[$2]]を訪れようとしています。\n\n'''[$1 $1に行く]'''",
        "undelete-cantedit": "このページを編集する許可がないため復元できません。",
        "undelete-cantcreate": "同名のページが存在せず、このページを作成する許可がないため復元できません。",
-       "pagedata-not-acceptable": "該当する形式が見つかりません。対応している MIME タイプ: $1"
+       "pagedata-title": "ページ・データ",
+       "pagedata-not-acceptable": "該当する形式が見つかりません。対応している MIME タイプ: $1",
+       "pagedata-bad-title": "「$1」は無効なページ名です。"
 }
index 9522e03..e8ffe2d 100644 (file)
        "redirectedfrom": "(ត្រូវបានបញ្ជូនបន្តពី $1)",
        "redirectpagesub": "ទំព័របញ្ជូនបន្ត",
        "redirectto": "បញ្ជូនបន្តទៅ៖",
-       "lastmodifiedat": "ទំព័រនេះត្រូវបានកែចុងក្រោយនៅ$2 $1",
+       "lastmodifiedat": "ទំព័រនេះត្រូវបានកែចុងក្រោយនៅ$2 $1",
        "viewcount": "ទំព័រនេះ​ត្រូវបានចូលមើល​ចំនួន'''{{PLURAL:$1|ម្ដង|$1ដង}}'''",
        "protectedpage": "ទំព័រដែលត្រូវបានការពារ",
        "jumpto": "លោតទៅ៖",
        "newarticle": "(ថ្មី)",
        "newarticletext": "អ្នកបានតាម​តំណភ្ជាប់​ទៅ​ទំព័រដែលមិនទាន់មាននៅឡើយ។\nដើម្បីបង្កើតទំព័រនេះ សូមចាប់ផ្ដើមវាយ​ក្នុងប្រអប់ខាងក្រោម (សូមមើល [$1 ទំព័រ​ជំនួយ] សម្រាប់​ព័ត៌មានបន្ថែម)។\nបើ​អ្នក​មក​ទីនេះដោយអចេតនា សូមចុចប៊ូតុង '''ត្រឡប់ក្រោយ''' របស់ឧបករណ៍រាវរករបស់អ្នក។",
        "anontalkpagetext": "----''ទំព័រពិភាក្សានេះគឺសម្រាប់តែអ្នកប្រើប្រាស់អនាមិកដែលមិនទាន់បានបង្កើតគណនីតែប៉ុណ្ណោះ។ ដូច្នេះអាសយដ្ឋានលេខIPរបស់កុំព្យូទ័ររបស់លោកអ្នក​នឹងត្រូវបានបង្ហាញ ដើមី្បសម្គាល់លោកអ្នក។\n\nអាសយដ្ឋានIPទាំងនោះអាចនឹងត្រូវប្រើដោយមនុស្សច្រើននាក់។\n\nប្រសិនបើអ្នកជាអ្នកប្រើប្រាស់អនាមិក​ហើយ​ប្រសិនបើអ្នកឃើញមានការបញ្ចេញយោបល់មកអ្នកពីអ្វី​ដែល​មិន​ទាក់ទងទៅនឹងអ្វីដែល​អ្នកបាន​ធ្វើ​ សូម[[Special:CreateAccount|បង្កើតគណនី]] ឬ [[Special:UserLogin|កត់ឈ្មោះចូល]] ដើម្បីចៀសវាង​ការភ័ន្តច្រឡំ​ណាមួយជាយថាហេតុជាមួយនិងអ្នកប្រើប្រាស់អនាមិកដទៃទៀត។''",
-       "noarticletext": "បច្ចុប្បន្នគ្មានអត្ថបទក្នុងទំព័រនេះទេ។\n\nអ្នកអាច [[Special:Search/{{PAGENAME}}|ស្វែងរក​ចំណងជើង​នៃទំព័រនេះ]]ក្នុងទំព័រដទៃទៀត​​ ឬ [{{fullurl:{{#Special:Log}}|page={{FULLPAGENAMEE}}}} ស្វែង​រក​កំណត់​ហេតុ​ដែល​ពាក់ព័ន្ធ] ឬ [{{fullurl:{{FULLPAGENAME}}|action=edit}} កែប្រែ​ទំព័រនេះ]។",
+       "noarticletext": "បច្ចុប្បន្នគ្មានអត្ថបទក្នុងទំព័រនេះទេ។\n\nអ្នកអាច [[Special:Search/{{PAGENAME}}|ស្វែងរក​ចំណងជើង​នៃទំព័រនេះ]]ក្នុងទំព័រដទៃទៀត​​ ឬ <span class=\"plainlinks\">[{{fullurl:{{#Special:Log}}|page={{FULLPAGENAMEE}}}} ស្វែង​រក​កំណត់​ហេតុ​ដែល​ពាក់ព័ន្ធ] ឬ [{{fullurl:{{FULLPAGENAME}}|action=edit}} បង្កើត​ទំព័រនេះ]</span>។",
        "noarticletext-nopermission": "បច្ចុប្បន្ន គ្មានអត្ថបទណាមួយក្នុងទំព័រនេះទេ។\n\nអ្នកអាច [[Special:Search/{{PAGENAME}}|ស្វែងរក​ចំណងជើង​នៃទំព័រនេះ]] ក្នុងទំព័រ​ផ្សេងៗ ឬ<span class=\"plainlinks\">[{{fullurl:{{#Special:Log}}|page={{FULLPAGENAMEE}}}} ស្វែង​រក​កំណត់​ហេតុ​ដែល​ពាក់ព័ន្ធ]</span>។ ប៉ុន្តែអ្នកគ្មានសិទ្ធិក្នុងការបង្កើតទំព័រនេះទេ។",
        "userpage-userdoesnotexist": "គណនីអ្នកប្រើឈ្មោះ\"<nowiki>$1</nowiki>\" មិនទាន់បានចុះបញ្ជី។\n\nចូរគិតម្ដងទៀតថាអ្នកចង់ បង្កើត / កែប្រែ ទំព័រនេះឬទេ។",
        "userpage-userdoesnotexist-view": "គណនីអ្នកប្រើប្រាស់ដែលមានឈ្មោះ \"$1\"មិនទាន់បានចុះឈ្មោះទេ។",
        "searchrelated": "ទាក់ទិន",
        "searchall": "ទាំងអស់",
        "showingresults": "ខាងក្រោមកំពុងបង្ហាញរហូតដល់ {{PLURAL:$1|'''១''' លទ្ឋផល|'''$1''' លទ្ឋផល}} ចាប់ផ្ដើមពីលេខ #'''$2'''។",
+       "search-showingresults": "{{PLURAL:$4|លទ្ធផល <strong>$1</strong> របស់ <strong>$3</strong>|លទ្ធផល <strong>$1 - $2</strong> របស់ <strong>$3</strong>}}",
        "search-nonefound": "មិនមានលទ្ធផលណាមួយ​ត្រូវគ្នានឹងសំណើសុំនេះទេ",
        "powersearch-legend": "ស្វែងរកថ្នាក់ខ្ពស់",
        "powersearch-ns": "ស្វែងរកក្នុងលំហឈ្មោះ៖",
        "rcshowhidemine-hide": "លាក់",
        "rcshowhidecategorization-show": "បង្ហាញ​",
        "rcshowhidecategorization-hide": "លាក់",
-       "rclinks": "បង្ហាញបន្លាស់ប្ដូរ$1ចុងក្រោយធ្វើឡើងក្នុងរយៈពេល$2ថ្ងៃចុងក្រោយ",
+       "rclinks": "បង្ហាញបន្លាស់ប្ដូរ$1ចុងក្រោយ ដែលធ្វើឡើងក្នុងរយៈពេល$2ថ្ងៃចុងក្រោយ",
        "diff": "ប្រៀបធៀប",
        "hist": "ប្រវត្តិ",
        "hide": "លាក់",
        "contributions": "ការរួមចំណែក​របស់{{GENDER:$1|អ្នកប្រើប្រាស់}}",
        "contributions-title": "ការរួមចំណែករបស់អ្នកប្រើប្រាស់ $1",
        "mycontris": "ការរួមចំណែក",
+       "anoncontribs": "ការរួមចំណែក",
        "contribsub2": "សម្រាប់{{GENDER:$3|$1}} ($2)",
        "contributions-userdoesnotexist": "គណនីអ្នកប្រើប្រាស់ដែលមានឈ្មោះ \"$1\"មិនទាន់បានចុះឈ្មោះទេ។",
        "nocontribs": "គ្មានការផ្លាស់ប្តូរត្រូវបានឃើញដូចនឹងលក្ខណៈវិនិច្ឆ័យទាំងនេះ។",
        "import-logentry-upload-detail": "$1 {{PLURAL:$1|កំណែ}}",
        "import-logentry-interwiki-detail": "$1 {{PLURAL:$1|កំណែ}} ពី $2",
        "tooltip-pt-userpage": "ទំព័រ​{{GENDER:|អ្នកប្រើប្រាស់​របស់អ្នក}}",
-       "tooltip-pt-mytalk": "ទំព័រពិភាក្សា​របស់អ្នក​",
+       "tooltip-pt-mytalk": "ទំព័រពិភាក្សា​​{{GENDER:|របស់អ្នក}}",
        "tooltip-pt-anontalk": "ការពិភាក្សាអំពីកំណែប្រែដែល​ធ្វើ​ឡើង​ចេញ​ពីអាសយដ្ឋាន IP នេះ",
-       "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-t-recentchangeslinked": "បន្លាស់ប្ដូរថ្មីៗ ក្នុងទំព័រដែលត្រូវបានភ្ជាប់មក ទំព័រនេះ",
        "tooltip-feed-rss": "បម្រែបម្រួល RSS ចំពោះទំព័រនេះ",
        "tooltip-feed-atom": "បម្រែបម្រួល Atom ចំពោះទំព័រនេះ",
-       "tooltip-t-contributions": "á\9e\94á\9e\84á\9f\92á\9e á\9e¶á\9e\89á\9e\94á\9e\89á\9f\92á\9e\87á\9e¸á\9e\9aá\9e½á\9e\98á\9e\85á\9f\86á\9e\8eá\9f\82á\9e\80á\9e\9aá\9e\94á\9e\9fá\9f\8bá\9e¢á\9f\92á\9e\93á\9e\80á\9e\94á\9f\92á\9e\9aá\9e¾á\9e\94á\9f\92á\9e\9aá\9e¶á\9e\9fá\9f\8bá\9e\93á\9f\81á\9f\87",
-       "tooltip-t-emailuser": "ផ្ញើអ៊ីមែលទៅកាន់អ្នកប្រើប្រាស់នេះ",
+       "tooltip-t-contributions": "á\9e\94á\9e\89á\9f\92á\9e\87á\9e¸á\9e\93á\9f\83á\9e\80á\9e¶á\9e\9aá\9e\9aá\9e½á\9e\98á\9e\85á\9f\86á\9e\8eá\9f\82á\9e\80á\9e\9aá\9e\94á\9e\9fá\9f\8b{{GENDER:$1|á\9e¢á\9f\92á\9e\93á\9e\80á\9e\94á\9f\92á\9e\9aá\9e¾á\9e\94á\9f\92á\9e\9aá\9e¶á\9e\9fá\9f\8bá\9e\93á\9f\81á\9f\87}}",
+       "tooltip-t-emailuser": "ផ្ញើអ៊ីមែលទៅកាន់{{GENDER:$1|អ្នកប្រើប្រាស់នេះ}}",
        "tooltip-t-info": "ព័ត៌មានបន្ថែមអំពីទំព័រនេះ",
        "tooltip-t-upload": "ឯកសារផ្ទុកឡើង",
        "tooltip-t-specialpages": "បញ្ជីទំព័រពិសេសៗទាំងមូល",
        "version-software-version": "កំណែ",
        "version-entrypoints-header-url": "URL",
        "redirect-submit": "ទៅ",
+       "redirect-lookup": "បើកមើល៖",
        "redirect-value": "តម្លៃ៖",
        "redirect-user": "អត្តលេខអ្នកប្រើប្រាស់",
        "redirect-page": "អត្តលេខទំព័រ",
index e49fb29..c08e288 100644 (file)
        "nocookiesnew": "Lietotājvārds tika izveidots, bet tu neesi iegājis iekšā. {{SITENAME}} izmanto sīkdatnes (<i>cookies</i>), lai lietotāji varētu tajā ieiet. Tavs pārlūks nepieņem tās. Lūdzu, atļauj to pieņemšanu un tad nāc iekšā ar savu lietotājvārdu un paroli.",
        "nocookieslogin": "{{SITENAME}} izmanto sīkdatnes (<i>cookies</i>), lai lietotāji varētu ieiet tajā. Diemžēl tavs pārlūks tos nepieņem. Lūdzu, atļauj to pieņemšanu un mēģini vēlreiz.",
        "noname": "Tu neesi norādījis derīgu lietotāja vārdu.",
-       "loginsuccesstitle": "Ieiešana veiksmīga",
+       "loginsuccesstitle": "Pieteikšanās veiksmīga",
        "loginsuccess": "Tu esi ienācis {{grammar:lokatīvs|{{SITENAME}}}} kā \"$1\".",
        "nosuchuser": "Šeit nav lietotāja ar vārdu \"$1\". Lietotājvārdi ir reģistrjutīgi (lielie un mazie burti nav viens un tas pats) Pārbaudi, vai pareizi uzrakstīts, vai arī [[Special:CreateAccount|izveido jaunu kontu]].",
        "nosuchusershort": "Šeit nav lietotāja ar vārdu \"$1\". Pārbaudi, vai nav drukas kļūda.",
        "accountcreatedtext": "Lietotāja konts priekš $1 tika izveidots.",
        "createaccount-title": "Dalībnieka konta izveidošana {{grammar:lokatīvs|{{SITENAME}}}}",
        "login-throttled": "Jūs esat veicis pārāk daudz pieslēgšanās mēģinājumus.\nLūdzu, uzgaidiet $1 pirms mēģiniet vēlreiz.",
-       "login-abort-generic": "Jūsu pieteikšanās bija neveiksmīga — Darbība pārtraukta",
+       "login-abort-generic": "Pieteikšanās neizdevās — darbība pārtraukta",
        "loginlanguagelabel": "Valoda: $1",
        "pt-login": "Pieslēgties",
        "pt-login-button": "Pieslēgties",
        "revdelete-unsuppress": "Atcelt ierobežojumus atjaunotajām versijām",
        "revdelete-log": "Iemesls:",
        "revdelete-submit": "Piemērot {{PLURAL:$1|izvēlētajām versijām|izvēlētajai versijai|izvēlētajām versijām}}",
-       "revdelete-success": "'''Versiju redzamība veiksmīgi atjaunināta.'''",
+       "revdelete-success": "Versiju redzamība izmainīta.",
        "revdelete-failure": "'''Versiju redzamību nav iespējams atjaunināt:'''\n$1",
-       "logdelete-success": "'''Reģistra ierakstu redzamība veiksmīgi uzstādīta.'''",
+       "logdelete-success": "Reģistra ieraksta redzamība izmainīta.",
        "logdelete-failure": "'''Reģistra redzamību nevar uzstādīt:'''\n$1",
        "revdel-restore": "mainīt redzamību",
        "pagehist": "Lapas vēsture",
        "search-category": "(kategorija $1)",
        "search-file-match": "(atbilst faila saturam)",
        "search-suggest": "Vai jūs domājāt: $1",
-       "search-interwiki-caption": "Citi projekti",
+       "search-interwiki-caption": "Rezultāti no citiem projektiem",
        "search-interwiki-default": "Rezultāti no $1:",
        "search-interwiki-more": "(vairāk)",
        "search-relatedarticle": "Saistītais",
        "badsig": "Kļūdains ''paraksta'' kods; pārbaudi HTML (ja tāds ir lietots).",
        "badsiglength": "Paraksts ir pārāk garš.\nTam ir jābūt īsākam par  $1 {{PLURAL:$1|simboliem|simbolu|simboliem}}.",
        "yourgender": "Dzimums:",
-       "gender-unknown": "Es nevēlos norādīt",
+       "gender-unknown": "Pieminot tevi, ja iespējams, programmatūra izmantos dzimumam neitrālus vārdus",
        "gender-male": "Viņš labo viki lapas",
        "gender-female": "Viņa labo viki lapas",
        "prefs-help-gender": "Dzimums nav obligāti jānorāda (šo parametru programmatūra izmanto, lai ģenerētu paziņojumus, kas atkarīgi no dalībnieka dzimuma). Šī informācija būs publiski pieejama.",
        "group-bot": "Boti",
        "group-sysop": "Administratori",
        "group-bureaucrat": "Birokrāti",
-       "group-suppress": "Novērotāji",
+       "group-suppress": "Cenzētāji",
        "group-all": "(visi)",
        "group-user-member": "{{GENDER:$1|dalībnieks}}",
        "group-autoconfirmed-member": "{{GENDER:$1|automātiski apstiprināts dalībnieks|automātiski apstiprināta dalībniece}}",
        "group-bot-member": "{{GENDER:$1|bots}}",
        "group-sysop-member": "{{GENDER:$1|administrators|administratore}}",
        "group-bureaucrat-member": "{{GENDER:$1|birokrāts|birokrāte}}",
-       "group-suppress-member": "{{GENDER:$1|novērotājs|novērotāja}}",
+       "group-suppress-member": "{{GENDER:$1|cenzētājs|cenzētāja}}",
        "grouppage-user": "{{ns:project}}:Dalībnieki",
        "grouppage-autoconfirmed": "{{ns:project}}:Automātiski apstiprināti dalībnieki",
        "grouppage-bot": "{{ns:project}}:Boti",
        "grouppage-sysop": "{{ns:project}}:Administratori",
        "grouppage-bureaucrat": "{{ns:project}}:Birokrāti",
-       "grouppage-suppress": "{{ns:project}}:Novērotājs",
+       "grouppage-suppress": "{{ns:project}}:Cenzētāji",
        "right-read": "Lasīt lapas",
        "right-edit": "Izmainīt lapas",
        "right-createpage": "Izveidot lapas (kuras nav diskusiju lapas)",
        "action-block": "bloķēt šo dalībnieku pret rakstu turpmāku labošanu",
        "action-protect": "izmainīt aizsardzības līmeņus šai lapai",
        "action-import": "importēt lapas no citas vikivietnes",
-       "action-importupload": "importēt šo lapu no failu augšupielādes",
+       "action-importupload": "importēt lapas no augšupielādēta faila",
        "action-patrol": "atzīmēt citu labojumus kā pārbaudītus",
        "action-autopatrol": "iespēja savus labojumus atzīmēt kā pārbaudītus",
        "action-unwatchedpages": "apskatīt neuzraudzīto lapu sarakstu",
        "rcfilters-filter-user-experience-level-newcomer-label": "Jaunpienācēji",
        "rcfilters-filter-user-experience-level-newcomer-description": "Mazāk nekā 10 labojumi un 4 aktīvas dienas.",
        "rcfilters-filter-user-experience-level-learner-label": "Mācekļi",
-       "rcfilters-filter-user-experience-level-learner-description": "Vairāk aktīvo dienu un labojumu nekā \"Jaunpienācējiem\", bet mazāk nekā \"Pieredzējušiem dalībniekiem\".",
+       "rcfilters-filter-user-experience-level-learner-description": "Vairāk pieredzes nekā \"Jaunpienācējiem\", bet mazāk nekā \"Pieredzējušiem dalībniekiem\".",
        "rcfilters-filter-user-experience-level-experienced-label": "Pieredzējuši dalībnieki",
        "rcfilters-filter-user-experience-level-experienced-description": "Vairāk nekā 30 aktivitāte un 500 labojumi.",
        "rcfilters-filtergroup-automated": "Automatizēts devums",
        "sp-contributions-newbies": "Rādīt jauno lietotāju devumu",
        "sp-contributions-newbies-sub": "Jaunie lietotāji",
        "sp-contributions-blocklog": "bloķēšanas reģistrs",
+       "sp-contributions-suppresslog": "cenzēja {{GENDER:$1|dalībnieka|dalībnieces}} devumu",
        "sp-contributions-deleted": "dzēstais {{GENDER:$1|dalībnieka|dalībnieces}} devums",
        "sp-contributions-uploads": "augšupielādes",
        "sp-contributions-logs": "reģistri",
        "sp-contributions-search": "Meklēt lietotāju veiktās izmaiņas",
        "sp-contributions-username": "IP adrese vai dalībnieka vārds:",
        "sp-contributions-toponly": "Rādīt tikai labojumus, kas ir jaunākās versijas",
+       "sp-contributions-hideminor": "Paslēpt maznozīmīgos labojumus",
        "sp-contributions-submit": "Meklēt",
        "whatlinkshere": "Norādes uz šo rakstu",
        "whatlinkshere-title": "Lapas, kurās ir saites uz lapu \"$1\"",
        "pageinfo-edits": "Kopējais izmaiņu skaits",
        "pageinfo-authors": "Kopējais atsevišķu autoru skaits",
        "pageinfo-magic-words": "{{PLURAL:$1|Maģiskie vārdi|Maģiskais vārds|Maģiskie vārdi}} ($1)",
+       "pageinfo-hidden-categories": "{{PLURAL:$1|Slēptas kategorijas|Slēpta kategorija|Slēptas kategorijas}} ($1)",
        "pageinfo-toolboxlink": "Lapas informācija",
        "pageinfo-redirectsto": "Pāradresē uz",
        "pageinfo-redirectsto-info": "info",
        "logentry-delete-delete_redir": "$1 {{GENDER:$2|izdzēsa}} pāradresāciju $3 pārrakstot",
        "logentry-delete-restore": "$1 {{GENDER:$2|atjaunoja}} lapu $3",
        "restore-count-files": "{{PLURAL: $1|$1 faili|$1 fails|$1 faili}}",
+       "logentry-suppress-delete": "$1 {{GENDER:$2|cenzēja}} lapu $3",
        "revdelete-content-hid": "saturs slēpts",
        "revdelete-summary-hid": "labojuma kopsavilkums slēpts",
        "revdelete-uname-hid": "lietotājvārds slēpts",
        "limitreport-templateargumentsize-value": "$1/$2 {{PLURAL:$2|baiti|baits|baiti}}",
        "expand_templates_output": "Rezultāts",
        "expand_templates_ok": "Labi",
+       "expand_templates_remove_nowiki": "Cenzēt <nowiki> iezīmes rezultātā",
        "expand_templates_preview": "Pirmskats",
        "pagelang-name": "Lapa",
        "pagelang-language": "Valoda",
        "mw-widgets-titleinput-description-new-page": "lapa vēl nepastāv",
        "mw-widgets-categoryselector-add-category-placeholder": "Pievienot kategoriju...",
        "sessionprovider-generic": "$1 sesijas",
+       "randomrootpage": "Nejauša saknes lapa",
+       "log-action-filter-suppress": "Cenzēšanas veids:",
+       "log-action-filter-suppress-event": "Reģistra ieraksta cenzēšana",
+       "log-action-filter-suppress-delete": "Lapas cenzēšana",
        "authmanager-email-label": "E-pasts",
        "authmanager-email-help": "E-pasta adrese",
        "authmanager-realname-label": "Tavs īstais vārds",
index 0334cd8..a00306d 100644 (file)
        "undelete-search-title": "Verwijderde pagina's zoeken",
        "undelete-search-box": "Verwijderde pagina's doorzoeken",
        "undelete-search-prefix": "Pagina's bekijken die beginnen met:",
-       "undelete-search-full": "Toon pagina titels met de volgende inhoud:",
+       "undelete-search-full": "Toon paginatitels die het volgende bevatten:",
        "undelete-search-submit": "Zoeken",
        "undelete-no-results": "Geen pagina's gevonden in het archief met verwijderde pagina's.",
        "undelete-filename-mismatch": "Bestandsversie van tijdstip $1 kon niet hersteld worden: bestandsnaam klopte niet",
index 3c1363e..d773224 100644 (file)
        "recentchanges-legend-newpage": "{{int:recentchanges-label-newpage}} (zobacz też [[Special:NewPages|listę nowych stron]])",
        "recentchanges-legend-plusminus": "(''±123'')",
        "recentchanges-submit": "Pokaż",
+       "rcfilters-legend-heading": "<strong>Wykaz skrótów:</strong>",
        "rcfilters-activefilters": "Aktywne filtry",
        "rcfilters-advancedfilters": "Zaawansowane filtry",
        "rcfilters-quickfilters": "Zapisane filtry",
        "log-action-filter-suppress-reblock": "Ukrycie użytkownika poprzez ponowną blokadę",
        "log-action-filter-upload-upload": "Nowe przesłane",
        "log-action-filter-upload-overwrite": "Przesłane ponownie",
+       "authmanager-authn-not-in-progress": "Tworzenie konta nie jest wykonywane lub dane sesji zostały utracone. Zacznij od początku.",
        "authmanager-authn-no-primary": "Podane dane nie mogą być użyte do kontroli poświadczeń.",
        "authmanager-authn-no-local-user": "Żaden użytkownik nie korzysta z tych danych.",
        "authmanager-authn-autocreate-failed": "Automatyczne tworzenie lokalnego konta nie powiodło się: $1",
index 70b030c..5c24a2b 100644 (file)
        "undelete-search-title": "Pesquisar páginas eliminadas",
        "undelete-search-box": "Pesquisar páginas eliminadas",
        "undelete-search-prefix": "Mostrar páginas que começam por:",
+       "undelete-search-full": "Mostrar os títulos de página que contenham:",
        "undelete-search-submit": "Pesquisar",
        "undelete-no-results": "Não foram encontradas páginas eliminadas, para esse critério de pesquisa, no arquivo de eliminações.",
        "undelete-filename-mismatch": "Não foi possível restaurar a versão do ficheiro de $1: nome de ficheiro não combina",
index 72f7aa9..44335fc 100644 (file)
        "rcfilters-filter-previousrevision-description": "Description for the filter for showing changes on previous revisions of a page.",
        "rcfilters-filter-excluded": "Label for a menu item in [[Special:RecentChanges]] noting that the item is being excluded from the results.",
        "rcfilters-tag-prefix-namespace": "Prefix for the namespace tags in [[Special:RecentChanges]]. Namespace tags use a colon (:) as prefix. Please keep this format.\n\nParameters:\n* $1 - Filter name.",
-       "rcfilters-tag-prefix-namespace-inverted": "Prefix for the namespace inverted tags in [[Special:RecentChanges]]. Namespace tags use a colon (:) as prefix. Please keep this format.\n\nParameters:\n* $1 - Filter name.",
+       "rcfilters-tag-prefix-namespace-inverted": "Prefix for the namespace inverted tags in [[Special:RecentChanges]]. Namespace tags use a colon (:) as prefix. Please keep this format.\n\nParameters:\n* $1 - Filter name.\n{{Identical|Not}}",
        "rcfilters-tag-prefix-tags": "Prefix for the edit tags in [[Special:RecentChanges]]. Edit tags use a hash (#) as prefix. Please keep this format.\n\nParameters:\n* $1 - Tag display name.",
        "rcfilters-view-tags": "Title for the tags view in [[Special:RecentChanges]]\n{{Identical|Tag}}",
        "rcfilters-view-namespaces-tooltip": "Tooltip for the button that loads the namespace view in [[Special:RecentChanges]]",
index d61bc58..92c4bb1 100644 (file)
        "movenosubpage": "Sta pàgene non ge tène sottopàggene.",
        "movereason": "Raggione:",
        "revertmove": "a smerse",
-       "delete_and_move_text": "== Scangellazzione richieste ==\n'A pàgene de destinazione \"[[:$1]]\" esiste già.\nTu à vuè ccu scangille o vuè ccù iacchie 'nu mode pe spustarle?",
+       "delete_and_move_text": "'A pàgene de destinazione \"[[:$1]]\" esiste già.\nTu à vuè ccu scangille o vuè ccù iacchie 'nu mode pe spustarle?",
        "delete_and_move_confirm": "Sine, scangille 'a pàggene",
        "delete_and_move_reason": "'U scangellamende avène fatte pe spustà da \"[[$1]]\"",
        "selfmove": "Le titele sorgende e destinazione sonde le stesse;\nnon ge se pò movere 'na pàgene sus a sè stesse.",
        "import-nonewrevisions": "Tutte le revisiune avèrene già state 'mbortate.",
        "xml-error-string": "$1 a 'a linea $2, colonne $3 (byte $4): $5",
        "import-upload": "Careche le date in XML",
-       "import-token-mismatch": "S'à perse 'a sessione de le date. Pruève 'n'otra vote.",
+       "import-token-mismatch": "S'à perse 'a sessione de le date.\n\nPò essere ca è state mise fore. <strong>Verifiche de sta angore jndre e pruéve arrete</strong>.\nCe tìne angore 'u probbleme, pué pruvà a [[Special:UserLogout|assè]] e trasè arrete, condrollanne ca 'u browser tune se pigghie le cookie da stu site.",
        "import-invalid-interwiki": "Non ge pozze 'mbortà da 'a Uicchi specificate.",
        "import-error-edit": "Pàgene \"$1\" non g'ha state 'mbortate purcé tu non ge tìne le permesse pe cangiarle.",
        "import-error-create": "Pàgene \"$1\" non g'ha state 'mbortate purcé tu non ge tìne le permesse pe ccrejarle.",
index 86759b4..6ce8cb0 100644 (file)
        "recentchanges-legend-newpage": "{{int:recentchanges-label-newpage}} (см. также [[Special:NewPages|список новых страниц]])",
        "recentchanges-legend-plusminus": "(''±123'')",
        "recentchanges-submit": "Показать",
+       "rcfilters-legend-heading": "<strong>Список сокращений:</strong>",
        "rcfilters-activefilters": "Активные фильтры",
        "rcfilters-advancedfilters": "Расширенные фильтры",
        "rcfilters-quickfilters": "Сохранённые фильтры",
        "undelete-search-title": "Поиск удалённых страниц",
        "undelete-search-box": "Поиск удалённых страниц",
        "undelete-search-prefix": "Показать страницы, начинающиеся с:",
+       "undelete-search-full": "Показать названия страниц, содержащие:",
        "undelete-search-submit": "Найти",
        "undelete-no-results": "не найдено соответствующих страниц в архиве удалений.",
        "undelete-filename-mismatch": "Невозможно восстановить версию файла с отметкой времени $1: несоответствие имени файла",
index e7abb78..4ef01ba 100644 (file)
        "recentchanges-legend-heading": "<strong>Легендата:</strong>",
        "recentchanges-legend-newpage": "{{int:recentchanges-label-newpage}} (өссө көр: [[Special:NewPages|Саҥа сирэйдэр тиһиктэрэ]])",
        "recentchanges-submit": "Көрдөр",
+       "rcfilters-legend-heading": "<strong>Кылгатыы испииһэгэ:</strong>",
        "rcfilters-activefilters": "Холбоммут сиидэлэр",
+       "rcfilters-advancedfilters": "Сиһилии сиидэлэр",
        "rcfilters-quickfilters": "Бигэргэммит сиидэлэр",
        "rcfilters-quickfilters-placeholder-title": "Бигэргэммит сигэ билигин суох",
        "rcfilters-quickfilters-placeholder-description": "Сиидэ туруорууларын кэлин туһанарга, \"Холбоммут сиидэ\" хонуутугар кыбытык ойуутун баттаа.",
        "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-lastrevision-description": "Сирэй тиһэх уларыйыыта.",
        "rcfilters-filter-previousrevision-label": "Эрдэ оҥоһуллубут көннөрүүлэр",
        "rcfilters-filter-previousrevision-description": "Тиһэх көннөрүүттэн ураты бары уларытыылар.",
+       "rcfilters-filter-excluded": "Мантан ураты",
+       "rcfilters-tag-prefix-namespace-inverted": "<strong>:not</strong> $1",
+       "rcfilters-view-tags": "Бэлиэтэммит (тиэктээх) уларытыылар",
        "rcnotefrom": "Манна {{PLURAL:$5|уларытыы көрдөрүлүннэ|уларытыылар көһүннүлэр}} баччаттан <strong>$3, $4</strong> (баччаттан элбэх көстүбэт <strong>$1</strong>).",
        "rclistfromreset": "Дьылын-күнүн сот",
        "rclistfrom": "Бу кэм $3 $2 кэнниттэн оҥоһуллубуттары көрдөр",
index 7e2cd24..f129609 100644 (file)
        "createacct-realname": "Ngaran asli (teu wajib)",
        "createacct-reason": "Alesan",
        "createacct-reason-ph": "Naha bet nyieun akun séjén",
+       "createacct-reason-help": "Talatah ditémbongkeun dina log panyieunan akun",
        "createacct-submit": "Jieun akun anjeun",
        "createacct-another-submit": "Jieun akun",
        "createacct-continue-submit": "Tuluykeun panyieunan akun",
        "createacct-benefit-body2": "{{PLURAL:$1|kaca|kaca}}",
        "createacct-benefit-body3": "{{PLURAL:$1|kontributor|kontributor}} panungtung",
        "badretype": "Sandi nu diasupkeun teu cocog.",
+       "usernameinprogress": "Panyieunan akun pikeun ngaran pamaké ieu keur dijalankeun. Mangga tungguan.",
        "userexists": "Sandiasma nu diasupkeun geus aya nu maké.\nMangga pilih sandiasma nu séjén.",
        "loginerror": "Kasalahan asup log",
        "createacct-error": "Nyieun akun éror",
        "botpasswords-label-grants": "Aksés nu dibikeun:",
        "botpasswords-label-grants-column": "Diwidian",
        "botpasswords-bad-appid": "Ngaran bot \"$1\" teu sah.",
+       "botpasswords-update-failed": "Gagal nganyarkeun ngaran bot \"$1\". Baheula pernah dipupus kitu?",
        "botpasswords-created-title": "Kecap sandi bot dijieun",
+       "botpasswords-created-body": "Kecap sandi pikeun ngaran bot \"$1\" ti pamaké \"$2\" geus dijieun.",
        "botpasswords-updated-title": "Kecap sandi bot dianyarkeun",
+       "botpasswords-updated-body": "Kecap sandi pikeun ngaran bot \"$1\" ti pamaké \"$2\" geus dianyarkeun.",
        "botpasswords-deleted-title": "Kecap sandi bot dihapus",
+       "botpasswords-deleted-body": "Kecap sandi pikeun ngaran bot \"$1\" ti pamaké \"$2\" geus dipupus.",
        "resetpass_forbidden": "Sandi henteu bisa dirobah",
        "resetpass_forbidden-reason": "Kecap sandi teu bisa diganti: $1",
        "resetpass-no-info": "Anjeun kudu asup log pkeun bisa muka ieu kaca sacara langsung.",
        "passwordreset-nocaller": "Panggero kudu dibikeun",
        "passwordreset-nosuchcaller": "Panggero can aya: $1",
        "passwordreset-invalidemail": "Alamat surélék teu sah",
-       "changeemail": "Ganti alamat surélék",
-       "changeemail-header": "Ganti alamat surélék akun",
+       "passwordreset-nodata": "Boh ngaran pamaké, boh alamat surélék teu dibéré",
+       "changeemail": "Ganti atawa pupus alamat surélék",
+       "changeemail-header": "Lengkepan ieu formulir pikeun ngarobah alamat surélék anjeun. Mun anjeun hayang mupus sakumna alamat surélék nu patalian jeung akun anjeun, kosongkeun alamat surélék nalika ngirim formulir.",
        "changeemail-no-info": "Anjeun kudu asup log pikeun bisa muka ieu kaca sacara langsung.",
        "changeemail-oldemail": "Alamat surélék ayeuna:",
        "changeemail-newemail": "Alamat surélék anyar:",
        "nocreate-loggedin": "Anjeun teu diwenangkeun pikeun nyieun kaca anyar.",
        "sectioneditnotsupported-title": "Teu bisa ngarobah dina sub-judul",
        "sectioneditnotsupported-text": "Eusi subjudul di ieu kaca teu bisa diédit.",
-       "permissionserrors": "Kasalahan Hak Aksés",
+       "permissionserrors": "Kasalahan widi",
        "permissionserrorstext": "Anjeung teu boga kawenangan pikeun peta kitu, kalawan {{PLURAL:$1|alesan|alesan}} di handap ieu:",
        "permissionserrorstext-withaction": "Anjeun teu ngabogaan hak keur $2, kusabab {{PLURAL:$1|alesan|alesan}} katut:",
        "recreate-moveddeleted-warn": "'''Awas: anjeun keur nyieun deui kaca nu geus kungsi dihapus.'''\n\nMangga émutan deui perlu/henteuna nyieun deui ieu artikel.\nPikeun leuwih écés, di handap dibéréndélkeun logna:",
        "postedit-confirmation-saved": "Éditan anjeun tos disimpen.",
        "edit-already-exists": "Teu bisa nyieun kaca anyar.\nArtikelna geus aya.",
        "defaultmessagetext": "Téks ti dituna",
+       "content-failed-to-parse": "Gagal ngarecah kontén $2 pikeun modél $1:$3",
        "invalid-content-data": "Data eusi henteu valid",
        "content-not-allowed-here": "Eusi \"$1\" teu diijinan di kaca [[$2]]",
        "editwarning-warning": "Ninggalkeun ieu kaca bakal ngaleungitkeun parobahan anu tas dijieun.\nUpama anjeun geus asup log, anjeun bisa numpurkeun ieu talatah dina bagian \"{{int:prefs-editing}}\" préferénsi anjeun.",
        "post-expand-template-argument-warning": "'''Awas''': Ieu kaca sahenteuna ngandung hiji argumén citakan anu ukuran ékspansina badag teuing. Éta argumén geus teu dipaliré.",
        "post-expand-template-argument-category": "Kaca kalawan argumén citakan anu teu dipaliré",
        "parser-template-loop-warning": "Katangén ayana citakan anu patumpang tindih: [[$1]]",
+       "template-loop-category": "Kaca kawalan citakan bulak-balik",
        "parser-template-recursion-depth-warning": "Citakan patumpang tindih ngaleuwihan wates($1)",
        "language-converter-depth-warning": "Parobah basa ngaleuwihan wates jerona ($1)",
        "expansion-depth-exceeded-category": "Kaca-kaca anu jero ékspansina leuwih ti wates",
        "revdelete-selected-text": "{{PLURAL:$1|Révisi dipilih}} ti [[:$2]]:",
        "revdelete-selected-file": "{{PLURAL:$1|Vérsi berkas dipilih}} ti [[:$2]]:",
        "logdelete-selected": "{{PLURAL:$1|Kajadian log dipilih}}:",
+       "revdelete-text-file": "Vérsi berkas nu dipupus bakal muncul kénéh di jujutan berkas, ngan bagéan tina konténna bakal moal bisa diaksés pikeun umum.",
        "revdelete-confirm": "Mangga geura konfirmasi yen Anjeun gaduh maksad pikeun ngalakukeun hal ieu, paham kana konsekwensina, tur nu dilakukeun ieu teh luyu sareng [[{{MediaWiki:Policy-url}}|kawijakanana]]",
        "revdelete-suppress-text": "Nyumputkeun revisi '''ukur''' bisa digunakeun keur kasus-kasus di handap ieu:\n* Informasi nu boga potensi mitenah\n* Informasi pribadi nu teu pantes\n*: ''alamat imah katut nomer telepon, nomer kartu identitas, jeung lian-liana.''",
        "revdelete-legend": "Setél réstriksi révisi:",
        "pageinfo-toolboxlink": "Émbaran kaca",
        "pageinfo-redirectsto": "Alihkeun ka",
        "pageinfo-redirectsto-info": "info",
-       "pageinfo-contentpage": "Diitung salaku kaca eusi",
+       "pageinfo-contentpage": "Diitung minangka kaca eusi",
        "pageinfo-contentpage-yes": "Enya",
        "pageinfo-protect-cascading-yes": "Enya",
        "pageinfo-category-info": "Info kategori",
index f54c390..23ff5d2 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": "మూస పేజీని చూడండి",
        "userlogin-remembermypassword": "నన్ను లాగిన్ చేసే ఉంచు",
        "userlogin-signwithsecure": "సురక్షిత కనెక్షను వాడు",
        "cannotlogin-title": "లాగిన్ చెయ్యలేకున్నాం",
+       "cannotlogin-text": "లాగినవడం సాధ్యపడడం లేదు.",
        "cannotloginnow-title": "ఇప్పుడు లాగిన్ అవలేరు",
        "cannotloginnow-text": "$1 ను వాడుతూండగా లాగౌట్ అవలేరు.",
        "cannotcreateaccount-title": "ఖాతాలను సృష్టించలేము",
        "page_first": "మొదటి",
        "page_last": "చివరి",
        "histlegend": "తేడా ఎంపిక: సంచికల యొక్క రేడియో బాక్సులను ఎంచుకొని ఎంటర్‌ నొక్కండి, లేదా పైన/ కింద ఉన్న మీటను నొక్కండి.<br />\nసూచిక: <strong>({{int:cur}})</strong> = ప్రస్తుత సంచికతో కల తేడాలు, <strong>({{int:last}})</strong> = ఇంతకు ముందరి సంచికతో గల తేడాలు, <strong>{{int:minoreditletter}}</strong> = చిన్న మార్పు",
-       "history-fieldset-title": "à°\9aà°°à°¿à°¤à±\8dà°° à°\9aà±\82à°¡ండి",
+       "history-fieldset-title": "à°\95à±\82à°°à±\8dà°ªà±\81à°² à°\95à±\8bà°¸à°\82 à°µà±\86à°¤à°\95ండి",
        "history-show-deleted": "తొలగించినవి మాత్రమే",
        "histfirst": "అతి పాతవి",
        "histlast": "సరికొత్త",
        "rcfilters-filterlist-title": "వడపోతలు",
        "rcfilters-highlightmenu-title": "ఒక రంగును ఎంచుకోండి",
        "rcfilters-filtergroup-registration": "వాడుకరి నమోదు",
-       "rcfilters-filter-editsbyself-label": "à°®à±\80 à°¸à±\8dà°µà°\82à°¤ à°¦à°¿à°¦à±\8dà°¦à±\81బాà°\9fà±\8dà°²à±\81",
-       "rcfilters-filter-editsbyself-description": "మీ దిద్దుబాట్లు.",
+       "rcfilters-filter-editsbyself-label": "మీ దిద్దుబాట్లు",
+       "rcfilters-filter-editsbyself-description": "à°®à±\80 à°¸à±\8dà°µà°\82à°¤ à°¦à°¿à°¦à±\8dà°¦à±\81బాà°\9fà±\8dà°²à±\81.",
        "rcfilters-filter-editsbyother-label": "ఇతరుల దిద్దుబాట్లు",
-       "rcfilters-filter-editsbyother-description": "à°\87తరà±\81à°²à±\81 (à°®à±\80à°°à±\81 à°\95ాదà±\81) à°\9aà±\87సిన à°¦à°¿à°¦à±\8dà°¦à±\81బాà°\9fà±\8dà°²à±\81.",
+       "rcfilters-filter-editsbyother-description": "à°®à±\80à°°à±\81 à°\9aà±\87సినవి à°\95à°¾à°\95à±\81à°\82à°¡à°¾ à°®à°¿à°\97ిలిన à°¦à°¿à°¦à±\8dà°¦à±\81బాà°\9fà±\8dలనà±\8dà°¨à±\80.",
        "rcfilters-filtergroup-userExpLevel": "అనుభవ స్థాయి (నమోదైన వాడుకరులకు మాత్రమే)",
        "rcfilters-filter-user-experience-level-newcomer-label": "కొత్తవారు",
        "rcfilters-filter-user-experience-level-newcomer-description": "10 కంటే తక్కువ దిద్దుబాట్లు, 4 రోజుల కంటే తక్కువ పని.",
        "rcfilters-filter-user-experience-level-learner-label": "నేర్చుకుంటున్నవారు",
-       "rcfilters-filter-user-experience-level-learner-description": "\"à°\95à±\8aà°¤à±\8dతవారి\" à°\95à°\82à°\9fà±\87 à°\8eà°\95à±\8dà°\95à±\81à°µ, \"à°\85à°¨à±\81à°­à°µà°\9cà±\8dà°\9eà±\81à°²à±\88à°¨ à°µà°¾à°¡à±\81à°\95à°°à±\81à°²\" à°\95à°\82à°\9fà±\87 à°¤à°\95à±\8dà°\95à±\81à°µ à°ªà°¨à°¿à°°à±\8bà°\9cà±\81à°²à±\81.",
+       "rcfilters-filter-user-experience-level-learner-description": "\"à°\95à±\8aà°¤à±\8dతవారి\" à°\95à°\82à°\9fà±\87 à°\8eà°\95à±\8dà°\95à±\81à°µ, \"à°\85à°¨à±\81à°­à°µà°\9cà±\8dà°\9eà±\81à°²à±\88à°¨ à°µà°¾à°¡à±\81à°\95à°°à±\81à°²\" à°\95à°\82à°\9fà±\87 à°¤à°\95à±\8dà°\95à±\81à°µ à°\85à°¨à±\81à°­à°µà°\82.",
        "rcfilters-filter-user-experience-level-experienced-label": "అనుభవజ్ఞులైన వాడుకరులు",
        "rcfilters-filter-user-experience-level-experienced-description": "30 రోజుల కంటే ఎక్కువ పని, 500 పైచిలుకు దిద్దుబాట్లు.",
+       "rcfilters-filter-bots-label": "బాట్",
        "rcfilters-filtergroup-significance": "ప్రాముఖ్యం",
        "rcfilters-filter-minor-label": "చిన్న మార్పులు",
        "rcfilters-filter-minor-description": "రచయిత చిన్నవిగా గుర్తు పెట్టిన దిద్దుబాట్లు.",
index 32fbc7f..8135189 100644 (file)
@@ -12,7 +12,8 @@
                        "לערי ריינהארט",
                        "아라",
                        "Macofe",
-                       "AryanSogd"
+                       "AryanSogd",
+                       "ToJack"
                ]
        },
        "tog-underline": "Пайвандҳо хаткашида:",
        "october": "Октябр",
        "november": "Ноябр",
        "december": "Декабр",
-       "january-gen": "Январ",
-       "february-gen": "Феврал",
-       "march-gen": "Ð\9cаÑ\80Ñ\82",
-       "april-gen": "Ð\90пÑ\80ел",
-       "may-gen": "Ð\9cай",
-       "june-gen": "Ð\98Ñ\8eн",
-       "july-gen": "Ð\98Ñ\8eл",
-       "august-gen": "Ð\90вгÑ\83Ñ\81Ñ\82",
-       "september-gen": "Сентябр",
-       "october-gen": "Ð\9eкÑ\82Ñ\8fбÑ\80",
-       "november-gen": "Ð\9dоÑ\8fбÑ\80",
-       "december-gen": "Ð\94екабÑ\80",
+       "january-gen": "январи",
+       "february-gen": "феврали",
+       "march-gen": "маÑ\80Ñ\82и",
+       "april-gen": "апÑ\80ели",
+       "may-gen": "майи",
+       "june-gen": "иÑ\8eни",
+       "july-gen": "иÑ\8eли",
+       "august-gen": "авгÑ\83Ñ\81Ñ\82и",
+       "september-gen": "сентябри",
+       "october-gen": "окÑ\82Ñ\8fбÑ\80и",
+       "november-gen": "ноÑ\8fбÑ\80и",
+       "december-gen": "декабÑ\80и",
        "jan": "Ян",
        "feb": "Фев",
        "mar": "Мар",
        "anontalk": "Баҳс бо ин IP",
        "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": "Нигаристани саҳифаи шаблон",
        "titlematches": "Унвони саҳифа татбиқ мекунад",
        "textmatches": "Матни мақола татбиқ мекунад",
        "notextmatches": "Матни ҳеҷ мақолае рост намеояд",
-       "prevn": "қаблӣ {{PLURAL:$1|$1}}",
-       "nextn": "баъдӣ {{PLURAL:$1|$1}}",
+       "prevn": "{{PLURAL:$1|$1-тои}} қаблӣ",
+       "nextn": "{{PLURAL:$1|$1-тои}} навбатӣ",
        "prevn-title": "Қаблӣ $1 {{PLURAL:$1|натиҷа|натоиҷ}}",
        "nextn-title": "Баъдӣ $1 {{PLURAL:$1|натиҷа|натоиҷ}}",
        "shown-title": "Намоиши $1 {{PLURAL:$1|натиҷа|натоиҷ}} дар ҳар саҳифа",
-       "viewprevnext": "Намоиш ($1 {{int:pipe-separator}} $2) ($3)",
+       "viewprevnext": "Намоиши ($1 {{int:pipe-separator}} $2) ($3)",
        "searchmenu-exists": "'''Саҳифае бо номи \"[[:$1]]\" дар ин вики вуҷуд дорад.'''",
        "searchmenu-new": "'''Эҷоди саҳифаи \"[[:$1]]\" дар ин вики!'''",
        "searchprofile-articles": "Саҳифаҳои мӯҳтаво",
        "searchprofile-images-tooltip": "Ҷустуҷӯи парвандаҳо",
        "searchprofile-everything-tooltip": "Ҷустуҷӯи ҳамаи мӯҳтаво (бо ҳисоби саҳифаҳои баҳс)",
        "searchprofile-advanced-tooltip": "Ҷустуҷӯ дар фазоҳои номи дилхоҳ",
-       "search-result-size": "$1 ({{PLURAL:$2|1 калима|$2 калимаҳо}})",
+       "search-result-size": "$1 ({{PLURAL:$2|1 калима|$2 калима}})",
        "search-redirect": "(тағйири масир $1)",
        "search-section": "(қисмат $1)",
        "search-suggest": "Оё шумо инро дар назар доред: $1",
        "randomincategory-submit": "Бирав",
        "randomredirect": "Масири тасодуфӣ",
        "randomredirect-nopages": "Ҳеҷ саҳифаи тағйири масире дар ин фазои ном мавҷуд нест.",
-       "statistics": "Омор\\Статистика",
+       "statistics": "Омор/Статистика",
        "statistics-header-pages": "Саҳифаи омор",
        "statistics-header-edits": "Вироиши омор",
        "statistics-header-users": "Омори корбарон",
        "withoutinterwiki-legend": "Пешванд",
        "withoutinterwiki-submit": "Намоиш",
        "fewestrevisions": "Саҳифаҳое, ки шумораи ками нусхаҳо доранд",
-       "nbytes": "$1 {{PLURAL:$1|байт|байтҳо}}",
+       "nbytes": "$1 {{PLURAL:$1|байт|байт}}",
        "ncategories": "$1 {{PLURAL:$1|гурӯҳ|гурӯҳҳо}}",
        "nlinks": "$1 {{PLURAL:$1|пайванд|пайвандҳо}}",
        "nmembers": "$1 {{PLURAL:$1|узв}}",
        "notargettitle": "Мақсаде нест",
        "notargettext": "Шумо ягон саҳифа ё корбареро барои иҷрои ин амал рӯи он мушаххас накардаед.",
        "nopagetitle": "Чунин саҳифае вуҷуд надорад",
-       "pager-newer-n": "{{PLURAL:$1|навтар 1|навтар $1}}",
-       "pager-older-n": "{{PLURAL:$1|кӯҳнатар 1|кӯҳнатар $1}}",
+       "pager-newer-n": "{{PLURAL:$1|1-тои навтар|$1-тои навтар}}",
+       "pager-older-n": "{{PLURAL:$1|1-тои кӯҳнатар|$1-тои кӯҳнатар}}",
        "suppress": "Назорат",
        "booksources": "Манбаҳои китобҳо",
        "booksources-search-legend": "Ҷустуҷӯи сарчашмаҳои китоб",
        "markedaspatrolledtext": "Нусхаи интихобшуда ба унвони баррасишуда аломат зада шуд.",
        "rcpatroldisabled": "Баррасии Тағйироти Охир фаъол нест",
        "rcpatroldisabledtext": "Имкони Баррасии Тағйироти Охир дар ҳоли ҳозир ғайрифаъол аст.",
-       "markedaspatrollederror": "Аломати баррасӣ зада нашуд",
+       "markedaspatrollederror": "Аломати тафтишшавӣ зада нашуд.",
        "markedaspatrollederrortext": "Бояд як нусхаро мушаххас кунед то барчасб ба унвони баррасишуда аломат бихӯрад.",
        "markedaspatrollederror-noautopatrol": "Шумо наметавонед ба тағйироти анҷом шуда тавассути худатон аломати баррасӣ бизанед.",
        "patrol-log-page": "Гузоришҳои нигаҳбонӣ",
index ac23388..64fc0cd 100644 (file)
        "tog-shownumberswatching": "显示监视用户数",
        "tog-oldsig": "您现有的签名:",
        "tog-fancysig": "将签名视为维基文本(不自动生成链接)",
-       "tog-uselivepreview": "使ç\94¨å®\9e时预览",
+       "tog-uselivepreview": "使ç\94¨å\8d³时预览",
        "tog-forceeditsummary": "未输入编辑摘要时提醒我",
        "tog-watchlisthideown": "隐藏监视列表中的我的编辑",
        "tog-watchlisthidebots": "隐藏监视列表中的机器人编辑",
        "tog-showhiddencats": "显示隐藏分类",
        "tog-norollbackdiff": "执行回退后不显示差异",
        "tog-useeditwarning": "当我离开编辑页面时,如果有尚未保存的更改,请提醒我",
-       "tog-prefershttps": "在登录总是使用安全连接",
+       "tog-prefershttps": "在登录总是使用安全连接",
        "underline-always": "始终",
        "underline-never": "从不",
        "underline-default": "皮肤或浏览器默认设置",
        "period-am": "AM",
        "period-pm": "PM",
        "pagecategories": "{{PLURAL:$1|分类}}",
-       "category_header": "å\88\86ç±»â\80\9c$1â\80\9dä¸\8b的页面",
+       "category_header": "å\88\86ç±»â\80\9c$1â\80\9d中的页面",
        "subcategories": "子分类",
        "category-media-header": "分类“$1”中的媒体文件",
        "category-empty": "<em>本分类目前不含有任何页面或媒体文件。</em>",
        "resetpass-submit-cancel": "取消",
        "resetpass-wrong-oldpass": "临时密码或当前密码无效。您可能已经更改了您的密码,或者请求了新的临时密码。",
        "resetpass-recycled": "请重置您的密码为与当前密码不同的密码。",
-       "resetpass-temp-emailed": "您通过一个暂时电子邮件发送的代码登录。要完成登录,您必须在此设置一个新密码:",
+       "resetpass-temp-emailed": "您使用了通过电子邮件发送的临时密码登录。要完成登录,您必须在此设置一个新密码:",
        "resetpass-temp-password": "临时密码:",
        "resetpass-abort-generic": "密码更改已经被扩展程序中止。",
        "resetpass-expired": "您的密码已经到期。请设置新登录密码。",
        "confirm-purge-title": "刷新本页",
        "confirm_purge_button": "确定",
        "confirm-purge-top": "要清除此页面的缓存吗?",
-       "confirm-purge-bottom": "清除页面数据会清除缓存并强制显示最近的版本。",
+       "confirm-purge-bottom": "刷新页面会清除缓存并强制显示最近的版本。",
        "confirm-watch-button": "确定",
        "confirm-watch-top": "将此页添加到您的监视列表吗?",
        "confirm-unwatch-button": "确定",
index d0fa848..cf6503a 100644 (file)
@@ -88,7 +88,8 @@
                        "A2093064",
                        "Wwycheuk",
                        "Corainn",
-                       "WhitePhosphorus"
+                       "WhitePhosphorus",
+                       "Translatealcd"
                ]
        },
        "tog-underline": "底線標示連結:",
        "resetpass-submit-cancel": "取消",
        "resetpass-wrong-oldpass": "無效的臨時或現有密碼。\n您可能已經變更了密碼,或者已經請求一個新的臨時密碼。",
        "resetpass-recycled": "請重設您的密碼為一個與目前不同的密碼。",
-       "resetpass-temp-emailed": "您使用臨時電子郵件傳送的碼登入。\n要完成登入,您必須在這裡設定一個新密碼:",
+       "resetpass-temp-emailed": "您使用臨時電子郵件傳送的碼登入。\n要完成登入,您必須在這裡設定一個新密碼:",
        "resetpass-temp-password": "臨時密碼:",
        "resetpass-abort-generic": "擴充套件已中止了變更密碼的操作。",
        "resetpass-expired": "您的密碼已過期。請設定一個新的密碼以登入。",
        "rcfilters-filter-patrolled-label": "已巡查",
        "rcfilters-filter-patrolled-description": "標記為己巡查的編輯。",
        "rcfilters-filter-unpatrolled-label": "未巡查",
-       "rcfilters-filter-unpatrolled-description": "æ¨\99è¨\98ç\82ºæ\9cª巡查的編輯。",
+       "rcfilters-filter-unpatrolled-description": "æ\9cªè¢«æ¨\99示ç\82ºå·²巡查的編輯。",
        "rcfilters-filtergroup-significance": "重要性",
        "rcfilters-filter-minor-label": "次要編輯",
        "rcfilters-filter-minor-description": "作者已標示為次要的編輯。",
        "rcfilters-filter-previousrevision-label": "早期版本",
        "rcfilters-filter-previousrevision-description": "所有除了頁面近期變更的變更。",
        "rcfilters-filter-excluded": "已排除",
-       "rcfilters-tag-prefix-namespace-inverted": "<strong>:not</strong> $1",
+       "rcfilters-tag-prefix-namespace-inverted": "<strong>:不是</strong>$1",
        "rcfilters-view-tags": "標記的編輯",
        "rcnotefrom": "以下{{PLURAL:$5|為}}自 <strong>$3 $4</strong> 以來的變更 (最多顯示 <strong>$1</strong> 筆)。",
        "rclistfromreset": "重設日期選擇",
        "confirmrecreate": "在您編輯的同時,使用者 [[User:$1|$1]] ([[User talk:$1|對話]]) 刪除了此頁面,原因為:\n: <em>$2</em>\n請確認您是否真的要重新建立此頁面。",
        "confirmrecreate-noreason": "在您編輯的同時,使用者 [[User:$1|$1]] ([[User talk:$1|對話]]) 刪除了此頁面,請確認您是否真的要重新建立此頁面。",
        "recreate": "重新建立",
-       "confirm-purge-title": "å\88ªé\99¤æ­¤頁",
+       "confirm-purge-title": "å\88·æ\96°æ\9c¬頁",
        "confirm_purge_button": "確定",
        "confirm-purge-top": "要清除此頁面的快取嗎?",
-       "confirm-purge-bottom": "清除頁面會清空頁面的快取記錄並強制顯示最近的頁面修訂。",
+       "confirm-purge-bottom": "刷新頁面會清空頁面的快取記錄並強制顯示最近的頁面修訂。",
        "confirm-watch-button": "確定",
        "confirm-watch-top": "新增此頁面至您的監視清單?",
        "confirm-unwatch-button": "確定",
        "tags-create-reason": "原因:",
        "tags-create-submit": "建立",
        "tags-create-no-name": "您必須指定一個標籤名稱。",
-       "tags-create-invalid-chars": "標籤名稱不可包含逗號 (<code>,</code>)、線 (<code>|</code>) 或斜線 (<code>/</code>)。",
+       "tags-create-invalid-chars": "標籤名稱不可包含逗號 (<code>,</code>)、線 (<code>|</code>) 或斜線 (<code>/</code>)。",
        "tags-create-invalid-title-chars": "標籤名稱不能含有無法使用者頁面標題的字元。",
        "tags-create-already-exists": "標籤 \"$1\" 已存在。",
        "tags-create-warnings-above": "嘗試建立標籤 \"$1\" 時發生下列{{PLURAL:$2|警告}}:",
        "authmanager-autocreate-exception": "自動帳號建立因發生錯誤臨時關閉。",
        "authmanager-userdoesnotexist": "使用者帳號 \"$1\" 尚未註冊。",
        "authmanager-userlogin-remembermypassword-help": "是否要記住密碼來取得更長的連線階段時間。",
-       "authmanager-username-help": "èª\8d証用的使用者名稱。",
-       "authmanager-password-help": "èª\8d証用的密碼。",
-       "authmanager-domain-help": "å¤\96é\83¨èª\8d証用的網域。",
+       "authmanager-username-help": "èª\8dè­\89用的使用者名稱。",
+       "authmanager-password-help": "èª\8dè­\89用的密碼。",
+       "authmanager-domain-help": "å¤\96é\83¨èª\8dè­\89用的網域。",
        "authmanager-retype-help": "再輸入一次密碼確認。",
        "authmanager-email-label": "電子郵件",
        "authmanager-email-help": "電子郵件地址",
        "authmanager-realname-label": "真實姓名",
        "authmanager-realname-help": "使用者的真實姓名",
-       "authmanager-provider-password": "Password-based èª\8d証",
-       "authmanager-provider-password-domain": "Password- å\8f\8a domain-based èª\8d証",
+       "authmanager-provider-password": "Password-based èª\8dè­\89",
+       "authmanager-provider-password-domain": "Password- å\8f\8a domain-based èª\8dè­\89",
        "authmanager-provider-temporarypassword": "臨時密碼",
        "authprovider-confirmlink-message": "根據您最近的登入嘗試次數,以下帳號可以被連結至您的 wiki 帳號。連結帳號可以讓您使用這些帳號登入。請選擇一個您想連結的帳號。",
        "authprovider-confirmlink-request-label": "應連結的帳號",
        "authpage-cannot-link-continue": "無法繼續帳號連結,您的連線階段似乎已逾時。",
        "cannotauth-not-allowed-title": "權限不足",
        "cannotauth-not-allowed": "您不被允許使用此頁面",
-       "changecredentials": "è®\8aæ\9b´æ\86\91証",
+       "changecredentials": "è®\8aæ\9b´æ\86\91è­\89",
        "changecredentials-submit": "變更認證",
        "changecredentials-invalidsubpage": "$1 不是有效的憑証類型。",
        "changecredentials-success": "已變更您的認證。",
-       "removecredentials": "移é\99¤æ\86\91証",
+       "removecredentials": "移é\99¤æ\86\91è­\89",
        "removecredentials-submit": "移除認證",
        "removecredentials-invalidsubpage": "$1 不是有效的憑証類型。",
        "removecredentials-success": "已移除您的憑證。",
-       "credentialsform-provider": "æ\86\91証類型:",
+       "credentialsform-provider": "æ\86\91è­\89類型:",
        "credentialsform-account": "帳號名稱:",
        "cannotlink-no-provider-title": "沒有可連結的帳號",
        "cannotlink-no-provider": "沒有可連結的帳號。",
diff --git a/maintenance/recountCategories.php b/maintenance/recountCategories.php
new file mode 100644 (file)
index 0000000..a4bfa98
--- /dev/null
@@ -0,0 +1,172 @@
+<?php
+/**
+ * Refreshes category counts.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ * http://www.gnu.org/copyleft/gpl.html
+ *
+ * @file
+ * @ingroup Maintenance
+ */
+
+require_once __DIR__ . '/Maintenance.php';
+
+use MediaWiki\MediaWikiServices;
+
+/**
+ * Maintenance script that refreshes category membership counts in the category
+ * table.
+ *
+ * (The populateCategory.php script will also recalculate counts, but
+ * recountCategories only updates rows that need to be updated, making it more
+ * efficient.)
+ *
+ * @ingroup Maintenance
+ */
+class RecountCategories extends Maintenance {
+       public function __construct() {
+               parent::__construct();
+               $this->addDescription( <<<'TEXT'
+This script refreshes the category membership counts stored in the category
+table. As time passes, these counts often drift from the actual number of
+category members. The script identifies rows where the value in the category
+table does not match the number of categorylinks rows for that category, and
+updates the category table accordingly.
+
+To fully refresh the data in the category table, you need to run this script
+three times: once in each mode. Alternatively, just one mode can be run if
+required.
+TEXT
+               );
+               $this->addOption(
+                       'mode',
+                       '(REQUIRED) Which category count column to recompute: "pages", "subcats" or "files".',
+                       true,
+                       true
+               );
+               $this->addOption(
+                       'begin',
+                       'Only recount categories with cat_id greater than the given value',
+                       false,
+                       true
+               );
+               $this->addOption(
+                       'throttle',
+                       'Wait this many milliseconds after each batch. Default: 0',
+                       false,
+                       true
+               );
+
+               $this->setBatchSize( 500 );
+       }
+
+       public function execute() {
+               $this->mode = $this->getOption( 'mode' );
+               if ( !in_array( $this->mode, [ 'pages', 'subcats', 'files' ] ) ) {
+                       $this->error( 'Please specify a valid mode: one of "pages", "subcats" or "files".', 1 );
+               }
+
+               $this->minimumId = intval( $this->getOption( 'begin', 0 ) );
+
+               // do the work, batch by batch
+               $affectedRows = 0;
+               while ( ( $result = $this->doWork() ) !== false ) {
+                       $affectedRows += $result;
+                       usleep( $this->getOption( 'throttle', 0 ) * 1000 );
+               }
+
+               $this->output( "Done! Updated the {$this->mode} counts of $affectedRows categories.\n" .
+                       "Now run the script using the other --mode options if you haven't already.\n" );
+               if ( $this->mode === 'pages' ) {
+                       $this->output(
+                               "Also run 'php cleanupEmptyCategories.php --mode remove' to remove empty,\n" .
+                               "nonexistent categories from the category table.\n\n" );
+               }
+       }
+
+       protected function doWork() {
+               $this->output( "Finding up to {$this->mBatchSize} drifted rows " .
+                       "starting at cat_id {$this->minimumId}...\n" );
+
+               $countingConds = [ 'cl_to = cat_title' ];
+               if ( $this->mode === 'subcats' ) {
+                       $countingConds['cl_type'] = 'subcat';
+               } elseif ( $this->mode === 'files' ) {
+                       $countingConds['cl_type'] = 'file';
+               }
+
+               $dbr = $this->getDB( DB_REPLICA, 'vslow' );
+               $countingSubquery = $dbr->selectSQLText( 'categorylinks',
+                       'COUNT(*)',
+                       $countingConds,
+                       __METHOD__ );
+
+               // First, let's find out which categories have drifted and need to be updated.
+               // The query counts the categorylinks for each category on the replica DB,
+               // but this data can't be used for updating the master, so we don't include it
+               // in the results.
+               $idsToUpdate = $dbr->selectFieldValues( 'category',
+                       'cat_id',
+                       [
+                               'cat_id > ' . $this->minimumId,
+                               "cat_{$this->mode} != ($countingSubquery)"
+                       ],
+                       __METHOD__,
+                       [ 'LIMIT' => $this->mBatchSize ]
+               );
+               if ( !$idsToUpdate ) {
+                       return false;
+               }
+               $this->output( "Updating cat_{$this->mode} field on " .
+                       count( $idsToUpdate ) . " rows...\n" );
+
+               // In the next batch, start where this query left off. The rows selected
+               // in this iteration shouldn't be selected again after being updated, but
+               // we still keep track of where we are up to, as extra protection against
+               // infinite loops.
+               $this->minimumId = end( $idsToUpdate );
+
+               // Now, on master, find the correct counts for these categories.
+               $dbw = $this->getDB( DB_MASTER );
+               $res = $dbw->select( 'category',
+                       [ 'cat_id', 'count' => "($countingSubquery)" ],
+                       [ 'cat_id' => $idsToUpdate ],
+                       __METHOD__ );
+
+               // Update the category counts on the rows we just identified.
+               // This logic is equivalent to Category::refreshCounts, except here, we
+               // don't remove rows when cat_pages is zero and the category description page
+               // doesn't exist - instead we print a suggestion to run
+               // cleanupEmptyCategories.php.
+               $affectedRows = 0;
+               foreach ( $res as $row ) {
+                       $dbw->update( 'category',
+                               [ "cat_{$this->mode}" => $row->count ],
+                               [
+                                       'cat_id' => $row->cat_id,
+                                       "cat_{$this->mode} != {$row->count}",
+                               ],
+                               __METHOD__ );
+                       $affectedRows += $dbw->affectedRows();
+               }
+
+               MediaWikiServices::getInstance()->getDBLoadBalancerFactory()->waitForReplication();
+
+               return $affectedRows;
+       }
+}
+
+$maintClass = 'RecountCategories';
+require_once RUN_MAINTENANCE_IF_MAIN;
index a748063..3e7a3e1 100644 (file)
                $bottom = $( '<div>' )
                        .addClass( 'mw-rcfilters-ui-filterWrapperWidget-bottom' );
 
-               if ( mw.config.get( 'wgStructuredChangeFiltersEnableLiveUpdate' ) ) {
+               if (
+                       mw.config.get( 'wgStructuredChangeFiltersEnableLiveUpdate' ) ||
+                       // Allow users to enable live update with ?liveupdate=1
+                       new mw.Uri().query.liveupdate
+               ) {
                        $bottom.append( this.liveUpdateButton.$element );
                }
 
index 2bb0fdf..64b9ac9 100644 (file)
                                .addClass( 'mw-rcfilters-ui-menuSelectWidget-view-' + viewName );
 
                        this.currentView = viewName;
+                       this.scrollToTop();
                        this.clip();
                }
        };
index 1e09e92..03a609b 100644 (file)
@@ -400,6 +400,10 @@ mw.loader.register( [
                $module = new ResourceLoaderStartUpModule();
                $out = ltrim( $case['out'], "\n" );
 
+               // Disable log from getModuleRegistrations via MWExceptionHandler
+               // for case where getVersionHash() is expected to throw.
+               $this->setLogger( 'exception', new Psr\Log\NullLogger() );
+
                $this->assertEquals(
                        self::expandPlaceholders( $out ),
                        $module->getModuleRegistrations( $context ),
index 1422adc..e6f709d 100644 (file)
@@ -588,7 +588,9 @@ mw.example();
         * @covers ResourceLoader::getCombinedVersion
         */
        public function testGetCombinedVersion() {
-               $rl = new EmptyResourceLoader();
+               $rl = $this->getMockBuilder( EmptyResourceLoader::class )
+                       // Disable log from outputErrorAndLog
+                       ->setMethods( [ 'outputErrorAndLog' ] )->getMock();
                $rl->register( [
                        'foo' => self::getSimpleModuleMock(),
                        'ferry' => self::getFailFerryMock(),
@@ -720,6 +722,9 @@ mw.example();
                        $rl
                );
 
+               // Disable log from makeModuleResponse via outputErrorAndLog
+               $this->setLogger( 'exception', new Psr\Log\NullLogger() );
+
                $response = $rl->makeModuleResponse( $context, $modules );
                $errors = $rl->getErrors();
 
@@ -764,6 +769,9 @@ mw.example();
                        'getModuleNames'
                );
 
+               // Disable log from makeModuleResponse via outputErrorAndLog
+               $this->setLogger( 'exception', new Psr\Log\NullLogger() );
+
                $modules = [ 'startup' => $rl->getModule( 'startup' ) ];
                $response = $rl->makeModuleResponse( $context, $modules );
                $errors = $rl->getErrors();
diff --git a/tests/qunit/data/callMwLoaderTestCallback.js b/tests/qunit/data/callMwLoaderTestCallback.js
deleted file mode 100644 (file)
index dd03411..0000000
+++ /dev/null
@@ -1 +0,0 @@
-mediaWiki.loader.testCallback();
diff --git a/tests/qunit/data/mwLoaderTestCallback.js b/tests/qunit/data/mwLoaderTestCallback.js
new file mode 100644 (file)
index 0000000..dd03411
--- /dev/null
@@ -0,0 +1 @@
+mediaWiki.loader.testCallback();
diff --git a/tests/qunit/data/qunitOkCall.js b/tests/qunit/data/qunitOkCall.js
deleted file mode 100644 (file)
index 3ed5514..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-QUnit.start();
-QUnit.assert.ok( true, 'Successfully loaded!' );
index a00b3cb..30654fa 100644 (file)
@@ -90,7 +90,7 @@
                        isAwesomeDone = true;
                };
 
-               mw.loader.implement( 'test.callback', [ QUnit.fixurl( mw.config.get( 'wgScriptPath' ) + '/tests/qunit/data/callMwLoaderTestCallback.js' ) ] );
+               mw.loader.implement( 'test.callback', [ QUnit.fixurl( mw.config.get( 'wgScriptPath' ) + '/tests/qunit/data/mwLoaderTestCallback.js' ) ] );
 
                return mw.loader.using( 'test.callback', function () {
                        assert.strictEqual( isAwesomeDone, true, 'test.callback module should\'ve caused isAwesomeDone to be true' );
                        isAwesomeDone = true;
                };
 
-               mw.loader.implement( 'hasOwnProperty', [ QUnit.fixurl( mw.config.get( 'wgScriptPath' ) + '/tests/qunit/data/callMwLoaderTestCallback.js' ) ], {}, {} );
+               mw.loader.implement( 'hasOwnProperty', [ QUnit.fixurl( mw.config.get( 'wgScriptPath' ) + '/tests/qunit/data/mwLoaderTestCallback.js' ) ], {}, {} );
 
                return mw.loader.using( 'hasOwnProperty', function () {
                        assert.strictEqual( isAwesomeDone, true, 'hasOwnProperty module should\'ve caused isAwesomeDone to be true' );
                        isAwesomeDone = true;
                };
 
-               mw.loader.implement( 'test.promise', [ QUnit.fixurl( mw.config.get( 'wgScriptPath' ) + '/tests/qunit/data/callMwLoaderTestCallback.js' ) ] );
+               mw.loader.implement( 'test.promise', [ QUnit.fixurl( mw.config.get( 'wgScriptPath' ) + '/tests/qunit/data/mwLoaderTestCallback.js' ) ] );
 
                return mw.loader.using( 'test.promise' )
                .done( function () {
                );
        } );
 
-       QUnit.asyncTest( '.load( "//protocol-relative" ) - T32825', function ( assert ) {
-               // This bug was actually already fixed in 1.18 and later when discovered in 1.17.
-               // Test is for regressions!
+       // This bug was actually already fixed in 1.18 and later when discovered in 1.17.
+       QUnit.test( '.load( "//protocol-relative" ) - T32825', function ( assert ) {
+               var target,
+                       done = assert.async();
 
-               // Forge a URL to the test callback script
-               var target = QUnit.fixurl(
-                       mw.config.get( 'wgServer' ) + mw.config.get( 'wgScriptPath' ) + '/tests/qunit/data/qunitOkCall.js'
+               // URL to the callback script
+               target = QUnit.fixurl(
+                       mw.config.get( 'wgServer' ) + mw.config.get( 'wgScriptPath' ) + '/tests/qunit/data/mwLoaderTestCallback.js'
                );
-
-               // Confirm that mw.loader.load() works with protocol-relative URLs
+               // Ensure a protocol-relative URL for this test
                target = target.replace( /https?:/, '' );
+               assert.equal( target.slice( 0, 2 ), '//', 'URL is protocol-relative' );
 
-               assert.equal( target.slice( 0, 2 ), '//',
-                       'URL must be relative to test relative URLs!'
-               );
+               mw.loader.testCallback = function () {
+                       delete mw.loader.testCallback;
+                       assert.ok( true, 'callback' );
+                       done();
+               };
 
-               // Async!
-               // The target calls QUnit.start
+               // Go!
                mw.loader.load( target );
        } );
 
-       QUnit.asyncTest( '.load( "/absolute-path" )', function ( assert ) {
-               // Forge a URL to the test callback script
-               var target = QUnit.fixurl(
-                       mw.config.get( 'wgScriptPath' ) + '/tests/qunit/data/qunitOkCall.js'
-               );
+       QUnit.test( '.load( "/absolute-path" )', function ( assert ) {
+               var target,
+                       done = assert.async();
 
-               // Confirm that mw.loader.load() works with absolute-paths (relative to current hostname)
+               // URL to the callback script
+               target = QUnit.fixurl( mw.config.get( 'wgScriptPath' ) + '/tests/qunit/data/mwLoaderTestCallback.js' );
                assert.equal( target.slice( 0, 1 ), '/', 'URL is relative to document root' );
 
-               // Async!
-               // The target calls QUnit.start
+               mw.loader.testCallback = function () {
+                       delete mw.loader.testCallback;
+                       assert.ok( true, 'callback' );
+                       done();
+               };
+
+               // Go!
                mw.loader.load( target );
        } );
 
index 477550b..b20b68f 100644 (file)
@@ -6,7 +6,7 @@
                }
        } ) );
 
-       QUnit.asyncTest( 'toggleToc', function ( assert ) {
+       QUnit.test( 'toggleToc', function ( assert ) {
                var tocHtml, $toc, $toggleLink, $tocList;
 
                assert.strictEqual( $( '.toc' ).length, 0, 'There is no table of contents on the page at the beginning' );
                assert.strictEqual( $tocList.is( ':hidden' ), false, 'The table of contents is now visible' );
 
                $toggleLink.click();
-               $tocList.promise().done( function () {
+               return $tocList.promise().then( function () {
                        assert.strictEqual( $tocList.is( ':hidden' ), true, 'The table of contents is now hidden' );
 
                        $toggleLink.click();
-                       $tocList.promise().done( function () {
-                               QUnit.start();
-                       } );
+                       return $tocList.promise();
                } );
        } );
 }( mediaWiki, jQuery ) );