From: jenkins-bot ТеÑÑиÑование: Ð´Ð»Ñ ÑдобÑÑва ÑеÑÑиÑÐ¾Ð²Ð°Ð½Ð¸Ñ API-запÑоÑов, Ñм. [[Special:ApiSandbox]]. Test document.
- One
- Two
- Two point one
- Three
- Test document.
- One
- Two
- Two point one
- Three
- Test document.
- One
- Two
- Two point one
- Three
- Test document.
Test document.
Test document.
" .
Xml::input( 'mwProtect-reason', 60, $this->mReason, [ 'type' => 'text',
- 'id' => 'mwProtect-reason', 'maxlength' => 180 ] ) .
- // Limited maxlength as the database trims at 255 bytes and other texts
- // chosen by dropdown menus on this page are also included in this database field.
- // The byte limit of 180 bytes is enforced in javascript
+ 'id' => 'mwProtect-reason', 'maxlength' => $maxlength ] ) .
"
";
# Disallow watching is user is not logged in
diff --git a/includes/Revision.php b/includes/Revision.php
index eba563cfda..f8a3fcc420 100644
--- a/includes/Revision.php
+++ b/includes/Revision.php
@@ -29,7 +29,6 @@ use MediaWiki\Storage\RevisionStore;
use MediaWiki\Storage\RevisionStoreRecord;
use MediaWiki\Storage\SlotRecord;
use MediaWiki\Storage\SqlBlobStore;
-use MediaWiki\User\UserIdentityValue;
use Wikimedia\Rdbms\IDatabase;
use MediaWiki\Linker\LinkTarget;
use MediaWiki\MediaWikiServices;
@@ -316,7 +315,18 @@ class Revision implements IDBAccessObject {
* @return array
*/
public static function userJoinCond() {
+ global $wgActorTableSchemaMigrationStage;
+
wfDeprecated( __METHOD__, '1.31' );
+ if ( $wgActorTableSchemaMigrationStage > MIGRATION_WRITE_BOTH ) {
+ // If code is using this instead of self::getQueryInfo(), there's
+ // no way the join it's trying to do can work once the old fields
+ // aren't being written anymore.
+ throw new BadMethodCallException(
+ 'Cannot use ' . __METHOD__ . ' when $wgActorTableSchemaMigrationStage > MIGRATION_WRITE_BOTH'
+ );
+ }
+
return [ 'LEFT JOIN', [ 'rev_user != 0', 'user_id = rev_user' ] ];
}
@@ -339,7 +349,17 @@ class Revision implements IDBAccessObject {
* @return array
*/
public static function selectFields() {
- global $wgContentHandlerUseDB;
+ global $wgContentHandlerUseDB, $wgActorTableSchemaMigrationStage;
+
+ if ( $wgActorTableSchemaMigrationStage > MIGRATION_WRITE_BOTH ) {
+ // If code is using this instead of self::getQueryInfo(), there's a
+ // decent chance it's going to try to directly access
+ // $row->rev_user or $row->rev_user_text and we can't give it
+ // useful values here once those aren't being written anymore.
+ throw new BadMethodCallException(
+ 'Cannot use ' . __METHOD__ . ' when $wgActorTableSchemaMigrationStage > MIGRATION_WRITE_BOTH'
+ );
+ }
wfDeprecated( __METHOD__, '1.31' );
@@ -350,6 +370,7 @@ class Revision implements IDBAccessObject {
'rev_timestamp',
'rev_user_text',
'rev_user',
+ 'rev_actor' => 'NULL',
'rev_minor_edit',
'rev_deleted',
'rev_len',
@@ -374,7 +395,17 @@ class Revision implements IDBAccessObject {
* @return array
*/
public static function selectArchiveFields() {
- global $wgContentHandlerUseDB;
+ global $wgContentHandlerUseDB, $wgActorTableSchemaMigrationStage;
+
+ if ( $wgActorTableSchemaMigrationStage > MIGRATION_WRITE_BOTH ) {
+ // If code is using this instead of self::getQueryInfo(), there's a
+ // decent chance it's going to try to directly access
+ // $row->ar_user or $row->ar_user_text and we can't give it
+ // useful values here once those aren't being written anymore.
+ throw new BadMethodCallException(
+ 'Cannot use ' . __METHOD__ . ' when $wgActorTableSchemaMigrationStage > MIGRATION_WRITE_BOTH'
+ );
+ }
wfDeprecated( __METHOD__, '1.31' );
@@ -387,6 +418,7 @@ class Revision implements IDBAccessObject {
'ar_timestamp',
'ar_user_text',
'ar_user',
+ 'ar_actor' => 'NULL',
'ar_minor_edit',
'ar_deleted',
'ar_len',
@@ -623,7 +655,7 @@ class Revision implements IDBAccessObject {
*/
public function setUserIdAndName( $id, $name ) {
if ( $this->mRecord instanceof MutableRevisionRecord ) {
- $user = new UserIdentityValue( intval( $id ), $name );
+ $user = User::newFromAnyId( intval( $id ), $name, null );
$this->mRecord->setUser( $user );
} else {
throw new MWException( __METHOD__ . ' is not supported on this instance' );
@@ -906,6 +938,11 @@ class Revision implements IDBAccessObject {
return $this->mRecord->getContent( 'main', $audience, $user );
}
catch ( RevisionAccessException $e ) {
+ wfDebugLog(
+ 'T184670',
+ __METHOD__ . ": Cannot get content: " . $e->getMessage() .
+ "\n" . $e->getTraceAsString()
+ );
return null;
}
}
diff --git a/includes/RevisionList.php b/includes/RevisionList.php
index fa454e07e3..5243cc65dd 100644
--- a/includes/RevisionList.php
+++ b/includes/RevisionList.php
@@ -203,6 +203,16 @@ abstract class RevisionItemBase {
return false;
}
+ /**
+ * Get the DB field name storing actor ids.
+ * Override this function.
+ * @since 1.31
+ * @return bool
+ */
+ public function getAuthorActorField() {
+ return false;
+ }
+
/**
* Get the ID, as it would appear in the ids URL parameter
* @return int
@@ -257,6 +267,16 @@ abstract class RevisionItemBase {
return strval( $this->row->$field );
}
+ /**
+ * Get the author actor ID
+ * @since 1.31
+ * @return string
+ */
+ public function getAuthorActor() {
+ $field = $this->getAuthorActorField();
+ return strval( $this->row->$field );
+ }
+
/**
* Returns true if the current user can view the item
*/
diff --git a/includes/ServiceWiring.php b/includes/ServiceWiring.php
index 8b0452db3d..3e3c8971d7 100644
--- a/includes/ServiceWiring.php
+++ b/includes/ServiceWiring.php
@@ -179,7 +179,8 @@ return [
'WatchedItemQueryService' => function ( MediaWikiServices $services ) {
return new WatchedItemQueryService(
$services->getDBLoadBalancer(),
- $services->getCommentStore()
+ $services->getCommentStore(),
+ $services->getActorMigration()
);
},
@@ -442,6 +443,29 @@ return [
);
},
+ 'UploadRevisionImporter' => function ( MediaWikiServices $services ) {
+ return new ImportableUploadRevisionImporter(
+ $services->getMainConfig()->get( 'EnableUploads' ),
+ LoggerFactory::getInstance( 'UploadRevisionImporter' )
+ );
+ },
+
+ 'OldRevisionImporter' => function ( MediaWikiServices $services ) {
+ return new ImportableOldRevisionImporter(
+ true,
+ LoggerFactory::getInstance( 'OldRevisionImporter' ),
+ $services->getDBLoadBalancer()
+ );
+ },
+
+ 'WikiRevisionOldRevisionImporterNoUpdates' => function ( MediaWikiServices $services ) {
+ return new ImportableOldRevisionImporter(
+ false,
+ LoggerFactory::getInstance( 'OldRevisionImporter' ),
+ $services->getDBLoadBalancer()
+ );
+ },
+
'ShellCommandFactory' => function ( MediaWikiServices $services ) {
$config = $services->getMainConfig();
@@ -477,7 +501,8 @@ return [
$services->getDBLoadBalancer(),
$blobStore,
$services->getMainWANObjectCache(),
- $services->getCommentStore()
+ $services->getCommentStore(),
+ $services->getActorMigration()
);
$store->setLogger( LoggerFactory::getInstance( 'RevisionStore' ) );
@@ -532,7 +557,13 @@ return [
$wgContLang,
$services->getMainConfig()->get( 'CommentTableSchemaMigrationStage' )
);
- }
+ },
+
+ 'ActorMigration' => function ( MediaWikiServices $services ) {
+ return new ActorMigration(
+ $services->getMainConfig()->get( 'ActorTableSchemaMigrationStage' )
+ );
+ },
///////////////////////////////////////////////////////////////////////////
// NOTE: When adding a service here, don't forget to add a getter function
diff --git a/includes/SiteStats.php b/includes/SiteStats.php
index 0346f23a70..745c89166b 100644
--- a/includes/SiteStats.php
+++ b/includes/SiteStats.php
@@ -23,60 +23,47 @@
use Wikimedia\Rdbms\Database;
use Wikimedia\Rdbms\IDatabase;
use MediaWiki\MediaWikiServices;
+use Wikimedia\Rdbms\LoadBalancer;
/**
* Static accessor class for site_stats and related things
*/
class SiteStats {
- /** @var bool|stdClass */
+ /** @var stdClass */
private static $row;
- /** @var bool */
- private static $loaded = false;
- /** @var int[] */
- private static $pageCount = [];
-
- static function unload() {
- self::$loaded = false;
- }
-
- static function recache() {
- self::load( true );
- }
-
/**
- * @param bool $recache
+ * Trigger a reload next time a field is accessed
*/
- static function load( $recache = false ) {
- if ( self::$loaded && !$recache ) {
- return;
- }
-
- self::$row = self::loadAndLazyInit();
+ public static function unload() {
+ self::$row = null;
+ }
- self::$loaded = true;
+ protected static function load() {
+ if ( self::$row === null ) {
+ self::$row = self::loadAndLazyInit();
+ }
}
/**
- * @return bool|stdClass
+ * @return stdClass
*/
- static function loadAndLazyInit() {
- global $wgMiserMode;
+ protected static function loadAndLazyInit() {
+ $config = MediaWikiServices::getInstance()->getMainConfig();
+ $lb = self::getLB();
+ $dbr = $lb->getConnection( DB_REPLICA );
wfDebug( __METHOD__ . ": reading site_stats from replica DB\n" );
- $row = self::doLoad( wfGetDB( DB_REPLICA ) );
-
- if ( !self::isSane( $row ) ) {
- $lb = MediaWikiServices::getInstance()->getDBLoadBalancer();
- if ( $lb->hasOrMadeRecentMasterChanges() ) {
- // Might have just been initialized during this request? Underflow?
- wfDebug( __METHOD__ . ": site_stats damaged or missing on replica DB\n" );
- $row = self::doLoad( wfGetDB( DB_MASTER ) );
- }
+ $row = self::doLoadFromDB( $dbr );
+
+ if ( !self::isRowSane( $row ) && $lb->hasOrMadeRecentMasterChanges() ) {
+ // Might have just been initialized during this request? Underflow?
+ wfDebug( __METHOD__ . ": site_stats damaged or missing on replica DB\n" );
+ $row = self::doLoadFromDB( $lb->getConnection( DB_MASTER ) );
}
- if ( !self::isSane( $row ) ) {
- if ( $wgMiserMode ) {
+ if ( !self::isRowSane( $row ) ) {
+ if ( $config->get( 'MiserMode' ) ) {
// Start off with all zeroes, assuming that this is a new wiki or any
// repopulations where done manually via script.
SiteStatsInit::doPlaceholderInit();
@@ -86,92 +73,73 @@ class SiteStats {
// broken, however, for instance when importing from a dump into a
// clean schema with mwdumper.
wfDebug( __METHOD__ . ": initializing damaged or missing site_stats\n" );
- SiteStatsInit::doAllAndCommit( wfGetDB( DB_REPLICA ) );
+ SiteStatsInit::doAllAndCommit( $dbr );
}
- $row = self::doLoad( wfGetDB( DB_MASTER ) );
+ $row = self::doLoadFromDB( $lb->getConnection( DB_MASTER ) );
}
- if ( !self::isSane( $row ) ) {
+ if ( !self::isRowSane( $row ) ) {
wfDebug( __METHOD__ . ": site_stats persistently nonsensical o_O\n" );
- $row = (object)array_fill_keys( self::selectFields(), 0 );
+ // Always return a row-like object
+ $row = self::salvageInsaneRow( $row );
}
return $row;
}
- /**
- * @param IDatabase $db
- * @return bool|stdClass
- */
- static function doLoad( $db ) {
- return $db->selectRow(
- 'site_stats',
- self::selectFields(),
- [ 'ss_row_id' => 1 ],
- __METHOD__
- );
- }
-
- /**
- * Return the total number of page views. Except we don't track those anymore.
- * Stop calling this function, it will be removed some time in the future. It's
- * kept here simply to prevent fatal errors.
- *
- * @deprecated since 1.25
- * @return int
- */
- static function views() {
- wfDeprecated( __METHOD__, '1.25' );
- return 0;
- }
-
/**
* @return int
*/
- static function edits() {
+ public static function edits() {
self::load();
- return self::$row->ss_total_edits;
+
+ return (int)self::$row->ss_total_edits;
}
/**
* @return int
*/
- static function articles() {
+ public static function articles() {
self::load();
- return self::$row->ss_good_articles;
+
+ return (int)self::$row->ss_good_articles;
}
/**
* @return int
*/
- static function pages() {
+ public static function pages() {
self::load();
- return self::$row->ss_total_pages;
+
+ return (int)self::$row->ss_total_pages;
}
/**
* @return int
*/
- static function users() {
+ public static function users() {
self::load();
- return self::$row->ss_users;
+
+ return (int)self::$row->ss_users;
}
/**
* @return int
*/
- static function activeUsers() {
+ public static function activeUsers() {
self::load();
- return self::$row->ss_active_users;
+
+ return (int)self::$row->ss_active_users;
}
/**
* @return int
*/
- static function images() {
+ public static function images() {
self::load();
- return self::$row->ss_images;
+
+ return (int)self::$row->ss_images;
}
/**
@@ -179,17 +147,17 @@ class SiteStats {
* @param string $group Name of group
* @return int
*/
- static function numberingroup( $group ) {
+ public static function numberingroup( $group ) {
$cache = MediaWikiServices::getInstance()->getMainWANObjectCache();
+
return $cache->getWithSetCallback(
$cache->makeKey( 'SiteStats', 'groupcounts', $group ),
$cache::TTL_HOUR,
function ( $oldValue, &$ttl, array &$setOpts ) use ( $group ) {
- $dbr = wfGetDB( DB_REPLICA );
-
+ $dbr = self::getLB()->getConnection( DB_REPLICA );
$setOpts += Database::getCacheSetOptions( $dbr );
- return $dbr->selectField(
+ return (int)$dbr->selectField(
'user_groups',
'COUNT(*)',
[
@@ -207,8 +175,9 @@ class SiteStats {
* Total number of jobs in the job queue.
* @return int
*/
- static function jobs() {
+ public static function jobs() {
$cache = MediaWikiServices::getInstance()->getMainWANObjectCache();
+
return $cache->getWithSetCallback(
$cache->makeKey( 'SiteStats', 'jobscount' ),
$cache::TTL_MINUTE,
@@ -226,20 +195,27 @@ class SiteStats {
/**
* @param int $ns
- *
* @return int
*/
- static function pagesInNs( $ns ) {
- if ( !isset( self::$pageCount[$ns] ) ) {
- $dbr = wfGetDB( DB_REPLICA );
- self::$pageCount[$ns] = (int)$dbr->selectField(
- 'page',
- 'COUNT(*)',
- [ 'page_namespace' => $ns ],
- __METHOD__
- );
- }
- return self::$pageCount[$ns];
+ public static function pagesInNs( $ns ) {
+ $cache = MediaWikiServices::getInstance()->getMainWANObjectCache();
+
+ return $cache->getWithSetCallback(
+ $cache->makeKey( 'SiteStats', 'page-in-namespace', $ns ),
+ $cache::TTL_HOUR,
+ function ( $oldValue, &$ttl, array &$setOpts ) use ( $ns ) {
+ $dbr = self::getLB()->getConnection( DB_REPLICA );
+ $setOpts += Database::getCacheSetOptions( $dbr );
+
+ return (int)$dbr->selectField(
+ 'page',
+ 'COUNT(*)',
+ [ 'page_namespace' => $ns ],
+ __METHOD__
+ );
+ },
+ [ 'pcTTL' => $cache::TTL_PROC_LONG ]
+ );
}
/**
@@ -256,6 +232,19 @@ class SiteStats {
];
}
+ /**
+ * @param IDatabase $db
+ * @return stdClass|bool
+ */
+ private static function doLoadFromDB( IDatabase $db ) {
+ return $db->selectRow(
+ 'site_stats',
+ self::selectFields(),
+ [ 'ss_row_id' => 1 ],
+ __METHOD__
+ );
+ }
+
/**
* Is the provided row of site stats sane, or should it be regenerated?
*
@@ -264,7 +253,7 @@ class SiteStats {
* @param bool|object $row
* @return bool
*/
- private static function isSane( $row ) {
+ private static function isRowSane( $row ) {
if ( $row === false
|| $row->ss_total_pages < $row->ss_good_articles
|| $row->ss_total_edits < $row->ss_total_pages
@@ -279,10 +268,34 @@ class SiteStats {
'ss_users',
'ss_images',
] as $member ) {
- if ( $row->$member > 2000000000 || $row->$member < 0 ) {
+ if ( $row->$member < 0 ) {
return false;
}
}
+
return true;
}
+
+ /**
+ * @param stdClass|bool $row
+ * @return stdClass
+ */
+ private static function salvageInsaneRow( $row ) {
+ $map = $row ? (array)$row : [];
+ // Fill in any missing values with zero
+ $map += array_fill_keys( self::selectFields(), 0 );
+ // Convert negative values to zero
+ foreach ( $map as $field => $value ) {
+ $map[$field] = max( 0, $value );
+ }
+
+ return (object)$row;
+ }
+
+ /**
+ * @return LoadBalancer
+ */
+ private static function getLB() {
+ return MediaWikiServices::getInstance()->getDBLoadBalancer();
+ }
}
diff --git a/includes/SiteStatsInit.php b/includes/SiteStatsInit.php
index 775963f642..f527cb226b 100644
--- a/includes/SiteStatsInit.php
+++ b/includes/SiteStatsInit.php
@@ -18,18 +18,24 @@
* @file
*/
use Wikimedia\Rdbms\IDatabase;
+use MediaWiki\MediaWikiServices;
/**
* Class designed for counting of stats.
*/
class SiteStatsInit {
-
- // Database connection
- private $db;
-
- // Various stats
- private $mEdits = null, $mArticles = null, $mPages = null;
- private $mUsers = null, $mFiles = null;
+ /* @var IDatabase */
+ private $dbr;
+ /** @var int */
+ private $edits;
+ /** @var int */
+ private $articles;
+ /** @var int */
+ private $pages;
+ /** @var int */
+ private $users;
+ /** @var int */
+ private $files;
/**
* @param bool|IDatabase $database
@@ -38,11 +44,11 @@ class SiteStatsInit {
*/
public function __construct( $database = false ) {
if ( $database instanceof IDatabase ) {
- $this->db = $database;
+ $this->dbr = $database;
} elseif ( $database ) {
- $this->db = wfGetDB( DB_MASTER );
+ $this->dbr = self::getDB( DB_MASTER );
} else {
- $this->db = wfGetDB( DB_REPLICA, 'vslow' );
+ $this->dbr = self::getDB( DB_REPLICA, 'vslow' );
}
}
@@ -51,9 +57,10 @@ class SiteStatsInit {
* @return int
*/
public function edits() {
- $this->mEdits = $this->db->selectField( 'revision', 'COUNT(*)', '', __METHOD__ );
- $this->mEdits += $this->db->selectField( 'archive', 'COUNT(*)', '', __METHOD__ );
- return $this->mEdits;
+ $this->edits = $this->dbr->selectField( 'revision', 'COUNT(*)', '', __METHOD__ );
+ $this->edits += $this->dbr->selectField( 'archive', 'COUNT(*)', '', __METHOD__ );
+
+ return $this->edits;
}
/**
@@ -61,7 +68,7 @@ class SiteStatsInit {
* @return int
*/
public function articles() {
- global $wgArticleCountMethod;
+ $config = MediaWikiServices::getInstance()->getMainConfig();
$tables = [ 'page' ];
$conds = [
@@ -69,10 +76,10 @@ class SiteStatsInit {
'page_is_redirect' => 0,
];
- if ( $wgArticleCountMethod == 'link' ) {
+ if ( $config->get( 'ArticleCountMethod' ) == 'link' ) {
$tables[] = 'pagelinks';
$conds[] = 'pl_from=page_id';
- } elseif ( $wgArticleCountMethod == 'comma' ) {
+ } elseif ( $config->get( 'ArticleCountMethod' ) == 'comma' ) {
// To make a correct check for this, we would need, for each page,
// to load the text, maybe uncompress it, maybe decode it and then
// check if there's one comma.
@@ -81,9 +88,14 @@ class SiteStatsInit {
$conds[] = 'page_len > 0';
}
- $this->mArticles = $this->db->selectField( $tables, 'COUNT(DISTINCT page_id)',
- $conds, __METHOD__ );
- return $this->mArticles;
+ $this->articles = $this->dbr->selectField(
+ $tables,
+ 'COUNT(DISTINCT page_id)',
+ $conds,
+ __METHOD__
+ );
+
+ return $this->articles;
}
/**
@@ -91,8 +103,9 @@ class SiteStatsInit {
* @return int
*/
public function pages() {
- $this->mPages = $this->db->selectField( 'page', 'COUNT(*)', '', __METHOD__ );
- return $this->mPages;
+ $this->pages = $this->dbr->selectField( 'page', 'COUNT(*)', '', __METHOD__ );
+
+ return $this->pages;
}
/**
@@ -100,8 +113,9 @@ class SiteStatsInit {
* @return int
*/
public function users() {
- $this->mUsers = $this->db->selectField( 'user', 'COUNT(*)', '', __METHOD__ );
- return $this->mUsers;
+ $this->users = $this->dbr->selectField( 'user', 'COUNT(*)', '', __METHOD__ );
+
+ return $this->users;
}
/**
@@ -109,8 +123,9 @@ class SiteStatsInit {
* @return int
*/
public function files() {
- $this->mFiles = $this->db->selectField( 'image', 'COUNT(*)', '', __METHOD__ );
- return $this->mFiles;
+ $this->files = $this->dbr->selectField( 'image', 'COUNT(*)', '', __METHOD__ );
+
+ return $this->files;
}
/**
@@ -127,7 +142,7 @@ class SiteStatsInit {
$options += [ 'update' => false, 'activeUsers' => false ];
// Grab the object and count everything
- $counter = new SiteStatsInit( $database );
+ $counter = new self( $database );
$counter->edits();
$counter->articles();
@@ -139,7 +154,7 @@ class SiteStatsInit {
// Count active users if need be
if ( $options['activeUsers'] ) {
- SiteStatsUpdate::cacheUpdate( wfGetDB( DB_MASTER ) );
+ SiteStatsUpdate::cacheUpdate( self::getDB( DB_MASTER ) );
}
}
@@ -147,7 +162,7 @@ class SiteStatsInit {
* Insert a dummy row with all zeroes if no row is present
*/
public static function doPlaceholderInit() {
- $dbw = wfGetDB( DB_MASTER );
+ $dbw = self::getDB( DB_MASTER );
$exists = $dbw->selectField( 'site_stats', '1', [ 'ss_row_id' => 1 ], __METHOD__ );
if ( $exists === false ) {
$dbw->insert(
@@ -165,14 +180,30 @@ class SiteStatsInit {
public function refresh() {
$values = [
'ss_row_id' => 1,
- 'ss_total_edits' => ( $this->mEdits === null ? $this->edits() : $this->mEdits ),
- 'ss_good_articles' => ( $this->mArticles === null ? $this->articles() : $this->mArticles ),
- 'ss_total_pages' => ( $this->mPages === null ? $this->pages() : $this->mPages ),
- 'ss_users' => ( $this->mUsers === null ? $this->users() : $this->mUsers ),
- 'ss_images' => ( $this->mFiles === null ? $this->files() : $this->mFiles ),
+ 'ss_total_edits' => $this->edits === null ? $this->edits() : $this->edits,
+ 'ss_good_articles' => $this->articles === null ? $this->articles() : $this->articles,
+ 'ss_total_pages' => $this->pages === null ? $this->pages() : $this->pages,
+ 'ss_users' => $this->users === null ? $this->users() : $this->users,
+ 'ss_images' => $this->files === null ? $this->files() : $this->files,
];
- $dbw = wfGetDB( DB_MASTER );
- $dbw->upsert( 'site_stats', $values, [ 'ss_row_id' ], $values, __METHOD__ );
+ self::getDB( DB_MASTER )->upsert(
+ 'site_stats',
+ $values,
+ [ 'ss_row_id' ],
+ $values,
+ __METHOD__
+ );
+ }
+
+ /**
+ * @param int $index
+ * @param string[] $groups
+ * @return IDatabase
+ */
+ private static function getDB( $index, $groups = [] ) {
+ $lb = MediaWikiServices::getInstance()->getDBLoadBalancer();
+
+ return $lb->getConnection( $index, $groups );
}
}
diff --git a/includes/Storage/BlobStore.php b/includes/Storage/BlobStore.php
index 28caf3a412..8b1112b277 100644
--- a/includes/Storage/BlobStore.php
+++ b/includes/Storage/BlobStore.php
@@ -110,4 +110,10 @@ interface BlobStore {
*/
public function storeBlob( $data, $hints = [] );
+ /**
+ * Check if the blob metadata or backing blob data store is read-only
+ *
+ * @return bool
+ */
+ public function isReadOnly();
}
diff --git a/includes/Storage/RevisionStore.php b/includes/Storage/RevisionStore.php
index d832104ca1..e13fc1fe7a 100644
--- a/includes/Storage/RevisionStore.php
+++ b/includes/Storage/RevisionStore.php
@@ -26,6 +26,7 @@
namespace MediaWiki\Storage;
+use ActorMigration;
use CommentStore;
use CommentStoreComment;
use Content;
@@ -97,6 +98,11 @@ class RevisionStore
*/
private $commentStore;
+ /**
+ * @var ActorMigration
+ */
+ private $actorMigration;
+
/**
* @var LoggerInterface
*/
@@ -109,6 +115,7 @@ class RevisionStore
* @param SqlBlobStore $blobStore
* @param WANObjectCache $cache
* @param CommentStore $commentStore
+ * @param ActorMigration $actorMigration
* @param bool|string $wikiId
*/
public function __construct(
@@ -116,6 +123,7 @@ class RevisionStore
SqlBlobStore $blobStore,
WANObjectCache $cache,
CommentStore $commentStore,
+ ActorMigration $actorMigration,
$wikiId = false
) {
Assert::parameterType( 'string|boolean', $wikiId, '$wikiId' );
@@ -124,6 +132,7 @@ class RevisionStore
$this->blobStore = $blobStore;
$this->cache = $cache;
$this->commentStore = $commentStore;
+ $this->actorMigration = $actorMigration;
$this->wikiId = $wikiId;
$this->logger = new NullLogger();
}
@@ -132,6 +141,13 @@ class RevisionStore
$this->logger = $logger;
}
+ /**
+ * @return bool Whether the store is read-only
+ */
+ public function isReadOnly() {
+ return $this->blobStore->isReadOnly();
+ }
+
/**
* @return bool
*/
@@ -252,7 +268,7 @@ class RevisionStore
if ( $title ) {
$this->logger->info(
__METHOD__ . ' fell back to READ_LATEST and got a Title.',
- [ 'trace' => wfDebugBacktrace() ]
+ [ 'trace' => wfBacktrace() ]
);
return $title;
}
@@ -381,14 +397,16 @@ class RevisionStore
$user = $this->failOnNull( $rev->getUser( RevisionRecord::RAW ), 'user' );
$timestamp = $this->failOnEmpty( $rev->getTimestamp(), 'timestamp field' );
+ // Checks.
+ $this->failOnNull( $user->getId(), 'user field' );
+ $this->failOnEmpty( $user->getName(), 'user_text field' );
+
# Record the edit in revisions
$row = [
'rev_page' => $pageId,
'rev_parent_id' => $parentId,
'rev_text_id' => $textId,
'rev_minor_edit' => $rev->isMinor() ? 1 : 0,
- 'rev_user' => $this->failOnNull( $user->getId(), 'user field' ),
- 'rev_user_text' => $this->failOnEmpty( $user->getName(), 'user_text field' ),
'rev_timestamp' => $dbw->timestamp( $timestamp ),
'rev_deleted' => $rev->getVisibility(),
'rev_len' => $size,
@@ -404,6 +422,10 @@ class RevisionStore
$this->commentStore->insertWithTempTable( $dbw, 'rev_comment', $comment );
$row += $commentFields;
+ list( $actorFields, $actorCallback ) =
+ $this->actorMigration->getInsertValuesWithTempTable( $dbw, 'rev_user', $user );
+ $row += $actorFields;
+
if ( $this->contentHandlerUseDB ) {
// MCR migration note: rev_content_model and rev_content_format will go away
@@ -421,13 +443,14 @@ class RevisionStore
$row['rev_id'] = intval( $dbw->insertId() );
}
$commentCallback( $row['rev_id'] );
+ $actorCallback( $row['rev_id'], $row );
// Insert IP revision into ip_changes for use when querying for a range.
- if ( $row['rev_user'] === 0 && IP::isValid( $row['rev_user_text'] ) ) {
+ if ( $user->getId() === 0 && IP::isValid( $user->getName() ) ) {
$ipcRow = [
'ipc_rev_id' => $row['rev_id'],
'ipc_rev_timestamp' => $row['rev_timestamp'],
- 'ipc_hex' => IP::toHex( $row['rev_user_text'] ),
+ 'ipc_hex' => IP::toHex( $user->getName() ),
];
$dbw->insert( 'ip_changes', $ipcRow, __METHOD__ );
}
@@ -435,8 +458,6 @@ class RevisionStore
$newSlot = SlotRecord::newSaved( $row['rev_id'], $blobAddress, $slot );
$slots = new RevisionSlots( [ 'main' => $newSlot ] );
- $user = new UserIdentityValue( intval( $row['rev_user'] ), $row['rev_user_text'] );
-
$rev = new RevisionStoreRecord(
$title,
$user,
@@ -576,6 +597,7 @@ class RevisionStore
'page' => $title->getArticleID(),
'user_text' => $user->getName(),
'user' => $user->getId(),
+ 'actor' => $user->getActorId(),
'comment' => $comment,
'minor_edit' => $minor,
'text_id' => $current->rev_text_id,
@@ -647,9 +669,10 @@ class RevisionStore
}
// TODO: Select by rc_this_oldid alone - but as of Nov 2017, there is no index on that!
+ $actorWhere = $this->actorMigration->getWhere( $dbr, 'rc_user', $rev->getUser(), false );
$rc = RecentChange::newFromConds(
[
- 'rc_user_text' => $userIdentity->getName(),
+ $actorWhere['conds'],
'rc_timestamp' => $dbr->timestamp( $rev->getTimestamp() ),
'rc_this_oldid' => $rev->getId()
],
@@ -684,6 +707,7 @@ class RevisionStore
'ar_timestamp' => 'rev_timestamp',
'ar_user_text' => 'rev_user_text',
'ar_user' => 'rev_user',
+ 'ar_actor' => 'rev_actor',
'ar_minor_edit' => 'rev_minor_edit',
'ar_deleted' => 'rev_deleted',
'ar_len' => 'rev_len',
@@ -734,14 +758,12 @@ class RevisionStore
if ( is_object( $row ) ) {
// archive row
- if ( !isset( $row->rev_id ) && isset( $row->ar_user ) ) {
+ if ( !isset( $row->rev_id ) && ( isset( $row->ar_user ) || isset( $row->ar_actor ) ) ) {
$row = $this->mapArchiveFields( $row );
}
if ( isset( $row->rev_text_id ) && $row->rev_text_id > 0 ) {
$mainSlotRow->cont_address = 'tt:' . $row->rev_text_id;
- } elseif ( isset( $row->ar_id ) ) {
- $mainSlotRow->cont_address = 'ar:' . $row->ar_id;
}
if ( isset( $row->old_text ) ) {
@@ -1075,7 +1097,16 @@ class RevisionStore
$row->$field = $value;
}
- $user = $this->getUserIdentityFromRowObject( $row, 'ar_' );
+ try {
+ $user = User::newFromAnyId(
+ isset( $row->ar_user ) ? $row->ar_user : null,
+ isset( $row->ar_user_text ) ? $row->ar_user_text : null,
+ isset( $row->ar_actor ) ? $row->ar_actor : null
+ );
+ } catch ( InvalidArgumentException $ex ) {
+ wfWarn( __METHOD__ . ': ' . $ex->getMessage() );
+ $user = new UserIdentityValue( 0, '', 0 );
+ }
$comment = $this->commentStore
// Legacy because $row may have come from self::selectFields()
@@ -1087,34 +1118,6 @@ class RevisionStore
return new RevisionArchiveRecord( $title, $user, $comment, $row, $slots, $this->wikiId );
}
- /**
- * @param object $row
- * @param string $prefix Field prefix, such as 'rev_' or 'ar_'.
- *
- * @return UserIdentityValue
- */
- private function getUserIdentityFromRowObject( $row, $prefix = 'rev_' ) {
- $idField = "{$prefix}user";
- $nameField = "{$prefix}user_text";
-
- $userId = intval( $row->$idField );
-
- if ( isset( $row->user_name ) ) {
- $userName = $row->user_name;
- } elseif ( isset( $row->$nameField ) ) {
- $userName = $row->$nameField;
- } else {
- $userName = User::whoIs( $userId );
- }
-
- if ( $userName === false ) {
- wfWarn( __METHOD__ . ': Cannot determine user name for user ID ' . $userId );
- $userName = '';
- }
-
- return new UserIdentityValue( $userId, $userName );
- }
-
/**
* @see RevisionFactory::newRevisionFromRow_1_29
*
@@ -1145,7 +1148,16 @@ class RevisionStore
}
}
- $user = $this->getUserIdentityFromRowObject( $row );
+ try {
+ $user = User::newFromAnyId(
+ isset( $row->rev_user ) ? $row->rev_user : null,
+ isset( $row->rev_user_text ) ? $row->rev_user_text : null,
+ isset( $row->rev_actor ) ? $row->rev_actor : null
+ );
+ } catch ( InvalidArgumentException $ex ) {
+ wfWarn( __METHOD__ . ': ' . $ex->getMessage() );
+ $user = new UserIdentityValue( 0, '', 0 );
+ }
$comment = $this->commentStore
// Legacy because $row may have come from self::selectFields()
@@ -1224,27 +1236,6 @@ class RevisionStore
}
}
- // Replaces old lazy loading logic in Revision::getUserText.
- if ( !isset( $fields['user_text'] ) && isset( $fields['user'] ) ) {
- if ( $fields['user'] instanceof UserIdentity ) {
- /** @var User $user */
- $user = $fields['user'];
- $fields['user_text'] = $user->getName();
- $fields['user'] = $user->getId();
- } else {
- // TODO: wrap this in a callback to make it lazy again.
- $name = $fields['user'] === 0 ? false : User::whoIs( $fields['user'] );
-
- if ( $name === false ) {
- throw new MWException(
- 'user_text not given, and unknown user ID ' . $fields['user']
- );
- }
-
- $fields['user_text'] = $name;
- }
- }
-
if (
isset( $fields['comment'] )
&& !( $fields['comment'] instanceof CommentStoreComment )
@@ -1287,16 +1278,15 @@ class RevisionStore
if ( isset( $fields['user'] ) && ( $fields['user'] instanceof UserIdentity ) ) {
$user = $fields['user'];
- } elseif ( isset( $fields['user'] ) && isset( $fields['user_text'] ) ) {
- $user = new UserIdentityValue( intval( $fields['user'] ), $fields['user_text'] );
- } elseif ( isset( $fields['user'] ) ) {
- $user = User::newFromId( intval( $fields['user'] ) );
- } elseif ( isset( $fields['user_text'] ) ) {
- $user = User::newFromName( $fields['user_text'] );
-
- // User::newFromName will return false for IP addresses (and invalid names)
- if ( $user == false ) {
- $user = new UserIdentityValue( 0, $fields['user_text'] );
+ } else {
+ try {
+ $user = User::newFromAnyId(
+ isset( $fields['user'] ) ? $fields['user'] : null,
+ isset( $fields['user_text'] ) ? $fields['user_text'] : null,
+ isset( $fields['actor'] ) ? $fields['actor'] : null
+ );
+ } catch ( InvalidArgumentException $ex ) {
+ $user = null;
}
}
@@ -1613,8 +1603,6 @@ class RevisionStore
'rev_page',
'rev_text_id',
'rev_timestamp',
- 'rev_user_text',
- 'rev_user',
'rev_minor_edit',
'rev_deleted',
'rev_len',
@@ -1627,6 +1615,11 @@ class RevisionStore
$ret['fields'] = array_merge( $ret['fields'], $commentQuery['fields'] );
$ret['joins'] = array_merge( $ret['joins'], $commentQuery['joins'] );
+ $actorQuery = $this->actorMigration->getJoin( 'rev_user' );
+ $ret['tables'] = array_merge( $ret['tables'], $actorQuery['tables'] );
+ $ret['fields'] = array_merge( $ret['fields'], $actorQuery['fields'] );
+ $ret['joins'] = array_merge( $ret['joins'], $actorQuery['joins'] );
+
if ( $this->contentHandlerUseDB ) {
$ret['fields'][] = 'rev_content_format';
$ret['fields'][] = 'rev_content_model';
@@ -1650,7 +1643,8 @@ class RevisionStore
$ret['fields'] = array_merge( $ret['fields'], [
'user_name',
] );
- $ret['joins']['user'] = [ 'LEFT JOIN', [ 'rev_user != 0', 'user_id = rev_user' ] ];
+ $u = $actorQuery['fields']['rev_user'];
+ $ret['joins']['user'] = [ 'LEFT JOIN', [ "$u != 0", "user_id = $u" ] ];
}
if ( in_array( 'text', $options, true ) ) {
@@ -1680,8 +1674,9 @@ class RevisionStore
*/
public function getArchiveQueryInfo() {
$commentQuery = $this->commentStore->getJoin( 'ar_comment' );
+ $actorQuery = $this->actorMigration->getJoin( 'ar_user' );
$ret = [
- 'tables' => [ 'archive' ] + $commentQuery['tables'],
+ 'tables' => [ 'archive' ] + $commentQuery['tables'] + $actorQuery['tables'],
'fields' => [
'ar_id',
'ar_page_id',
@@ -1691,15 +1686,13 @@ class RevisionStore
'ar_text',
'ar_text_id',
'ar_timestamp',
- 'ar_user_text',
- 'ar_user',
'ar_minor_edit',
'ar_deleted',
'ar_len',
'ar_parent_id',
'ar_sha1',
- ] + $commentQuery['fields'],
- 'joins' => $commentQuery['joins'],
+ ] + $commentQuery['fields'] + $actorQuery['fields'],
+ 'joins' => $commentQuery['joins'] + $actorQuery['joins'],
];
if ( $this->contentHandlerUseDB ) {
@@ -1922,15 +1915,19 @@ class RevisionStore
return false;
}
+ $revQuery = self::getQueryInfo();
$res = $db->select(
- 'revision',
- 'rev_user',
+ $revQuery['tables'],
+ [
+ 'rev_user' => $revQuery['fields']['rev_user'],
+ ],
[
'rev_page' => $pageId,
'rev_timestamp > ' . $db->addQuotes( $db->timestamp( $since ) )
],
__METHOD__,
- [ 'ORDER BY' => 'rev_timestamp ASC', 'LIMIT' => 50 ]
+ [ 'ORDER BY' => 'rev_timestamp ASC', 'LIMIT' => 50 ],
+ $revQuery['joins']
);
foreach ( $res as $row ) {
if ( $row->rev_user != $userId ) {
diff --git a/includes/Storage/SqlBlobStore.php b/includes/Storage/SqlBlobStore.php
index 031cb587ed..0ff7c13343 100644
--- a/includes/Storage/SqlBlobStore.php
+++ b/includes/Storage/SqlBlobStore.php
@@ -299,7 +299,6 @@ class SqlBlobStore implements IDBAccessObject, BlobStore {
list( $schema, $id, ) = self::splitBlobAddress( $blobAddress );
//TODO: MCR: also support 'ex' schema with ExternalStore URLs, plus flags encoded in the URL!
- //TODO: MCR: also support 'ar' schema for content blobs in old style archive rows!
if ( $schema === 'tt' ) {
$textId = intval( $id );
} else {
@@ -591,4 +590,11 @@ class SqlBlobStore implements IDBAccessObject, BlobStore {
return [ $schema, $id, $parameters ];
}
+ public function isReadOnly() {
+ if ( $this->useExternalStore && ExternalStore::defaultStoresAreReadOnly() ) {
+ return true;
+ }
+
+ return ( $this->getDBLoadBalancer()->getReadOnlyReason() !== false );
+ }
}
diff --git a/includes/Title.php b/includes/Title.php
index 1be986376f..6dc7db5097 100644
--- a/includes/Title.php
+++ b/includes/Title.php
@@ -1303,22 +1303,52 @@ class Title implements LinkTarget {
* show "inactive" CSS or JS.
*
* @return bool
- * @todo FIXME: Rename to isSiteConfigPage() and remove deprecated hook
+ * @since 1.31
+ */
+ public function isSiteConfigPage() {
+ return (
+ NS_MEDIAWIKI == $this->mNamespace
+ && (
+ $this->hasContentModel( CONTENT_MODEL_CSS )
+ || $this->hasContentModel( CONTENT_MODEL_JAVASCRIPT )
+ )
+ );
+ }
+
+ /**
+ * @return bool
+ * @deprecated Since 1.31; use ::isSiteConfigPage() instead
*/
public function isCssOrJsPage() {
- $isCssOrJsPage = NS_MEDIAWIKI == $this->mNamespace
- && ( $this->hasContentModel( CONTENT_MODEL_CSS )
- || $this->hasContentModel( CONTENT_MODEL_JAVASCRIPT ) );
+ // wfDeprecated( __METHOD__, '1.31' );
+ return ( NS_MEDIAWIKI == $this->mNamespace
+ && ( $this->hasContentModel( CONTENT_MODEL_CSS )
+ || $this->hasContentModel( CONTENT_MODEL_JAVASCRIPT ) ) );
+ }
- return $isCssOrJsPage;
+ /**
+ * Is this a "config" (.css or .js) sub-page of a user page?
+ *
+ * @return bool
+ * @since 1.31
+ */
+ public function isUserConfigPage() {
+ return (
+ NS_USER == $this->mNamespace
+ && $this->isSubpage()
+ && (
+ $this->hasContentModel( CONTENT_MODEL_CSS )
+ || $this->hasContentModel( CONTENT_MODEL_JAVASCRIPT )
+ )
+ );
}
/**
- * Is this a .css or .js subpage of a user page?
* @return bool
- * @todo FIXME: Rename to isUserConfigPage()
+ * @deprecated Since 1.31; use ::isUserConfigPage() instead
*/
public function isCssJsSubpage() {
+ // wfDeprecated( __METHOD__, '1.31' );
return ( NS_USER == $this->mNamespace && $this->isSubpage()
&& ( $this->hasContentModel( CONTENT_MODEL_CSS )
|| $this->hasContentModel( CONTENT_MODEL_JAVASCRIPT ) ) );
@@ -1328,8 +1358,9 @@ class Title implements LinkTarget {
* Trim down a .css or .js subpage title to get the corresponding skin name
*
* @return string Containing skin name from .css or .js subpage title
+ * @since 1.31
*/
- public function getSkinFromCssJsSubpage() {
+ public function getSkinFromConfigSubpage() {
$subpage = explode( '/', $this->mTextform );
$subpage = $subpage[count( $subpage ) - 1];
$lastdot = strrpos( $subpage, '.' );
@@ -1340,23 +1371,58 @@ class Title implements LinkTarget {
}
/**
- * Is this a .css subpage of a user page?
+ * @deprecated Since 1.31; use ::getSkinFromConfigSubpage() instead
+ * @return string Containing skin name from .css or .js subpage title
+ */
+ public function getSkinFromCssJsSubpage() {
+ wfDeprecated( __METHOD__, '1.31' );
+ return $this->getSkinFromConfigSubpage();
+ }
+
+ /**
+ * Is this a CSS "config" sub-page of a user page?
*
* @return bool
+ * @since 1.31
+ */
+ public function isUserCssConfigPage() {
+ return (
+ NS_USER == $this->mNamespace
+ && $this->isSubpage()
+ && $this->hasContentModel( CONTENT_MODEL_CSS )
+ );
+ }
+
+ /**
+ * @deprecated Since 1.31; use ::isUserCssConfigPage()
+ * @return bool
*/
public function isCssSubpage() {
- return ( NS_USER == $this->mNamespace && $this->isSubpage()
- && $this->hasContentModel( CONTENT_MODEL_CSS ) );
+ // wfDeprecated( __METHOD__, '1.31' );
+ return $this->isUserCssConfigPage();
}
/**
* Is this a .js subpage of a user page?
*
* @return bool
+ * @since 1.31
+ */
+ public function isUserJsConfigPage() {
+ return (
+ NS_USER == $this->mNamespace
+ && $this->isSubpage()
+ && $this->hasContentModel( CONTENT_MODEL_JAVASCRIPT )
+ );
+ }
+
+ /**
+ * @deprecated Since 1.31; use ::isUserCssConfigPage()
+ * @return bool
*/
public function isJsSubpage() {
- return ( NS_USER == $this->mNamespace && $this->isSubpage()
- && $this->hasContentModel( CONTENT_MODEL_JAVASCRIPT ) );
+ // wfDeprecated( __METHOD__, '1.31' );
+ return $this->isUserJsConfigPage();
}
/**
@@ -2260,20 +2326,33 @@ class Title implements LinkTarget {
*
* @return array List of errors
*/
- private function checkCSSandJSPermissions( $action, $user, $errors, $rigor, $short ) {
+ private function checkUserConfigPermissions( $action, $user, $errors, $rigor, $short ) {
# Protect css/js subpages of user pages
# XXX: this might be better using restrictions
+
if ( $action != 'patrol' ) {
if ( preg_match( '/^' . preg_quote( $user->getName(), '/' ) . '\//', $this->mTextform ) ) {
- if ( $this->isCssSubpage() && !$user->isAllowedAny( 'editmyusercss', 'editusercss' ) ) {
+ if (
+ $this->isUserCssConfigPage()
+ && !$user->isAllowedAny( 'editmyusercss', 'editusercss' )
+ ) {
$errors[] = [ 'mycustomcssprotected', $action ];
- } elseif ( $this->isJsSubpage() && !$user->isAllowedAny( 'editmyuserjs', 'edituserjs' ) ) {
+ } elseif (
+ $this->isUserJsConfigPage()
+ && !$user->isAllowedAny( 'editmyuserjs', 'edituserjs' )
+ ) {
$errors[] = [ 'mycustomjsprotected', $action ];
}
} else {
- if ( $this->isCssSubpage() && !$user->isAllowed( 'editusercss' ) ) {
+ if (
+ $this->isUserCssConfigPage()
+ && !$user->isAllowed( 'editusercss' )
+ ) {
$errors[] = [ 'customcssprotected', $action ];
- } elseif ( $this->isJsSubpage() && !$user->isAllowed( 'edituserjs' ) ) {
+ } elseif (
+ $this->isUserJsConfigPage()
+ && !$user->isAllowed( 'edituserjs' )
+ ) {
$errors[] = [ 'customjsprotected', $action ];
}
}
@@ -2330,7 +2409,7 @@ class Title implements LinkTarget {
* @return array List of errors
*/
private function checkCascadingSourcesRestrictions( $action, $user, $errors, $rigor, $short ) {
- if ( $rigor !== 'quick' && !$this->isCssJsSubpage() ) {
+ if ( $rigor !== 'quick' && !$this->isUserConfigPage() ) {
# We /could/ use the protection level on the source page, but it's
# fairly ugly as we have to establish a precedence hierarchy for pages
# included by multiple cascade-protected pages. So just restrict
@@ -2611,7 +2690,7 @@ class Title implements LinkTarget {
'checkReadPermissions',
'checkUserBlock', // for wgBlockDisablesLogin
];
- # Don't call checkSpecialsAndNSPermissions or checkCSSandJSPermissions
+ # Don't call checkSpecialsAndNSPermissions or checkUserConfigPermissions
# here as it will lead to duplicate error messages. This is okay to do
# since anywhere that checks for create will also check for edit, and
# those checks are called for edit.
@@ -2629,7 +2708,7 @@ class Title implements LinkTarget {
'checkQuickPermissions',
'checkPermissionHooks',
'checkSpecialsAndNSPermissions',
- 'checkCSSandJSPermissions',
+ 'checkUserConfigPermissions',
'checkPageRestrictions',
'checkCascadingSourcesRestrictions',
'checkActionPermissions',
@@ -3743,9 +3822,9 @@ class Title implements LinkTarget {
}
// If we are looking at a css/js user subpage, purge the action=raw.
- if ( $this->isJsSubpage() ) {
+ if ( $this->isUserJsConfigPage() ) {
$urls[] = $this->getInternalURL( 'action=raw&ctype=text/javascript' );
- } elseif ( $this->isCssSubpage() ) {
+ } elseif ( $this->isUserCssConfigPage() ) {
$urls[] = $this->getInternalURL( 'action=raw&ctype=text/css' );
}
@@ -4389,17 +4468,18 @@ class Title implements LinkTarget {
return $authors;
}
$dbr = wfGetDB( DB_REPLICA );
- $res = $dbr->select( 'revision', 'DISTINCT rev_user_text',
+ $revQuery = Revision::getQueryInfo();
+ $authors = $dbr->selectFieldValues(
+ $revQuery['tables'],
+ $revQuery['fields']['rev_user_text'],
[
'rev_page' => $this->getArticleID(),
"rev_timestamp $old_cmp " . $dbr->addQuotes( $dbr->timestamp( $old->getTimestamp() ) ),
"rev_timestamp $new_cmp " . $dbr->addQuotes( $dbr->timestamp( $new->getTimestamp() ) )
], __METHOD__,
- [ 'LIMIT' => $limit + 1 ] // add one so caller knows it was truncated
+ [ 'DISTINCT', 'LIMIT' => $limit + 1 ], // add one so caller knows it was truncated
+ $revQuery['joins']
);
- foreach ( $res as $row ) {
- $authors[] = $row->rev_user_text;
- }
return $authors;
}
diff --git a/includes/actions/InfoAction.php b/includes/actions/InfoAction.php
index 1165a268ef..0988f73452 100644
--- a/includes/actions/InfoAction.php
+++ b/includes/actions/InfoAction.php
@@ -718,6 +718,8 @@ class InfoAction extends FormlessAction {
self::getCacheKey( $cache, $page->getTitle(), $page->getLatest() ),
WANObjectCache::TTL_WEEK,
function ( $oldValue, &$ttl, &$setOpts ) use ( $page, $config, $fname ) {
+ global $wgActorTableSchemaMigrationStage;
+
$title = $page->getTitle();
$id = $title->getArticleID();
@@ -725,6 +727,29 @@ class InfoAction extends FormlessAction {
$dbrWatchlist = wfGetDB( DB_REPLICA, 'watchlist' );
$setOpts += Database::getCacheSetOptions( $dbr, $dbrWatchlist );
+ if ( $wgActorTableSchemaMigrationStage === MIGRATION_NEW ) {
+ $tables = [ 'revision_actor_temp' ];
+ $field = 'revactor_actor';
+ $pageField = 'revactor_page';
+ $tsField = 'revactor_timestamp';
+ $joins = [];
+ } elseif ( $wgActorTableSchemaMigrationStage === MIGRATION_OLD ) {
+ $tables = [ 'revision' ];
+ $field = 'rev_user_text';
+ $pageField = 'rev_page';
+ $tsField = 'rev_timestamp';
+ $joins = [];
+ } else {
+ $tables = [ 'revision', 'revision_actor_temp', 'actor' ];
+ $field = 'COALESCE( actor_name, rev_user_text)';
+ $pageField = 'rev_page';
+ $tsField = 'rev_timestamp';
+ $joins = [
+ 'revision_actor_temp' => [ 'LEFT JOIN', 'revactor_rev = rev_id' ],
+ 'actor' => [ 'LEFT JOIN', 'revactor_actor = actor_id' ],
+ ];
+ }
+
$watchedItemStore = MediaWikiServices::getInstance()->getWatchedItemStore();
$result = [];
@@ -752,10 +777,12 @@ class InfoAction extends FormlessAction {
$result['authors'] = 0;
} else {
$result['authors'] = (int)$dbr->selectField(
- 'revision',
- 'COUNT(DISTINCT rev_user_text)',
- [ 'rev_page' => $id ],
- $fname
+ $tables,
+ "COUNT(DISTINCT $field)",
+ [ $pageField => $id ],
+ $fname,
+ [],
+ $joins
);
}
@@ -776,13 +803,15 @@ class InfoAction extends FormlessAction {
// Recent number of distinct authors
$result['recent_authors'] = (int)$dbr->selectField(
- 'revision',
- 'COUNT(DISTINCT rev_user_text)',
+ $tables,
+ "COUNT(DISTINCT $field)",
[
- 'rev_page' => $id,
- "rev_timestamp >= " . $dbr->addQuotes( $threshold )
+ $pageField => $id,
+ "$tsField >= " . $dbr->addQuotes( $threshold )
],
- $fname
+ $fname,
+ [],
+ $joins
);
// Subpages (if enabled)
diff --git a/includes/api/ApiBase.php b/includes/api/ApiBase.php
index 62d73f480c..228d319f18 100644
--- a/includes/api/ApiBase.php
+++ b/includes/api/ApiBase.php
@@ -897,7 +897,7 @@ abstract class ApiBase extends ContextSource {
if ( $badParams ) {
$this->dieWithError(
- [ 'apierror-mustpostparams', join( ', ', $badParams ), count( $badParams ) ]
+ [ 'apierror-mustpostparams', implode( ', ', $badParams ), count( $badParams ) ]
);
}
}
@@ -1152,7 +1152,7 @@ abstract class ApiBase extends ContextSource {
if ( $multi ) {
// This loses the potential $wgContLang->checkTitleEncoding() transformation
// done by WebRequest for $_GET. Let's call that a feature.
- $value = join( "\x1f", $request->normalizeUnicode( explode( "\x1f", $rawValue ) ) );
+ $value = implode( "\x1f", $request->normalizeUnicode( explode( "\x1f", $rawValue ) ) );
} else {
$this->dieWithError( 'apierror-badvalue-notmultivalue', 'badvalue_notmultivalue' );
}
@@ -1829,7 +1829,7 @@ abstract class ApiBase extends ContextSource {
$msgs = [ $this->msg( 'api-usage-mailinglist-ref' ) ];
Hooks::run( 'ApiDeprecationHelp', [ &$msgs ] );
if ( count( $msgs ) > 1 ) {
- $key = '$' . join( ' $', range( 1, count( $msgs ) ) );
+ $key = '$' . implode( ' $', range( 1, count( $msgs ) ) );
$msg = ( new RawMessage( $key ) )->params( $msgs );
} else {
$msg = reset( $msgs );
diff --git a/includes/api/ApiCSPReport.php b/includes/api/ApiCSPReport.php
index 0df0ca97d1..af040d153a 100644
--- a/includes/api/ApiCSPReport.php
+++ b/includes/api/ApiCSPReport.php
@@ -162,7 +162,7 @@ class ApiCSPReport extends ApiBase {
private function generateLogLine( $flags, $report ) {
$flagText = '';
if ( $flags ) {
- $flagText = '[' . implode( $flags, ', ' ) . ']';
+ $flagText = '[' . implode( ', ', $flags ) . ']';
}
$blockedFile = isset( $report['blocked-uri'] ) ? $report['blocked-uri'] : 'n/a';
diff --git a/includes/api/ApiFeedRecentChanges.php b/includes/api/ApiFeedRecentChanges.php
index 2a80dd5354..e5dba8fe4a 100644
--- a/includes/api/ApiFeedRecentChanges.php
+++ b/includes/api/ApiFeedRecentChanges.php
@@ -169,16 +169,6 @@ class ApiFeedRecentChanges extends ApiBase {
'showlinkedto' => false,
];
- if ( $config->get( 'AllowCategorizedRecentChanges' ) ) {
- $ret += [
- 'categories' => [
- ApiBase::PARAM_TYPE => 'string',
- ApiBase::PARAM_ISMULTI => true,
- ],
- 'categories_any' => false,
- ];
- }
-
return $ret;
}
diff --git a/includes/api/ApiMain.php b/includes/api/ApiMain.php
index 008015b881..a7e3c1bd54 100644
--- a/includes/api/ApiMain.php
+++ b/includes/api/ApiMain.php
@@ -593,7 +593,7 @@ class ApiMain extends ApiBase {
$this->setCacheMode( 'private' );
$response = $this->getRequest()->response();
- $headerStr = 'MediaWiki-API-Error: ' . join( ', ', $errCodes );
+ $headerStr = 'MediaWiki-API-Error: ' . implode( ', ', $errCodes );
$response->header( $headerStr );
// Reset and print just the error message
diff --git a/includes/api/ApiParse.php b/includes/api/ApiParse.php
index 3326fab5e4..cbd62a97df 100644
--- a/includes/api/ApiParse.php
+++ b/includes/api/ApiParse.php
@@ -536,7 +536,6 @@ class ApiParse extends ApiBase {
$popts->enableLimitReport( !$params['disablepp'] && !$params['disablelimitreport'] );
$popts->setIsPreview( $params['preview'] || $params['sectionpreview'] );
$popts->setIsSectionPreview( $params['sectionpreview'] );
- $popts->setEditSection( !$params['disableeditsection'] );
if ( $params['disabletidy'] ) {
$popts->setTidy( false );
}
diff --git a/includes/api/ApiQueryAllDeletedRevisions.php b/includes/api/ApiQueryAllDeletedRevisions.php
index 32d081e439..f885b729b1 100644
--- a/includes/api/ApiQueryAllDeletedRevisions.php
+++ b/includes/api/ApiQueryAllDeletedRevisions.php
@@ -224,10 +224,19 @@ class ApiQueryAllDeletedRevisions extends ApiQueryRevisionsBase {
}
if ( !is_null( $params['user'] ) ) {
- $this->addWhereFld( 'ar_user_text', $params['user'] );
+ // Don't query by user ID here, it might be able to use the ar_usertext_timestamp index.
+ $actorQuery = ActorMigration::newMigration()
+ ->getWhere( $db, 'ar_user', User::newFromName( $params['user'], false ), false );
+ $this->addTables( $actorQuery['tables'] );
+ $this->addJoinConds( $actorQuery['joins'] );
+ $this->addWhere( $actorQuery['conds'] );
} elseif ( !is_null( $params['excludeuser'] ) ) {
- $this->addWhere( 'ar_user_text != ' .
- $db->addQuotes( $params['excludeuser'] ) );
+ // Here there's no chance of using ar_usertext_timestamp.
+ $actorQuery = ActorMigration::newMigration()
+ ->getWhere( $db, 'ar_user', User::newFromName( $params['excludeuser'], false ) );
+ $this->addTables( $actorQuery['tables'] );
+ $this->addJoinConds( $actorQuery['joins'] );
+ $this->addWhere( 'NOT(' . $actorQuery['conds'] . ')' );
}
if ( !is_null( $params['user'] ) || !is_null( $params['excludeuser'] ) ) {
diff --git a/includes/api/ApiQueryAllImages.php b/includes/api/ApiQueryAllImages.php
index dde22d8208..14f1cc4f84 100644
--- a/includes/api/ApiQueryAllImages.php
+++ b/includes/api/ApiQueryAllImages.php
@@ -85,7 +85,6 @@ class ApiQueryAllImages extends ApiQueryGeneratorBase {
$db = $this->getDB();
$params = $this->extractRequestParams();
- $userId = !is_null( $params['user'] ) ? User::idFromName( $params['user'] ) : null;
// Table and return fields
$prop = array_flip( $params['prop'] );
@@ -192,19 +191,22 @@ class ApiQueryAllImages extends ApiQueryGeneratorBase {
// Image filters
if ( !is_null( $params['user'] ) ) {
- if ( $userId ) {
- $this->addWhereFld( 'img_user', $userId );
- } else {
- $this->addWhereFld( 'img_user_text', $params['user'] );
- }
+ $actorQuery = ActorMigration::newMigration()
+ ->getWhere( $db, 'img_user', User::newFromName( $params['user'], false ) );
+ $this->addTables( $actorQuery['tables'] );
+ $this->addJoinConds( $actorQuery['joins'] );
+ $this->addWhere( $actorQuery['conds'] );
}
if ( $params['filterbots'] != 'all' ) {
+ $actorQuery = ActorMigration::newMigration()->getJoin( 'img_user' );
+ $this->addTables( $actorQuery['tables'] );
$this->addTables( 'user_groups' );
+ $this->addJoinConds( $actorQuery['joins'] );
$this->addJoinConds( [ 'user_groups' => [
'LEFT JOIN',
[
'ug_group' => User::getGroupsWithPermission( 'bot' ),
- 'ug_user = img_user',
+ 'ug_user = ' . $actorQuery['fields']['img_user'],
'ug_expiry IS NULL OR ug_expiry >= ' . $db->addQuotes( $db->timestamp() )
]
] ] );
@@ -273,15 +275,6 @@ class ApiQueryAllImages extends ApiQueryGeneratorBase {
}
if ( $params['sort'] == 'timestamp' ) {
$this->addOption( 'ORDER BY', 'img_timestamp' . $sortFlag );
- if ( !is_null( $params['user'] ) ) {
- if ( $userId ) {
- $this->addOption( 'USE INDEX', [ 'image' => 'img_user_timestamp' ] );
- } else {
- $this->addOption( 'USE INDEX', [ 'image' => 'img_usertext_timestamp' ] );
- }
- } else {
- $this->addOption( 'USE INDEX', [ 'image' => 'img_timestamp' ] );
- }
} else {
$this->addOption( 'ORDER BY', 'img_name' . $sortFlag );
}
diff --git a/includes/api/ApiQueryAllRevisions.php b/includes/api/ApiQueryAllRevisions.php
index 68236465d1..3af24597c2 100644
--- a/includes/api/ApiQueryAllRevisions.php
+++ b/includes/api/ApiQueryAllRevisions.php
@@ -104,19 +104,17 @@ class ApiQueryAllRevisions extends ApiQueryRevisionsBase {
}
if ( $params['user'] !== null ) {
- $id = User::idFromName( $params['user'] );
- if ( $id ) {
- $this->addWhereFld( 'rev_user', $id );
- } else {
- $this->addWhereFld( 'rev_user_text', $params['user'] );
- }
+ $actorQuery = ActorMigration::newMigration()
+ ->getWhere( $db, 'rev_user', User::newFromName( $params['user'], false ) );
+ $this->addTables( $actorQuery['tables'] );
+ $this->addJoinConds( $actorQuery['joins'] );
+ $this->addWhere( $actorQuery['conds'] );
} elseif ( $params['excludeuser'] !== null ) {
- $id = User::idFromName( $params['excludeuser'] );
- if ( $id ) {
- $this->addWhere( 'rev_user != ' . $id );
- } else {
- $this->addWhere( 'rev_user_text != ' . $db->addQuotes( $params['excludeuser'] ) );
- }
+ $actorQuery = ActorMigration::newMigration()
+ ->getWhere( $db, 'rev_user', User::newFromName( $params['excludeuser'], false ) );
+ $this->addTables( $actorQuery['tables'] );
+ $this->addJoinConds( $actorQuery['joins'] );
+ $this->addWhere( 'NOT(' . $actorQuery['conds'] . ')' );
}
if ( $params['user'] !== null || $params['excludeuser'] !== null ) {
diff --git a/includes/api/ApiQueryAllUsers.php b/includes/api/ApiQueryAllUsers.php
index 26844f3f26..9652f810f7 100644
--- a/includes/api/ApiQueryAllUsers.php
+++ b/includes/api/ApiQueryAllUsers.php
@@ -41,6 +41,8 @@ class ApiQueryAllUsers extends ApiQueryBase {
}
public function execute() {
+ global $wgActorTableSchemaMigrationStage;
+
$params = $this->extractRequestParams();
$activeUserDays = $this->getConfig()->get( 'ActiveUserDays' );
@@ -178,17 +180,36 @@ class ApiQueryAllUsers extends ApiQueryBase {
] ] );
// Actually count the actions using a subquery (T66505 and T66507)
+ $tables = [ 'recentchanges' ];
+ $joins = [];
+ if ( $wgActorTableSchemaMigrationStage === MIGRATION_OLD ) {
+ $userCond = 'rc_user_text = user_name';
+ } else {
+ $tables[] = 'actor';
+ $joins['actor'] = [
+ $wgActorTableSchemaMigrationStage === MIGRATION_NEW ? 'JOIN' : 'LEFT JOIN',
+ 'rc_actor = actor_id'
+ ];
+ if ( $wgActorTableSchemaMigrationStage === MIGRATION_NEW ) {
+ $userCond = 'actor_user = user_id';
+ } else {
+ $userCond = 'actor_user = user_id OR (rc_actor = 0 AND rc_user_text = user_name)';
+ }
+ }
$timestamp = $db->timestamp( wfTimestamp( TS_UNIX ) - $activeUserSeconds );
$this->addFields( [
'recentactions' => '(' . $db->selectSQLText(
- 'recentchanges',
+ $tables,
'COUNT(*)',
[
- 'rc_user_text = user_name',
+ $userCond,
'rc_type != ' . $db->addQuotes( RC_EXTERNAL ), // no wikidata
'rc_log_type IS NULL OR rc_log_type != ' . $db->addQuotes( 'newusers' ),
'rc_timestamp >= ' . $db->addQuotes( $timestamp ),
- ]
+ ],
+ __METHOD__,
+ [],
+ $joins
) . ')'
] );
}
diff --git a/includes/api/ApiQueryBase.php b/includes/api/ApiQueryBase.php
index 84169cb843..3ad45bbbde 100644
--- a/includes/api/ApiQueryBase.php
+++ b/includes/api/ApiQueryBase.php
@@ -446,11 +446,13 @@ abstract class ApiQueryBase extends ApiBase {
if ( $showBlockInfo ) {
$this->addFields( [
'ipb_id',
- 'ipb_by',
- 'ipb_by_text',
'ipb_expiry',
'ipb_timestamp'
] );
+ $actorQuery = ActorMigration::newMigration()->getJoin( 'ipb_by' );
+ $this->addTables( $actorQuery['tables'] );
+ $this->addFields( $actorQuery['fields'] );
+ $this->addJoinConds( $actorQuery['joins'] );
$commentQuery = CommentStore::getStore()->getJoin( 'ipb_reason' );
$this->addTables( $commentQuery['tables'] );
$this->addFields( $commentQuery['fields'] );
diff --git a/includes/api/ApiQueryBlocks.php b/includes/api/ApiQueryBlocks.php
index 10695b30ca..08c13e7aab 100644
--- a/includes/api/ApiQueryBlocks.php
+++ b/includes/api/ApiQueryBlocks.php
@@ -55,8 +55,12 @@ class ApiQueryBlocks extends ApiQueryBase {
$this->addFields( [ 'ipb_auto', 'ipb_id', 'ipb_timestamp' ] );
$this->addFieldsIf( [ 'ipb_address', 'ipb_user' ], $fld_user || $fld_userid );
- $this->addFieldsIf( 'ipb_by_text', $fld_by );
- $this->addFieldsIf( 'ipb_by', $fld_byid );
+ if ( $fld_by || $fld_byid ) {
+ $actorQuery = ActorMigration::newMigration()->getJoin( 'ipb_by' );
+ $this->addTables( $actorQuery['tables'] );
+ $this->addFields( $actorQuery['fields'] );
+ $this->addJoinConds( $actorQuery['joins'] );
+ }
$this->addFieldsIf( 'ipb_expiry', $fld_expiry );
$this->addFieldsIf( [ 'ipb_range_start', 'ipb_range_end' ], $fld_range );
$this->addFieldsIf( [ 'ipb_anon_only', 'ipb_create_account', 'ipb_enable_autoblock',
diff --git a/includes/api/ApiQueryContributors.php b/includes/api/ApiQueryContributors.php
index 25b7c84028..48516a72d9 100644
--- a/includes/api/ApiQueryContributors.php
+++ b/includes/api/ApiQueryContributors.php
@@ -43,6 +43,8 @@ class ApiQueryContributors extends ApiQueryBase {
}
public function execute() {
+ global $wgActorTableSchemaMigrationStage;
+
$db = $this->getDB();
$params = $this->extractRequestParams();
$this->requireMaxOneParameter( $params, 'group', 'excludegroup', 'rights', 'excluderights' );
@@ -73,17 +75,27 @@ class ApiQueryContributors extends ApiQueryBase {
}
$result = $this->getResult();
+ $revQuery = Revision::getQueryInfo();
+
+ // For MIGRATION_NEW, target indexes on the revision_actor_temp table.
+ // Otherwise, revision is fine because it'll have to check all revision rows anyway.
+ $pageField = $wgActorTableSchemaMigrationStage === MIGRATION_NEW ? 'revactor_page' : 'rev_page';
+ $idField = $wgActorTableSchemaMigrationStage === MIGRATION_NEW
+ ? 'revactor_actor' : $revQuery['fields']['rev_user'];
+ $countField = $wgActorTableSchemaMigrationStage === MIGRATION_NEW
+ ? 'revactor_actor' : $revQuery['fields']['rev_user_text'];
// First, count anons
- $this->addTables( 'revision' );
+ $this->addTables( $revQuery['tables'] );
+ $this->addJoinConds( $revQuery['joins'] );
$this->addFields( [
- 'page' => 'rev_page',
- 'anons' => 'COUNT(DISTINCT rev_user_text)',
+ 'page' => $pageField,
+ 'anons' => "COUNT(DISTINCT $countField)",
] );
- $this->addWhereFld( 'rev_page', $pages );
- $this->addWhere( 'rev_user = 0' );
+ $this->addWhereFld( $pageField, $pages );
+ $this->addWhere( ActorMigration::newMigration()->isAnon( $revQuery['fields']['rev_user'] ) );
$this->addWhere( $db->bitAnd( 'rev_deleted', Revision::DELETED_USER ) . ' = 0' );
- $this->addOption( 'GROUP BY', 'rev_page' );
+ $this->addOption( 'GROUP BY', $pageField );
$res = $this->select( __METHOD__ );
foreach ( $res as $row ) {
$fit = $result->addValue( [ 'query', 'pages', $row->page ],
@@ -103,24 +115,27 @@ class ApiQueryContributors extends ApiQueryBase {
// Next, add logged-in users
$this->resetQueryParams();
- $this->addTables( 'revision' );
+ $this->addTables( $revQuery['tables'] );
+ $this->addJoinConds( $revQuery['joins'] );
$this->addFields( [
- 'page' => 'rev_page',
- 'user' => 'rev_user',
- 'username' => 'MAX(rev_user_text)', // Non-MySQL databases don't like partial group-by
+ 'page' => $pageField,
+ 'id' => $idField,
+ // Non-MySQL databases don't like partial group-by
+ 'userid' => 'MAX(' . $revQuery['fields']['rev_user'] . ')',
+ 'username' => 'MAX(' . $revQuery['fields']['rev_user_text'] . ')',
] );
- $this->addWhereFld( 'rev_page', $pages );
- $this->addWhere( 'rev_user != 0' );
+ $this->addWhereFld( $pageField, $pages );
+ $this->addWhere( ActorMigration::newMigration()->isNotAnon( $revQuery['fields']['rev_user'] ) );
$this->addWhere( $db->bitAnd( 'rev_deleted', Revision::DELETED_USER ) . ' = 0' );
- $this->addOption( 'GROUP BY', 'rev_page, rev_user' );
+ $this->addOption( 'GROUP BY', [ $pageField, $idField ] );
$this->addOption( 'LIMIT', $params['limit'] + 1 );
// Force a sort order to ensure that properties are grouped by page
- // But only if pp_page is not constant in the WHERE clause.
+ // But only if rev_page is not constant in the WHERE clause.
if ( count( $pages ) > 1 ) {
- $this->addOption( 'ORDER BY', 'rev_page, rev_user' );
+ $this->addOption( 'ORDER BY', [ 'page', 'id' ] );
} else {
- $this->addOption( 'ORDER BY', 'rev_user' );
+ $this->addOption( 'ORDER BY', 'id' );
}
$limitGroups = [];
@@ -159,7 +174,7 @@ class ApiQueryContributors extends ApiQueryBase {
$this->addJoinConds( [ 'user_groups' => [
$excludeGroups ? 'LEFT OUTER JOIN' : 'INNER JOIN',
[
- 'ug_user=rev_user',
+ 'ug_user=' . $actorQuery['fields']['rev_user'],
'ug_group' => $limitGroups,
'ug_expiry IS NULL OR ug_expiry >= ' . $db->addQuotes( $db->timestamp() )
]
@@ -171,11 +186,11 @@ class ApiQueryContributors extends ApiQueryBase {
$cont = explode( '|', $params['continue'] );
$this->dieContinueUsageIf( count( $cont ) != 2 );
$cont_page = (int)$cont[0];
- $cont_user = (int)$cont[1];
+ $cont_id = (int)$cont[1];
$this->addWhere(
- "rev_page > $cont_page OR " .
- "(rev_page = $cont_page AND " .
- "rev_user >= $cont_user)"
+ "$pageField > $cont_page OR " .
+ "($pageField = $cont_page AND " .
+ "$idField >= $cont_id)"
);
}
@@ -185,18 +200,16 @@ class ApiQueryContributors extends ApiQueryBase {
if ( ++$count > $params['limit'] ) {
// We've reached the one extra which shows that
// there are additional pages to be had. Stop here...
- $this->setContinueEnumParameter( 'continue', $row->page . '|' . $row->user );
-
+ $this->setContinueEnumParameter( 'continue', $row->page . '|' . $row->id );
return;
}
$fit = $this->addPageSubItem( $row->page,
- [ 'userid' => (int)$row->user, 'name' => $row->username ],
+ [ 'userid' => (int)$row->userid, 'name' => $row->username ],
'user'
);
if ( !$fit ) {
- $this->setContinueEnumParameter( 'continue', $row->page . '|' . $row->user );
-
+ $this->setContinueEnumParameter( 'continue', $row->page . '|' . $row->id );
return;
}
}
diff --git a/includes/api/ApiQueryDeletedRevisions.php b/includes/api/ApiQueryDeletedRevisions.php
index f57906593a..b7fd8d4ddc 100644
--- a/includes/api/ApiQueryDeletedRevisions.php
+++ b/includes/api/ApiQueryDeletedRevisions.php
@@ -117,10 +117,19 @@ class ApiQueryDeletedRevisions extends ApiQueryRevisionsBase {
}
if ( !is_null( $params['user'] ) ) {
- $this->addWhereFld( 'ar_user_text', $params['user'] );
+ // Don't query by user ID here, it might be able to use the ar_usertext_timestamp index.
+ $actorQuery = ActorMigration::newMigration()
+ ->getWhere( $db, 'ar_user', User::newFromName( $params['user'], false ), false );
+ $this->addTables( $actorQuery['tables'] );
+ $this->addJoinConds( $actorQuery['joins'] );
+ $this->addWhere( $actorQuery['conds'] );
} elseif ( !is_null( $params['excludeuser'] ) ) {
- $this->addWhere( 'ar_user_text != ' .
- $db->addQuotes( $params['excludeuser'] ) );
+ // Here there's no chance of using ar_usertext_timestamp.
+ $actorQuery = ActorMigration::newMigration()
+ ->getWhere( $db, 'ar_user', User::newFromName( $params['excludeuser'], false ) );
+ $this->addTables( $actorQuery['tables'] );
+ $this->addJoinConds( $actorQuery['joins'] );
+ $this->addWhere( 'NOT(' . $actorQuery['conds'] . ')' );
}
if ( !is_null( $params['user'] ) || !is_null( $params['excludeuser'] ) ) {
diff --git a/includes/api/ApiQueryDeletedrevs.php b/includes/api/ApiQueryDeletedrevs.php
index 6e6757ecd1..2d5074178e 100644
--- a/includes/api/ApiQueryDeletedrevs.php
+++ b/includes/api/ApiQueryDeletedrevs.php
@@ -110,8 +110,12 @@ class ApiQueryDeletedrevs extends ApiQueryBase {
$this->addFieldsIf( 'ar_parent_id', $fld_parentid );
$this->addFieldsIf( 'ar_rev_id', $fld_revid );
- $this->addFieldsIf( 'ar_user_text', $fld_user );
- $this->addFieldsIf( 'ar_user', $fld_userid );
+ if ( $fld_user || $fld_userid ) {
+ $actorQuery = ActorMigration::newMigration()->getJoin( 'ar_user' );
+ $this->addTables( $actorQuery['tables'] );
+ $this->addFields( $actorQuery['fields'] );
+ $this->addJoinConds( $actorQuery['joins'] );
+ }
$this->addFieldsIf( 'ar_minor_edit', $fld_minor );
$this->addFieldsIf( 'ar_len', $fld_len );
$this->addFieldsIf( 'ar_sha1', $fld_sha1 );
@@ -199,10 +203,19 @@ class ApiQueryDeletedrevs extends ApiQueryBase {
}
if ( !is_null( $params['user'] ) ) {
- $this->addWhereFld( 'ar_user_text', $params['user'] );
+ // Don't query by user ID here, it might be able to use the ar_usertext_timestamp index.
+ $actorQuery = ActorMigration::newMigration()
+ ->getWhere( $db, 'ar_user', User::newFromName( $params['user'], false ), false );
+ $this->addTables( $actorQuery['tables'] );
+ $this->addJoinConds( $actorQuery['joins'] );
+ $this->addWhere( $actorQuery['conds'] );
} elseif ( !is_null( $params['excludeuser'] ) ) {
- $this->addWhere( 'ar_user_text != ' .
- $db->addQuotes( $params['excludeuser'] ) );
+ // Here there's no chance of using ar_usertext_timestamp.
+ $actorQuery = ActorMigration::newMigration()
+ ->getWhere( $db, 'ar_user', User::newFromName( $params['excludeuser'], false ) );
+ $this->addTables( $actorQuery['tables'] );
+ $this->addJoinConds( $actorQuery['joins'] );
+ $this->addWhere( 'NOT(' . $actorQuery['conds'] . ')' );
}
if ( !is_null( $params['user'] ) || !is_null( $params['excludeuser'] ) ) {
@@ -251,10 +264,6 @@ class ApiQueryDeletedrevs extends ApiQueryBase {
}
$this->addOption( 'LIMIT', $limit + 1 );
- $this->addOption(
- 'USE INDEX',
- [ 'archive' => ( $mode == 'user' ? 'ar_usertext_timestamp' : 'name_title_timestamp' ) ]
- );
if ( $mode == 'all' ) {
if ( $params['unique'] ) {
// @todo Does this work on non-MySQL?
diff --git a/includes/api/ApiQueryLogEvents.php b/includes/api/ApiQueryLogEvents.php
index f3453001c4..68902a31c8 100644
--- a/includes/api/ApiQueryLogEvents.php
+++ b/includes/api/ApiQueryLogEvents.php
@@ -62,11 +62,15 @@ class ApiQueryLogEvents extends ApiQueryBase {
$this->addWhere( $hideLogs );
}
- // Order is significant here
- $this->addTables( [ 'logging', 'user', 'page' ] );
+ $actorMigration = ActorMigration::newMigration();
+ $actorQuery = $actorMigration->getJoin( 'log_user' );
+ $this->addTables( 'logging' );
+ $this->addTables( $actorQuery['tables'] );
+ $this->addTables( [ 'user', 'page' ] );
+ $this->addJoinConds( $actorQuery['joins'] );
$this->addJoinConds( [
'user' => [ 'LEFT JOIN',
- 'user_id=log_user' ],
+ 'user_id=' . $actorQuery['fields']['log_user'] ],
'page' => [ 'LEFT JOIN',
[ 'log_namespace=page_namespace',
'log_title=page_title' ] ] ] );
@@ -84,8 +88,8 @@ class ApiQueryLogEvents extends ApiQueryBase {
// join at query time. This leads to different results in various
// scenarios, e.g. deletion, recreation.
$this->addFieldsIf( 'log_page', $this->fld_ids );
- $this->addFieldsIf( [ 'log_user', 'log_user_text', 'user_name' ], $this->fld_user );
- $this->addFieldsIf( 'log_user', $this->fld_userid );
+ $this->addFieldsIf( $actorQuery['fields'] + [ 'user_name' ], $this->fld_user );
+ $this->addFieldsIf( $actorQuery['fields'], $this->fld_userid );
$this->addFieldsIf(
[ 'log_namespace', 'log_title' ],
$this->fld_title || $this->fld_parsedcomment
@@ -166,12 +170,14 @@ class ApiQueryLogEvents extends ApiQueryBase {
$user = $params['user'];
if ( !is_null( $user ) ) {
- $userid = User::idFromName( $user );
- if ( $userid ) {
- $this->addWhereFld( 'log_user', $userid );
- } else {
- $this->addWhereFld( 'log_user_text', $user );
- }
+ // Note the joins in $q are the same as those from ->getJoin() above
+ // so we only need to add 'conds' here.
+ // Don't query by user ID here, it might be able to use the
+ // log_user_text_time or log_user_text_type_time index.
+ $q = $actorMigration->getWhere(
+ $db, 'log_user', User::newFromName( $params['user'], false ), false
+ );
+ $this->addWhere( $q['conds'] );
}
$title = $params['title'];
diff --git a/includes/api/ApiQueryRecentChanges.php b/includes/api/ApiQueryRecentChanges.php
index e289e42d9c..e431202bc8 100644
--- a/includes/api/ApiQueryRecentChanges.php
+++ b/includes/api/ApiQueryRecentChanges.php
@@ -211,8 +211,18 @@ class ApiQueryRecentChanges extends ApiQueryGeneratorBase {
$this->addWhereIf( 'rc_minor != 0', isset( $show['minor'] ) );
$this->addWhereIf( 'rc_bot = 0', isset( $show['!bot'] ) );
$this->addWhereIf( 'rc_bot != 0', isset( $show['bot'] ) );
- $this->addWhereIf( 'rc_user = 0', isset( $show['anon'] ) );
- $this->addWhereIf( 'rc_user != 0', isset( $show['!anon'] ) );
+ if ( isset( $show['anon'] ) || isset( $show['!anon'] ) ) {
+ $actorMigration = ActorMigration::newMigration();
+ $actorQuery = $actorMigration->getJoin( 'rc_user' );
+ $this->addTables( $actorQuery['tables'] );
+ $this->addJoinConds( $actorQuery['joins'] );
+ $this->addWhereIf(
+ $actorMigration->isAnon( $actorQuery['fields']['rc_user'] ), isset( $show['anon'] )
+ );
+ $this->addWhereIf(
+ $actorMigration->isNotAnon( $actorQuery['fields']['rc_user'] ), isset( $show['!anon'] )
+ );
+ }
$this->addWhereIf( 'rc_patrolled = 0', isset( $show['!patrolled'] ) );
$this->addWhereIf( 'rc_patrolled != 0', isset( $show['patrolled'] ) );
$this->addWhereIf( 'page_is_redirect = 1', isset( $show['redirect'] ) );
@@ -237,14 +247,21 @@ class ApiQueryRecentChanges extends ApiQueryGeneratorBase {
$this->requireMaxOneParameter( $params, 'user', 'excludeuser' );
if ( !is_null( $params['user'] ) ) {
- $this->addWhereFld( 'rc_user_text', $params['user'] );
+ // Don't query by user ID here, it might be able to use the rc_user_text index.
+ $actorQuery = ActorMigration::newMigration()
+ ->getWhere( $this->getDB(), 'rc_user', User::newFromName( $params['user'], false ), false );
+ $this->addTables( $actorQuery['tables'] );
+ $this->addJoinConds( $actorQuery['joins'] );
+ $this->addWhere( $actorQuery['conds'] );
}
if ( !is_null( $params['excludeuser'] ) ) {
- // We don't use the rc_user_text index here because
- // * it would require us to sort by rc_user_text before rc_timestamp
- // * the != condition doesn't throw out too many rows anyway
- $this->addWhere( 'rc_user_text != ' . $this->getDB()->addQuotes( $params['excludeuser'] ) );
+ // Here there's no chance to use the rc_user_text index, so allow ID to be used.
+ $actorQuery = ActorMigration::newMigration()
+ ->getWhere( $this->getDB(), 'rc_user', User::newFromName( $params['excludeuser'], false ) );
+ $this->addTables( $actorQuery['tables'] );
+ $this->addJoinConds( $actorQuery['joins'] );
+ $this->addWhere( 'NOT(' . $actorQuery['conds'] . ')' );
}
/* Add the fields we're concerned with to our query. */
@@ -272,8 +289,12 @@ class ApiQueryRecentChanges extends ApiQueryGeneratorBase {
/* Add fields to our query if they are specified as a needed parameter. */
$this->addFieldsIf( [ 'rc_this_oldid', 'rc_last_oldid' ], $this->fld_ids );
- $this->addFieldsIf( 'rc_user', $this->fld_user || $this->fld_userid );
- $this->addFieldsIf( 'rc_user_text', $this->fld_user );
+ if ( $this->fld_user || $this->fld_userid ) {
+ $actorQuery = ActorMigration::newMigration()->getJoin( 'rc_user' );
+ $this->addTables( $actorQuery['tables'] );
+ $this->addFields( $actorQuery['fields'] );
+ $this->addJoinConds( $actorQuery['joins'] );
+ }
$this->addFieldsIf( [ 'rc_minor', 'rc_type', 'rc_bot' ], $this->fld_flags );
$this->addFieldsIf( [ 'rc_old_len', 'rc_new_len' ], $this->fld_sizes );
$this->addFieldsIf( [ 'rc_patrolled', 'rc_log_type' ], $this->fld_patrolled );
diff --git a/includes/api/ApiQueryRevisions.php b/includes/api/ApiQueryRevisions.php
index ef0223aae5..5858bc726d 100644
--- a/includes/api/ApiQueryRevisions.php
+++ b/includes/api/ApiQueryRevisions.php
@@ -286,20 +286,17 @@ class ApiQueryRevisions extends ApiQueryRevisionsBase {
$this->addWhereFld( 'rev_page', reset( $ids ) );
if ( $params['user'] !== null ) {
- $user = User::newFromName( $params['user'] );
- if ( $user && $user->getId() > 0 ) {
- $this->addWhereFld( 'rev_user', $user->getId() );
- } else {
- $this->addWhereFld( 'rev_user_text', $params['user'] );
- }
+ $actorQuery = ActorMigration::newMigration()
+ ->getWhere( $db, 'rev_user', User::newFromName( $params['user'], false ) );
+ $this->addTables( $actorQuery['tables'] );
+ $this->addJoinConds( $actorQuery['joins'] );
+ $this->addWhere( $actorQuery['conds'] );
} elseif ( $params['excludeuser'] !== null ) {
- $user = User::newFromName( $params['excludeuser'] );
- if ( $user && $user->getId() > 0 ) {
- $this->addWhere( 'rev_user != ' . $user->getId() );
- } else {
- $this->addWhere( 'rev_user_text != ' .
- $db->addQuotes( $params['excludeuser'] ) );
- }
+ $actorQuery = ActorMigration::newMigration()
+ ->getWhere( $db, 'rev_user', User::newFromName( $params['excludeuser'], false ) );
+ $this->addTables( $actorQuery['tables'] );
+ $this->addJoinConds( $actorQuery['joins'] );
+ $this->addWhere( 'NOT(' . $actorQuery['conds'] . ')' );
}
if ( $params['user'] !== null || $params['excludeuser'] !== null ) {
// Paranoia: avoid brute force searches (T19342)
diff --git a/includes/api/ApiQueryUserContributions.php b/includes/api/ApiQueryUserContributions.php
index 1705c57361..e587ef4924 100644
--- a/includes/api/ApiQueryUserContributions.php
+++ b/includes/api/ApiQueryUserContributions.php
@@ -31,13 +31,14 @@ class ApiQueryContributions extends ApiQueryBase {
parent::__construct( $query, $moduleName, 'uc' );
}
- private $params, $prefixMode, $userprefix, $multiUserMode, $idMode, $usernames, $userids,
- $parentLens, $commentStore;
+ private $params, $multiUserMode, $orderBy, $parentLens;
private $fld_ids = false, $fld_title = false, $fld_timestamp = false,
$fld_comment = false, $fld_parsedcomment = false, $fld_flags = false,
$fld_patrolled = false, $fld_tags = false, $fld_size = false, $fld_sizediff = false;
public function execute() {
+ global $wgActorTableSchemaMigrationStage;
+
// Parse some parameters
$this->params = $this->extractRequestParams();
@@ -63,36 +64,173 @@ class ApiQueryContributions extends ApiQueryBase {
// TODO: if the query is going only against the revision table, should this be done?
$this->selectNamedDB( 'contributions', DB_REPLICA, 'contributions' );
- $this->requireOnlyOneParameter( $this->params, 'userprefix', 'userids', 'user' );
+ $sort = ( $this->params['dir'] == 'newer' ? '' : ' DESC' );
+ $op = ( $this->params['dir'] == 'older' ? '<' : '>' );
- $this->idMode = false;
+ // Create an Iterator that produces the UserIdentity objects we need, depending
+ // on which of the 'userprefix', 'userids', or 'user' params was
+ // specified.
+ $this->requireOnlyOneParameter( $this->params, 'userprefix', 'userids', 'user' );
if ( isset( $this->params['userprefix'] ) ) {
- $this->prefixMode = true;
$this->multiUserMode = true;
- $this->userprefix = $this->params['userprefix'];
- } elseif ( isset( $this->params['userids'] ) ) {
- $this->userids = [];
+ $this->orderBy = 'name';
+ $fname = __METHOD__;
+
+ // Because 'userprefix' might produce a huge number of users (e.g.
+ // a wiki with users "Test00000001" to "Test99999999"), use a
+ // generator with batched lookup and continuation.
+ $userIter = call_user_func( function () use ( $dbSecondary, $sort, $op, $fname ) {
+ global $wgActorTableSchemaMigrationStage;
+
+ $from = $fromName = false;
+ if ( !is_null( $this->params['continue'] ) ) {
+ $continue = explode( '|', $this->params['continue'] );
+ $this->dieContinueUsageIf( count( $continue ) != 4 );
+ $this->dieContinueUsageIf( $continue[0] !== 'name' );
+ $fromName = $continue[1];
+ $from = "$op= " . $dbSecondary->addQuotes( $fromName );
+ }
+ $like = $dbSecondary->buildLike( $this->params['userprefix'], $dbSecondary->anyString() );
+
+ $limit = 501;
+
+ do {
+ // For the new schema, pull from the actor table. For the
+ // old, pull from rev_user. For migration a FULL [OUTER]
+ // JOIN would be what we want, except MySQL doesn't support
+ // that so we have to UNION instead.
+ if ( $wgActorTableSchemaMigrationStage === MIGRATION_NEW ) {
+ $res = $dbSecondary->select(
+ 'actor',
+ [ 'actor_id', 'user_id' => 'COALESCE(actor_user,0)', 'user_name' => 'actor_name' ],
+ array_merge( [ "actor_name$like" ], $from ? [ "actor_name $from" ] : [] ),
+ $fname,
+ [ 'ORDER BY' => [ "user_name $sort" ], 'LIMIT' => $limit ]
+ );
+ } elseif ( $wgActorTableSchemaMigrationStage === MIGRATION_OLD ) {
+ $res = $dbSecondary->select(
+ 'revision',
+ [ 'actor_id' => 'NULL', 'user_id' => 'rev_user', 'user_name' => 'rev_user_text' ],
+ array_merge( [ "rev_user_text$like" ], $from ? [ "rev_user_text $from" ] : [] ),
+ $fname,
+ [ 'DISTINCT', 'ORDER BY' => [ "rev_user_text $sort" ], 'LIMIT' => $limit ]
+ );
+ } else {
+ // There are three queries we have to combine to be sure of getting all results:
+ // - actor table (any rows that have been migrated will have empty rev_user_text)
+ // - revision+actor by user id
+ // - revision+actor by name for anons
+ $options = $dbSecondary->unionSupportsOrderAndLimit()
+ ? [ 'ORDER BY' => [ "user_name $sort" ], 'LIMIT' => $limit ] : [];
+ $subsql = [];
+ $subsql[] = $dbSecondary->selectSQLText(
+ 'actor',
+ [ 'actor_id', 'user_id' => 'COALESCE(actor_user,0)', 'user_name' => 'actor_name' ],
+ array_merge( [ "actor_name$like" ], $from ? [ "actor_name $from" ] : [] ),
+ $fname,
+ $options
+ );
+ $subsql[] = $dbSecondary->selectSQLText(
+ [ 'revision', 'actor' ],
+ [ 'actor_id', 'user_id' => 'rev_user', 'user_name' => 'rev_user_text' ],
+ array_merge(
+ [ "rev_user_text$like", 'rev_user != 0' ],
+ $from ? [ "rev_user_text $from" ] : []
+ ),
+ $fname,
+ array_merge( [ 'DISTINCT' ], $options ),
+ [ 'actor' => [ 'LEFT JOIN', 'rev_user = actor_user' ] ]
+ );
+ $subsql[] = $dbSecondary->selectSQLText(
+ [ 'revision', 'actor' ],
+ [ 'actor_id', 'user_id' => 'rev_user', 'user_name' => 'rev_user_text' ],
+ array_merge(
+ [ "rev_user_text$like", 'rev_user = 0' ],
+ $from ? [ "rev_user_text $from" ] : []
+ ),
+ $fname,
+ array_merge( [ 'DISTINCT' ], $options ),
+ [ 'actor' => [ 'LEFT JOIN', 'rev_user_text = actor_name' ] ]
+ );
+ $sql = $dbSecondary->unionQueries( $subsql, false ) . " ORDER BY user_name $sort";
+ $sql = $dbSecondary->limitResult( $sql, $limit );
+ $res = $dbSecondary->query( $sql, $fname );
+ }
+ $count = 0;
+ $from = null;
+ foreach ( $res as $row ) {
+ if ( ++$count >= $limit ) {
+ $from = $row->user_name;
+ break;
+ }
+ yield User::newFromRow( $row );
+ }
+ } while ( $from !== null );
+ } );
+ // Do the actual sorting client-side, because otherwise
+ // prepareQuery might try to sort by actor and confuse everything.
+ $batchSize = 1;
+ } elseif ( isset( $this->params['userids'] ) ) {
if ( !count( $this->params['userids'] ) ) {
$encParamName = $this->encodeParamName( 'userids' );
$this->dieWithError( [ 'apierror-paramempty', $encParamName ], "paramempty_$encParamName" );
}
+ $ids = [];
foreach ( $this->params['userids'] as $uid ) {
if ( $uid <= 0 ) {
$this->dieWithError( [ 'apierror-invaliduserid', $uid ], 'invaliduserid' );
}
+ $ids[] = $uid;
+ }
+
+ $this->orderBy = 'id';
+ $this->multiUserMode = count( $ids ) > 1;
- $this->userids[] = $uid;
+ $from = $fromId = false;
+ if ( $this->multiUserMode && !is_null( $this->params['continue'] ) ) {
+ $continue = explode( '|', $this->params['continue'] );
+ $this->dieContinueUsageIf( count( $continue ) != 4 );
+ $this->dieContinueUsageIf( $continue[0] !== 'id' && $continue[0] !== 'actor' );
+ $fromId = (int)$continue[1];
+ $this->dieContinueUsageIf( $continue[1] !== (string)$fromId );
+ $from = "$op= $fromId";
}
- $this->prefixMode = false;
- $this->multiUserMode = ( count( $this->params['userids'] ) > 1 );
- $this->idMode = true;
+ // For the new schema, just select from the actor table. For the
+ // old and transitional schemas, select from user and left join
+ // actor if it exists.
+ if ( $wgActorTableSchemaMigrationStage === MIGRATION_NEW ) {
+ $res = $dbSecondary->select(
+ 'actor',
+ [ 'actor_id', 'user_id' => 'actor_user', 'user_name' => 'actor_name' ],
+ array_merge( [ 'actor_user' => $ids ], $from ? [ "actor_id $from" ] : [] ),
+ __METHOD__,
+ [ 'ORDER BY' => "user_id $sort" ]
+ );
+ } elseif ( $wgActorTableSchemaMigrationStage === MIGRATION_OLD ) {
+ $res = $dbSecondary->select(
+ 'user',
+ [ 'actor_id' => 'NULL', 'user_id' => 'user_id', 'user_name' => 'user_name' ],
+ array_merge( [ 'user_id' => $ids ], $from ? [ "user_id $from" ] : [] ),
+ __METHOD__,
+ [ 'ORDER BY' => "user_id $sort" ]
+ );
+ } else {
+ $res = $dbSecondary->select(
+ [ 'user', 'actor' ],
+ [ 'actor_id', 'user_id', 'user_name' ],
+ array_merge( [ 'user_id' => $ids ], $from ? [ "user_id $from" ] : [] ),
+ __METHOD__,
+ [ 'ORDER BY' => "user_id $sort" ],
+ [ 'actor' => [ 'LEFT JOIN', 'actor_user = user_id' ] ]
+ );
+ }
+ $userIter = UserArray::newFromResult( $res );
+ $batchSize = count( $ids );
} else {
- $anyIPs = false;
- $this->userids = [];
- $this->usernames = [];
+ $names = [];
if ( !count( $this->params['user'] ) ) {
$encParamName = $this->encodeParamName( 'user' );
$this->dieWithError(
@@ -108,8 +246,7 @@ class ApiQueryContributions extends ApiQueryBase {
}
if ( User::isIP( $u ) ) {
- $anyIPs = true;
- $this->usernames[] = $u;
+ $names[$u] = null;
} else {
$name = User::getCanonicalName( $u, 'valid' );
if ( $name === false ) {
@@ -118,94 +255,218 @@ class ApiQueryContributions extends ApiQueryBase {
[ 'apierror-baduser', $encParamName, wfEscapeWikiText( $u ) ], "baduser_$encParamName"
);
}
- $this->usernames[] = $name;
+ $names[$name] = null;
}
}
- $this->prefixMode = false;
- $this->multiUserMode = ( count( $this->params['user'] ) > 1 );
- if ( !$anyIPs ) {
- $dbr = $this->getDB();
- $res = $dbr->select( 'user', 'user_id', [ 'user_name' => $this->usernames ], __METHOD__ );
+ $this->orderBy = 'name';
+ $this->multiUserMode = count( $names ) > 1;
+
+ $from = $fromName = false;
+ if ( $this->multiUserMode && !is_null( $this->params['continue'] ) ) {
+ $continue = explode( '|', $this->params['continue'] );
+ $this->dieContinueUsageIf( count( $continue ) != 4 );
+ $this->dieContinueUsageIf( $continue[0] !== 'name' && $continue[0] !== 'actor' );
+ $fromName = $continue[1];
+ $from = "$op= " . $dbSecondary->addQuotes( $fromName );
+ }
+
+ // For the new schema, just select from the actor table. For the
+ // old and transitional schemas, select from user and left join
+ // actor if it exists then merge in any unknown users (IPs and imports).
+ if ( $wgActorTableSchemaMigrationStage === MIGRATION_NEW ) {
+ $res = $dbSecondary->select(
+ 'actor',
+ [ 'actor_id', 'user_id' => 'actor_user', 'user_name' => 'actor_name' ],
+ array_merge( [ 'actor_name' => array_keys( $names ) ], $from ? [ "actor_id $from" ] : [] ),
+ __METHOD__,
+ [ 'ORDER BY' => "actor_name $sort" ]
+ );
+ $userIter = UserArray::newFromResult( $res );
+ } else {
+ if ( $wgActorTableSchemaMigrationStage === MIGRATION_OLD ) {
+ $res = $dbSecondary->select(
+ 'user',
+ [ 'actor_id' => 'NULL', 'user_id', 'user_name' ],
+ array_merge( [ 'user_name' => array_keys( $names ) ], $from ? [ "user_name $from" ] : [] ),
+ __METHOD__
+ );
+ } else {
+ $res = $dbSecondary->select(
+ [ 'user', 'actor' ],
+ [ 'actor_id', 'user_id', 'user_name' ],
+ array_merge( [ 'user_name' => array_keys( $names ) ], $from ? [ "user_name $from" ] : [] ),
+ __METHOD__,
+ [],
+ [ 'actor' => [ 'LEFT JOIN', 'actor_user = user_id' ] ]
+ );
+ }
foreach ( $res as $row ) {
- $this->userids[] = $row->user_id;
+ $names[$row->user_name] = $row;
}
- $this->idMode = count( $this->userids ) === count( $this->usernames );
+ call_user_func_array(
+ $this->params['dir'] == 'newer' ? 'ksort' : 'krsort', [ &$names, SORT_STRING ]
+ );
+ $neg = $op === '>' ? -1 : 1;
+ $userIter = call_user_func( function () use ( $names, $fromName, $neg ) {
+ foreach ( $names as $name => $row ) {
+ if ( $fromName === false || $neg * strcmp( $name, $fromName ) <= 0 ) {
+ $user = $row ? User::newFromRow( $row ) : User::newFromName( $name, false );
+ yield $user;
+ }
+ }
+ } );
}
+ $batchSize = count( $names );
}
- $this->prepareQuery();
-
- $hookData = [];
- // Do the actual query.
- $res = $this->select( __METHOD__, [], $hookData );
+ // During migration, force ordering on the client side because we're
+ // having to combine multiple queries that would otherwise have
+ // different sort orders.
+ if ( $wgActorTableSchemaMigrationStage === MIGRATION_WRITE_BOTH ||
+ $wgActorTableSchemaMigrationStage === MIGRATION_WRITE_NEW
+ ) {
+ $batchSize = 1;
+ }
- if ( $this->fld_sizediff ) {
- $revIds = [];
- foreach ( $res as $row ) {
- if ( $row->rev_parent_id ) {
- $revIds[] = $row->rev_parent_id;
- }
- }
- $this->parentLens = Revision::getParentLengths( $dbSecondary, $revIds );
- $res->rewind(); // reset
+ // With the new schema, the DB query will order by actor so update $this->orderBy to match.
+ if ( $batchSize > 1 && $wgActorTableSchemaMigrationStage === MIGRATION_NEW ) {
+ $this->orderBy = 'actor';
}
- // Initialise some variables
$count = 0;
$limit = $this->params['limit'];
+ $userIter->rewind();
+ while ( $userIter->valid() ) {
+ $users = [];
+ while ( count( $users ) < $batchSize && $userIter->valid() ) {
+ $users[] = $userIter->current();
+ $userIter->next();
+ }
+
+ // Ugh. We have to run the query three times, once for each
+ // possible 'orcond' from ActorMigration, and then merge them all
+ // together in the proper order. And preserving the correct
+ // $hookData for each one.
+ // @todo When ActorMigration is removed, this can go back to a
+ // single prepare and select.
+ $merged = [];
+ foreach ( [ 'actor', 'userid', 'username' ] as $which ) {
+ if ( $this->prepareQuery( $users, $limit - $count, $which ) ) {
+ $hookData = [];
+ $res = $this->select( __METHOD__, [], $hookData );
+ foreach ( $res as $row ) {
+ $merged[] = [ $row, &$hookData ];
+ }
+ }
+ }
+ $neg = $this->params['dir'] == 'newer' ? 1 : -1;
+ usort( $merged, function ( $a, $b ) use ( $neg, $batchSize ) {
+ if ( $batchSize === 1 ) { // One user, can't be different
+ $ret = 0;
+ } elseif ( $this->orderBy === 'id' ) {
+ $ret = $a[0]->rev_user - $b[0]->rev_user;
+ } elseif ( $this->orderBy === 'name' ) {
+ $ret = strcmp( $a[0]->rev_user_text, $b[0]->rev_user_text );
+ } else {
+ $ret = $a[0]->rev_actor - $b[0]->rev_actor;
+ }
+
+ if ( !$ret ) {
+ $ret = strcmp(
+ wfTimestamp( TS_MW, $a[0]->rev_timestamp ),
+ wfTimestamp( TS_MW, $b[0]->rev_timestamp )
+ );
+ }
+
+ if ( !$ret ) {
+ $ret = $a[0]->rev_id - $b[0]->rev_id;
+ }
- // Fetch each row
- foreach ( $res as $row ) {
- if ( ++$count > $limit ) {
- // We've reached the one extra which shows that there are
- // additional pages to be had. Stop here...
- $this->setContinueEnumParameter( 'continue', $this->continueStr( $row ) );
- break;
+ return $neg * $ret;
+ } );
+ $merged = array_slice( $merged, 0, $limit - $count + 1 );
+ // (end "Ugh")
+
+ if ( $this->fld_sizediff ) {
+ $revIds = [];
+ foreach ( $merged as $data ) {
+ if ( $data[0]->rev_parent_id ) {
+ $revIds[] = $data[0]->rev_parent_id;
+ }
+ }
+ $this->parentLens = Revision::getParentLengths( $dbSecondary, $revIds );
}
- $vals = $this->extractRowInfo( $row );
- $fit = $this->processRow( $row, $vals, $hookData ) &&
- $this->getResult()->addValue( [ 'query', $this->getModuleName() ], null, $vals );
- if ( !$fit ) {
- $this->setContinueEnumParameter( 'continue', $this->continueStr( $row ) );
- break;
+ foreach ( $merged as $data ) {
+ $row = $data[0];
+ $hookData = &$data[1];
+ if ( ++$count > $limit ) {
+ // We've reached the one extra which shows that there are
+ // additional pages to be had. Stop here...
+ $this->setContinueEnumParameter( 'continue', $this->continueStr( $row ) );
+ break 2;
+ }
+
+ $vals = $this->extractRowInfo( $row );
+ $fit = $this->processRow( $row, $vals, $hookData ) &&
+ $this->getResult()->addValue( [ 'query', $this->getModuleName() ], null, $vals );
+ if ( !$fit ) {
+ $this->setContinueEnumParameter( 'continue', $this->continueStr( $row ) );
+ break 2;
+ }
}
}
- $this->getResult()->addIndexedTagName(
- [ 'query', $this->getModuleName() ],
- 'item'
- );
+ $this->getResult()->addIndexedTagName( [ 'query', $this->getModuleName() ], 'item' );
}
/**
* Prepares the query and returns the limit of rows requested
+ * @param User[] $users
+ * @param int $limit
+ * @param string $which 'actor', 'userid', or 'username'
+ * @return bool
*/
- private function prepareQuery() {
- // We're after the revision table, and the corresponding page
- // row for anything we retrieve. We may also need the
- // recentchanges row and/or tag summary row.
- $user = $this->getUser();
- $tables = [ 'page', 'revision' ]; // Order may change
- $this->addWhere( 'page_id=rev_page' );
+ private function prepareQuery( array $users, $limit, $which ) {
+ global $wgActorTableSchemaMigrationStage;
+
+ $this->resetQueryParams();
+ $db = $this->getDB();
+
+ $revQuery = Revision::getQueryInfo( [ 'page' ] );
+ $this->addTables( $revQuery['tables'] );
+ $this->addJoinConds( $revQuery['joins'] );
+ $this->addFields( $revQuery['fields'] );
+
+ $revWhere = ActorMigration::newMigration()->getWhere( $db, 'rev_user', $users );
+ if ( !isset( $revWhere['orconds'][$which] ) ) {
+ return false;
+ }
+ $this->addWhere( $revWhere['orconds'][$which] );
+
+ if ( $wgActorTableSchemaMigrationStage === MIGRATION_NEW ) {
+ $orderUserField = 'rev_actor';
+ $userField = $this->orderBy === 'actor' ? 'revactor_actor' : 'actor_name';
+ } else {
+ $orderUserField = $this->orderBy === 'id' ? 'rev_user' : 'rev_user_text';
+ $userField = $revQuery['fields'][$orderUserField];
+ }
+ if ( $which === 'actor' ) {
+ $tsField = 'revactor_timestamp';
+ $idField = 'revactor_rev';
+ } else {
+ $tsField = 'rev_timestamp';
+ $idField = 'rev_id';
+ }
// Handle continue parameter
if ( !is_null( $this->params['continue'] ) ) {
$continue = explode( '|', $this->params['continue'] );
- $db = $this->getDB();
if ( $this->multiUserMode ) {
$this->dieContinueUsageIf( count( $continue ) != 4 );
$modeFlag = array_shift( $continue );
- $this->dieContinueUsageIf( !in_array( $modeFlag, [ 'id', 'name' ] ) );
- if ( $this->idMode && $modeFlag === 'name' ) {
- // The users were created since this query started, but we
- // can't go back and change modes now. So just keep on with
- // name mode.
- $this->idMode = false;
- }
- $this->dieContinueUsageIf( ( $modeFlag === 'id' ) !== $this->idMode );
- $userField = $this->idMode ? 'rev_user' : 'rev_user_text';
+ $this->dieContinueUsageIf( $modeFlag !== $this->orderBy );
$encUser = $db->addQuotes( array_shift( $continue ) );
} else {
$this->dieContinueUsageIf( count( $continue ) != 2 );
@@ -218,21 +479,22 @@ class ApiQueryContributions extends ApiQueryBase {
$this->addWhere(
"$userField $op $encUser OR " .
"($userField = $encUser AND " .
- "(rev_timestamp $op $encTS OR " .
- "(rev_timestamp = $encTS AND " .
- "rev_id $op= $encId)))"
+ "($tsField $op $encTS OR " .
+ "($tsField = $encTS AND " .
+ "$idField $op= $encId)))"
);
} else {
$this->addWhere(
- "rev_timestamp $op $encTS OR " .
- "(rev_timestamp = $encTS AND " .
- "rev_id $op= $encId)"
+ "$tsField $op $encTS OR " .
+ "($tsField = $encTS AND " .
+ "$idField $op= $encId)"
);
}
}
// Don't include any revisions where we're not supposed to be able to
// see the username.
+ $user = $this->getUser();
if ( !$user->isAllowed( 'deletedhistory' ) ) {
$bitmask = Revision::DELETED_USER;
} elseif ( !$user->isAllowedAny( 'suppressrevision', 'viewsuppressed' ) ) {
@@ -241,29 +503,20 @@ class ApiQueryContributions extends ApiQueryBase {
$bitmask = 0;
}
if ( $bitmask ) {
- $this->addWhere( $this->getDB()->bitAnd( 'rev_deleted', $bitmask ) . " != $bitmask" );
+ $this->addWhere( $db->bitAnd( 'rev_deleted', $bitmask ) . " != $bitmask" );
}
- // We only want pages by the specified users.
- if ( $this->prefixMode ) {
- $this->addWhere( 'rev_user_text' .
- $this->getDB()->buildLike( $this->userprefix, $this->getDB()->anyString() ) );
- } elseif ( $this->idMode ) {
- $this->addWhereFld( 'rev_user', $this->userids );
- } else {
- $this->addWhereFld( 'rev_user_text', $this->usernames );
- }
- // ... and in the specified timeframe.
- // Ensure the same sort order for rev_user/rev_user_text and rev_timestamp
- // so our query is indexed
- if ( $this->multiUserMode ) {
- $this->addWhereRange( $this->idMode ? 'rev_user' : 'rev_user_text',
- $this->params['dir'], null, null );
+ // Add the user field to ORDER BY if there are multiple users
+ if ( count( $users ) > 1 ) {
+ $this->addWhereRange( $orderUserField, $this->params['dir'], null, null );
}
- $this->addTimestampWhereRange( 'rev_timestamp',
+
+ // Then timestamp
+ $this->addTimestampWhereRange( $tsField,
$this->params['dir'], $this->params['start'], $this->params['end'] );
- // Include in ORDER BY for uniqueness
- $this->addWhereRange( 'rev_id', $this->params['dir'], null, null );
+
+ // Then rev_id for a total ordering
+ $this->addWhereRange( $idField, $this->params['dir'], null, null );
$this->addWhereFld( 'page_namespace', $this->params['namespace'] );
@@ -286,25 +539,12 @@ class ApiQueryContributions extends ApiQueryBase {
$this->addWhereIf( 'rev_minor_edit != 0', isset( $show['minor'] ) );
$this->addWhereIf( 'rc_patrolled = 0', isset( $show['!patrolled'] ) );
$this->addWhereIf( 'rc_patrolled != 0', isset( $show['patrolled'] ) );
- $this->addWhereIf( 'rev_id != page_latest', isset( $show['!top'] ) );
- $this->addWhereIf( 'rev_id = page_latest', isset( $show['top'] ) );
+ $this->addWhereIf( $idField . ' != page_latest', isset( $show['!top'] ) );
+ $this->addWhereIf( $idField . ' = page_latest', isset( $show['top'] ) );
$this->addWhereIf( 'rev_parent_id != 0', isset( $show['!new'] ) );
$this->addWhereIf( 'rev_parent_id = 0', isset( $show['new'] ) );
}
- $this->addOption( 'LIMIT', $this->params['limit'] + 1 );
-
- // Mandatory fields: timestamp allows request continuation
- // ns+title checks if the user has access rights for this page
- // user_text is necessary if multiple users were specified
- $this->addFields( [
- 'rev_id',
- 'rev_timestamp',
- 'page_namespace',
- 'page_title',
- 'rev_user',
- 'rev_user_text',
- 'rev_deleted'
- ] );
+ $this->addOption( 'LIMIT', $limit + 1 );
if ( isset( $show['patrolled'] ) || isset( $show['!patrolled'] ) ||
$this->fld_patrolled
@@ -313,48 +553,25 @@ class ApiQueryContributions extends ApiQueryBase {
$this->dieWithError( 'apierror-permissiondenied-patrolflag', 'permissiondenied' );
}
- // Use a redundant join condition on both
- // timestamp and ID so we can use the timestamp
- // index
- $index['recentchanges'] = 'rc_user_text';
- if ( isset( $show['patrolled'] ) || isset( $show['!patrolled'] ) ) {
- // Put the tables in the right order for
- // STRAIGHT_JOIN
- $tables = [ 'revision', 'recentchanges', 'page' ];
- $this->addOption( 'STRAIGHT_JOIN' );
- $this->addWhere( 'rc_user_text=rev_user_text' );
- $this->addWhere( 'rc_timestamp=rev_timestamp' );
- $this->addWhere( 'rc_this_oldid=rev_id' );
- } else {
- $tables[] = 'recentchanges';
- $this->addJoinConds( [ 'recentchanges' => [
- 'LEFT JOIN', [
- 'rc_user_text=rev_user_text',
- 'rc_timestamp=rev_timestamp',
- 'rc_this_oldid=rev_id' ] ] ] );
- }
+ $this->addTables( 'recentchanges' );
+ $this->addJoinConds( [ 'recentchanges' => [
+ isset( $show['patrolled'] ) || isset( $show['!patrolled'] ) ? 'JOIN' : 'LEFT JOIN',
+ [
+ // This is a crazy hack. recentchanges has no index on rc_this_oldid, so instead of adding
+ // one T19237 did a join using rc_user_text and rc_timestamp instead. Now rc_user_text is
+ // probably unavailable, so just do rc_timestamp.
+ 'rc_timestamp = ' . $tsField,
+ 'rc_this_oldid = ' . $idField,
+ ]
+ ] ] );
}
- $this->addTables( $tables );
- $this->addFieldsIf( 'rev_page', $this->fld_ids );
- $this->addFieldsIf( 'page_latest', $this->fld_flags );
- // $this->addFieldsIf( 'rev_text_id', $this->fld_ids ); // Should this field be exposed?
- $this->addFieldsIf( 'rev_len', $this->fld_size || $this->fld_sizediff );
- $this->addFieldsIf( 'rev_minor_edit', $this->fld_flags );
- $this->addFieldsIf( 'rev_parent_id', $this->fld_flags || $this->fld_sizediff || $this->fld_ids );
$this->addFieldsIf( 'rc_patrolled', $this->fld_patrolled );
- if ( $this->fld_comment || $this->fld_parsedcomment ) {
- $commentQuery = $this->commentStore->getJoin( 'rev_comment' );
- $this->addTables( $commentQuery['tables'] );
- $this->addFields( $commentQuery['fields'] );
- $this->addJoinConds( $commentQuery['joins'] );
- }
-
if ( $this->fld_tags ) {
$this->addTables( 'tag_summary' );
$this->addJoinConds(
- [ 'tag_summary' => [ 'LEFT JOIN', [ 'rev_id=ts_rev_id' ] ] ]
+ [ 'tag_summary' => [ 'LEFT JOIN', [ $idField . ' = ts_rev_id' ] ] ]
);
$this->addFields( 'ts_tags' );
}
@@ -362,14 +579,12 @@ class ApiQueryContributions extends ApiQueryBase {
if ( isset( $this->params['tag'] ) ) {
$this->addTables( 'change_tag' );
$this->addJoinConds(
- [ 'change_tag' => [ 'INNER JOIN', [ 'rev_id=ct_rev_id' ] ] ]
+ [ 'change_tag' => [ 'INNER JOIN', [ $idField . ' = ct_rev_id' ] ] ]
);
$this->addWhereFld( 'ct_tag', $this->params['tag'] );
}
- if ( isset( $index ) ) {
- $this->addOption( 'USE INDEX', $index );
- }
+ return true;
}
/**
@@ -480,10 +695,13 @@ class ApiQueryContributions extends ApiQueryBase {
private function continueStr( $row ) {
if ( $this->multiUserMode ) {
- if ( $this->idMode ) {
- return "id|$row->rev_user|$row->rev_timestamp|$row->rev_id";
- } else {
- return "name|$row->rev_user_text|$row->rev_timestamp|$row->rev_id";
+ switch ( $this->orderBy ) {
+ case 'id':
+ return "id|$row->rev_user|$row->rev_timestamp|$row->rev_id";
+ case 'name':
+ return "name|$row->rev_user_text|$row->rev_timestamp|$row->rev_id";
+ case 'actor':
+ return "actor|$row->rev_actor|$row->rev_timestamp|$row->rev_id";
}
} else {
return "$row->rev_timestamp|$row->rev_id";
diff --git a/includes/api/ApiStashEdit.php b/includes/api/ApiStashEdit.php
index b4b9321787..23163c2489 100644
--- a/includes/api/ApiStashEdit.php
+++ b/includes/api/ApiStashEdit.php
@@ -340,11 +340,15 @@ class ApiStashEdit extends ApiBase {
* @return string|null TS_MW timestamp or null
*/
private static function lastEditTime( User $user ) {
- $time = wfGetDB( DB_REPLICA )->selectField(
- 'recentchanges',
+ $db = wfGetDB( DB_REPLICA );
+ $actorQuery = ActorMigration::newMigration()->getWhere( $db, 'rc_user', $user, false );
+ $time = $db->selectField(
+ [ 'recentchanges' ] + $actorQuery['tables'],
'MAX(rc_timestamp)',
- [ 'rc_user_text' => $user->getName() ],
- __METHOD__
+ [ $actorQuery['conds'] ],
+ __METHOD__,
+ [],
+ $actorQuery['joins']
);
return wfTimestampOrNull( TS_MW, $time );
diff --git a/includes/api/i18n/ar.json b/includes/api/i18n/ar.json
index 57d4b05200..f07c6e2dcb 100644
--- a/includes/api/i18n/ar.json
+++ b/includes/api/i18n/ar.json
@@ -160,8 +160,6 @@
"apihelp-feedrecentchanges-param-tagfilter": "ÙÙتر باÙÙسÙ
.",
"apihelp-feedrecentchanges-param-target": "Ø£Øدث اÙتغÙÙرات Ù٠اÙصÙØات اÙÙ
ÙصÙÙØ© Ù
Ù Ùذ٠اÙصÙØØ© ÙÙØ·",
"apihelp-feedrecentchanges-param-showlinkedto": "أظÙر اÙتغÙÙرات ÙÙصÙØات اÙÙ
ÙصÙÙØ© ÙÙصÙØØ© اÙÙ
عطاة عÙضا ع٠ذÙÙ",
- "apihelp-feedrecentchanges-param-categories": "أظÙر اÙتغÙÙرات Ù٠اÙصÙØات ÙÙ Ù٠تصÙÙÙ Ù
Ù Ùذ٠اÙتصÙÙÙات ÙÙØ·.",
- "apihelp-feedrecentchanges-param-categories_any": "أظÙر اÙتغÙÙرات Ù٠اÙصÙØات Ù٠أ٠تصÙÙ٠بدÙا Ù
Ù Ø°ÙÙ.",
"apihelp-feedrecentchanges-example-simple": " اظÙر اÙتغÙÙرات اÙØدÙثة",
"apihelp-feedrecentchanges-example-30days": "أظÙر اÙتغÙÙرات اÙأخÙرة ÙÙ 30 ÙÙÙ
.",
"apihelp-feedwatchlist-summary": "إرجاع تغذÙØ© ÙائÙ
Ø© اÙÙ
راÙبة.",
diff --git a/includes/api/i18n/ba.json b/includes/api/i18n/ba.json
index da8535d6d6..99421fed90 100644
--- a/includes/api/i18n/ba.json
+++ b/includes/api/i18n/ba.json
@@ -153,8 +153,6 @@
"apihelp-feedrecentchanges-param-tagfilter": "ТÑг бÑйÑнÑа Ò»Ó©ÒгөÑ",
"apihelp-feedrecentchanges-param-target": "ÐÑл биÑÑÓн Ò»ÑлÑанÒан биÑÑÓÑÒÓ Ò»ÑÒ£ÒÑ Ò¯ÒгÓÑÑеүÒÓÑÒе күÑÒ»ÓÑеÑгÓ",
"apihelp-feedrecentchanges-param-showlinkedto": "ÐиÑеһенÑÓ, бÑл биÑÐºÓ Ò»ÑлÑанма ÑһаÒан биÑÑÓÑÒÓге Ò¯ÒгÓÑÑеүÒÓÑÒе күÑÒ»ÓÑеÑгÓ",
- "apihelp-feedrecentchanges-param-categories": "ÐÐ°Ñ ÐºÐ°ÑегоÑÐ¸Ñ Ð±Ð¸ÑÑÓÑендÓге Ò¯ÒгÓÑеÑÑÓÑÒе Ð³ÐµÐ½Ó ÐºÒ¯ÑÒ»ÓÑеÑгÓ",
- "apihelp-feedrecentchanges-param-categories_any": "ÐÑл каÑегоÑиÑнан баÑҡа ÑелÓÒ»Ó Ò¡Ð°Ð¹Ò»Ñ ÐºÐ°ÑегоÑиÑÐ»Ð°Ñ Ð±Ð¸ÑÑÓÑендÓге Ò¯ÒгÓÑеÑÑÓÑÒе Ð³ÐµÐ½Ó ÐºÒ¯ÑÒ»ÓÑеÑгÓ",
"apihelp-feedrecentchanges-example-simple": "ÒºÑÒ£ÒÑ Ò¯ÒгÓÑÑеүÒÓÑÒе күÑÒ»ÓÑеÑгÓ.",
"apihelp-feedrecentchanges-example-30days": "30 көн аÑаÑÑÒÑндаÒÑ Ò»ÑÒ£ÒÑ Ò¯ÒгÓÑÑеүÒÓÑÒе күÑÒ»ÓÑеÑгÓ.",
"apihelp-feedwatchlist-summary": "ÐÒ¯ÒÓÑеү каналÑн ҡайÑаÑа",
diff --git a/includes/api/i18n/de.json b/includes/api/i18n/de.json
index 37a259d52e..bbee4fa6ef 100644
--- a/includes/api/i18n/de.json
+++ b/includes/api/i18n/de.json
@@ -184,8 +184,6 @@
"apihelp-feedrecentchanges-param-tagfilter": "Nach Markierung filtern.",
"apihelp-feedrecentchanges-param-target": "Nur Ãnderungen an Seiten anzeigen, die von dieser Seite verlinkt sind.",
"apihelp-feedrecentchanges-param-showlinkedto": "Zeige Ãnderungen an Seiten die von der ausgewählten Seite verlinkt sind.",
- "apihelp-feedrecentchanges-param-categories": "Zeigt nur Ãnderungen von Seiten in all diesen Kategorien.",
- "apihelp-feedrecentchanges-param-categories_any": "Zeigt stattdessen nur Ãnderungen auf Seiten in einer dieser Kategorien.",
"apihelp-feedrecentchanges-example-simple": "Letzte Ãnderungen anzeigen",
"apihelp-feedrecentchanges-example-30days": "Letzte Ãnderungen für 30 Tage anzeigen",
"apihelp-feedwatchlist-summary": "Gibt einen Beobachtungslisten-Feed zurück.",
diff --git a/includes/api/i18n/en.json b/includes/api/i18n/en.json
index 168901971b..8d7a61c9ec 100644
--- a/includes/api/i18n/en.json
+++ b/includes/api/i18n/en.json
@@ -211,8 +211,6 @@
"apihelp-feedrecentchanges-param-tagfilter": "Filter by tag.",
"apihelp-feedrecentchanges-param-target": "Show only changes on pages linked from this page.",
"apihelp-feedrecentchanges-param-showlinkedto": "Show changes on pages linked to the selected page instead.",
- "apihelp-feedrecentchanges-param-categories": "Show only changes on pages in all of these categories.",
- "apihelp-feedrecentchanges-param-categories_any": "Show only changes on pages in any of the categories instead.",
"apihelp-feedrecentchanges-example-simple": "Show recent changes.",
"apihelp-feedrecentchanges-example-30days": "Show recent changes for 30 days.",
diff --git a/includes/api/i18n/es.json b/includes/api/i18n/es.json
index d2aaa7710d..7cbf1e1169 100644
--- a/includes/api/i18n/es.json
+++ b/includes/api/i18n/es.json
@@ -206,8 +206,6 @@
"apihelp-feedrecentchanges-param-tagfilter": "Filtrar por etiquetas.",
"apihelp-feedrecentchanges-param-target": "Mostrar solo los cambios en las páginas enlazadas en esta.",
"apihelp-feedrecentchanges-param-showlinkedto": "Mostrar los cambios en páginas enlazadas con la página seleccionada.",
- "apihelp-feedrecentchanges-param-categories": "Mostrar sólo cambios en las páginas en todas estas categorÃas.",
- "apihelp-feedrecentchanges-param-categories_any": "Mostrar sólo cambios en las páginas en cualquiera de las categorÃas en lugar.",
"apihelp-feedrecentchanges-example-simple": "Mostrar los cambios recientes.",
"apihelp-feedrecentchanges-example-30days": "Mostrar los cambios recientes limitados a 30 dÃas.",
"apihelp-feedwatchlist-summary": "Devuelve el suministro de una lista de seguimiento.",
diff --git a/includes/api/i18n/fr.json b/includes/api/i18n/fr.json
index 3e5fb41913..4c3b74d193 100644
--- a/includes/api/i18n/fr.json
+++ b/includes/api/i18n/fr.json
@@ -222,8 +222,6 @@
"apihelp-feedrecentchanges-param-tagfilter": "Filtrer par balise.",
"apihelp-feedrecentchanges-param-target": "Afficher uniquement les modifications sur les pages liées depuis cette page.",
"apihelp-feedrecentchanges-param-showlinkedto": "Afficher les modifications plutôt sur les pages liées vers la page sélectionnée.",
- "apihelp-feedrecentchanges-param-categories": "Afficher uniquement les modifications sur les pages dans toutes ces catégories",
- "apihelp-feedrecentchanges-param-categories_any": "Afficher plutôt uniquement les modifications sur les pages dans nâimporte laquelle de ces catégories.",
"apihelp-feedrecentchanges-example-simple": "Afficher les modifications récentes",
"apihelp-feedrecentchanges-example-30days": "Afficher les modifications récentes sur 30 jours",
"apihelp-feedwatchlist-summary": "Renvoie un flux de liste de suivi.",
diff --git a/includes/api/i18n/gl.json b/includes/api/i18n/gl.json
index 6b01875cc2..4c66794c79 100644
--- a/includes/api/i18n/gl.json
+++ b/includes/api/i18n/gl.json
@@ -189,8 +189,6 @@
"apihelp-feedrecentchanges-param-tagfilter": "Filtrar por etiqueta.",
"apihelp-feedrecentchanges-param-target": "Mostrar só os cambios nas páxinas ligadas a esta.",
"apihelp-feedrecentchanges-param-showlinkedto": "Mostrar os cambios nas páxinas ligadas coa páxina seleccionada.",
- "apihelp-feedrecentchanges-param-categories": "Só mostrar cambios en páxinas pertencentes a todas estas categorÃas.",
- "apihelp-feedrecentchanges-param-categories_any": "Só mostrar cambios en páxinas pertencentes a calquera das categorÃas.",
"apihelp-feedrecentchanges-example-simple": "Mostrar os cambios recentes",
"apihelp-feedrecentchanges-example-30days": "Mostrar os cambios recentes limitados a 30 dÃas",
"apihelp-feedwatchlist-summary": "Devolve o fluxo dunha lista de vixiancia.",
diff --git a/includes/api/i18n/he.json b/includes/api/i18n/he.json
index 2e689461ad..2064b7b652 100644
--- a/includes/api/i18n/he.json
+++ b/includes/api/i18n/he.json
@@ -205,8 +205,6 @@
"apihelp-feedrecentchanges-param-tagfilter": "ס×× ×× ××¤× ×ª××ת.",
"apihelp-feedrecentchanges-param-target": "×צ×ת ש×× ×××× ×©× ×¢×©× ××פ×× ××ק×שר×× ×××£ ×× ××××.",
"apihelp-feedrecentchanges-param-showlinkedto": "××צ×× ×ת ×ש×× ×××× ××פ×× ×©×ק×שר×× ×××£ ×©× ××ר ××ק×× ××.",
- "apihelp-feedrecentchanges-param-categories": "××צ×× ×¨×§ ש×× ×××× ××פ×× ××× ×ק×××ר××ת ××××.",
- "apihelp-feedrecentchanges-param-categories_any": "××צ×× ×¨×§ ש×× ×××× ××פ×× ××× ×ק×××ר××ת ××ק××.",
"apihelp-feedrecentchanges-example-simple": "×צ×ת ש×× ×××× ××ר×× ××.",
"apihelp-feedrecentchanges-example-30days": "×צ×ת ש×× ×××× ××ר×× ×× ×¢××ר 30 ××××.",
"apihelp-feedwatchlist-summary": "×××רת ××× ×ª רש××ת ×עק×.",
diff --git a/includes/api/i18n/hu.json b/includes/api/i18n/hu.json
index 7c03097460..f6f813d452 100644
--- a/includes/api/i18n/hu.json
+++ b/includes/api/i18n/hu.json
@@ -158,8 +158,6 @@
"apihelp-feedrecentchanges-param-tagfilter": "Szűrés cÃmke szerint.",
"apihelp-feedrecentchanges-param-target": "Csak a megadott lapról hivatkozott lapok szerkesztéseinek megjelenÃtése.",
"apihelp-feedrecentchanges-param-showlinkedto": "Inkább a megadott lap''ra'' hivatkozó lapok szerkesztéseinek megjelenÃtése.",
- "apihelp-feedrecentchanges-param-categories": "Csak a megadott kategóriák mindegyikében szereplÅ lapok szerkesztéseinek megjelenÃtése.",
- "apihelp-feedrecentchanges-param-categories_any": "Inkább a megadott kategóriák bármelyikében szereplÅ lapok szerkesztéseinek megjelenÃtése.",
"apihelp-feedrecentchanges-example-simple": "Friss változtatások megjelenÃtése.",
"apihelp-feedrecentchanges-example-30days": "Az elmúlt 30 nap friss változtatásainak megjelenÃtése.",
"apihelp-feedwatchlist-summary": "A figyelÅlista lekérése hÃrcsatornaként.",
diff --git a/includes/api/i18n/it.json b/includes/api/i18n/it.json
index 25da0e6e4b..66b09428a1 100644
--- a/includes/api/i18n/it.json
+++ b/includes/api/i18n/it.json
@@ -142,8 +142,6 @@
"apihelp-feedrecentchanges-param-tagfilter": "Filtra per etichetta.",
"apihelp-feedrecentchanges-param-target": "Mostra solo le modifiche alle pagine collegate da questa pagina.",
"apihelp-feedrecentchanges-param-showlinkedto": "Mostra solo le modifiche alle pagine collegate a quella specificata.",
- "apihelp-feedrecentchanges-param-categories": "Mostra solo le variazioni sulle pagine di tutte queste categorie.",
- "apihelp-feedrecentchanges-param-categories_any": "Mostra invece solo le variazioni sulle pagine in una qualunque categoria.",
"apihelp-feedrecentchanges-example-simple": "Mostra le ultime modifiche.",
"apihelp-feedrecentchanges-example-30days": "Mostra le modifiche degli ultimi 30 giorni.",
"apihelp-feedwatchlist-param-feedformat": "Il formato del feed.",
diff --git a/includes/api/i18n/ksh.json b/includes/api/i18n/ksh.json
index 1ed917a784..b0231df904 100644
--- a/includes/api/i18n/ksh.json
+++ b/includes/api/i18n/ksh.json
@@ -152,8 +152,6 @@
"apihelp-feedrecentchanges-param-tagfilter": "Noh Makkehronge beschängke.",
"apihelp-feedrecentchanges-param-target": "Zeijsch Ãnderonge aan Sigge, op di vun heh dä Sigg ene Lengk jeihd.",
"apihelp-feedrecentchanges-param-showlinkedto": "Zeijsch Ãnderonge aan Sigge, op di vun dä uÃjesöhk Sigg ene Lengk jeihd.",
- "apihelp-feedrecentchanges-param-categories": "Donn blohà de Ãnderonge aan de Zohjehüreshkeit för all heh di Saachjroppe zeije.",
- "apihelp-feedrecentchanges-param-categories_any": "Donn deföhr blohà de Ãnderonge aan de Zohjehüreshkeit för öhndseijn fun heh dä Saachjroppe zeije.",
"apihelp-feedrecentchanges-example-simple": "Zeijsch de {{LCFIRST:{{int:recentchanges}}}}",
"apihelp-feedrecentchanges-example-30days": "Zeijsch de {{LCFIRST:{{int:recentchanges}}}} vun de läzde 30 Dähsch.",
"apihelp-feedwatchlist-summary": "Donn ene Kannahl met dä OppaÃleà zerökjävve.",
diff --git a/includes/api/i18n/lb.json b/includes/api/i18n/lb.json
index fc2c789a9f..d2c759378c 100644
--- a/includes/api/i18n/lb.json
+++ b/includes/api/i18n/lb.json
@@ -52,8 +52,6 @@
"apihelp-feedrecentchanges-param-hideliu": "Ãnnerunge vu registréierte Benotzer verstoppen.",
"apihelp-feedrecentchanges-param-hidemyself": "Ãnnerunge vum aktuelle Benotzer verstoppen.",
"apihelp-feedrecentchanges-param-hidecategorization": "Ãnnerunge vun der Memberschaft a Kategorie verstoppen.",
- "apihelp-feedrecentchanges-param-categories": "Nëmmen Ãnnerunge vu Säiten aus all dëse Kategorië weisen.",
- "apihelp-feedrecentchanges-param-categories_any": "Nëmmen Ãnnerunge vu Säiten aus enger vun dëse Kategorië weisen.",
"apihelp-feedrecentchanges-example-simple": "Rezent Ãnnerunge weisen",
"apihelp-filerevert-param-comment": "Bemierkung eroplueden.",
"apihelp-help-example-main": "Hëllef fir den Haaptmodul.",
diff --git a/includes/api/i18n/lt.json b/includes/api/i18n/lt.json
index 6f4c6a32b7..6f2a72c84b 100644
--- a/includes/api/i18n/lt.json
+++ b/includes/api/i18n/lt.json
@@ -2,7 +2,8 @@
"@metadata": {
"authors": [
"Zygimantus",
- "Eitvys200"
+ "Eitvys200",
+ "Hugo.arg"
]
},
"apihelp-main-param-action": "Kurį veiksmÄ
atlikti.",
@@ -72,15 +73,13 @@
"apihelp-feedrecentchanges-param-tagfilter": "Filtruoti pagal žymÄ.",
"apihelp-feedrecentchanges-param-target": "Rodyti tik keitimus puslapiuose, pasiekiamuose iš šio puslapio.",
"apihelp-feedrecentchanges-param-showlinkedto": "Vietoj to, rodyti pakeitimus puslapyje, susietame su pasirinktu puslapiu.",
- "apihelp-feedrecentchanges-param-categories": "Rodyti pakeitimus tik puslapiuose, esanÄiuose visuose Å¡iuose kategorijose.",
- "apihelp-feedrecentchanges-param-categories_any": "Vietoj to, rodyti tik pakeitimus puslapiuse, esanÄiuose bet kurioje iÅ¡ kategorijų.",
"apihelp-feedrecentchanges-example-simple": "Parodyti naujausius keitimus.",
"apihelp-feedrecentchanges-example-30days": "Rodyti naujausius pakeitimus per 30 dienų.",
"apihelp-feedwatchlist-summary": "Gražina stebimųjų sÄ
raÅ¡o srautÄ
.",
"apihelp-feedwatchlist-param-feedformat": "Srauto formatas.",
"apihelp-feedwatchlist-example-default": "Rodyti stebimųjų sÄ
raÅ¡o srautÄ
.",
"apihelp-feedwatchlist-example-all6hrs": "Rodyti visus pakeitimus stebimuose puslapiuose per paskutines 6 valandas.",
- "apihelp-filerevert-param-comment": "Ä®kÄlimo komentaras.",
+ "apihelp-filerevert-param-comment": "Ä®kÄlimo pastabos.",
"apihelp-help-summary": "Rodyti pagalbÄ
pasirinktiems moduliams.",
"apihelp-help-example-main": "Pagalba pagrindiniam moduliui.",
"apihelp-help-example-recursive": "Visa pagalba viename puslapyje.",
diff --git a/includes/api/i18n/mk.json b/includes/api/i18n/mk.json
index a0129009c6..3cec5d49bb 100644
--- a/includes/api/i18n/mk.json
+++ b/includes/api/i18n/mk.json
@@ -147,8 +147,6 @@
"apihelp-feedrecentchanges-param-tagfilter": "ФилÑÑиÑаÑе по ознака.",
"apihelp-feedrecentchanges-param-target": "ÐÑикажи Ñамо пÑомени на ÑÑÑаниÑи ÑÑо Ð²Ð¾Ð´Ð°Ñ Ð¾Ð´ оваа.",
"apihelp-feedrecentchanges-param-showlinkedto": "ÐамеÑÑо Ñоа, пÑикажи ги пÑомениÑе на ÑÑÑаниÑиÑе повÑзани Ñо избÑанаÑа ÑÑÑаниÑа.",
- "apihelp-feedrecentchanges-param-categories": "ÐÑикажи Ñамо пÑомени на ÑÑÑаниÑиÑе во ÑиÑе овие каÑегоÑии.",
- "apihelp-feedrecentchanges-param-categories_any": "ÐÑикажи Ñамо пÑомени на ÑÑÑаниÑиÑе во било коÑа од каÑегоÑииÑе.",
"apihelp-feedrecentchanges-example-simple": "ÐÑикажи ÑкоÑеÑни пÑомени",
"apihelp-feedrecentchanges-example-30days": "ÐÑикажÑÐ²Ð°Ñ ÑкоÑеÑни пÑомени 30 дена",
"apihelp-feedwatchlist-summary": "Ðава Ñековник Ñо набÑÑдÑваниÑе.",
diff --git a/includes/api/i18n/nb.json b/includes/api/i18n/nb.json
index dc9fb1169c..c2fea1c0ec 100644
--- a/includes/api/i18n/nb.json
+++ b/includes/api/i18n/nb.json
@@ -188,8 +188,6 @@
"apihelp-feedrecentchanges-param-tagfilter": "Filtrer etter tagger.",
"apihelp-feedrecentchanges-param-target": "Vis bare endringer på sider som lenkes fra denne siden.",
"apihelp-feedrecentchanges-param-showlinkedto": "Vis endringer på sider som lenker til den valgte siden i stedet.",
- "apihelp-feedrecentchanges-param-categories": "Vis bare endringer på sider i alle disse kategoriene.",
- "apihelp-feedrecentchanges-param-categories_any": "Vis bare endringer på sider som er i noen av kategoriene i stedet.",
"apihelp-feedrecentchanges-example-simple": "Vis siste endringer.",
"apihelp-feedrecentchanges-example-30days": "Vis siste endringer for 30 døgn.",
"apihelp-feedwatchlist-summary": "Returnerer en overvåkningslistemating.",
diff --git a/includes/api/i18n/pl.json b/includes/api/i18n/pl.json
index 6c311d0118..8591ebae10 100644
--- a/includes/api/i18n/pl.json
+++ b/includes/api/i18n/pl.json
@@ -149,8 +149,6 @@
"apihelp-feedrecentchanges-param-tagfilter": "Filtruj po znacznikach.",
"apihelp-feedrecentchanges-param-target": "Pokaż tylko zmiany na stronach linkowanych z tej strony.",
"apihelp-feedrecentchanges-param-showlinkedto": "Pokaż zmiany na stronach linkujÄ
cych do wybranej strony.",
- "apihelp-feedrecentchanges-param-categories": "Pokaż zmiany tylko na stronach bÄdÄ
cych we wszystkich tych kategoriach.",
- "apihelp-feedrecentchanges-param-categories_any": "Pokaż zmiany tylko na stronach bÄdÄ
cych w jednej z tych kategorii.",
"apihelp-feedrecentchanges-example-simple": "Pokaż ostatnie zmiany.",
"apihelp-feedrecentchanges-example-30days": "Pokaż ostatnie zmiany z 30 dni.",
"apihelp-feedwatchlist-summary": "Zwraca kanaÅ listy obserwowanych.",
diff --git a/includes/api/i18n/pt-br.json b/includes/api/i18n/pt-br.json
index 706b93c3f2..fec224e38f 100644
--- a/includes/api/i18n/pt-br.json
+++ b/includes/api/i18n/pt-br.json
@@ -205,8 +205,6 @@
"apihelp-feedrecentchanges-param-tagfilter": "Filtrar por tag.",
"apihelp-feedrecentchanges-param-target": "Mostrar apenas as alterações nas páginas vinculadas por esta página.",
"apihelp-feedrecentchanges-param-showlinkedto": "Mostra as alterações nas páginas vigiadas à página selecionada.",
- "apihelp-feedrecentchanges-param-categories": "Mostre apenas as alterações em páginas em todas essas categorias.",
- "apihelp-feedrecentchanges-param-categories_any": "Mostre apenas as alterações em páginas em qualquer uma das categorias.",
"apihelp-feedrecentchanges-example-simple": "Mostrar as mudanças recentes.",
"apihelp-feedrecentchanges-example-30days": "Mostrar as mudanças recentes por 30 dias.",
"apihelp-feedwatchlist-summary": "Retornar um feed da lista de páginas vigiadas.",
@@ -368,6 +366,7 @@
"apihelp-parse-param-disablepp": "Use $1disablelimitreport em vez.",
"apihelp-parse-param-disableeditsection": "Omita os links da seção de edição da saÃda do analisador.",
"apihelp-parse-param-disabletidy": "Não executa a limpeza HTML (por exemplo, tidy) na saÃda do analisador.",
+ "apihelp-parse-param-disablestylededuplication": "Não desduplica as folhas de estilo inline na saÃda do analisador.",
"apihelp-parse-param-generatexml": "Gerar XML parse tree (requer modelo de conteúdo $1
, substituÃdo por $2prop=parsetree).",
"apihelp-parse-param-preview": "Analisar no mode de visualização.",
"apihelp-parse-param-sectionpreview": "Analise no modo de visualização de seção (também permite o modo de visualização).",
diff --git a/includes/api/i18n/pt.json b/includes/api/i18n/pt.json
index aa697fbdb9..82a7ee137c 100644
--- a/includes/api/i18n/pt.json
+++ b/includes/api/i18n/pt.json
@@ -201,8 +201,6 @@
"apihelp-feedrecentchanges-param-tagfilter": "Filtrar por etiqueta.",
"apihelp-feedrecentchanges-param-target": "Mostrar apenas mudanças em páginas afluentes a esta.",
"apihelp-feedrecentchanges-param-showlinkedto": "Mostrar mudanças em páginas com hiperligações para a página selecionada.",
- "apihelp-feedrecentchanges-param-categories": "Mostrar apenas mudanças nas páginas que estão em todas estas categorias.",
- "apihelp-feedrecentchanges-param-categories_any": "Mostrar apenas mudanças nas páginas que estão em qualquer uma das categorias.",
"apihelp-feedrecentchanges-example-simple": "Mostrar mudanças recentes.",
"apihelp-feedrecentchanges-example-30days": "Mostrar as mudanças recentes de 30 dias.",
"apihelp-feedwatchlist-summary": "Devolve um ''feed'' das páginas vigiadas.",
@@ -366,6 +364,7 @@
"apihelp-parse-param-disablepp": "Em vez deste, usar $1disablelimitreport.",
"apihelp-parse-param-disableeditsection": "Omitir as hiperligações para edição da secção no resultado da análise sintática.",
"apihelp-parse-param-disabletidy": "Não fazer a limpeza do HTML (isto é, o ''tidy'') no resultado da análise sintática.",
+ "apihelp-parse-param-disablestylededuplication": "Não desduplicar os estilos especificados em linha na saÃda do analisador sintático.",
"apihelp-parse-param-generatexml": "Gerar a árvore de análise XML (requer o modelo de conteúdo $1
; substituÃdo por $2prop=parsetree).",
"apihelp-parse-param-preview": "Executar a análise em modo de antevisão.",
"apihelp-parse-param-sectionpreview": "Executar a análise em modo de antevisão (também ativa o modo de antevisão).",
diff --git a/includes/api/i18n/qqq.json b/includes/api/i18n/qqq.json
index e76988058b..fc0de4e333 100644
--- a/includes/api/i18n/qqq.json
+++ b/includes/api/i18n/qqq.json
@@ -206,8 +206,6 @@
"apihelp-feedrecentchanges-param-tagfilter": "{{doc-apihelp-param|feedrecentchanges|tagfilter}}",
"apihelp-feedrecentchanges-param-target": "{{doc-apihelp-param|feedrecentchanges|target}}",
"apihelp-feedrecentchanges-param-showlinkedto": "{{doc-apihelp-param|feedrecentchanges|showlinkedto}}",
- "apihelp-feedrecentchanges-param-categories": "{{doc-apihelp-param|feedrecentchanges|categories}}",
- "apihelp-feedrecentchanges-param-categories_any": "{{doc-apihelp-param|feedrecentchanges|categories_any}}",
"apihelp-feedrecentchanges-example-simple": "{{doc-apihelp-example|feedrecentchanges}}",
"apihelp-feedrecentchanges-example-30days": "{{doc-apihelp-example|feedrecentchanges}}",
"apihelp-feedwatchlist-summary": "{{doc-apihelp-summary|feedwatchlist}}",
diff --git a/includes/api/i18n/ru.json b/includes/api/i18n/ru.json
index 9ee35274fc..7e33e42e06 100644
--- a/includes/api/i18n/ru.json
+++ b/includes/api/i18n/ru.json
@@ -27,7 +27,8 @@
"Redredsonia",
"Alexey zakharenkov",
"Facenapalm",
- "Jack who built the house"
+ "Jack who built the house",
+ "Mouse21"
]
},
"apihelp-main-extended-description": "$1
, замеÑено $2prop=parsetree).",
"apihelp-parse-param-preview": "ÐÑоанализиÑоваÑÑ Ð² Ñежиме пÑепÑоÑмоÑÑа.",
"apihelp-parse-param-sectionpreview": "РаÑпаÑÑиÑÑ Ð² Ñежиме пÑедпÑоÑмоÑÑа Ñаздела (Ñакже акÑивиÑÑÐµÑ Ñежим пÑедпÑоÑмоÑÑа).",
diff --git a/includes/api/i18n/sv.json b/includes/api/i18n/sv.json
index 8e5228a7d4..e4cff6a90b 100644
--- a/includes/api/i18n/sv.json
+++ b/includes/api/i18n/sv.json
@@ -170,8 +170,6 @@
"apihelp-feedrecentchanges-param-tagfilter": "Filtrera efter tagg.",
"apihelp-feedrecentchanges-param-target": "Visa endast ändringarna av sidor som den här sidan länkar till.",
"apihelp-feedrecentchanges-param-showlinkedto": "Visa ändringarna på sidor som är länkade till den valda sidan i stället.",
- "apihelp-feedrecentchanges-param-categories": "Visa endast ändringar på sidor i alla dessa kategorier.",
- "apihelp-feedrecentchanges-param-categories_any": "Visa endast ändringar på sidor i någon av kategorierna istället.",
"apihelp-feedrecentchanges-example-simple": "Visa senaste ändringar",
"apihelp-feedrecentchanges-example-30days": "Visa senaste ändringar för 30 dygn",
"apihelp-feedwatchlist-summary": "Returnerar ett flöde från bevakningslistan.",
diff --git a/includes/api/i18n/uk.json b/includes/api/i18n/uk.json
index ca0b0a89bc..f55f65e397 100644
--- a/includes/api/i18n/uk.json
+++ b/includes/api/i18n/uk.json
@@ -203,8 +203,6 @@
"apihelp-feedrecentchanges-param-tagfilter": "ФÑлÑÑÑÑваÑи за ÑеÒом.",
"apihelp-feedrecentchanges-param-target": "ÐоказаÑи лиÑе змÑни на ÑÑоÑÑнкаÑ
, на ÑÐºÑ Ð¿Ð¾ÑилаÑÑÑÑÑ ÑÑ ÑÑоÑÑнка.",
"apihelp-feedrecentchanges-param-showlinkedto": "ÐоказаÑи наÑомÑÑÑÑ Ð»Ð¸Ñе змÑни на ÑÑоÑÑнкаÑ
, ÑÐºÑ Ð¿Ð¾ÑилаÑÑÑÑÑ Ð½Ð° ÑÑ ÑÑоÑÑнкÑ.",
- "apihelp-feedrecentchanges-param-categories": "ÐоказаÑи лиÑе змÑни ÑÑоÑÑнок Ñ Ð²ÑÑÑ
ÑиÑ
каÑегоÑÑÑÑ
.",
- "apihelp-feedrecentchanges-param-categories_any": "ÐоказаÑи наÑомÑÑÑÑ Ð»Ð¸Ñе змÑни на ÑÑоÑÑнкаÑ
Ñ Ð±ÑдÑ-ÑкÑй з ÑиÑ
каÑегоÑÑй.",
"apihelp-feedrecentchanges-example-simple": "ÐоказаÑи неÑÐ¾Ð´Ð°Ð²Ð½Ñ Ð·Ð¼Ñни.",
"apihelp-feedrecentchanges-example-30days": "ÐоказаÑи неÑÐ¾Ð´Ð°Ð²Ð½Ñ Ð·Ð¼Ñни за 30 днÑв.",
"apihelp-feedwatchlist-summary": "ÐÐ¸Ð´Ð°Ñ ÑÑÑÑÑÐºÑ ÑпиÑÐºÑ ÑпоÑÑеÑеженнÑ.",
diff --git a/includes/api/i18n/zh-hans.json b/includes/api/i18n/zh-hans.json
index c081ffc69c..5eec830c20 100644
--- a/includes/api/i18n/zh-hans.json
+++ b/includes/api/i18n/zh-hans.json
@@ -215,8 +215,6 @@
"apihelp-feedrecentchanges-param-tagfilter": "ææ ç¾è¿æ»¤ã",
"apihelp-feedrecentchanges-param-target": "ä»
ä»
æ¾ç¤ºä»è¯¥é¡µé¢é¾åºçé£äºé¡µé¢çåæ´ã",
"apihelp-feedrecentchanges-param-showlinkedto": "ä»
ä»
æ¾ç¤ºé¾å
¥å°è¯¥é¡µé¢çé£äºé¡µé¢çåæ´ã",
- "apihelp-feedrecentchanges-param-categories": "åªæ¾ç¤ºææè¿äºåç±»ä¸ç页é¢ä¸çæ´æ¹ã",
- "apihelp-feedrecentchanges-param-categories_any": "åªæ¾ç¤ºè¿äºå类以å¤é¡µé¢çæ´æ¹ã",
"apihelp-feedrecentchanges-example-simple": "æ¾ç¤ºæè¿æ´æ¹ã",
"apihelp-feedrecentchanges-example-30days": "æ¾ç¤ºæè¿30天çæ´æ¹ã",
"apihelp-feedwatchlist-summary": "è¿åçè§å表纲è¦ã",
@@ -380,6 +378,7 @@
"apihelp-parse-param-disablepp": "请æ¹ç¨$1disablelimitreportã",
"apihelp-parse-param-disableeditsection": "ä»è§£æå¨è¾åºä¸çç¥ç¼è¾æ®µè½é¾æ¥ã",
"apihelp-parse-param-disabletidy": "ä¸è¦å¨è§£æå¨è¾åºä¸è¿è¡HTMLæ¸
çï¼ä¾å¦tidyï¼ã",
+ "apihelp-parse-param-disablestylededuplication": "ä¸è¦å¨è§£æå¨è¾åºä¸å é¤éå¤çè¡å
æ ·å¼è¡¨ã",
"apihelp-parse-param-generatexml": "çæXML解ææ ï¼éè¦å
容模å$1
ï¼è¢«$2prop=parsetreeæå代ï¼ã",
"apihelp-parse-param-preview": "å¨é¢è§æ¨¡å¼ä¸è§£æã",
"apihelp-parse-param-sectionpreview": "å¨æ®µè½é¢è§æ¨¡å¼ä¸è§£æï¼åæ¶è¦å¯ç¨é¢è§æ¨¡å¼ï¼ã",
diff --git a/includes/auth/AuthPluginPrimaryAuthenticationProvider.php b/includes/auth/AuthPluginPrimaryAuthenticationProvider.php
index b8e36bc4f3..cd0734d847 100644
--- a/includes/auth/AuthPluginPrimaryAuthenticationProvider.php
+++ b/includes/auth/AuthPluginPrimaryAuthenticationProvider.php
@@ -272,7 +272,7 @@ class AuthPluginPrimaryAuthenticationProvider
if ( $failed ) {
throw new \UnexpectedValueException(
"AuthPlugin failed to reset password for $username in the following domains: "
- . join( ' ', $failed )
+ . implode( ' ', $failed )
);
}
}
diff --git a/includes/cache/MessageCache.php b/includes/cache/MessageCache.php
index 63c03af25b..71fcd8bde5 100644
--- a/includes/cache/MessageCache.php
+++ b/includes/cache/MessageCache.php
@@ -191,13 +191,11 @@ class MessageCache {
// ParserOptions for it. And don't cache this ParserOptions
// either.
$po = ParserOptions::newFromAnon();
- $po->setEditSection( false );
$po->setAllowUnsafeRawHtml( false );
return $po;
}
$this->mParserOptions = new ParserOptions;
- $this->mParserOptions->setEditSection( false );
// Messages may take parameters that could come
// from malicious sources. As a precaution, disable
// the parser tag when parsing messages.
@@ -302,7 +300,7 @@ class MessageCache {
}
if ( !$success ) {
- $cacheKey = $this->clusterCache->makeKey( 'messages', $code ); # Key in memc for messages
+ $cacheKey = $this->clusterCache->makeKey( 'messages', $code );
# Try the global cache. If it is empty, try to acquire a lock. If
# the lock can't be acquired, wait for the other thread to finish
# and then try the global cache a second time.
@@ -615,7 +613,7 @@ class MessageCache {
// load() calls do try to refresh the cache with replica DB data
$this->mCache[$code]['LATEST'] = time();
// Pre-emptively update the local datacenter cache so things like edit filter and
- // blacklist changes are reflect immediately, as these often use MediaWiki: pages.
+ // blacklist changes are reflected immediately; these often use MediaWiki: pages.
// The datacenter handling replace() calls should be the same one handling edits
// as they require HTTP POST.
$this->saveToCaches( $this->mCache[$code], 'all', $code );
@@ -624,19 +622,7 @@ class MessageCache {
// Relay the purge. Touching this check key expires cache contents
// and local cache (APC) validation hash across all datacenters.
- $this->wanCache->touchCheckKey( $this->wanCache->makeKey( 'messages', $code ) );
- // Also delete cached sidebar... just in case it is affected
- // @TODO: shouldn't this be $code === $wgLanguageCode?
- if ( $code === 'en' ) {
- // Purge all language sidebars, e.g. on ?action=purge to the sidebar messages
- $codes = array_keys( Language::fetchLanguageNames() );
- } else {
- // Purge only the sidebar for this language
- $codes = [ $code ];
- }
- foreach ( $codes as $code ) {
- $this->wanCache->delete( $this->wanCache->makeKey( 'sidebar', $code ) );
- }
+ $this->wanCache->touchCheckKey( $this->getCheckKey( $code ) );
// Purge the message in the message blob store
$resourceloader = RequestContext::getMain()->getOutput()->getResourceLoader();
@@ -703,7 +689,7 @@ class MessageCache {
$value = $this->wanCache->get(
$this->wanCache->makeKey( 'messages', $code, 'hash', 'v1' ),
$curTTL,
- [ $this->wanCache->makeKey( 'messages', $code ) ]
+ [ $this->getCheckKey( $code ) ]
);
if ( $value ) {
@@ -908,7 +894,7 @@ class MessageCache {
if ( $useDB ) {
$uckey = $wgContLang->ucfirst( $lckey );
- if ( !isset( $alreadyTried[ $langcode ] ) ) {
+ if ( !isset( $alreadyTried[$langcode] ) ) {
$message = $this->getMsgFromNamespace(
$this->getMessagePageName( $langcode, $uckey ),
$langcode
@@ -917,7 +903,7 @@ class MessageCache {
if ( $message !== false ) {
return $message;
}
- $alreadyTried[ $langcode ] = true;
+ $alreadyTried[$langcode] = true;
}
} else {
$uckey = null;
@@ -934,7 +920,7 @@ class MessageCache {
$fallbackChain = Language::getFallbacksFor( $langcode );
foreach ( $fallbackChain as $code ) {
- if ( isset( $alreadyTried[ $code ] ) ) {
+ if ( isset( $alreadyTried[$code] ) ) {
continue;
}
@@ -944,7 +930,7 @@ class MessageCache {
if ( $message !== false ) {
return $message;
}
- $alreadyTried[ $code ] = true;
+ $alreadyTried[$code] = true;
}
}
@@ -987,13 +973,12 @@ class MessageCache {
if ( isset( $this->mCache[$code][$title] ) ) {
$entry = $this->mCache[$code][$title];
if ( substr( $entry, 0, 1 ) === ' ' ) {
- // The message exists, so make sure a string is returned.
+ // The message exists and is not '!TOO BIG'
return (string)substr( $entry, 1 );
} elseif ( $entry === '!NONEXISTENT' ) {
return false;
- } elseif ( $entry === '!TOO BIG' ) {
- // Fall through and try invididual message cache below
}
+ // Fall through and try invididual message cache below
} else {
// XXX: This is not cached in process cache, should it?
$message = false;
@@ -1079,11 +1064,11 @@ class MessageCache {
/**
* @param string $message
* @param bool $interface
- * @param string $language Language code
+ * @param Language $language
* @param Title $title
* @return string
*/
- function transform( $message, $interface = false, $language = null, $title = null ) {
+ public function transform( $message, $interface = false, $language = null, $title = null ) {
// Avoid creating parser if nothing to transform
if ( strpos( $message, '{{' ) === false ) {
return $message;
@@ -1112,7 +1097,7 @@ class MessageCache {
/**
* @return Parser
*/
- function getParser() {
+ public function getParser() {
global $wgParser, $wgParserConf;
if ( !$this->mParser && isset( $wgParser ) ) {
@@ -1176,11 +1161,11 @@ class MessageCache {
return $res;
}
- function disable() {
+ public function disable() {
$this->mDisable = true;
}
- function enable() {
+ public function enable() {
$this->mDisable = false;
}
@@ -1201,13 +1186,14 @@ class MessageCache {
}
/**
- * Clear all stored messages. Mainly used after a mass rebuild.
+ * Clear all stored messages in global and local cache
+ *
+ * Mainly used after a mass rebuild
*/
function clear() {
$langs = Language::fetchLanguageNames( null, 'mw' );
foreach ( array_keys( $langs ) as $code ) {
- # Global and local caches
- $this->wanCache->touchCheckKey( $this->wanCache->makeKey( 'messages', $code ) );
+ $this->wanCache->touchCheckKey( $this->getCheckKey( $code ) );
}
$this->mLoadedLanguages = [];
@@ -1285,6 +1271,14 @@ class MessageCache {
}
}
+ /**
+ * @param string $code Language code
+ * @return string WAN cache key usable as a "check key" against language page edits
+ */
+ public function getCheckKey( $code ) {
+ return $this->wanCache->makeKey( 'messages', $code );
+ }
+
/**
* @param Content|null $content Content or null if the message page does not exist
* @return string|bool|null Returns false if $content is null and null on error
diff --git a/includes/cache/UserCache.php b/includes/cache/UserCache.php
index 5c75292628..cb6857121e 100644
--- a/includes/cache/UserCache.php
+++ b/includes/cache/UserCache.php
@@ -80,6 +80,8 @@ class UserCache {
* @param string $caller The calling method
*/
public function doQuery( array $userIds, $options = [], $caller = '' ) {
+ global $wgActorTableSchemaMigrationStage;
+
$usersToCheck = [];
$usersToQuery = [];
@@ -100,21 +102,34 @@ class UserCache {
// Lookup basic info for users not yet loaded...
if ( count( $usersToQuery ) ) {
$dbr = wfGetDB( DB_REPLICA );
- $table = [ 'user' ];
+ $tables = [ 'user' ];
$conds = [ 'user_id' => $usersToQuery ];
$fields = [ 'user_name', 'user_real_name', 'user_registration', 'user_id' ];
+ $joinConds = [];
+
+ if ( $wgActorTableSchemaMigrationStage > MIGRATION_OLD ) {
+ $tables[] = 'actor';
+ $fields[] = 'actor_id';
+ $joinConds['actor'] = [
+ $wgActorTableSchemaMigrationStage === MIGRATION_NEW ? 'JOIN' : 'LEFT JOIN',
+ [ 'actor_user = user_id' ]
+ ];
+ }
$comment = __METHOD__;
if ( strval( $caller ) !== '' ) {
$comment .= "/$caller";
}
- $res = $dbr->select( $table, $fields, $conds, $comment );
+ $res = $dbr->select( $tables, $fields, $conds, $comment, [], $joinConds );
foreach ( $res as $row ) { // load each user into cache
$userId = (int)$row->user_id;
$this->cache[$userId]['name'] = $row->user_name;
$this->cache[$userId]['real_name'] = $row->user_real_name;
$this->cache[$userId]['registration'] = $row->user_registration;
+ if ( $wgActorTableSchemaMigrationStage > MIGRATION_OLD ) {
+ $this->cache[$userId]['actor'] = $row->actor_id;
+ }
$usersToCheck[$userId] = $row->user_name;
}
}
diff --git a/includes/changes/ChangesList.php b/includes/changes/ChangesList.php
index 5b8559e68a..ac029a2bb3 100644
--- a/includes/changes/ChangesList.php
+++ b/includes/changes/ChangesList.php
@@ -646,6 +646,7 @@ class ChangesList extends ContextSource {
'id' => $rc->mAttribs['rc_this_oldid'],
'user' => $rc->mAttribs['rc_user'],
'user_text' => $rc->mAttribs['rc_user_text'],
+ 'actor' => isset( $rc->mAttribs['rc_actor'] ) ? $rc->mAttribs['rc_actor'] : null,
'deleted' => $rc->mAttribs['rc_deleted']
] );
$s .= ' ' . Linker::generateRollback( $rev, $this->getContext() );
diff --git a/includes/changes/EnhancedChangesList.php b/includes/changes/EnhancedChangesList.php
index 0df6828162..6c7666fba5 100644
--- a/includes/changes/EnhancedChangesList.php
+++ b/includes/changes/EnhancedChangesList.php
@@ -324,7 +324,7 @@ class EnhancedChangesList extends ChangesList {
$first--;
}
# Get net change
- $charDifference = $this->formatCharacterDifference( $block[$first], $block[$last] );
+ $charDifference = $this->formatCharacterDifference( $block[$first], $block[$last] ) ?: false;
}
$numberofWatchingusers = $this->numberofWatchingusers( $block[0]->numberofWatchingusers );
diff --git a/includes/changes/RecentChange.php b/includes/changes/RecentChange.php
index dfaa39816e..3dacf6af04 100644
--- a/includes/changes/RecentChange.php
+++ b/includes/changes/RecentChange.php
@@ -34,6 +34,7 @@
* rc_cur_id page_id of associated page entry
* rc_user user id who made the entry
* rc_user_text user name who made the entry
+ * rc_actor actor id who made the entry
* rc_comment edit summary
* rc_this_oldid rev_id associated with this entry (or zero)
* rc_last_oldid rev_id associated with the entry before this one (or zero)
@@ -210,12 +211,25 @@ class RecentChange {
* @return array
*/
public static function selectFields() {
+ global $wgActorTableSchemaMigrationStage;
+
wfDeprecated( __METHOD__, '1.31' );
+ if ( $wgActorTableSchemaMigrationStage > MIGRATION_WRITE_BOTH ) {
+ // If code is using this instead of self::getQueryInfo(), there's a
+ // decent chance it's going to try to directly access
+ // $row->rc_user or $row->rc_user_text and we can't give it
+ // useful values here once those aren't being written anymore.
+ throw new BadMethodCallException(
+ 'Cannot use ' . __METHOD__ . ' when $wgActorTableSchemaMigrationStage > MIGRATION_WRITE_BOTH'
+ );
+ }
+
return [
'rc_id',
'rc_timestamp',
'rc_user',
'rc_user_text',
+ 'rc_actor' => 'NULL',
'rc_namespace',
'rc_title',
'rc_minor',
@@ -249,13 +263,12 @@ class RecentChange {
*/
public static function getQueryInfo() {
$commentQuery = CommentStore::getStore()->getJoin( 'rc_comment' );
+ $actorQuery = ActorMigration::newMigration()->getJoin( 'rc_user' );
return [
- 'tables' => [ 'recentchanges' ] + $commentQuery['tables'],
+ 'tables' => [ 'recentchanges' ] + $commentQuery['tables'] + $actorQuery['tables'],
'fields' => [
'rc_id',
'rc_timestamp',
- 'rc_user',
- 'rc_user_text',
'rc_namespace',
'rc_title',
'rc_minor',
@@ -275,8 +288,8 @@ class RecentChange {
'rc_log_type',
'rc_log_action',
'rc_params',
- ] + $commentQuery['fields'],
- 'joins' => $commentQuery['joins'],
+ ] + $commentQuery['fields'] + $actorQuery['fields'],
+ 'joins' => $commentQuery['joins'] + $actorQuery['joins'],
];
}
@@ -314,10 +327,14 @@ class RecentChange {
*/
public function getPerformer() {
if ( $this->mPerformer === false ) {
- if ( $this->mAttribs['rc_user'] ) {
+ if ( !empty( $this->mAttribs['rc_actor'] ) ) {
+ $this->mPerformer = User::newFromActorId( $this->mAttribs['rc_actor'] );
+ } elseif ( !empty( $this->mAttribs['rc_user'] ) ) {
$this->mPerformer = User::newFromId( $this->mAttribs['rc_user'] );
- } else {
+ } elseif ( !empty( $this->mAttribs['rc_user_text'] ) ) {
$this->mPerformer = User::newFromName( $this->mAttribs['rc_user_text'], false );
+ } else {
+ throw new MWException( 'RecentChange object lacks rc_actor, rc_user, and rc_user_text' );
}
}
@@ -368,12 +385,22 @@ class RecentChange {
unset( $this->mAttribs['rc_cur_id'] );
}
- # Convert mAttribs['rc_comment'] for CommentStore
$row = $this->mAttribs;
+
+ # Convert mAttribs['rc_comment'] for CommentStore
$comment = $row['rc_comment'];
unset( $row['rc_comment'], $row['rc_comment_text'], $row['rc_comment_data'] );
$row += CommentStore::getStore()->insert( $dbw, 'rc_comment', $comment );
+ # Convert mAttribs['rc_user'] etc for ActorMigration
+ $user = User::newFromAnyId(
+ isset( $row['rc_user'] ) ? $row['rc_user'] : null,
+ isset( $row['rc_user_text'] ) ? $row['rc_user_text'] : null,
+ isset( $row['rc_actor'] ) ? $row['rc_actor'] : null
+ );
+ unset( $row['rc_user'], $row['rc_user_text'], $row['rc_actor'] );
+ $row += ActorMigration::newMigration()->getInsertValues( $dbw, 'rc_user', $user );
+
# Don't reuse an existing rc_id for the new row, if one happens to be
# set for some reason.
unset( $row['rc_id'] );
@@ -642,6 +669,7 @@ class RecentChange {
'rc_cur_id' => $title->getArticleID(),
'rc_user' => $user->getId(),
'rc_user_text' => $user->getName(),
+ 'rc_actor' => $user->getActorId(),
'rc_comment' => &$comment,
'rc_comment_text' => &$comment,
'rc_comment_data' => null,
@@ -717,6 +745,7 @@ class RecentChange {
'rc_cur_id' => $title->getArticleID(),
'rc_user' => $user->getId(),
'rc_user_text' => $user->getName(),
+ 'rc_actor' => $user->getActorId(),
'rc_comment' => &$comment,
'rc_comment_text' => &$comment,
'rc_comment_data' => null,
@@ -849,6 +878,7 @@ class RecentChange {
'rc_cur_id' => $target->getArticleID(),
'rc_user' => $user->getId(),
'rc_user_text' => $user->getName(),
+ 'rc_actor' => $user->getActorId(),
'rc_comment' => &$logComment,
'rc_comment_text' => &$logComment,
'rc_comment_data' => null,
@@ -934,6 +964,7 @@ class RecentChange {
'rc_cur_id' => $pageTitle->getArticleID(),
'rc_user' => $user ? $user->getId() : 0,
'rc_user_text' => $user ? $user->getName() : '',
+ 'rc_actor' => $user ? $user->getActorId() : null,
'rc_comment' => &$comment,
'rc_comment_text' => &$comment,
'rc_comment_data' => null,
@@ -1002,6 +1033,15 @@ class RecentChange {
$this->mAttribs['rc_comment'] = &$comment;
$this->mAttribs['rc_comment_text'] = &$comment;
$this->mAttribs['rc_comment_data'] = null;
+
+ $user = User::newFromAnyId(
+ isset( $this->mAttribs['rc_user'] ) ? $this->mAttribs['rc_user'] : null,
+ isset( $this->mAttribs['rc_user_text'] ) ? $this->mAttribs['rc_user_text'] : null,
+ isset( $this->mAttribs['rc_actor'] ) ? $this->mAttribs['rc_actor'] : null
+ );
+ $this->mAttribs['rc_user'] = $user->getId();
+ $this->mAttribs['rc_user_text'] = $user->getName();
+ $this->mAttribs['rc_actor'] = $user->getActorId();
}
/**
@@ -1015,6 +1055,24 @@ class RecentChange {
return CommentStore::getStore()
->getComment( 'rc_comment', $this->mAttribs, true )->text;
}
+
+ if ( $name === 'rc_user' || $name === 'rc_user_text' || $name === 'rc_actor' ) {
+ $user = User::newFromAnyId(
+ isset( $this->mAttribs['rc_user'] ) ? $this->mAttribs['rc_user'] : null,
+ isset( $this->mAttribs['rc_user_text'] ) ? $this->mAttribs['rc_user_text'] : null,
+ isset( $this->mAttribs['rc_actor'] ) ? $this->mAttribs['rc_actor'] : null
+ );
+ if ( $name === 'rc_user' ) {
+ return $user->getId();
+ }
+ if ( $name === 'rc_user_text' ) {
+ return $user->getName();
+ }
+ if ( $name === 'rc_actor' ) {
+ return $user->getActorId();
+ }
+ }
+
return isset( $this->mAttribs[$name] ) ? $this->mAttribs[$name] : null;
}
diff --git a/includes/changetags/ChangeTags.php b/includes/changetags/ChangeTags.php
index 7e4dd006ac..b30b82df1d 100644
--- a/includes/changetags/ChangeTags.php
+++ b/includes/changetags/ChangeTags.php
@@ -181,6 +181,28 @@ class ChangeTags {
return $msg;
}
+ /**
+ * Get truncated message for the tag's long description.
+ *
+ * @param string $tag Tag name.
+ * @param int $length Maximum length of truncated message, including ellipsis.
+ * @param IContextSource $context
+ *
+ * @return string Truncated long tag description.
+ */
+ public static function truncateTagDescription( $tag, $length, IContextSource $context ) {
+ $originalDesc = self::tagLongDescriptionMessage( $tag, $context );
+ // If there is no tag description, return empty string
+ if ( !$originalDesc ) {
+ return '';
+ }
+
+ $taglessDesc = Sanitizer::stripAllTags( $originalDesc->parse() );
+ $escapedDesc = Sanitizer::escapeHtmlAllowEntities( $taglessDesc );
+
+ return $context->getLanguage()->truncateForVisual( $escapedDesc, $length );
+ }
+
/**
* Add tags to a change given its rc_id, rev_id and/or log_id
*
diff --git a/includes/changetags/ChangeTagsLogItem.php b/includes/changetags/ChangeTagsLogItem.php
index b78efafa65..a248c6e8b5 100644
--- a/includes/changetags/ChangeTagsLogItem.php
+++ b/includes/changetags/ChangeTagsLogItem.php
@@ -44,6 +44,10 @@ class ChangeTagsLogItem extends RevisionItemBase {
return 'log_user_text';
}
+ public function getAuthorActorField() {
+ return 'log_actor';
+ }
+
public function canView() {
return LogEventsList::userCan( $this->row, Revision::DELETED_RESTRICTED, $this->list->getUser() );
}
diff --git a/includes/content/AbstractContent.php b/includes/content/AbstractContent.php
index 65dc3bb19b..b21eadcd14 100644
--- a/includes/content/AbstractContent.php
+++ b/includes/content/AbstractContent.php
@@ -426,7 +426,7 @@ abstract class AbstractContent implements Content {
* @param WikiPage $page
* @param ParserOutput|null $parserOutput
*
- * @return LinksDeletionUpdate[]
+ * @return DeferrableUpdate[]
*
* @see Content::getDeletionUpdates
*/
diff --git a/includes/content/ContentHandler.php b/includes/content/ContentHandler.php
index edfc81cc95..eab3afb966 100644
--- a/includes/content/ContentHandler.php
+++ b/includes/content/ContentHandler.php
@@ -986,13 +986,17 @@ abstract class ContentHandler {
// Find out if there was only one contributor
// Only scan the last 20 revisions
- $res = $dbr->select( 'revision', 'rev_user_text',
+ $revQuery = Revision::getQueryInfo();
+ $res = $dbr->select(
+ $revQuery['tables'],
+ [ 'rev_user_text' => $revQuery['fields']['rev_user_text'] ],
[
'rev_page' => $title->getArticleID(),
$dbr->bitAnd( 'rev_deleted', Revision::DELETED_USER ) . ' = 0'
],
__METHOD__,
- [ 'LIMIT' => 20 ]
+ [ 'LIMIT' => 20 ],
+ $revQuery['joins']
);
if ( $res === false ) {
diff --git a/includes/db/DatabaseOracle.php b/includes/db/DatabaseOracle.php
index eb28b30138..225a36c421 100644
--- a/includes/db/DatabaseOracle.php
+++ b/includes/db/DatabaseOracle.php
@@ -61,7 +61,7 @@ class DatabaseOracle extends Database {
}
function __destruct() {
- if ( $this->mOpened ) {
+ if ( $this->opened ) {
Wikimedia\suppressWarnings();
$this->close();
Wikimedia\restoreWarnings();
@@ -100,21 +100,21 @@ class DatabaseOracle extends Database {
}
$this->close();
- $this->mUser = $user;
- $this->mPassword = $password;
+ $this->user = $user;
+ $this->password = $password;
// changed internal variables functions
// mServer now holds the TNS endpoint
// mDBname is schema name if different from username
if ( !$server ) {
// backward compatibillity (server used to be null and TNS was supplied in dbname)
- $this->mServer = $dbName;
- $this->mDBname = $user;
+ $this->server = $dbName;
+ $this->dbName = $user;
} else {
- $this->mServer = $server;
+ $this->server = $server;
if ( !$dbName ) {
- $this->mDBname = $user;
+ $this->dbName = $user;
} else {
- $this->mDBname = $dbName;
+ $this->dbName = $dbName;
}
}
@@ -126,53 +126,53 @@ class DatabaseOracle extends Database {
$this->setFlag( DBO_PERSISTENT );
}
- $session_mode = $this->mFlags & DBO_SYSDBA ? OCI_SYSDBA : OCI_DEFAULT;
+ $session_mode = $this->flags & DBO_SYSDBA ? OCI_SYSDBA : OCI_DEFAULT;
Wikimedia\suppressWarnings();
- if ( $this->mFlags & DBO_PERSISTENT ) {
- $this->mConn = oci_pconnect(
- $this->mUser,
- $this->mPassword,
- $this->mServer,
+ if ( $this->flags & DBO_PERSISTENT ) {
+ $this->conn = oci_pconnect(
+ $this->user,
+ $this->password,
+ $this->server,
$this->defaultCharset,
$session_mode
);
- } elseif ( $this->mFlags & DBO_DEFAULT ) {
- $this->mConn = oci_new_connect(
- $this->mUser,
- $this->mPassword,
- $this->mServer,
+ } elseif ( $this->flags & DBO_DEFAULT ) {
+ $this->conn = oci_new_connect(
+ $this->user,
+ $this->password,
+ $this->server,
$this->defaultCharset,
$session_mode
);
} else {
- $this->mConn = oci_connect(
- $this->mUser,
- $this->mPassword,
- $this->mServer,
+ $this->conn = oci_connect(
+ $this->user,
+ $this->password,
+ $this->server,
$this->defaultCharset,
$session_mode
);
}
Wikimedia\restoreWarnings();
- if ( $this->mUser != $this->mDBname ) {
+ if ( $this->user != $this->dbName ) {
// change current schema in session
- $this->selectDB( $this->mDBname );
+ $this->selectDB( $this->dbName );
}
- if ( !$this->mConn ) {
+ if ( !$this->conn ) {
throw new DBConnectionError( $this, $this->lastError() );
}
- $this->mOpened = true;
+ $this->opened = true;
# removed putenv calls because they interfere with the system globaly
$this->doQuery( 'ALTER SESSION SET NLS_TIMESTAMP_FORMAT=\'DD-MM-YYYY HH24:MI:SS.FF6\'' );
$this->doQuery( 'ALTER SESSION SET NLS_TIMESTAMP_TZ_FORMAT=\'DD-MM-YYYY HH24:MI:SS.FF6\'' );
$this->doQuery( 'ALTER SESSION SET NLS_NUMERIC_CHARACTERS=\'.,\'' );
- return $this->mConn;
+ return $this->conn;
}
/**
@@ -181,11 +181,11 @@ class DatabaseOracle extends Database {
* @return bool
*/
protected function closeConnection() {
- return oci_close( $this->mConn );
+ return oci_close( $this->conn );
}
function execFlags() {
- return $this->mTrxLevel ? OCI_NO_AUTO_COMMIT : OCI_COMMIT_ON_SUCCESS;
+ return $this->trxLevel ? OCI_NO_AUTO_COMMIT : OCI_COMMIT_ON_SUCCESS;
}
protected function doQuery( $sql ) {
@@ -217,9 +217,9 @@ class DatabaseOracle extends Database {
Wikimedia\suppressWarnings();
- $this->mLastResult = $stmt = oci_parse( $this->mConn, $sql );
+ $this->mLastResult = $stmt = oci_parse( $this->conn, $sql );
if ( $stmt === false ) {
- $e = oci_error( $this->mConn );
+ $e = oci_error( $this->conn );
$this->reportQueryError( $e['message'], $e['code'], $sql, __METHOD__ );
return false;
@@ -335,20 +335,20 @@ class DatabaseOracle extends Database {
}
function lastError() {
- if ( $this->mConn === false ) {
+ if ( $this->conn === false ) {
$e = oci_error();
} else {
- $e = oci_error( $this->mConn );
+ $e = oci_error( $this->conn );
}
return $e['message'];
}
function lastErrno() {
- if ( $this->mConn === false ) {
+ if ( $this->conn === false ) {
$e = oci_error();
} else {
- $e = oci_error( $this->mConn );
+ $e = oci_error( $this->conn );
}
return $e['code'];
@@ -470,9 +470,9 @@ class DatabaseOracle extends Database {
}
$sql .= ')';
- $this->mLastResult = $stmt = oci_parse( $this->mConn, $sql );
+ $this->mLastResult = $stmt = oci_parse( $this->conn, $sql );
if ( $stmt === false ) {
- $e = oci_error( $this->mConn );
+ $e = oci_error( $this->conn );
$this->reportQueryError( $e['message'], $e['code'], $sql, __METHOD__ );
return false;
@@ -502,7 +502,7 @@ class DatabaseOracle extends Database {
}
} else {
/** @var OCI_Lob[] $lob */
- $lob[$col] = oci_new_descriptor( $this->mConn, OCI_D_LOB );
+ $lob[$col] = oci_new_descriptor( $this->conn, OCI_D_LOB );
if ( $lob[$col] === false ) {
$e = oci_error( $stmt );
throw new DBUnexpectedError( $this, "Cannot create LOB descriptor: " . $e['message'] );
@@ -545,8 +545,8 @@ class DatabaseOracle extends Database {
}
}
- if ( !$this->mTrxLevel ) {
- oci_commit( $this->mConn );
+ if ( !$this->trxLevel ) {
+ oci_commit( $this->conn );
}
return oci_free_statement( $stmt );
@@ -658,13 +658,13 @@ class DatabaseOracle extends Database {
FROM all_sequences asq, all_tab_columns atc
WHERE decode(
atc.table_name,
- '{$this->mTablePrefix}MWUSER',
- '{$this->mTablePrefix}USER',
+ '{$this->tablePrefix}MWUSER',
+ '{$this->tablePrefix}USER',
atc.table_name
) || '_' ||
- atc.column_name || '_SEQ' = '{$this->mTablePrefix}' || asq.sequence_name
- AND asq.sequence_owner = upper('{$this->mDBname}')
- AND atc.owner = upper('{$this->mDBname}')" );
+ atc.column_name || '_SEQ' = '{$this->tablePrefix}' || asq.sequence_name
+ AND asq.sequence_owner = upper('{$this->dbName}')
+ AND atc.owner = upper('{$this->dbName}')" );
while ( ( $row = $result->fetchRow() ) !== false ) {
$this->sequenceData[$row[1]] = [
@@ -730,9 +730,9 @@ class DatabaseOracle extends Database {
$newName = strtoupper( $newName );
$oldName = strtoupper( $oldName );
- $tabName = substr( $newName, strlen( $this->mTablePrefix ) );
+ $tabName = substr( $newName, strlen( $this->tablePrefix ) );
$oldPrefix = substr( $oldName, 0, strlen( $oldName ) - strlen( $tabName ) );
- $newPrefix = strtoupper( $this->mTablePrefix );
+ $newPrefix = strtoupper( $this->tablePrefix );
return $this->doQuery( "BEGIN DUPLICATE_TABLE( '$tabName', " .
"'$oldPrefix', '$newPrefix', $temporary ); END;" );
@@ -744,7 +744,7 @@ class DatabaseOracle extends Database {
$listWhere = ' AND table_name LIKE \'' . strtoupper( $prefix ) . '%\'';
}
- $owner = strtoupper( $this->mDBname );
+ $owner = strtoupper( $this->dbName );
$result = $this->doQuery( "SELECT table_name FROM all_tables " .
"WHERE owner='$owner' AND table_name NOT LIKE '%!_IDX\$_' ESCAPE '!' $listWhere" );
@@ -805,7 +805,7 @@ class DatabaseOracle extends Database {
);
$row = $rset->fetchRow();
if ( !$row ) {
- return oci_server_version( $this->mConn );
+ return oci_server_version( $this->conn );
}
return $row['version'];
@@ -822,7 +822,7 @@ class DatabaseOracle extends Database {
$table = $this->tableName( $table );
$table = strtoupper( $this->removeIdentifierQuotes( $table ) );
$index = strtoupper( $index );
- $owner = strtoupper( $this->mDBname );
+ $owner = strtoupper( $this->dbName );
$sql = "SELECT 1 FROM all_indexes WHERE owner='$owner' AND index_name='{$table}_{$index}'";
$res = $this->doQuery( $sql );
if ( $res ) {
@@ -844,7 +844,7 @@ class DatabaseOracle extends Database {
function tableExists( $table, $fname = __METHOD__ ) {
$table = $this->tableName( $table );
$table = $this->addQuotes( strtoupper( $this->removeIdentifierQuotes( $table ) ) );
- $owner = $this->addQuotes( strtoupper( $this->mDBname ) );
+ $owner = $this->addQuotes( strtoupper( $this->dbName ) );
$sql = "SELECT 1 FROM all_tables WHERE owner=$owner AND table_name=$table";
$res = $this->doQuery( $sql );
if ( $res && $res->numRows() > 0 ) {
@@ -890,7 +890,7 @@ class DatabaseOracle extends Database {
}
$fieldInfoStmt = oci_parse(
- $this->mConn,
+ $this->conn,
'SELECT * FROM wiki_field_info_full WHERE table_name ' .
$tableWhere . ' and column_name = \'' . $field . '\''
);
@@ -935,25 +935,25 @@ class DatabaseOracle extends Database {
}
protected function doBegin( $fname = __METHOD__ ) {
- $this->mTrxLevel = 1;
+ $this->trxLevel = 1;
$this->doQuery( 'SET CONSTRAINTS ALL DEFERRED' );
}
protected function doCommit( $fname = __METHOD__ ) {
- if ( $this->mTrxLevel ) {
- $ret = oci_commit( $this->mConn );
+ if ( $this->trxLevel ) {
+ $ret = oci_commit( $this->conn );
if ( !$ret ) {
throw new DBUnexpectedError( $this, $this->lastError() );
}
- $this->mTrxLevel = 0;
+ $this->trxLevel = 0;
$this->doQuery( 'SET CONSTRAINTS ALL IMMEDIATE' );
}
}
protected function doRollback( $fname = __METHOD__ ) {
- if ( $this->mTrxLevel ) {
- oci_rollback( $this->mConn );
- $this->mTrxLevel = 0;
+ if ( $this->trxLevel ) {
+ oci_rollback( $this->conn );
+ $this->trxLevel = 0;
$this->doQuery( 'SET CONSTRAINTS ALL IMMEDIATE' );
}
}
@@ -1041,12 +1041,12 @@ class DatabaseOracle extends Database {
}
function selectDB( $db ) {
- $this->mDBname = $db;
- if ( $db == null || $db == $this->mUser ) {
+ $this->dbName = $db;
+ if ( $db == null || $db == $this->user ) {
return true;
}
$sql = 'ALTER SESSION SET CURRENT_SCHEMA=' . strtoupper( $db );
- $stmt = oci_parse( $this->mConn, $sql );
+ $stmt = oci_parse( $this->conn, $sql );
Wikimedia\suppressWarnings();
$success = oci_execute( $stmt );
Wikimedia\restoreWarnings();
@@ -1179,13 +1179,16 @@ class DatabaseOracle extends Database {
}
public function delete( $table, $conds, $fname = __METHOD__ ) {
+ global $wgActorTableSchemaMigrationStage;
+
if ( is_array( $conds ) ) {
$conds = $this->wrapConditionsForWhere( $table, $conds );
}
// a hack for deleting pages, users and images (which have non-nullable FKs)
// all deletions on these tables have transactions so final failure rollbacks these updates
+ // @todo: Normalize the schema to match MySQL, no special FKs and such
$table = $this->tableName( $table );
- if ( $table == $this->tableName( 'user' ) ) {
+ if ( $table == $this->tableName( 'user' ) && $wgActorTableSchemaMigrationStage < MIGRATION_NEW ) {
$this->update( 'archive', [ 'ar_user' => 0 ],
[ 'ar_user' => $conds['user_id'] ], $fname );
$this->update( 'ipblocks', [ 'ipb_user' => 0 ],
@@ -1245,9 +1248,9 @@ class DatabaseOracle extends Database {
$sql .= ' WHERE ' . $this->makeList( $conds, LIST_AND );
}
- $this->mLastResult = $stmt = oci_parse( $this->mConn, $sql );
+ $this->mLastResult = $stmt = oci_parse( $this->conn, $sql );
if ( $stmt === false ) {
- $e = oci_error( $this->mConn );
+ $e = oci_error( $this->conn );
$this->reportQueryError( $e['message'], $e['code'], $sql, __METHOD__ );
return false;
@@ -1276,7 +1279,7 @@ class DatabaseOracle extends Database {
}
} else {
/** @var OCI_Lob[] $lob */
- $lob[$col] = oci_new_descriptor( $this->mConn, OCI_D_LOB );
+ $lob[$col] = oci_new_descriptor( $this->conn, OCI_D_LOB );
if ( $lob[$col] === false ) {
$e = oci_error( $stmt );
throw new DBUnexpectedError( $this, "Cannot create LOB descriptor: " . $e['message'] );
@@ -1319,8 +1322,8 @@ class DatabaseOracle extends Database {
}
}
- if ( !$this->mTrxLevel ) {
- oci_commit( $this->mConn );
+ if ( !$this->trxLevel ) {
+ oci_commit( $this->conn );
}
return oci_free_statement( $stmt );
@@ -1340,11 +1343,11 @@ class DatabaseOracle extends Database {
}
function getDBname() {
- return $this->mDBname;
+ return $this->dbName;
}
function getServer() {
- return $this->mServer;
+ return $this->server;
}
public function buildGroupConcatField(
diff --git a/includes/deferred/DeferredUpdates.php b/includes/deferred/DeferredUpdates.php
index 3c4833c7f0..9b25d53820 100644
--- a/includes/deferred/DeferredUpdates.php
+++ b/includes/deferred/DeferredUpdates.php
@@ -106,10 +106,10 @@ class DeferredUpdates {
*
* @param callable $callable
* @param int $stage DeferredUpdates constant (PRESEND or POSTSEND) (since 1.27)
- * @param IDatabase|null $dbw Abort if this DB is rolled back [optional] (since 1.28)
+ * @param IDatabase|IDatabase[]|null $dbw Abort if this DB is rolled back [optional] (since 1.28)
*/
public static function addCallableUpdate(
- $callable, $stage = self::POSTSEND, IDatabase $dbw = null
+ $callable, $stage = self::POSTSEND, $dbw = null
) {
self::addUpdate( new MWCallableUpdate( $callable, wfGetCaller(), $dbw ), $stage );
}
diff --git a/includes/deferred/SiteStatsUpdate.php b/includes/deferred/SiteStatsUpdate.php
index 44876a68ef..79aab7d099 100644
--- a/includes/deferred/SiteStatsUpdate.php
+++ b/includes/deferred/SiteStatsUpdate.php
@@ -25,6 +25,8 @@ use Wikimedia\Rdbms\IDatabase;
* Class for handling updates to the site_stats table
*/
class SiteStatsUpdate implements DeferrableUpdate, MergeableUpdate {
+ /** @var BagOStuff */
+ protected $stash;
/** @var int */
protected $edits = 0;
/** @var int */
@@ -44,6 +46,8 @@ class SiteStatsUpdate implements DeferrableUpdate, MergeableUpdate {
$this->articles = $good;
$this->pages = $pages;
$this->users = $users;
+
+ $this->stash = MediaWikiServices::getInstance()->getMainObjectStash();
}
public function merge( MergeableUpdate $update ) {
@@ -72,11 +76,9 @@ class SiteStatsUpdate implements DeferrableUpdate, MergeableUpdate {
}
public function doUpdate() {
- global $wgSiteStatsAsyncFactor;
-
$this->doUpdateContextStats();
- $rate = $wgSiteStatsAsyncFactor; // convenience
+ $rate = MediaWikiServices::getInstance()->getMainConfig()->get( 'SiteStatsAsyncFactor' );
// If set to do so, only do actual DB updates 1 every $rate times.
// The other times, just update "pending delta" values in memcached.
if ( $rate && ( $rate < 0 || mt_rand( 0, $rate - 1 ) != 0 ) ) {
@@ -91,16 +93,15 @@ class SiteStatsUpdate implements DeferrableUpdate, MergeableUpdate {
* Do not call this outside of SiteStatsUpdate
*/
public function tryDBUpdateInternal() {
- global $wgSiteStatsAsyncFactor;
+ $services = MediaWikiServices::getInstance();
+ $config = $services->getMainConfig();
- $dbw = wfGetDB( DB_MASTER );
- $lockKey = wfWikiID() . ':site_stats'; // prepend wiki ID
+ $dbw = $services->getDBLoadBalancer()->getConnection( DB_MASTER );
+ $lockKey = $dbw->getDomainID() . ':site_stats'; // prepend wiki ID
$pd = [];
- if ( $wgSiteStatsAsyncFactor ) {
+ if ( $config->get( 'SiteStatsAsyncFactor' ) ) {
// Lock the table so we don't have double DB/memcached updates
- if ( !$dbw->lockIsFree( $lockKey, __METHOD__ )
- || !$dbw->lock( $lockKey, __METHOD__, 1 ) // 1 sec timeout
- ) {
+ if ( !$dbw->lock( $lockKey, __METHOD__, 0 ) ) {
$this->doUpdatePendingDeltas();
return;
@@ -125,7 +126,7 @@ class SiteStatsUpdate implements DeferrableUpdate, MergeableUpdate {
$dbw->update( 'site_stats', [ $updates ], [], __METHOD__ );
}
- if ( $wgSiteStatsAsyncFactor ) {
+ if ( $config->get( 'SiteStatsAsyncFactor' ) ) {
// Decrement the async deltas now that we applied them
$this->removePendingDeltas( $pd );
// Commit the updates and unlock the table
@@ -140,23 +141,28 @@ class SiteStatsUpdate implements DeferrableUpdate, MergeableUpdate {
* @param IDatabase $dbw
* @return bool|mixed
*/
- public static function cacheUpdate( $dbw ) {
- global $wgActiveUserDays;
- $dbr = wfGetDB( DB_REPLICA, 'vslow' );
+ public static function cacheUpdate( IDatabase $dbw ) {
+ $services = MediaWikiServices::getInstance();
+ $config = $services->getMainConfig();
+
+ $dbr = $services->getDBLoadBalancer()->getConnection( DB_REPLICA, 'vslow' );
# Get non-bot users than did some recent action other than making accounts.
# If account creation is included, the number gets inflated ~20+ fold on enwiki.
+ $rcQuery = RecentChange::getQueryInfo();
$activeUsers = $dbr->selectField(
- 'recentchanges',
- 'COUNT( DISTINCT rc_user_text )',
+ $rcQuery['tables'],
+ 'COUNT( DISTINCT ' . $rcQuery['fields']['rc_user_text'] . ' )',
[
'rc_type != ' . $dbr->addQuotes( RC_EXTERNAL ), // Exclude external (Wikidata)
- 'rc_user != 0',
+ ActorMigration::newMigration()->isNotAnon( $rcQuery['fields']['rc_user'] ),
'rc_bot' => 0,
'rc_log_type != ' . $dbr->addQuotes( 'newusers' ) . ' OR rc_log_type IS NULL',
- 'rc_timestamp >= ' . $dbr->addQuotes( $dbr->timestamp( wfTimestamp( TS_UNIX )
- - $wgActiveUserDays * 24 * 3600 ) ),
+ 'rc_timestamp >= ' . $dbr->addQuotes(
+ $dbr->timestamp( time() - $config->get( 'ActiveUserDays' ) * 24 * 3600 ) ),
],
- __METHOD__
+ __METHOD__,
+ [],
+ $rcQuery['joins']
);
$dbw->update(
'site_stats',
@@ -208,13 +214,13 @@ class SiteStatsUpdate implements DeferrableUpdate, MergeableUpdate {
}
/**
- * @param BagOStuff $cache
+ * @param BagOStuff $stash
* @param string $type
* @param string $sign ('+' or '-')
* @return string
*/
- private function getTypeCacheKey( BagOStuff $cache, $type, $sign ) {
- return $cache->makeKey( 'sitestatsupdate', 'pendingdelta', $type, $sign );
+ private function getTypeCacheKey( BagOStuff $stash, $type, $sign ) {
+ return $stash->makeKey( 'sitestatsupdate', 'pendingdelta', $type, $sign );
}
/**
@@ -224,15 +230,14 @@ class SiteStatsUpdate implements DeferrableUpdate, MergeableUpdate {
* @param int $delta Delta (positive or negative)
*/
protected function adjustPending( $type, $delta ) {
- $cache = MediaWikiServices::getInstance()->getMainObjectStash();
if ( $delta < 0 ) { // decrement
- $key = $this->getTypeCacheKey( $cache, $type, '-' );
+ $key = $this->getTypeCacheKey( $this->stash, $type, '-' );
} else { // increment
- $key = $this->getTypeCacheKey( $cache, $type, '+' );
+ $key = $this->getTypeCacheKey( $this->stash, $type, '+' );
}
$magnitude = abs( $delta );
- $cache->incrWithInit( $key, 0, $magnitude, $magnitude );
+ $this->stash->incrWithInit( $key, 0, $magnitude, $magnitude );
}
/**
@@ -240,16 +245,20 @@ class SiteStatsUpdate implements DeferrableUpdate, MergeableUpdate {
* @return array Positive and negative deltas for each type
*/
protected function getPendingDeltas() {
- $cache = MediaWikiServices::getInstance()->getMainObjectStash();
-
$pending = [];
foreach ( [ 'ss_total_edits',
'ss_good_articles', 'ss_total_pages', 'ss_users', 'ss_images' ] as $type
) {
// Get pending increments and pending decrements
$flg = BagOStuff::READ_LATEST;
- $pending[$type]['+'] = (int)$cache->get( $this->getTypeCacheKey( $cache, $type, '+' ), $flg );
- $pending[$type]['-'] = (int)$cache->get( $this->getTypeCacheKey( $cache, $type, '-' ), $flg );
+ $pending[$type]['+'] = (int)$this->stash->get(
+ $this->getTypeCacheKey( $this->stash, $type, '+' ),
+ $flg
+ );
+ $pending[$type]['-'] = (int)$this->stash->get(
+ $this->getTypeCacheKey( $this->stash, $type, '-' ),
+ $flg
+ );
}
return $pending;
@@ -260,12 +269,11 @@ class SiteStatsUpdate implements DeferrableUpdate, MergeableUpdate {
* @param array $pd Result of getPendingDeltas(), used for DB update
*/
protected function removePendingDeltas( array $pd ) {
- $cache = MediaWikiServices::getInstance()->getMainObjectStash();
-
foreach ( $pd as $type => $deltas ) {
foreach ( $deltas as $sign => $magnitude ) {
// Lower the pending counter now that we applied these changes
- $cache->decr( $this->getTypeCacheKey( $cache, $type, $sign ), $magnitude );
+ $key = $this->getTypeCacheKey( $this->stash, $type, $sign );
+ $this->stash->decr( $key, $magnitude );
}
}
}
diff --git a/includes/diff/DifferenceEngine.php b/includes/diff/DifferenceEngine.php
index e76bffcace..fa30d68655 100644
--- a/includes/diff/DifferenceEngine.php
+++ b/includes/diff/DifferenceEngine.php
@@ -658,11 +658,6 @@ class DifferenceEngine extends ContextSource {
*/
protected function getParserOutput( WikiPage $page, Revision $rev ) {
$parserOptions = $page->makeParserOptions( $this->getContext() );
-
- if ( !$rev->isCurrent() || !$rev->getTitle()->quickUserCan( 'edit', $this->getUser() ) ) {
- $parserOptions->setEditSection( false );
- }
-
$parserOutput = $page->getParserOutput( $parserOptions, $rev->getId() );
return $parserOutput;
diff --git a/includes/exception/CannotCreateActorException.php b/includes/exception/CannotCreateActorException.php
new file mode 100644
index 0000000000..7c7ccfc4fc
--- /dev/null
+++ b/includes/exception/CannotCreateActorException.php
@@ -0,0 +1,29 @@
+getText();
// T17602: STDERR may not be available
- if ( defined( 'STDERR' ) ) {
+ if ( !defined( 'MW_PHPUNIT_TEST' ) && defined( 'STDERR' ) ) {
fwrite( STDERR, $message );
} else {
echo $message;
diff --git a/includes/export/WikiExporter.php b/includes/export/WikiExporter.php
index 6ce55eaa4e..6c7a449372 100644
--- a/includes/export/WikiExporter.php
+++ b/includes/export/WikiExporter.php
@@ -227,15 +227,20 @@ class WikiExporter {
$this->author_list = "$1
.",
diff --git a/includes/installer/i18n/bg.json b/includes/installer/i18n/bg.json
index 9030febb91..44c673b93a 100644
--- a/includes/installer/i18n/bg.json
+++ b/includes/installer/i18n/bg.json
@@ -65,7 +65,7 @@
"config-apc": "[http://www.php.net/apc APC] е инÑÑалиÑан",
"config-apcu": "[http://www.php.net/apc APC] е инÑÑалиÑан",
"config-wincache": "[https://www.iis.net/download/WinCacheForPhp WinCache] е инÑÑалиÑан",
- "config-no-cache-apcu": "Ðнимание: [http://www.php.net/apcu APCu], [http://xcache.lighttpd.net/ XCache] и [http://www.iis.net/download/WinCacheForPhp WinCache] не Ð¼Ð¾Ð³Ð°Ñ Ð´Ð° бÑÐ´Ð°Ñ Ð¾ÑкÑиÑи.\nÐеÑиÑанеÑо на обекÑи не е акÑивиÑано.",
+ "config-no-cache-apcu": "Ðнимание: [http://www.php.net/apcu APCu] и [http://www.iis.net/download/WinCacheForPhp WinCache] не Ð¼Ð¾Ð³Ð°Ñ Ð´Ð° бÑÐ´Ð°Ñ Ð¾ÑкÑиÑи.\nÐеÑиÑанеÑо на обекÑи не е акÑивиÑано.",
"config-mod-security": "ÐÑедÑпÑеждение: [https://modsecurity.org/ mod_security]/mod_security2 е вклÑÑено на ваÑÐ¸Ñ Ñеб ÑÑÑвÑÑ. Ðного Ð¾Ñ Ð¾Ð±Ð¸ÑайниÑе Ð¼Ñ ÐºÐ¾Ð½ÑигÑÑаÑии поÑÐ°Ð¶Ð´Ð°Ñ Ð¿Ñоблеми Ñ ÐедиÑУики и дÑÑг ÑоÑÑÑеÑ, койÑо позволÑва пÑбликÑване на пÑоизволно ÑÑдÑÑжание.\nÐко е вÑзможно, Ð¼Ð¾Ð»Ñ Ð¸Ð·ÐºÐ»ÑÑеÑе го. РпÑоÑивен ÑлÑÑай Ñе обÑÑнеÑе кÑм [https://modsecurity.org/documentation/ докÑменÑаÑиÑÑа на mod_security] или Ñе ÑвÑÑжеÑе Ñ Ð¿Ð¾Ð´Ð´ÑÑжкаÑа на Ñ
оÑÑинга Ñи, ако Ñе ÑблÑÑкаÑе ÑÑÑ ÑлÑÑайни гÑеÑки.",
"config-diff3-bad": "GNU diff3 не беÑе намеÑен.",
"config-git": "ÐалиÑна е ÑиÑÑемаÑа за конÑÑол на веÑÑииÑе Git: $1
.",
@@ -251,7 +251,7 @@
"config-cache-options": "ÐаÑÑÑойки за обекÑноÑо кеÑиÑане:",
"config-cache-help": "ÐбекÑноÑо кеÑиÑане Ñе използва за подобÑÑване на ÑкоÑоÑÑÑа на ÐедиÑУики ÑÑез кеÑиÑане на ÑеÑÑо използваниÑе данни.\nСилно пÑепоÑÑÑиÑелно е на ÑÑедниÑе и големиÑе ÑайÑове да вклÑÑÐ°Ñ Ñази наÑÑÑойка, но малкиÑе ÑÑÑо Ð¼Ð¾Ð³Ð°Ñ Ð´Ð° Ñе вÑÐ·Ð¿Ð¾Ð»Ð·Ð²Ð°Ñ Ð¾Ñ Ð½ÐµÑ.",
"config-cache-none": "Ðез кеÑиÑане (не Ñе пÑемаÑ
ва Ð¾Ñ ÑÑнкÑионалноÑÑÑа, но Ñова влиÑе на ÑкоÑоÑÑÑа на по-големи ÑикиÑа)",
- "config-cache-accel": "PHP обекÑно кеÑиÑане (APC, APCu, XCache или WinCache)",
+ "config-cache-accel": "PHP обекÑно кеÑиÑане (APC, APCu или WinCache)",
"config-cache-memcached": "Ðзползване на Memcached (изиÑква допÑлниÑелни наÑÑÑойки и конÑигÑÑиÑане)",
"config-memcached-servers": "Memcached ÑÑÑвÑÑи:",
"config-memcached-help": "СпиÑÑк Ñ IP адÑеÑи за използване за Memcached.\nÐеобÑ
одимо е да бÑÐ´Ð°Ñ Ñазделени по един на Ñед, какÑо и да е поÑоÑен поÑÑа. ÐÑимеÑ:\n127.0.0.1:11211\n192.168.1.25:1234",
diff --git a/includes/installer/i18n/es-formal.json b/includes/installer/i18n/es-formal.json
index b15c7f252f..da63fdcb3d 100644
--- a/includes/installer/i18n/es-formal.json
+++ b/includes/installer/i18n/es-formal.json
@@ -2,8 +2,18 @@
"@metadata": {
"authors": [
"Dferg",
- "Seb35"
+ "Seb35",
+ "MarcoAurelio"
]
},
- "mainpagedocfooter": "Consulte usted la [https://meta.wikimedia.org/wiki/Help:Contents/es GuÃa de usuario] para obtener información sobre el uso del software wiki.\n\n== Empezando ==\n* [https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:Configuration_settings Lista de ajustes de configuración]\n* [https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:FAQ/es FAQ de MediaWiki]\n* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Lista de correo de anuncios de distribución de MediaWiki]\n* [https://www.mediawiki.org/wiki/Special:MyLanguage/Localisation#Translation_resources Regionalizar MediaWiki para su idioma]"
+ "config-localsettings-upgrade": "Se ha encontrado un archivo LocalSettings.php
.\nPara actualizar esta instalación, escriba el valor de $wgUpgradeKey
en el cuadro de abajo.\nLo encontrará en LocalSettings.php
.",
+ "config-localsettings-cli-upgrade": "Se ha detectado un archivo LocalSettings.php
.\nPara actualizar la instalación, en su lugar ejecute update.php
",
+ "config-localsettings-connection-error": "Se ha producido un error al conectar con la base de datos a través de la configuración especificada en LocalSettings.php
. Corrija estos ajustes e inténtelo de nuevo.\n\n$1",
+ "config-your-language-help": "Seleccione un idioma para usar durante el proceso de instalación.",
+ "config-page-welcome": "Le damos la bienvenida a MediaWiki.",
+ "config-page-readme": "Léame",
+ "config-help-restart": "¿Desea borrar todos los datos guardados que ha escrito y reiniciar el proceso de instalación?",
+ "config-env-good": "El entorno ha sido comprobado.\nPuede instalar MediaWiki.",
+ "config-env-bad": "El entorno ha sido comprobado.\nNo puede instalar MediaWiki.",
+ "mainpagedocfooter": "Consulte la [https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Contents guÃa] para obtener información sobre el uso del software wiki.\n\n== Primeros pasos ==\n* [https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:Configuration_settings Lista de ajustes de configuración]\n* [https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:FAQ Preguntas frecuentes sobre MediaWiki]\n* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Lista de correo de anuncios de publicación de MediaWiki]\n* [https://www.mediawiki.org/wiki/Special:MyLanguage/Localisation#Translation_resources Traducir MediaWiki a su idioma]\n* [https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:Combating_spam Aprenda a combatir el spam en su wiki]"
}
diff --git a/includes/installer/i18n/es.json b/includes/installer/i18n/es.json
index 05df002535..c07bdc6b45 100644
--- a/includes/installer/i18n/es.json
+++ b/includes/installer/i18n/es.json
@@ -80,7 +80,7 @@
"config-env-bad": "El entorno ha sido comprobado.\nNo puedes instalar MediaWiki.",
"config-env-php": "PHP $1 está instalado.",
"config-env-hhvm": "HHVM $1 está instalado.",
- "config-unicode-using-intl": "Usando la [https://pecl.php.net/intl extensión intl PECL] para la normalización Unicode.",
+ "config-unicode-using-intl": "Se utiliza la [https://pecl.php.net/intl extensión «intl» de PECL] para la normalización Unicode.",
"config-unicode-pure-php-warning": "Advertencia: la [https://pecl.php.net/intl extensión intl] no está disponible para efectuar la normalización Unicode. Se utilizará la implementación más lenta en PHP puro.\nSi tu web tiene mucho tráfico, te recomendamos leer acerca de la [https://www.mediawiki.org/wiki/Special:MyLanguage/Unicode_normalization_considerations normalización Unicode].",
"config-unicode-update-warning": "Atención: la versión instalada del contenedor de normalización de Unicode utiliza una versión anticuada de la biblioteca del [http://site.icu-project.org/ proyecto ICU].\nDeberÃas [https://www.mediawiki.org/wiki/Special:MyLanguage/Unicode_normalization_considerations modernizarla] si te interesa utilizar Unicode.",
"config-no-db": "No se encontró un controlador adecuado para la base de datos. Necesitas instalar un controlador de base de datos para PHP.\n{{PLURAL:$2|Se admite el siguiente gestor de bases de datos|Se admiten los siguientes gestores de bases de datos}}: $1.\n\nSi compilaste PHP por tu cuenta, debes reconfigurarlo activando un cliente de base de datos, por ejemplo, mediante ./configure --with-mysqli
.\nSi instalaste PHP desde un paquete de Debian o Ubuntu, también debes instalar, por ejemplo, el paquete php5-mysql
.",
diff --git a/includes/installer/i18n/fi.json b/includes/installer/i18n/fi.json
index c1332b15eb..1b9a146792 100644
--- a/includes/installer/i18n/fi.json
+++ b/includes/installer/i18n/fi.json
@@ -24,7 +24,7 @@
"Pyscowicz"
]
},
- "config-desc": "MediaWiki-asennin",
+ "config-desc": "Asennin MediaWikiä varten",
"config-title": "MediaWikin version $1 asennus",
"config-information": "Tiedot",
"config-localsettings-upgrade": "LocalSettings.php
-tiedosto havaittiin.\nKirjoita muuttujan $wgUpgradeKey
arvo alla olevaan kenttään päivittääksesi asennuksen.\nLöydät sen LocalSettings.php
-tiedostosta.",
@@ -37,7 +37,7 @@
"config-session-error": "Istunnon aloittaminen epäonnistui: $1",
"config-session-expired": "Istuntotietosi näyttävät olevan vanhentuneita.\nIstuntojen elinajaksi on määritelty $1.\nVoit muuttaa tätä asetusta vaihtamalla kohtaa session.gc_maxlifetime
php.ini-tiedostossa.\nKäynnistä asennusprosessi uudelleen.",
"config-no-session": "Istuntosi tiedot menetettiin!\nTarkista php.ini-tiedostosi ja varmista, että session.save_path
on asetettu sopivaan kansioon.",
- "config-your-language": "Asennuksen kieli",
+ "config-your-language": "Kielesi:",
"config-your-language-help": "Valitse kieli, jota haluat käyttää asennuksen ajan.",
"config-wiki-language": "Wikin kieli",
"config-wiki-language-help": "Valitse kieli, jota wikissä tullaan etupäässä käyttämään.",
@@ -91,17 +91,17 @@
"config-no-cli-uploads-check": "Varoitus: Tiedostojen lähetyshakemistoa ($1
) ei ole tarkistettu haavoittuvuuksien varalta komentoriviasennuksen aikana.",
"config-brokenlibxml": "Järjestelmässäsi on käytössä PHP:n ja libxml2:n versioyhdistelmä, joka ei toimi kunnolla ja voi aiheuttaa tiedon vahingoittumista MediaWikissä ja muissa web-sovelluksissa.\nPäivitä libxml2 versioon 2.7.3 tai uudempaan ([https://bugs.php.net/bug.php?id=45996 bug filed with PHP]).\nAsennus keskeytetty.",
"config-suhosin-max-value-length": "Suhosin on asennettu ja se rajoittaa GET-parametrin length
$1 tavuun.\nMediaWikin ResourceLoader-komponentti pystyy toimimaan tämän kanssa, mutta ohjelmiston suorituskyky heikkenee.\nMikäli mahdollista, aseta muuttuja suhosin.get.max_value_length
arvoon 1024 (tai suurempaan) tiedostossa php.ini
ja aseta myös $wgResourceLoaderMaxQueryLength
samaksi arvoksi tiedostossa LocalSettings.php
.",
- "config-db-type": "Tietokannan tyyppi",
- "config-db-host": "Tietokantapalvelin",
+ "config-db-type": "Tietokannan tyyppi:",
+ "config-db-host": "Tietokantapalvelin:",
"config-db-host-help": "Jos tietokantapalvelimesi sijaitsee eri palvelimella, syötä palvelimen nimi tai ip-osoite tähän.\n\nJos käytössäsi on ulkoinen palveluntarjoaja, pitäisi palvelimen nimen löytyä yrityksen ohjesivuilta.\n\nJos asennat MediaWikiä Windows-palvelimelle ja käytät MySQL:ää ei palvelimen nimi \"localhost\" välttämättä toimi. Tässä tapauksessa koita käyttää osoitetta 127.0.0.1.\n\nJos käytät PostgreSQL:ää jätä tämä kenttä tyhjäksi.",
"config-db-host-oracle": "Tietokannan TNS:",
"config-db-wiki-settings": "Identifioi tämä wiki",
- "config-db-name": "Tietokannan nimi",
+ "config-db-name": "Tietokannan nimi:",
"config-db-name-help": "Valitse wikiäsi kuvaava nimi.\nNimessä ei saa olla välilyöntejä.\n\nMikäli et pysty itse hallitsemaan tietokantojasi, pyydä palveluntarjoajaasi luomaan tietokanta tai tee se palveluntarjoajasi hallintapaneelissa.",
"config-db-name-oracle": "Tietokannan rakenne:",
"config-db-install-account": "Asennuksessa käytettävä käyttäjätili",
- "config-db-username": "Tietokannan käyttäjätunnus",
- "config-db-password": "Tietokannan salasana",
+ "config-db-username": "Tietokannan käyttäjätunnus:",
+ "config-db-password": "Tietokannan salasana:",
"config-db-install-username": "Syötä käyttäjänimi jota käytetään muodostettaessa yhteys tietokantaan asennuksen aikana.\nTämä ei ole MediaWiki tilin käyttäjänimi; tämä on tietokannan käyttäjänimi.",
"config-db-install-password": "Syötä salasana jota käytetään muodostettaessa yhteys tietokantaan asennuksen aikana.\nTämä ei ole MediaWiki tilin salasana; tämä on tietokannan salasana.",
"config-db-install-help": "Anna käyttäjätunnus ja salasana, joita käytetään asennuksen aikana.",
@@ -176,10 +176,10 @@
"config-mssql-web-auth": "Valitse varmennuksen tyyppi, jota verkkopalvelin käyttää yhdistäessään tietokantapalvelimeen wikin tavallisen toiminnan aikana.\nJos valitset \"{{int:config-mssql-windowsauth}}\", käytetään verkkopalvelimen käyttäjän kirjautumistietoja.",
"config-mssql-sqlauth": "SQL Server varmennus",
"config-mssql-windowsauth": "Windows-varmennus",
- "config-site-name": "Wikin nimi",
+ "config-site-name": "Wikin nimi:",
"config-site-name-help": "Tämä näkyy selaimen otsikkona ja muissa kohdissa.",
"config-site-name-blank": "Kirjoita sivuston nimi.",
- "config-project-namespace": "Projektinimiavaruus",
+ "config-project-namespace": "Projektinimiavaruus:",
"config-ns-generic": "Projekti",
"config-ns-site-name": "Sama kuin wikin nimi: $1",
"config-ns-other": "Muu (määritä)",
@@ -189,14 +189,14 @@
"config-ns-conflict": "Määritelty nimiavaruus \"$2
",
@@ -239,7 +239,7 @@
"config-upload-enable": "Ota käyttöön tiedostojen lataaminen",
"config-upload-deleted": "Poistettujen tiedostojen hakemisto:",
"config-upload-deleted-help": "Valitse hakemisto johon poistetut tiedostot arkistoidaan.\nHakemiston ei tulisi olla käytettävissä internetverkosta.",
- "config-logo": "Logon URL-osoite",
+ "config-logo": "Logon URL-osoite:",
"config-logo-help": "MediaWikin oletusulkoasussa on paikka 135x160 pikselin kokoiselle logolle sivupalkin yläpuolella.\nTallenna sopivan kokoinen kuva ja lisää URL tähän.\n\nVoit käyttää muuttujia $wgStylePath
tai $wgScriptPath
, jos logosi on määritelty suhteessa näihin polkuihin.\n\nJos et halua logoa, jätä tämä kenttä tyhjäksi.",
"config-instantcommons": "Aktivoi Instant Commons",
"config-instantcommons-help": "[https://www.mediawiki.org/wiki/InstantCommons Instant Commons] on ominaisuus, joka antaa wikien käyttää kuvia, ääniä ja muuta mediaa [https://commons.wikimedia.org/ Wikimedia Commons] -sivustolta.\nTehdäkseen tämän MediaWiki tarvitsee Internet-yhteyden.\n\nLisätietoja tästä ominaisuudesta, mukaan lukien ohjeet, kuinka sen voi asettaa muille wikeille kuin Wikimedia Commons, löytyy [https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:$wgForeignFileRepos ohjeista].",
@@ -293,6 +293,7 @@
"config-install-keys": "Muodostetaan salausavaimia",
"config-insecure-keys": "Varoitus: Asennuksen aikana {{PLURAL:$2|luotu turva-avain|luodut turva-avaimet}} ($1) {{PLURAL:$2|ei|eivät}} ole täysin {{PLURAL:$2|turvallinen|turvallisia}}. Harkitse {{PLURAL:$2|sen|niiden}} muuttamista manuaalisesti.",
"config-install-updates": "Estä tarpeettomien päivitysten asennus",
+ "config-install-updates-failed": "Virhe: Päivitysavainten lisääminen taulukoihin epäonnistui seuraavalla virheellä: $1",
"config-install-sysop": "Luodaan ylläpitäjän tiliä",
"config-install-subscribe-fail": "Liittyminen mediawiki-announce listalle epäonnistui: $1",
"config-install-subscribe-notpossible": "cURL-ohjelmaa ei ole asennettu eikä allow_url_fopen
ole saatavilla.",
@@ -302,6 +303,7 @@
"config-install-mainpage-failed": "Etusivun lisääminen ei onnistunut: $1",
"config-install-done": "Onnittelut!\nOlet asentanut MediaWikin.\n\nAsennusohjelma on luonut LocalSettings.php
-tiedoston.\nSiinä on kaikki MediaWikin asetukset.\n\nLataa tiedosto ja laita se MediaWikin asennushakemistoon (sama kuin missä on index.php). Lataamisen olisi pitänyt alkaa automaattisesti.\n\nMikäli latausta ei tarjottu tai keskeytit latauksen, käynnistä se uudestaan tästä linkistä:\n\n$3\n\nHuom: Mikäli et nyt lataa tiedostoa, luotu tiedosto ei ole saatavissa myöhemmin, jos poistut asennuksesta lataamatta sitä.\n\nKun olet laittanut tiedoston oikeaan paikkaan, voit [$2 mennä wikiisi].",
"config-install-done-path": "Onnittelut!\nOlet asentanut MediaWikin.\n\nAsennusohjelma on luonut LocalSettings.php
-tiedoston.\nSiinä on kaikki MediaWikin asetukset.\n\nLataa tiedosto ja laita se sijaintiin $4
. Lataamisen olisi pitänyt alkaa automaattisesti.\n\nMikäli latausta ei tarjottu tai keskeytit latauksen, käynnistä se uudestaan tästä linkistä:\n\n$3\n\nHuom: Mikäli et nyt lataa tiedostoa, luotu tiedosto ei ole saatavissa myöhemmin, jos poistut asennuksesta lataamatta sitä.\n\nKun olet laittanut tiedoston oikeaan paikkaan, voit [$2 mennä wikiisi].",
+ "config-install-success": "MediaWiki on asennettu onnistuneesti. Voit nyt vierailla <$1$2> katsellaksesi wikiäsi. Jos sinulla on kysyttävää, \ntutustu usein kysyttyjen kysymysten luetteloon: LocalSettings.php
",
"config-help": "ohje",
"config-help-tooltip": "Klikkaa laajentaaksesi",
diff --git a/includes/installer/i18n/ia.json b/includes/installer/i18n/ia.json
index d20b3e7b87..a7ede0ae54 100644
--- a/includes/installer/i18n/ia.json
+++ b/includes/installer/i18n/ia.json
@@ -3,7 +3,8 @@
"authors": [
"McDutchie",
"ìë¼",
- "Macofe"
+ "Macofe",
+ "Fanjiayi"
]
},
"config-desc": "Le installator de MediaWiki",
@@ -62,8 +63,8 @@
"config-apc": "[http://www.php.net/apc APC] es installate",
"config-apcu": "[http://www.php.net/apcu APCu] es installate",
"config-wincache": "[https://www.iis.net/download/WinCacheForPhp WinCache] es installate",
- "config-no-cache-apcu": "Attention: Impossibile trovar [http://www.php.net/apcu APCu], [http://xcache.lighttpd.net/ XCache] o [http://www.iis.net/download/WinCacheForPhp WinCache].\nLe cache de objectos non es activate.",
- "config-mod-security": "'''Attention''': [https://modsecurity.org/ mod_security] es active in tu servitor web. Si mal configurate, isto pote causar problemas pro MediaWiki o altere software que permitte al usatores de publicar contento arbitrari.\nConsulta le [https://modsecurity.org/documentation/ documentation de mod_security] o contacta le servicio de adjuta de tu host si tu incontra estranie errores.",
+ "config-no-cache-apcu": "Attention: Impossibile trovar [http://www.php.net/apcu APCu] o [http://www.iis.net/download/WinCacheForPhp WinCache].\nLe cache de objectos non es activate.",
+ "config-mod-security": "Attention: [https://modsecurity.org/ mod_security]/mod_security2 es active in tu servitor web. Multe configurationes commun de isto causa problemas pro MediaWiki o altere software que permitte al usatores de publicar contento arbitrari. Si possibile, isto deberea esser disactivate.\nAlteremente, consulta le [https://modsecurity.org/documentation/ documentation de mod_security] o contacta le servicio de adjuta de tu servitor si tu incontra estranie errores.",
"config-diff3-bad": "GNU diff3 non trovate.",
"config-git": "Systema de controlo de version Git trovate: $1
",
"config-git-bad": "Systema de controlo de version Git non trovate.",
@@ -251,7 +252,7 @@
"config-cache-options": "Configuration del cache de objectos:",
"config-cache-help": "Le cache de objectos es usate pro meliorar le rapiditate de MediaWiki per immagazinar le datos frequentemente usate.\nLe sitos medie o grande es multo incoragiate de activar isto, ma anque le sitos parve percipera le beneficios.",
"config-cache-none": "Nulle cache (nulle functionalitate es removite, ma le rapiditate pote diminuer in grande sitos wiki)",
- "config-cache-accel": "Cache de objectos PHP (APC, APCu, XCache o WinCache)",
+ "config-cache-accel": "Cache de objectos PHP (APC, APCu o WinCache)",
"config-cache-memcached": "Usar Memcached (require additional installation e configuration)",
"config-memcached-servers": "Servitores Memcached:",
"config-memcached-help": "Lista de adresses IP a usar pro Memcached.\nDebe specificar un per linea e specificar le porto a usar. Per exemplo:\n 127.0.0.1:11211\n 192.168.1.25:1234",
diff --git a/includes/installer/i18n/ja.json b/includes/installer/i18n/ja.json
index 9262dd078d..42ccdc5df6 100644
--- a/includes/installer/i18n/ja.json
+++ b/includes/installer/i18n/ja.json
@@ -22,7 +22,8 @@
"Foresttttttt",
"ãã¤",
"Suchichi02",
- "Omotecho"
+ "Omotecho",
+ "Yusuke1109"
]
},
"config-desc": "MediaWiki ã®ã¤ã³ã¹ãã¼ã©ã¼",
@@ -81,7 +82,7 @@
"config-apc": "[http://www.php.net/apc APC] ãã¤ã³ã¹ãã¼ã«æ¸ã¿",
"config-apcu": "[http://www.php.net/apc APC] ãã¤ã³ã¹ãã¼ã«æ¸ã¿ã§ãã",
"config-wincache": "[https://www.iis.net/download/WinCacheForPhp WinCache] ãã¤ã³ã¹ãã¼ã«æ¸ã¿",
- "config-no-cache-apcu": "è¦å: [http://www.php.net/apcu APCu]ã [http://xcache.lighttpd.net/ XCache]ã [http://www.iis.net/download/WinCacheForPhp WinCache] ã®ããããè¦ã¤ããã¾ããã§ããã\nãªãã¸ã§ã¯ãã®ãã£ãã·ã¥ã¯æå¹åããã¾ããã",
+ "config-no-cache-apcu": "è¦å: [http://www.php.net/apcu APCu]ã [http://www.iis.net/download/WinCacheForPhp WinCache] ã®ããããè¦ã¤ããã¾ããã§ããã\nãªãã¸ã§ã¯ãã®ãã£ãã·ã¥ã¯æå¹åããã¾ããã",
"config-mod-security": "è¦å: ããªãã®ã¦ã§ããµã¼ãã¼ã§ã¯ [https://modsecurity.org/ mod_security] ãæå¹ã«ãªã£ã¦ãã¾ããæ£ããæ§æããã¦ããªãå ´åã¯ãMediaWiki ãå©ç¨è
ã«ã³ã³ãã³ãã®æ稿ã許å¯ãããã®ä»ã®ã½ããã¦ã§ã¢ã«åé¡ãçºçããå ´åãããã¾ãã\n[https://modsecurity.org/documentation/ mod_security ã®èª¬æææ¸]ã確èªããããã©ã³ãã ãªã¨ã©ã¼ãçºçããå ´åã¯ããªãã®ãã¹ãã®ãµãã¼ãã«ãåãåãããã ããã",
"config-diff3-bad": "GNU diff3 ãè¦ã¤ããã¾ããã",
"config-git": "ãã¼ã¸ã§ã³ç®¡çã½ããã¦ã§ã¢ Git ãè¦ã¤ããã¾ãã: $1
",
@@ -97,6 +98,7 @@
"config-no-cli-uploads-check": "è¦å: ã¢ãããã¼ãç¨ã®ããã©ã«ããã£ã¬ã¯ã㪠($1
) ããCLIã§ã®ã¤ã³ã¹ãã¼ã«ä¸ã«ä»»æã®ã¹ã¯ãªããå®è¡ã®èå¼±æ§ãã§ãã¯ãåãã¦ãã¾ããã",
"config-brokenlibxml": "ãã®ã·ã¹ãã ã§ä½¿ããã¦ããPHPã¨libxml2ã®ãã¼ã¸ã§ã³ã®ãã®çµã¿åããã«ã¯ãã°ãããã¾ããå
·ä½çã«ã¯ãMediaWikiããã®ä»ã®ã¦ã§ãã¢ããªã±ã¼ã·ã§ã³ã§hiddenãã¼ã¿ãç ´æããå¯è½æ§ãããã¾ãã\nlibxml2ã2.7.3以éã®ãã¼ã¸ã§ã³ã«ã¢ããã°ã¬ã¼ããã¦ãã ãã([https://bugs.php.net/bug.php?id=45996 PHPã§ã®ãã°æ
å ±])ã\nã¤ã³ã¹ãã¼ã«ãçµäºãã¾ãã",
"config-suhosin-max-value-length": "Suhosin ãã¤ã³ã¹ãã¼ã«ããã¦ãããGET ãã©ã¡ã¼ã¿ã¼ã® length
ã $1 ãã¤ãã«å¶éãã¦ãã¾ãã\nMediaWiki ã® ResourceLoader ã³ã³ãã¼ãã³ãã¯ãã®å¶éãåé¿ãã¾ãããããã©ã¼ãã³ã¹ã¯ä½ä¸ãã¾ãã\nå¯è½ãªéããphp.ini
㧠suhosin.get.max_value_length
ã 1024 以ä¸ã«è¨å®ããåãå¤ã LocalSettings.php
å
㧠$wgResourceLoaderMaxQueryLength
ã«è¨å®ãã¦ãã ããã",
+ "config-using-32bit": "è¦å:ã·ã¹ãã ã32ãããã§åä½ãã¦ããããã§ãã ããã¯[https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:32-bit éæ¨å¥¨]ã§ãã",
"config-db-type": "ãã¼ã¿ãã¼ã¹ã®ç¨®é¡:",
"config-db-host": "ãã¼ã¿ãã¼ã¹ã®ãã¹ã:",
"config-db-host-help": "ç°ãªããµã¼ãã¼ä¸ã«ãã¼ã¿ãã¼ã¹ãµã¼ãã¼ãããå ´åããã¹ãåã¾ãã¯IPã¢ãã¬ã¹ãããã«å
¥åãã¦ãã ããã\n\nãããå
±æãããã¦ã§ããã¹ãã£ã³ã°ã使ç¨ãã¦ããå ´åããã¹ãã£ã³ã°ãããã¤ãã¼ã¯æ£ç¢ºãªãã¹ãåã解説ãã¦ããã¯ãã§ãã\n\nWindowsã§MySQLã使ç¨ãã¦ããå ´åã«ããlocalhostãã¯ããµã¼ãã¼åã¨ãã¦ã¯ãã¾ãåããªãã§ãããããããã®ãããªå ´åã¯ããã¼ã«ã«IPã¢ãã¬ã¹ã¨ãã¦ã127.0.0.1ãã試ãã¦ã¿ã¦ãã ããã\n\nPostgreSQLã使ç¨ãã¦ããå ´åãUNIXã½ã±ããã§æ¥ç¶ããã«ã¯ãã®æ¬ã空æ¬ã®ã¾ã¾ã«ãã¦ãã ããã",
@@ -269,7 +271,7 @@
"config-cache-options": "ãªãã¸ã§ã¯ãã®ãã£ãã·ã¥ã®è¨å®:",
"config-cache-help": "ãªãã¸ã§ã¯ãã®ãã£ãã·ã¥ã使ç¨ããã¨ãé »ç¹ã«ä½¿ç¨ãããã¼ã¿ããã£ãã·ã¥ãããã MediaWiki ã®åä½é度ãæ¹åã§ãã¾ãã\nä¸ã大è¦æ¨¡ãµã¤ãã§ã¯ãããæå¹ã«ãããã¨ãå¼·ããå§ããã¾ããå°è¦æ¨¡ãµã¤ãã§ãåæ§ã«å¹æãããã¾ãã",
"config-cache-none": "ãã£ãã·ã³ã°ããªã(æ©è½ã¯åãæããã¾ããããããã大ããªã¦ã£ããµã¤ãä¸ã§ã¹ãã¼ãã®åé¡ãçºçãã¾ã)",
- "config-cache-accel": "PHPãªãã¸ã§ã¯ããã£ãã·ã¥ (APCãAPCuãXCacheãWinCache ã®ãããã)",
+ "config-cache-accel": "PHPãªãã¸ã§ã¯ããã£ãã·ã¥ (APCãAPCuãWinCache ã®ãããã)",
"config-cache-memcached": "memcached ãä½¿ç¨ (追å ã®è¨å®ãå¿
è¦)",
"config-memcached-servers": "memcached ãµã¼ãã¼:",
"config-memcached-help": "Memcachedã使ç¨ããIPã¢ãã¬ã¹ã®ä¸è¦§ã\nã«ã³ãåºåãã§ãå©ç¨ããç¹å®ã®ãã¼ãã®æå®ãå¿
è¦ã§ããä¾:\n127.0.0.1:11211\n192.168.1.25:1234",
@@ -325,6 +327,7 @@
"config-install-mainpage-failed": "ã¡ã¤ã³ãã¼ã¸ãæ¿å
¥ã§ãã¾ããã§ãã: $1",
"config-install-done": "ããã§ã¨ããããã¾ã!\nMediaWikiã®ã¤ã³ã¹ãã¼ã«ã«æåãã¾ããã\n\nLocalSettings.php
ãã¡ã¤ã«ãçæããã¾ããã\nãã®ãã¡ã¤ã«ã¯ãã¹ã¦ã®è¨å®ãå«ãã§ãã¾ãã\n\nããããã¦ã³ãã¼ããã¦ãã¦ã£ããã¤ã³ã¹ãã¼ã«ããåºæºãã£ã¬ã¯ã㪠(index.phpã¨åããã£ã¬ã¯ããª) ã«è¨ç½®ããå¿
è¦ãããã¾ãããã¦ã³ãã¼ãã¯èªåçã«éå§ãããã¯ãã§ãã\n\nãã¦ã³ãã¼ããéå§ããã¦ããªãå ´åãã¾ãã¯ãã¦ã³ãã¼ãããã£ã³ã»ã«ããå ´åã¯ãä¸è¨ã®ãªã³ã¯ãã¯ãªãã¯ãã¦ãã¦ã³ãã¼ããåéã§ãã¾ã:\n\n$3\n\n注æ: ãã®çæãããè¨å®ãã¡ã¤ã«ããã¦ã³ãã¼ãããã«ã¤ã³ã¹ãã¼ã«ãçµäºããã¨ããã®ãã¡ã¤ã«ã¯å©ç¨ã§ããªããªãã¾ãã\n\nä¸è¨ã®ä½æ¥ãå®äºããã¨ã[$2 ã¦ã£ãã«å
¥ã]ãã¨ãã§ãã¾ãã",
"config-install-done-path": "ããã§ã¨ããããã¾ã!\nMediaWikiã®ã¤ã³ã¹ãã¼ã«ã«æåãã¾ããã\n\nLocalSettings.php
ãã¡ã¤ã«ãçæããã¾ããã\nãã®ãã¡ã¤ã«ã¯ãã¹ã¦ã®è¨å®ãå«ãã§ãã¾ãã\n\nããããã¦ã³ãã¼ããã¦ã$4
ã«è¨ç½®ããå¿
è¦ãããã¾ãããã¦ã³ãã¼ãã¯èªåçã«éå§ãããã¯ãã§ãã\n\nãã¦ã³ãã¼ããéå§ããã¦ããªãå ´åãã¾ãã¯ãã¦ã³ãã¼ãããã£ã³ã»ã«ããå ´åã¯ãä¸è¨ã®ãªã³ã¯ãã¯ãªãã¯ãã¦ãã¦ã³ãã¼ããåéã§ãã¾ã:\n\n$3\n\n注æ: ãã®çæãããè¨å®ãã¡ã¤ã«ããã¦ã³ãã¼ãããã«ã¤ã³ã¹ãã¼ã«ãçµäºããã¨ããã®ãã¡ã¤ã«ã¯å©ç¨ã§ããªããªãã¾ãã\n\nä¸è¨ã®ä½æ¥ãå®äºããã¨ã[$2 ã¦ã£ãã«å
¥ã]ãã¨ãã§ãã¾ãã",
+ "config-install-success": "MediaWikiãæ£å¸¸ã«ã¤ã³ã¹ãã¼ã«ããã¾ããã\nä»ãã<$1$2>ã«ã¢ã¯ã»ã¹ãã¦ããªãã®wikiã表示ã§ãã¾ãã\nã質åãããå ´åã¯ããããã質åãªã¹ããã覧ãã ãã:\nLocalSettings.php
ããã¦ã³ãã¼ã",
"config-help": "ãã«ã",
"config-help-tooltip": "ã¯ãªãã¯ã§å±é",
diff --git a/includes/installer/i18n/nan.json b/includes/installer/i18n/nan.json
index b3aa13737b..953b672aa3 100644
--- a/includes/installer/i18n/nan.json
+++ b/includes/installer/i18n/nan.json
@@ -2,7 +2,8 @@
"@metadata": {
"authors": [
"Ianbu",
- "åå訶德çä¾å¾"
+ "åå訶德çä¾å¾",
+ "Yoxem"
]
},
"config-desc": "MediaWikiçå®è£ç¨å¼",
@@ -13,7 +14,7 @@
"config-localsettings-key": "Seng-kip--ê biÌt-bé:",
"config-localsettings-badkey": "Là phah--ê biÌt-bé bô chèng-khak.",
"config-upgrade-key-missing": "å·²ç¶æä¸ä¸ªMediaWikiç£ãè¥è¦åç´ï¼è«å
±ä¸é¢ééå å»LocalSettings.php
çä¸è·¤ï¼\n\n$1",
- "config-localsettings-incomplete": "é馬çLocalSettings.php
å¯è½ç¡é½å
¨ï¼å çºç¡è¨è®é$1ãè«ä½LocalSettings.php
è¨å½¼ä¸ªè®éï¼ä¸¦ä¸æ¤ã{{int:Config-continue}}ãã",
+ "config-localsettings-incomplete": "Chit-má--ê LocalSettings.php
khó-lêng bô chiâu-chnÌg, in-Å«i bô siat piÄn-liÅng $1. Chhiá⿠tÄ« LocalSettings.php
siat hit-ê piÄn-liÅng, pÄng-chhiá chhiÌh \"{{int:Config-continue}}\".",
"config-localsettings-connection-error": "An error was encountered when connecting to the database ç¨LocalSettings.php
çè¨å®å»é£æ¥è³æ庫çæé£æä¸ä¸ªé¯èª¤ç¼çï¼è«æ¹é®çè¨å®äºï¼æé£è©¦ã\n\n$1",
"config-session-error": "é£ç·éå§äºçé¯èª¤ï¼$1",
"config-session-expired": "ä½ é£ç·è³æå·²ç¶éæç£ï¼é£ç·ç使ç¨æéæ¯è¨å$1ãä½ æ使æ¹å
±php.iniçsession.gc_maxlifetime
æ¹è¼é·ï¼ä¸¦ä¸éæ°å®è£åä½ã",
@@ -42,17 +43,17 @@
"config-help-restart": "ä½ æ¢æ¬²å
±ä½ æçä½®ä¿åçè³æææ¸
æï¼ä¸¦ä¸ééå§å®è£çåä½ï¼",
"config-restart": "æ¯ï¼éä¾",
"config-welcome": "=== ç°å¢æª¢æ¸¬ ===\né馬欲ååºæ¬ç檢測ï¼çç°å¢æ¯æ¯æ¯é©åè£ MediaWikiã\nè¥ä½ æææ¯æ´ï¼æè£æèµ·ä¾ï¼è«å
±é®çè³è¨è¨èµ·ä¾ã",
- "config-copyright": "=== çæ¬è²æä½®ææ¬æ¢æ¬¾ ===\n\n$1\n\næ¬ç¨å¼æ¯èªç±è»é«ï¼ä½ æç¶ç
§èªç±è»é«åºéææç¼è¡¨ç GNU éç¨å
Œ
±ææ¬æ¢æ¬¾è¦å®ï¼å
±æ¬ç¨å¼éæ°ç¼ä½ææ¯ä¿®æ¹ï¼ç¡è«ä½ æ¯ç
§æ¬ææ¬æ¢æ¬¾ç第äºçæ第äºç以å¾çä»»ä½çæ¬(ä½ æç¶å®¶å·±é¸) ã\n\næ¬ç¨å¼ç¼ä½çç®çæ¯å¸ææç¶æä¾å¹«å©ï¼ä½æ¯ ç¡è² ä»»ä½æä¿è²¬ä»»ï¼æç¡è¡¨ç¤ºè¬å° è²©è³£æ§ æ ç¹å®ç¨éçé©ç¨æ§ çæ
å½¢æä¿ã詳æ
è«åç
§ GNU éç¨å
Œ
±ææ¬ã\n\nä½ æ該已é¨æ¬ç¨å¼æ¶è ./configure --with-mysqli
æ令åæ¸ã\nå¦ä½ æ¯ç¨ Debian æ Ubuntu çå¥ä»¶å®è£ï¼ä½ èéè¦é£å¦å¤å®è£ï¼ä¾ï¼php5-mysql
å¥ä»¶ã",
- "config-outdated-sqlite": "è¦åï¼ä½ å·²ç¶å®è£ SQLite $1ï¼æ¯é£ä¼ççæ¬æ¯æç¶è£ççæ¬ $2é£è¼èãæä»¥ä½ ç¡æ³åº¦ç¨ SQLiteã",
- "config-no-fts3": "è¦åï¼ SQLite ä½ç·¨è¯çæé£ç¡å
æ¬ [//sqlite.org/fts3.html FTS3 模çµ]ï¼å¾å°ææ£åè½å°±æç¡æ³åº¦ç¨ã",
+ "config-outdated-sqlite": "Kéng-kò: Là Ã-keng an-chng SQLite $1, mÌ-koh i--ê pán-pún pà thang-chng--ê pán-pún $2 khah kÅ«. SóÍ-à là bô-hoat-tÅÍ Äng SQLite.",
+ "config-no-fts3": "Kéng-kò: SQLite tÄ« pian-eÌk--ê sî-chÅ«n bô pau-koat [//sqlite.org/fts3.html FTS3 module], Äu-tâi chhiau-chhoÄ kong-lêng tiÅ Ä bô-hoat-tÅÍ iÅng.",
"mainpagetext": "'''MediaWikiå·²ç¶è£å¥½ç£ã'''",
"mainpagedocfooter": "è«æ¥ç[https://meta.wikimedia.org/wiki/Help:Contents ç¨è
說ææ¸]çè³æé使ç¨wiki è»é«\n\n== å
¥é ==\n* [https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:Configuration_settings é
ç½®çè¨å®]\n* [https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:FAQ MediaWikiæ常åç]\n* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWikiçå
¬å¸åå®]"
}
diff --git a/includes/installer/i18n/sv.json b/includes/installer/i18n/sv.json
index 74b8ac19e8..0ca73d3d8f 100644
--- a/includes/installer/i18n/sv.json
+++ b/includes/installer/i18n/sv.json
@@ -68,7 +68,7 @@
"config-apc": "[http://www.php.net/apc APC] är installerat",
"config-apcu": "[http://www.php.net/apcu APCu] är installerat",
"config-wincache": "[https://www.iis.net/download/WinCacheForPhp WinCache] är installerat",
- "config-no-cache-apcu": "'''Varning:''' Kunde inte hitta [http://www.php.net/apcu APCu], [http://xcache.lighttpd.net/ XCache] eller [http://www.iis.net/download/WinCacheForPhp WinCache].\nCachelagring av objekt är inte aktiverat.",
+ "config-no-cache-apcu": "Varning: Kunde inte hitta [http://www.php.net/apcu APCu] eller [http://www.iis.net/download/WinCacheForPhp WinCache].\nCachelagring av objekt är inte aktiverat.",
"config-mod-security": "'''Varning:''' Din webbserver har [https://modsecurity.org/ mod_security] aktiverat. Om felaktigt konfigurerat kan den skapa problem för MediaWiki eller annan programvara som tillåter användaren att posta godtyckligt innehåll.\nTitta på [https://modsecurity.org/documentation/ mod_security-dokumentationen] eller kontakta din värd om du påträffar slumpmässiga fel.",
"config-diff3-bad": "GNU diff3 hittades inte.",
"config-git": "Hittade Git-mjukvara för versionskontroll: $1
.",
@@ -254,7 +254,7 @@
"config-cache-options": "Inställningar för cachelagring av objekt:",
"config-cache-help": "Cachelagring av objekt används för att förbättra hastigheten på MediaWiki genom att cachelagra data som används ofta.\nMedelstora till stora webbplatser är starkt uppmuntrade att aktivera detta, och små webbplatser kommer även att se fördelar.",
"config-cache-none": "Ingen cachelagring (ingen funktionalitet tas bort, men hastighet kan påverkas på större wiki-webbplatser)",
- "config-cache-accel": "Cachelagring av PHP-objekt (APC, APCu, XCache eller WinCache)",
+ "config-cache-accel": "Cachelagring av PHP-objekt (APC, APCu eller WinCache)",
"config-cache-memcached": "Använda Memcached (kräver ytterligare inställningar och konfiguration)",
"config-memcached-servers": "Memcached-servrar:",
"config-memcached-help": "Lista över IP-adresser som ska användas för Memcached.\nBör ange en per rad och specificera den port som ska användas. Till exempel:\n 127.0.0.1:11211\n 192.168.1.25:1234",
diff --git a/includes/jobqueue/jobs/RecentChangesUpdateJob.php b/includes/jobqueue/jobs/RecentChangesUpdateJob.php
index a92ae96074..77daca7676 100644
--- a/includes/jobqueue/jobs/RecentChangesUpdateJob.php
+++ b/includes/jobqueue/jobs/RecentChangesUpdateJob.php
@@ -76,10 +76,9 @@ class RecentChangesUpdateJob extends Job {
$lockKey = wfWikiID() . ':recentchanges-prune';
$dbw = wfGetDB( DB_MASTER );
- if ( !$dbw->lockIsFree( $lockKey, __METHOD__ )
- || !$dbw->lock( $lockKey, __METHOD__, 1 )
- ) {
- return; // already in progress
+ if ( !$dbw->lock( $lockKey, __METHOD__, 0 ) ) {
+ // already in progress
+ return;
}
$factory = MediaWikiServices::getInstance()->getDBLoadBalancerFactory();
@@ -138,7 +137,7 @@ class RecentChangesUpdateJob extends Job {
$dbw->setSessionOptions( [ 'connTimeout' => 900 ] );
$lockKey = wfWikiID() . '-activeusers';
- if ( !$dbw->lockIsFree( $lockKey, __METHOD__ ) || !$dbw->lock( $lockKey, __METHOD__, 1 ) ) {
+ if ( !$dbw->lock( $lockKey, __METHOD__, 0 ) ) {
// Exclusive update (avoids duplicate entries)⦠it's usually fine to just drop out here,
// if the Job is already running.
return;
@@ -159,11 +158,15 @@ class RecentChangesUpdateJob extends Job {
$eTimestamp = min( $sTimestamp + $window, $nowUnix );
// Get all the users active since the last update
+ $actorQuery = ActorMigration::newMigration()->getJoin( 'rc_user' );
$res = $dbw->select(
- [ 'recentchanges' ],
- [ 'rc_user_text', 'lastedittime' => 'MAX(rc_timestamp)' ],
+ [ 'recentchanges' ] + $actorQuery['tables'],
[
- 'rc_user > 0', // actual accounts
+ 'rc_user_text' => $actorQuery['fields']['rc_user_text'],
+ 'lastedittime' => 'MAX(rc_timestamp)'
+ ],
+ [
+ $actorQuery['fields']['rc_user'] . ' > 0', // actual accounts
'rc_type != ' . $dbw->addQuotes( RC_EXTERNAL ), // no wikidata
'rc_log_type IS NULL OR rc_log_type != ' . $dbw->addQuotes( 'newusers' ),
'rc_timestamp >= ' . $dbw->addQuotes( $dbw->timestamp( $sTimestamp ) ),
@@ -173,7 +176,8 @@ class RecentChangesUpdateJob extends Job {
[
'GROUP BY' => [ 'rc_user_text' ],
'ORDER BY' => 'NULL' // avoid filesort
- ]
+ ],
+ $actorQuery['joins']
);
$names = [];
foreach ( $res as $row ) {
diff --git a/includes/jobqueue/jobs/UserGroupExpiryJob.php b/includes/jobqueue/jobs/UserGroupExpiryJob.php
new file mode 100644
index 0000000000..0945e58f16
--- /dev/null
+++ b/includes/jobqueue/jobs/UserGroupExpiryJob.php
@@ -0,0 +1,39 @@
+removeDuplicates = true;
+ }
+
+ /**
+ * Run the job
+ * @return bool Success
+ */
+ public function run() {
+ UserGroupMembership::purgeExpired();
+
+ return true;
+ }
+}
diff --git a/includes/libs/CSSMin.php b/includes/libs/CSSMin.php
index f2c7ed29f0..3d1c8b800d 100644
--- a/includes/libs/CSSMin.php
+++ b/includes/libs/CSSMin.php
@@ -535,8 +535,8 @@ class CSSMin {
public static function minify( $css ) {
return trim(
str_replace(
- [ '; ', ': ', ' {', '{ ', ', ', '} ', ';}' ],
- [ ';', ':', '{', '{', ',', '}', '}' ],
+ [ '; ', ': ', ' {', '{ ', ', ', '} ', ';}', '( ', ' )', '[ ', ' ]' ],
+ [ ';', ':', '{', '{', ',', '}', '}', '(', ')', '[', ']' ],
preg_replace( [ '/\s+/', '/\/\*.*?\*\//s' ], [ ' ', '' ], $css )
)
);
diff --git a/includes/libs/DeferredStringifier.php b/includes/libs/DeferredStringifier.php
index a6fd11a433..94704133ae 100644
--- a/includes/libs/DeferredStringifier.php
+++ b/includes/libs/DeferredStringifier.php
@@ -22,6 +22,7 @@
/**
* @since 1.25
+ * @deprecated since 1.31, use Message::listParam() instead
*/
class DeferredStringifier {
/** @var callable Callback used for result string generation */
diff --git a/includes/libs/objectcache/IExpiringStore.php b/includes/libs/objectcache/IExpiringStore.php
index 0e09f16f04..7bab20a3b9 100644
--- a/includes/libs/objectcache/IExpiringStore.php
+++ b/includes/libs/objectcache/IExpiringStore.php
@@ -30,6 +30,7 @@
*/
interface IExpiringStore {
// Constants for TTL values, in seconds
+ const TTL_SECOND = 1;
const TTL_MINUTE = 60;
const TTL_HOUR = 3600;
const TTL_DAY = 86400; // 24 * 3600
diff --git a/includes/libs/objectcache/WANObjectCache.php b/includes/libs/objectcache/WANObjectCache.php
index eec766b9d7..17f596d6b8 100644
--- a/includes/libs/objectcache/WANObjectCache.php
+++ b/includes/libs/objectcache/WANObjectCache.php
@@ -517,18 +517,18 @@ class WANObjectCache implements IExpiringStore, LoggerAwareInterface {
// Case B: any long-running transaction; ignore this set()
} elseif ( $age > self::MAX_READ_LAG ) {
$this->logger->info( 'Rejected set() for {cachekey} due to snapshot lag.',
- [ 'cachekey' => $key ] );
+ [ 'cachekey' => $key, 'lag' => $lag, 'age' => $age ] );
return true; // no-op the write for being unsafe
// Case C: high replication lag; lower TTL instead of ignoring all set()s
} elseif ( $lag === false || $lag > self::MAX_READ_LAG ) {
$ttl = $ttl ? min( $ttl, self::TTL_LAGGED ) : self::TTL_LAGGED;
$this->logger->warning( 'Lowered set() TTL for {cachekey} due to replication lag.',
- [ 'cachekey' => $key ] );
+ [ 'cachekey' => $key, 'lag' => $lag, 'age' => $age ] );
// Case D: medium length request with medium replication lag; ignore this set()
} else {
$this->logger->info( 'Rejected set() for {cachekey} due to high read lag.',
- [ 'cachekey' => $key ] );
+ [ 'cachekey' => $key, 'lag' => $lag, 'age' => $age ] );
return true; // no-op the write for being unsafe
}
@@ -1536,7 +1536,7 @@ class WANObjectCache implements IExpiringStore, LoggerAwareInterface {
}
/**
- * Locally set a key to expire soon if it is stale based on $purgeTimestamp
+ * Set a key to soon expire in the local cluster if it pre-dates $purgeTimestamp
*
* This sets stale keys' time-to-live at HOLDOFF_TTL seconds, which both avoids
* broadcasting in mcrouter setups and also avoids races with new tombstones.
@@ -1568,7 +1568,7 @@ class WANObjectCache implements IExpiringStore, LoggerAwareInterface {
}
/**
- * Locally set a "check" key to expire soon if it is stale based on $purgeTimestamp
+ * Set a "check" key to soon expire in the local cluster if it pre-dates $purgeTimestamp
*
* @param string $key Cache key
* @param int $purgeTimestamp UNIX timestamp of purge
@@ -1581,7 +1581,7 @@ class WANObjectCache implements IExpiringStore, LoggerAwareInterface {
if ( $purge && $purge[self::FLD_TIME] < $purgeTimestamp ) {
$isStale = true;
$this->logger->warning( "Reaping stale check key '$key'." );
- $ok = $this->cache->changeTTL( self::TIME_KEY_PREFIX . $key, 1 );
+ $ok = $this->cache->changeTTL( self::TIME_KEY_PREFIX . $key, self::TTL_SECOND );
if ( !$ok ) {
$this->logger->error( "Could not complete reap of check key '$key'." );
}
@@ -1824,7 +1824,7 @@ class WANObjectCache implements IExpiringStore, LoggerAwareInterface {
'cmd' => 'set',
'key' => $key,
'val' => 'PURGED:$UNIXTIME$:' . (int)$holdoff,
- 'ttl' => max( $ttl, 1 ),
+ 'ttl' => max( $ttl, self::TTL_SECOND ),
'sbt' => true, // substitute $UNIXTIME$ with actual microtime
] );
diff --git a/includes/libs/rdbms/ChronologyProtector.php b/includes/libs/rdbms/ChronologyProtector.php
index 4fcd88599c..e11528659d 100644
--- a/includes/libs/rdbms/ChronologyProtector.php
+++ b/includes/libs/rdbms/ChronologyProtector.php
@@ -75,7 +75,7 @@ class ChronologyProtector implements LoggerAwareInterface {
public function __construct( BagOStuff $store, array $client, $posIndex = null ) {
$this->store = $store;
$this->clientId = md5( $client['ip'] . "\n" . $client['agent'] );
- $this->key = $store->makeGlobalKey( __CLASS__, $this->clientId, 'v1' );
+ $this->key = $store->makeGlobalKey( __CLASS__, $this->clientId, 'v2' );
$this->waitForPosIndex = $posIndex;
$this->logger = new NullLogger();
}
@@ -124,7 +124,7 @@ class ChronologyProtector implements LoggerAwareInterface {
$this->startupPositions[$masterName] instanceof DBMasterPos
) {
$pos = $this->startupPositions[$masterName];
- $this->logger->info( __METHOD__ . ": LB for '$masterName' set to pos $pos\n" );
+ $this->logger->debug( __METHOD__ . ": LB for '$masterName' set to pos $pos\n" );
$lb->waitFor( $pos );
}
}
@@ -148,11 +148,11 @@ class ChronologyProtector implements LoggerAwareInterface {
if ( $lb->getServerCount() > 1 ) {
$pos = $lb->getMasterPos();
if ( $pos ) {
- $this->logger->info( __METHOD__ . ": LB for '$masterName' has pos $pos\n" );
+ $this->logger->debug( __METHOD__ . ": LB for '$masterName' has pos $pos\n" );
$this->shutdownPositions[$masterName] = $pos;
}
} else {
- $this->logger->info( __METHOD__ . ": DB '$masterName' touched\n" );
+ $this->logger->debug( __METHOD__ . ": DB '$masterName' touched\n" );
}
$this->shutdownTouchDBs[$masterName] = 1;
}
@@ -186,7 +186,7 @@ class ChronologyProtector implements LoggerAwareInterface {
return []; // nothing to save
}
- $this->logger->info( __METHOD__ . ": saving master pos for " .
+ $this->logger->debug( __METHOD__ . ": saving master pos for " .
implode( ', ', array_keys( $this->shutdownPositions ) ) . "\n"
);
@@ -299,10 +299,10 @@ class ChronologyProtector implements LoggerAwareInterface {
}
$this->startupPositions = $data ? $data['positions'] : [];
- $this->logger->info( __METHOD__ . ": key is {$this->key} (read)\n" );
+ $this->logger->debug( __METHOD__ . ": key is {$this->key} (read)\n" );
} else {
$this->startupPositions = [];
- $this->logger->info( __METHOD__ . ": key is {$this->key} (unread)\n" );
+ $this->logger->debug( __METHOD__ . ": key is {$this->key} (unread)\n" );
}
}
diff --git a/includes/libs/rdbms/database/Database.php b/includes/libs/rdbms/database/Database.php
index d1814e18b5..572a798c06 100644
--- a/includes/libs/rdbms/database/Database.php
+++ b/includes/libs/rdbms/database/Database.php
@@ -59,19 +59,19 @@ abstract class Database implements IDatabase, IMaintainableDatabase, LoggerAware
const SMALL_WRITE_ROWS = 100;
/** @var string SQL query */
- protected $mLastQuery = '';
+ protected $lastQuery = '';
/** @var float|bool UNIX timestamp of last write query */
- protected $mLastWriteTime = false;
+ protected $lastWriteTime = false;
/** @var string|bool */
- protected $mPHPError = false;
+ protected $phpError = false;
/** @var string */
- protected $mServer;
+ protected $server;
/** @var string */
- protected $mUser;
+ protected $user;
/** @var string */
- protected $mPassword;
+ protected $password;
/** @var string */
- protected $mDBname;
+ protected $dbName;
/** @var array[] $aliases Map of (table => (dbname, schema, prefix) map) */
protected $tableAliases = [];
/** @var bool Whether this PHP instance is for a CLI script */
@@ -89,35 +89,33 @@ abstract class Database implements IDatabase, IMaintainableDatabase, LoggerAware
protected $errorLogger;
/** @var resource|null Database connection */
- protected $mConn = null;
+ protected $conn = null;
/** @var bool */
- protected $mOpened = false;
+ protected $opened = false;
/** @var array[] List of (callable, method name) */
- protected $mTrxIdleCallbacks = [];
+ protected $trxIdleCallbacks = [];
/** @var array[] List of (callable, method name) */
- protected $mTrxPreCommitCallbacks = [];
+ protected $trxPreCommitCallbacks = [];
/** @var array[] List of (callable, method name) */
- protected $mTrxEndCallbacks = [];
+ protected $trxEndCallbacks = [];
/** @var callable[] Map of (name => callable) */
- protected $mTrxRecurringCallbacks = [];
+ protected $trxRecurringCallbacks = [];
/** @var bool Whether to suppress triggering of transaction end callbacks */
- protected $mTrxEndCallbacksSuppressed = false;
+ protected $trxEndCallbacksSuppressed = false;
/** @var string */
- protected $mTablePrefix = '';
+ protected $tablePrefix = '';
/** @var string */
- protected $mSchema = '';
+ protected $schema = '';
/** @var int */
- protected $mFlags;
+ protected $flags;
/** @var array */
- protected $mLBInfo = [];
- /** @var bool|null */
- protected $mDefaultBigSelects = null;
+ protected $lbInfo = [];
/** @var array|bool */
- protected $mSchemaVars = false;
+ protected $schemaVars = false;
/** @var array */
- protected $mSessionVars = [];
+ protected $sessionVars = [];
/** @var array|null */
protected $preparedArgs;
/** @var string|bool|null Stashed value of html_errors INI setting */
@@ -135,94 +133,94 @@ abstract class Database implements IDatabase, IMaintainableDatabase, LoggerAware
*
* @var int
*/
- protected $mTrxLevel = 0;
+ protected $trxLevel = 0;
/**
* Either a short hexidecimal string if a transaction is active or ""
*
* @var string
- * @see Database::mTrxLevel
+ * @see Database::trxLevel
*/
- protected $mTrxShortId = '';
+ protected $trxShortId = '';
/**
* The UNIX time that the transaction started. Callers can assume that if
* snapshot isolation is used, then the data is *at least* up to date to that
* point (possibly more up-to-date since the first SELECT defines the snapshot).
*
* @var float|null
- * @see Database::mTrxLevel
+ * @see Database::trxLevel
*/
- private $mTrxTimestamp = null;
+ private $trxTimestamp = null;
/** @var float Lag estimate at the time of BEGIN */
- private $mTrxReplicaLag = null;
+ private $trxReplicaLag = null;
/**
* Remembers the function name given for starting the most recent transaction via begin().
* Used to provide additional context for error reporting.
*
* @var string
- * @see Database::mTrxLevel
+ * @see Database::trxLevel
*/
- private $mTrxFname = null;
+ private $trxFname = null;
/**
* Record if possible write queries were done in the last transaction started
*
* @var bool
- * @see Database::mTrxLevel
+ * @see Database::trxLevel
*/
- private $mTrxDoneWrites = false;
+ private $trxDoneWrites = false;
/**
* Record if the current transaction was started implicitly due to DBO_TRX being set.
*
* @var bool
- * @see Database::mTrxLevel
+ * @see Database::trxLevel
*/
- private $mTrxAutomatic = false;
+ private $trxAutomatic = false;
/**
* Array of levels of atomicity within transactions
*
* @var array
*/
- private $mTrxAtomicLevels = [];
+ private $trxAtomicLevels = [];
/**
* Record if the current transaction was started implicitly by Database::startAtomic
*
* @var bool
*/
- private $mTrxAutomaticAtomic = false;
+ private $trxAutomaticAtomic = false;
/**
* Track the write query callers of the current transaction
*
* @var string[]
*/
- private $mTrxWriteCallers = [];
+ private $trxWriteCallers = [];
/**
* @var float Seconds spent in write queries for the current transaction
*/
- private $mTrxWriteDuration = 0.0;
+ private $trxWriteDuration = 0.0;
/**
* @var int Number of write queries for the current transaction
*/
- private $mTrxWriteQueryCount = 0;
+ private $trxWriteQueryCount = 0;
/**
* @var int Number of rows affected by write queries for the current transaction
*/
- private $mTrxWriteAffectedRows = 0;
+ private $trxWriteAffectedRows = 0;
/**
- * @var float Like mTrxWriteQueryCount but excludes lock-bound, easy to replicate, queries
+ * @var float Like trxWriteQueryCount but excludes lock-bound, easy to replicate, queries
*/
- private $mTrxWriteAdjDuration = 0.0;
+ private $trxWriteAdjDuration = 0.0;
/**
- * @var int Number of write queries counted in mTrxWriteAdjDuration
+ * @var int Number of write queries counted in trxWriteAdjDuration
*/
- private $mTrxWriteAdjQueryCount = 0;
+ private $trxWriteAdjQueryCount = 0;
/**
* @var float RTT time estimate
*/
- private $mRTTEstimate = 0.0;
+ private $rttEstimate = 0.0;
/** @var array Map of (name => 1) for locks obtained via lock() */
- private $mNamedLocksHeld = [];
+ private $namedLocksHeld = [];
/** @var array Map of (table name => 1) for TEMPORARY tables */
- protected $mSessionTempTables = [];
+ protected $sessionTempTables = [];
/** @var IDatabase|null Lazy handle to the master DB this server replicates from */
private $lazyMasterHandle;
@@ -230,7 +228,7 @@ abstract class Database implements IDatabase, IMaintainableDatabase, LoggerAware
/** @var float UNIX timestamp */
protected $lastPing = 0.0;
- /** @var int[] Prior mFlags values */
+ /** @var int[] Prior flags member variable values */
private $priorFlags = [];
/** @var object|string Class name or object With profileIn/profileOut methods */
@@ -252,23 +250,23 @@ abstract class Database implements IDatabase, IMaintainableDatabase, LoggerAware
$password = $params['password'];
$dbName = $params['dbname'];
- $this->mSchema = $params['schema'];
- $this->mTablePrefix = $params['tablePrefix'];
+ $this->schema = $params['schema'];
+ $this->tablePrefix = $params['tablePrefix'];
$this->cliMode = $params['cliMode'];
// Agent name is added to SQL queries in a comment, so make sure it can't break out
$this->agent = str_replace( '/', '-', $params['agent'] );
- $this->mFlags = $params['flags'];
- if ( $this->mFlags & self::DBO_DEFAULT ) {
+ $this->flags = $params['flags'];
+ if ( $this->flags & self::DBO_DEFAULT ) {
if ( $this->cliMode ) {
- $this->mFlags &= ~self::DBO_TRX;
+ $this->flags &= ~self::DBO_TRX;
} else {
- $this->mFlags |= self::DBO_TRX;
+ $this->flags |= self::DBO_TRX;
}
}
- $this->mSessionVars = $params['variables'];
+ $this->sessionVars = $params['variables'];
$this->srvCache = isset( $params['srvCache'] )
? $params['srvCache']
@@ -290,9 +288,9 @@ abstract class Database implements IDatabase, IMaintainableDatabase, LoggerAware
}
// Set the domain object after open() sets the relevant fields
- if ( $this->mDBname != '' ) {
+ if ( $this->dbName != '' ) {
// Domains with server scope but a table prefix are not used by IDatabase classes
- $this->currentDomain = new DatabaseDomain( $this->mDBname, null, $this->mTablePrefix );
+ $this->currentDomain = new DatabaseDomain( $this->dbName, null, $this->tablePrefix );
}
}
@@ -464,9 +462,9 @@ abstract class Database implements IDatabase, IMaintainableDatabase, LoggerAware
if ( $ignoreErrors !== null ) {
// setFlag()/clearFlag() do not allow DBO_IGNORE changes for sanity
if ( $ignoreErrors ) {
- $this->mFlags |= self::DBO_IGNORE;
+ $this->flags |= self::DBO_IGNORE;
} else {
- $this->mFlags &= ~self::DBO_IGNORE;
+ $this->flags &= ~self::DBO_IGNORE;
}
}
@@ -474,19 +472,19 @@ abstract class Database implements IDatabase, IMaintainableDatabase, LoggerAware
}
public function trxLevel() {
- return $this->mTrxLevel;
+ return $this->trxLevel;
}
public function trxTimestamp() {
- return $this->mTrxLevel ? $this->mTrxTimestamp : null;
+ return $this->trxLevel ? $this->trxTimestamp : null;
}
public function tablePrefix( $prefix = null ) {
- $old = $this->mTablePrefix;
+ $old = $this->tablePrefix;
if ( $prefix !== null ) {
- $this->mTablePrefix = $prefix;
- $this->currentDomain = ( $this->mDBname != '' )
- ? new DatabaseDomain( $this->mDBname, null, $this->mTablePrefix )
+ $this->tablePrefix = $prefix;
+ $this->currentDomain = ( $this->dbName != '' )
+ ? new DatabaseDomain( $this->dbName, null, $this->tablePrefix )
: DatabaseDomain::newUnspecified();
}
@@ -494,9 +492,9 @@ abstract class Database implements IDatabase, IMaintainableDatabase, LoggerAware
}
public function dbSchema( $schema = null ) {
- $old = $this->mSchema;
+ $old = $this->schema;
if ( $schema !== null ) {
- $this->mSchema = $schema;
+ $this->schema = $schema;
}
return $old;
@@ -504,10 +502,10 @@ abstract class Database implements IDatabase, IMaintainableDatabase, LoggerAware
public function getLBInfo( $name = null ) {
if ( is_null( $name ) ) {
- return $this->mLBInfo;
+ return $this->lbInfo;
} else {
- if ( array_key_exists( $name, $this->mLBInfo ) ) {
- return $this->mLBInfo[$name];
+ if ( array_key_exists( $name, $this->lbInfo ) ) {
+ return $this->lbInfo[$name];
} else {
return null;
}
@@ -516,9 +514,9 @@ abstract class Database implements IDatabase, IMaintainableDatabase, LoggerAware
public function setLBInfo( $name, $value = null ) {
if ( is_null( $value ) ) {
- $this->mLBInfo = $name;
+ $this->lbInfo = $name;
} else {
- $this->mLBInfo[$name] = $value;
+ $this->lbInfo[$name] = $value;
}
}
@@ -544,55 +542,55 @@ abstract class Database implements IDatabase, IMaintainableDatabase, LoggerAware
}
public function lastQuery() {
- return $this->mLastQuery;
+ return $this->lastQuery;
}
public function doneWrites() {
- return (bool)$this->mLastWriteTime;
+ return (bool)$this->lastWriteTime;
}
public function lastDoneWrites() {
- return $this->mLastWriteTime ?: false;
+ return $this->lastWriteTime ?: false;
}
public function writesPending() {
- return $this->mTrxLevel && $this->mTrxDoneWrites;
+ return $this->trxLevel && $this->trxDoneWrites;
}
public function writesOrCallbacksPending() {
- return $this->mTrxLevel && (
- $this->mTrxDoneWrites || $this->mTrxIdleCallbacks || $this->mTrxPreCommitCallbacks
+ return $this->trxLevel && (
+ $this->trxDoneWrites || $this->trxIdleCallbacks || $this->trxPreCommitCallbacks
);
}
public function pendingWriteQueryDuration( $type = self::ESTIMATE_TOTAL ) {
- if ( !$this->mTrxLevel ) {
+ if ( !$this->trxLevel ) {
return false;
- } elseif ( !$this->mTrxDoneWrites ) {
+ } elseif ( !$this->trxDoneWrites ) {
return 0.0;
}
switch ( $type ) {
case self::ESTIMATE_DB_APPLY:
$this->ping( $rtt );
- $rttAdjTotal = $this->mTrxWriteAdjQueryCount * $rtt;
- $applyTime = max( $this->mTrxWriteAdjDuration - $rttAdjTotal, 0 );
+ $rttAdjTotal = $this->trxWriteAdjQueryCount * $rtt;
+ $applyTime = max( $this->trxWriteAdjDuration - $rttAdjTotal, 0 );
// For omitted queries, make them count as something at least
- $omitted = $this->mTrxWriteQueryCount - $this->mTrxWriteAdjQueryCount;
+ $omitted = $this->trxWriteQueryCount - $this->trxWriteAdjQueryCount;
$applyTime += self::TINY_WRITE_SEC * $omitted;
return $applyTime;
default: // everything
- return $this->mTrxWriteDuration;
+ return $this->trxWriteDuration;
}
}
public function pendingWriteCallers() {
- return $this->mTrxLevel ? $this->mTrxWriteCallers : [];
+ return $this->trxLevel ? $this->trxWriteCallers : [];
}
public function pendingWriteRowsAffected() {
- return $this->mTrxWriteAffectedRows;
+ return $this->trxWriteAffectedRows;
}
/**
@@ -602,15 +600,15 @@ abstract class Database implements IDatabase, IMaintainableDatabase, LoggerAware
* @return array
*/
protected function pendingWriteAndCallbackCallers() {
- if ( !$this->mTrxLevel ) {
+ if ( !$this->trxLevel ) {
return [];
}
- $fnames = $this->mTrxWriteCallers;
+ $fnames = $this->trxWriteCallers;
foreach ( [
- $this->mTrxIdleCallbacks,
- $this->mTrxPreCommitCallbacks,
- $this->mTrxEndCallbacks
+ $this->trxIdleCallbacks,
+ $this->trxPreCommitCallbacks,
+ $this->trxEndCallbacks
] as $callbacks ) {
foreach ( $callbacks as $callback ) {
$fnames[] = $callback[1];
@@ -621,7 +619,7 @@ abstract class Database implements IDatabase, IMaintainableDatabase, LoggerAware
}
public function isOpen() {
- return $this->mOpened;
+ return $this->opened;
}
public function setFlag( $flag, $remember = self::REMEMBER_NOTHING ) {
@@ -630,9 +628,9 @@ abstract class Database implements IDatabase, IMaintainableDatabase, LoggerAware
}
if ( $remember === self::REMEMBER_PRIOR ) {
- array_push( $this->priorFlags, $this->mFlags );
+ array_push( $this->priorFlags, $this->flags );
}
- $this->mFlags |= $flag;
+ $this->flags |= $flag;
}
public function clearFlag( $flag, $remember = self::REMEMBER_NOTHING ) {
@@ -641,9 +639,9 @@ abstract class Database implements IDatabase, IMaintainableDatabase, LoggerAware
}
if ( $remember === self::REMEMBER_PRIOR ) {
- array_push( $this->priorFlags, $this->mFlags );
+ array_push( $this->priorFlags, $this->flags );
}
- $this->mFlags &= ~$flag;
+ $this->flags &= ~$flag;
}
public function restoreFlags( $state = self::RESTORE_PRIOR ) {
@@ -652,15 +650,15 @@ abstract class Database implements IDatabase, IMaintainableDatabase, LoggerAware
}
if ( $state === self::RESTORE_INITIAL ) {
- $this->mFlags = reset( $this->priorFlags );
+ $this->flags = reset( $this->priorFlags );
$this->priorFlags = [];
} else {
- $this->mFlags = array_pop( $this->priorFlags );
+ $this->flags = array_pop( $this->priorFlags );
}
}
public function getFlag( $flag ) {
- return !!( $this->mFlags & $flag );
+ return !!( $this->flags & $flag );
}
/**
@@ -701,7 +699,7 @@ abstract class Database implements IDatabase, IMaintainableDatabase, LoggerAware
* Set a custom error handler for logging errors during database connection
*/
protected function installErrorHandler() {
- $this->mPHPError = false;
+ $this->phpError = false;
$this->htmlErrors = ini_set( 'html_errors', '0' );
set_error_handler( [ $this, 'connectionErrorLogger' ] );
}
@@ -724,8 +722,8 @@ abstract class Database implements IDatabase, IMaintainableDatabase, LoggerAware
* @return string|bool Last PHP error for this DB (typically connection errors)
*/
protected function getLastPHPError() {
- if ( $this->mPHPError ) {
- $error = preg_replace( '!\[
(Per a bots vells que necessiten que el nom per a iniciar sessió sigui el mateix que el nom d'usuari, també podeu usar $3 com a nom d'usuari i $4 com a contrasenya.)",
"botpasswords-no-provider": "BotPasswordsSessionProvider no està disponible.",
"botpasswords-restriction-failed": "Les restriccions de contrasenyes de bots impedeixen aquest inici de sessió.",
@@ -705,7 +705,7 @@
"userjspreview": "'''Recordeu que només estau provant/previsualitzant el vostre JavaScript, encara no ho heu desat!'''",
"sitecsspreview": "'''Adoneu-vos que esteu veient una vista prèvia d'aquest full d'estil CSS.'''\n'''Encara no s'ha desat!'''",
"sitejspreview": "'''Tingueu present que esteu previsualitzant aquest codi Javascript.'''\n'''Encara no s'ha desat!'''",
- "userinvalidcssjstitle": "'''Atenció:''' No existeix l'aparença «$1». Recordeu que les subpà gines personalitzades amb extensions .css i .js utilitzen el tÃtol en minúscules, per exemple, {{ns:user}}:NOM/vector.css no és el mateix que {{ns:user}}:NOM/Vector.css.",
+ "userinvalidconfigtitle": "'''Atenció:''' No existeix l'aparença «$1». Recordeu que les subpà gines personalitzades amb extensions .css i .js utilitzen el tÃtol en minúscules, per exemple, {{ns:user}}:NOM/vector.css no és el mateix que {{ns:user}}:NOM/Vector.css.",
"updated": "(Actualitzat)",
"note": "'''Nota:'''",
"previewnote": "Recordeu que això és només una previsualització.\nEls vostres canvis encara no sâhan desat!",
@@ -1045,7 +1045,7 @@
"recentchangesdays-max": "(mà xim $1 {{PLURAL:$1|dia|dies}})",
"recentchangescount": "Nombre d'edicions a mostrar per defecte:",
"prefs-help-recentchangescount": "Inclou els canvis recents, els historials de pà gines i els registres.",
- "prefs-help-watchlist-token2": "Aquesta és la clau secreta pel canal de continguts de la vostra llista de seguiment.\nQualsevol que la conegui podria llegir la vostra llista de seguiment, aixà que no la compartiu.\n[[Special:ResetTokens|Cliqueu aquà si voleu restaurar-la]].",
+ "prefs-help-watchlist-token2": "Aquesta és la clau secreta pel canal de continguts de la vostra llista de seguiment.\nQualsevol que la conegui podria llegir la vostra llista de seguiment, aixà que no la compartiu.\nSi és necessari, [[Special:ResetTokens|la podeu restaurar]].",
"savedprefs": "Sâhan desat les vostres preferències.",
"savedrights": "S'han desat els grups d'usuari de {{GENDER:$1|$1}}.",
"timezonelegend": "Fus horari:",
@@ -1072,7 +1072,7 @@
"prefs-files": "Fitxers",
"prefs-custom-css": "CSS personalitzat",
"prefs-custom-js": "JS personalitzat",
- "prefs-common-css-js": "CSS/JS compartit per tots els skins:",
+ "prefs-common-config": "CSS/JS compartit per tots els skins:",
"prefs-reset-intro": "Podeu usar aquesta pà gina per a restablir les vostres preferències als valors per defecte.\nNo es podrà desfer el canvi.",
"prefs-emailconfirm-label": "Confirmació de correu electrònic:",
"youremail": "Correu electrònic:",
@@ -1334,6 +1334,8 @@
"recentchanges-legend": "Opcions de canvis recents",
"recentchanges-summary": "Seguiu els canvis més recents del wiki en aquesta pà gina.",
"recentchanges-noresult": "Cap canvi corresponent a aquests criteris en el perÃode indicat.",
+ "recentchanges-timeout": "Aquesta cerca ha temporitzat. Podeu provar amb parà metres de cerca diferents.",
+ "recentchanges-network": "A causa d'un error tècnic no s'ha pogut recuperar cap resultat. Intenteu refrescar la pà gina.",
"recentchanges-feed-description": "Segueix en aquest canal els canvis més recents del wiki.",
"recentchanges-label-newpage": "Aquesta modificació creà una pà gina",
"recentchanges-label-minor": "Aquesta és una modificació menor",
@@ -1445,6 +1447,7 @@
"rcfilters-filter-previousrevision-label": "No la darrera revisió",
"rcfilters-filter-previousrevision-description": "Tots els canvis que no són «la darrera revisió».",
"rcfilters-filter-excluded": "Exclòs",
+ "rcfilters-tag-prefix-namespace-inverted": ":no $1",
"rcfilters-exclude-button-off": "Exclou els seleccionats",
"rcfilters-exclude-button-on": "Excloent els seleccionats",
"rcfilters-view-tags": "Canvis etiquetats",
@@ -1494,8 +1497,6 @@
"boteditletter": "b",
"unpatrolledletter": "!",
"number_of_watching_users_pageview": "[{{PLURAL:$1|Un usuari vigila|$1 usuaris vigilen}} aquesta pà gina]",
- "rc_categories": "Limita a les categories (separades amb «|»):",
- "rc_categories_any": "Qualsevol de les triades",
"rc-change-size": "$1",
"rc-change-size-new": "$1 {{PLURAL:$1|byte|bytes}} després del canvi",
"newsectionsummary": "/* $1 */ secció nova",
@@ -1506,7 +1507,7 @@
"recentchangeslinked-feed": "Canvis relacionats",
"recentchangeslinked-toolbox": "Canvis relacionats",
"recentchangeslinked-title": "Canvis relacionats amb «$1»",
- "recentchangeslinked-summary": "Aquesta llista reflecteix els canvis recents a les pà gines enllaçades des d'una pà gina concreta (o als membres d'una categoria concreta).\nLes pà gines de la vostra [[Special:Watchlist|llista de seguiment]] apareixen en negreta.",
+ "recentchangeslinked-summary": "Introduïu un nom de pà gina per veure els canvis en les pà gines enllaçades des de o cap a aquesta pà gina (per veure els membres d'una categoria, introduïu Categoria:Nom de la categoria).\nEls canvis en pà gines de la vostra [[Special:Watchlist|llista de seguiment]] apareixen en negreta.",
"recentchangeslinked-page": "Nom de la pà gina:",
"recentchangeslinked-to": "Mostra els canvis de les pà gines enllaçades amb la pà gina donada",
"recentchanges-page-added-to-category": "[[:$1]] afegida a la categoria",
@@ -1847,7 +1848,7 @@
"doubleredirects": "Redireccions dobles",
"doubleredirectstext": "Aquesta pà gina llista les pà gines que redirigeixen a altres pà gines de redirecció.\nCada fila conté enllaços a la primera i la segona redireccions, aixà com la destinació de la segona redirecció, que generalment és la pà gina de destinació \"real\" a la qual hauria d'apuntar la primera redirecció.\nLes entrades ratllades s'han resolt.",
"double-redirect-fixed-move": "S'ha reanomenat [[$1]].\nS'ha actualitzat automà ticament i ara redirigeix a [[$2]].",
- "double-redirect-fixed-maintenance": "S'ha arreglat automà ticament la redirecció doble de [[$1]] a [[$2]] en un treball de manteniment.",
+ "double-redirect-fixed-maintenance": "Correcció automà tica de la redirecció doble de [[$1]] a [[$2]] en un tasca de manteniment",
"double-redirect-fixer": "Supressor de dobles redireccions",
"brokenredirects": "Redireccions rompudes",
"brokenredirectstext": "Les següents redireccions enllacen a pà gines inexistents:",
@@ -2633,6 +2634,7 @@
"import-mapping-namespace": "Importa a un espai de noms:",
"import-mapping-subpage": "Importa com a subpà gines de la pà gina següent:",
"import-upload-filename": "Nom de fitxer:",
+ "import-upload-username-prefix": "Prefix interwiki:",
"import-comment": "Comentari:",
"importtext": "Exporteu el fitxer des del wiki d'origen utilitzant l'[[Special:Export|eina d'exportació]].\nDeseu-lo al vostre ordinador i carregueu-ne una còpia acÃ.",
"importstart": "S'estan important pà gines...",
@@ -3413,7 +3415,7 @@
"version-poweredby-others": "altres",
"version-poweredby-translators": "Traductors de translatewiki.net",
"version-credits-summary": "El nostre reconeixement a les següents persones per la seva aportació a [[Special:Version|MediaWiki]]",
- "version-license-info": "MediaWiki és programari lliure, podeu redistribuir-lo i/o modificar-lo sota els termes de la Llicència Pública General GNU publicada per la Free Software Foundation, sigui de la seva versió 2 o (a elecció vostra) de qualsevol versió posterior. \n\nMediaWiki es distribueix en l'esperança de ser d'utilitat, però SENSE CAP GARANTIA; ni tan sols la garantia implÃcita de COMERCIALITZACIà o ADEQUACIà A UNA FINALITAT DETERMINADA. En trobareu més detalls a la Llicència Pública General GNU.\n\nAmb aquest programa heu d'haver rebut [{{SERVER}}{{SCRIPTPATH}}/COPYING una còpia de la Llicència Pública General GNU]; si no és aixÃ, adreceu-vos a la Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA o bé [//www.gnu.org/licenses/old-licenses/gpl-2.0.html llegiu-la en lÃnia].",
+ "version-license-info": "MediaWiki és programari lliure, podeu redistribuir-lo i/o modificar-lo sota els termes de la Llicència Pública General GNU publicada per la Free Software Foundation, sigui de la seva versió 2 o (a elecció vostra) de qualsevol versió posterior. \n\nMediaWiki es distribueix en l'esperança de ser d'utilitat, però SENSE CAP GARANTIA; ni tan sols la garantia implÃcita de COMERCIALITZACIà o ADEQUACIà A UNA FINALITAT DETERMINADA. Vegeu la Llicència Pública General GNU per a més informació.\n\nAmb aquest programa heu d'haver rebut [{{SERVER}}{{SCRIPTPATH}}/COPYING una còpia de la Llicència Pública General GNU]; si no és aixÃ, adreceu-vos a la Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA o bé [//www.gnu.org/licenses/old-licenses/gpl-2.0.html llegiu-la en lÃnia].",
"version-software": "Programari instal·lat",
"version-software-product": "Producte",
"version-software-version": "Versió",
diff --git a/languages/i18n/ce.json b/languages/i18n/ce.json
index d5aa840013..bd7efa515c 100644
--- a/languages/i18n/ce.json
+++ b/languages/i18n/ce.json
@@ -158,7 +158,7 @@
"faq": "СиХХ",
"actions": "ÐийÑаÑ",
"namespaces": "ЦÓеÑийн меÑÑигаÑ",
- "variants": "ÐепаÑаÑ",
+ "variants": "ÐаÑианÑаÑ",
"navigation-heading": "ÐавигаÑин менÑ",
"errorpagetitle": "ÐÓалаÑ",
"returnto": "ЮÑ
агÓо оÑÑ Ð°Ð³Óоне $1.",
@@ -923,7 +923,7 @@
"prefs-files": "ФайлаÑ",
"prefs-custom-css": "ÐолаÑ
Ñ Ð¹Ð¾Ð»Ñ CSS",
"prefs-custom-js": "ÐолаÑ
Ñ Ð¹Ð¾Ð»Ñ JS",
- "prefs-common-css-js": "ЮкÑаÑа CSS/JS маÑÑо ÐºÐµÑ Ð´Ð°Ñан Ñемийн:",
+ "prefs-common-config": "ЮкÑаÑа CSS/JS маÑÑо кеÑдаÑан Ñемийн:",
"prefs-reset-intro": "Ð¥ÓаÑа агÓо лело мега аÑ
Ñа ниÑбина гÓиÑÑ ÓадбиÑаÑан кепаÑа ÑÑ
а бокÑ
ÑÑ.\nÐ¥ÓаÑа деÑдеÑг кÑ
оÑÑÑÑ Ð´Ð¸Ð½ÑÑл ÑÓеÑ
Ñа Ñ
Ñан Ð¹Ð¸Ñ Ñ
иÑ-ÑÑ Ð¸ ÑÑ
а меÑÑаÑ
ÓоÑÑо.",
"prefs-emailconfirm-label": "ÐлекÑÑонан поÑÑ Ð±Ð°ÐºÑ ÑÑ:",
"youremail": "ÐлекÑÑонан поÑÑ:",
@@ -1286,8 +1286,6 @@
"newpageletter": "Ð",
"boteditletter": "б",
"number_of_watching_users_pageview": "[$1 {{PLURAL:$1|ÑÓеÑ
ÑÐ¾Ð¶Ñ Ð´ÐµÐºÑаÑÑ
о|ÑÓеÑ
ÑÐ¾Ð¶Ñ Ð´ÐµÐºÑаÑÑ
ой}}]",
- "rc_categories": "ÐаÑегоÑи ÑÑÑа бен (кÑаÑÑоÑг «|»)",
- "rc_categories_any": "ÐÑÑлÑ
а а Ñ
аÑÑжинаÑÑÑ
",
"rc-change-size-new": "ХийÑам бин ÑÑл ÑÓеÑ
Ñа Ð±Ð¾Ð»Ñ Ð±Ð°Ñам: $1 {{PLURAL:$1|байÑ}}",
"newsectionsummary": "/* $1 */ ÐеÑла Ñ
ÑедаÑ",
"rc-enhanced-expand": "ÐайÑа мадаÑÑа",
@@ -1477,7 +1475,7 @@
"uploadnewversion-linktext": "ЧÑÑккÑ
а кеÑла веÑÑи Ñ
ÓокÑ
Ñ Ñайлан",
"shared-repo-from": "$1 ÑÑÑа",
"shared-repo": "ÑкÑаÑа ÓалаÑе меÑÑиг",
- "shared-repo-name-wikimediacommons": "ÐикигÑлам",
+ "shared-repo-name-wikimediacommons": "ÐикилаÑма",
"upload-disallowed-here": "Ð¥Ñан бакÑо ÑÑ Ñ
ÓаÑа Ñайл ÑÑ
Ñ Ð´ÓаÑздан.",
"filerevert": "ТоÑ
аÑлеÑа веÑÑи ÑÑ
аеÑÐ·Ð¾Ñ $1",
"filerevert-legend": "Файлан веÑÑи ÑÑ
аеÑзо",
@@ -1857,6 +1855,8 @@
"changecontentmodel-title-label": "ÐгÓона ÑÓе",
"changecontentmodel-reason-label": "ÐаÑ
Ñана:",
"changecontentmodel-submit": "ХийÑа",
+ "log-name-contentmodel": "ÐодÑлийн ÑÑлаÑам Ñ
ийÑаÑан ÑепÑаÑ",
+ "log-description-contentmodel": "Ð¥ÓокÑ
Ñ Ð°Ð³ÓонгаÑ
Ñ Ð³Ð¾Ð¹ÑÑÑ Ñ, ÑÑлаÑаман Ñ
ийÑÐ°Ð¼Ð°Ñ Ð±Ð¸Ð½Ð° модÑлаÑ.",
"logentry-contentmodel-change-revertlink": "ÑÑ
аÑккÑ
а",
"logentry-contentmodel-change-revert": "ЮÑ
аÑккÑ
а",
"protectlogpage": "ÐаÑÑÑан ÑепÑаÑ",
@@ -2149,7 +2149,7 @@
"move-leave-redirect": "ÓадйиÑа дÓаÑаÑ
ÑажоÑг",
"protectedpagemovewarning": "'''ÐÓаÑ
ÑедаÑ.''' Ð¥ÓаÑа агÓо лаÑйина Ñ; ÑÓе Ñ
ийÑа Ñ Ð½Ð¸ÑÑÑн а бакÑо йолÑÑ ÐºÑÑйгалÑ
ой бен баÑ.\nÐаÑ
аÑ
Ñ ÑепÑаÑо балийна ÑÓаÑÑ
ÑаÑалеÑа дÓаÑзбина Ñ
аам:",
"semiprotectedpagemovewarning": "'''ÐÓаÑ
Ñедо.''' Ð¥ÓаÑа агÓо лаÑйина Ñ; дÓабазбинаÑÑ Ð´ÐµÐºÑаÑÑ
оÑка бе ÑÓе Ñ
ийÑалÑÑ ÑÑ.\nÐаÑ
аÑ
Ñа ÑепÑаÑо балийна ÑÓаÑÑ
Ñ
ÑаÑалеÑа дÓаÑзбина Ñ
аам:",
- "move-over-sharedrepo": "== Файл йолÑÑ Ñ ==\nÐикигÑлам ÑоÑ
Ñ Ð¹Ð¾Ð»ÑÑ Ñ [[:$1]]. Ð¥ÓокÑ
Ñ Ñайлан ÑÓе Ñ
ийÑиÑа ÐикигÑлам ÑÑÑÑаниг дÓакÑовлÑ.",
+ "move-over-sharedrepo": "ÐикилаÑма ÑоÑ
Ñ Ð¹Ð¾Ð»ÑÑ Ñ [[:$1]]. Ð¥ÓокÑ
Ñ Ñайлан ÑÓе Ñ
ийÑиÑа ÐикилаÑма ÑÑÑÑаниг дÓакÑовлÑ.",
"export": "ÐгÓÐ¾Ð½Ð°Ñ Ð°ÑаÑÑ
аÑ",
"exporttext": "ШÑÑга далÑÑ Ð´Ñ ÐºÑ
еÑÑ Ð¼ÐµÑÑеÑа ÑÑдаÑ
аÑÑ, йоза а Ñ
ийÑаме ÑепÑаÑÑ Ð±Ð¸Ð»Ð³Ð°Ð»Ð»Ð° Ð¹Ð¾Ð»Ñ Ð°Ð³ÓÐ¾Ð½Ð°Ñ Ñ Ð³Ñлдина Ð¹Ð¾Ð»Ñ Ð°Ð³ÓÐ¾Ð½Ð°Ñ Ñ
ÓокÑ
Ñ XML баÑамÑа, ÑÑ
а ÑÓаÑÑ
Ñа ÑÑÑа [[Special:Import|Ñ
ÑаÑÑалÑÑдолÑ]] кÑ
еÑÑ Ð²Ð¸ÐºÐ¸-Ñ
ÑалÑ
ен, болÑ
Ð±ÐµÑ Ð¹Ð¾Ð»Ñ Ñ
ÓокÑ
Ñ MediaWiki гÓиÑÑаÑа.\n\nÐÑ
еÑÑ Ð¼ÐµÑÑеÑа ÑÐ·Ð·Ð°Ð¼Ð°Ñ ÑÑÑÑ
а, ÑÑ ÑзÑе ÑÓе ÑадеÑÑ Ð¼ÐµÑÑе, ÑÑ
Ñа могÓан ÑÓе могÓаÑÑкаÑ
Ñ, ÑÑ
а Ñ
аÑжа лаÑий ÑÑна кÑ
еÑÑ Ð¼ÐµÑÑигеÑа ÑÑÑÑ
а маÑÑо ÑззамаÑна иÑÑоÑи Ñ
ийÑамбаÑÑ Ñ ÑÓаÑÑ
Ñ
ÑаÑлеÑа Ñззаман веÑÑи.\n\nШÑÑга кÑ
и далÑндеÑг, Ð»ÐµÐ»Ð°ÐµÑ Ð¹Ð¾Ð»Ñ Ð°Ð´ÑеÑан Ñ
ÑажоÑг кÑ
еÑÑ Ð¼ÐµÑÑеÑа ÑÑдаÑ
а ÑÓаÑÑ
Ñ
ÑаÑлеÑаÑÑ Ð²ÐµÑÑин ÑззамаÑ. ÐаÑала оÑÑ Ñззаман [[{{MediaWiki:Mainpage}}]] Ñ
ÓаÑа Ñ
иÑа Ñ Ñ
ÑажоÑг [[{{#Special:Export}}/{{MediaWiki:Mainpage}}]].",
"exportall": "ÐаÑÑо агÓÐ¾Ð½Ð°Ñ ÑкÑпоÑÑ Ñн",
@@ -2831,6 +2831,7 @@
"tag-filter": "[[Special:Tags|ÐилгалонаÑ]] лÑÑÑÑÑÑг:",
"tag-filter-submit": "ÐиÑÑа",
"tag-list-wrapper": "([[Special:Tags|{{PLURAL:$1|1=Ðилгало|ÐилгалонаÑ}}]]: $2)",
+ "tag-mw-contentmodelchange": "модÑлан ÑÑлаÑаман Ñ
ийÑам",
"tag-mw-new-redirect": "ÐеÑла дÓаÑаÑ
ÑажоÑг",
"tag-mw-removed-redirect": "дÓаÑÑккÑ
ина дÓаÑÑ
ÑажоÑг",
"tag-mw-rollback": "ЮÑ
аÑккÑ
а",
@@ -2901,6 +2902,9 @@
"diff-form-oldid": "ÐеÑÑин ÑиÑа иденÑиÑикаÑÐ¾Ñ (ÑÓеÑ
Ñ Ð´Ð°Ñ)",
"diff-form-revid": "ÐаÑÑ
Ð°Ð»Ð»Ð°Ñ Ð¹Ð¾Ð»Ñ Ð²ÐµÑÑин иденÑиÑикаÑоÑ",
"diff-form-submit": "СÑ
ÑагайÑа баÑÑ
аллаÑ",
+ "permanentlink": "Ðаиман Ð¹Ð¾Ð»Ñ Ñ
ÑажоÑг",
+ "permanentlink-revid": "ÐиÑдаÑан ID",
+ "permanentlink-submit": "Ð¥Ñажа веÑÑега",
"dberr-problems": "ÐеÑ
к ма бил! Ð¥ÓокÑ
Ñ ÑайÑеÑ
Ñ ÑеÑ
никан Ñ
Ð°Ð»Ð¾Ð½Ð°Ñ Ñ
ила.",
"dberr-again": "Ð¥Ñажа каÑла йаккÑ
а агlо маÑÑеÑ
Ð¼Ð¸Ð½Ð¾Ñ Ð¹Ð°ÑлÑа.",
"dberr-info": "(аÑÑÑо Ñа Ñ
или зÓе Ñ
ÓоÑÑа ÑеÑвеÑÑа бÑÑ
аÑа Ñ
аамаÑÑа: $1)",
@@ -3104,10 +3108,13 @@
"sessionprovider-generic": "$1 ÑеÑÑи",
"randomrootpage": "ЦаÑ
ÑÑÑ Ð½Ð¸ÑÑелла оÑаман агÓо",
"log-action-filter-block": "ÐлокÑоÑ
аÑан Ñайпа:",
+ "log-action-filter-contentmodel": "ÐодÑлан ÑÑлаÑаман Ñ
ийÑамбаÑан Ñайпа:",
"log-action-filter-all": "ÐÑÑиге",
"log-action-filter-block-block": "ÐлокÑоÑ
аÑ",
"log-action-filter-block-reblock": "ÐлокÑоÑ
Ð°Ñ Ñ
ийÑаÑ",
"log-action-filter-block-unblock": "ÐлокдÓаÑÑ
аÑÑ",
+ "log-action-filter-contentmodel-change": "ÐодÑлан ÑÑлаÑаман Ñ
ийÑам",
+ "log-action-filter-contentmodel-new": "ЧÑлаÑаман ÑÑандаÑÑан йоÑÑÑ Ð¼Ð¾Ð´Ñлан агÓо кÑ
оллаÑ",
"log-action-filter-rights-autopromote": "ÐвÑо Ñ
ийÑаÑ",
"log-action-filter-upload-upload": "ÐеÑла ÑÑдаккÑ
аÑ",
"log-action-filter-upload-overwrite": "ЮÑ
Ñ ÑÑÑккÑ
а",
diff --git a/languages/i18n/ch.json b/languages/i18n/ch.json
index f1145ad449..21c7ea1a8f 100644
--- a/languages/i18n/ch.json
+++ b/languages/i18n/ch.json
@@ -8,7 +8,8 @@
"MisterWiki",
"Shirayuki",
"ìë¼",
- "Macofe"
+ "Macofe",
+ "Fanjiayi"
]
},
"tog-underline": "Na'raya i inachetton:",
@@ -206,6 +207,7 @@
"nstab-template": "Plantiyas",
"nstab-help": "PÂÃ¥hinan ayudo",
"nstab-category": "Katigoria",
+ "mainpage-nstab": "Fanhaluman",
"nosuchaction": "TÃ¥ya' na aksion taiguenao",
"nosuchspecialpage": "Tåya' na påhinan espesiat taiguenao",
"error": "Linachi",
@@ -228,6 +230,7 @@
"titleprotected": "Prinetehi este na titulo ginen fina'tinas-ña as [[User:$1|$1]].\nHa nå'i i rason $2.",
"logouttext": "'''Malog-out hao på'go.'''\n\nSiña hao kumontinua manu'usa {{SITENAME}} sin nå'an, pat siña uma'log ta'lo pat siña un usa otra na nå'an muna'sesetbi.\nFanapunta na pålu na påhina siha para u na'annok na ma'log-in hao, asta ki un funas iyo-mu browser cache.",
"yourname": "NÃ¥'an ni muna'setbi:",
+ "userlogin-yourname": "NÃ¥'an ni muna'setbi",
"yourpassword": "Password:",
"yourpasswordagain": "Taip ta'lo i password:",
"yourdomainname": "Lugat-mu:",
@@ -268,6 +271,10 @@
"accountcreatedtext": "Mafa'tinas i kuentan muna'sesetbi nu $1.",
"createaccount-title": "Nina'huyong kuenta nu {{SITENAME}}",
"loginlanguagelabel": "Lengguahe: $1",
+ "pt-login": "Log in",
+ "pt-login-button": "Log in",
+ "pt-createaccount": "Fa'tinas kuenta-hu",
+ "pt-userlogout": "Log out",
"changepassword": "Tulaika password",
"oldpassword": "Password bihu:",
"newpassword": "Password nuebu:",
@@ -446,7 +453,7 @@
"search-external": "Inaligao sanhiyong",
"searchdisabled": "Mana'påra i inaligao {{SITENAME}}.\nSiña hao manaligao gi Google gi entretanto.\nFanapunta na fana'an ti gus nuebu i listan-ñiha i guinahan {{SITENAME}}.",
"preferences": "I ga'ña-mu",
- "mypreferences": "I ga'ña-hu",
+ "mypreferences": "I ga'ña-mu",
"prefs-edits": "Numirun tinilaika:",
"prefs-skin": "LÃ¥ssas",
"skin-preview": "Na'annok",
@@ -491,14 +498,25 @@
"grouppage-sysop": "{{ns:project}}:Atministradot siha",
"rightslog": "I log ni direchun muna'sesetbi",
"nchanges": "$1 {{PLURAL:$1|na tinilaika|na tinilaika siha}}",
+ "enhancedrc-history": "historia",
"recentchanges": "Tinilaika siha gi halacha",
"rcnotefrom": "Gi papa' guåha i tinilaika siha ginen '''$2''' (fa'na'an '''$1''' ma'annok).",
"rclistfrom": "Na'annok i mannuebun tinilaika siha ginen $3 $2",
"rcshowhideminor": "$1 na mandikike' na tinilaika siha",
+ "rcshowhideminor-show": "Na'annok",
+ "rcshowhideminor-hide": "NÃ¥'na'",
"rcshowhidebots": "$1 na bots siha",
+ "rcshowhidebots-show": "Na'annok",
+ "rcshowhidebots-hide": "NÃ¥'na'",
"rcshowhideliu": "$1 na muna'sesetbi ni ma log in",
+ "rcshowhideliu-show": "Na'annok",
+ "rcshowhideliu-hide": "NÃ¥'na'",
"rcshowhideanons": "$1 i muna'sesetbi taina'an",
+ "rcshowhideanons-show": "Na'annok",
+ "rcshowhideanons-hide": "NÃ¥'na'",
"rcshowhidemine": "$1 na tinilaika-hu",
+ "rcshowhidemine-show": "Na'annok",
+ "rcshowhidemine-hide": "NÃ¥'na'",
"rclinks": "Na'annok na $1 tinilaika siha ginen $2 na dihas manmaloffan",
"diff": "dif",
"hist": "hist",
@@ -516,10 +534,13 @@
"upload": "Na'kåtga hulu' i atkibu",
"uploadbtn": "Na'kåtga hulu' atkibu",
"uploadlogpage": "Na'kåtga i log",
+ "filedesc": "Sumaria",
+ "imgfile": "atkibu",
"listfiles": "Listan atkibu",
"file-anchor-link": "Atkibu",
"filehist": "Historian atkibu",
"filehist-help": "Yemme' i fecha/ora para un li'e' i atkibu annai annok guihi na momentu.",
+ "filehist-revert": "tulaika tatte",
"filehist-current": "pa'go",
"filehist-datetime": "Fecha/Ora",
"filehist-user": "Muna'sesetbi",
@@ -570,6 +591,7 @@
"move": "KÃ¥nya",
"movethispage": "Kånya i påhina",
"booksources": "I source i lepblo",
+ "booksources-search": "Aligao",
"specialloguserlabel": "Muna'sesetbi:",
"speciallogtitlelabel": "Titulo:",
"log": "Logs",
@@ -586,7 +608,7 @@
"linksearch-ok": "Aligao",
"emailuser": "Na'e-mail i muna'sesetbi este",
"watchlist": "Listan pinilan-hu",
- "mywatchlist": "Listan pinilan-hu",
+ "mywatchlist": "Listan pinilan",
"addedwatchtext": "Mana'suha i påhina \"[[:$1]]\" para iyo-mu [[Special:Watchlist|Listan pinilan]].\nI tinilaika siha mo'na gi tiempo kontodu i påhinan kombetsasion siha para u fana'lista guihi, yan para u '''na'potpot''' i påhina gi halom [[Special:RecentChanges|i listan tinilaika gi halacha]] para un ayek ha' mas libianu.",
"removedwatchtext": "Mana'suha i påhinan \"[[:$1]]\" gi [[Special:Watchlist|listan pinilan-mu]].",
"watch": "Pulan",
@@ -629,7 +651,7 @@
"blanknamespace": "(Fanhaluman)",
"contributions": "Kontribusion siha ni muna'sesetbi",
"mycontris": "Kontribusion-hu",
- "contribsub2": "Para $1 ($2)",
+ "contribsub2": "Para {{GENDER:$3|$1}} ($2)",
"uctop": "(sanhilo')",
"month": "Ginen i mes (yan eståba):",
"year": "Ginen i sakkan (yan eståba):",
@@ -639,6 +661,7 @@
"sp-contributions-submit": "Aligao",
"whatlinkshere": "HÃ¥fa ha na'chetton guini",
"whatlinkshere-title": "I påhina siha ni mana'chetton yan \"$1\"",
+ "whatlinkshere-page": "PÃ¥hina:",
"linkshere": "Umachetton i sigienten påhina siha yan '''[[:$1]]''':",
"nolinkshere": "Taya' umachetton yan '''[[:$1]]'''.",
"isredirect": "dirihi i påhina",
@@ -680,7 +703,7 @@
"tooltip-pt-login": "Maolek-ña mohon yanggen humålom hao kuenta-mu, lao ti nesisariu ha'.",
"tooltip-pt-logout": "Log out",
"tooltip-ca-talk": "Diskuti i infotmasion i påhina",
- "tooltip-ca-edit": "Siña un tulaika este na påhina. Pot fabot usa i batunes ni manchek åntes di un satba.",
+ "tooltip-ca-edit": "Tulaika i påhina",
"tooltip-ca-addsection": "NÃ¥'ye komentu gi kometsasion.",
"tooltip-ca-viewsource": "Maprotehi i påhina. Siña un li'e' iyo-ña code.",
"tooltip-ca-history": "I uttimo siha na tinilaika para este na påhina",
@@ -721,6 +744,7 @@
"tooltip-diff": "Na'annok håfa i tinilaika-mu gi tinige'",
"tooltip-compareselectedversions": "Na'annok i diferensia siha gi i dos ma'ayek na tinilaika ni påhina.",
"tooltip-watch": "Po'lo i påhina gi listan pinilan-mu",
+ "pageinfo-article-id": "PÃ¥hina ID",
"previousdiff": "â I mÃ¥'pos na dif",
"nextdiff": "Mamaila' na dif â",
"file-info-size": "$1 à $2 na pixel, mineddong atkibu: $3, MIME klåsi: $4",
@@ -742,6 +766,9 @@
"watchlisttools-raw": "Tulaika i listan pinilan ti mana'finu",
"version": "Tinilaika",
"version-specialpages": "Manespesiat na påhina",
+ "redirect-submit": "HÃ¥nao",
+ "redirect-page": "PÃ¥hina ID",
"fileduplicatesearch-submit": "Aligao",
- "specialpages": "Manespesiat na påhina"
+ "specialpages": "Manespesiat na påhina",
+ "searchsuggest-search": "Aligao gi {{SITENAME}}"
}
diff --git a/languages/i18n/ckb.json b/languages/i18n/ckb.json
index f6da1dbdd6..63358cf89d 100644
--- a/languages/i18n/ckb.json
+++ b/languages/i18n/ckb.json
@@ -611,7 +611,7 @@
"userjspreview": "'''ÙÛÛادت Ø¨Û Ú©Û Ø¦ÛØ³ØªÛ ØªÛÙÙا Ù¾ÛشبÛÙÛÙ\\تاÙÛâکردÙÛÙÛÛ Ø¬Ø§Ú¤Ø§Ø³Ú©Ø±ÛÙ¾ØªÛ Ø¨ÛکارÙÛÙÛرÛÛÚ©Ûت دÛÚ©ÛÛ.'''\n'''ÙÛشتا پاشÛÚ©ÛÙت ÙÛبÙÙÙ !'''",
"sitecsspreview": "ÙÛ Ø¨Ûرت ببÛت Ú©Û ØªÛÙھا Ø®ÛرÛÚ©Û Ù¾ÛشبÛÙÛÙÛ Ø¦ÛÙ
CSSÙÛ Ø¯ÛبÛÙÛت.\nÚ¾Ûشتا پاشÛÚ©ÛÙÛت ÙÛکراÙÛ!",
"sitejspreview": "'''ÙÛ Ø¨Ûرت ÙÛÚÛت ئÛÙ
Û ØªÛÙÛا Ù¾ÛشبÛÙÛÙÛ Ø¦ÛÙ
Ú©ÛدÛÛ Ø¬Ø§Ú¤Ø§Ø³Ú©Ø±ÛپتÛ.'''\n'''Ú¯ÛÚاÙکارÛÛÛکاÙت Ú¾Ûشتا پاشÛÚ©ÛÙت ÙÛکراÙÙ!'''",
- "userinvalidcssjstitle": "'''ئاگادارکردÙÛÙÛ:''' Ù¾Ûست ÙÛÛ Ø¨Û \"$1\".\nÙÛÛادت Ø¨Û Ú©Û ÙاپÛÚÛکاÙÛâ .css Ù .js ÙÛ Ø¨Ø§Ø¨Ûت Ø¨Û Ù¾ÛØªÛ Ø¨ÚÙÙÚ© Ú©ÛÚµÚ© ÙÛر ئÛگرÙ. ÙÛÚ© {{ns:user}}:Foo/vector.css ÙÛ ÙÛÚ© {{ns:user}}:Foo/Vector.css .",
+ "userinvalidconfigtitle": "'''ئاگادارکردÙÛÙÛ:''' Ù¾Ûست ÙÛÛ Ø¨Û \"$1\".\nÙÛÛادت Ø¨Û Ú©Û ÙاپÛÚÛکاÙÛâ .css Ù .js ÙÛ Ø¨Ø§Ø¨Ûت Ø¨Û Ù¾ÛØªÛ Ø¨ÚÙÙÚ© Ú©ÛÚµÚ© ÙÛر ئÛگرÙ. ÙÛÚ© {{ns:user}}:Foo/vector.css ÙÛ ÙÛÚ© {{ns:user}}:Foo/Vector.css .",
"updated": "(ÙÙÛâکراÙÛ)",
"note": "'''تÛبÛÙÛ:'''",
"previewnote": "'''ÙÛ Ø¨Ûرت ÙÛÚÛت ئÛÙ
Û ØªÛÙÛا Ù¾ÛشبÛÙÛÙÛ.'''\nÚ¯ÛÚاÙکارÛÛÛکاÙت Ú¾Ûشتا پاشÛÚ©ÛÙت ÙÛکراÙÙ!",
@@ -927,7 +927,7 @@
"prefs-files": "Ù¾ÛÚÚ¯ÛکاÙ",
"prefs-custom-css": "CSSÛ Ø¯ÚµØ®Ùاز",
"prefs-custom-js": "جاڤاسکرÛÙ¾ØªÛ Ø¯ÚµØ®Ùاز",
- "prefs-common-css-js": "سÛâئÛسâئÛس/جاڤاسکرÛÙ¾ØªÛ Ú¾Ø§ÙبÛØ´ Ø¨Û Ú¯Ø´Øª Ù¾ÛستÛکاÙ:",
+ "prefs-common-config": "سÛâئÛسâئÛس/جاڤاسکرÛÙ¾ØªÛ Ú¾Ø§ÙبÛØ´ Ø¨Û Ú¯Ø´Øª Ù¾ÛستÛکاÙ:",
"prefs-reset-intro": "دÛتÙاÙÛ ÙÛÙ
ÙاپÛÚÛ Ø¨Û Ú¯ÛÚاÙÛÙÛÛ ÙÛڵبÚاردÛکاÙت Ø¨Û Ø¨ÙÚÛÙÛÛÛ Ù
اڵپÛر Ú©ÛÚµÚ© ÙÛرگرÛت.\nÚ¯Ûر ئÛÙÛ Ø¨Ú©ÛÛ Ø¦Ûتر Ú¯ÛÚاÙÛÚ©Ûت ÙاگÛÚÛتÛÙÛ.",
"prefs-emailconfirm-label": "پشتÚاستکردÙÛÙÛÛ Ø¦ÛÙ
ÛÛÙ:",
"youremail": "ئÛÙ
ÛÛÙ:",
@@ -1275,8 +1275,6 @@
"newpageletter": "Ù",
"boteditletter": "بÛت",
"number_of_watching_users_pageview": "[$1 {{PLURAL:$1|بÛکارھÛÙÛر}}Û ÚاÙدÛر]",
- "rc_categories": "بÛرتÛسککردÙÛÙÛ Ø¨Û ÙاÙÙ¾ÛÙÛکا٠(ب٠«|» جÛØ§Û Ø¨Ú©ÛÙÛâ)",
- "rc_categories_any": "ÙÛرکاÙ
ÛÚ© بÛت",
"rc-change-size-new": "$1 {{PLURAL:$1|باÛت}} پاش Ú¯ÛÚاÙکارÛ",
"newsectionsummary": "/* $1 */ بÛØ´Û ÙÙÛ",
"rc-enhanced-expand": "ÙردÛکارÛÛÛکا٠ÙÛشا٠بدÛ",
@@ -2693,6 +2691,7 @@
"autosumm-replace": "«$1Â»Û ÙÛ Ø¬ÛÛ ÙاÙÛرÛÚ© داÙا",
"autoredircomment": "ÚÛÙاÙÛ Ú©Ø±Ø§ Ø¨Û [[$1]]",
"autosumm-removed-redirect": "ÚÛÙاÙÛÚ©ÛرÛÚ©ÛÛ Ø¨Û [[$1]] داÙدرا بÙÙ Ùابرد",
+ "autosumm-changed-redirect-target": "ئاÙ
اÙØ¬Û ÚÛÙاÙÛÚ©ÛØ±Û ÙÛ [[$1]]ÛÙÛ Ú¯ÛÚÛ Ø¨Û [[$2]]",
"autosumm-new": "Ù¾ÛÚÛÛ Ø¯Ø±Ùست کرد Ø¨Û Â«$1»ÛÙÛ",
"autosumm-newblank": "Ù¾ÛÚÛÛ ÙØ§ÚµØ§Û Ø¯Ø±Ùست کرد",
"size-bytes": "$1 باÛت",
diff --git a/languages/i18n/crh-cyrl.json b/languages/i18n/crh-cyrl.json
index 81902e2b9b..df4f8fd20f 100644
--- a/languages/i18n/crh-cyrl.json
+++ b/languages/i18n/crh-cyrl.json
@@ -462,7 +462,7 @@
"userjsyoucanpreview": "'''ТевÑие:''' ЯнÑÑ JavaScript-инÑизни ÑеÑкеÑмек иÑÑн ÑаиÑени ÑакÑламаздан ÑÐ²ÐµÐ»Ñ Â«{{int:showpreview}}» дÑгмеÑине баÑÑнÑÑз.",
"usercsspreview": "'''УнÑÑманÑÑз, Ð±Ñ Ñек бакÑÑп ÑÑкÑÑв - кÑÑлланÑÐ´Ð¶Ñ CSS ÑайлÑнÑÑз Ð°Ð»Ñ Ð´Ð°Ð° ÑакÑланмадÑ!'''",
"userjspreview": "'''УнÑÑманÑÑз, Ñиз Ñимди Ñек ÑеÑÑ ÑÑеÑинÑиз Ñ Ð´Ð° бакÑÑп ÑÑкÑÑв коÑеÑинÑиз - кÑÑлланÑÐ´Ð¶Ñ JavaScript'и Ñимдилик ÑакÑланмадÑ.'''",
- "userinvalidcssjstitle": "'''ÐÑ
ÑаÑ:''' \"$1\" адÑнен Ð±Ð¸Ñ Ñема ÑкÑÑÑÑ. Ñема-адÑ.css ве .js ÑайллаÑÑнÑÐ½Ñ Ð°Ð´Ð»Ð°ÑÑ ÐºÐ¸Ñик аÑÐ¸Ñ Ð¸Ð»Ðµ ÑÐ·Ð¼Ð°ÐºÑ ÐºÐµÑек, Ñни {{ns:user}}:ТемелÑ/'''V'''ector.css дегилÑ, {{ns:user}}:ТемелÑ/'''v'''ector.css.",
+ "userinvalidconfigtitle": "'''ÐÑ
ÑаÑ:''' \"$1\" адÑнен Ð±Ð¸Ñ Ñема ÑкÑÑÑÑ. Ñема-адÑ.css ве .js ÑайллаÑÑнÑÐ½Ñ Ð°Ð´Ð»Ð°ÑÑ ÐºÐ¸Ñик аÑÐ¸Ñ Ð¸Ð»Ðµ ÑÐ·Ð¼Ð°ÐºÑ ÐºÐµÑек, Ñни {{ns:user}}:ТемелÑ/'''V'''ector.css дегилÑ, {{ns:user}}:ТемелÑ/'''v'''ector.css.",
"updated": "(ЯнÑаÑдÑ)",
"note": "'''ÐÑ
ÑаÑ:'''",
"previewnote": "'''ÐÑ Ñек бакÑÑп ÑÑкÑÑв, меÑин Ð°Ð»Ñ Ð´Ð°Ð° ÑакÑланмагÑан!'''",
@@ -788,8 +788,6 @@
"newpageletter": "Я",
"boteditletter": "б",
"number_of_watching_users_pageview": "[$1 {{PLURAL:$1|1=кÑÑлланÑджÑ|кÑÑлланÑджÑ}} козеÑе]",
- "rc_categories": "Тек каÑегоÑиÑлаÑдан («|» иле айÑÑÑла)",
- "rc_categories_any": "ÐÑ Ð°Ð½Ð³Ð¸",
"rc-change-size-new": "ÐенÑиÑÑиÑилÑген ÑÐ¾Ð½Ñ $1 {{PLURAL:$1|байÑ|байÑ}}",
"newsectionsummary": "/* $1 */ ÑнÑÑ Ð±Ð¾Ð»Ñк",
"rc-enhanced-expand": "ТаÑÑилÑÑÑÐ½Ñ ÐºÐ¾ÑÑÑеÑ",
diff --git a/languages/i18n/crh-latn.json b/languages/i18n/crh-latn.json
index 9fc1e44873..7db085b378 100644
--- a/languages/i18n/crh-latn.json
+++ b/languages/i18n/crh-latn.json
@@ -459,7 +459,7 @@
"userjsyoucanpreview": "'''Tevsiye:''' Yañı JavaScript-iñizni teÅkermek içün saifeni saqlamazdan evel \"{{int:showpreview}}\" dögmesine basıñız.",
"usercsspreview": "'''Unutmañız, bu tek baqıp çıquv - qullanıcı CSS faylıñız alâ daa saqlanmadı!'''",
"userjspreview": "'''Unutmañız, siz Åimdi tek test etesiñiz ya da baqıp çıquv köresiñiz - qullanıcı JavaScript'i Åimdilik saqlanmadı.'''",
- "userinvalidcssjstitle": "'''İhtar:''' \"$1\" adınen bir tema yoqtır. tema-adı.css ve .js fayllarınıñ adları kiçik afir ile yazmaq kerek, yani {{ns:user}}:Temel/'''V'''ector.css degil, {{ns:user}}:Temel/'''v'''ector.css.",
+ "userinvalidconfigtitle": "'''İhtar:''' \"$1\" adınen bir tema yoqtır. tema-adı.css ve .js fayllarınıñ adları kiçik afir ile yazmaq kerek, yani {{ns:user}}:Temel/'''V'''ector.css degil, {{ns:user}}:Temel/'''v'''ector.css.",
"updated": "(Yañardı)",
"note": "'''Ä°htar:'''",
"previewnote": "'''Bu tek baqıp çıquv, metin alâ daa saqlanmaÄan!'''",
@@ -785,8 +785,6 @@
"newpageletter": "Y",
"boteditletter": "b",
"number_of_watching_users_pageview": "[$1 {{PLURAL:$1|qullanıcı|qullanıcı}} közete]",
- "rc_categories": "Tek kategoriyalardan (\"|\" ile ayırıla)",
- "rc_categories_any": "Er angi",
"rc-change-size-new": "DeñiÅtirilgen soñ $1 {{PLURAL:$1|bayt|bayt}}",
"newsectionsummary": "/* $1 */ yañı bölük",
"rc-enhanced-expand": "Tafsilâtını köster",
diff --git a/languages/i18n/cs.json b/languages/i18n/cs.json
index bebe16c418..e553d4a522 100644
--- a/languages/i18n/cs.json
+++ b/languages/i18n/cs.json
@@ -678,7 +678,7 @@
"userjspreview": "Pamatujte, že testujete a prohlÞÃte pouze náhled svého uživatelského JavaScriptu, jelikož dosud nebyl uložen!",
"sitecsspreview": "Pamatujte, že si prohlÞÃte jen náhled tohoto CSS, jelikož dosud nebylo uloženo!",
"sitejspreview": "Pamatujte, že testujete a prohlÞÃte pouze náhled tohoto JavaScriptu, jelikož dosud nebyl uložen!",
- "userinvalidcssjstitle": "VarovánÃ: Vzhled â$1â neexistuje. NezapomeÅte, že uživatelské .css a .js soubory použÃvajà malá pÃsmena, napÅ. {{ns:user}}:{{BASEPAGENAME}}/vector.css, nikoli {{ns:user}}:{{BASEPAGENAME}}/Vector.css.",
+ "userinvalidconfigtitle": "VarovánÃ: Vzhled â$1â neexistuje. NezapomeÅte, že uživatelské .css a .js soubory použÃvajà malá pÃsmena, napÅ. {{ns:user}}:{{BASEPAGENAME}}/vector.css, nikoli {{ns:user}}:{{BASEPAGENAME}}/Vector.css.",
"updated": "(ZmÄna uložena)",
"note": "Poznámka:",
"previewnote": "Pamatujte, že toto je pouze náhled.\nZmÄny dosud nebyly uloženy!",
@@ -877,7 +877,7 @@
"revdelete-reasonotherlist": "Jiný důvod",
"revdelete-edit-reasonlist": "Editovat důvody smazánÃ",
"revdelete-offender": "Autor revize:",
- "suppressionlog": "Záznam utajenÃ",
+ "suppressionlog": "Kniha utajenÃ",
"suppressionlogtext": "Toto je seznam mazánà a blokovánà zahrnujÃcà skrytà obsahu i pÅed správci.\nVizte též [[Special:BlockList|seznam vÅ¡ech probÃhajÃcÃch bloků]].",
"mergehistory": "SluÄovánà historià stránek",
"mergehistory-header": "Tato stránka Vám umožnà slouÄit historii verzà jedné zdrojové stránky s novÄjÅ¡Ã stránkou.\nUjistÄte se, že tato zmÄna udržà souvislost a posloupnost verzà v historii.",
@@ -1045,7 +1045,7 @@
"prefs-files": "Soubory",
"prefs-custom-css": "Uživatelské CSS",
"prefs-custom-js": "Uživatelský JavaScript",
- "prefs-common-css-js": "SdÃlené CSS/JavaScript pro vÅ¡echny styly:",
+ "prefs-common-config": "SdÃlené CSS/JavaScript pro vÅ¡echny styly:",
"prefs-reset-intro": "Pomocà této stránky můžete vÅ¡echna nastavenà vrátit na implicitnà hodnoty.\nTuto operaci nelze vrátit zpÄt.",
"prefs-emailconfirm-label": "OvÄÅenà e-mailu:",
"youremail": "E-mail:",
@@ -1479,8 +1479,6 @@
"newpageletter": "N",
"boteditletter": "r",
"number_of_watching_users_pageview": "[$1 {{PLURAL:$1|sledujÃcà uživatel|sledujÃcà uživatelé|sledujÃcÃch uživatelů}}]",
- "rc_categories": "Omezit na kategorie (oddÄlené â|â):",
- "rc_categories_any": "Jakákoli z vybraných",
"rc-change-size-new": "$1 {{PLURAL:$1|bajt|bajty|bajtů}} po zmÄnÄ",
"newsectionsummary": "Nová sekce /* $1 */",
"rc-enhanced-expand": "Zobrazit detaily",
@@ -1664,7 +1662,7 @@
"lockmanager-fail-closelock": "Soubor se zámkem pro â$1â nelze zavÅÃt.",
"lockmanager-fail-deletelock": "Soubor se zámkem pro â$1â nelze smazat.",
"lockmanager-fail-acquirelock": "Zámek pro â$1â nelze zÃskat.",
- "lockmanager-fail-openlock": "Soubor se zámkem â$1â nelze otevÅÃt. UjistÄte se, že vámi nahraný adresáŠje správnÄ nakonfigurován a že váš webový server má povolenà k editaci tohoto adresáÅe. Pro dalÅ¡Ã informace vizte https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:$wgUploadDirectory.",
+ "lockmanager-fail-openlock": "Soubor zámku â$1â nelze otevÅÃt. UjistÄte se, že váš adresáŠnahraných souborů je správnÄ nakonfigurován a že váš webový server má povolenà k zápisu do tohoto adresáÅe. Pro dalÅ¡Ã informace vizte https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:$wgUploadDirectory.",
"lockmanager-fail-releaselock": "Zámek pro â$1â nelze uvolnit.",
"lockmanager-fail-db-bucket": "Nelze navázat spojenà s dostateÄným poÄtem databázà zámků v bloku $1.",
"lockmanager-fail-db-release": "UzamÄenà databáze $1 nelze uvolnit.",
@@ -1687,7 +1685,9 @@
"uploadstash-bad-path-invalid": "Cesta nenà platná.",
"uploadstash-bad-path-unknown-type": "Neznámý typ â$1â.",
"uploadstash-file-not-found-no-thumb": "NepodaÅilo se zÃskat náhled.",
+ "uploadstash-file-not-found-no-object": "NepodaÅilo se vytvoÅit objekt lokálnÃho souboru pro náhled.",
"uploadstash-file-not-found-no-remote-thumb": "NaÄtenà náhledu se nepodaÅilo: $1\nURL = $2",
+ "uploadstash-file-not-found-missing-content-type": "Chybà hlaviÄka content-type.",
"uploadstash-file-too-large": "Nelze poskytnout soubor vÄtÅ¡Ã než $1 bajtů.",
"uploadstash-not-logged-in": "Nenà pÅihlášen žádný uživatel, soubory musà patÅit uživatelům.",
"uploadstash-wrong-owner": "Tento soubor ($1) nepatÅà aktuálnÃmu uživateli.",
@@ -2626,6 +2626,7 @@
"thumbnail_dest_directory": "Nelze vytvoÅit cÃlový adresáÅ",
"thumbnail_image-type": "Nepodporovaný typ obrázku",
"thumbnail_gd-library": "Neúplná konfigurace knihovny GD: chybà funkce $1",
+ "thumbnail_image-size-zero": "Velikost souboru je zÅejmÄ nulová.",
"thumbnail_image-missing": "Soubor patrnÄ chybÃ: $1",
"thumbnail_image-failure-limit": "V poslednà dobÄ doÅ¡lo k pÅÃliÅ¡ mnoha neúspÄÅ¡ným pokusům (nejménÄ $1) o vytvoÅenà tohoto náhledu. Zkuste to pozdÄji.",
"import": "Import stránek",
@@ -2648,6 +2649,7 @@
"imported-log-entries": "{{PLURAL:$1|Naimportován 1 protokolovacà záznam|Naimportovány $1 protokolovacà záznamy|Naimportováno $1 protokolovacÃch záznamů}}.",
"importfailed": "Import selhal: $1",
"importunknownsource": "Neznámý typ zdroje importu",
+ "importnoprefix": "Nebyl zadán interwiki prefix",
"importcantopen": "NepodaÅilo se otevÅÃt importnà soubor",
"importbadinterwiki": "Neplatný interwiki odkaz",
"importsuccess": "Import skonÄil!",
diff --git a/languages/i18n/csb.json b/languages/i18n/csb.json
index 400c353cdd..1131d85b8b 100644
--- a/languages/i18n/csb.json
+++ b/languages/i18n/csb.json
@@ -137,7 +137,7 @@
"hidden-category-category": "Zataconé kategòrëje",
"category-subcat-count": "{{PLURAL:$2|Na kategòrrjô zamëkô w se blós nôslédnÄ
pòdkategòrëjã.|Na kategòrëjô mô {{PLURAL:$1|pòdkategòrëje|$1 pòdkategòrëjôw}}, w $2 kategòrëjach.}}",
"category-subcat-count-limited": "Na kategòrëjô zamëkô w se {{PLURAL:$1|1 pòdkategòrëjã|$1 pòdkategòrëje|$1 pòdkategòrëjów}}.",
- "category-article-count": "{{PLURAL:$2|Na kategòrëjô zamëkôw w se blós jednÄ
starnã.|Niżi mómë $1 westrzód $2 starów w ti kategòrëji.}}",
+ "category-article-count": "{{PLURAL:$2|Na kategòrëjô zamëkô w se blós jednÄ
starnã.|Niżi mómë $1 westrzód $2 starnów w ti kategòrëji.}}",
"category-article-count-limited": "W ti kategòrëji {{PLURAL:$1|je 1 starna|sÄ
$1 starnë|je $1 starnów}}.",
"category-file-count": "{{PLURAL:$2|Na kategòrëjô zamëkô w se blós jeden lopk.|W ti kategòrëji {{PLURAL:$1|je 1 lopk|sÄ
$1 lopczi|je $1 lopków}} z oòglowi wielënë $2 lopków.}}",
"category-file-count-limited": "W ti kategòrëji {{PLURAL:$1|je 1 lopk|sÄ
$1 lopczi|je $1 lopków}}.",
@@ -593,7 +593,7 @@
"prefs-files": "Lopczi",
"prefs-custom-css": "swój CSS",
"prefs-custom-js": "swój JavaScript",
- "prefs-common-css-js": "Wespólny CSS/JS dlô wszëtczich skórków:",
+ "prefs-common-config": "Wespólny CSS/JS dlô wszëtczich skórków:",
"prefs-reset-intro": "Na ti starnie mòże doprowôdzëc nazôd domëslné nastôwë dlô ti starnë.\nNegò dzéjaniô ni mòżé pòzdze ju copnÄ
c.",
"prefs-emailconfirm-label": "Pòcwierdzenié e-mailowi adresë:",
"youremail": "E-mail:",
@@ -684,6 +684,7 @@
"rcfilters-savedqueries-defaultlabel": "Zapisóné filtrë",
"rcfilters-savedqueries-add-new-title": "Zapiszë aktualné ùstôwë filtrów.",
"rcfilters-clear-all-filters": "Wëczëszczë filtrë",
+ "rcfilters-show-new-changes": "Ãbôcz nowszé zjinaczi",
"rcfilters-search-placeholder": "Fitruj nowé zjinaczi (ùżij do te menu abò wëszukôj pòdle pòzwë filtra)",
"rcfilters-filterlist-title": "Filtrë",
"rcfilters-filterlist-feedbacklink": "Napiszë, jak cë sã widzÄ
te nowé nôrzãdza filtrowaniô.",
@@ -1240,6 +1241,7 @@
"specialpages": "Specjalné starnë",
"tag-filter": "Filtr [[Special:Tags|znakòwników]]:",
"tag-list-wrapper": "([[Special:Tags|{{PLURAL:$1|Znakòwnik|Znakòwniczi}}]]: $2)",
+ "tag-mw-changed-redirect-target": "Pòzmiana célu przeczerowaniô",
"tag-mw-blank": "Rëmniãcé caÅi zamkÅoscë starnë",
"tag-mw-rollback": "Copniãcé zjinaków",
"tags-title": "Znakòwniczi",
diff --git a/languages/i18n/cu.json b/languages/i18n/cu.json
index 8a10d62665..6d27e3e037 100644
--- a/languages/i18n/cu.json
+++ b/languages/i18n/cu.json
@@ -428,7 +428,6 @@
"minoreditletter": "мÒл",
"newpageletter": "нÒв",
"boteditletter": "аÒѵ",
- "rc_categories_any": "ÐÑÐ±Ñ Ð¸Ð· вÑбÑанÑÑ
",
"rc-change-size-new": "$1 {{PLURAL:$1|баиÑÑ|баиÑа|баиÑÑ}} поÑлѣди мѣнê",
"rc-old-title": "напÑÑва ÑÑÑаниÑа ÑÑвоÑѥна êко â $1 â",
"recentchangeslinked": "ÑÑвѧêанê ÑÑÑаниÑѧ",
diff --git a/languages/i18n/cv.json b/languages/i18n/cv.json
index cac833e37a..946c6c97f4 100644
--- a/languages/i18n/cv.json
+++ b/languages/i18n/cv.json
@@ -125,6 +125,7 @@
"faq": "ЫйХÑ",
"namespaces": "Ð¯Ñ Ñ
ÑÑÑиÑем",
"variants": "ÐаÑианÑÑем",
+ "navigation-heading": "ÐавигаÑи",
"errorpagetitle": "ÐÄнÄÑ",
"returnto": "$1 ÑавÑÄн.",
"tagline": "{{SITENAME}}",
@@ -163,7 +164,7 @@
"otherlanguages": "УÑÄÑ
ÑÄлÑ
еÑем",
"redirectedfrom": "($1 çинÑен кÑçаÑнÄ)",
"redirectpagesub": "ÐÑçаÑакан ÑÑÑаниÑа",
- "lastmodifiedat": "ÐÑ ÑÑÑаниÑÄна ÑлаÑки ÑлÄÑÑаÑÐ½Ä Ð²ÄÑ
ÄÑ: $2, $1.",
+ "lastmodifiedat": "ÐÑ ÑÑÑаниÑÄна .ÑлаÑки Ñ
ÑÑ Ñ
Óҫан ÑлÓÑÑаÑни: $1 $2.",
"viewcount": "ÐÑ ÑÑÑаниÑÄна $1 Ñ
ÑÑ Ð¿ÄÑ
нÄ.",
"protectedpage": "Ð¥Ó³ÑÄÐ»ÐµÐ½Ä ÑÑаÑÑÑ",
"jumpto": "ÐÑçаÑ:",
@@ -225,6 +226,7 @@
"nstab-template": "Шаблон",
"nstab-help": "ÐÑлÄÑÑ",
"nstab-category": "ÐаÑегоÑи",
+ "mainpage-nstab": "ТÓпел",
"nosuchaction": "ÐÑ Äçе ÑÄваймаÑÑпÄÑ",
"nosuchactiontext": "URLÑа çÑÑÐ½Ä Ñ
ÑÑÄва вики ÑкÑипÑÄ ÄнланмаÑÑÑ",
"nosuchspecialpage": "Ун пек ÑÑÑаниÑа çÑк",
@@ -432,14 +434,22 @@
"lineno": "$1-мÄÑ Ð¹ÄÑке:",
"editundo": "ÑнÑÑенÑ
и",
"searchresults": "ШÑÑÐ°Ð½Ä ÑезÑлÑÑаÑÄÑем",
+ "searchresults-title": "\"$1\" ÑÑÑаÑа ÑÑпни",
"textmatches": "СÑаÑÑÑÑенÑи ÑекÑÑ Ð¿ÄÑпеклÄÑ
Ä",
"prevn": "ÑнÑÑенÑ
и {{PLURAL:$1|$1}}",
"nextn": "ÑÑÄÑ
Ñ
иÑем {{PLURAL:$1|$1}}",
"prev-page": "ÑнÑÑенÑ
и ÑÑÑаниÑÄ",
"next-page": "ÑÑÄÑ
ÑÑÑаниÑÄ",
+ "shown-title": "ÐÓÑ ÑлÑе $1 ÑезÑлÑÑÐ°Ñ ÐºÓÑаÑÑ",
"viewprevnext": "ÐÄÑ
($1 {{int:pipe-separator}} $2) ($3)",
+ "searchprofile-articles": "СÑаÑÑÑÑем",
+ "searchprofile-images": "ÐÑлÑÑимедиа",
+ "searchprofile-everything": "ÐÑÑ Ò«ÓÑÑе",
+ "searchprofile-advanced": "ÐнлÓлаÑнÓ",
"searchprofile-articles-tooltip": "$1 -Ñе ÑÑÑани",
"searchprofile-images-tooltip": "ФайÄлÑене ÑÑÑани",
+ "searchprofile-everything-tooltip": "ÐÓнпÑÑ ÑлÑенÑе (ÑÓ³ÑÑе ÑвнинÑе Ñе) ÑÑÑа",
+ "searchprofile-advanced-tooltip": "ЯÑаÑÐ»Ó ÑÑ ÑалккÓÑÓÑенÑе ÑÑÑа",
"search-result-size": "$1 ({{PLURAL:$2|1 ÑÄмаÑ
|$2 ÑÄмаÑ
}})",
"search-category": "(каÑегоÑи $1)",
"search-interwiki-caption": "ТÄван пÑоекÑÑем",
@@ -518,6 +528,7 @@
"grouppage-sysop": "{{ns:project}}:ÐдминиÑÑÑаÑоÑÑем",
"grouppage-bureaucrat": "{{ns:project}}:ÐÑÑокÑаÑÑем",
"grouppage-suppress": "{{ns:project}}:ТÄÑÄÑлекенÑем",
+ "newuserlogpage": "Ð¥ÑÑÑÓнакан ÑегиÑÑÑаÑиленнин кÑн-Ò«ÑлÓ",
"rightslogtext": "ÐÑ Ñ
ÑÑÑÄнаканÑен пÑавиÑене ÑлÄÑÑаÑниÑен жÑÑналÄ.",
"enhancedrc-history": "иÑÑоÑи",
"recentchanges": "УлÄÑÄнниÑем",
@@ -558,7 +569,7 @@
"newpageletter": "Ã",
"boteditletter": "б",
"unpatrolledletter": "!",
- "rc_categories_any": "ÐаÑни",
+ "rc-change-size-new": "УлÓÑÑаÑÐ½Ó Ñ
ÑÒ«Ò«Óн $1 Ð±Ð°Ð¹Ñ Ð¿ÑлаÑÑ",
"newsectionsummary": "/* $1 */ ÃÄÐ½Ä Ñема",
"recentchangeslinked": "ÃÑÑ
ÄÐ½Ð½Ä ÑлÑÄнÑÑем",
"recentchangeslinked-feed": "ÃÑÑ
ÄÐ½Ð½Ä ÑлÑÄнÑÑем",
@@ -607,6 +618,7 @@
"listfiles_description": "ÄнланÑаÑкÄÑ",
"file-anchor-link": "Файл",
"filehist": "Файл иÑÑоÑийÄ",
+ "filehist-help": "ÐÓÑ
ÓÑ Ò«Ð¸Ð½Ðµ пÑÑÑан, Ñн ÑÑÑ
неÑ
и веÑÑине пÓÑ
ма пÑлаÑÑ.",
"filehist-current": "Ñ
алÑÑ
и",
"filehist-datetime": "ÐаÑа/ÐÄÑ
ÄÑ",
"filehist-thumb": "ÐиниаÑÑÑа",
@@ -778,6 +790,7 @@
"undelete-search-box": "ÐÄлаÑÑа пÄÑаÑ
Ð½Ä ÑÑÑаниÑÄÑен Ñ
ÑÑÑинÑи ÑÑÑав",
"undelete-search-submit": "ШÑÑа",
"namespace": "Ð¯Ñ Ñ
ÑÑÑи:",
+ "invert": "СÑйланине ҫавÓÑ",
"blanknamespace": "(ТÄп)",
"contributions": "{{GENDER:$1|УÑÄ ÐºÑÑакан}} Ó³ÑÄмÄÑем",
"contributions-title": "УÑÄ ÐºÑÑакан $1 Ñ
ÑÑни",
@@ -868,25 +881,44 @@
"tooltip-pt-watchlist": "ÐÑÐ¸Ñ Ð¿ÄÑ
акан ÑÑÑаниÑиÑем",
"tooltip-pt-mycontris": "СиÑÄн Ñ
ÑÑниÑем",
"tooltip-pt-anoncontribs": "ÐÑ IP адÑеÑпа ÑÓ³ÑлеÑниÑем",
+ "tooltip-pt-login": "ÐÓме киÑлеÑ
маÑ-Ñ
а Ñа, аÑа аванÑаÑ
.",
"tooltip-pt-logout": "СеанÑне пÄÑеÑ",
+ "tooltip-pt-createaccount": "ÐккаÑÐ½Ñ ÑÑ Ñа ÑиÑÑемÓна кÓÑ. ÐаллаÑ
, ÑнÑÓÑаÑ
Ñа ÑÑаÑÑ, анÑаÑ
Ñа аккаÑнÑпа кÓни лайÓÑ
ÑаÑ
.",
"tooltip-ca-talk": "СÑаÑÑÑна ÑÓ³ÑÑе ÑваÑÑи",
- "tooltip-ca-edit": "ÐÑÐ¸Ñ ÐºÑ ÑÑÑаниÑÓна ÑÓ³ÑлеÑме пÑлÑаÑаÑÓÑ. ТаÑÑ
аÑÑÓн Ò«ÑÑÑа Ñ
ÓваÑиÑен ÑÑÑаниÑÓ Ð¼Óнле пÑлаÑÑине пÓÑ
ÓÑ.",
+ "tooltip-ca-edit": "Ðле ÑÓ³ÑлеÑ",
"tooltip-ca-addsection": "ÃÄÐ½Ä Ð¿Ð°Ð¹ ÑÑ",
"tooltip-ca-viewsource": "ÐÑ ÑÑÑаниÑÓна ÑÑÐ¸Ñ ÑлÓÑÑаÑма пÑлÑаÑаймаÑÑÓÑ. Óна мÓнле Ò«ÑÑнине кÓна пÓÑ
ма пÑлÑаÑаÑÓÑ.",
+ "tooltip-ca-history": "Ðле ÑлÓÑÑаÑнин кÑн-Ò«ÑлÓ",
"tooltip-ca-protect": "УлÓÑÑаÑÑÑенÑен ÑÑÑ
лаÑÑи",
"tooltip-ca-delete": "СÑÑаниÑÓна кÓлаÑÑа пÓÑаÑ
малли",
"tooltip-ca-move": "СÑÑаниÑÓна ÑÑÓÑ
Ò«ÓÑе кÑҫаÑаÑÑи",
"tooltip-ca-watch": "ÐÑ ÑÑÑаниÑÓ Ñ
ÑÒ«Ò«Óн ÑÓнама пÑҫлаÑÑи",
"tooltip-ca-unwatch": "ÐÑ ÑÑÑаниÑÓ Ñ
ÑÒ«Ò«Óн ÑÑÓÑ
ÑÓнамалла маÑ",
"tooltip-search": "ШÑÑав {{SITENAME}}",
+ "tooltip-search-go": "ÐÑÑ Ð¿ÑлÑан ҫак ÑÑÐ»Ó ÑÑÑаниÑÓна кÑÒ«",
+ "tooltip-search-fulltext": "Ҫак ÑекÑÑÐ»Ó ÑÑÑаниÑиÑене ÑÑп",
"tooltip-p-logo": "ТÓп ÑÑÑаниÑÓ",
+ "tooltip-n-mainpage": "ТÓпеле кÑÒ«",
+ "tooltip-n-mainpage-description": "ТÓпеле кÑÒ«",
+ "tooltip-n-portal": "ÐÑÐ¾ÐµÐºÑ Ò«Ð¸Ð½Ñенне, мÓн ÑÑма пÑлÑаÑнине, ÑпалаÑем ÓÒ«Ñине пÓл",
+ "tooltip-n-currentevents": "ХалÑÑ
и пÑлÓмÑем ҫинÑен",
+ "tooltip-n-recentchanges": "ЮлаÑки ÑлÓÑÑаÑнин йÑÑÓ",
+ "tooltip-n-randompage": "ÓнÑÓÑÑÑан ÑÑÐ¹Ð»Ð°Ð½Ó ÑÑÑаниÑа кÓÑаÑÑ",
+ "tooltip-n-help": "ЫйÑÑа пÓлмелли вÑÑÓн",
+ "tooltip-t-whatlinkshere": "ÐÑнÑа каҫакан пÑÑ ÑÑÑаниÑÓн ÑÑ-йÑÑÓ",
"tooltip-feed-atom": "ÐÑ ÑÑÑаниÑÄн Atom кÑçаÑÑ",
"tooltip-t-upload": "ФайлÑем Ñ
ÑÑмалли",
+ "tooltip-t-specialpages": "ЯÑаÑÐ»Ó ÑÑÑаниÑÓÑен пÓÑÓм ÑÑ-йÑÑÓ",
+ "tooltip-t-print": "Ҫак ÑÑÑаниÑÓн пиÑÐµÑ Ð²ÐµÑÑийÓ",
+ "tooltip-t-permalink": "ÐлÓн ҫак веÑÑийÓн ÑлÓÑÑаÑман каҫҫи",
+ "tooltip-ca-nstab-main": "СÑаÑÑÑна пÄÑ
",
+ "tooltip-ca-nstab-special": "ÐÑ ÑÑаÑÐ»Ó Ñл, Óна ÑÓ³ÑлеÑме май Ò«Ñк",
"tooltip-ca-nstab-image": "ФайлÄн ÑÑÑаниÑи",
"tooltip-ca-nstab-template": "ШаблонÄн ÑÑÑаниÑи",
"tooltip-ca-nstab-category": "ÐаÑегоÑин ÑÑÑаниÑине пÄÑ
ни",
"tooltip-save": "ТӳÑлеÑÓ³Ñене аÑÑÑÑа Ñ
ÄваÑмалла",
"tooltip-watch": "Ãак ÑÑÑаниÑÄна пÄÑ
Ñа ÑÄмаллиÑем ÑÑÑне Ñ
ÑÑ",
+ "tooltip-rollback": "ÐÓÑÑе пÑÑÑан, ÑлаÑки ÑÓ³ÑлеÑекенÓн ÑлÓÑÑаÑнине каÑеÑÑ",
"tooltip-summary": "ÐÄÑкÄн ÄнланÑаÑÑа паÑÄÑ",
"anonymous": "ÐÐ°Ð»Ð»Ä Ð¼Ð°Ñ {{PLURAL:$1|Ñ
ÑÑÑÄнакан|Ñ
ÑÑÑÄнаканÑем}} {{SITENAME}}",
"siteuser": "{{SITENAME}} ÑÑÄ ÐºÑÑакан $1",
@@ -912,6 +944,7 @@
"file-info": "Ñайл пÑÑÄкÄÑÄ: $1, MIME-ÑÄÑÄ: $2",
"file-info-size": "$1 à $2 пикÑел, Ñайл пÑÑÄкÄÑе: $3, MIME-ÑÄÑÄ: $4",
"file-nohires": "ÐÑÑÄкÑаÑ
калÄпÄÑли çÑк.",
+ "show-big-image-size": "$1 à $2 пикÑел",
"newimages": "ÃÄÐ½Ä ÑайлÑен галеÑейи",
"newimages-summary": "ÐÑ ÑÑаÑÐ»Ä ÑÑÑаниÑÄÑа ÑÑÐ¸Ñ Ð½Ñмай пÑлмаÑÑÑ ÐºÄÑÑÐ½Ä ÑайлÑене кÑÑаÑÄÑ",
"noimages": "ӲкеÑÑÄкÑем çÑк.",
@@ -967,6 +1000,7 @@
"specialpages-group-media": "Ðедиа-маÑеÑиалÑемпе ÑÑлÑаÑÄÑÑем",
"specialpages-group-users": "Ð¥ÑÑÑÄнаканÑем ÑаÑа пÑаваÑем",
"specialpages-group-highuse": "ÐÑмай ÑÑÄ ÐºÑÑакан ÑÑÑаниÑÄÑем",
+ "tag-list-wrapper": "([[Special:Tags|$1 меÑка]]: $2)",
"compare-submit": "ТанлаÑÑаÑ",
"htmlform-selectorother-other": "УÑÄÑ
Ñ
и",
"htmlform-no": "ÃÑк",
@@ -977,7 +1011,7 @@
"logentry-newusers-create": "Ð¥ÑÑÑÄнакан $1 аккаÑнÑне {{GENDER:$2|ÑÑÑÄ}}",
"rightsnone": "(çÑк)",
"feedback-back": "ÐаÑлла",
- "searchsuggest-search": "ШÑÑамалли",
+ "searchsuggest-search": "{{SITENAME}} ÑайÑÓнÑе ÑÑÑа",
"pagelang-select-lang": "ЧÄлÑ
е ÑÑйлÄÑ",
"mediastatistics-header-audio": "ÐÑдио",
"mediastatistics-header-video": "ÐидеоÑем",
diff --git a/languages/i18n/cy.json b/languages/i18n/cy.json
index 1a1e6a2edd..f4f377b3b6 100644
--- a/languages/i18n/cy.json
+++ b/languages/i18n/cy.json
@@ -175,6 +175,7 @@
"tagline": "Oddi ar {{SITENAME}}",
"help": "Cymorth",
"search": "Chwilio",
+ "search-ignored-headings": " # \n# Penawdau a gaiffeu hanwybyddu gan Chwilio.\n# bydd y newid yn cymryd lle cyn gynted ag y bydd y pennawd wedi cael ei fynegeio.\n# Gallwch ailfynegeio drwy wneud ''null edit''.\n# Dyma drefn y geiriau:\n# * Mae popeth o'r lythyren \"#\" i ddiwedd y linell yn \n sylw.\nCyfeiriadau\nDolennau allanol\nGweler hefyd\n #
",
"searchbutton": "Chwilier",
"go": "Eler",
"searcharticle": "Mynd",
@@ -455,7 +456,7 @@
"nosuchusershort": "Does dim defnyddiwr o'r enw \"$1\". Gwiriwch eich sillafu.",
"nouserspecified": "Mae'n rhaid nodi enw defnyddiwr.",
"login-userblocked": "Mae'r defnyddiwr hwn wedi ei flocio. Ni ellir mewngofnodi.",
- "wrongpassword": "Nid yw'r cyfrinair a deipiwyd yn gywir. Rhowch gynnig arall arni, os gwelwch yn dda.",
+ "wrongpassword": "Nid yw'r cyfrinair a deipiwyd yn gywir. Rhowch gynnig arall arni.",
"wrongpasswordempty": "Roedd y cyfrinair yn wag. Rhowch gynnig arall arni.",
"passwordtooshort": "Mae'n rhaid fod gan gyfrinair o leia $1 {{PLURAL:$1|nod}}.",
"passwordtoolong": "Ni chaiff cyfrinair fod yn hirach na {{PLURAL:$1|1 llythyren|$1 llythyren}}.",
@@ -522,7 +523,7 @@
"resetpass-no-info": "Ni allwch fynd at y dudalen hon yn uniongyrchol heblaw eich bod wedi mewngofnodi.",
"resetpass-submit-loggedin": "Newidier y cyfrinair",
"resetpass-submit-cancel": "Diddymu",
- "resetpass-wrong-oldpass": "Mae'r cyfrinair dros dro neu gyfredol yn annilys.\nGall fod eich bod wedi llwyddo newid eich cyfrinair eisoes neu eich bod wedi gofyn am gyfrinair dros dro newydd.",
+ "resetpass-wrong-oldpass": "Mae'r cyfrinair dros dro neu gyfredol yn annilys.\nEfallai eich bod wedi newid eich cyfrinair neu wedi gofyn am gyfrinair dros dro newydd.",
"resetpass-recycled": "Ailosodwch eich cyfrinair os gwelwch yn dda i rywbeth heblaw eich cyfrinair cyfredol.",
"resetpass-temp-emailed": "Rydych wedi mewngofnodi gyda chod dros dro. I gwbwlhau hyn, mae'n rhaid i chi ailosod eich cyfrinair yma:",
"resetpass-temp-password": "Cyfrinair dros dro:",
@@ -549,7 +550,7 @@
"passwordreset-ignored": "Ailosod y cyfrinair nad ymdriniwyd â. Efallai y nid y darparwr yn osod?",
"passwordreset-invalidemail": "Cyfeiriad e-bost annilys",
"passwordreset-nodata": "Ni wnaethoch ddarparu ebost na chyfeiriad",
- "changeemail": "Newid y cyfeiriad e-bost",
+ "changeemail": "Newid neu ddiddymu cyfeiriad e-bost",
"changeemail-header": "Cwbwlhewch y ffurflen hon i newid cyfeiriad e-bost y cyfrifi. I ddileu pob cysylltiad i bob cyfeiriad ebost, gadewch e'n wag.",
"changeemail-no-info": "Ni allwch fynd at y dudalen hon heblaw eich bod wedi mewngofnodi.",
"changeemail-oldemail": "Y cyfeiriad e-bost presennol:",
@@ -600,7 +601,7 @@
"anoneditwarning": "Dalier sylw: Nid ydych wedi mewngofnodi. Fe fydd eich cyfeiriad IP yn ymddangos ar hanes golygu'r dudalen hon. Gallwch ddewis cuddio'ch cyfeiriad IP drwy greu cyfrif (a mewngofnodi) cyn golygu.",
"anonpreviewwarning": "''Nid ydych wedi mewngofnodi. Os y cadwch eich newidiadau caiff eich cyfeiriad IP ei gofnodi yn hanes golygu'r dudalen hon.''",
"missingsummary": "'''Sylwer:''' Nid ydych wedi gosod nodyn yn y blwch 'Crynodeb'.\nOs y pwyswch eto ar 'Cadw'r dudalen' caiff y golygiad ei gadw heb nodyn.",
- "selfredirect": "Gofal: Rydych yn ailgyfeirio'r dudalen hon ati hi ei hun! Gwirwch yr hyn rydych yn ceisio'i wneud. Os cliciwch \"$1\" eto yna caiff y dudalen ailgyfeirio (wallus!) ei chreu beth bynnag.",
+ "selfredirect": "Gofal: Rydych yn ailgyfeirio'r ddalen hon ati hi ei hun! Efallai fod y targed yn wallus gennych, neu rydych yn golygu dalen anghywir.\n\n Os cliciwch \"$1\" eto yna caiff y ddalen ailgyfeirio (wallus!) ei chreu beth bynnag.",
"missingcommenttext": "Rhowch eich sylwadau isod.",
"missingcommentheader": "Nodyn atgoffa: \nNid ydych wedi cynnig unrhywbeth yn y blwch 'Pwnc:'. Os y cliciwch \"$1\" eto fe gedwir y golygiad heb bennawd.",
"summary-preview": "Rhagolwg o'r crynodeb:",
@@ -635,7 +636,7 @@
"userjspreview": "'''Cofiwch -- dim ond rhagolwg o'ch JavaScript yw hwn; nid yw wedi'i gadw eto!'''",
"sitecsspreview": "'''Cofiwch - dim ond rhagolwg o'ch CSS yw hwn.'''\n'''Nid yw wedi'i gadw eto!'''",
"sitejspreview": "'''Cofiwch - dim ond rhagolwg o'ch côd JavaScript yw hwn.'''\n'''Nid yw wedi'i rhoi ar gadw eto!'''",
- "userinvalidcssjstitle": "'''Rhybudd:''' Nid oes gwedd o'r enw \"$1\".\nCofiwch bod y tudalennau .css a .js yn defnyddio llythrennau bach, e.e. {{ns:user}}:Foo/vector.css yn hytrach na {{ns:user}}:Foo/Vector.css.",
+ "userinvalidconfigtitle": "'''Rhybudd:''' Nid oes gwedd o'r enw \"$1\".\nCofiwch bod y tudalennau .css a .js yn defnyddio llythrennau bach, e.e. {{ns:user}}:Foo/vector.css yn hytrach na {{ns:user}}:Foo/Vector.css.",
"updated": "(Diweddariad)",
"note": "'''Dalier sylw:'''",
"previewnote": "'''Cofiwch taw rhagolwg yw hwn.''' Nid yw eich gwaith wedi ei roi ar gadw eto!",
@@ -654,6 +655,7 @@
"yourtext": "Eich testun",
"storedversion": "Y golygiad diweddaraf yn y storfa",
"editingold": "'''RHYBUDD: Rydych chi'n golygu hen ddiwygiad o'r dudalen hon. Os caiff ei chadw, bydd unrhyw newidiadau diweddarach yn cael eu colli.'''",
+ "unicode-support-fail": "Ymddengys nad yw eich porwr yn gyfarwydd ag Unicode. Mae'n angenrheidiol os ydych am olygu; oherwydd hyn, nid ydym wedi cadw eich gwaith.",
"yourdiff": "Gwahaniaethau",
"copyrightwarning": "Mae pob cyfraniad i {{SITENAME}} yn cael ei ryddhau o dan termau'r Drwydded Ddogfen Rhydd ($2) (gwelwch $1 am fanylion). Os nad ydych chi'n fodlon i'ch gwaith gael ei olygu heb drugaredd, neu i gopïau ymddangos ar draws y we, peidiwch a'i gyfrannu yma.
\nRydych chi'n cadarnhau mai chi yw awdur y cyfraniad, neu eich bod chi wedi'i gopïo o'r parth cyhoeddus (''public domain'') neu rywle rhydd tebyg. '''Nid''' yw'r mwyafrif o wefannau yn y parth cyhoeddus.\n\n'''PEIDIWCH à CHYFRANNU GWAITH O DAN HAWLFRAINT HEB GANIATÃD!'''",
"copyrightwarning2": "Sylwch fod pob cyfraniad i {{SITENAME}} yn cael ei ryddhau o dan termau'r Drwydded Ddogfen Rhydd (gwelwch $1 am fanylion).\nOs nad ydych chi'n fodlon i'ch gwaith gael ei olygu heb drugaredd, neu i gopïau ymddangos ar draws y we, peidiwch a'i gyfrannu yma.
\nRydych chi'n cadarnhau mai chi yw awdur y cyfraniad, neu eich bod chi wedi'i gopïo o'r parth cyhoeddus (''public domain'') neu rywle rhydd tebyg.
\n'''PEIDIWCH Ã CHYFRANNU GWAITH O DAN HAWLFRAINT HEB GANIATÃD!'''",
@@ -662,7 +664,7 @@
"readonlywarning": "Rhybudd: Mae'r gronfa ddata wedi'i chloi am gyfnod er mwyn cynnal a chadw, felly fyddwch chi ddim yn gallu cadw'ch golygiadau ar hyn o bryd.\nGallwch gopïo'r testun a'i gludo i ffeil destun er mwyn ei gadw tan yn hwyrach.\n\nCynigiodd y gweinyddwr a glodd y gronfa ddata y rheswm hwn dros ei chloi: $1",
"protectedpagewarning": "'''RHYBUDD: Mae'r dudalen hon wedi'i diogelu. Dim ond gweinyddwyr sydd yn gallu ei golygu.'''\nDyma'r cofnod lòg diweddaraf, er gwybodaeth:",
"semiprotectedpagewarning": "'''Sylwer:''' Mae'r dudalen hon wedi ei chloi; dim ond defnyddwyr cofrestredig a allant ei golygu.\nDyma'r cofnod lòg diweddaraf, er gwybodaeth:",
- "cascadeprotectedwarning": "Dalier sylw: Mae'r dudalen hon wedi ei chloi fel mai dim ond defnyddwyr â galluoedd 'Gweinyddwyr' all ei newid, oherwydd ei bod yn rhan o'r {{PLURAL:$1|dudalen ganlynol|dudalen ganlynol|tudalennau canlynol}} sydd wedi {{PLURAL:$1|ei sgydol-ddiogelu|ei diogelu|eu diogelu}}.",
+ "cascadeprotectedwarning": "Gofal: Mae'r ddalen hon wedi ei chloi fel mai dim ond defnyddwyr â [[Special:ListGroupRights|hawliau arbennig]] all olygu, gan fod y ddalen yn cael ei dynnu i fewn i'r dalennau canlynol:",
"titleprotectedwarning": "'''RHYBUDD: Mae'r dudalen hon wedi ei chloi; dim ond rhai defnyddwyr sydd â'r [[Special:ListGroupRights|gallu]] i'w chreu.'''\nDyma'r cofnod lòg diweddaraf, er gwybodaeth:",
"templatesused": "Defnyddir y {{PLURAL:$1|nodyn hwn|nodyn hwn|nodiadau hyn|nodiadau hyn|nodiadau hyn|nodiadau hyn}} yn y dudalen hon:",
"templatesusedpreview": "Defnyddir y {{PLURAL:$1|nodyn hwn|nodyn hwn|nodiadau hyn|nodiadau hyn|nodiadau hyn|nodiadau hyn}} yn y rhagolwg hwn:",
@@ -679,7 +681,7 @@
"permissionserrorstext-withaction": "Nid yw'r gallu hwn ($2) ganddoch, am y {{PLURAL:$1|rheswm|rheswm|rhesymau|rhesymau|rhesymau|rhesymau}} canlynol:",
"recreate-moveddeleted-warn": "'''Dalier sylw: Rydych yn ail-greu tudalen a ddilewyd rhywdro.'''\n\nYstyriwch a fyddai'n dda o beth i barhau i olygu'r dudalen hon.\nDyma'r logiau dileu a symud ar gyfer y dudalen, er gwybodaeth:",
"moveddeleted-notice": "Dilëwyd y ddalen hon.\nDangosir y logiau dileu, cloi a symud ar gyfer y ddalen isod.",
- "moveddeleted-notice-recent": "Ymddiheurwn! Dilewyd y ddalen hon yn ddiweddar (yn y 24 awr diwethaf).\nEr gwybodaeth, darperir isod yr holl wybodaeth berthnasol.",
+ "moveddeleted-notice-recent": "Ymddiheurwn! Dilewyd y ddalen hon yn ddiweddar (yn y 24 awr diwethaf).\nDarperir isod yr holl wybodaeth berthnasol.",
"log-fulllog": "Gweld y lòg cyflawn",
"edit-hook-aborted": "Terfynwyd y golygiad cyn pryd gan fachyn.\nNi roddodd eglurhad.",
"edit-gone-missing": "Ni ellid diweddaru'r dudalen.\nYmddengys iddi gael ei dileu.",
@@ -688,6 +690,7 @@
"postedit-confirmation-created": "Crewyd y dudalen.",
"postedit-confirmation-restored": "Adferwyd y dudalen.",
"postedit-confirmation-saved": "Rhoddwyd eich golygiad ar gadw.",
+ "postedit-confirmation-published": "Cyhoeddwy eich gwaith.",
"edit-already-exists": "Ni ellid creu tudalen newydd.\nMae ar gael yn barod.",
"defaultmessagetext": "Y testun rhagosodedig",
"content-failed-to-parse": "Ni lwyddwyd i ddosrannu'r cynnwys sydd ar ffurf $2 yn ôl y model $1: $3",
@@ -961,7 +964,7 @@
"recentchangesdays-max": "(hyd at $1 {{PLURAL:$1||diwrnod|ddiwrnod|diwrnod|diwrnod|diwrnod}})",
"recentchangescount": "Nifer y golygiadau i'w dangos yn ddiofyn:",
"prefs-help-recentchangescount": "Mae hwn yn cynnwys newidiadau diweddar, hanesion tudalennau, a logiau.",
- "prefs-help-watchlist-token2": "Dyma'r tocyn cudd i borthiant gwe eich rhestr wylio.\nBydd unrhyw un sy'n gwybod hwn yn gallu darllen eich rhestr wylio, felly peidiwch a'i roi i neb.\n[[Special:ResetTokens|Cliciwch fan hyn os oes angen ailosod y tocyn]].",
+ "prefs-help-watchlist-token2": "Dyma'r tocyn cudd i borthiant gwe eich rhestr wylio.\nBydd unrhyw un sy'n ei wybod yn gallu darllen eich rhestr wylio, felly peidiwch a'i roi i neb.\n\nGallwch ei [[Special:ResetTokens|ailosod]].",
"savedprefs": "Mae eich dewisiadau wedi cael eu cadw.",
"savedrights": "Nid yw hawliau {{GENDER:$1|$1}} wedi'u harbed.",
"timezonelegend": "Ardal amser:",
@@ -980,14 +983,16 @@
"timezoneregion-europe": "Ewrop",
"timezoneregion-indian": "Cefnfor yr India",
"timezoneregion-pacific": "Y Môr Tawel",
- "allowemail": "Galluogi e-bost oddi wrth ddefnyddwyr eraill",
+ "allowemail": "Caniatau e-bost oddi wrth defnyddwyr eraill",
+ "email-allow-new-users-label": "Caniatau e-bost oddi wrth defnyddwyr newydd",
+ "email-blacklist-label": "Atal y defnyddwyr canlynol rhag danfon ebost ataf:",
"prefs-searchoptions": "Chwilio",
"prefs-namespaces": "Parthau",
"default": "rhagosodyn",
"prefs-files": "Ffeiliau",
"prefs-custom-css": "CSS o hunan-ddewis",
"prefs-custom-js": "JS o hunan-ddewis",
- "prefs-common-css-js": "CSS/JS ar y cyd ar gyfer pob gwedd:",
+ "prefs-common-config": "CSS/JS ar y cyd ar gyfer pob gwedd:",
"prefs-reset-intro": "Gallwch ddefnyddio'r dudalen hon i ailosod eich dewisiadau i'r rhai diofyn.\nNi allwch ddadwneud y weithred hon.",
"prefs-emailconfirm-label": "Cadarnhau'r e-bost:",
"youremail": "Eich cyfeiriad e-bost",
@@ -1254,11 +1259,13 @@
"rcfilters-group-results-by-page": "Canlyniadau'r grwp bob yn ddalen",
"rcfilters-activefilters": "Hidlau sydd ar waith",
"rcfilters-advancedfilters": "Ffiltrau ychwanegol",
- "rcfilters-limit-title": "Newidiadau a ddangosir",
+ "rcfilters-limit-title": "Canlyniadau a ddangosir",
+ "rcfilters-date-popup-title": "Cyfnod (i'w chwilio)",
"rcfilters-days-title": "Dyddiau diweddar",
"rcfilters-hours-title": "Oriau diweddar",
"rcfilters-days-show-days": "$1 {{PLURAL:$1|diwrnod}}",
"rcfilters-days-show-hours": "$1 {{PLURAL:$1|awr}}",
+ "rcfilters-highlighted-filters-list": "Amlygwyd: $1",
"rcfilters-quickfilters": "Ffiltrau a arbedwyd",
"rcfilters-quickfilters-placeholder-title": "Dim dolenni wedi'u cadw hyd yma",
"rcfilters-savedqueries-defaultlabel": "Ffiltrau a arbedwyd",
@@ -1334,6 +1341,8 @@
"rcfilters-liveupdates-button": "Diweddariadau, byw (''Live updates'')",
"rcfilters-liveupdates-button-title-on": "Diffod y 'Diweddariadau, byw'",
"rcfilters-liveupdates-button-title-off": "Arddangos newidiadau wrth iddynt ddigwydd",
+ "rcfilters-watchlist-edit-watchlist-button": "Golygwch eich Rhestr Wylio",
+ "rcfilters-preference-label": "Cuddio'r fersiwn ddiweddaraf o Newidiadau Diweddaraf",
"rcnotefrom": "Isod rhestrir pob newid er $3, $4 (ymddengys $1 ohonynt).",
"rclistfromreset": "Ailosod dyddiad yr hyn rydych wedi'i ddewis",
"rclistfrom": "Dangos newidiadau newydd, gan ddechrau ers $3 $2",
@@ -1367,8 +1376,6 @@
"newpageletter": "N",
"boteditletter": "b",
"number_of_watching_users_pageview": "[$1 {{PLURAL:$1|defnyddwyr|defnyddiwr|ddefnyddiwr|defnyddiwr|defnyddiwr|o ddefnyddwyr}} yn gwylio]",
- "rc_categories": "Cyfyngu i gategorïau (gwahanwch gyda \"|\")",
- "rc_categories_any": "Unrhyw un",
"rc-change-size-new": "$1 {{PLURAL:$1|beit}} wedi'r newid",
"newsectionsummary": "/* $1 */ adran newydd",
"rc-enhanced-expand": "Dangos y manylion",
@@ -1378,7 +1385,7 @@
"recentchangeslinked-feed": "Newidiadau perthnasol",
"recentchangeslinked-toolbox": "Newidiadau perthnasol",
"recentchangeslinked-title": "Newidiadau cysylltiedig â \"$1\"",
- "recentchangeslinked-summary": "Mae'r dudalen arbennig hon yn dangos y newidiadau diweddaraf i'r tudalennau hynny y mae cyswllt yn arwain atynt ar y dudalen a enwir (neu newidiadau i dudalennau sy'n aelodau o'r categori a enwir). Dangosir tudalennau sydd ar [[Special:Watchlist|eich rhestr wylio]] mewn print '''trwm'''.",
+ "recentchangeslinked-summary": "Rhowch enw dalen i weld newidiadau ar ddalenau sy'n cyfeirio neu'n dolennu iddi. I weld aelodau o gategori, nodwch Categori:Enw'r categori. Bydd newidiadau i unrhyw ddalen sydd o fewn eich [[Special:Watchlist|Rhestr Wylio]] mewn ffont trwm.",
"recentchangeslinked-page": "Tudalen:",
"recentchangeslinked-to": "Dangos newidiadau i'r tudalennau â chyswllt arnynt sy'n arwain at y dudalen a enwir",
"recentchanges-page-added-to-category": "Ychwanegwyd [[:$1]] at y categori",
@@ -1522,7 +1529,7 @@
"lockmanager-fail-closelock": "Wedi methu cau'r ffeil cloi mynediad at \"$1\".",
"lockmanager-fail-deletelock": "Wedi methu dileu'r ffeil cloi mynediad at \"$1\".",
"lockmanager-fail-acquirelock": "Wedi methu cael clo ar \"$1\".",
- "lockmanager-fail-openlock": "Wedi methu agor y ffeil cloi mynediad at \"$1\".",
+ "lockmanager-fail-openlock": "Methwyd agor \"$1\". Ydy eich cyfeiriadur uchlwytho (''upload directory'') yn gywir ac y gellwch sgwennu i'r cyfeiriadur. Gweler: https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:$wgUploadDirectory am ragor o wybodaeth.",
"lockmanager-fail-releaselock": "Wedi methu agor y clo ar \"$1\".",
"lockmanager-fail-db-bucket": "Methwyd cysylltu â digon o gronfeydd data cloi yn y bwced $1.",
"lockmanager-fail-db-release": "Wedi methu agor y cloion ar y gronfa ddata $1.",
@@ -1540,6 +1547,8 @@
"uploadstash-errclear": "Ni lwyddwyd i glirio'r ffeiliau.",
"uploadstash-refresh": "Adnewyddu rhestr y ffeiliau",
"uploadstash-thumbnail": "gweld y ciplun",
+ "uploadstash-bad-path": "'Dyw'r llwybr ddim yn bodoli.",
+ "uploadstash-bad-path-invalid": "'Dyw'r llwybr ddim yn gywir.",
"invalid-chunk-offset": "Atred annilys i'r talpiau",
"img-auth-accessdenied": "Ni chaniatawyd mynediad",
"img-auth-nopathinfo": "PATH_INFO yn eisiau.\nNid yw'ch gweinydd wedi ei osod i fedru pasio'r wybodaeth hon.\nEfallai ei fod wedi ei seilio ar CGI, ac heb fod yn gallu cynnal img_auth.\nGweler https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:Image_Authorization.",
@@ -1937,7 +1946,7 @@
"unwatchthispage": "Stopio gwylio",
"notanarticle": "Ddim yn erthygl/ffeil",
"notvisiblerev": "Y diwygiad wedi cael ei ddileu",
- "watchlist-details": "{{PLURAL:$1|Nid oes dim tudalennau|Mae $1 dudalen|Mae $1 dudalen|Mae $1 tudalen|Mae $1 thudalen|Mae $1 o dudalennau}} ar eich rhestr wylio, heb gynnwys tudalennau sgwrs ar wahan.",
+ "watchlist-details": "{{PLURAL:$1|Nid oes dim tudalennau|Mae $1 dudalen|Mae $1 dudalen|Mae $1 tudalen|Mae $1 thudalen|Mae $1 o dudalennau}} ar eich rhestr wylio, heb gynnwys tudalennau sgwrs ar wahan.\n\nCeir {{PLURAL:$1|$1 dalen|dalen}} yn eich Rhestr Wylio.",
"wlheader-enotif": "Galluogwyd hysbysiadau trwy e-bost.",
"wlheader-showupdated": "Mae tudalennau sydd wedi newid ers i chi eu gweld ddiwethaf wedi'u '''hamlygu'''.",
"wlnote": "Isod, {{PLURAL:$1|yw'r golygiad diweddaraf |yw'r golygiadau diweddaraf $1 changes}} yn y {{PLURAL:$2|hour|$2 awr}}, fel ag y mae ar $3, $4.",
@@ -2132,18 +2141,19 @@
"sp-contributions-newbies-sub": "Ar gyfer cyfrifon newydd",
"sp-contributions-newbies-title": "Cyfraniadau defnyddwyr ar gyfer cyfrifon newydd",
"sp-contributions-blocklog": "lòg blocio",
- "sp-contributions-suppresslog": "atal cyfraniadau'r defnyddiwr",
- "sp-contributions-deleted": "cyfraniadau defnyddiwr dileedig",
+ "sp-contributions-suppresslog": "atal cyfraniadau'r {{GENDER:$1|defnyddiwr}}",
+ "sp-contributions-deleted": "cyfraniadau a ddilewyd gan y {{GENDER:$1|defnyddiwr}}",
"sp-contributions-uploads": "uwchlwythiadau",
"sp-contributions-logs": "logiau",
"sp-contributions-talk": "sgwrs",
- "sp-contributions-userrights": "rheoli galluoedd defnyddwyr",
+ "sp-contributions-userrights": "rheoli galluoedd {{GENDER:$1|defnyddwyr}}",
"sp-contributions-blocked-notice": "Mae'r defnyddiwr hwn wedi'i rwystro ar hyn o bryd. \nMae'r cofnod diweddaraf yn y lòg blocio i'w weld isod:",
"sp-contributions-blocked-notice-anon": "Mae'r cyfeiriad IP hwn wedi'i rwystro ar hyn o bryd.\nMae'r cofnod diweddaraf yn y lòg blocio i'w weld isod:",
"sp-contributions-search": "Chwilio am gyfraniadau",
"sp-contributions-username": "Cyfeiriad IP neu enw defnyddiwr:",
"sp-contributions-toponly": "Dangos golygiadau sy'n olygiadau diweddaraf yn unig",
"sp-contributions-newonly": "Dangos y golygiadau hynny sy'n dechrau tudalen yn unig",
+ "sp-contributions-hideminor": "Cuddio golygiadau bach",
"sp-contributions-submit": "Chwilier",
"whatlinkshere": "Beth sy'n cysylltu yma",
"whatlinkshere-title": "Tudalennau sy'n cysylltu â \"$1\"",
@@ -2162,11 +2172,12 @@
"whatlinkshere-hidelinks": "$1 dolennau",
"whatlinkshere-hideimages": "$1 cysylltau ffeiliau",
"whatlinkshere-filters": "Hidlau",
+ "whatlinkshere-submit": "Ewch!",
"autoblockid": "Awtoflocio #$1",
"block": "Rhwystro defnyddiwr",
"unblock": "Dad-rwystro defnyddiwr",
"blockip": "Rhwystro'r {{GENDER:$1|defnyddiwr}}",
- "blockiptext": "Defnyddiwch y ffurflen hon i rwystro cyfeiriad IP neu ddefnyddiwr rhag ysgrifennu i'r gronfa ddata. \nDylech chi ddim ond gwneud hyn er mwyn rhwystro fandaliaeth, a chan ddilyn [[{{MediaWiki:Policy-url}}|polisi'r wici]]. \nRhowch reswm dros rwystro'r defnyddiwr (er enghraifft, dywedwch pa dudalen(au) a fandaleiddiwyd).",
+ "blockiptext": "Defnyddiwch y ffurflen hon i rwystro cyfeiriad IP neu ddefnyddiwr rhag ysgrifennu i'r gronfa ddata. \nDylech chi ddim ond gwneud hyn er mwyn rhwystro fandaliaeth, a chan ddilyn [[{{MediaWiki:Policy-url}}|polisi'r wici]]. \nRhowch reswm dros rwystro'r defnyddiwr (er enghraifft, dywedwch pa ddalen(au) a fandaleiddiwyd).",
"ipaddressorusername": "Cyfeiriad IP neu enw defnyddiwr:",
"ipbexpiry": "Am gyfnod:",
"ipbreason": "Rheswm:",
@@ -3211,7 +3222,7 @@
"tags-activate": "rhoi ar waith",
"tags-deactivate": "ei atal",
"tags-hitcount": "$1 {{PLURAL:$1|newid}}",
- "tags-manage-blocked": "'Sdim modd rheoli newid tagiau ar ôl cael eich blocio.",
+ "tags-manage-blocked": "'Sdim modd rheoli newid tagiau ar ôl cael {{GENDER:$1|eich}} blocio.",
"tags-create-heading": "Creu tag newydd",
"tags-create-explanation": "Yn ddiofyn, bydd y tagiau newydd i'w gweld gan ddefnyddwyr a botiau.",
"tags-create-tag-name": "Enw'r tag:",
@@ -3229,7 +3240,7 @@
"compare-invalid-title": "Ysgrifennwyd teitl annilys.",
"compare-title-not-exists": "Nid yw'r teitl a enwyd ar gael.",
"compare-revision-not-exists": "Nid yw'r diwygiad a enwyd ar gael.",
- "diff-form": "'''ffurflen'''",
+ "diff-form": "Gwahaniaethau",
"dberr-problems": "Mae'n ddrwg gennym! Mae'r wefan hon yn dioddef anawsterau technegol.",
"dberr-again": "Oedwch am ychydig funudau cyn ceisio ail-lwytho.",
"dberr-info": "(Ni ellir cysylltu â chronfa ddata: $1)",
@@ -3285,7 +3296,7 @@
"logentry-newusers-create2": "Dechreuwyd y cyfrif defnyddiwr $3 gan $1",
"logentry-newusers-byemail": "{{GENDER:$2|Dechreuodd}} $1 y cyfrif defnyddiwr $3 ac anfonodd gyfrinair drwy e-bost",
"logentry-newusers-autocreate": "{{GENDER:$2|Crëwyd}} y cyfrif $1 yn awtomatig",
- "logentry-rights-rights": "{{GENDER:$2|Newidiodd}} $1 y grwpiau y mae $3 yn aelod ohonynt o $4 i $5",
+ "logentry-rights-rights": "{{GENDER:$2|Newidiodd}} $1 y grwpiau {{GENDER:$6|$3}} o $4 i $5",
"logentry-rights-rights-legacy": "{{GENDER:$2|Newidiodd}} $1 y grwpiau y mae $3 yn aelod ohonynt",
"logentry-rights-autopromote": "{{GENDER:$2|Dyrchafwyd}} $1 yn awtomatig o $4 i $5",
"logentry-upload-upload": "Mae $1 {{GENDER:$2|wedi uwchlwytho}} $3",
@@ -3356,11 +3367,12 @@
"pagelang-use-default": "Defnyddier yr iaith arferol",
"pagelang-select-lang": "Dewis iaith",
"pagelang-submit": "Ei wneud",
+ "pagelang-nonexistent-page": "Nid yw'r ddalen $1 yn bodoli.",
"right-pagelang": "Newidiwch iaith y dudalen",
"action-pagelang": "newidiwch iaith y dudalen",
- "log-name-pagelang": "Newidiwch iaith y log",
+ "log-name-pagelang": "Log newidiadau iaith",
"log-description-pagelang": "Dyma log o newidiadau yn nhudalen yr ieithoedd",
- "logentry-pagelang-pagelang": "Newidiodd $1 {{GENDER:$2}} iaith ydudalen am $3 o $4 i $5.",
+ "logentry-pagelang-pagelang": "Newidiodd $1 {{GENDER:$2}} iaith $3 o $4 i $5.",
"default-skin-not-found-row-enabled": "* $1
/ $2 (galluogi)",
"default-skin-not-found-row-disabled": "* $1
/ $2 (diffoddwyd)",
"mediastatistics": "Ystadegau cyfryngau",
diff --git a/languages/i18n/da.json b/languages/i18n/da.json
index 9e4e93f288..f30cdabf13 100644
--- a/languages/i18n/da.json
+++ b/languages/i18n/da.json
@@ -701,7 +701,7 @@
"userjspreview": "'''Husk at du kun tester/forhåndsviser dit eget javascript, det er ikke gemt endnu!'''",
"sitecsspreview": "'''Husk, at dette kun er en forhåndsvisning af denne CSS.'''\n'''Det er endnu ikke gemt!'''",
"sitejspreview": "'''Husk, at du kun ser en forhåndsvisning af denne JavaScriptkode.'''\n'''Det er endnu ikke gemt!'''",
- "userinvalidcssjstitle": "'''Advarsel:''' Der findes intet skin â$1â. Tænk pÃ¥, at brugerspecifikke .css- og .js-sider begynder med smÃ¥ bogstaver, altsÃ¥ f.eks. ''{{ns:user}}:Hansen/vector.css'' og ikke ''{{ns:user}}:Hansen/Vector.css''.",
+ "userinvalidconfigtitle": "'''Advarsel:''' Der findes intet skin â$1â. Tænk pÃ¥, at brugerspecifikke .css- og .js-sider begynder med smÃ¥ bogstaver, altsÃ¥ f.eks. ''{{ns:user}}:Hansen/vector.css'' og ikke ''{{ns:user}}:Hansen/Vector.css''.",
"updated": "(Opdateret)",
"note": "'''Bemærk:'''",
"previewnote": "'''Husk at dette er kun en forhåndsvisning.'''\nDine ændringer er endnu ikke blevet gemt!",
@@ -1059,7 +1059,7 @@
"prefs-files": "Filer",
"prefs-custom-css": "Personlig CSS",
"prefs-custom-js": "Personlig JavaScript",
- "prefs-common-css-js": "Fælles CSS/JS for alle udseender:",
+ "prefs-common-config": "Fælles CSS/JS for alle udseender:",
"prefs-reset-intro": "Du kan bruge denne side til at tilbagestille alle dine indstillinger til standardindstillingerne.\nDet kan ikke gøres om.",
"prefs-emailconfirm-label": "Bekræftelse af e-mail:",
"youremail": "Din e-mailadresse:",
@@ -1467,8 +1467,6 @@
"newpageletter": "N",
"boteditletter": "b",
"number_of_watching_users_pageview": "[$1 {{PLURAL:$1|overvågende bruger|overvågende brugere}}]",
- "rc_categories": "Grænse for kategorier (adskilt med \"|\"):",
- "rc_categories_any": "Nogen af de valgte",
"rc-change-size": "$1 {{PLURAL:$1|Byte|Bytes}}",
"rc-change-size-new": "$1 {{PLURAL:$1|byte|bytes}} efter ændring",
"newsectionsummary": "/* $1 */ nyt afsnit",
diff --git a/languages/i18n/de-ch.json b/languages/i18n/de-ch.json
index 8a26c7d36f..98438c21a9 100644
--- a/languages/i18n/de-ch.json
+++ b/languages/i18n/de-ch.json
@@ -121,7 +121,7 @@
"clearyourcache": "'''Hinweis:''' Leere nach dem Speichern den Browser-Cache, um die Ãnderungen sehen zu können.\n* '''Firefox/Safari:''' ''Umschalttaste'' drücken und gleichzeitig ''Aktualisieren'' anklicken oder entweder ''Ctrl+F5'' oder ''Ctrl+R'' (''â+R'' auf dem Mac) drücken\n* '''Google Chrome:''' ''Umschalttaste+Ctrl+R'' (''â+Umschalttaste+R'' auf dem Mac) drücken\n* '''Internet Explorer:''' ''Ctrl+F5'' drücken oder ''Ctrl'' drücken und gleichzeitig ''Aktualisieren'' anklicken\n* '''Opera:''' ''Extras â Internetspuren löschen ⦠â Individuelle Auswahl â Den kompletten Cache löschen''",
"usercssyoucanpreview": "'''Tipp:''' Benutze den «{{int:showpreview}}»-Button, um dein neues CSS vor dem Speichern zu testen.",
"userjsyoucanpreview": "'''Tipp:''' Benutze den «{{int:showpreview}}»-Button, um dein neues JavaScript vor dem Speichern zu testen.",
- "userinvalidcssjstitle": "'''Achtung:''' Die Benutzeroberfläche «$1» existiert nicht. Bedenke, dass benutzerspezifische .css- und .js-Seiten mit einem Kleinbuchstaben anfangen müssen, also beispielsweise ''{{ns:user}}:Mustermann/vector.css'' an Stelle von ''{{ns:user}}:Mustermann/Vector.css''.",
+ "userinvalidconfigtitle": "'''Achtung:''' Die Benutzeroberfläche «$1» existiert nicht. Bedenke, dass benutzerspezifische .css- und .js-Seiten mit einem Kleinbuchstaben anfangen müssen, also beispielsweise ''{{ns:user}}:Mustermann/vector.css'' an Stelle von ''{{ns:user}}:Mustermann/Vector.css''.",
"editing": "Bearbeiten von «$1»",
"creating": "Erstellen von «$1»",
"editingsection": "Bearbeiten von «$1» (Abschnitt)",
@@ -165,7 +165,6 @@
"right-editmyprivateinfo": "Eigene private Daten bearbeiten (beispielsweise E-Mail-Adresse, richtiger Name)",
"right-override-export-depth": "Exportiere Seiten einschliesslich verlinkter Seiten bis zu einer Tiefe von 5",
"recentchanges-label-plusminus": "Die Ãnderung der Seitengrösse in Bytes",
- "rc_categories": "Nur Seiten aus den Kategorien (getrennt mit «|»):",
"rc-change-size-new": "$1 {{PLURAL:$1|Byte|Bytes}} nach der Ãnderung",
"rc-old-title": "ursprünglich erstellt als «$1»",
"recentchangeslinked-title": "Ãnderungen an Seiten, die von «$1» verlinkt sind",
diff --git a/languages/i18n/de-formal.json b/languages/i18n/de-formal.json
index dfe7008dc0..f7796da968 100644
--- a/languages/i18n/de-formal.json
+++ b/languages/i18n/de-formal.json
@@ -158,7 +158,7 @@
"userjspreview": "'''Beachten Sie, dass Sie nur eine Vorschau Ihres Benutzer-JavaScript betrachten.'''\n'''Es wurde noch nicht gespeichert!'''",
"sitecsspreview": "'''Beachten Sie, dass Sie nur eine Vorschau dieses CSS betrachten.'''\n'''Es wurde noch nicht gespeichert!'''",
"sitejspreview": "'''Beachten Sie, dass Sie nur eine Vorschau dieses JavaScript betrachten.'''\n'''Es wurde noch nicht gespeichert!'''",
- "userinvalidcssjstitle": "'''Achtung:''' Die Benutzeroberfläche â$1â existiert nicht. Bedenken Sie, dass benutzerspezifische .css- und .js-Seiten mit einem Kleinbuchstaben anfangen müssen, also beispielsweise ''{{ns:user}}:Mustermann/vector.css'' an Stelle von ''{{ns:user}}:Mustermann/Vector.css''.",
+ "userinvalidconfigtitle": "'''Achtung:''' Die Benutzeroberfläche â$1â existiert nicht. Bedenken Sie, dass benutzerspezifische .css- und .js-Seiten mit einem Kleinbuchstaben anfangen müssen, also beispielsweise ''{{ns:user}}:Mustermann/vector.css'' an Stelle von ''{{ns:user}}:Mustermann/Vector.css''.",
"previewconflict": "Diese Vorschau gibt den Inhalt des oberen Textfeldes wieder. So wird die Seite aussehen, wenn Sie jetzt speichern.",
"session_fail_preview": "'''Ihre Bearbeitung konnte nicht gespeichert werden, da Sitzungsdaten verloren gegangen sind.\nBitte versuchen Sie es erneut, indem Sie unter der folgenden Textvorschau nochmals auf âSeite speichernâ klicken.\nSollte das Problem bestehen bleiben, [[Special:UserLogout|melden Sie sich ab]] und danach wieder an.'''",
"session_fail_preview_html": "'''Ihre Bearbeitung konnte nicht gespeichert werden, da Sitzungsdaten verloren gegangen sind.'''\n\n''Da in {{SITENAME}} das Speichern von reinem HTML aktiviert ist, wurde die Vorschau ausgeblendet, um JavaScript-Attacken vorzubeugen.''\n\n'''Bitte versuchen Sie es erneut, indem Sie unter der folgenden Textvorschau nochmals auf âSeite speichernâ klicken.\nSollte das Problem bestehen bleiben, [[Special:UserLogout|melden Sie sich ab]] und danach wieder an.'''",
diff --git a/languages/i18n/de.json b/languages/i18n/de.json
index 79a3ab60fa..ef9a2e8202 100644
--- a/languages/i18n/de.json
+++ b/languages/i18n/de.json
@@ -732,7 +732,7 @@
"userjspreview": "'''Beachte, dass du nur eine Vorschau deines Benutzer-JavaScripts betrachtest.'''\n'''Es wurde noch nicht gespeichert!'''",
"sitecsspreview": "'''Beachte, dass du nur eine Vorschau dieses CSS betrachtest.'''\n'''Es wurde noch nicht gespeichert!'''",
"sitejspreview": "'''Beachte, dass du nur eine Vorschau dieses JavaScript betrachtest.'''\n'''Es wurde noch nicht gespeichert!'''",
- "userinvalidcssjstitle": "'''Achtung:''' Die Benutzeroberfläche â$1â existiert nicht. Bedenke, dass benutzerspezifische .css- und .js-Seiten mit einem Kleinbuchstaben anfangen müssen, also beispielsweise ''{{ns:user}}:Mustermann/vector.css'' an Stelle von ''{{ns:user}}:Mustermann/Vector.css''.",
+ "userinvalidconfigtitle": "'''Achtung:''' Die Benutzeroberfläche â$1â existiert nicht. Bedenke, dass benutzerspezifische .css- und .js-Seiten mit einem Kleinbuchstaben anfangen müssen, also beispielsweise ''{{ns:user}}:Mustermann/vector.css'' an Stelle von ''{{ns:user}}:Mustermann/Vector.css''.",
"updated": "(Geändert)",
"note": "'''Hinweis:'''",
"previewnote": "'''Dies ist nur eine Vorschau.'''\nDie Seite wurde noch nicht gespeichert!",
@@ -1099,7 +1099,7 @@
"prefs-files": "Dateien",
"prefs-custom-css": "Benutzerdefiniertes CSS",
"prefs-custom-js": "Benutzerdefiniertes JavaScript",
- "prefs-common-css-js": "Gemeinsames CSS/JavaScript aller Benutzeroberflächen:",
+ "prefs-common-config": "Gemeinsames CSS/JavaScript aller Benutzeroberflächen:",
"prefs-reset-intro": "Du kannst diese Seite verwenden, um die Einstellungen auf die Standards zurückzusetzen.\nDies kann nicht mehr rückgängig gemacht werden.",
"prefs-emailconfirm-label": "Bestätigung:",
"youremail": "E-Mail-Adresse:",
@@ -1536,8 +1536,6 @@
"newpageletter": "N",
"boteditletter": "B",
"number_of_watching_users_pageview": "[$1 {{PLURAL:$1|beobachtender|beobachtende}} Benutzer]",
- "rc_categories": "Nur Seiten aus den Kategorien (getrennt mit â|â):",
- "rc_categories_any": "Beliebige der ausgewählten",
"rc-change-size": "$1 {{PLURAL:$1|Byte|Bytes}}",
"rc-change-size-new": "$1 {{PLURAL:$1|Byte|Bytes}} nach der Ãnderung",
"newsectionsummary": "Neuer Abschnitt /* $1 */",
@@ -1641,7 +1639,7 @@
"uploaded-setting-handler-svg": "SVG, das das Attribut âhandlerâ mit Remote/Daten/Skript festlegt, ist gesperrt. $1=\"$2\"
in der hochgeladenen SVG-Datei gefunden.",
"uploaded-remote-url-svg": "SVG, das ein beliebiges Style-Attribut mit einer Remote-URL festlegt, ist gesperrt. $1=\"$2\"
in der hochgeladenen SVG-Datei gefunden.",
"uploaded-image-filter-svg": "Bildfilter mit der URL <$1 $2=\"$3\">
in der hochgeladenen SVG-Datei gefunden.",
- "uploadscriptednamespace": "Diese SVG-Datei enthält den ungültigen Namensraum â
\nAl mismo tiempo está usted prometiendo que lo que usted va a enviar lo ha escrito usted, o copiado de una fuente de dominio público.\n'''¡No envÃe textos con derechos de autor sin el debido permiso!'''",
"permissionserrorstext-withaction": "No tiene permiso para $2 por {{PLURAL:$1|la|las}} {{PLURAL:$1|siguiente|siguientes}} {{PLURAL:$1|razón|razones}}:",
"rev-deleted-text-permission": "Esta revisión de la página ha sido '''borrada'''.\nPuede encontrar detalles en el [{{fullurl:{{#Special:Log}}/delete|page={{FULLPAGENAMEE}}}} registro de borrados].",
- "rev-deleted-text-unhide": "Esta revisión de página ha sido '''borrada'''.\nPuede haber detalles en el [{{fullurl:{{#Special:Log}}/delete|page={{FULLPAGENAMEE}}}} registro de borrados].\nComo administrador todavÃa puede [$1 ver esta revisión] si asà lo desea.",
- "rev-suppressed-text-unhide": "Esta revisión de la página ha sido '''suprimida'''.\nPuede haber detalles en el [{{fullurl:{{#Special:Log}}/suppress|page={{FULLPAGENAMEE}}}} registro de supresiones].\nComo administrador podrá seguir [$1 viendo esta revisión] si desea continuar.",
- "rev-deleted-text-view": "Esta revisión de la página ha sido '''borrada'''.\nComo administrador puede verla; puede haber detalles en el [{{fullurl:{{#Special:Log}}/delete|page={{FULLPAGENAMEE}}}} registro de borrados].",
- "rev-suppressed-text-view": "Esta revisión de la página ha sido '''suprimida'''.\nComo administrador puede verla; puede haber detalles en el [{{fullurl:{{#Special:Log}}/suppress|page={{FULLPAGENAMEE}}}} registro de supresiones].",
+ "rev-deleted-text-unhide": "Esta revisión ha sido eliminada.\nPara más información, consulte el [{{fullurl:{{#Special:Log}}/delete|page={{FULLPAGENAMEE}}}} registro de borrados].\nComo administrador, aún puede [$1 ver esta revisión] si lo desea.",
+ "rev-suppressed-text-unhide": "Esta revisión ha sido suprimida.\nPara más información, consulte el [{{fullurl:{{#Special:Log}}/suppress|page={{FULLPAGENAMEE}}}} registro de supresiones].\nComo supresor, aún puede [$1 ver esta revisión] si lo desea.",
+ "rev-deleted-text-view": "Esta revisión ha sido eliminada.\nAún tiene la posibilidad de verla. Para más información, consulte el [{{fullurl:{{#Special:Log}}/delete|page={{FULLPAGENAMEE}}}} registro de borrados].",
+ "rev-suppressed-text-view": "Esta revisión ha sido suprimida.\nAún tiene la posibilidad de verla. Para más información, consulte el [{{fullurl:{{#Special:Log}}/suppress|page={{FULLPAGENAMEE}}}} registro de supresiones].",
"rev-deleted-no-diff": "No puede visualizarse este cambio debido a que las revisiones han sido '''borradas'''.\nPuede haber detalles en el [{{fullurl:{{#Special:Log}}/delete|page={{FULLPAGENAMEE}}}} registro de borrados].",
- "revdelete-nooldid-text": "No se ha especificado una revisión o revisiones destino sobre las que realizar esta función.",
+ "revdelete-nooldid-text": "O bien no se ha especificado una revisión destino sobre la que realizar esta función, o bien la revisión especificada no existe, o bien está intentando ocultar la revisión actual.",
"revdelete-show-file-confirm": "¿Está seguro de que desea ver la revisión borrada del archivo \"$1=\"$2\"
is not allowed in SVG files.",
@@ -1682,6 +1690,7 @@
"uploadstash-not-logged-in": "Käyttäjää ei ole kirjautunut sisään, tiedostojen on kuuluttava käyttäjille.",
"uploadstash-no-such-key": "Ei tälläistä avainta ($1), ei voi poistaa.",
"uploadstash-no-extension": "Laajennus on tyhjä.",
+ "uploadstash-zero-length": "Tiedoston pituus on nolla.",
"invalid-chunk-offset": "Kelpaamaton siirtymä lohkoissa",
"img-auth-accessdenied": "Pääsy estetty",
"img-auth-nopathinfo": "PATH_INFO puuttuu.\nPalvelintasi ei ole asetettu välittämään tätä tietoa.\nSe saattaa olla CGI-pohjainen eikä voi tukea img_authia.\nLisätietoja löytyy sivulta https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:Image_Authorization.",
@@ -1826,13 +1835,15 @@
"pageswithprop-legend": "Sivut sivun ominaisuuden mukaan",
"pageswithprop-text": "Tällä sivulla on lueteltu sivut, jotka käyttävät erityistä sivun ominaisuutta.",
"pageswithprop-prop": "Ominaisuuden nimi",
+ "pageswithprop-reverse": "Lajittele päinvastaisessa järjestyksessä",
+ "pageswithprop-sortbyvalue": "Lajittele ominaisuuden arvon mukaan",
"pageswithprop-submit": "Siirry",
"pageswithprop-prophidden-long": "Pitkä tekstimuotoinen ominaisuuden arvo piilotettu ($1)",
"pageswithprop-prophidden-binary": "ominaisuuden binääriarvo on piilotettu ($1)",
"doubleredirects": "Kaksinkertaiset ohjaukset",
"doubleredirectstext": "Tällä sivulla on lueteltu ne sivut, jotka ohjaavat toiseen ohjaussivuun.\nJokaisella rivillä on linkit ensimmäiseen ja toiseen ohjaukseen sekä toisen ohjauksen kohteeseen, joka on yleensä âoikeaâ kohdesivu, johon ensimmäisen ohjauksen pitäisi johtaa.\nYliviivatut kohteet on korjattu.",
"double-redirect-fixed-move": "[[$1]] on siirretty.\nSe on automaattisesti päivitetty ja se ohjaa nyt sivulle [[$2]].",
- "double-redirect-fixed-maintenance": "Korjataan automaattisesti kaksinkertainen ohjaus sivulta [[$1]] sivulle [[$2]].",
+ "double-redirect-fixed-maintenance": "Korjataan automaattisesti kaksinkertainen ohjaus sivulta [[$1]] sivulle [[$2]] huoltotyössä",
"double-redirect-fixer": "Ohjausten korjaaja",
"brokenredirects": "Virheelliset ohjaukset",
"brokenredirectstext": "Seuraavat ohjaukset osoittavat sivuihin, joita ei ole olemassa.",
@@ -2016,7 +2027,7 @@
"linksearch": "Etsi ulkoisia linkkejä",
"linksearch-pat": "Hakuehto:",
"linksearch-ns": "Nimiavaruus:",
- "linksearch-ok": "Etsi",
+ "linksearch-ok": "Hae",
"linksearch-text": "Jokerimerkkejä, kuten \"*.wikipedia.org\", voidaan käyttää.\nVaaditaan vähintään ylätason verkkotunnus, esimerkiksi \"*.org\".
\n{{PLURAL:$2|Tuettu protokolla|Tuetut protokollat}}: $1 (oletuksena on http://
, jos protokollaa ei määritetä).",
"linksearch-line": "$1 on linkitetty sivulta $2",
"linksearch-error": "Jokerimerkkiä voi käyttää ainoastaan osoitteen alussa.",
@@ -2348,6 +2359,7 @@
"sp-contributions-newonly": "Näytä vain muokkaukset, joilla on luotu sivu",
"sp-contributions-hideminor": "Piilota pienet muutokset",
"sp-contributions-submit": "Hae",
+ "sp-contributions-outofrange": "Tuloksia ei voi näyttää. Pyydetty IP-alue on suurempi kuin /$1 CIDR-raja.",
"whatlinkshere": "Tänne viittaavat sivut",
"whatlinkshere-title": "Sivut, jotka viittaavat sivulle $1",
"whatlinkshere-page": "Sivu:",
@@ -2471,6 +2483,7 @@
"ipb_blocked_as_range": "IP-osoite $1 on estetty välillisesti ja sen estoa ei voi poistaa. Se on estetty osana verkkoaluetta $2, jonka eston voi poistaa",
"ip_range_invalid": "Virheellinen IP-alue.",
"ip_range_toolarge": "Suuremmat osoitealue-estot kuin /$1 eivät ole sallittuja.",
+ "ip_range_exceeded": "IP-alue ylittää sen enimmäisalueen. Sallittu alue: /$1.",
"ip_range_toolow": "IP-alueet eivät käytännöllisesti katsoen ole sallittuja.",
"proxyblocker": "Välityspalvelinesto",
"proxyblockreason": "IP-osoitteestasi on estetty muokkaukset, koska se on avoin välityspalvelin. Ota yhteyttä Internet-palveluntarjoajaasi tai tekniseen tukeen ja kerro heille tästä tietoturvaongelmasta.",
@@ -2541,7 +2554,7 @@
"delete_and_move_text": "Kohdesivu [[:$1]] on jo olemassa. \nHaluatko poistaa sen, jotta nykyinen sivu voitaisiin siirtää sen tilalle?",
"delete_and_move_confirm": "Kyllä, poista kohdesivu",
"delete_and_move_reason": "Sivu on sivun [[$1]] siirron tiellä.",
- "selfmove": " Nimi on sama;\nSivua ei voi siirtää itsensä päälle.",
+ "selfmove": "Nimi on sama;\nSivua ei voi siirtää itsensä päälle.",
"immobile-source-namespace": "Sivuja ei voi siirtää nimiavaruudessa â$1â",
"immobile-target-namespace": "Sivuja ei voi siirtää nimiavaruuteen â$1â",
"immobile-target-namespace-iw": "Kielilinkki ei ole kelvollinen kohde sivun siirrolle.",
@@ -2555,7 +2568,7 @@
"fix-double-redirects": "Päivitä kaikki vanhalle nimelle viittaavat ohjaukset ohjaamaan uudelle nimelle",
"move-leave-redirect": "Jätä paikalle ohjaus",
"protectedpagemovewarning": "'''Varoitus:''' Tämä sivu on lukittu siten, että vain ylläpitäjät voivat siirtää sen.\nAlla on viimeisin lokitapahtuma:",
- "semiprotectedpagemovewarning": "Tämä sivu on lukittu siten, että vain rekisteröityneet käyttäjät voivat siirtää sitä.\nAlla on viimeisin lokitapahtuma:",
+ "semiprotectedpagemovewarning": "Huomaa: Tämä sivu on lukittu siten, että vain rekisteröityneet käyttäjät voivat siirtää sen.\nAlla on viimeisin lokitapahtuma:",
"move-over-sharedrepo": "[[:$1]] on olemassa yhteisessä tietovarastossa. Tiedoston siirtäminen tälle nimelle korvaa yhteisen tiedoston.",
"file-exists-sharedrepo": "Valittu tiedostonimi on jo käytössä jaetussa varastossa.\nValitse toinen nimi.",
"export": "Vie sivuja",
@@ -2601,6 +2614,7 @@
"thumbnail_dest_directory": "Kohdehakemiston luominen ei onnistunut",
"thumbnail_image-type": "Kuvamuoto ei ole tuettu",
"thumbnail_gd-library": "GD-kirjastoa ei ole asennettu oikein. Funktio $1 puuttuu.",
+ "thumbnail_image-size-zero": "Kuvatiedoston koko näyttäisi olevan nolla.",
"thumbnail_image-missing": "Tiedosto näyttää puuttuvan: $1",
"thumbnail_image-failure-limit": "Tätä kuvaketta on yritetty tulkita epäonnistuneesti liian monta kertaa ($1 tai enemmän). Ole hyvä ja yritä myöhemmin uudelleen.",
"import": "Tuo sivuja",
@@ -2812,6 +2826,7 @@
"pageinfo-category-subcats": "Alaluokkien määrä",
"pageinfo-category-files": "Tiedostojen määrä",
"pageinfo-user-id": "Käyttäjän tunnistenumero",
+ "pageinfo-file-hash": "Hash-arvo",
"markaspatrolleddiff": "Merkitse tarkastetuksi",
"markaspatrolledtext": "Merkitse muutos tarkastetuksi",
"markaspatrolledtext-file": "Merkitse tämä tiedoston versio tarkastetuksi",
@@ -3357,6 +3372,7 @@
"watchlistedit-clear-titles": "Sivujen nimet:",
"watchlistedit-clear-submit": "Tyhjennä tarkkailulista (pysyvästi ja peruuttamattomasti!)",
"watchlistedit-clear-done": "Tarkkailulistasi on tyhjennetty.",
+ "watchlistedit-clear-jobqueue": "Tarkkailulistaasi ollaan tyhjentämässä. Tämä voi kestää jonkin aikaa!",
"watchlistedit-clear-removed": "{{PLURAL:$1|Yksi sivu|$1 sivua}} on poistettu:",
"watchlistedit-too-many": "Luettelossa on liikaa sivuja näytettäväksi tässä.",
"watchlisttools-clear": "Tyhjennä tarkkailulista",
@@ -3973,7 +3989,7 @@
"restrictionsfield-badip": "Virheellinen IP-osoite tai alue: $1",
"restrictionsfield-label": "Sallitut IP-alueet:",
"restrictionsfield-help": "Yksi IP-osoite tai CIDR-alue per rivi. Ottaaksesi kaiken käyttöön, käytä:0.0.0.0/0\n::/0
",
- "edit-error-short": "$1",
+ "edit-error-short": "Virhe: $1",
"edit-error-long": "Virheet:\n\n$1",
"revid": "versio $1",
"pageid": "sivun tunnistenumero $1",
diff --git a/languages/i18n/fo.json b/languages/i18n/fo.json
index 535d81f96d..1667b4fe41 100644
--- a/languages/i18n/fo.json
+++ b/languages/i18n/fo.json
@@ -566,7 +566,7 @@
"userjspreview": "'''Minst til at hetta bert er ein royndarvÃsing av tÃnum brúkara JavaScript.'''\n'''Tú hevur ikki goymt tað enn!'''",
"sitecsspreview": "'''Minst til at hetta bert er ein royndar vÃsing av hesum CSS.'''\n'''Tú hevur ikki goymt tað enn!'''",
"sitejspreview": "'''Minst til at hetta bert er ein royndar vÃsing av hesi JavaScript kotuni.'''\n'''Tað er ikki goymt enn!'''",
- "userinvalidcssjstitle": "'''Ãvaring:''' Tað er onki skinn \"$1\".\nTilevnaðar .css og .js sÃður brúka heiti sum byrja við lÃtlum bókstavi, t.d. {{ns:user}}:Foo/vector.css à mun til {{ns:user}}:Foo/Vector.css.",
+ "userinvalidconfigtitle": "'''Ãvaring:''' Tað er onki skinn \"$1\".\nTilevnaðar .css og .js sÃður brúka heiti sum byrja við lÃtlum bókstavi, t.d. {{ns:user}}:Foo/vector.css à mun til {{ns:user}}:Foo/Vector.css.",
"updated": "(Dagført)",
"note": "'''Viðmerking:'''",
"previewnote": "Minst til at hetta bara er ein forskoðan.\nTÃnar broytingar eru ikki goymdar enn!",
@@ -869,7 +869,7 @@
"prefs-files": "FÃlur",
"prefs-custom-css": "Tilpassað CSS",
"prefs-custom-js": "Tilpassað JavaScript",
- "prefs-common-css-js": "Møgulig CSS/JavaScript fyri allar útsjóndir:",
+ "prefs-common-config": "Møgulig CSS/JavaScript fyri allar útsjóndir:",
"prefs-reset-intro": "Tú kanst brúka hesa sÃðuna til at nullstilla allar tÃnar valdu innstillingar, so tað kemur aftur til standard.\nTú kanst ikki angra, tá tað fyrst er gjørt.",
"prefs-emailconfirm-label": "Vátta tÃna t-post adressu:",
"youremail": "T-postur (sjálvboðið)*:",
@@ -1094,8 +1094,6 @@
"newpageletter": "N",
"boteditletter": "b",
"number_of_watching_users_pageview": "[$1 ansar eftir {{PLURAL:$1|brúkara|brúkarum}}]",
- "rc_categories": "Avmarkað til sÃður frá bólkunum (skil sundur við \"|\")",
- "rc_categories_any": "Nakar",
"rc-change-size-new": "$1 {{PLURAL:$1|byte|bytes}} eftir broyting",
"newsectionsummary": "/* $1 */ nýtt innlegg",
"rc-enhanced-expand": "VÃs smálutir",
diff --git a/languages/i18n/fr.json b/languages/i18n/fr.json
index 4ca7a186ad..f8fc0fd9bf 100644
--- a/languages/i18n/fr.json
+++ b/languages/i18n/fr.json
@@ -508,7 +508,7 @@
"protectedpagetext": "Cette page a été protégée pour empêcher sa modification ou dâautres actions.",
"viewsourcetext": "Vous pouvez voir et copier le contenu de cette page.",
"viewyourtext": "Vous pouvez voir et copier le contenu de vos modifications à cette page.",
- "protectedinterface": "Cette page fournit du texte dâinterface pour le logiciel sur ce wiki et est protégée pour éviter les abus.\nPour ajouter ou modifier des traductions sur tous les wikis, veuillez utiliser [https://translatewiki.net/ translatewiki.net], le projet de localisation de MediaWiki.",
+ "protectedinterface": "Cette page fournit du texte dâinterface pour le logiciel sur ce wiki et est protégée pour éviter les abus.\nPour ajouter ou modifier des traductions sur tous les wikis, veuillez utiliser [https://translatewiki.net/ translatewiki.net], le projet de régionalisation de MediaWiki.",
"editinginterface": "Attention : vous êtes en train de modifier une page utilisée pour créer le texte de lâinterface du logiciel.\nLes changements sur cette page se répercuteront sur lâapparence de lâinterface utilisateur pour les autres utilisateurs de ce wiki.",
"translateinterface": "Pour ajouter ou modifier des traductions pour tous les wikis, veuillez utiliser [https://translatewiki.net/ translatewiki.net], le projet de localisation linguistique de MediaWiki.",
"cascadeprotected": "Cette page est protégée contre les modifications car elle est transcluse par {{PLURAL:$1|la page suivante, qui a été protégée|les pages suivantes, qui ont été protégées}} avec lâoption « protection en cascade » activée :\n$2",
@@ -810,7 +810,7 @@
"userjspreview": "Rappelez-vous que vous ne faites que visualiser ou tester votre code JavaScript.\nIl nâa pas encore été enregistré !",
"sitecsspreview": "Rappelez-vous que vous ne faites que prévisualiser cette feuille de style. \nElle nâa pas encore été enregistrée !",
"sitejspreview": "Rappelez-vous que vous ne faites que prévisualiser ce code JavaScript. \nIl nâa pas encore été enregistré !",
- "userinvalidcssjstitle": "Attention : il nâexiste pas dâhabillage « $1 ». \nLes pages personnelles avec extensions .css et .js utilisent des titres en minuscules, par exemple {{ns:user}}:Foo/vector.css et non {{ns:user}}:Foo/Vector.css.",
+ "userinvalidconfigtitle": "Attention : il nâexiste pas dâhabillage « $1 ». \nLes pages personnelles avec extensions .css et .js utilisent des titres en minuscules, par exemple {{ns:user}}:Foo/vector.css et non {{ns:user}}:Foo/Vector.css.",
"updated": "(Mis à jour)",
"note": "Note :",
"previewnote": "Rappelez-vous que ce nâest quâune prévisualisation.\nVos modifications nâont pas encore été enregistrées !",
@@ -1180,7 +1180,7 @@
"prefs-files": "Fichiers",
"prefs-custom-css": "CSS personnalisé",
"prefs-custom-js": "JavaScript personnalisé",
- "prefs-common-css-js": "CSS et JavaScript communs à tous les habillages :",
+ "prefs-common-config": "CSS et JavaScript communs à tous les habillages :",
"prefs-reset-intro": "Vous pouvez utiliser cette page pour restaurer vos préférences aux valeurs par défaut du site. Ceci ne peut pas être défait.",
"prefs-emailconfirm-label": "Confirmation du courriel :",
"youremail": "Courriel :",
@@ -1619,8 +1619,6 @@
"boteditletter": "b",
"unpatrolledletter": "!",
"number_of_watching_users_pageview": "[$1 utilisateur{{PLURAL:$1||s}} en train de suivre]",
- "rc_categories": "Limiter aux catégories (séparées par «â¯|â¯Â») :",
- "rc_categories_any": "Une des sélectionnées",
"rc-change-size": "$1",
"rc-change-size-new": "$1 {{PLURAL:$1|octet|octets}} après changement",
"newsectionsummary": "/* $1 */ nouvelle section",
@@ -2780,6 +2778,7 @@
"thumbnail_dest_directory": "Impossible de créer le répertoire de destination",
"thumbnail_image-type": "Type dâimage non pris en charge",
"thumbnail_gd-library": "Configuration incomplète de la bibliothèque GD : fonction $1 introuvable",
+ "thumbnail_image-size-zero": "La taille du fichier image semble être de zéro.",
"thumbnail_image-missing": "Le fichier suivant est introuvable : $1",
"thumbnail_image-failure-limit": "Il y a eu récemment trop de tentatives échouées ($1 ou plus) pour restituer cette vignette. Veuillez réessayer ultérieurement.",
"import": "Importer des pages",
diff --git a/languages/i18n/frc.json b/languages/i18n/frc.json
index 44d8d52b7c..c0de588680 100644
--- a/languages/i18n/frc.json
+++ b/languages/i18n/frc.json
@@ -431,7 +431,7 @@
"userjsyoucanpreview": "'''Conseil:''' Usez le bouton \"Vue d'avance\" pour tester votre nouvelle feuille JS avant de la sauver.",
"usercsspreview": "'''Rappelez-vous que vous êtes après regarder votre feuille CSS qu'a pas encore été sauvée!'''",
"userjspreview": "'''Rappelez-vous que vous êtes juste après regarder ou tester votre code JavaScript qu'a pas encore été sauvé!'''",
- "userinvalidcssjstitle": "'''Attention:''' Y a pas de style \"$1\". Rappelez-vous qu'il faut user les petites lettres dans le sujet des pages personnelles avec les extensions .css et .js.\nExemple: {{ns:user}}:Foo/vector.css (bon) {{ns:user}}:Foo/Vector.css (mauvais)",
+ "userinvalidconfigtitle": "'''Attention:''' Y a pas de style \"$1\". Rappelez-vous qu'il faut user les petites lettres dans le sujet des pages personnelles avec les extensions .css et .js.\nExemple: {{ns:user}}:Foo/vector.css (bon) {{ns:user}}:Foo/Vector.css (mauvais)",
"updated": "(Renouvelé)",
"note": "'''Notez:'''",
"previewnote": "'''Ãa ici, c'est juste une vue d'avance; les changements ont pas encore été sauvés!'''",
diff --git a/languages/i18n/frp.json b/languages/i18n/frp.json
index 048526e90a..c9ea1805e3 100644
--- a/languages/i18n/frp.json
+++ b/languages/i18n/frp.json
@@ -621,7 +621,7 @@
"userjspreview": "Rapelâd-vos que vos éte ren quâaprés èprovar prèvêre voutron code JavaScript.\nIl est pâoncor étâ encartâ !",
"sitecsspreview": "Rapelâd-vos que vos éte ren quâaprés prèvêre cela fôlye CSS.\nEl est pâoncor étâye encartâye !",
"sitejspreview": "Rapelâd-vos que vos éte ren quâaprés prèvêre cél code JavaScript.\nIl est pâoncor étâ encartâ !",
- "userinvalidcssjstitle": "Atencion : ègziste gins dâhabelyâjo « $1 ».\nRapelâd-vos que les pâges a sè avouéc èxtensions .css et .js emplèyont de titros en petiôtes lètres, per ègzemplo {{ns:user}}:Foo/vector.css et pas {{ns:user}}:Foo/Vector.css.",
+ "userinvalidconfigtitle": "Atencion : ègziste gins dâhabelyâjo « $1 ».\nRapelâd-vos que les pâges a sè avouéc èxtensions .css et .js emplèyont de titros en petiôtes lètres, per ègzemplo {{ns:user}}:Foo/vector.css et pas {{ns:user}}:Foo/Vector.css.",
"updated": "(Betâ a jorn)",
"note": "Nota :",
"previewnote": "Rapelâd-vos quâo est ren quâun apèrçu.\nVoutros changements sont pâoncor étâs encartâs !",
@@ -973,7 +973,7 @@
"prefs-files": "Fichiérs",
"prefs-custom-css": "CSS pèrsonalisâ",
"prefs-custom-js": "JavaScript pèrsonalisâ",
- "prefs-common-css-js": "CSS et JavaScript partagiê por tôs los habelyâjos :",
+ "prefs-common-config": "CSS et JavaScript partagiê por tôs los habelyâjos :",
"prefs-reset-intro": "Vos pouede empleyér cela pâge por rètablir voutres prèferences a les valors per dèfôt du seto.\nCen pôt pas étre dèfêt.",
"prefs-emailconfirm-label": "Confirmacion de lâadrèce èlèctronica :",
"youremail": "Adrèce èlèctronica :",
@@ -1253,8 +1253,6 @@
"newpageletter": "N",
"boteditletter": "r",
"number_of_watching_users_pageview": "[$1 {{PLURAL:$1|utilisator quâest|utilisators que sont}} aprés siuvre]",
- "rc_categories": "Limitar a les catègories (sèparâyes per « | ») :",
- "rc_categories_any": "Yona de les chouèsies",
"rc-change-size-new": "$1 octèt{{PLURAL:$1||s}} aprés changement",
"newsectionsummary": "/* $1 */ novèla sèccion",
"rc-enhanced-expand": "Montrar los dètalys",
diff --git a/languages/i18n/frr.json b/languages/i18n/frr.json
index 3c5c93a5a7..97ef571445 100644
--- a/languages/i18n/frr.json
+++ b/languages/i18n/frr.json
@@ -15,7 +15,7 @@
]
},
"tog-underline": "Ferwisangen onerstrik:",
- "tog-hideminor": "Letj anrangen fersteeg",
+ "tog-hideminor": "Letj feranrangen fersteeg",
"tog-hidepatrolled": "Letj anrangen fersteeg",
"tog-newpageshidepatrolled": "Kontroliaret sidjen bi a \"Nei sidjen\" fersteeg",
"tog-hidecategorization": "Kategorisiarang faan sidjen fersteeg",
@@ -48,6 +48,7 @@
"tog-watchlisthideminor": "Letj feranrangen bi a sidjen, diar ik uun't uug behual wal, fersteeg",
"tog-watchlisthideliu": "Feranrangen faan uunmeldet brükern bi sidjen, diar ik uun't uug behual wal, fersteeg",
"tog-watchlistreloadautomatically": "List mä sidjen, diar dü uun't uug behual wel, nei loose, wan en filter anert wurden as (brükt JavaScript)",
+ "tog-watchlistunwatchlinks": "Direkt ferwisangen tu Uunlukin/Ei uunlukin bi iindracher uun det list faan sidjen, diar dü uun't uug behual wel (brükt JavaScript)",
"tog-watchlisthideanons": "Feranrangen faan anonüüm brükern (IPs) bi sidjen, diar ik uun't uug behual wal, fersteeg",
"tog-watchlisthidepatrolled": "Kontroliaret feranrangen bi a sidjen, diar ik uun't uug behual wal, fersteeg",
"tog-watchlisthidecategorization": "Kategorisiarang faan sidjen fersteeg",
@@ -650,7 +651,7 @@
"userjspreview": "'''Seenk diaram, dat det bluas en föörskau faan din JavaScript as.'''\n'''Det as noch ei seekert wurden!'''",
"sitecsspreview": "Paase üüb! Det as bluas en föörskau faan't CSS. Det as noch ei seekert wurden!",
"sitejspreview": "Paase üüb! Det as bluas en föörskau faan di JavaScript code. Det as noch ei seekert wurden!",
- "userinvalidcssjstitle": "''Paase üüb:''' Skak \"$1\" jaft at ei.\nSeenk diaram, dat faan en brüker iinracht .css- an .js-sidjen mä en letjen buksteew began skel. Bispal:\n''{{ns:user}}:Münsterkjarl/vector.css'' uunsteed faan ''{{ns:user}}:Münsterkjarl/Vector.css''.",
+ "userinvalidconfigtitle": "''Paase üüb:''' Skak \"$1\" jaft at ei.\nSeenk diaram, dat faan en brüker iinracht .css- an .js-sidjen mä en letjen buksteew began skel. Bispal:\n''{{ns:user}}:Münsterkjarl/vector.css'' uunsteed faan ''{{ns:user}}:Münsterkjarl/Vector.css''.",
"updated": "(Feranert)",
"note": "'''Paase üüb:'''",
"previewnote": "'''Heer könst dü sä, hü det sidj wurd skal.'''\nDet sidj as oober noch ei seekert!",
@@ -999,6 +1000,7 @@
"timezoneregion-indian": "Indik",
"timezoneregion-pacific": "Pasiifik",
"allowemail": "E-mail faan ööder brükern tuläät",
+ "email-allow-new-users-label": "E-mails uk faan gans nei brükern tuläät",
"email-blacklist-label": "Jodiar brükern mut mi nian e-mails schüür:",
"prefs-searchoptions": "Schük",
"prefs-namespaces": "Nöömrümer",
@@ -1006,7 +1008,7 @@
"prefs-files": "Datein",
"prefs-custom-css": "Salew maaget CSS",
"prefs-custom-js": "Salew maaget JavaScript",
- "prefs-common-css-js": "CSS / JavaScript för arke skak:",
+ "prefs-common-config": "CSS / JavaScript för arke skak:",
"prefs-reset-intro": "Ãüb detdiar sidj könst dü weder a normool iinstelangen iinracht.\nDo san jo ual iinstelangen wech.",
"prefs-emailconfirm-label": "E-Mail gudkäänd:",
"youremail": "E-mail:",
@@ -1032,7 +1034,7 @@
"prefs-help-email": "Dü säärst din e-mail-adres ei uundu, oober do könst dü uk nian mädialangen fu, wan dü ans din paaswurd ferjiden heest.",
"prefs-help-email-others": "Mä ööder brükern könst dü uk auer hör an din brükersidj kontakt apnem. Diarför woort din e-mail-adres ei brükt.",
"prefs-help-email-required": "Du en rocht E-Mail-adres uun.",
- "prefs-info": "Baasisdooten",
+ "prefs-info": "Grünjdooten",
"prefs-i18n": "Spriak",
"prefs-signature": "Signatuur",
"prefs-dateformat": "Formaat faan't dootem",
@@ -1280,8 +1282,6 @@
"newpageletter": "N",
"boteditletter": "B",
"number_of_watching_users_pageview": "[$1 {{PLURAL:$1|brüker|brükern}}, diar tuluke]",
- "rc_categories": "Bluas sidjen ütj jo kategoriin (apdiald mä â|â):",
- "rc_categories_any": "Arke ütjsoocht",
"rc-change-size-new": "$1 {{PLURAL:$1|byte|bytes}} efter't feranrin",
"newsectionsummary": "Nei kirew /* $1 */",
"rc-enhanced-expand": "Enkelthaiden wise",
@@ -1291,7 +1291,7 @@
"recentchangeslinked-feed": "Feranrangen bi ferlinket sidjen",
"recentchangeslinked-toolbox": "Feranrangen bi ferlinket sidjen",
"recentchangeslinked-title": "Feranrangen bi sidjen, huar faan \"$1\" üüb ferwiset woort",
- "recentchangeslinked-summary": "Detdiar spezial-sidj wiset a leetst feranrangen faan ferwiset sidjen (of faan sidjen uun en was kategorii). Sidjen, diar dü [[Special:Watchlist|uun't uug behual]] wel, san '''fäät''' skrewen.",
+ "recentchangeslinked-summary": "Skriiw en sidjennööm hen, am feranrangen üüb sidjen tu sen, diar üüb det sidj henwise of faan det sidj wechwise.\nAm iindracher uun en kategorii tu sen, skriiw 'Kategorie:Nööm faan't kategorii' hen.\nFeranrangen bi sidjen, diar dü [[Special:Watchlist|uun't uug behual]] wel, san fäät skrewen.",
"recentchangeslinked-page": "Sidjennööm:",
"recentchangeslinked-to": "Wise feranrangen üüb sidjen, diar heerhen ferwise.",
"recentchanges-page-added-to-category": "[[:$1]] tu kategorii saat",
@@ -2014,9 +2014,9 @@
"sp-contributions-newbies": "Wise bluas bidracher faan nei brükern",
"sp-contributions-newbies-sub": "Faan nei brükern",
"sp-contributions-newbies-title": "Brükerbidracher faan nei brükern",
- "sp-contributions-blocklog": "Sper-logbuk",
+ "sp-contributions-blocklog": "Sper-Logbuk",
"sp-contributions-suppresslog": "Fersteecht {{GENDER:$1|brükerbidracher}}",
- "sp-contributions-deleted": "Stregen {{GENDER:$1|brüker}} bidtacher",
+ "sp-contributions-deleted": "Stregen {{GENDER:$1|brüker}} bidracher",
"sp-contributions-uploads": "Huuchschüürd bilen",
"sp-contributions-logs": "Logbuken",
"sp-contributions-talk": "Diskuschuun",
@@ -2027,6 +2027,7 @@
"sp-contributions-username": "IP-adres of brükernööm:",
"sp-contributions-toponly": "Bluas aktuel werjuunen wise",
"sp-contributions-newonly": "Bluas nei maaget sidjen wise",
+ "sp-contributions-hideminor": "Letj feranrangen fersteeg",
"sp-contributions-submit": "Schük",
"whatlinkshere": "Ferwisangen üüb detdiar sidj",
"whatlinkshere-title": "Sidjen, diar üüb \"$1\" ferwise",
@@ -2116,7 +2117,7 @@
"contribslink": "Bidracher",
"emaillink": "E-mail schüür",
"autoblocker": "Automaatisk speret, auer dü en gemiansoom IP-adres mä [[User:$1|brüker:$1]] brükst. Grünj för det brükersper: â$2â.",
- "blocklogpage": "Brükersper-logbuk",
+ "blocklogpage": "Brükersper-Logbuk",
"blocklog-showlog": "Didiar brüker as al ans speret wurden.\nUun't sperlogbuk stäänt:",
"blocklog-showsuppresslog": "Didiar brüker as al ans speret an ferbürgen wurden.\nUun't logbuk stäänt:",
"blocklogentry": "hää â[[$1]]â speret för di tidjrüm: $2 $3",
@@ -3053,6 +3054,7 @@
"tag-mw-new-redirect-description": "Feranrangen, diar en nei widjerfeerang iinracht.",
"tag-mw-removed-redirect": "Widjerfeerang wechnimen",
"tag-mw-changed-redirect-target": "Widjerfeerang feranert",
+ "tag-mw-rollback": "Turagsaat",
"tags-title": "Kääntiaken",
"tags-intro": "Det sidj wiset kääntiaken, diar för't bewerkin brükt wurd, an wat jo men.",
"tags-tag": "Kääntiaken-nööm",
diff --git a/languages/i18n/fur.json b/languages/i18n/fur.json
index 3ed0d0d92b..c71f994032 100644
--- a/languages/i18n/fur.json
+++ b/languages/i18n/fur.json
@@ -707,8 +707,6 @@
"newpageletter": "G",
"boteditletter": "b",
"number_of_watching_users_pageview": "[tignude di voli di {{PLURAL:$1|un utent|$1 utents}}]",
- "rc_categories": "Limite aes categoriis (dividilis cun \"|\")",
- "rc_categories_any": "Cualsisei",
"rc-change-size-new": "$1 {{PLURAL:$1|byte|bytes}} dopo la modifiche",
"newsectionsummary": "/* $1 */ gnove sezion",
"rc-enhanced-expand": "Cjale i detais (al covente JavaScript)",
diff --git a/languages/i18n/fy.json b/languages/i18n/fy.json
index 25d39645e5..7de676d8b0 100644
--- a/languages/i18n/fy.json
+++ b/languages/i18n/fy.json
@@ -495,7 +495,7 @@
"userjsyoucanpreview": "Tip: Brûk de knop \"{{int:showpreview}}\" om jo nije JS te testen foar it fêstlizzen.",
"usercsspreview": "Dit is allinne mar it oerlêzen fan jo persoanlike CSS. Hy is noch net fêstlein!",
"userjspreview": "Tink derom: jo besjogge no jo persoanlike JavaScript. De side is net fêstlein!",
- "userinvalidcssjstitle": "Warskôging: der is gjin skin \"$1\".\nTink derom: jo eigen .css- en .js-siden begjinne mei in lytse letter, bygelyks {{ns:user}}:Namme/vector.css ynsté fan {{ns:user}}:Namme/Vector.css.",
+ "userinvalidconfigtitle": "Warskôging: der is gjin skin \"$1\".\nTink derom: jo eigen .css- en .js-siden begjinne mei in lytse letter, bygelyks {{ns:user}}:Namme/vector.css ynsté fan {{ns:user}}:Namme/Vector.css.",
"updated": "(Bewurke)",
"note": "Opmerking:",
"previewnote": "Tink der om dat dizze side noch net fêstlein is!",
@@ -958,8 +958,6 @@
"boteditletter": "b",
"unpatrolledletter": "!",
"number_of_watching_users_pageview": "[$1 folgjende {{PLURAL:$1|meidogger|meidoggers}}]",
- "rc_categories": "Alline kategoryen (skiede mei in \"|\")",
- "rc_categories_any": "Elk",
"rc-change-size": "$1",
"rc-change-size-new": "$1 {{PLURAL:$1|byte|bytes}} nei de wiziging",
"newsectionsummary": "/* $1 */ nije seksje",
diff --git a/languages/i18n/ga.json b/languages/i18n/ga.json
index df5c88562a..b4ee44f8d8 100644
--- a/languages/i18n/ga.json
+++ b/languages/i18n/ga.json
@@ -461,7 +461,7 @@
"userjsyoucanpreview": "'''Leid:''' Sula sábhálann tú, úsáid an cnaipe \"{{int:showpreview}}\" chun do JavaScript nua a thástáil.",
"usercsspreview": "'''Cuimhnigh nach bhfuil seo ach réamhamharc do CSS úsáideora -\nnÃor sábháladh é go fóill!'''",
"userjspreview": "'''Cuimhnigh nach bhfuil seo ach réamhamharc do JavaScript úsáideora\n- nÃor sábháladh é go fóill!'''",
- "userinvalidcssjstitle": "'''Rabhadh:''' NÃl an craiceann \"$1\" ann.\nCuimhnigh go n-úsáideann leathanaigh shaincheaptha .css agus .js teideal i gcás Ãochtar, m.sh. {{ns:user}}:Foo/vector.css i leapa {{ns:user}}:Foo/Vector.css.",
+ "userinvalidconfigtitle": "'''Rabhadh:''' NÃl an craiceann \"$1\" ann.\nCuimhnigh go n-úsáideann leathanaigh shaincheaptha .css agus .js teideal i gcás Ãochtar, m.sh. {{ns:user}}:Foo/vector.css i leapa {{ns:user}}:Foo/Vector.css.",
"updated": "(Leasaithe)",
"note": "'''Tabhair faoi deara:'''",
"previewnote": "'''Cuimhnigh nach bhfuil ach réamhamharc sa leathanach seo.'''\nNÃl do chuid athruithe sábháilte fós!",
@@ -790,7 +790,6 @@
"newpageletter": "N",
"boteditletter": "r",
"number_of_watching_users_pageview": "[{{PLURAL:$1|úsáideoir amháin|$1 úsáideoirÃ}} ag faire]",
- "rc_categories_any": "Aon chatagóir",
"rc-change-size-new": "$1 {{PLURAL:$1|bheart|beart}} tar éis an athraithe",
"newsectionsummary": "/* $1 */ mÃr nua",
"rc-enhanced-expand": "Taispeáin mionsonraithe",
diff --git a/languages/i18n/gan-hans.json b/languages/i18n/gan-hans.json
index c57b95f580..7f6fc3d036 100644
--- a/languages/i18n/gan-hans.json
+++ b/languages/i18n/gan-hans.json
@@ -16,7 +16,8 @@
"Duolaimi",
"Impersonator 1",
"Babanwalia",
- "Macofe"
+ "Macofe",
+ "Fanjiayi"
]
},
"tog-underline": "ä¸åé¾æ¥",
@@ -245,6 +246,7 @@
"nstab-template": "模ç",
"nstab-help": "帮å©é¡µ",
"nstab-category": "åç±»",
+ "mainpage-nstab": "å°é¢",
"nosuchaction": "åæ个åªå½ä»¤",
"nosuchactiontext": "Wikiè¯å«ä¼å°ä¸ªåªURLå½ä»¤",
"nosuchspecialpage": "åæ个åªç¹æ®é¡µ",
@@ -331,6 +333,8 @@
"createaccount-title": "å°{{SITENAME}}å建𠮶å¸æ·",
"createaccount-text": "æ人å°{{SITENAME}}ç¨å·ð ®¶çµåé®ä»¶å°åå¼è®¾å½åªååç³» \"$2\" 𠮶æ°å¸æ·ï¼$4ï¼ï¼å¯ç ç³» \"$3\" ã请å·ä»°ä¸ç»å½åå°ä¿®æ¹å¯ç ã\n\nè¦ç³»å¸æ·å建ä¸å¯¹ð ®¶è¯ï¼å·å°±è«æ个åªæ¶æ¯ã",
"loginlanguagelabel": "è¯è¨: $1",
+ "pt-login": "ç»å
¥",
+ "pt-createaccount": "æ°å¼åªå¸æ·",
"changepassword": "æ¹è¿å¯ç ",
"resetpass_announce": "å·ç³»ç¨å°ä¸´æ¶email𠮶代ç ç»å
¥ð ®¶ãè¦ç»æ£å
¥ï¼å·è¦å°ä¸ªé¦è®¾å®åªæ°å¯ç :",
"resetpass_header": "设è¿å¯ç ",
@@ -395,7 +399,7 @@
"userjsyoucanpreview": "'''æ示:''' åå°å请ç¨'æåèµ·'æ¥æµåå·ð ®¶æ°JS ã",
"usercsspreview": "'''注æå·åç³»å°é¢è§å·ä¸ªäººð ®¶ CSSï¼å
容ååä¿åï¼'''",
"userjspreview": "'''注æå·åç³»å°æµè¯ï¼é¢è§å·ä¸ªäººð ®¶ JavaScriptï¼å
容ååä¿åï¼'''",
- "userinvalidcssjstitle": "'''è¦å:''' å\"$1\"𠮶ç®è¤ã请记å°èªå®ä¹ð ®¶ .css å .js 页è¦ç¨å°åãå°±è¯ï¼{{ns:user}}:Foo/vector.css ä¼çå {{ns:user}}:Foo/Vector.cssã",
+ "userinvalidconfigtitle": "'''è¦å:''' å\"$1\"𠮶ç®è¤ã请记å°èªå®ä¹ð ®¶ .css å .js 页è¦ç¨å°åãå°±è¯ï¼{{ns:user}}:Foo/vector.css ä¼çå {{ns:user}}:Foo/Vector.cssã",
"updated": "ï¼æ´æ°æ£å½ï¼",
"note": "'''注æ:'''",
"previewnote": "'''请记å°ä¸ªå
ç³»é¢è§ï¼å
容ååä¿åï¼'''",
@@ -630,11 +634,11 @@
"rclistfrom": "æ¾ç¤ºèª$3 $2å𠮶æ°æ¹å¨",
"rcshowhideminor": "$1ç»ç¼è¾",
"rcshowhidebots": "$1æºå¨äººð ®¶ç¼è¾",
- "rcshowhideliu": "$1ç»å
¥ç¨æ·ð ®¶ç¼è¾",
+ "rcshowhideliu": "$1注åç¨æ·",
"rcshowhideanons": "$1å¿åç¨æ·ð ®¶ç¼è¾",
"rcshowhidepatr": "$1æ£æ¥è¿ð ®¶ç¼è¾",
"rcshowhidemine": "$1å¶ð ®¶ç¼è¾",
- "rclinks": "æ¾ç¤ºææ$2æ¥ä¹å
ææ°ð ®¶$1åæ¹å¨ã",
+ "rclinks": "æ¾ç¤ºææ$2æ¥ä¹å
ææ°ð ®¶$1个æ¹å¨ã",
"diff": "å·®å¼",
"hist": "åå²",
"hide": "å¼å°",
@@ -643,8 +647,6 @@
"newpageletter": "æ°",
"boteditletter": "æº",
"number_of_watching_users_pageview": "[$1åªçè§ç¨æ·]",
- "rc_categories": "åç±»çå®ï¼ç¨\"|\"éå¼ï¼",
- "rc_categories_any": "ä»»ä½",
"newsectionsummary": "/* $1 */ æ°æ®µè½",
"rc-enhanced-expand": "æ¾å°ç»èï¼éè¦ JavaScriptï¼",
"rc-enhanced-hide": "å¼å°ç»è",
@@ -1022,7 +1024,7 @@
"namespace": "空é´å:",
"invert": "åé",
"blanknamespace": "ï¼ä¸»è¦ï¼",
- "contributions": "ç¨æ·è´¡ç®",
+ "contributions": "{{GENDER:$1|ç¨æ·}}è´¡ç®",
"contributions-title": "$1𠮶ç¨æ·è´¡ç®",
"mycontris": "å¶ð ®¶è´¡ç®",
"contribsub2": "$1ð ®¶è´¡ç® ï¼$2ï¼",
@@ -1238,7 +1240,7 @@
"tooltip-t-recentchangeslinked": "ä»ä¸ªé¡µè¿åºð ®¶å
¨é¨é¡µé¢ð ®¶æ¹å¨",
"tooltip-feed-rss": "个页𠮶RSS订é
",
"tooltip-feed-atom": "个页𠮶Atom订é
",
- "tooltip-t-contributions": "æå个åªç¨æ·ð ®¶è´¡ç®",
+ "tooltip-t-contributions": "ç±{{GENDER:$1|æ¤ç¨æ·}}ååºçè´¡ç®å表",
"tooltip-t-emailuser": "åå°é®ä»¶å°ä¸ªåªç¨æ·",
"tooltip-t-upload": "ä¸ä¼ å¾åæå¤åªä½æ件",
"tooltip-t-specialpages": "å
¨é¨ç¹æ®é¡µå表",
@@ -1310,7 +1312,7 @@
"file-info-size": "$1 à $2 åç´ ï¼æ¡£æ¡å¤§ç»ï¼$3 ï¼MIMEç±»åï¼$4",
"file-nohires": "åæ´é«å辨ç𠮶å¾åã",
"svg-long-desc": "SVGæ¡£æ¡ï¼è¡¨é¢å¤§ç»ï¼ $1 à $2 åç´ ï¼æ¡£æ¡å¤§ç»ï¼$3",
- "show-big-image": "å®æ´å辨ç",
+ "show-big-image": "åå§æ件",
"newimages": "æ°å»ºå¾åç»å»",
"imagelisttext": "åºä¸ç³»æ$2æå𠮶$1åªæ¡£æ¡å表ã",
"noimages": "åä»å©å¯æã",
@@ -1617,5 +1619,5 @@
"external_image_whitelist": "#çä½ä¸ªè¡å\n#å°ä¸é¦ï¼//𠮶ä¸é´ï¼è¾å
¥æ£è§è¡¨è¾¾å¼\n#ä½¢ä¿ä¼åå¾å¤é¨ï¼å·²è¶
è¿ç»ð ®¶ï¼å¾çé
å\n#许滴é
åå°åºæ¥ð ®¶ä¼æ¾ç¤ºåå¾çï¼å¦åå°±å
ä¼æ¾ç¤ºåè¿ç»\n#æ # å¼å¤´ð ®¶è¡ä¼å½å注解\n#大å°ååæå·®å«\n\n#å°ä¸ªè¡ä¸é¦è¾å
¥ææ𠮶regexãçä½ä¸ªè¡å
",
"tag-filter": "[[Special:Tags|æ ç¾]]è¿æ»¤å¨ï¼",
"rightsnone": "ï¼åï¼",
- "searchsuggest-search": "寻å"
+ "searchsuggest-search": "寻å{{SITENAME}}"
}
diff --git a/languages/i18n/gan-hant.json b/languages/i18n/gan-hant.json
index 03c6063e71..e249240f4f 100644
--- a/languages/i18n/gan-hant.json
+++ b/languages/i18n/gan-hant.json
@@ -391,7 +391,7 @@
"userjsyoucanpreview": "'''æ示:''' åå°åè«ç¨'æåèµ·'ä¾æ¸¬åå·å°æ°JS ã",
"usercsspreview": "'''注æå·å®ä¿å°é 覽å·åäººå° CSSï¼å
§å®¹ååä¿åï¼'''",
"userjspreview": "'''注æå·å®ä¿å°æ¸¬è©¦ï¼é 覽å·åäººå° JavaScriptï¼å
§å®¹ååä¿åï¼'''",
- "userinvalidcssjstitle": "'''è¦å:''' å\"$1\"å°ç®èãè«è¨å°èªå®ç¾©å° .css å .js é è¦ç¨å°å¯«ã就話ï¼{{ns:user}}:Foo/vector.css ä¼çå {{ns:user}}:Foo/Vector.cssã",
+ "userinvalidconfigtitle": "'''è¦å:''' å\"$1\"å°ç®èãè«è¨å°èªå®ç¾©å° .css å .js é è¦ç¨å°å¯«ã就話ï¼{{ns:user}}:Foo/vector.css ä¼çå {{ns:user}}:Foo/Vector.cssã",
"updated": "ï¼æ´æ°æ£å©ï¼",
"note": "'''注æ:'''",
"previewnote": "'''è«è¨å°ç®å
ä¿é 覽ï¼å
§å®¹ååä¿åï¼'''",
@@ -639,8 +639,6 @@
"newpageletter": "æ°",
"boteditletter": "æ©",
"number_of_watching_users_pageview": "[$1é»ç£è¦ç¨æ¶]",
- "rc_categories": "åé¡çå®ï¼ç¨\"|\"ééï¼",
- "rc_categories_any": "ä»»ä½",
"newsectionsummary": "/* $1 */ æ°æ®µè½",
"rc-enhanced-expand": "顯å°ç´°ç¯ï¼éè¦ JavaScriptï¼",
"rc-enhanced-hide": "å¼å°ç´°ç¯",
diff --git a/languages/i18n/gd.json b/languages/i18n/gd.json
index 600f0e9ca0..036ef01bbf 100644
--- a/languages/i18n/gd.json
+++ b/languages/i18n/gd.json
@@ -638,7 +638,7 @@
"userjspreview": "Cuimhnich nach e seo ach ro-shealladh/deuchainn air a' JavaScript agad.\nCha deach a shà bhaladh fhathast!",
"sitecsspreview": "Cuimhnich nach e seo ach ro-shealladh air a' CSS agad.\nCha deach a shà bhaladh fhathast!",
"sitejspreview": "Cuimhnich nach e seo ach ro-shealladh air còd a' JavaScript agad.\nCha deach a shà bhaladh fhathast!",
- "userinvalidcssjstitle": "Rabhadh: Chan eil an craiceann \"$1\" ann.\nCleachdaidh duilleagan gnà thaichte .css agus .js tiotal ann an litrichean beaga, m.e. {{ns:user}}:Foo/vector.css seach {{ns:user}}:Foo/Vector.css.",
+ "userinvalidconfigtitle": "Rabhadh: Chan eil an craiceann \"$1\" ann.\nCleachdaidh duilleagan gnà thaichte .css agus .js tiotal ann an litrichean beaga, m.e. {{ns:user}}:Foo/vector.css seach {{ns:user}}:Foo/Vector.css.",
"updated": "(Air ùrachadh)",
"note": "An aire:",
"previewnote": "Cuimhnich nach eil ann ach ro-shealladh.\nCha deach na mùthaidhean agad a shà bhaladh fhathast!",
@@ -975,7 +975,7 @@
"prefs-files": "Faidhlichean",
"prefs-custom-css": "CSS gnà thaichte",
"prefs-custom-js": "JavaScript gnà thaichte",
- "prefs-common-css-js": "CSS/JavaScript ann an coitcheann do gach craiceann:",
+ "prefs-common-config": "CSS/JavaScript ann an coitcheann do gach craiceann:",
"prefs-reset-intro": "'S urrainn dhut bun-roghainnean na là raich ath-shuidheachadh air an duilleag seo. Cha ghabh seo a neo-dhèanamh.",
"prefs-emailconfirm-label": "Dearbhadh puist-d:",
"youremail": "Post-dealain:",
@@ -1221,8 +1221,6 @@
"boteditletter": "bt",
"unpatrolledletter": "!",
"number_of_watching_users_pageview": "[Tha $1 {{PLURAL:$1|chleachdaiche|chleachdaiche|cleachdaichean|cleachdaiche}} a' cumail sùil air]",
- "rc_categories": "Dìreach sna roinnean-seòrsa (sgaraich le â|â):",
- "rc_categories_any": "Gin dhe na chaidh a thaghadh",
"rc-change-size": "$1",
"rc-change-size-new": "$1 {{PLURAL:$1|bhaidht|bhaidht|baidhtichean|baidht}} às dèidh an atharrachaidh",
"newsectionsummary": "Earrann ùr /* $1 */",
diff --git a/languages/i18n/gl.json b/languages/i18n/gl.json
index 5be70565b2..0e7a58eda3 100644
--- a/languages/i18n/gl.json
+++ b/languages/i18n/gl.json
@@ -673,7 +673,7 @@
"userjspreview": "'''Lembre que só está probando/previsualizando o seu JavaScript de usuario.'''\n'''Este aÃnda non foi gardado!'''",
"sitecsspreview": "'''Lembre que só está vendo a vista previa deste CSS.'''\n'''Este aÃnda non foi gardado!'''",
"sitejspreview": "'''Lembre que só está vendo a vista previa deste código JavaScript.'''\n'''Este aÃnda non foi gardado!'''",
- "userinvalidcssjstitle": "Aviso: Non hai ningunha aparencia chamada \"$1\".\nLembre que as páxinas .css e .js personalizadas utilizan un tÃtulo en minúsculas, como por exemplo \"{{ns:user}}:Exemplo/vector.css\" no canto de \"{{ns:user}}:Exemplo/Vector.css\".",
+ "userinvalidconfigtitle": "Aviso: Non hai ningunha aparencia chamada \"$1\".\nLembre que as páxinas .css e .js personalizadas utilizan un tÃtulo en minúsculas, como por exemplo \"{{ns:user}}:Exemplo/vector.css\" no canto de \"{{ns:user}}:Exemplo/Vector.css\".",
"updated": "(Actualizado)",
"note": "'''Nota:'''",
"previewnote": "Lembre que esta é só unha vista previa.\nAÃnda non gardou os seus cambios!",
@@ -1043,7 +1043,7 @@
"prefs-files": "Ficheiros",
"prefs-custom-css": "CSS personalizado",
"prefs-custom-js": "JavaScript personalizado",
- "prefs-common-css-js": "CSS/JavaScript compartido por todas as aparencias:",
+ "prefs-common-config": "CSS/JavaScript compartido por todas as aparencias:",
"prefs-reset-intro": "Pode usar esta páxina para restablecer as súas preferencias ás que veñen dadas por defecto.\nEste cambio non se poderá desfacer.",
"prefs-emailconfirm-label": "Confirmación do correo:",
"youremail": "Correo electrónico:",
@@ -1483,8 +1483,6 @@
"boteditletter": "b",
"unpatrolledletter": "!",
"number_of_watching_users_pageview": "[$1 {{PLURAL:$1|usuario|usuarios}} vixiando]",
- "rc_categories": "Limitar ás categorÃas (separadas por \"|\"):",
- "rc_categories_any": "Calquera das elixidas",
"rc-change-size": "$1",
"rc-change-size-new": "$1 {{PLURAL:$1|byte|bytes}} despois da modificación",
"newsectionsummary": "Nova sección: /* $1 */",
diff --git a/languages/i18n/gom-deva.json b/languages/i18n/gom-deva.json
index e8b07f68ca..beecd23003 100644
--- a/languages/i18n/gom-deva.json
+++ b/languages/i18n/gom-deva.json
@@ -503,7 +503,6 @@
"minoreditletter": "द",
"newpageletter": "न",
"boteditletter": "र",
- "rc_categories_any": "वà¥à¤à¤à¤¿à¤²à¥à¤²à¥à¤¯à¤¾ मदलà¥à¤ à¤à¤à¤¯à¤à¥à¤¯",
"rc-change-size-new": "$1 {{बहà¥à¤µà¤à¤¨:$1|byte|bytes}}बदल à¤à¥à¤²à¥à¤¯à¤¾ à¤à¤ªà¤°à¤¾à¤à¤¤",
"rc-enhanced-expand": "मà¥à¤¹à¤¾à¤¯à¤¤à¥ दाà¤à¤¯",
"rc-enhanced-hide": "मà¥à¤¹à¤¾à¤¯à¤¤à¥ लिपय",
diff --git a/languages/i18n/gom-latn.json b/languages/i18n/gom-latn.json
index 493e03387f..976847b001 100644
--- a/languages/i18n/gom-latn.json
+++ b/languages/i18n/gom-latn.json
@@ -511,7 +511,6 @@
"minoreditletter": "d",
"newpageletter": "N",
"boteditletter": "r",
- "rc_categories_any": "Vinchlele modlem khuimchem-i",
"rc-change-size-new": "$1 {{PLURAL:$1|byte|byti}} bodol kel'lea uprant",
"rc-enhanced-expand": "Bariksann dakhoi",
"rc-enhanced-hide": "Bariksann lipoi",
diff --git a/languages/i18n/grc.json b/languages/i18n/grc.json
index 492adc82e0..c56250e42f 100644
--- a/languages/i18n/grc.json
+++ b/languages/i18n/grc.json
@@ -435,7 +435,7 @@
"clearyourcache": "'''á¼ÏιÏημείÏÏÎ¹Ï - ÎεÏá½° Ïὸ καÏαγÏάÏειν, á¼Î½Î´ÎµÏομÎνÏÏ Î´Îµá¿ Ïε ÏαÏακάμÏειν Ïὴν λανθάνοÏ
Ïαν μνήμην Ïοῦ ÏλοηγηÏηÏίοÏ
ÏοÏ
ÏÏὸ Ïοῦ á½Ïᾶν Ïá½°Ï Î¼ÎµÏαβολάÏ.'''\n'''Mozilla Safari:''' á¼ÏηÏÏειν Ïὸ ''Shift'' á¼Î½á¿· Î¸Î»Î¯Î²ÎµÎ¹Ï Ïὸ ''Reload'', á¼¢ ÏίεÏον εἴÏε ''Ctrl-F5'' á¼¢ ''Ctrl-R'' (''Command-R'' á¼Î½ Mac);\n'''Google Chrome:''' θλίÏον ''Ctrl-Shift-R'' (''Command-Shift-R'' á¼Î½ Mac)\n'''Konqueror: '''θλίÏον Ïὸ ''Reload'' á¼¢ ÏίεÏον ''F5''\n'''Opera:''' καθαίÏειν Ïὴν λανθάνοÏ
Ïαν μνήμην á¼Î½ ''Tools â Preferences''\n'''Internet Explorer:''' á¼ÏηÏÏειν Ïὸ ''Ctrl'' á¼Î½á¿· Î¸Î»Î¯Î²ÎµÎ¹Ï Ïὸ ''Refresh,'' á¼¢ ÏίεÏον ''Ctrl-F5''.",
"usercssyoucanpreview": "'''ÎοÏ
λή:''' ΧÏá¿Ïον Ïá¿· κομβίῳ 'ÎεικνÏναι ÏÏοθεÏÏηÏιν' ἵνα δοκιμάÏá¿Ï Ïὴν νÎαν ÏοÏ
CSS ÏÏὸ Ïοῦ καÏαγÏάÏειν.",
"userjsyoucanpreview": "'''ÎοÏ
λή:''' ΧÏá¿Ïον Ïá¿· κομβίῳ 'ÎεικνÏναι ÏÏοθεÏÏηÏιν' ἵνα δοκιμάÏá¿Ï Ïὴν νÎαν ÏοÏ
JS ÏÏὸ Ïοῦ καÏαγÏάÏειν.",
- "userinvalidcssjstitle": "'''Î ÏοÏοÏή:''' Îá½Ï á½ÏίÏÏαÏαι ''skin'' \"$1\". ÎÎμνηÏο: αἱ ÏÏοÏηÏμοÏμÎναι δÎλÏοι .css καὶ .js ÏÏῶνÏαι á¼ÏÏνÏ
μον Ïι á¼Ïον Ïεζὰ γÏάμμαÏα, Ï.Ï. {{ns:user}}:Foo/vector.css á¼Î½ á¼Î½ÏίθεÏει ÏÏá½¸Ï Ïὸν {{ns:user}}:Foo/Vector.css.",
+ "userinvalidconfigtitle": "'''Î ÏοÏοÏή:''' Îá½Ï á½ÏίÏÏαÏαι ''skin'' \"$1\". ÎÎμνηÏο: αἱ ÏÏοÏηÏμοÏμÎναι δÎλÏοι .css καὶ .js ÏÏῶνÏαι á¼ÏÏνÏ
μον Ïι á¼Ïον Ïεζὰ γÏάμμαÏα, Ï.Ï. {{ns:user}}:Foo/vector.css á¼Î½ á¼Î½ÏίθεÏει ÏÏá½¸Ï Ïὸν {{ns:user}}:Foo/Vector.css.",
"updated": "(á¼Î½Î·Î¼ÎµÏÏθÎν)",
"note": "'''á¼ÏιÏήμανÏιÏ:'''",
"previewnote": "'''á¼Î´Îµ á¼ÏÏὶ ÏÏοθεÏÏηÏιÏ, οá½Ïὶ καÏαγÏαÏá½´ Ïῶν μεÏαβολῶν!'''",
@@ -859,8 +859,6 @@
"newpageletter": "Î",
"boteditletter": "αá½Ï",
"number_of_watching_users_pageview": "[$1 á¼ÏοÏᾶν {{PLURAL:$1|ÏÏÏμενον|ÏÏÏμÎνοÏ
Ï}}]",
- "rc_categories": "á½Ïιον καÏηγοÏιῶν (ÏήμανÏÎ¹Ï Î´Î¹Î±ÏÏÏίÏεÏÏ: \"|\")",
- "rc_categories_any": "Îἵα δήÏοÏε",
"rc-change-size-new": "$1 {{PLURAL:$1|δÏ
ÏιολÎξιÏ|δÏ
ÏιολÎξειÏ}} μεθÏÏÏεÏον μεÏαβολήÏ",
"newsectionsummary": "/* $1 */ νÎον Ïμá¿Î¼Î±",
"rc-enhanced-expand": "ÎεικνÏναι λεÏÏομÎÏÎµÎ¹Î±Ï (á¼ÏαιÏεῠJavaScript)",
diff --git a/languages/i18n/gsw.json b/languages/i18n/gsw.json
index 6814844063..9c1dcfe6cd 100644
--- a/languages/i18n/gsw.json
+++ b/languages/i18n/gsw.json
@@ -626,7 +626,7 @@
"userjspreview": "== Vorschau vu Dyynem Benutzer-Javascript. ==\n'''Gib acht:''' Noch em Spychere muesch Dyy Browser aawyse di nej Version z lade: '''Mozilla:''' ''Strg-Shift-R'', '''IE:''' ''Strg-F5'', '''Safari:''' ''Cmd-Shift-R'', '''Konqueror:''' ''F5''.",
"sitecsspreview": "'''Obacht: Du luegsch nume ne Vorschau vu däm CSS aa.'''\n'''S isch nonig gspycheret wore!'''",
"sitejspreview": "'''Obacht: Du luegsch nume ne Vorschau vu däm JavaScript aa.'''\n'''S isch nonig gspycheret wore!'''",
- "userinvalidcssjstitle": "'''Achtig:''' D Skin â$1â git s nid. Dänk dra, ass benutzerspezifischi .css- und .js-Syte mit eme Chleibuechstabe mien aafange, also z B. ''{{ns:user}}:Mustermann/vector.css'' statt ''{{ns:user}}:Mustermann/Vector.css''.",
+ "userinvalidconfigtitle": "'''Achtig:''' D Skin â$1â git s nid. Dänk dra, ass benutzerspezifischi .css- und .js-Syte mit eme Chleibuechstabe mien aafange, also z B. ''{{ns:user}}:Mustermann/vector.css'' statt ''{{ns:user}}:Mustermann/Vector.css''.",
"updated": "(Gänderet)",
"note": "'''Obacht: '''",
"previewnote": "'''Das isch numen e Vorschau und nonig gspycheret!'''\nDie Syte isch nonig gspycheret wore!",
@@ -970,7 +970,7 @@
"prefs-files": "Bilder",
"prefs-custom-css": "Benutzerdefinierti CSS",
"prefs-custom-js": "Benutzerdefiniert JS",
- "prefs-common-css-js": "Gmeinsam CSS/JS fir alli Skin:",
+ "prefs-common-config": "Gmeinsam CSS/JS fir alli Skin:",
"prefs-reset-intro": "Du chasch die Syte verwände go d Yystellige uf dr Standard zrucksetze.\nDes cha nimmi ruckgängig gmacht wäre.",
"prefs-emailconfirm-label": "E-Mail-Bstätigung:",
"youremail": "E-Mail-Adräss:",
@@ -1217,8 +1217,6 @@
"newpageletter": "N",
"boteditletter": "B",
"number_of_watching_users_pageview": "[$1 {{PLURAL:$1|Benutzer, wu beobachtet|Benutzer, wu beobachte}}]",
- "rc_categories": "Nume Syten us bestimmte Kategorie (mit «|» trenne):",
- "rc_categories_any": "Beliebigi vo den usgwählte",
"rc-change-size-new": "$1 {{PLURAL:$1|Byte|Byte}} no dr Ãnderig",
"newsectionsummary": "Neje Abschnitt /* $1 */",
"rc-enhanced-expand": "Detail aazeige",
diff --git a/languages/i18n/gu.json b/languages/i18n/gu.json
index c0424f67ff..01be1ab930 100644
--- a/languages/i18n/gu.json
+++ b/languages/i18n/gu.json
@@ -595,7 +595,7 @@
"userjspreview": "'''યાદ રહૠàªà« તમૠતમારા સàªà«àª¯ JavaScript નà«àª àª
વલà«àªàª¨ àªàª°à« àªà«.'''\n'''હàªà« સà«àª§à«àª તૠસàªàªµàª¾àª¯à«àª નથà«!'''",
"sitecsspreview": "'''યાદ રહૠàªà« તમૠતમારા સàªà«àª¯ CSS નà«àª àª
વલà«àªàª¨ àªàª°à« àªà«.'''\n'''હàªà« સà«àª§à«àª તૠસàªàªµàª¾àª¯à«àª નથà«!'''",
"sitejspreview": "'''યાદ રહૠàªà« તમૠતમારા સàªà«àª¯ JavaScript નà«àª àª
વલà«àªàª¨ àªàª°à« àªà«.'''\n'''હàªà« સà«àª§à«àª તૠસàªàªµàª¾àª¯à«àª નથà«!'''",
- "userinvalidcssjstitle": "'''àªà«àª¤àªµàª£à«:''' àªà«àª પણ \"$1\" પàªàª² નથà«.\nસàªà«àª¯ રàªàª¿àª¤ .css àª
નૠ.js પાના બà«àªà« àª
àªàªà«àª°à«àªà« બારàªàª¡à« શà«àª°à«àª·àª વાપરૠàªà«, દા. ત. {{ns:user}}:Foo/vector.css નહà«àª àªà« {{ns:user}}:Foo/Vector.css.",
+ "userinvalidconfigtitle": "'''àªà«àª¤àªµàª£à«:''' àªà«àª પણ \"$1\" પàªàª² નથà«.\nસàªà«àª¯ રàªàª¿àª¤ .css àª
નૠ.js પાના બà«àªà« àª
àªàªà«àª°à«àªà« બારàªàª¡à« શà«àª°à«àª·àª વાપરૠàªà«, દા. ત. {{ns:user}}:Foo/vector.css નહà«àª àªà« {{ns:user}}:Foo/Vector.css.",
"updated": "(સàªàªµàª°à«àª§à«àª¤)",
"note": "'''નà«àªàª§:'''",
"previewnote": "ધà«àª¯àª¾àª¨àª®àª¾àª રાàªà« àªà« ઠફàªà«àª¤ પà«àª°à«àªµàª¾àªµàª²à«àªàª¨ àªà«.\nતમારા ફà«àª°àª«àª¾àª°à« હàªà« સાàªàªµàªµàª¾àª®àª¾àª àªàªµà«àª¯àª¾ નથà«!",
@@ -902,7 +902,7 @@
"prefs-files": "ફાàªàª²",
"prefs-custom-css": "àªàª¾àª¸ CSS",
"prefs-custom-js": "સàªà«àª¯ નિરà«àª®àª¿àª¤ JavaScript",
- "prefs-common-css-js": "બધા ઠફલઠમાàªà« સહà«àª¯àª¾àª°à« CSS/JavaScript",
+ "prefs-common-config": "બધા ઠફલઠમાàªà« સહà«àª¯àª¾àª°à« CSS/JavaScript",
"prefs-reset-intro": "તમૠઠપાનાનૠàªàªªàª¯à«àª àªàª°à«àª¨à« તમારા પસàªàª¦ àªàª°à«àª²àª¾ વિàªàª²à«àªªà«àª¨à« પાàªàª¾ સાàªàªàª¨àª¾ મà«àª³ વિàªàª²à«àªªà« સમાન àªà«àª વૠશàªà« àªà«.\n\nàªàª¨à« àªàª²àªàª¾àªµà« નહિ શàªàª¾àª¯.",
"prefs-emailconfirm-label": "àª-મà«àª² પà«àª·à«àªà«",
"youremail": "àª-મà«àªàª²:",
@@ -1142,8 +1142,6 @@
"newpageletter": "નવà«àª",
"boteditletter": "બà«àª",
"number_of_watching_users_pageview": "[$1 àªà«àªàª°àª¹à«àª² {{PLURAL:$1|સàªà«àª¯|સàªà«àª¯à«}}]",
- "rc_categories": "શà«àª°à«àª£à«àª સà«àª§à« મરà«àª¯àª¾àª¦àª¿àª¤ (\"|\" થૠàªà«àª¦àª¾ પાડà«):",
- "rc_categories_any": "àªà«àª પણ પસàªàª¦ àªàª°à«àª²",
"rc-change-size-new": "બદલાયા પàªà« $1 {{PLURAL:$1|બાàªàª|બાàªàªà«àª¸}}",
"newsectionsummary": "/* $1 */ નવૠવિàªàª¾àª",
"rc-enhanced-expand": "વિàªàª¤à« બતાવà«",
diff --git a/languages/i18n/gv.json b/languages/i18n/gv.json
index 0c4d19e156..c80216e23b 100644
--- a/languages/i18n/gv.json
+++ b/languages/i18n/gv.json
@@ -562,7 +562,6 @@
"minoreditletter": "m",
"newpageletter": "N",
"boteditletter": "r",
- "rc_categories_any": "Ronney erbee",
"rc-enhanced-expand": "Taishbyn sonreeaghtyn (ta feme er JavaScript)",
"rc-enhanced-hide": "Follee sonreeaghtyn",
"recentchangeslinked": "Caghlaaghyn conastagh",
diff --git a/languages/i18n/hak.json b/languages/i18n/hak.json
index 126d1e240a..26e605d172 100644
--- a/languages/i18n/hak.json
+++ b/languages/i18n/hak.json
@@ -522,7 +522,7 @@
"userjsyoucanpreview": "'''Thì-sṳ:''' Chhai pó-chhùn chhièn chhiáng yung 'hién-sṳ yi-ko' on-néu lòi chhet-chhṳ ngì sîn-ke JS.",
"usercsspreview": "'''Chu-yi ngì chak-he chhai yi-liau ngì ke-ngìn CSS, hà n-mò tú-chhùn!'''",
"userjspreview": "'''è¨ç·æ±å®å®ä¿å¨æ¸¬è©¦/é 覽æ±å
ç¨æ¶JavaScriptã'''\n'''éåä¿åï¼'''",
- "userinvalidcssjstitle": "'''è¦å:''' æ¯åå¨å¤ç®â$1âã\n注æèªå®å
.cssæ.jsé æ使ç¨å°å¯«æ¨é¡ï¼ä¾å¦ï¼{{ns:user}}:Foo/vector.cssæ {{ns:user}}:Foo/Vector.cssæ¯åã",
+ "userinvalidconfigtitle": "'''è¦å:''' æ¯åå¨å¤ç®â$1âã\n注æèªå®å
.cssæ.jsé æ使ç¨å°å¯«æ¨é¡ï¼ä¾å¦ï¼{{ns:user}}:Foo/vector.cssæ {{ns:user}}:Foo/Vector.cssæ¯åã",
"updated": "(YÃ-kîn kiên-sîn)",
"note": "Chu-yi:",
"previewnote": "'''è«è¨å°éå®æ·¨ä¿é 覽ã'''\næ±å
æ´æ¹éåä¿åï¼",
@@ -791,8 +791,6 @@
"newpageletter": "Sîn",
"boteditletter": "kî",
"number_of_watching_users_pageview": "[$1é»ç¨æ¶é注]",
- "rc_categories": "åé¡çéï¼ä»¥â|âåå²ï¼",
- "rc_categories_any": "ä»»æ",
"rc-change-size-new": "Kiên-kói heu ke $1 vi-ngièn-chû",
"rc-enhanced-expand": "å±ç¤ºç´°ç¯ ï¼ææJavaScriptï¼",
"rc-enhanced-hide": "é±èç´°ç¯",
diff --git a/languages/i18n/he.json b/languages/i18n/he.json
index 1e5187b7aa..a29109341f 100644
--- a/languages/i18n/he.json
+++ b/languages/i18n/he.json
@@ -183,7 +183,7 @@
"mytalk": "ש×××",
"anontalk": "ש×××",
"navigation": "× ××××",
- "and": " ×",
+ "and": " ×××",
"faq": "ש×××ת ×תש×××ת",
"actions": "פע×××ת",
"namespaces": "×ר××× ×©×",
@@ -678,7 +678,7 @@
"userjspreview": "×Ö´××¨× ×©×× ×¨×§ ×××ק×/תצ××× ×ק×××× ×©× ×¡×§×¨××¤× ×Ö¾JavaScript ש×××.\n××× ×¢×××× ×× × ×©×ר!",
"sitecsspreview": "'''×××¨× ×©×× ×¨×§ תצ××× ×ק×××× ×©× ×××××× ×Ö¾CSS ×××.'''\n'''××× ××¨× × ×©×ר!'''",
"sitejspreview": "'''×××¨× ×©×× ×¨×§ תצ××× ×ק×××× ×©× ×§×× ×Ö¾JavaScript ×××.'''\n'''××× ××¨× × ×©×ר!'''",
- "userinvalidcssjstitle": "'''×××ר×:''' ××¢×צ×× \"$1\" ××× × ×§×××.\n××¤× .css ×Ö¾.js ××ת×××× ××ש×ת ×שת×ש×× ×××תרת ×¢× ××ת××ת ק×× ×ת â ××ש×, {{ns:user}}:×××××/vector.css ××× {{ns:user}}:×××××/Vector.css.",
+ "userinvalidconfigtitle": "'''×××ר×:''' ××¢×צ×× \"$1\" ××× × ×§×××.\n××¤× .css ×Ö¾.js ××ת×××× ××ש×ת ×שת×ש×× ×××תרת ×¢× ××ת××ת ק×× ×ת â ××ש×, {{ns:user}}:×××××/vector.css ××× {{ns:user}}:×××××/Vector.css.",
"updated": "(××¢××××)",
"note": "'''×ער×:'''",
"previewnote": "{{GENDER:|×××ר|×Ö´×ר×|×Ö´×ר×}} ש×× ×¨×§ תצ××× ×ק××××.\n×ש×× ×××× {{GENDER:|ש××|ש××|ש×××}} ×¢×××× ×× × ×©×ר×!",
@@ -1045,7 +1045,7 @@
"prefs-files": "ק×צ××",
"prefs-custom-css": "ק×××¥ CSS ××ת×× ××ש×ת",
"prefs-custom-js": "ק×××¥ JavaScript ××ת×× ××ש×ת",
- "prefs-common-css-js": "ק×××¦× CSS/JavaScript ×ש×תפ×× ××× ××¢×צ××××:",
+ "prefs-common-config": "ק×××¦× CSS/JavaScript ×ש×תפ×× ××× ××¢×צ××××:",
"prefs-reset-intro": "××פשר××ª× ××שת×ש ××פשר×ת ×× ××× ×××××ר ×ת ×××¢×פ×ת ש×× ××××ר×ת ×ר×רת ××××× ×©× ××תר.\n×× × ××ª× ×××× ×¤×¢××× ××.",
"prefs-emailconfirm-label": "××××ת ×ת××ת ×××\"×:",
"youremail": "×××ר ××ק×ר×× ×:",
@@ -1479,8 +1479,6 @@
"newpageletter": "×",
"boteditletter": "×",
"number_of_watching_users_pageview": "[{{PLURAL:$1|×שת×ש ××× ×¢×ק×|$1 ×שת×ש×× ×¢×ק×××}} ×××¨× ×××£]",
- "rc_categories": "××××× ×ק×××ר××ת (××פר××ת ××ª× \"|\"):",
- "rc_categories_any": "×× ××ת ××× ××ר×ת",
"rc-change-size-new": "{{PLURAL:$1|××ת ×××|$1 ×ת××}} ×××ר ×ש×× ××",
"newsectionsummary": "/* $1 */ ×¤×¡×§× ××ש×",
"rc-enhanced-expand": "×צ×ת ×פר×××",
@@ -2638,6 +2636,7 @@
"thumbnail_dest_directory": "×× × ××ª× ××× ××צ×ר ×ת ת×ק××ת ×××¢×",
"thumbnail_image-type": "ס×× ×ת××× × ××× × × ×ª××",
"thumbnail_gd-library": "×××רת ×ספר×× GD ××× × ×©×××: ××¡×¨× ×פ×× ×§×¦×× $1",
+ "thumbnail_image-size-zero": "× ×¨×× ×©×§×××¥ ×ת××× × ××× ××××× ×פס.",
"thumbnail_image-missing": "× ×¨×× ×©×ק×××¥ ××× ×סר: $1",
"thumbnail_image-failure-limit": "××× ×××ר×× × × ×ס××× ×ת ר××× ××× ($1 ×× ××תר) ××צ×ר ×ת ×ת××× × ×××××ערת ×××ת. × × ×× ×¡×ת ש×× ××××ר ××תר.",
"import": "××××× ×פ××",
diff --git a/languages/i18n/hi.json b/languages/i18n/hi.json
index fd014098d2..a36d1d373d 100644
--- a/languages/i18n/hi.json
+++ b/languages/i18n/hi.json
@@ -735,7 +735,7 @@
"userjspreview": "'''धà¥à¤¯à¤¾à¤¨ दà¥à¤ à¤à¤¿ à¤à¤ª à¤
पनॠà¤à¤¾à¤µà¤¾à¤¸à¥à¤à¥à¤°à¤¿à¤ªà¥à¤ à¤à¥ à¤à¤²à¤ दà¥à¤ रहॠहà¥à¤à¥¤'''\n'''यह à¤
à¤à¥ तठसà¤à¤à¥à¤ नहà¥à¤ à¤à¤ हà¥!'''",
"sitecsspreview": "''''धà¥à¤¯à¤¾à¤¨ दà¥à¤ à¤à¤¿ à¤à¤ª à¤à¤¸ सà¥à¥°à¤à¤¸à¥°à¤à¤¸ à¤à¥ à¤à¤²à¤ दà¥à¤ रहॠहà¥à¤à¥¤'''\n'''यह à¤
à¤à¥ तठसà¤à¤à¥à¤ नहà¥à¤ à¤à¤ हà¥!'''",
"sitejspreview": "'''धà¥à¤¯à¤¾à¤¨ दà¥à¤ à¤à¤¿ à¤à¤ª à¤à¤¸ à¤à¤¾à¤µà¤¾à¤¸à¥à¤à¥à¤°à¤¿à¤ªà¥à¤ à¤à¥à¤¡ à¤à¥ à¤à¤²à¤ दà¥à¤ रहॠहà¥à¤à¥¤'''\n'''यह à¤
à¤à¥ तठसà¤à¤à¥à¤¯à¤¾ नहà¥à¤ à¤à¤¯à¤¾ हà¥!'''",
- "userinvalidcssjstitle": "'''à¤à¥à¤¤à¤¾à¤µà¤¨à¥:''' \"$1\" नाम à¤à¥ à¤à¥à¤ तà¥à¤µà¤à¤¾ नहà¥à¤ हà¥à¥¤\nबदलॠहà¥à¤ .css à¤à¤° .js पà¥à¤·à¥à¤ à¥à¤ à¤à¥ शà¥à¤°à¥à¤·à¤ नà¥à¤à¥ सà¥à¤¤à¤° à¤à¥ लिपि (lowercase) à¤à¤¾ पà¥à¤°à¤¯à¥à¤ à¤à¤°à¤¤à¥ हà¥à¤à¥¤ à¤à¤¦à¤¾à¤¹à¤°à¤£: {{ns:user}}:Foo/vector.css न à¤à¥ {{ns:user}}:Foo/Vector.css",
+ "userinvalidconfigtitle": "'''à¤à¥à¤¤à¤¾à¤µà¤¨à¥:''' \"$1\" नाम à¤à¥ à¤à¥à¤ तà¥à¤µà¤à¤¾ नहà¥à¤ हà¥à¥¤\nबदलॠहà¥à¤ .css à¤à¤° .js पà¥à¤·à¥à¤ à¥à¤ à¤à¥ शà¥à¤°à¥à¤·à¤ नà¥à¤à¥ सà¥à¤¤à¤° à¤à¥ लिपि (lowercase) à¤à¤¾ पà¥à¤°à¤¯à¥à¤ à¤à¤°à¤¤à¥ हà¥à¤à¥¤ à¤à¤¦à¤¾à¤¹à¤°à¤£: {{ns:user}}:Foo/vector.css न à¤à¥ {{ns:user}}:Foo/Vector.css",
"updated": "(à¤
दà¥à¤¯à¤¤à¤¨à¥à¤¤)",
"note": "'''सà¥à¤à¤¨à¤¾:'''",
"previewnote": "'''याद रà¤à¥à¤, यह à¤à¥à¤µà¤² à¤à¤ à¤à¤²à¤ हà¥à¥¤'''\nà¤à¤ªà¤à¥ बदलाव à¤
à¤à¥ तठसà¤à¤à¥à¤¯à¥ नहà¥à¤ à¤à¤ हà¥à¤!",
@@ -1102,7 +1102,7 @@
"prefs-files": "फ़ाà¤à¤²à¥à¤",
"prefs-custom-css": "à¤à¤¾à¤¸à¤®à¤à¤¾à¤¸ सà¥à¥°à¤à¤¸à¥°à¤à¤¸",
"prefs-custom-js": "à¤à¤¾à¤¸à¤®à¤à¤¾à¤¸ à¤à¤¾à¤µà¤¾à¤¸à¥à¤à¥à¤°à¤¿à¤ªà¥à¤",
- "prefs-common-css-js": "सà¤à¥ तà¥à¤µà¤à¤¾à¤à¤ à¤à¥ लिठसाà¤à¤¾ सà¥à¥°à¤à¤¸à¥°à¤à¤¸/à¤à¤¾à¤µà¤¾à¤¸à¥à¤à¥à¤°à¤¿à¤ªà¥à¤:",
+ "prefs-common-config": "सà¤à¥ तà¥à¤µà¤à¤¾à¤à¤ à¤à¥ लिठसाà¤à¤¾ सà¥à¥°à¤à¤¸à¥°à¤à¤¸/à¤à¤¾à¤µà¤¾à¤¸à¥à¤à¥à¤°à¤¿à¤ªà¥à¤:",
"prefs-reset-intro": "à¤à¤ª à¤à¤¸ पà¥à¤·à¥à¤ à¤à¥ à¥à¤°à¤¿à¤ à¤
पनॠवरà¥à¤¯à¤¤à¤¾à¤à¤ à¤à¥ साà¤à¤ à¤à¥ मà¥à¤² वरà¥à¤¯à¤¤à¤¾à¤à¤ à¤à¥ समान बना सà¤à¤¤à¥ हà¥à¤à¥¤\nà¤à¤¸à¤à¥ बाद à¤à¤ª वापस पà¥à¤°à¤¾à¤¨à¥ सà¥à¤¥à¤¿à¤¤à¤¿ पर नहà¥à¤ ठसà¤à¥à¤à¤à¥à¥¤",
"prefs-emailconfirm-label": "à¤-मà¥à¤² पà¥à¤·à¥à¤à¤¿à¤à¤°à¤£:",
"youremail": "à¤à¤ªà¤à¤¾ à¤-मà¥à¤² पता:",
@@ -1535,8 +1535,6 @@
"newpageletter": "न",
"boteditletter": "बà¥",
"number_of_watching_users_pageview": "[$1 धà¥à¤¯à¤¾à¤¨ रà¤à¤¨à¥ वालॠ{{PLURAL:$1|सदसà¥à¤¯}}]",
- "rc_categories": "शà¥à¤°à¥à¤£à¥à¤¯à¥à¤ तठसà¥à¤®à¥à¤¤ रà¤à¥à¤ (\"|\" सॠà¤
लठà¤à¤°à¥à¤)",
- "rc_categories_any": "à¤à¥à¤ à¤à¥ à¤à¥à¤¨à¤¿à¤¨à¥à¤¦à¤¾",
"rc-change-size-new": "बदलाव à¤à¥ बाद $1 {{PLURAL:$1|बाà¤à¤}}",
"newsectionsummary": "/* $1 */ नया à¤
नà¥à¤à¤¾à¤",
"rc-enhanced-expand": "विसà¥à¤¤à¥à¤¤ à¤à¤¾à¤¨à¤à¤¾à¤°à¥ दिà¤à¤¾à¤à¤",
diff --git a/languages/i18n/hif-latn.json b/languages/i18n/hif-latn.json
index 0c8b5709d9..b96f5d003d 100644
--- a/languages/i18n/hif-latn.json
+++ b/languages/i18n/hif-latn.json
@@ -656,7 +656,7 @@
"userjspreview": "'''Yaad rakhna ki aap khali aapan JavaScript ke testing/previewing karta hai, iske abhi save nai karaa gais hai!'''",
"sitecsspreview": " '''Yaad rakhna ki aap ii CSS ke khaali preview kartaa hae.'''\n'''Iske abhi talak bachawa nai gais hae!'''",
"sitejspreview": " '''Yaad rakhna ki aap ii JavaScript code ke khaali preview kartaa hae.'''\n'''Iske abhi talak bachawa nai gais hae!'''",
- "userinvalidcssjstitle": "'''Warning:''' Koi skin \"$1\" nai hai.\nYaad rakhna ki custom .css aur .js panna owercase title use kare hai, jaise ki {{ns:user}}:Foo/vector.css aur{{ns:user}}:Foo/Vector.css nai.",
+ "userinvalidconfigtitle": "'''Warning:''' Koi skin \"$1\" nai hai.\nYaad rakhna ki custom .css aur .js panna owercase title use kare hai, jaise ki {{ns:user}}:Foo/vector.css aur{{ns:user}}:Foo/Vector.css nai.",
"updated": "(Update kar dewa gais hai)",
"note": "'''Dhyan rakkho:'''",
"previewnote": "'''Ii khaali ek jhalak dekhae hai'''\nTumar badlao abhi bachawa nai gais hai!",
@@ -1016,7 +1016,7 @@
"prefs-files": "File ke naam",
"prefs-custom-css": "CSS ke aapan khatir badlo",
"prefs-custom-js": "Ruchi ke anusar JS",
- "prefs-common-css-js": "Sab skins ke khatir, baata gais CSS/JavaScript",
+ "prefs-common-config": "Sab skins ke khatir, baata gais CSS/JavaScript",
"prefs-reset-intro": "Aap ii panna ke kaam me laae ke site defaults ke aapan preferences ke reset kare sakta hai.\nIske pahile jaise nai karaa jaawe sake hai.",
"prefs-emailconfirm-label": "E-mail ke confirm karaa jaawe hai:",
"youremail": "E-mail:",
@@ -1420,8 +1420,6 @@
"newpageletter": "N",
"boteditletter": "b",
"number_of_watching_users_pageview": "[$1 {{PLURAL:$1|user|users}} ke dekhta hae]",
- "rc_categories": "Categories me limit (\"|\" se separate karo)",
- "rc_categories_any": "Chuna gais me se koi",
"rc-change-size-new": "$1 {{PLURAL:$1|byte|bytes}} badlao ke baad",
"newsectionsummary": "/* $1 */ nawaa vibhag",
"rc-enhanced-expand": "Details dekhao",
diff --git a/languages/i18n/hil.json b/languages/i18n/hil.json
index 4a94fc3e10..79d086a91a 100644
--- a/languages/i18n/hil.json
+++ b/languages/i18n/hil.json
@@ -474,7 +474,7 @@
"userjspreview": "'''Tandai nga ginalantaw/ginatilawan mo pa lang ang imo JavaScript sang manuggamit.'''\n'''Wala pa ini matipon!'''",
"sitecsspreview": "'''Tandai nga ginalantaw mo pa lang ang ini nga CSS.'''\n'''Wala pa ini matipon!'''",
"sitejspreview": "'''Tandai nga ginalantaw mo pa lang ang ini nga kodigo sang JavaScript.'''\n'''Wala pa ini matipon!'''",
- "userinvalidcssjstitle": "'''Aviso:''' Wala sang panit nga \"$1\".\nSa mga pahungod nga mga panid nga .css and .js magamit sang titulo nga may gagmay nga letra (lowercase), e.g. {{ns:user}}:Foo/vector.css kontra sa {{ns:user}}:Foo/Vector.css.",
+ "userinvalidconfigtitle": "'''Aviso:''' Wala sang panit nga \"$1\".\nSa mga pahungod nga mga panid nga .css and .js magamit sang titulo nga may gagmay nga letra (lowercase), e.g. {{ns:user}}:Foo/vector.css kontra sa {{ns:user}}:Foo/Vector.css.",
"updated": "(Suno sa oras)",
"note": "'''Pansinon:'''",
"previewnote": "'''Tandaan nga prebyu lamang ini.'''\nWala pa nabutang ang imo nga ginbag-o!",
@@ -769,7 +769,7 @@
"prefs-files": "Mga hilera",
"prefs-custom-css": "Ginhungod nga CSS",
"prefs-custom-js": "Ginhungod nga JavaScript",
- "prefs-common-css-js": "Ginaparte nga CSS?JavaScript para sa tanan nga panit:",
+ "prefs-common-config": "Ginaparte nga CSS?JavaScript para sa tanan nga panit:",
"prefs-reset-intro": "Indi mo magamit ang ini nga panid agod mailisan ang imo mga pagpalabi sa mga default sang site.\nIndi na ini maliwat pa.",
"prefs-emailconfirm-label": "Paagkumperma sang e-mail:",
"youremail": "E-mail:",
@@ -969,8 +969,6 @@
"newpageletter": "B",
"boteditletter": "b",
"number_of_watching_users_pageview": "[$1 ginabantayan {{PLURAL:$1|naga-usar|mga naga-usar}}]",
- "rc_categories": "Limitahan ang mga kategorya (ibulag lakip sang \"|\")",
- "rc_categories_any": "Bisan ano",
"rc-change-size-new": "$1 {{PLURAL:$1|byte|mga byte}} pagkatapos sang pag-ilis",
"newsectionsummary": "/* $1 */ bag-o nga seksyon",
"rc-enhanced-expand": "Ipakita ang mga detalye",
diff --git a/languages/i18n/hr.json b/languages/i18n/hr.json
index 5fd0fe9da6..5b96d4d67f 100644
--- a/languages/i18n/hr.json
+++ b/languages/i18n/hr.json
@@ -658,7 +658,7 @@
"userjspreview": "'''Ne zaboravite: samo isprobavate/pregledavate svoj suradniÄki JavaScript, i da joÅ¡ nije snimljen!'''",
"sitecsspreview": "'''Ne zaboravite ovo je samo pregled ovog CSS-a.'''\n'''JoÅ¡ uvijek nije saÄuvan!'''",
"sitejspreview": "'''Ne zaboravite ovo je samo pregled JavaScript kôda.'''\n'''JoÅ¡ uvijek nije saÄuvan!'''",
- "userinvalidcssjstitle": "'''Upozorenje:''' Nema suÄelja pod imenom \"$1\". Ne zaboravite da imena stranica s .css and .js kodom poÄinju malim slovom, npr. {{ns:user}}:Mate/vector.css, a ne {{ns:user}}:Mate/Vector.css.",
+ "userinvalidconfigtitle": "'''Upozorenje:''' Nema suÄelja pod imenom \"$1\". Ne zaboravite da imena stranica s .css and .js kodom poÄinju malim slovom, npr. {{ns:user}}:Mate/vector.css, a ne {{ns:user}}:Mate/Vector.css.",
"updated": "(Ažurirano)",
"note": "'''Napomena:'''",
"previewnote": "Ne zaboravite da je ovo samo pregled kako Äe stranica izgledati.\nVaÅ¡e ureÄivanje joÅ¡ nije snimljeno!",
@@ -1012,7 +1012,7 @@
"prefs-files": "Datoteke",
"prefs-custom-css": "PrilagoÄen CSS",
"prefs-custom-js": "PrilagoÄen JS",
- "prefs-common-css-js": "Dijeljeni CSS/JS za sve izglede:",
+ "prefs-common-config": "Dijeljeni CSS/JS za sve izglede:",
"prefs-reset-intro": "Možete koristiti ovu stranicu za povrat Vaših postavki na prvotne postavke. Ovo se ne može poništiti.",
"prefs-emailconfirm-label": "Potvrda e-mail adrese:",
"youremail": "Vaša adresa e-pošte:",
@@ -1405,8 +1405,6 @@
"newpageletter": "N",
"boteditletter": "b",
"number_of_watching_users_pageview": "[$1 {{PLURAL:$1|suradnik|suradnika|suradnika}} prati ovu stranicu]",
- "rc_categories": "OgraniÄi na kategorije (odvoji sa \"|\")",
- "rc_categories_any": "Bilo koji od odabranih",
"rc-change-size-new": "$1 {{PLURAL:$1|bajt|bajta|bajtova}} poslije ureÄivanja",
"newsectionsummary": "/* $1 */ novi odlomak",
"rc-enhanced-expand": "Pokaži detalje (potreban JavaScript)",
@@ -2122,8 +2120,8 @@
"protect-cascadeon": "Ova stranica je zaÅ¡tiÄena jer je ukljuÄena u {{PLURAL:$1|stranicu, koja ima|stranice, koje imaju|stranice, koje imaju}} ukljuÄenu prenosivu zaÅ¡titu. Možete promijeniti stupanj zaÅ¡tite ove stranice, no to neÄe utjecati na prenosivu zaÅ¡titu.",
"protect-default": "OmoguÄeno svim suradnicima",
"protect-fallback": "Potrebno je imati \"$1\" ovlasti",
- "protect-level-autoconfirmed": "DopuÅ¡teno samo autopotvrÄenima",
- "protect-level-sysop": "Samo administratori",
+ "protect-level-autoconfirmed": "dopuÅ¡teno samo autopotvrÄenima",
+ "protect-level-sysop": "samo administratori",
"protect-summary-cascade": "prenosiva zaštita",
"protect-expiring": "istjeÄe $1 (UTC)",
"protect-expiring-local": "istjeÄe $2 u $3",
diff --git a/languages/i18n/hrx.json b/languages/i18n/hrx.json
index c20b3ad67c..b9e8dcf47d 100644
--- a/languages/i18n/hrx.json
+++ b/languages/i18n/hrx.json
@@ -544,7 +544,7 @@
"userjspreview": "'''Beacht, dass du nuar en Voarschau von dein Benutzer-JavaScripts betrachte tust.'''\n'''Das woor noch net gespeichert!'''",
"sitecsspreview": "'''Beachte, dass du nuar en Voarschau von das CSS betrachte tust.'''\n'''Das woard noch net gespeichert!'''",
"sitejspreview": "'''Beacht, dass du nuar en Vorschau von das JavaScript betrachte tust.'''\n'''Das woor noch net gespeichert!'''",
- "userinvalidcssjstitle": "'''Achtung:''' Die Benutzerowerfläch \"$1\" existiert net. Bedenke, dass benutzerspezifisch .css- und .js-Seite mit em Klenbuchstoob oonfänge müsse, also beispielsweis ''{{ns:user}}:Mustermann/vector.css'' an Stell von ''{{ns:user}}:Mustermann/Vector.css''.",
+ "userinvalidconfigtitle": "'''Achtung:''' Die Benutzerowerfläch \"$1\" existiert net. Bedenke, dass benutzerspezifisch .css- und .js-Seite mit em Klenbuchstoob oonfänge müsse, also beispielsweis ''{{ns:user}}:Mustermann/vector.css'' an Stell von ''{{ns:user}}:Mustermann/Vector.css''.",
"updated": "(Geännert)",
"note": "'''Hinweis:'''",
"previewnote": "'''Dies ist nuar en Voarschau.'''\nDie Seit woard noch net gespeichert!",
@@ -864,7 +864,7 @@
"prefs-files": "Dateie",
"prefs-custom-css": "Benutzerdefinierte CSS",
"prefs-custom-js": "Benutzerdefiniertes JavaScript",
- "prefs-common-css-js": "Gemeinsames CSS/JavaScript von aller Benutzerowerfläche:",
+ "prefs-common-config": "Gemeinsames CSS/JavaScript von aller Benutzerowerfläche:",
"prefs-reset-intro": "Du kannst die Seit verwenne, um die Einstellunge uff die Standards zurückzusetzen.\nDas kann net meh rückgängich gemacht sin.",
"prefs-emailconfirm-label": "E-Mail-Bestätichung:",
"youremail": "E-Mail-Adress:",
@@ -1096,8 +1096,6 @@
"newpageletter": "N",
"boteditletter": "B",
"number_of_watching_users_pageview": "[$1 {{PLURAL:$1|beobachtender|beobachtende}} Benutzer]",
- "rc_categories": "Nur Seite aus den Kategorie (getrennt mit â|â):",
- "rc_categories_any": "Alle",
"rc-change-size-new": "$1 {{PLURAL:$1|Byte|Bytes}} noh der Ãnnrung",
"newsectionsummary": "Neier Abschnitt /* $1 */",
"rc-enhanced-expand": "Einzelheite oonzeiche",
diff --git a/languages/i18n/hsb.json b/languages/i18n/hsb.json
index e203fed5c8..2412e0f82d 100644
--- a/languages/i18n/hsb.json
+++ b/languages/i18n/hsb.json
@@ -594,7 +594,7 @@
"userjspreview": "'''Dźiwaj na to, zo jenož swój wužiwarski JavaScript testujeÅ¡/sej wobhladujeÅ¡.'''\n'''HiÅ¡Äe njeje so skÅadowaÅ!'''",
"sitecsspreview": "'''WobkedźbujÄe, zo sej jenož pÅehlad tutoho CSS wobhladujeÅ¡.'''\n'''Wón hiÅ¡Äe skÅadowany njeje!'''",
"sitejspreview": "'''WobkedźbujÄe, zo sej jenož pÅehlad tutoho JavaScriptoweho koda wobhladujeÅ¡.'''\n'''Wón hiÅ¡Äe skÅadowany njeje!'''",
- "userinvalidcssjstitle": "'''Warnowanje:''' Drasta z mjenom â$1â njeeksistuje. ProÅ¡u mysli na to, zo wosobinske strony .css a .js titul z maÅym pismikom wuwziwaja, na pÅ. {{ns:user}}:Foo/vector.css mÄsto {{ns:user}}:Foo/Vector.css.",
+ "userinvalidconfigtitle": "'''Warnowanje:''' Drasta z mjenom â$1â njeeksistuje. ProÅ¡u mysli na to, zo wosobinske strony .css a .js titul z maÅym pismikom wuwziwaja, na pÅ. {{ns:user}}:Foo/vector.css mÄsto {{ns:user}}:Foo/Vector.css.",
"updated": "(Zaktualizowany)",
"note": "'''Kedźbu:'''",
"previewnote": "'''Wobmysl, zo to je jenož pÅehlad.'''\nTwoje zmÄny hiÅ¡Äe njejsu skÅadowane!",
@@ -930,7 +930,7 @@
"prefs-files": "Dataje",
"prefs-custom-css": "Swójski CSS",
"prefs-custom-js": "Swójski JS",
- "prefs-common-css-js": "Zhromadny CSS/JS za w32 Å¡aty:",
+ "prefs-common-config": "Zhromadny CSS/JS za w32 Å¡aty:",
"prefs-reset-intro": "You can use this page to reset your preferences to the site defaults. This cannot be undone.\nMóžeÅ¡ tutu stronu wužiwaÄ, zo by swoje nastajenja na standardne hódnoty sydÅa wróÄo stajiÄ. To njeda so anulowaÄ.",
"prefs-emailconfirm-label": "E-mejlowe wobkruÄenje:",
"youremail": "E-mejl:",
@@ -1205,8 +1205,6 @@
"newpageletter": "N",
"boteditletter": "B",
"number_of_watching_users_pageview": "[$1 {{PLURAL:$1|wobkedźbowacy wužiwar|wobkedźbowacaj wužiwarjej|wobkedźbowacy wužiwarjo|wobkedźbowacych wužiwarjow}}]",
- "rc_categories": "Jenož kategorije (dźÄlene z \"|\")",
- "rc_categories_any": "NÄkajka z wubranych",
"rc-change-size": "$1 {{PLURAL:$1|bajt|bajtaj|bajty|bajtow}}",
"rc-change-size-new": "$1 {{PLURAL:$1|bajt|bajtaj|bajty|bajtow}} po zmÄnje",
"newsectionsummary": "Nowy wotrÄzk: /* $1 */",
diff --git a/languages/i18n/ht.json b/languages/i18n/ht.json
index 3c6e4413d2..4ce20c8d89 100644
--- a/languages/i18n/ht.json
+++ b/languages/i18n/ht.json
@@ -485,7 +485,7 @@
"userjspreview": "'''Sonje ke ou ap voye kout je sou fèy JavaScript ou ekri a, li poko anrejistre !'''",
"sitecsspreview": "'''Sonje ke w ap voye yon kout je sou sa w ekri nan fèy CSS sa a.'''\n'''Li poko anrejistre !'''",
"sitejspreview": "'''Sonje ke w ap voye yon kout je sou kòd JavaScript sa a.'''\n'''Li poko anrejistre !'''",
- "userinvalidcssjstitle": "'''Atansyon :''' estil \"$1\" pa egziste. Paj pèsonalize ak ekstansyon .css epi .js yo ap gen tit/sijè an lèt miniskil, pa egzanp {{ns:user}}:Foo/vector.css men pa {{ns:user}}:Foo/Vector.css.",
+ "userinvalidconfigtitle": "'''Atansyon :''' estil \"$1\" pa egziste. Paj pèsonalize ak ekstansyon .css epi .js yo ap gen tit/sijè an lèt miniskil, pa egzanp {{ns:user}}:Foo/vector.css men pa {{ns:user}}:Foo/Vector.css.",
"updated": "(Li gen dènye vèsyon sou li)",
"note": "'''Nòt :'''",
"previewnote": "'''Atansyon, tèks sa a se yon kout je, li poko anrejistre !'''",
diff --git a/languages/i18n/hu.json b/languages/i18n/hu.json
index 47938c173b..822d64ed71 100644
--- a/languages/i18n/hu.json
+++ b/languages/i18n/hu.json
@@ -691,7 +691,7 @@
"userjspreview": "'''Ne felejtsd el, hogy még csak teszteled a felhasználói JavaScriptedet, és még nincs elmentve!'''",
"sitecsspreview": "'''Ne feledd, hogy csak a CSS elÅnézetét látod.'''\n'''Még nincs elmentve!'''",
"sitejspreview": "'''Ne feledd, hogy a JavaScript-kódnak csak az elÅnézetét látod.'''\n'''Még nincs elmentve!'''",
- "userinvalidcssjstitle": "'''Figyelem:''' Nincs â$1â nevű felület. A felületekhez tartozó .css/.js oldalak kisbetűvel kezdÅdnek, például ''{{ns:user}}:Gipsz Jakab/vector.css'' és nem ''{{ns:user}}:Gipsz Jakab/Vector.css''.",
+ "userinvalidconfigtitle": "'''Figyelem:''' Nincs â$1â nevű felület. A felületekhez tartozó .css/.js oldalak kisbetűvel kezdÅdnek, például ''{{ns:user}}:Gipsz Jakab/vector.css'' és nem ''{{ns:user}}:Gipsz Jakab/Vector.css''.",
"updated": "(frissÃtve)",
"note": "'''Megjegyzés:'''",
"previewnote": "'''Ne feledd, hogy ez csak egy elÅnézet.''' A változtatásaid még nincsenek elmentve!",
@@ -1058,7 +1058,7 @@
"prefs-files": "Fájlok",
"prefs-custom-css": "saját CSS",
"prefs-custom-js": "saját JS",
- "prefs-common-css-js": "Közös CSS/JS az összes felület számára:",
+ "prefs-common-config": "Közös CSS/JS az összes felület számára:",
"prefs-reset-intro": "Ezen a lapon állÃthatod vissza a beállÃtásaidat az oldal alapértelmezett értékeire.\nA műveletet nem lehet visszavonni.",
"prefs-emailconfirm-label": "E-mail-cÃm megerÅsÃtése:",
"youremail": "Az e-mail cÃmed:",
@@ -1491,8 +1491,6 @@
"newpageletter": "Ã",
"boteditletter": "b",
"number_of_watching_users_pageview": "[Jelenleg {{PLURAL:$1|egy|$1}} felhasználó figyeli]",
- "rc_categories": "SzűkÃtés kategóriákra (â|â jellel válaszd el Åket):",
- "rc_categories_any": "Választottak közül bármelyik",
"rc-change-size-new": "$1 bájt módosÃtás után",
"newsectionsummary": "/* $1 */ (új szakasz)",
"rc-enhanced-expand": "Részletek megjelenÃtése",
@@ -2646,6 +2644,7 @@
"thumbnail_dest_directory": "Nem hozható létre a célkönyvtár",
"thumbnail_image-type": "A képformátum nem támogatott",
"thumbnail_gd-library": "A GD-könyvtár nincs megfelelÅen beállÃtva: a(z) $1 függvény hiányzik",
+ "thumbnail_image-size-zero": "A képfájl mérete nullának tűnik.",
"thumbnail_image-missing": "Ãgy tűnik, hogy a fájl hiányzik: $1",
"thumbnail_image-failure-limit": "Túl sok hibás bélyegkép létrehozás (több mint $1). Próbáld meg késÅbb!",
"import": "Lapok importálása",
@@ -3375,6 +3374,7 @@
"watchlistedit-clear-titles": "CÃmek:",
"watchlistedit-clear-submit": "FigyelÅlista kiürÃtése (Ez végleges!)",
"watchlistedit-clear-done": "A figyelÅlistád törölve.",
+ "watchlistedit-clear-jobqueue": "A figyelÅlistád kiürÃtése folyamatban van. Ez eltarthat egy ideig.",
"watchlistedit-clear-removed": "{{PLURAL:$1|$1 oldal}} törölve:",
"watchlistedit-too-many": "Túl sok lap a megjelenÃtéshez.",
"watchlisttools-clear": "A figyelÅlista kiürÃtése",
diff --git a/languages/i18n/hy.json b/languages/i18n/hy.json
index 3f6c0cbccc..2383ede4c8 100644
--- a/languages/i18n/hy.json
+++ b/languages/i18n/hy.json
@@ -66,7 +66,7 @@
"tog-watchlisthidebots": "Ô¹Õ¡ÖÖÕ¶Õ¥Õ¬ Õ¢Õ¸Õ¿Õ¥ÖÕ« ÕÕ´Õ¢Õ¡Õ£ÖÕ¸ÖÕ´Õ¶Õ¥ÖÕ¨ Õ°Õ½Õ¯Õ¡ÖÕ¡Õ¶Õ¯Õ«Ö",
"tog-watchlisthideminor": "Ô¹Õ¡ÖÖÕ¶Õ¥Õ¬ Õ¹Õ¶Õ¹Õ«Õ¶ ÕÕ´Õ¢Õ¡Õ£ÖÕ¸ÖÕ´Õ¶Õ¥ÖÕ¨ Õ°Õ½Õ¯Õ¡ÖÕ¡Õ¶Õ¯Õ«Ö",
"tog-watchlisthideliu": "Ô¹Õ¡ÖÖÕ¶Õ¥Õ¬ Õ´Õ¸ÖÕ¿Ö Õ£Õ¸ÖÕ®Õ¡Õ® Õ´Õ¡Õ½Õ¶Õ¡Õ¯Õ«ÖÕ¶Õ¥ÖÕ« ÕÕ´Õ¢Õ¡Õ£ÖÕ¸ÖÕ´Õ¶Õ¥ÖÕ¨ Õ°Õ½Õ¯Õ¡ÖÕ¡Õ¶Õ¯Õ«Ö",
- "tog-watchlistreloadautomatically": "ÕÕ«Õ¬Õ¿ÖÕ« Õ¡Õ´Õ¥Õ¶ ÖÕ¸ÖÕ¸ÕÕ¸ÖÕ©ÕµÕ¡Õ¶ Õ¤Õ¥ÕºÖÕ¸ÖÕ´ Õ«Õ¶ÖÕ¶Õ¡Õ·ÕÕ¡Õ¿ Õ¯Õ¥ÖÕºÕ¸Õ¾ Õ¾Õ¥ÖÕ¢Õ¥Õ¼Õ¶Õ¥Õ¬ Õ°Õ½Õ¯Õ¡ÖÕ¡Õ¶Õ¯Õ¨ (Õ¡Õ¶Õ°ÖÕ¡ÕªÕ¥Õ·Õ¿ Õ§ JavaScript)",
+ "tog-watchlistreloadautomatically": "Ô¶Õ¿Õ«Õ¹Õ« Õ¡Õ´Õ¥Õ¶ ÖÕ¸ÖÕ¸ÕÕ¸ÖÕ©ÕµÕ¡Õ¶ Õ¤Õ¥ÕºÖÕ¸ÖÕ´ Õ«Õ¶ÖÕ¶Õ¡Õ·ÕÕ¡Õ¿ Õ¯Õ¥ÖÕºÕ¸Õ¾ Õ¾Õ¥ÖÕ¢Õ¥Õ¼Õ¶Õ¥Õ¬ Õ°Õ½Õ¯Õ¡ÖÕ¡Õ¶Õ¯Õ¨ (Õ¡Õ¶Õ°ÖÕ¡ÕªÕ¥Õ·Õ¿ Õ§ JavaScript)",
"tog-watchlisthideanons": "Ô¹Õ¡ÖÖÕ¶Õ¥Õ¬ Õ¡Õ¶Õ¡Õ¶Õ¸ÖÕ¶ Õ´Õ¡Õ½Õ¶Õ¡Õ¯Õ«ÖÕ¶Õ¥ÖÕ« ÕÕ´Õ¢Õ¡Õ£ÖÕ¸ÖÕ´Õ¶Õ¥ÖÕ¨ Õ°Õ½Õ¯Õ¡ÖÕ¡Õ¶Õ¯Õ«Ö",
"tog-watchlisthidepatrolled": "Ô¹Õ¡ÖÖÕ¶Õ¥Õ¬ ÕºÕ¡ÖÕ¥Õ¯Õ¾Õ¡Õ® ÕÕ´Õ¢Õ¡Õ£ÖÕ¸ÖÕ´Õ¶Õ¥ÖÕ¨ Õ°Õ½Õ¯Õ¡ÖÕ¡Õ¶Õ¯Õ«Ö",
"tog-watchlisthidecategorization": "Ô¹Õ¡ÖÖÕ¶Õ¥Õ¬ Õ§Õ»Õ¥ÖÕ« Õ¯Õ¡Õ¿Õ¥Õ£Õ¸ÖÕ«Õ¦Õ¡ÖÕ«Õ¡Õ¶",
@@ -413,7 +413,7 @@
"userlogin-resetpassword-link": "ÕÕ¸Õ¼Õ¡ÖÕ¥ÕÕ¬ Õ¥Ö Õ£Õ¡Õ²Õ¿Õ¶Õ¡Õ¢Õ¡Õ¼Õ¨",
"userlogin-helplink2": "ÕÕ¸ÖÕ¿Ö Õ£Õ¸ÖÕ®Õ¥Õ¬Õ¸Ö Ö
Õ£Õ¶Õ¸ÖÕ©ÕµÕ¸ÖÕ¶",
"userlogin-loggedin": "Ô´Õ¸ÖÖ Õ¡ÖÕ¤Õ¥Õ¶ Õ´Õ¿Õ¥Õ¬ Õ§ Õ¸ÖÕºÕ¥Õ½ {{GENDER:$1|$1}}.\nÕÕ£Õ¿Õ¡Õ£Õ¸ÖÕ®Õ¥Ö Õ½Õ¿Õ¸ÖÖ Õ¢Õ¥ÖÕ¾Õ¡Õ® Õ±ÖÕ¨ Õ´Õ¸ÖÕ¿Ö Õ£Õ¸ÖÕ®Õ¥Õ¬Õ¸Ö Õ°Õ¡Õ´Õ¡Ö Õ¡ÕµÕ¬ Õ°Õ¡Õ·Õ«Ö",
- "userlogin-reauth": "Ô´Õ¸ÖÖ ÕºÕ¥Õ¿Ö Õ§ Õ¯ÖÕ¯Õ«Õ¶ Õ°Õ¡Õ´Õ¡Õ¯Õ¡ÖÕ£ Õ´Õ¸ÖÕ¿Ö Õ£Õ¸ÖÕ®Õ¥Ö Õ°Õ¡Õ½Õ¿Õ¡Õ¿Õ¥Õ¬Õ¸Ö Õ¸Ö Õ¤Õ¸ÖÖ Õ¤Õ¸ÖÖ Õ¥Ö {{GENDER:$1|$1}}.",
+ "userlogin-reauth": "Ô´Õ¸ÖÖ ÕºÕ¥Õ¿Ö Õ§ Õ¯ÖÕ¯Õ«Õ¶ Õ´Õ¸ÖÕ¿Ö Õ£Õ¸ÖÕ®Õ¥Ö Õ°Õ¡Õ´Õ¡Õ¯Õ¡ÖÕ£` Õ°Õ¡Õ½Õ¿Õ¡Õ¿Õ¥Õ¬Õ¸Ö, Õ¸Ö Õ¤Õ¸ÖÖ Õ¤Õ¸ÖÖ Õ¥Ö {{GENDER:$1|$1}}Ö",
"userlogin-createanother": "ÕÕ¿Õ¥Õ²Õ®Õ¥Õ¬ Õ¡ÕµÕ¬ Õ°Õ¡Õ·Õ«Õ¾",
"createacct-emailrequired": "Ô·Õ¬âÖÕ¸Õ½Õ¿Õ« Õ°Õ¡Õ½ÖÕ¥",
"createacct-emailoptional": "Ô·Õ¬âÖÕ¸Õ½Õ¿Õ« Õ°Õ¡Õ½ÖÕ¥ (Õ¸Õ¹ ÕºÕ¡ÖÕ¿Õ¡Õ¤Õ«Ö)",
@@ -597,7 +597,7 @@
"userjsyoucanpreview": "'''ÕÕ¸ÖÕ·Õ¸ÖÕ´.''' Ô·Õ»Õ¨ Õ°Õ«Õ·Õ¥Õ¬Õ¸ÖÖ Õ¡Õ¼Õ¡Õ» Ö
Õ£Õ¿Õ¾Õ¥Ö Â«{{int:showpreview}}» Õ¯Õ¸Õ³Õ¡Õ¯Õ«ÖÕ Õ±Õ¥Ö Õ¶Õ¸Ö JS-Õ¶Õ«Õ·ÖÕ¨ Õ½Õ¿Õ¸ÖÕ£Õ¥Õ¬Õ¸Ö Õ°Õ¡Õ´Õ¡ÖÖ",
"usercsspreview": "'''ÕÕ¯Õ¡Õ¿Õ« Õ¸ÖÕ¶Õ¥ÖÕ¥Ö, Õ¸Ö Õ¤Õ¸ÖÖ Õ´Õ«Õ¡ÕµÕ¶ Õ¶Õ¡ÕÕ¡Õ¤Õ«Õ¿Õ¸ÖÕ´ Õ¥Ö Õ±Õ¥Ö Õ´Õ¡Õ½Õ¶Õ¡Õ¯ÖÕ« CSS-Õ¶Õ«Õ·ÖÕ¨. Õ¡ÕµÕ¶ Õ¤Õ¥Õ¼ Õ°Õ«Õ·Õ¾Õ¡Õ® Õ¹Õ§ÕÖ'''",
"userjspreview": "'''ÕÕ¯Õ¡Õ¿Õ« Õ¸ÖÕ¶Õ¥ÖÕ¥Ö, Õ¸Ö Õ¤Õ¸ÖÖ Õ´Õ«Õ¡ÕµÕ¶ Õ¶Õ¡ÕÕ¡Õ¤Õ«Õ¿Õ¸ÖÕ´ Õ¥Ö Õ±Õ¥Ö Õ´Õ¡Õ½Õ¶Õ¡Õ¯ÖÕ« JavaScript-Õ¶Õ«Õ·ÖÕ¨. Õ¡ÕµÕ¶ Õ¤Õ¥Õ¼ Õ°Õ«Õ·Õ¾Õ¡Õ® Õ¹Õ§ÕÖ'''",
- "userinvalidcssjstitle": "'''Ô¶Õ£Õ¸ÖÕ·Õ¡ÖÕ¸ÖÕ´.''' «$1» Õ¿Õ¥Õ½Ö Õ¹Õ« Õ£Õ¿Õ¶Õ¾Õ¥Õ¬Ö Ô» Õ¶Õ¯Õ¡Õ¿Õ« Õ¸ÖÕ¶Õ¥ÖÕ¥Ö, Õ¸Ö Õ´Õ¡Õ½Õ¶Õ¡Õ¯ÖÕ¡ÕµÕ«Õ¶ .css Ö .js Õ§Õ»Õ¥ÖÕ¨ Õ¸ÖÕ¶Õ¥Õ¶ ÖÕ¸ÖÖÕ¡Õ¿Õ¡Õ¼ Õ¡Õ¶Õ¾Õ¡Õ¶Õ¸ÖÕ´Õ¶Õ¥Ö, Ö
Ö.Õ Â«{{ns:user}}:ÕÕ´Õ¶/vector.css», Ö Õ¸Õ¹ Õ©Õ¥ «{{ns:user}}:ÕÕ´Õ¶/Vector.css»Ö",
+ "userinvalidconfigtitle": "'''Ô¶Õ£Õ¸ÖÕ·Õ¡ÖÕ¸ÖÕ´.''' «$1» Õ¿Õ¥Õ½Ö Õ¹Õ« Õ£Õ¿Õ¶Õ¾Õ¥Õ¬Ö Ô» Õ¶Õ¯Õ¡Õ¿Õ« Õ¸ÖÕ¶Õ¥ÖÕ¥Ö, Õ¸Ö Õ´Õ¡Õ½Õ¶Õ¡Õ¯ÖÕ¡ÕµÕ«Õ¶ .css Ö .js Õ§Õ»Õ¥ÖÕ¨ Õ¸ÖÕ¶Õ¥Õ¶ ÖÕ¸ÖÖÕ¡Õ¿Õ¡Õ¼ Õ¡Õ¶Õ¾Õ¡Õ¶Õ¸ÖÕ´Õ¶Õ¥Ö, Ö
Ö.Õ Â«{{ns:user}}:ÕÕ´Õ¶/vector.css», Ö Õ¸Õ¹ Õ©Õ¥ «{{ns:user}}:ÕÕ´Õ¶/Vector.css»Ö",
"updated": "(Ô¹Õ¡ÖÕ´Õ¡ÖÕ¾Õ¡Õ®)",
"note": "'''Ô¾Õ¡Õ¶Õ¸ÖÖÕ¸ÖÕ´.'''",
"previewnote": "'''ÕÕ¡ Õ´Õ«Õ¡ÕµÕ¶ Õ¶Õ¡ÕÕ¡Õ¤Õ«Õ¿Õ¸ÖÕ´Õ¶ Õ§. Õ±Õ¥Ö Õ¯Õ¡Õ¿Õ¡ÖÕ¡Õ® ÖÕ¸ÖÕ¸ÕÕ¸ÖÕ©ÕµÕ¸ÖÕ¶Õ¶Õ¥ÖÕ¨ Õ¤Õ¥Õ¼ Õ¹Õ¥ÕÕ¶ Õ°Õ«Õ·Õ¾Õ¥Õ¬Ö'''",
@@ -965,20 +965,58 @@
"recentchanges-submit": "ÕÕ¸ÖÕµÖ Õ¿Õ¡Õ¬",
"rcfilters-tag-remove": "ÕÕ¥Õ¼Õ¡ÖÕ¶Õ¥Õ¬ '$1'",
"rcfilters-legend-heading": "ÕÕ¡ÕºÕ¡Õ¾Õ¸ÖÕ´Õ¶Õ¥ÖÕ« ÖÕ¡Õ¶Õ¯.",
+ "rcfilters-other-review-tools": "ÕÕ¥ÖÕ¡Õ¶Õ¡ÕµÕ´Õ¡Õ¶ Õ¡ÕµÕ¬ Õ£Õ¸ÖÕ®Õ«ÖÕ¶Õ¥Ö",
+ "rcfilters-group-results-by-page": "Ô±ÖÕ¤ÕµÕ¸ÖÕ¶ÖÕ¶Õ¥ÖÕ¨ ÕÕ´Õ¢Õ¡Õ¾Õ¸ÖÕ¥Õ¬ Õ§Õ»Õ¥ÖÕ¸Õ¾",
+ "rcfilters-activefilters": "Ô±Õ¯Õ¿Õ«Õ¾ Õ¦Õ¿Õ«Õ¹Õ¶Õ¥Ö",
+ "rcfilters-advancedfilters": "Ô¸Õ¶Õ¤Õ¬Õ¡ÕµÕ¶Õ¾Õ¡Õ® ÖÕ«Õ¬Õ¿ÖÕ¥Ö",
+ "rcfilters-limit-title": "ÕÕ¸ÖÖÕ¡Õ¤ÖÕ¾Õ¸Õ² Õ¡ÖÕ¤ÕµÕ¸ÖÕ¶ÖÕ¶Õ¥Ö",
+ "rcfilters-limit-and-date-label": "$1 {{PLURAL:$1|ÖÕ¸ÖÕ¸ÕÕ¸ÖÕ©ÕµÕ¸ÖÕ¶|ÖÕ¸ÖÕ¸ÕÕ¸ÖÕ©ÕµÕ¸ÖÕ¶Õ¶Õ¥Ö}}, $2",
+ "rcfilters-date-popup-title": "ÕÖÕ¸Õ¶Õ´Õ¡Õ¶ ÕªÕ¡Õ´Õ¡Õ¶Õ¡Õ¯Õ¡Õ°Õ¡Õ¿Õ¾Õ¡Õ®",
"rcfilters-days-title": "ÕÕ¥ÖÕ»Õ«Õ¶ Ö
ÖÕ¥ÖÕ«Õ¶",
"rcfilters-hours-title": "ÕÕ¥ÖÕ»Õ«Õ¶ ÕªÕ¡Õ´Õ¥ÖÕ¨",
+ "rcfilters-days-show-days": "$1 {{PLURAL:$1|Ö
Ö|Ö
ÖÕ¥Ö}}",
+ "rcfilters-quickfilters": "ÕÕ¡Õ°ÕºÕ¡Õ¶Õ¾Õ¡Õ® Õ¦Õ¿Õ«Õ¹Õ¶Õ¥Ö",
+ "rcfilters-quickfilters-placeholder-title": "ÕÕ¡Õ°ÕºÕ¡Õ¶Õ¾Õ¡Õ® ÖÕ«Õ¬Õ¿ÖÕ¥Ö Õ¤Õ¥Õ¼ Õ¹Õ¯Õ¡Õ¶",
+ "rcfilters-quickfilters-placeholder-description": "ÕÕ¥Ö Õ¦Õ¿Õ«Õ¹Õ« Õ¯Õ¡ÕµÕ¡Õ¶ÖÕ¶Õ¥ÖÕ¨ ÕºÕ¡Õ°ÕºÕ¡Õ¶Õ¥Õ¬Õ¸Ö Ö Õ°Õ¥Õ¿Õ¡Õ£Õ¡ÕµÕ¸ÖÕ´ Ö
Õ£Õ¿Õ¡Õ£Õ¸ÖÕ®Õ¥Õ¬Õ¸Ö Õ°Õ¡Õ´Õ¡ÖÕ Õ½Õ¥Õ²Õ´Õ¥Ö Õ½Õ¿Õ¸ÖÖ Õ£Õ¿Õ¶Õ¾Õ¸Õ² «Ակտիվ ÖÕ«Õ¬Õ¿Ö» Õ¤Õ¡Õ·Õ¿Õ« Õ§Õ»Õ¡Õ¶Õ·Õ« ÕºÕ¡Õ¿Õ¯Õ¥ÖÕ¡Õ¯Õ«Õ¶Ö",
+ "rcfilters-savedqueries-defaultlabel": "ÕÕ¡Õ°ÕºÕ¡Õ¶Õ¾Õ¡Õ® ÖÕ«Õ¬Õ¿ÖÕ¥Ö",
"rcfilters-savedqueries-rename": "ÕÕ¥ÖÕ¡Õ¶Õ¾Õ¡Õ¶Õ¥Õ¬",
"rcfilters-savedqueries-remove": "ÕÕ¶Õ»Õ¥Õ¬",
"rcfilters-savedqueries-new-name-label": "Ô±Õ¶Õ¸ÖÕ¶",
"rcfilters-savedqueries-apply-label": "ÕÕ¿Õ¥Õ²Õ®Õ¥Õ¬ Õ¡ÖÕ¡Õ£ Õ°Õ²Õ¸ÖÕ´",
"rcfilters-savedqueries-cancel-label": "ÕÕ¥Õ²Õ¡ÖÕ¯Õ¥Õ¬",
+ "rcfilters-show-new-changes": "Ô´Õ«Õ¿Õ¥Õ¬ Õ¡Õ´Õ¥Õ¶Õ¡Õ¶Õ¸Ö ÖÕ¸ÖÕ¸ÕÕ¸ÖÕ©ÕµÕ¸ÖÕ¶Õ¶Õ¥ÖÕ¨",
+ "rcfilters-search-placeholder": "Ô¶Õ¿Õ«Õ¹Õ« ÖÕ¸ÖÕ¸ÕÕ¸ÖÕ©ÕµÕ¸ÖÕ¶Õ¶Õ¥Ö (Õ¦Õ¿Õ«Õ¹Õ« Õ¡Õ¶Õ¾Õ¡Õ¶ Õ°Õ¡Õ´Õ¡Ö Ö
Õ£Õ¿Õ¡Õ£Õ¸ÖÕ®Õ¥Ö Õ´Õ¥Õ¶ÕµÕ¸ÖÕ¶ Õ¯Õ¡Õ´ Õ¸ÖÕ¸Õ¶Õ¸ÖÕ´Õ¨)",
"rcfilters-filterlist-title": "Ô¶Õ¿Õ«Õ¹Õ¶Õ¥Ö",
"rcfilters-filterlist-whatsthis": "Ô»Õ¶Õ¹ÕºÕ¥ÕÕ½ Õ§ Õ½Õ¡ Õ¡Õ·ÕÕ¡Õ¿Õ¸ÖÕ´:",
+ "rcfilters-highlightbutton-title": "Ô¸Õ¶Õ¤Õ£Õ®Õ¥Õ¬ Õ¡ÖÕ¤ÕµÕ¸ÖÕ¶ÖÕ¶Õ¥ÖÕ¨",
"rcfilters-highlightmenu-title": "Ô¸Õ¶Õ¿ÖÕ¥Ö Õ£Õ¸ÖÕµÕ¶Õ¨",
+ "rcfilters-filterlist-noresults": "Ô¶Õ¿Õ«Õ¹Õ¶Õ¥Ö Õ¹Õ¥Õ¶ Õ£Õ¿Õ¶Õ¾Õ¥Õ¬",
+ "rcfilters-filtergroup-authorship": "ÕÕ¥ÖÕ¤ÖÕ¸ÖÕ´Õ¶Õ¥ÖÕ« Õ°Õ¥Õ²Õ«Õ¶Õ¡Õ¯",
"rcfilters-filter-editsbyself-label": "ÕÕ¥Ö ÕÕ´Õ¢Õ¡Õ£ÖÕ¸ÖÕ´Õ¶Õ¥Ö",
+ "rcfilters-filter-editsbyother-label": "Ô±ÕµÕ¬Õ¸Ö ÖÕ¸ÖÕ¸ÕÕ¸ÖÕ©ÕµÕ¸ÖÕ¶Õ¶Õ¥ÖÕ¨",
+ "rcfilters-filtergroup-userExpLevel": "ÕÕ¡Õ½Õ¶Õ¡Õ¯Õ«ÖÕ¶Õ¥ÖÕ« Õ£ÖÕ¡Õ¶ÖÕ¸ÖÕ´ Ö ÖÕ¸ÖÕ±",
+ "rcfilters-filter-user-experience-level-registered-label": "Ô³ÖÕ¡Õ¶ÖÕ¾Õ¡Õ®",
+ "rcfilters-filter-user-experience-level-unregistered-label": "ÕÕ£ÖÕ¡Õ¶ÖÕ¾Õ¡Õ®",
"rcfilters-filter-user-experience-level-newcomer-label": "ÕÕ¸ÖÕ¥Õ¯Õ¶Õ¥Ö",
"rcfilters-filter-user-experience-level-newcomer-description": "Ô³ÖÕ¡Õ¶ÖÕ¾Õ¡Õ® ÕÕ´Õ¢Õ¡Õ£Õ«ÖÕ¶Õ¥ÖÕ Õ¸Õ¹ ÕºÕ¡Õ¯Õ¡Õ½ ÖÕ¡Õ¶ 10 ÕÕ´Õ¢Õ¡Õ£ÖÕ¸ÖÕ´Õ¸Õ¾ Ö 4 Ö
Ö Õ¡Õ¯Õ¿Õ«Õ¾Õ¸ÖÕ©ÕµÕ¡Õ´Õ¢:",
- "rcfilters-filtergroup-lastRevision": "Ô¸Õ¶Õ©Õ¡ÖÕ«Õ¯ Õ¿Õ¡ÖÕ¢Õ¥ÖÕ¡Õ¯",
+ "rcfilters-filter-user-experience-level-learner-label": "ÕÕ¸Õ¾Õ¸ÖÕ¸Õ²Õ¶Õ¥Ö",
+ "rcfilters-filter-bots-label": "Ô²Õ¸Õ¿",
+ "rcfilters-filter-humans-label": "ÕÕ¡ÖÕ¤ (Õ¸Õ¹ Õ¢Õ¸Õ¿)",
+ "rcfilters-filtergroup-significance": "ÕÕ·Õ¡Õ¶Õ¡Õ¯Õ¡Õ¬Õ«Õ¸ÖÕ©ÕµÕ¸ÖÕ¶",
+ "rcfilters-filter-minor-label": "ÕÕ¶Õ¹Õ«Õ¶ ÕÕ´Õ¢Õ¡Õ£ÖÕ¸ÖÕ´Õ¶Õ¥Ö",
+ "rcfilters-filter-major-label": "ÕÕ¸Õ¾Õ¸ÖÕ¡Õ¯Õ¡Õ¶ ÕÕ´Õ¢Õ¡Õ£ÖÕ¸ÖÕ´Õ¶Õ¥Ö",
+ "rcfilters-filtergroup-watchlist": "ÕÕ½Õ¯Õ¡ÖÕ¡Õ¶Õ¯Õ« Õ§Õ»Õ¥Ö",
+ "rcfilters-filter-watchlist-watched-label": "ÕÕ½Õ¯Õ¡ÖÕ¡Õ¶Õ¯Õ¸ÖÕ´",
+ "rcfilters-filter-watchlist-watchednew-label": "ÕÕ½Õ¯Õ¡ÖÕ¡Õ¶Õ¯Õ« Õ¶Õ¸Ö ÖÕ¸ÖÕ¸ÕÕ¸ÖÕ©ÕµÕ¸ÖÕ¶Õ¶Õ¥Ö",
+ "rcfilters-filter-watchlist-notwatched-label": "ÕÕ½Õ¯Õ¡ÖÕ¡Õ¶Õ¯Õ«Ö Õ¤Õ¸ÖÖÕ½",
+ "rcfilters-filtergroup-changetype": "ÕÕ¸ÖÕ¸ÕÕ¸ÖÕ©ÕµÕ¡Õ¶ Õ¿Õ¥Õ½Õ¡Õ¯",
+ "rcfilters-filter-pageedits-label": "Ô·Õ»Õ« ÕÕ´Õ¢Õ¡Õ£ÖÕ¸ÖÕ´Õ¶Õ¥Ö",
+ "rcfilters-filter-newpages-label": "ÕÕ¸Ö Õ§Õ»Õ¥Ö",
+ "rcfilters-filter-logactions-label": "ÕÕ¸ÖÕ¿Ö Õ£Õ¸ÖÕ®Õ¡Õ® Õ£Õ¸ÖÕ®Õ¸Õ²Õ¸ÖÕ©ÕµÕ¸ÖÕ¶Õ¶Õ¥Ö",
+ "rcfilters-filtergroup-lastRevision": "Ô±Õ´Õ¥Õ¶Õ¡Õ¾Õ¥ÖÕ»Õ«Õ¶ Õ¿Õ¡ÖÕ¢Õ¥ÖÕ¡Õ¯",
+ "rcfilters-filter-previousrevision-label": "ÕÕ¹ Õ¾Õ¥ÖÕ»Õ«Õ¶ Õ¿Õ¡ÖÕ¢Õ¥ÖÕ¡Õ¯",
+ "rcfilters-view-tags": "ÕÕ«Õ¿Õ¡Õ¯Õ¾Õ¡Õ® ÕÕ´Õ¢Õ¡Õ£ÖÕ¸ÖÕ´Õ¶Õ¥Ö",
+ "rcfilters-liveupdates-button": "Ô¿Õ¥Õ¶Õ¤Õ¡Õ¶Õ« Õ©Õ¡ÖÕ´Õ¡ÖÕ¸ÖÕ´Õ¶Õ¥Ö",
"rcnotefrom": "ÕÕ¿Õ¸ÖÖ Õ¢Õ¥ÖÕ¾Õ¡Õ® Õ¥Õ¶ ÖÕ¸ÖÕ¸ÕÕ¸ÖÕ©ÕµÕ¸ÖÕ¶Õ¶Õ¥ÖÕ¨ Õ½Õ¯Õ½Õ¡Õ®Õ '''$2''' (Õ´Õ«Õ¶Õ¹ÖÕ '''$1''')Ö",
"rclistfrom": "ÕÕ¸ÖÕµÖ Õ¿Õ¡Õ¬ Õ¶Õ¸Ö ÖÕ¸ÖÕ¸ÕÕ¸ÖÕ©ÕµÕ¸ÖÕ¶Õ¶Õ¥ÖÕ¨ Õ½Õ¯Õ½Õ¡Õ® $3 $2",
"rcshowhideminor": "$1 Õ¹Õ¶Õ¹Õ«Õ¶ ÕÕ´Õ¢Õ¡Õ£ÖÕ¸ÖÕ´Õ¶Õ¥ÖÕ¨",
@@ -1011,8 +1049,6 @@
"newpageletter": "Õ",
"boteditletter": "Õ¢",
"number_of_watching_users_pageview": "[$1 Õ°Õ½Õ¯Õ¸Õ² {{PLURAL:$1|Õ´Õ¡Õ½Õ¶Õ¡Õ¯Õ«Ö|Õ´Õ¡Õ½Õ¶Õ¡Õ¯Õ«ÖÕ¶Õ¥ÖÕ«Õ¶}}]",
- "rc_categories": "ÕÕ¡Õ°Õ´Õ¡Õ¶Õ¡ÖÕ¡Õ¯Õ¥Õ¬ Õ¯Õ¡Õ¿Õ¥Õ£Õ¸ÖÕ«Õ¡Õ¶Õ¥ÖÕ¸Õ¾ (Õ¢Õ¡ÕªÕ¡Õ¶Õ¥Ö Â«|» Õ¶Õ·Õ¡Õ¶Õ¸Õ¾)",
- "rc_categories_any": "Ô²Õ¸Õ¬Õ¸Ö",
"rc-change-size-new": "$1 {{PLURAL:$1|Õ¢Õ¡ÕµÕ©|Õ¢Õ¡ÕµÕ©}} ÖÕ¸ÖÕ¸ÕÕ¸ÖÕ©ÕµÕ¸ÖÕ¶Õ«Ö Õ°Õ¥Õ¿Õ¸",
"newsectionsummary": "/* $1 */ ÕÕ¸Ö Õ¢Õ¡ÕªÕ«Õ¶",
"rc-enhanced-expand": "ÕÕ¸ÖÖÕ¡Õ¤ÖÕ¥Õ¬ Õ´Õ¡Õ¶ÖÕ¡Õ´Õ¡Õ½Õ¶Õ¥Ö (ÕºÕ¡Õ°Õ¡Õ¶Õ»Õ¸ÖÕ´ Õ§ ÕÕ¡Õ¾Õ¡ÕÕ¯ÖÕ«ÕºÕ¿)",
@@ -1856,7 +1892,7 @@
"show-big-image-size": "$1 Ã $2 ÕºÕ«ÖÕ½Õ¥Õ¬",
"newimages": "ÕÕ¸Ö Õ¶Õ«Õ·ÖÕ¥ÖÕ« Õ½ÖÕ¡Õ°",
"imagelisttext": "ÕÕ¿Õ¸ÖÖ Õ¢Õ¥ÖÕ¾Õ¡Õ® Õ§ '''$1''' {{PLURAL:$1|Õ¶Õ«Õ·ÖÕ«}} ÖÕ¡Õ¶Õ¯Õ Õ¤Õ¡Õ½Õ¡Õ¾Õ¸ÖÕ¾Õ¡Õ® Õ¨Õ½Õ¿ $2Ö",
- "newimages-legend": "ÕÕ«Õ¬Õ¿Ö",
+ "newimages-legend": "Ô¶Õ¿Õ«Õ¹",
"newimages-showbots": "ÕÕ¸ÖÕµÖ Õ¿Õ¡Õ¬ Õ¢Õ¸Õ¿Õ¥ÖÕ« Õ¢Õ¥Õ¼Õ¶Õ¸ÖÕ´Õ¶Õ¥ÖÕ¨",
"noimages": "ÕÕ¥Õ½Õ¶Õ¥Õ¬Õ¸Ö Õ¢Õ¡Õ¶ Õ¹Õ¯Õ¡Ö",
"ilsubmit": "ÕÖÕ¸Õ¶Õ¥Õ¬",
@@ -2001,11 +2037,13 @@
"tag-filter": "[[Special:Tags|ÕÕ«Õ¿Õ¡Õ¯Õ¶Õ¥ÖÕ«]] Õ¦Õ¿Õ«Õ¹Õ",
"tag-filter-submit": "ÕÕ«Õ¬Õ¿ÖÕ¥Õ¬",
"tag-list-wrapper": "([[Special:Tags|{{PLURAL:$1|ÕÕ«Õ¿Õ¡Õ¯}}]]: $2)",
+ "tags-title": "ÕÕ«Õ¿Õ¡Õ¯Õ¶Õ¥Ö",
"tags-source-header": "Ô±Õ²Õ¢ÕµÕ¸ÖÖ",
"tags-actions-header": "Ô³Õ¸ÖÕ®Õ¸Õ²Õ¸ÖÕ©ÕµÕ¸ÖÕ¶Õ¶Õ¥Ö",
"tags-edit": "ÕÕ´Õ¢Õ¡Õ£ÖÕ¥Õ¬",
"tags-delete": "Õ»Õ¶Õ»Õ¥Õ¬",
"tags-deactivate": "Ô±ÕºÕ¡Õ¡Õ¯Õ¿Õ«Õ¾Õ¡ÖÕ¶Õ¥Õ¬",
+ "tags-hitcount": "$1 {{PLURAL:$1|ÖÕ¸ÖÕ¸ÕÕ¸ÖÕ©ÕµÕ¸ÖÕ¶|ÖÕ¸ÖÕ¸ÕÕ¸ÖÕ©ÕµÕ¸ÖÕ¶Õ¶Õ¥Ö}}",
"tags-create-reason": "ÕÕ¡Õ¿Õ³Õ¡Õ¼Õ",
"tags-create-submit": "ÕÕ¿Õ¥Õ²Õ®Õ¥Õ¬",
"tags-delete-reason": "ÕÕ¡Õ¿Õ³Õ¡Õ¼Õ",
diff --git a/languages/i18n/ia.json b/languages/i18n/ia.json
index bcf860146d..fbb1becde7 100644
--- a/languages/i18n/ia.json
+++ b/languages/i18n/ia.json
@@ -121,7 +121,7 @@
"nov": "nov",
"dec": "dec",
"january-date": "$1 de januario",
- "february-date": "$1 de februario���",
+ "february-date": "$1 de februario",
"march-date": "$1 de martio",
"april-date": "$1 de april",
"may-date": "$1 de maio",
@@ -656,7 +656,7 @@
"userjspreview": "'''Non oblida que isto es solmente un test/previsualisation de tu JavaScript personalisate.'''\n'''Illo non ha ancora essite salveguardate!'''",
"sitecsspreview": "'''Non oblida que isto es solmente un previsualisation de iste CSS.'''\n'''Le modificationes non ha ancora essite salveguardate!'''",
"sitejspreview": "'''Non oblida que isto es solmente un previsualisation de iste codice JavaScript.'''\n'''Le modificationes non ha ancora essite salveguardate!'''",
- "userinvalidcssjstitle": "'''Attention:''' Le apparentia \"$1\" non existe.\nMemora que le paginas .css and .js personalisate usa un titulo in minusculas, p.ex. {{ns:user}}:Foo/vector.css e non {{ns:user}}:Foo/Vector.css.",
+ "userinvalidconfigtitle": "'''Attention:''' Le apparentia \"$1\" non existe.\nMemora que le paginas .css and .js personalisate usa un titulo in minusculas, p.ex. {{ns:user}}:Foo/vector.css e non {{ns:user}}:Foo/Vector.css.",
"updated": "(Actualisate)",
"note": "'''Nota:'''",
"previewnote": "'''Isto es solmente un previsualisation.'''\nLe modificationes non ha ancora essite publicate!",
@@ -1022,7 +1022,7 @@
"prefs-files": "Files",
"prefs-custom-css": "CSS personalisate",
"prefs-custom-js": "JS personalisate",
- "prefs-common-css-js": "CSS/JS commun a tote le apparentias:",
+ "prefs-common-config": "CSS/JS commun a tote le apparentias:",
"prefs-reset-intro": "Iste pagina es pro reinitialisar tu preferentias al valores predefinite del sito.\nLe operation non pote esser disfacite.",
"prefs-emailconfirm-label": "Confirmation del e-mail:",
"youremail": "E-mail:",
@@ -1456,8 +1456,6 @@
"newpageletter": "N",
"boteditletter": "b",
"number_of_watching_users_pageview": "[observate per $1 {{PLURAL:$1|usator|usatores}}]",
- "rc_categories": "Limitar al categorias (separar con \"|\"):",
- "rc_categories_any": "Qualcunque categoria seligite",
"rc-change-size-new": "$1 {{PLURAL:$1|byte|bytes}} post cambio",
"newsectionsummary": "/* $1 */ nove section",
"rc-enhanced-expand": "Revelar detalios",
diff --git a/languages/i18n/id.json b/languages/i18n/id.json
index 1d3b47ced1..1525a1f62c 100644
--- a/languages/i18n/id.json
+++ b/languages/i18n/id.json
@@ -705,7 +705,7 @@
"userjspreview": "'''Ingatlah bahwa yang Anda lihat hanyalah pratayang JavaScript Anda, dan bahwa pratayang tersebut belum disimpan!'''",
"sitecsspreview": "'''Ingatlah bahwa Anda hanya menampilkan pratayang dari CSS ini.'''\n'''Perubahan belum disimpan!'''",
"sitejspreview": "'''Ingatlah bahwa Anda hanya menampilkan pratayang dari kode JavaScript ini.'''\n'''Perubahan belum disimpan!'''",
- "userinvalidcssjstitle": "'''Peringatan:''' Kulit \"$1\" tidak ditemukan. Harap diingat bahwa halaman .css dan .js menggunakan huruf kecil, contoh {{ns:user}}:Foo/vector.css dan bukannya {{ns:user}}:Foo/Vector.css.",
+ "userinvalidconfigtitle": "'''Peringatan:''' Kulit \"$1\" tidak ditemukan. Harap diingat bahwa halaman .css dan .js menggunakan huruf kecil, contoh {{ns:user}}:Foo/vector.css dan bukannya {{ns:user}}:Foo/Vector.css.",
"updated": "(Diperbarui)",
"note": "'''Catatan:'''",
"previewnote": "'''Ingatlah bahwa ini hanya pratayang.'''\nPerubahan Anda belum disimpan!",
@@ -1073,7 +1073,7 @@
"prefs-files": "Berkas",
"prefs-custom-css": "CSS pribadi",
"prefs-custom-js": "JS pribadi",
- "prefs-common-css-js": "CSS/JS berbagi untuk semua kulit:",
+ "prefs-common-config": "CSS/JS berbagi untuk semua kulit:",
"prefs-reset-intro": "Anda dapat menggunakan halaman ini untuk mengembalikan preferensi Anda ke setelan baku situs.\nPengembalian preferensi tidak dapat dibatalkan.",
"prefs-emailconfirm-label": "Konfirmasi surel:",
"youremail": "Surel:",
@@ -1507,8 +1507,6 @@
"boteditletter": "b",
"unpatrolledletter": "!",
"number_of_watching_users_pageview": "[$1 {{PLURAL:$1|pemantau|pemantau}}]",
- "rc_categories": "Batasi sampai kategori (dipisah dengan \"|\"):",
- "rc_categories_any": "Setiap yang terpilih",
"rc-change-size": "$1",
"rc-change-size-new": "$1 {{PLURAL:$1|bita}} setelah perubahan",
"newsectionsummary": "/* $1 */ bagian baru",
diff --git a/languages/i18n/ie.json b/languages/i18n/ie.json
index 6cb2c4ff0a..6b155aadeb 100644
--- a/languages/i18n/ie.json
+++ b/languages/i18n/ie.json
@@ -14,7 +14,8 @@
"ìë¼",
"Srdjan m",
"Macofe",
- "Stavanger7"
+ "Stavanger7",
+ "Fanjiayi"
]
},
"tog-underline": "Ultracatenun:",
@@ -125,6 +126,8 @@
"october-date": "$1 octobre",
"november-date": "$1 novembre",
"december-date": "$1 decembre",
+ "period-am": "AM",
+ "period-pm": "PM",
"pagecategories": "{{PLURAL:$1|Categorie|Categories}}",
"category_header": "Articules in categorie \"$1\"",
"subcategories": "Subcategories",
@@ -147,7 +150,7 @@
"newwindow": "(es apertet in un nov fenestre)",
"cancel": "Anullar",
"moredotdotdot": "Plu...",
- "morenotlisted": "Ti liste ne es complet.",
+ "morenotlisted": "Forsan ti liste es Ãncomplet.",
"mypage": "Págine",
"mytalk": "Conversation",
"anontalk": "Discussion",
@@ -232,6 +235,7 @@
"badaccess-groups": "Ti action es limitat a usatores in {{PLURAL:$2|li gruppe|un del secuent gruppes:}} $1",
"versionrequired": "Version $1 de MediaWiki exiget",
"versionrequiredtext": "Version $1 de MediaWiki es exiget por usar ti págine.\nVider [[Special:Version|págine de version]].",
+ "ok": "OK",
"retrievedfrom": "Cargat de «$1»",
"youhavenewmessages": "Vu have $1 ($2).",
"youhavenewmessagesfromusers": "Tu have $1 de {{PLURAL:$3|un altri usator|$3 usatores}} ($2).",
@@ -274,6 +278,7 @@
"nstab-template": "Avise",
"nstab-help": "Auxilie",
"nstab-category": "Categorie",
+ "mainpage-nstab": "Principal págine",
"nosuchaction": "Null tal action existe",
"nosuchactiontext": "Li action indicat in li URL es Ãnvalid.\nForsan tu ha mistypat li URL o secuet un Ãncorrect ligament.\nForsan it indica un erra in li programma usat de {{SITENAME}}.",
"nosuchspecialpage": "Null tal special págine",
@@ -306,6 +311,7 @@
"userlogin-yourname-ph": "Vor nómine de usator",
"createacct-another-username-ph": "Nómine del usator",
"yourpassword": "Parol-clave:",
+ "userlogin-yourpassword": "Parol-clave",
"yourpasswordagain": "Parol-clave denov:",
"userlogin-signwithsecure": "Usar un secur conexion",
"yourdomainname": "Tui dominia:",
@@ -338,8 +344,10 @@
"createaccount-title": "Creation de conto por {{SITENAME}}",
"loginlanguagelabel": "Lingue: $1",
"suspicious-userlogout": "Tui petition por surtir esset desaprobat pro que probabilmen esset inviat per un navigator ruptet o servitor de autorisation che caching.",
+ "pt-login": "Aperter session",
"pt-login-button": "Aperter session",
"pt-createaccount": "Crear un conto",
+ "pt-userlogout": "Surtir",
"changepassword": "Modificar passa-parol",
"oldpassword": "Anteyan passa-parol:",
"newpassword": "Nov passa-parol:",
@@ -395,7 +403,7 @@
"userjsyoucanpreview": "'''Punta:''' Usa li buton \"{{int:showpreview}}\" por provar tui nov JavaScript ante de conservar.",
"usercsspreview": "'''Memora que vu es solmen vident un prevision de tui CSS de usator.'''\n'''It ne have esset conservat ancor!'''",
"userjspreview": "'''Memora que vu es solmen provant/monstrant tui JavaScript de usator.'''\n'''It ne ha esset conservat ancor!'''",
- "userinvalidcssjstitle": "'''Advertiment:''' Ne vi pelle \"$1\".\nMemora que hábitu .css e págines .js usa un titul plu bass, e.g. {{ns:user}}:Foo/vector.css quam oposit por {{ns:user}}:Foo/Vector.css.",
+ "userinvalidconfigtitle": "'''Advertiment:''' Ne vi pelle \"$1\".\nMemora que hábitu .css e págines .js usa un titul plu bass, e.g. {{ns:user}}:Foo/vector.css quam oposit por {{ns:user}}:Foo/Vector.css.",
"updated": "(Modernisat)",
"note": "Note:",
"previewnote": "'''Memora se que ti es solmen un prevision.'''\nTui changes ancor ne ha esset conservat!",
@@ -416,6 +424,7 @@
"template-protected": "(protectet)",
"template-semiprotected": "(medie-gardat)",
"hiddencategories": "Ti págine es un membre de {{PLURAL:$1|1 categorie ocultat|$1 categories ocultat}}:",
+ "permissionserrors": "Tu ne have sufficent jures",
"permissionserrorstext-withaction": "Vu ne have permission por $2, por li sequent {{PLURAL:$1|motive|motives}}:",
"recreate-moveddeleted-warn": "'''Advertiment: Vu es recreant un págine que esset anteriorimen deletet.'''\n\nVu deve considerar ca it es convenent por continuar redactant ti págine.\nLi deletion e diarium de movement por li págine es sub li condition ci por convenience:",
"moveddeleted-notice": "Ti págine ha esset deletet.\nLi deletion e diarium de movement por li págine es sub li condition in infra por referentie.",
@@ -589,16 +598,21 @@
"rclistfrom": "Monstrar li nov modificationes desde $3 $2",
"rcshowhideminor": "$1 redactiones minori",
"rcshowhideminor-show": "Monstrar",
+ "rcshowhideminor-hide": "Ocultar",
"rcshowhidebots": "$1 machines",
+ "rcshowhidebots-show": "Monstrar",
"rcshowhidebots-hide": "Ocultar",
"rcshowhideliu": "$1 usatores registrat",
+ "rcshowhideliu-show": "Monstrar",
"rcshowhideliu-hide": "Ocultar",
"rcshowhideanons": "$1 usatores anonim",
"rcshowhideanons-show": "Monstrar",
+ "rcshowhideanons-hide": "Ocultar",
"rcshowhidepatr": "$1 redactiones vigilat",
"rcshowhidepatr-hide": "Ocultar",
"rcshowhidemine": "$1 mi redactiones",
"rcshowhidemine-show": "Monstrar",
+ "rcshowhidemine-hide": "Ocultar",
"rclinks": "Monstrar li $1 ultim modificationes fat durante li $2 ultim dies",
"diff": "dif",
"hist": "hist",
@@ -872,7 +886,7 @@
"whatlinkshere-hideredirs": "$1 redirectiones",
"whatlinkshere-hidetrans": "$1 transclusiones",
"whatlinkshere-hidelinks": "$1 catenunes",
- "whatlinkshere-hideimages": "$1 referenties a picturas.",
+ "whatlinkshere-hideimages": "$1 pictura links",
"whatlinkshere-filters": "Filtres",
"blockip": "Blocar usator",
"ipbreason": "Motive:",
@@ -915,7 +929,7 @@
"tooltip-pt-login": "Tu es incorrageat crear un conto, ma to ne es un deventie.",
"tooltip-pt-logout": "Surtir",
"tooltip-ca-talk": "Discussion pri li articul.",
- "tooltip-ca-edit": "Redacter ti págine. Ples usar li buton de prevision antequam conservar.",
+ "tooltip-ca-edit": "Redacter ti-ci págine",
"tooltip-ca-addsection": "Comensar un nov section",
"tooltip-ca-viewsource": "Ti págine es protectet. Ma tu posse vider e copiar su fonte.",
"tooltip-ca-history": "Passat versiones de ti págine",
@@ -970,7 +984,9 @@
"tooltip-preferences-save": "Conservar preferenties",
"tooltip-summary": "Ples intrar un curt resummation.",
"simpleantispam-label": "Control anti-spam.\nNe plena to ci!",
+ "pageinfo-article-id": "Págine ID",
"pageinfo-toolboxlink": "Information pri li págine",
+ "pageinfo-contentpage-yes": "Yes",
"previousdiff": "â Redaction anteriori",
"nextdiff": "Proxim redaction â",
"thumbsize": "Mesura de miniatura:",
@@ -1045,6 +1061,10 @@
"version-software": "Software installat",
"version-software-product": "Producte",
"version-software-version": "Version",
+ "redirect-submit": "Ear",
+ "redirect-user": "Usator ID",
+ "redirect-page": "Págine ID",
+ "redirect-file": "File-nómine",
"specialpages": "Special págines",
"specialpages-group-maintenance": "Raportes de conservation",
"specialpages-group-other": "Altri págines special",
@@ -1068,6 +1088,8 @@
"tags-display-header": "Aspecte in listes de change",
"tags-description-header": "Descrition complet de signification",
"tags-hitcount-header": "Changes nómiat",
+ "tags-active-yes": "Yes",
+ "tags-active-no": "No",
"tags-edit": "redacter",
"tags-hitcount": "$1 {{PLURAL:$1|change|changes}}",
"logentry-delete-delete": "$1 ha removet li págine $3",
diff --git a/languages/i18n/ig.json b/languages/i18n/ig.json
index 59306c6ec8..d739147ff2 100644
--- a/languages/i18n/ig.json
+++ b/languages/i18n/ig.json
@@ -601,7 +601,6 @@
"newpageletter": "N",
"boteditletter": "b",
"number_of_watching_users_pageview": "[$1 {{PLURAL:$1|á»'bà nifé|á»'bà nifé}} ne lé anya]",
- "rc_categories_any": "Nkówụlà ",
"newsectionsummary": "/* $1 */ nkeji ohúrù",
"rc-enhanced-expand": "Zi ihe di ime (à gà nwere JavaScript)",
"rc-enhanced-hide": "Zonari ihe di ime",
diff --git a/languages/i18n/ilo.json b/languages/i18n/ilo.json
index 78e20ff454..679152dc0a 100644
--- a/languages/i18n/ilo.json
+++ b/languages/i18n/ilo.json
@@ -642,7 +642,7 @@
"userjspreview": "Laglagipem a subsubokam/ipadpadasmo ti bukodmo a JavaScript ti agar-aramat.\nSaan pay a naidulin!",
"sitecsspreview": "Laglagipem nga ipadpadasmo laeng daytoy a CSS.\nSaan pay a naidulin!",
"sitejspreview": "Laglagipem nga ipadpadasmo laeng daytoy a kodigo ti JavaScript.\nSaan pay nga naidulin!",
- "userinvalidcssjstitle": "Ballaag: Awan ti kudil a \"$1\".\nDagiti panid ti naiduma a .css ken .js ket agus-usar iti titulo ti bassit a letra, kas ti {{ns:user}}:Foo/vector.css saan a kas ti {{ns:user}}:Foo/Vector.css.",
+ "userinvalidconfigtitle": "Ballaag: Awan ti kudil a \"$1\".\nDagiti panid ti naiduma a .css ken .js ket agus-usar iti titulo ti bassit a letra, kas ti {{ns:user}}:Foo/vector.css saan a kas ti {{ns:user}}:Foo/Vector.css.",
"updated": "(Napabaro)",
"note": "Nota:",
"previewnote": "Laglagipem a daytoy ket panagipadas laeng.\nDagiti sinukatam ket saan pay a naidulin!",
@@ -1001,7 +1001,7 @@
"prefs-files": "Dagiti papeles",
"prefs-custom-css": "Naiduma a CSS",
"prefs-custom-js": "Naiduma a JavaScript",
- "prefs-common-css-js": "Bingay a CSS/JavaScript para kadagiti amin a kudil:",
+ "prefs-common-config": "Bingay a CSS/JavaScript para kadagiti amin a kudil:",
"prefs-reset-intro": "Mabalinmo nga usaren daytoy a panid tapno maisublim dagita kakaykayatam iti kasisigud iti daytoy a wiki.\nNgem saanto a mabalinen nga ipasubli.",
"prefs-emailconfirm-label": "Pammasingked ti esurat:",
"youremail": "Esurat:",
@@ -1404,8 +1404,6 @@
"newpageletter": "B",
"boteditletter": "b",
"number_of_watching_users_pageview": "[$1 nga agbuybuya {{PLURAL:$1|nga agar-aramat|kadagiti agar-aramat}}]",
- "rc_categories": "Patingga dagiti kategoria (pagsinaen iti \"|\"):",
- "rc_categories_any": "Ti ania man a napili",
"rc-change-size-new": "$1 {{PLURAL:$1|a byte|kadagiti byte}} kalpasan ti panagsukat",
"newsectionsummary": "/* $1 */ baro a seksion",
"rc-enhanced-expand": "Ipakita dagiti salaysay",
diff --git a/languages/i18n/inh.json b/languages/i18n/inh.json
index f4fe4cd664..3e871a5937 100644
--- a/languages/i18n/inh.json
+++ b/languages/i18n/inh.json
@@ -615,7 +615,6 @@
"minoreditletter": "зI",
"newpageletter": "Ð",
"boteditletter": "б",
- "rc_categories_any": "ÐоллагIа ÑÑ Ñ
еÑжа йолÑаÑна ÑкÑеÑа",
"rc-change-size-new": "Ð¥ÑвÑам баÑннаÑÑл ÑÓеÑ
ÑагIа бола боаÑам: $1 {{PLURAL:$1|байÑ}}",
"rc-enhanced-expand": "Ð¥ÑаÑ
ÑокÑ
а ма даÑÑа",
"rc-enhanced-hide": "ÐÑайладаккÑ
а ма даÑÑа даÑ",
diff --git a/languages/i18n/io.json b/languages/i18n/io.json
index 595ae1f1de..ce4efab3aa 100644
--- a/languages/i18n/io.json
+++ b/languages/i18n/io.json
@@ -400,6 +400,7 @@
"cannotcreateaccount-text": "Krear uzerokonto ne posibligas en ita wiki.",
"yourdomainname": "Vua domano:",
"password-change-forbidden": "Vu ne darfas chanjar pasovorti en ita wiki.",
+ "externaldberror": "Sive eventis eroro en la bazo di dati dum l'autentiko, sive vu ne permisesas aktualigar vua extera konto.",
"login": "Enirar",
"login-security": "Kontrolez vua identeso.",
"nav-login-createaccount": "Enirar / Krear konto",
@@ -419,9 +420,11 @@
"createacct-email-ph": "Prizentez vua e-postal adreso",
"createacct-another-email-ph": "Prizentez vua e-postal adreso",
"createaccountmail": "Uzez provizora pasovorto, ed ad adresizez ol a la korespondanta e-posto",
+ "createaccountmail-help": "Povas uzesar por krear konto por altra persono, sen lernar la pasovorto.",
"createacct-realname": "Vera nomo (fakultativa)",
"createacct-reason": "Motivo",
"createacct-reason-ph": "Pro quo tu kreas nova konto",
+ "createacct-reason-help": "Mesajo videbla dum la 'log' por krear konto",
"createacct-submit": "Kreez konto",
"createacct-another-submit": "Krear konto",
"createacct-continue-submit": "Durez krear konto",
@@ -481,6 +484,7 @@
"login-migrated-generic": "Vua konto esas migrata, e vua uzeronomo ne plus existas che ita wikio.",
"loginlanguagelabel": "Linguo: $1",
"suspicious-userlogout": "Vua demando pri ekiro ('log out') refuzesis, pro ke ol semblas sendesir de retnavigilo krevita, o de 'proxy' antee konservita.",
+ "createacct-another-realname-tip": "Uzar vera nomo esas fakultativa.\nSe vu deziras furnisar ol, ol uzesos por atribuar la verko a lua autoro.",
"pt-login": "Enirar",
"pt-login-button": "Enirar",
"pt-login-continue-button": "Durez enirar",
@@ -499,6 +503,7 @@
"changepassword-success": "Vua chanjo di pasovorto sucesis!",
"changepassword-throttled": "Vu probis enirar tro multafoye.\nVoluntez vartar $1 ante riprobar.",
"botpasswords": "Robotala pasovorti",
+ "botpasswords-summary": "Bot passwords allow access to a user account via the API without using the account's main login credentials. The user rights available when logged in with a bot password may be restricted.\n\nIf you don't know why you might want to do this, you should probably not do it. No one should ever ask you to generate one of these and give it to them.",
"botpasswords-disabled": "Ne povas uzesar \"bot\"-pasovorti",
"botpasswords-no-central-id": "Por uzar \"bot\"-pasovorti, vu mustas havar centraligata konto",
"botpasswords-existing": "\"bot\"-pasovorti existanta",
@@ -513,13 +518,22 @@
"botpasswords-label-grants": "Uzebla grantaji:",
"botpasswords-label-grants-column": "Permisita",
"botpasswords-bad-appid": "La nomo \"$1\" por la bot-programo esas nevalida.",
+ "botpasswords-created-title": "Kreita pasovorto por la 'bot'",
+ "botpasswords-created-body": "La pasovorto por la 'bot' nomizita \"$1\" del {{GENDER:$2|uzero}} \"$2\" kreesis.",
"botpasswords-updated-title": "La pasovorto dil 'bot' aktualigesis",
+ "botpasswords-updated-body": "La pasovorto por la 'bot' nomizita \"$1\" del {{GENDER:$2|uzero}} \"$2\" kreesis.",
+ "botpasswords-deleted-title": "La pasovorto por la 'bot' efacesis",
+ "resetpass_forbidden": "La pasovorti ne povas chanjesar",
+ "resetpass_forbidden-reason": "Pasovorti ne povas chanjesar: $1",
+ "resetpass-no-info": "Vu mustas enirar la konto por acesar ita pagino direte.",
"resetpass-submit-loggedin": "Chanjar pasovorto",
"resetpass-submit-cancel": "Anular",
"resetpass-wrong-oldpass": "Nevalida provizora od aktuala pasovorto.\nForsan vu ja chanjis vua pasovorto o demandis nova provizora pasovorto.",
"resetpass-recycled": "Voluntez chanjar vua pasovorto ad ulo diferanta de vua aktuala pasovorto.",
"resetpass-temp-emailed": "Vu eniris uzante provizora pasovorto.\nPor parkompletigar enirado, vu mustas krear nova pasovorto hike:",
"resetpass-temp-password": "Provizora pasovorto:",
+ "resetpass-abort-generic": "La modifiko dil pasovorto interuptesis per ula 'extension'.",
+ "resetpass-expired": "Vua pasovorto perdis la valideso. Voluntez krear nova pasovorto por facar 'log in'.",
"passwordreset": "Sendez nova pasovorto per e-posto",
"passwordreset-text-one": "Garnisez ica formulario por recevar provizora pasovorto per vua e-posto.",
"passwordreset-username": "Uzantonomo:",
@@ -529,6 +543,8 @@
"passwordreset-emailtext-ip": "Ulu (probable vu, de la IP-adresO $1) demandis la remplaso di la pasovorto por {{SITENAME}} ($4). La sequanta {{PLURAL:$3|konto|konti}} esas asociita kun ta adreso di e-posto:\n\n$2\n\nIca tempala {{PLURAL:$3| pasovorto|pasovorti}} perdos la valideso pos {{PLURAL:$5|un dio|$5 dii}}.\nTu mustas facar 'log in' e selektar nova pasovorto nemediate. Se altra persono facis ica demando, o se vu rimemoris l'antea pasovorto e ne pluse bezonas modifikor ol, vu povas ignorar ica mesajo e durar l'uzo dil antea pasovorto.",
"passwordreset-emailelement": "Uzantonomo:\n$1\n\nProvizora pasovorto:\n$2",
"passwordreset-emailsentemail": "Se ica e-posto esas asociita kun vua konto, do la nova pasovorto sendesos a vu per e-posto.",
+ "passwordreset-nocaller": "Ula demandero mustas furnisesar",
+ "passwordreset-nosuchcaller": "La demandero ne existas: $1",
"passwordreset-invalidemail": "Ne-valida e-posto-adreso",
"passwordreset-nodata": "Nek uzeronomo nek e-posto-adreso esis provizita",
"changeemail": "Chanjar od efacar e-postal adreso",
@@ -579,7 +595,8 @@
"blankarticle": "Averto: La pagino vu kreas es vakua.\nSe vu ri-selektos \"$1\", la pagino kreesos sen irga kontenajo.",
"anoneditwarning": "Averto: Vu ne eniris.\nVua IP-adreso esos videbla publike se vu redaktos. Se vu [$1 enirus] od [$2 kreus konto], vua redakti atribuesos a vua uzeronomo, kune kun altra bonaji.",
"anonpreviewwarning": "Vu ne eniris. Konservar chanji registragos vua IP-adreso en la redakto-historio di ta pagino.",
- "missingcommenttext": "Voluntez, skribez komento sube.",
+ "missingcommenttext": "Voluntez skribar komento.",
+ "missingcommentheader": "Atencez: Vu ne furnisis titulo por ica komento.\nSe vu itere kliktos \"$1\", vua editado salveskos sen ula titulo.",
"summary-preview": "Previdado di la rezumo:",
"subject-preview": "Previdado di la temo:",
"previewerrortext": "Eventis eroro kande on probis krear previdado pri vua modifikuri.",
@@ -618,6 +635,7 @@
"yourtext": "Vua texto",
"storedversion": "Gardita versiono",
"editingold": "'''EGARDEZ: Vu redaktas anciena versiono di ca pagino.\nSe vu gardus ol, la chanji facita pos ita revizo perdesos.'''",
+ "unicode-support-fail": "Semblas ke vua retnavigilo ne suportas Unicode. To bezonesas por redaktar ica pagino e, pro to, vua redakto ne konservesis.",
"yourdiff": "Diferi",
"copyrightwarning": "Voluntez memorar ke omna kontributi a {{SITENAME}} esas sub la $2 (Videz $1 por detali).\nSe vu ne deziras ke altri modifikez vua artikli od oli distributesez libere, lore voluntez ne skribar oli hike.
\nPublikigante vua skribajo hike, vu asertas ke olu skribesis da vu ipsa o kopiesis de libera fonto.\n'''NE SENDEZ ARTIKLI KUN ''COPYRIGHT'' SEN PERMISO!'''",
"protectedpagewarning": "Averto: Ica pagino esas protektita por ke nur uzeri kun administero-yuri povas redaktar ol.\nLa maxim recenta en-registrago provizesas:",
@@ -632,6 +650,7 @@
"recreate-moveddeleted-warn": "Atencez: Vu rikreos pagino qua antee efacesis.\n\nVu bezonas konsiderar se esas konvenanta durar lua redakto, o ne.\nPor konveno, la motivo dil antea efaco montresas hike:",
"moveddeleted-notice": "Ica pagino efacabis.\nL'efaco-registraro e la movo-registraro di la pagino povas videsar sequante, por konsulto.",
"edit-conflict": "Konflikto di editi.",
+ "postedit-confirmation-saved": "Vua redakto konservesis",
"content-model-wikitext": "texto Wiki",
"content-model-javascript": "JavaScript",
"content-json-empty-object": "vakua objekto",
@@ -792,15 +811,18 @@
"userrights-groupsmember": "Membro di:",
"group": "Grupo:",
"group-user": "Uzanti",
+ "group-autoconfirmed": "Uzeri automatale konfirmita",
"group-bot": "Roboti",
"group-sysop": "Administranti",
"group-bureaucrat": "Burokrati",
"group-all": "(omna)",
"group-user-member": "{{GENDER:$1|uzero}}",
+ "group-autoconfirmed-member": "{{GENDER:$1|Uzero automatale konfirmita}}",
"group-bot-member": "{{GENDER:$1|roboto}}",
"group-sysop-member": "{{GENDER:$1|administrero}}",
"group-bureaucrat-member": "{{GENDER:$1|burokrato}}",
"grouppage-user": "{{ns:project}}:Uzanti",
+ "grouppage-autoconfirmed": "{{ns:project}}:Uzeri automatale konfirmita",
"grouppage-bot": "{{ns:project}}:Roboti",
"grouppage-sysop": "{{ns:project}}:Administranti",
"grouppage-bureaucrat": "{{ns:project}}:Burokrati",
@@ -837,7 +859,12 @@
"recentchanges-label-plusminus": "La pagino modifikesis segun ica quanto di *bicoki",
"recentchanges-legend-heading": "Noto:",
"recentchanges-legend-newpage": "{{int:recentchanges-label-newpage}} (videz anke la [[Special:NewPages|listo di nova pagini]])",
+ "rcfilters-other-review-tools": "Altra instrumenti por revizo",
+ "rcfilters-activefilters": "Agiva filtrili",
"rcfilters-filter-user-experience-level-experienced-description": "Plu kam 30 dii di agemeso e 500 redakti.",
+ "rcfilters-filter-humans-label": "Homala (ne 'bot')",
+ "rcfilters-filter-pageedits-label": "Redakti di pagini",
+ "rcfilters-filter-logactions-label": "Agadi enrejistrata",
"rcnotefrom": "Infre {{PLURAL:$5|esas la chanjo|esas la chanji}} de $3, $4 (montrata til $1).",
"rclistfrom": "Montrar nova chanji startante de $3 $2",
"rcshowhideminor": "$1 mikra redakti",
@@ -864,7 +891,6 @@
"minoreditletter": "m",
"newpageletter": "N",
"boteditletter": "r",
- "rc_categories_any": "Irga selektita",
"rc-change-size-new": "$1 {{PLURAL:$1|bicoko|bicoki}} pos la modifiki",
"newsectionsummary": "/* $1 */ nova seciono",
"rc-enhanced-expand": "Montrez detali",
@@ -930,6 +956,7 @@
"filepage-nofile": "Nula arkivo kun ica nomo existas.",
"uploadnewversion-linktext": "Adkargez nova versiono dil arkivo",
"shared-repo-from": "ek $1",
+ "shared-repo-name-wikimediacommons": "Wikimedia Commons",
"upload-disallowed-here": "Vu ne povas modifikar ica arkivo.",
"filerevert-comment": "Motivo:",
"filedelete": "Efacar $1",
@@ -1065,6 +1092,7 @@
"delete-confirm": "Efacar \"$1\"",
"delete-legend": "Efacar",
"historywarning": "Averto: La pagino quan vu efaceskas havas historio kun $1 {{PLURAL:$1|revizo|revizi}}:",
+ "confirmdeletetext": "Vu selektis efacar ica pagino komplete, inkluzite omna modifiki en ol e la kronologio di la modifiki.\n\nVoluntez konfirmar ke vu fakte deziras facar to, ke vu komprenas omna konsequi dil efaco, e ke vu efacos ol segun [[{{MediaWiki:Policy-url}}|la normi pri l'efaco di artikli]].",
"actioncomplete": "Ago kompletigita",
"deletedtext": "\"$1\" efacesis.\nVidez $2 por obtenar registro di recenta efaci.",
"dellogpage": "Efaco-registraro",
@@ -1150,7 +1178,7 @@
"sp-contributions-toponly": "Montrar nur la maxim recenta revizi",
"sp-contributions-newonly": "Montrar nur redakti qui esas kreado di pagini",
"sp-contributions-submit": "Serchez",
- "whatlinkshere": "Quo ligas hike",
+ "whatlinkshere": "Quo ligesas adhike",
"whatlinkshere-title": "Pagini qui ligas ad \"$1\"",
"whatlinkshere-page": "Pagino:",
"linkshere": "Ca pagini esas ligilizita ad '''[[:$1]]''':",
@@ -1195,6 +1223,7 @@
"reblock-logentry": "modifikis la tempo di blokuso [[$1]] por durado di $2 $3",
"unblocklogentry": "desblokusis \"$1\"",
"block-log-flags-nocreate": "ne povas krear konto",
+ "block-log-flags-noemail": "e-posto blokuzita",
"ipb_expiry_invalid": "Nevalida expiro-tempo.",
"ip_range_invalid": "Nevalida IP-rango.",
"proxyblocker": "Blokuso di 'Proxy'",
@@ -1218,6 +1247,8 @@
"movepagebtn": "Movar pagino",
"pagemovedsub": "Rinomizita sucese",
"movepage-moved": "'''\"$1\" esas movata ad \"$2\"'''",
+ "movepage-moved-redirect": "Kreita ridirekto.",
+ "movepage-moved-noredirect": "La kreado di ridirekto nuligesis.",
"articleexists": "Pagino kun sama nomo ja existas od la nomo\nqua vu selektis ne esas valida.\nVoluntez selektar altra nomo.",
"movetalk": "Rinomizar la debato-pagino se to esas aplikebla.",
"movelogpage": "Movo-registraro",
@@ -1464,6 +1495,7 @@
"logentry-delete-restore": "$1 {{GENDER:$2|restauris}} la pagino $3 ($4)",
"logentry-delete-revision": "$1 {{GENDER:$2|modifikis}} videbleso di {{PLURAL:$5|la revizo|$5 revizi}} di la pagino $3: $4",
"revdelete-content-hid": "celita kontenajo",
+ "logentry-block-block": "$1 {{GENDER:$2|blokuzis}} {{GENDER:$4|$3}} dum $5 $6",
"logentry-move-move": "$1 {{GENDER:$2|movis}} la pagino $3 a $4",
"logentry-move-move-noredirect": "$1 {{GENDER:$2|movis}} la pagino $3 a $4 sen lasar ridirektilo",
"logentry-move-move_redir": "$1 {{GENDER:$2|movis}} la pagino $3 a $4 sen lasar ridirekto",
diff --git a/languages/i18n/is.json b/languages/i18n/is.json
index f0d3cd3243..6cd24ec7d4 100644
--- a/languages/i18n/is.json
+++ b/languages/i18n/is.json
@@ -63,6 +63,7 @@
"tog-watchlisthideminor": "Ekki sýna minniháttar breytingar á vaktlistanum",
"tog-watchlisthideliu": "Ekki sýna breytingar innskráðra notenda á vaktlistanum",
"tog-watchlistreloadautomatically": "Endurhlaða vaktlista sjálfkrafa þegar sÃu er breytt (krefst JavaScript)",
+ "tog-watchlistunwatchlinks": "Bæta við beinum vakta/ekki vakta tenglum við færslur á vöktunarlista (krefst JavaScript til að vÃxla af/á)",
"tog-watchlisthideanons": "Ekki sýna breytingar óþekktra notenda á vaktlistanum",
"tog-watchlisthidepatrolled": "Fela yfirfarnar breytingar à vaktlistanum",
"tog-watchlisthidecategorization": "Fela flokkun á sÃðum",
@@ -161,6 +162,7 @@
"noindex-category": "Ãraðaðar skrár",
"broken-file-category": "SÃður með brotna skráartengla",
"categoryviewer-pagedlinks": "($1) ($2)",
+ "category-header-numerals": "$1â$2",
"about": "Um",
"article": "EfnissÃða",
"newwindow": "(opnast à nýjum glugga)",
@@ -182,12 +184,13 @@
"tagline": "Ãr {{SITENAME}}",
"help": "Hjálp",
"search": "Leit",
+ "search-ignored-headings": " # \n# Headings that will be ignored by search.\n# Changes to this take effect as soon as the page with the heading is indexed.\n# You can force page reindexing by doing a null edit.\n# The syntax is as follows:\n# * Everything from a \"#\" character to the end of the line is a comment.\n# * Every non-blank line is the exact title to ignore, case and everything.\nReferences\nExternal links\nSee also\n #
",
"searchbutton": "Leita",
"go": "Ãfram",
"searcharticle": "Ãfram",
- "history": "Breytingaskrá",
+ "history": "Breytingaskrá sÃðu",
"history_short": "Breytingaskrá",
- "history_small": "skrá",
+ "history_small": "breytingaskrá",
"updatedmarker": "uppfært frá sÃðustu heimsókn minni",
"printableversion": "Prentvæn útgáfa",
"permalink": "Varanlegur tengill",
@@ -329,6 +332,7 @@
"missingarticle-rev": "(breyting#: $1)",
"missingarticle-diff": "(Munur: $1, $2)",
"readonly_lag": "Gagnagrunninum hefur verið læst sjálfkrafa á meðan undirvefþjónarnir reyna að hafa à við aðalvefþjóninn",
+ "nonwrite-api-promise-error": "HTTP-hausinn 'Promise-Non-Write-API-Action' var sendur en beiðnin var til API-skrifeiningar.",
"internalerror": "Kerfisvilla",
"internalerror_info": "Innri villa: $1",
"internalerror-fatal-exception": "Banvæn undantekning af gerðinni \"$1\"",
@@ -350,7 +354,10 @@
"badtitletext": "Umbeðinn sÃðutitill er ógildur.",
"title-invalid-empty": "Umbeðinn sÃðutitill er auður eða inniheldur aðeins heiti nafnrýmis.",
"title-invalid-utf8": "Umbeðinn sÃðutitill inniheldur ógilda UTF-8 runu.",
+ "title-invalid-interwiki": "Umbeðinn sÃðutitill inniheldur interwiki-tengil sem ekki er hægt að nota à titlum.",
+ "title-invalid-talk-namespace": "Umbeðinn sÃðutitill vÃsar à spjallsÃðu sem ekki getur verið til.",
"title-invalid-characters": "Umbeðinn sÃðutitill inniheldur ógilda stafi: \"$1\".",
+ "title-invalid-relative": "Titillinn er með afstæða slóð. Afstæðir sÃðutitlar (./, ../) eru ekki gildir, þvà þeir verða oft ekki tiltækir à meðhöndlun à vöfrum notenda.",
"title-invalid-magic-tilde": "Umbeðinn sÃðutitill inniheldur ógilda tildurunu (
\nÃú berð ábyrgð á framlögum þÃnum, þau verða að vera þÃn skrif eða afrit texta à almannaeigu eða sambærilegs frjáls texta.\nAFRITIà EKKI HÃFUNDARRÃTTARVARIN VERK à ÃESSA SÃÃU ÃN LEYFIS",
"copyrightwarning2": "Vinsamlegast athugið að aðrir notendur geta breytt eða fjarlægt öll framlög til {{SITENAME}}.\nEf þú vilt ekki að textanum verði breytt skaltu ekki senda hann inn hér.
\nÃú lofar okkur einnig að þú hafir skrifað þetta sjálfur, að efnið sé à almannaeigu eða að það heyri undir frjálst leyfi. (sjá $1).\nEKKI SENDA INN HÃFUNDARRÃTTARVARIà EFNI ÃN LEYFIS RÃTTHAFA!",
@@ -680,6 +708,7 @@
"postedit-confirmation-created": "SÃðan hefur verið búin til.",
"postedit-confirmation-restored": "SÃðan hefur verið endurheimt.",
"postedit-confirmation-saved": "Breytingin þÃn hefur verið vistuð.",
+ "postedit-confirmation-published": "Breytingin þÃn var gefin út.",
"edit-already-exists": "Gat ekki skapað nýja sÃðu.\nHún er nú þegar til.",
"defaultmessagetext": "Sjálfgefinn texti skilaboða",
"content-failed-to-parse": "Gat ekki þáttað $2 efni samkvæmt $1 lÃkani: $3",
@@ -690,6 +719,7 @@
"content-model-text": "hreinn texti",
"content-model-javascript": "JavaScript",
"content-model-css": "CSS",
+ "content-model-json": "JSON",
"content-json-empty-object": "Tómur hlutur",
"content-json-empty-array": "Tómt fylki",
"duplicate-args-category": "SÃður sem nota tvÃteknar breytur við Ãtengingu sniðmáts",
@@ -742,6 +772,7 @@
"history-feed-description": "Breytingaskrá fyrir þessa sÃðu á wiki-sÃðunni",
"history-feed-item-nocomment": "$1 á $2",
"history-feed-empty": "SÃðan sem þú leitaðir að er ekki til.\nMöglegt er að henni hafi verið eytt út af þessari wiki sÃðu, eða endurnefnd.\nPrófaðu [[Special:Search|að leita á þessari wiki sÃðu]] að svipuðum sÃðum.",
+ "history-edit-tags": "Breyta merkjum á völdum breytingaútgáfum",
"rev-deleted-comment": "(breytingarágrip fjarlægt)",
"rev-deleted-user": "(notandanafn fjarlægt)",
"rev-deleted-event": "(smáatriði atriðs fjarlægt)",
@@ -813,7 +844,7 @@
"mergehistory-header": "Ãessi sÃða gerir þér kleift að sameina breytingaskrá tveggja sÃðna.\nSjáðu til þess að þessi breyting sameini breytingaskrárnar samfellt.",
"mergehistory-box": "Sameina breytingaskrár tveggja sÃðna:",
"mergehistory-from": "Upprunaleg sÃða:",
- "mergehistory-into": "ÃætlunarsÃða:",
+ "mergehistory-into": "MarksÃða:",
"mergehistory-list": "Breytingaskrár sem hægt er að sameina",
"mergehistory-merge": "Eftirtaldar útgáfur [[:$1]] má sameina [[:$2]].\nNotaðu valreitadálkinn til þess að sameina aðeins þær útgáfur sem stofnaðar voru fyrir uppgefið tÃmamark.\nAthugaðu að með þvà að nota flakktenglana er þessi dálkur endurstilltur.",
"mergehistory-go": "Sýna breytingar sem hægt er að sameina",
@@ -823,6 +854,8 @@
"mergehistory-fail": "Gat ekki sameinað breytingaskrár. Athugaðu vel sÃðuna og tÃmabreyturnar.",
"mergehistory-fail-bad-timestamp": "TÃmamerkið er ógilt.",
"mergehistory-fail-invalid-source": "FrumsÃðan er ógild.",
+ "mergehistory-fail-invalid-dest": "MarksÃða er ógild.",
+ "mergehistory-fail-self-merge": "UpprunasÃðan og marksÃðan eru sú sama.",
"mergehistory-no-source": "UpprunasÃðan $1 er ekki til.",
"mergehistory-no-destination": "MarksÃðan $1 er ekki til.",
"mergehistory-invalid-source": "UpprunasÃðan verður að hafa gildan titil.",
@@ -831,6 +864,7 @@
"mergehistory-comment": "Sameinaði [[:$1]] inn à [[:$2]]: $3",
"mergehistory-same-destination": "UpprunasÃðan og marksÃðan mega ekki vera sú sama",
"mergehistory-reason": "Ãstæða:",
+ "mergehistory-revisionrow": "$1 ($2) $3 . . $4 $5 $6",
"mergelog": "Sameiningar skrá",
"revertmerge": "Taka aftur sameiningu",
"mergelogpagetext": "Ãetta er skrá yfir sÃðustu sameiningar einnar sÃðu við aðra.",
@@ -846,6 +880,8 @@
"diff-multi-sameuser": "($1 {{PLURAL:$1|millibreyting ekki sýnd|millibreytingar ekki sýndar}} frá sama notandanum)",
"diff-multi-otherusers": "($1 {{PLURAL:$1|millibreyting ekki sýnd|millibreytingar ekki sýndar}} frá $2 {{PLURAL:$2|notanda|notendum}})",
"diff-multi-manyusers": "($1 {{PLURAL:$1|millibreyting ekki sýnd|millibreytingar ekki sýndar}} frá fleiri en $2 {{PLURAL:$2|notanda|notendum}}.)",
+ "diff-paragraph-moved-tonew": "Málsgrein var færð. Smelltu til að hoppa á nýju staðsetninguna.",
+ "diff-paragraph-moved-toold": "Málsgrein var færð. Smelltu til að hoppa á gömlu staðsetninguna.",
"difference-missing-revision": "$2 {{PLURAL:$2|útgáfa|útgáfur}} samanburðarins ($1) {{PLURAL:$2|fannst|fundust}} ekki.\n\nÃetta gerist oftast þegar úreldur samanburðartengill tengir á sÃðu sem hefur verið eytt.\nFrekari upplýsingar eru à [{{fullurl:{{#Special:Log}}/delete|page={{FULLPAGENAMEE}}}} eyðingarskránni].",
"searchresults": "Leitarniðurstöður",
"searchresults-title": "Leitarniðurstöður fyrir â$1â",
@@ -959,13 +995,14 @@
"timezoneregion-pacific": "Kyrrahaf",
"allowemail": "Leyfa öðrum notendum að senda mér tölvupóst",
"email-allow-new-users-label": "Leyfa tölvupóst frá nýskráðum notendum",
+ "email-blacklist-label": "Banna þessum notendum að senda mér tölvupóst:",
"prefs-searchoptions": "Leit",
"prefs-namespaces": "Nafnrými",
"default": "sjálfgefið",
"prefs-files": "Skrár",
"prefs-custom-css": "Sérsniðið CSS-útlit",
"prefs-custom-js": "Sérsniðin JavaScript",
- "prefs-common-css-js": "Sameiginleg CSS/JavaScript fyrir öll skinn:",
+ "prefs-common-config": "Sameiginleg CSS/JavaScript fyrir öll skinn:",
"prefs-reset-intro": "Ãessi sÃða er til að endurstilla kjörstillingarnar à sjálfgefin gildi.\nEkki er hægt að taka þessa breytingu til baka.",
"prefs-emailconfirm-label": "Staðfesting netfangs:",
"youremail": "Netfang:",
@@ -1012,11 +1049,13 @@
"prefs-diffs": "Breytingar",
"prefs-help-prefershttps": "Ãessi stilling tekur gildi à næsta skiptið sem þú skráir þig inn.",
"prefswarning-warning": "Ãú hefur gert breytingar á kjörstillingum þÃnum sem ekki er búið að vista.\nEf þú ferð af þessari sÃðu án þess að smella á \"$1\" verða kjörstillingar þÃnar ekki uppfærðar.",
+ "prefs-tabs-navigation-hint": "Ãbending: Ãú getur notað vinstri og hægri örvalyklana til að flakka á milli flipa à flipalistanum.",
"userrights": "Notandaréttindi",
"userrights-lookup-user": "Velja notanda",
"userrights-user-editname": "Skráðu notandanafn:",
"editusergroup": "Hlaða inn notanda hópum",
"editinguser": "Breyti réttindum {{GENDER:$1|notandans}} [[User:$1|$1]] $2",
+ "viewinguserrights": "Skoða notandaréttindi {{GENDER:$1|notandans}} [[User:$1|$1]] $2",
"userrights-editusergroup": "Breyta hópum {{GENDER:$1|notanda}}",
"userrights-viewusergroup": "Skoða hópa {{GENDER:$1|notanda}}",
"saveusergroups": "Vista {{GENDER:$1|notanda}} hópa",
@@ -1030,6 +1069,7 @@
"userrights-changeable-col": "Hópar sem þú getur breytt",
"userrights-unchangeable-col": "Hópar sem þú getur ekki breytt",
"userrights-irreversible-marker": "$1*",
+ "userrights-no-shorten-expiry-marker": "$1#",
"userrights-expiry-current": "Rennur út $1",
"userrights-expiry-none": "Rennur ekki út",
"userrights-expiry": "Rennur út:",
@@ -1126,6 +1166,9 @@
"right-sendemail": "Senda tölvupóst til annara notenda",
"right-managechangetags": "Búa til og (af)virkja [[Special:Tags|merki]] úr gagnagrunni",
"right-applychangetags": "Virkja [[Special:Tags|merki]] ásamt öðrum breytingum",
+ "grant-group-page-interaction": "Gagnvirkni með sÃður",
+ "grant-group-file-interaction": "Gagnvirkni með gögn",
+ "grant-group-watchlist-interaction": "Gagnvirkni með vaktlistann þinn",
"grant-group-email": "Senda tölvupóst",
"grant-group-high-volume": "Framkvæma magnaðgerðir",
"grant-group-customization": "SérsnÃðing og kjörstillingar",
@@ -1206,6 +1249,7 @@
"action-deletechangetags": "eyða merkjum úr gagnagrunni",
"action-purge": "hreinsa þessa sÃðu",
"nchanges": "$1 {{PLURAL:$1|breyting|breytingar}}",
+ "ntimes": "$1Ã",
"enhancedrc-since-last-visit": "$1 {{PLURAL:$1|sÃðan sÃðustu heimsókn}}",
"enhancedrc-history": "breytingaskrá",
"recentchanges": "Nýlegar breytingar",
@@ -1376,8 +1420,6 @@
"boteditletter": "v",
"unpatrolledletter": "!",
"number_of_watching_users_pageview": "[{{PLURAL:$1|notandi skoðandi|$1 notendur skoðandi}}]",
- "rc_categories": "Takmarka við flokka (aðskilja með \"|\"):",
- "rc_categories_any": "Allt valið",
"rc-change-size": "$1",
"rc-change-size-new": "$1 {{PLURAL:$1|bæt|bæti}} eftir breytingu",
"newsectionsummary": "Nýr hluti: /* $1 */",
@@ -1562,6 +1604,7 @@
"uploadstash-bad-path-unknown-type": "Ãþekkt gerð \"$1\".",
"uploadstash-bad-path-unrecognized-thumb-name": "Ãþekkt heiti á smámynd.",
"uploadstash-file-not-found-no-thumb": "Gat ekki náð à smámynd.",
+ "uploadstash-zero-length": "Lengd skráar er núll.",
"invalid-chunk-offset": "Ãgild raðbreyting bunka",
"img-auth-accessdenied": "Aðgangur óheimill",
"img-auth-nopathinfo": "PATH_INFO vantar.\nBiðlarinn þÃnn er ekki stilltur til að gefa upp þessar upplýsingar.\nÃær mega vera CGI-byggðar og mega ekki styðja img_auth.\nhttps://www.mediawiki.org/wiki/Special:MyLanguage/Manual:Image_Authorization",
@@ -1828,6 +1871,10 @@
"apisandbox-deprecated-parameters": "Ãrelt viðföng",
"apisandbox-submit-invalid-fields-title": "Sumir reitir eru ógildir",
"apisandbox-results": "Niðurstöður",
+ "apisandbox-request-url-label": "Slóð á beiðni:",
+ "apisandbox-request-format-json-label": "JSON",
+ "apisandbox-request-json-label": "JSON beiðni:",
+ "apisandbox-request-time": "TÃmi beiðnar: {{PLURAL:$1|$1 ms}}",
"apisandbox-alert-field": "Gildi þessa reits er ekki leyfilegt.",
"apisandbox-continue": "Halda áfram",
"apisandbox-continue-clear": "Hreinsa",
@@ -1913,6 +1960,7 @@
"listgrouprights-namespaceprotection-namespace": "Nafnrými",
"listgrouprights-namespaceprotection-restrictedto": "Réttindi sem leyfa notanda að breyta",
"listgrants-rights": "Réttindi",
+ "listgrants-grant-display": "$1 ($2)
",
"trackingcategories-name": "Heiti skilaboða",
"restricted-displaytitle-ignored": "SÃður með hunsaða sýnda titla",
"trackingcategories-nodesc": "Enginn lýsing tiltæk.",
@@ -2040,7 +2088,7 @@
"revertpage-nouser": "Tók aftur breytingar falins notanda til sÃðustu útgáfu {{GENDER:$1|[[User:$1|$1]]}}",
"rollback-success": "Tók til baka breytingar eftir {{GENDER:$3|$1}};\nsetti yfir á sÃðustu útgáfu eftir {{GENDER:$4|$2}}.",
"sessionfailure-title": "Mistök à setu",
- "sessionfailure": "LÃklega er vandamál með innskráningarsetuna þÃna;\nhætt hefur verið við þessa aðgerð sem vörn gegn mögulegu samskiptaráni setunar.\nFarðu aftur á fyrri sÃðu, endurhladdu hana og reyndu aftur.",
+ "sessionfailure": "LÃklega er vandamál með innskráningarsetuna þÃna;\nhætt hefur verið við þessa aðgerð sem vörn gegn mögulegu samskiptaráni setunar.\nReyndu að senda upplýsingarnar aftur inn.",
"changecontentmodel-title-label": "Titill sÃðu",
"changecontentmodel-reason-label": "Ãstæða:",
"changecontentmodel-submit": "Breyta",
@@ -2355,7 +2403,7 @@
"movenosubpage": "Ãessi sÃða hefur engar undirsÃður.",
"movereason": "Ãstæða:",
"revertmove": "taka til baka",
- "delete_and_move_text": "ÃttakssÃðan â[[:$1]]â er þegar til. Viltu eyða henni til þess að rýma til fyrir flutningi?",
+ "delete_and_move_text": "MarksÃðan â[[:$1]]â er þegar til. Viltu eyða henni til þess að rýma til fyrir flutningi?",
"delete_and_move_confirm": "Já, eyða sÃðunni",
"delete_and_move_reason": "Eytt til að rýma til fyrir flutning frá \"[[$1]]\"",
"selfmove": "Nýi titillinn er sá sami og gamli, þú verður að velja annan titil.",
@@ -2363,7 +2411,7 @@
"immobile-target-namespace": "Get ekki fært sÃður inn à nafnrýmið â$1â",
"immobile-target-namespace-iw": "Ãheimilt er að færa sÃðu með tungumálatengli.",
"immobile-source-page": "Ãessi sÃða er ekki færanleg.",
- "immobile-target-page": "Get ekki fært á áætlaðan titil.",
+ "immobile-target-page": "Get ekki fært á þennan úttakstitil.",
"bad-target-model": "Markstaðurinn sem þú valdir notast við annað innihaldslÃkan. Get ekki umbreytt frá $1 à $2.",
"imagenocrossnamespace": "Get ekki fært skrá à skrálaust nafnrými",
"nonfile-cannot-move-to-file": "Get ekki fært annað en skrár à nafnrými skráa.",
@@ -2415,7 +2463,7 @@
"thumbnail-dest-create": "Gat ekki vistað smámynd á markstað",
"thumbnail_invalid_params": "Breytur smámyndarinnar eru rangar",
"thumbnail_toobigimagearea": "Skrá með málsetningar stærri en $1",
- "thumbnail_dest_directory": "Mistókst að búa til niðurhals möppu",
+ "thumbnail_dest_directory": "Mistókst að búa til úttaksmöppu",
"thumbnail_image-type": "Enginn stuðningur er við þetta skráarsnið",
"thumbnail_gd-library": "Ãfullkomin stilling GD-aðgerðasafns: Vantar aðgerðina $1",
"thumbnail_image-missing": "Skrána virðist vanta: $1",
@@ -2717,6 +2765,46 @@
"sunday-at": "Sunnudag klukkan $1",
"yesterday-at": "à gær klukkan $1",
"bad_image_list": "Sniðið er eftirfarandi:\n\nAðeins listaeigindi (lÃnur sem byrja á *) eru meðtalin.\nFyrsti tengillinn à hverri lÃnu verður að tengja à slæma skrá.\nAllir sÃðari tenglar á sömu lÃnu eru taldir vera undantekningar, þ.e. sÃður þar sem að skráin kann að koma fyrir innfelld.",
+ "variantname-zh-hans": "hans",
+ "variantname-zh-hant": "hant",
+ "variantname-zh-cn": "cn",
+ "variantname-zh-tw": "tw",
+ "variantname-zh-hk": "hk",
+ "variantname-zh-mo": "mo",
+ "variantname-zh-sg": "sg",
+ "variantname-zh-my": "my",
+ "variantname-zh": "zh",
+ "variantname-gan-hans": "hans",
+ "variantname-gan-hant": "hant",
+ "variantname-gan": "gan",
+ "variantname-sr-ec": "sr-ec",
+ "variantname-sr-el": "sr-el",
+ "variantname-sr": "sr",
+ "variantname-kk-kz": "kk-kz",
+ "variantname-kk-tr": "kk-tr",
+ "variantname-kk-cn": "kk-cn",
+ "variantname-kk-cyrl": "kk-cyrl",
+ "variantname-kk-latn": "kk-latn",
+ "variantname-kk-arab": "kk-arab",
+ "variantname-kk": "kk",
+ "variantname-ku-arab": "ku-Arab",
+ "variantname-ku-latn": "ku-Latn",
+ "variantname-ku": "ku",
+ "variantname-tg-cyrl": "tg-Cyrl",
+ "variantname-tg-latn": "tg-Latn",
+ "variantname-tg": "tg",
+ "variantname-ike-cans": "ike-Cans",
+ "variantname-ike-latn": "ike-Latn",
+ "variantname-iu": "iu",
+ "variantname-shi-tfng": "shi-Tfng",
+ "variantname-shi-latn": "shi-Latn",
+ "variantname-shi": "shi",
+ "variantname-uz": "uz",
+ "variantname-uz-latn": "uz-Latn",
+ "variantname-uz-cyrl": "uz-Cyrl",
+ "variantname-crh": "crh",
+ "variantname-crh-latn": "crh-Latn",
+ "variantname-crh-cyrl": "crh-Cyrl",
"metadata": "Lýsigögn",
"metadata-help": "Ãessi skrá inniheldur viðbótarupplýsingar, lÃklega frá stafrænu myndavélinni eða skannanum sem notaður var til að gera eða stafræna hana.\nEf skránni hefur verið breytt, kann að vera að einhverjar upplýsingar eigi ekki við um hana.",
"metadata-expand": "Sýna frekari upplýsingar",
@@ -2823,9 +2911,13 @@
"exif-gpstrack": "Ãtt hreyfingar",
"exif-gpsimgdirection": "Stefna myndarinnar",
"exif-gpsmapdatum": "Landmælingagögn",
+ "exif-gpsdestlatituderef": "TilvÃsun breiddargráðu áfangastaðar",
"exif-gpsdestlatitude": "Breiddargráða áfangastaðar",
+ "exif-gpsdestlongituderef": "TilvÃsun lengdargráðu áfangastaðar",
"exif-gpsdestlongitude": "Lengdargráða áfangastaðar",
+ "exif-gpsdestbearingref": "TilvÃsun stefnu áfangastaðar",
"exif-gpsdestbearing": "Stefna til áfangastaðar",
+ "exif-gpsdestdistanceref": "TilvÃsun fyrir fjarlægð á áfangastað",
"exif-gpsdestdistance": "Fjarlægð á áfangastað",
"exif-gpsprocessingmethod": "GPS vinnsluaðferð",
"exif-gpsareainformation": "Heiti GPS-svæðis",
@@ -3321,6 +3413,7 @@
"version-libraries-description": "Lýsing",
"version-libraries-authors": "Höfundar",
"redirect": "Endurbeining miðað við skrá, notanda, sÃðu, útgáfu eða innskráningarauðkenni",
+ "redirect-summary": "Ãessi kerfissÃða endurbeinir á skrá (sé uppgefið skráarheiti), sÃðu (sé uppgefið auðkenni útgáfu eða auðkenni sÃðu), notandasÃðu (sé uppgefið tölulegt gildi notanda), eða færslu à aðgerðaskrá (sé uppgefið auðkenni færslu). Notkun: [[{{#Special:Redirect}}/file/Dæmi.jpg]], [[{{#Special:Redirect}}/page/64308]], [[{{#Special:Redirect}}/revision/328429]], [[{{#Special:Redirect}}/user/101]], or [[{{#Special:Redirect}}/logid/186]].",
"redirect-submit": "Ãfram",
"redirect-lookup": "Fletta upp:",
"redirect-value": "Gildi:",
@@ -3360,6 +3453,8 @@
"tag-filter": "[[Special:Tags|Merkja]]sÃa:",
"tag-filter-submit": "SÃa",
"tag-list-wrapper": "([[Special:Tags|{{PLURAL:$1|Merki}}]]: $2)",
+ "tag-mw-new-redirect": "Ný endurbeining",
+ "tag-mw-removed-redirect": "Fjarlægði endurbeiningu",
"tag-mw-replace": "Skipt út",
"tag-mw-undo": "Afturkalla",
"tags-title": "Merki",
@@ -3624,9 +3719,11 @@
"mediastatistics-header-text": "Textar",
"mediastatistics-header-executable": "Uppsetninga skrár",
"mediastatistics-header-archive": "Ãjappaðar skrár",
+ "mediastatistics-header-3d": "3D",
"mediastatistics-header-total": "Allar skrár",
"json-warn-trailing-comma": "$1 eftirfylgjandi {{PLURAL:$1|komma var fjarlægð|kommur voru fjarlægðar}} úr JSON",
"json-error-unknown": "Ãað varð villa à JSON. Villa: $1",
+ "json-error-depth": "Hámarki stafladýptar hefur verið náð",
"json-error-state-mismatch": "Ãgild eða ranglega uppsett JSON",
"json-error-ctrl-char": "Villa à stýritákni, hugsanlega röng stafatafla (encoding)",
"json-error-syntax": "Formvilla à málsetningu",
@@ -3674,5 +3771,42 @@
"sessionprovider-nocookies": "Vefkökur gætu verið óvirkar. Gakktu úr skugga um að smákökur séu virkar og byrjaðu svo aftur.",
"randomrootpage": "Handahófsvalin rótarsÃða",
"log-action-filter-all": "Allt",
- "log-action-filter-delete-delete": "Eyðing sÃðu"
+ "log-action-filter-delete-delete": "Eyðing sÃðu",
+ "authmanager-email-label": "Tölvupóstur",
+ "authmanager-email-help": "Tölvupóstfang",
+ "authmanager-realname-label": "Raunverulegt nafn",
+ "authmanager-realname-help": "Raunverulegt nafn notandans",
+ "authmanager-provider-password": "Auðkenning með lykilorði",
+ "authmanager-provider-password-domain": "Auðkenning með lykilorði og léni",
+ "authmanager-provider-temporarypassword": "Bráðabirgðalykilorð",
+ "authprovider-confirmlink-option": "$1 ($2)",
+ "authprovider-confirmlink-request-label": "Aðgangar sem ættu að tengjast",
+ "authprovider-confirmlink-success-line": "$1: Tókst að tengja.",
+ "authprovider-confirmlink-failed-line": "$1: $2",
+ "authprovider-resetpass-skip-label": "Sleppa",
+ "authprovider-resetpass-skip-help": "Sleppa að endursetja lykilorð.",
+ "authform-newtoken": "Teikn vantar. $1",
+ "authform-notoken": "Teikn vantar",
+ "authform-wrongtoken": "Röng teikn",
+ "specialpage-securitylevel-not-allowed-title": "Ekki leyft",
+ "cannotauth-not-allowed-title": "Heimild hafnað",
+ "cannotauth-not-allowed": "Ãú hefur ekki heimild til að nota þessa sÃðu",
+ "changecredentials": "Breyta auðkennum",
+ "changecredentials-submit": "Breyta auðkennum",
+ "credentialsform-provider": "Gerð auðkenna:",
+ "credentialsform-account": "Heiti aðgangs:",
+ "linkaccounts": "Tengja aðganga",
+ "linkaccounts-success-text": "Notandaaðgangurinn var tengdur.",
+ "linkaccounts-submit": "Tengja aðganga",
+ "unlinkaccounts": "Aftengja aðganga",
+ "unlinkaccounts-success": "Notandaaðgangurinn var aftengdur.",
+ "restrictionsfield-badip": "Ãgilt IP-vistfang eða vistfangasvið: $1",
+ "restrictionsfield-label": "Leyfð svið IP-vistfanga:",
+ "edit-error-short": "Villa: $1",
+ "edit-error-long": "Villur: \n\n$1",
+ "revid": "útgáfa $1",
+ "pageid": "auðkennisnúmer sÃðu $1",
+ "gotointerwiki": "Fer af {{SITENAME}}",
+ "pagedata-title": "SÃðugögn",
+ "pagedata-bad-title": "Ãgildur titill: $1."
}
diff --git a/languages/i18n/it.json b/languages/i18n/it.json
index aafc2d267d..621d4d242a 100644
--- a/languages/i18n/it.json
+++ b/languages/i18n/it.json
@@ -114,7 +114,8 @@
"Pierpao",
"Sakretsu",
"Yiyi",
- "Manvydasz"
+ "Manvydasz",
+ "S4b1nuz E.656"
]
},
"tog-underline": "Sottolinea i collegamenti:",
@@ -754,7 +755,7 @@
"userjspreview": "'''Questa è solo un'anteprima per provare il proprio JavaScript personale; le modifiche non sono ancora state salvate!'''",
"sitecsspreview": "Questa è solo un'anteprima del CSS. Le modifiche non sono ancora state salvate!'''",
"sitejspreview": "Questa è solo un'anteprima per provare il JavaScript; le modifiche non sono ancora state salvate!'''",
- "userinvalidcssjstitle": "Attenzione: non esiste alcun tema con nome \"$1\". Si noti che le pagine per i .css e .js personalizzati hanno l'iniziale del titolo minuscola, ad esempio {{ns:user}}:Esempio/vector.css e non {{ns:user}}:Esempio/Vector.css.",
+ "userinvalidconfigtitle": "Attenzione: non esiste alcun tema con nome \"$1\". Si noti che le pagine per i .css e .js personalizzati hanno l'iniziale del titolo minuscola, ad esempio {{ns:user}}:Esempio/vector.css e non {{ns:user}}:Esempio/Vector.css.",
"updated": "(Aggiornato)",
"note": "'''Nota:'''",
"previewnote": "'''Ricorda che questa è solo un'anteprima.'''\nLe tue modifiche NON sono ancora state salvate!",
@@ -1113,6 +1114,7 @@
"timezoneregion-indian": "Oceano Indiano",
"timezoneregion-pacific": "Oceano Pacifico",
"allowemail": "Consenti ad altri utenti di inviarmi email",
+ "email-allow-new-users-label": "Consenti email da nuovi utenti",
"email-blacklist-label": "Impedisci a questi utenti di inviarmi email:",
"prefs-searchoptions": "Ricerca",
"prefs-namespaces": "Namespace",
@@ -1120,7 +1122,7 @@
"prefs-files": "File",
"prefs-custom-css": "CSS personalizzato",
"prefs-custom-js": "JavaScript personalizzato",
- "prefs-common-css-js": "CSS/JavaScript condiviso per tutti i temi:",
+ "prefs-common-config": "CSS/JavaScript condiviso per tutti i temi:",
"prefs-reset-intro": "à possibile usare questa pagina per reimpostare le proprie preferenze a quelle predefinite del sito.\nL'operazione non può essere annullata.",
"prefs-emailconfirm-label": "Conferma dell'email:",
"youremail": "Indirizzo email:",
@@ -1381,6 +1383,7 @@
"recentchanges-legend": "Opzioni ultime modifiche",
"recentchanges-summary": "Questa pagina presenta le modifiche più recenti ai contenuti del sito.",
"recentchanges-noresult": "Nessuna modifica durante il periodo inserito che soddisfa questi criteri.",
+ "recentchanges-timeout": "Questa ricerca è scaduta. Potresti voler provare diversi parametri di ricerca.",
"recentchanges-network": "A causa di un errore tecnico, non è possibile caricare alcun risultato. Aggiorna la pagina.",
"recentchanges-notargetpage": "Inserisci sopra il nome di una pagina per vedere le modifiche relative a quella pagina.",
"recentchanges-feed-description": "Questo feed riporta le modifiche più recenti ai contenuti del sito.",
@@ -1506,6 +1509,7 @@
"rcfilters-view-namespaces-tooltip": "Filtra risultati per namespace",
"rcfilters-view-tags-tooltip": "Filtra risultati per etichette di modifica",
"rcfilters-view-return-to-default-tooltip": "Torna al menu filtri principale",
+ "rcfilters-view-tags-help-icon-tooltip": "Ulteriori informazioni sulle modifiche etichettate",
"rcfilters-liveupdates-button": "Aggiornamenti in tempo reale",
"rcfilters-liveupdates-button-title-on": "Disabilita gli aggiornamenti in tempo reale",
"rcfilters-liveupdates-button-title-off": "Mostra le nuove modifiche appena avvengono",
@@ -1552,8 +1556,6 @@
"newpageletter": "N",
"boteditletter": "b",
"number_of_watching_users_pageview": "[osservata da {{PLURAL:$1|un utente|$1 utenti}}]",
- "rc_categories": "Limita alle categorie (separate da \"|\"):",
- "rc_categories_any": "Qualsiasi fra quelle indicate",
"rc-change-size-new": "$1 {{PLURAL:$1|byte}} dopo la modifica",
"newsectionsummary": "/* $1 */ nuova sezione",
"rc-enhanced-expand": "Mostra dettagli",
@@ -2684,6 +2686,7 @@
"thumbnail_dest_directory": "Impossibile creare la directory di destinazione",
"thumbnail_image-type": "Tipo di immagine non supportato",
"thumbnail_gd-library": "Configurazione incompleta della libreria GD: funzione $1 mancante",
+ "thumbnail_image-size-zero": "La dimensione del file di immagine sembra essere zero.",
"thumbnail_image-missing": "Sembra essere mancante il file: $1",
"thumbnail_image-failure-limit": "Ci sono stati recentemente troppi tentativi falliti ($1 o più) di generare questa miniatura. Riprova più tardi.",
"import": "Importa pagine",
@@ -3368,6 +3371,7 @@
"confirmrecreate": "L'utente [[User:$1|$1]] ([[User talk:$1|discussioni]]) ha cancellato questa pagina dopo che hai iniziato a modificarla, per il seguente motivo: ''$2''\nPer favore, conferma che vuoi veramente ricreare questa pagina.",
"confirmrecreate-noreason": "L'utente [[User:$1|$1]] ([[User talk:$1|discussioni]]) {{GENDER:$1|ha cancellato}} questa pagina dopo che hai iniziato a modificarla. Per favore, conferma che vuoi veramente ricreare questa pagina.",
"recreate": "Ricrea",
+ "confirm-purge-title": "Aggiorna questa pagina",
"confirm_purge_button": "OK",
"confirm-purge-top": "Vuoi pulire la cache di questa pagina?",
"confirm-purge-bottom": "Ripulire la cache di una pagina consente di mostrare la sua versione più aggiornata.",
@@ -3836,6 +3840,8 @@
"pagelang-reason": "Motivo",
"pagelang-submit": "Invia",
"pagelang-nonexistent-page": "La pagina $1 non esiste.",
+ "pagelang-unchanged-language": "La pagina $1 è già impostata alla lingua $2.",
+ "pagelang-unchanged-language-default": "La pagina $1 è gia impostata alla lingua del contenuto predefinito del wiki.",
"pagelang-db-failed": "Il database non è stato in grado di modificare la lingua della pagina.",
"right-pagelang": "Modifica la lingua della pagina",
"action-pagelang": "modificare la lingua della pagina",
diff --git a/languages/i18n/ja.json b/languages/i18n/ja.json
index 6be5b5db88..a229721105 100644
--- a/languages/i18n/ja.json
+++ b/languages/i18n/ja.json
@@ -737,7 +737,7 @@
"userjspreview": "å©ç¨è
JavaScriptã試é¨/ãã¬ãã¥ã¼ãã¦ããã ãã«éãã¾ããã\nã¾ã ä¿åããã¦ãã¾ãã!",
"sitecsspreview": "ããã§ã¯ãCSSããã¬ãã¥ã¼ãã¦ããã ãã«éãã¾ããã\nã¾ã ä¿åããã¦ãã¾ãã!",
"sitejspreview": "ããã§ã¯ãJavaScriptããã¬ãã¥ã¼ãã¦ããã ãã«éãã¾ããã\nã¾ã ä¿åããã¦ãã¾ãã!",
- "userinvalidcssjstitle": "è¦å:ã$1ãã¨ããå¤è£
ã¯ããã¾ããã\nã«ã¹ã¿ã .css/.js ãã¼ã¸ã§ã¯ãã¼ã¸åãå°æåã«ãã¦ãã ãããä¾: {{ns:user}}:Hoge/Vector.css ã§ã¯ãªã {{ns:user}}:Hoge/vector.css",
+ "userinvalidconfigtitle": "è¦å:ã$1ãã¨ããå¤è£
ã¯ããã¾ããã\nã«ã¹ã¿ã .css/.js ãã¼ã¸ã§ã¯ãã¼ã¸åãå°æåã«ãã¦ãã ãããä¾: {{ns:user}}:Hoge/Vector.css ã§ã¯ãªã {{ns:user}}:Hoge/vector.css",
"updated": "(æ´æ°)",
"note": "ãç¥ãã:",
"previewnote": "ããã¯ãã¬ãã¥ã¼ã§ãã\nå¤æ´å
容ã¯ã¾ã ä¿åããã¦ãã¾ãã!",
@@ -794,6 +794,7 @@
"postedit-confirmation-created": "ãã¼ã¸ãä½æãã¾ããã",
"postedit-confirmation-restored": "ãã¼ã¸ã復å
ãã¾ããã",
"postedit-confirmation-saved": "ç·¨éãä¿åãã¾ããã",
+ "postedit-confirmation-published": "ããªãã®ç·¨éã¯å
¬éããã¾ããã",
"edit-already-exists": "æ°ãããã¼ã¸ãä½æã§ãã¾ããã§ããã\nãã®ãã¼ã¸ã¯æ¢ã«åå¨ãã¾ãã",
"defaultmessagetext": "æ¢å®ã®ã¡ãã»ã¼ã¸æ",
"content-failed-to-parse": "$2ã®ã³ã³ãã³ãã$1ã¢ãã«ã¨ãã¦æ§æ解æã§ãã¾ããã§ãã: $3",
@@ -1106,7 +1107,7 @@
"prefs-files": "ãã¡ã¤ã«",
"prefs-custom-css": "ã«ã¹ã¿ã CSS",
"prefs-custom-js": "ã«ã¹ã¿ã JavaScript",
- "prefs-common-css-js": "ãã¹ã¦ã®å¤è£
ã«å
±éã®CSSã¨JavaScript:",
+ "prefs-common-config": "ãã¹ã¦ã®å¤è£
ã«å
±éã®CSSã¨JavaScript:",
"prefs-reset-intro": "ãã®ãã¼ã¸ã使ç¨ããã¨ãèªåã®å人è¨å®ããã®ãµã¤ãã®åæè¨å®ã«æ»ãã¾ãã\nãã®æä½ã¯åãæ¶ãã¾ããã",
"prefs-emailconfirm-label": "ã¡ã¼ã«ã¢ãã¬ã¹ã®ç¢ºèª:",
"youremail": "ã¡ã¼ã«ã¢ãã¬ã¹:",
@@ -1507,6 +1508,9 @@
"rcfilters-preference-label": "æè¿ã®æ´æ°ã®æ¹åçãé ã",
"rcfilters-preference-help": "2017å¹´ã®ã¤ã³ã¿ã¼ãã§ã¼ã¹æ´æ°ãå½æ追å ããã以æ¥ã®æ°ãããã¼ã«ã®ä½¿ç¨ãæãã",
"rcfilters-filter-showlinkedfrom-label": "ãªã³ã¯å
ãã¼ã¸ã®å¤æ´ã表示ãã",
+ "rcfilters-filter-showlinkedfrom-option-label": "é¸æããã¦ãããã¼ã¸ãããªã³ã¯ããã¦ãããã¼ã¸",
+ "rcfilters-filter-showlinkedto-label": "ãªã³ã¯å
ãã¼ã¸ã®å¤æ´ã表示ãã",
+ "rcfilters-filter-showlinkedto-option-label": "é¸æããã¦ãããã¼ã¸ã«ãªã³ã¯ãã¦ãããã¼ã¸",
"rcfilters-target-page-placeholder": "ãã¼ã¸åï¼ã¾ãã¯ã«ãã´ãªåï¼ãå
¥å",
"rcnotefrom": "以ä¸ã¯$3 $4以éã®{{PLURAL:$5|æ´æ°ã§ã}} (æ大 $1 件)ã",
"rclistfromreset": "æ¥ææå®ããªã»ãã",
@@ -1542,8 +1546,6 @@
"boteditletter": "ã",
"unpatrolledletter": "!",
"number_of_watching_users_pageview": "[{{PLURAL:$1|$1 人ã®å©ç¨è
}}ãã¦ã©ãããã¦ãã¾ã]",
- "rc_categories": "ã«ãã´ãªãéå® (ã|ãã§åºåã):",
- "rc_categories_any": "é¸æãããã®å
¨é¨",
"rc-change-size": "$1",
"rc-change-size-new": "å¤æ´å¾ã¯ $1 {{PLURAL:$1|ãã¤ã}}",
"newsectionsummary": "/* $1 */ æ°ããç¯",
@@ -1566,6 +1568,7 @@
"uploadbtn": "ãã¡ã¤ã«ãã¢ãããã¼ã",
"reuploaddesc": "ã¢ãããã¼ããä¸æ¢ãã¦ã¢ãããã¼ããã©ã¼ã ã¸æ»ã",
"upload-tryagain": "ä¿®æ£ãããã¡ã¤ã«è§£èª¬ãæ稿",
+ "upload-tryagain-nostash": "åã¢ãããã¼ãããããã¡ã¤ã«ã¨å¤æ´ããã説æã®éä¿¡",
"uploadnologin": "ãã°ã¤ã³ãã¦ãã¾ãã",
"uploadnologintext": "ãã¡ã¤ã«ãã¢ãããã¼ãããã«ã¯$1ãã¦ãã ããã",
"upload_directory_missing": "ã¢ãããã¼ãå
ãã£ã¬ã¯ã㪠($1) ãè¦ã¤ããã¾ããã§ãããã¦ã§ã ãµã¼ãã¼ã«ããä½æãã§ãã¾ããã§ããã",
@@ -1625,6 +1628,7 @@
"file-deleted-duplicate-notitle": "ãã®ãã¡ã¤ã«ã¨åä¸ã®ãã¡ã¤ã«ãã以åã«åé¤ãããã¼ã¸åãç§å¿ããã¾ããã\nå度ã¢ãããã¼ããããåã«ãç§å¿ããããã¡ã¤ã«ã®ãã¼ã¿ãé²è¦§ãã権éãæã£ãå©ç¨è
ã«é£çµ¡ãã¦ãç¶æ³ãç²¾æ»ãã¦ããã£ã¦ãã ããã",
"uploadwarning": "ã¢ãããã¼ãè¦å",
"uploadwarning-text": "ä¸è¨ã®ãã¡ã¤ã«è§£èª¬ãä¿®æ£ãã¦å試è¡ãã¦ãã ããã",
+ "uploadwarning-text-nostash": "ãã¡ã¤ã«ãåã¢ãããã¼ãããä¸ã®èª¬æãå¤æ´ãã¦ããä¸åº¦ã試ããã ããã",
"savefile": "ãã¡ã¤ã«ãä¿å",
"uploaddisabled": "ã¢ãããã¼ãæ©è½ã¯ç¡å¹ã«ãªã£ã¦ãã¾ãã",
"copyuploaddisabled": "URL ããã®ã¢ãããã¼ãã¯ç¡å¹ã«ãªã£ã¦ãã¾ãã",
@@ -1751,6 +1755,17 @@
"uploadstash-bad-path-unrecognized-thumb-name": "ãµã ãã¤ã«åãèªèã§ãã¾ããã",
"uploadstash-bad-path-no-handler": "ãã¡ã¤ã« $2 ã® MIME $1 ã«å¯¾ãããã³ãã©ãè¦ã¤ããã¾ããã",
"uploadstash-bad-path-bad-format": "ãã¼ã$1ãã¯é©åãªå½¢å¼ã§ã¯ããã¾ããã",
+ "uploadstash-file-not-found-no-thumb": "ãµã ãã¤ã«ãåå¾ã§ãã¾ããã§ããã",
+ "uploadstash-file-not-found-no-local-path": "ã¹ã±ã¼ãªã³ã°ãããé
ç®ã®ãã¼ã«ã«ãã¹ã¯ããã¾ããã",
+ "uploadstash-file-not-found-no-object": "ãµã ãã¤ã«ã®ãã¼ã«ã«ãã¡ã¤ã«ãªãã¸ã§ã¯ããä½æã§ãã¾ããã§ããã",
+ "uploadstash-file-not-found-no-remote-thumb": "ãµã ãã¤ã«ã®åå¾ã«å¤±æãã¾ãã:$1\nURL = $2",
+ "uploadstash-file-not-found-missing-content-type": "ã³ã³ãã³ãã¿ã¤ããããã¼ãããã¾ããã",
+ "uploadstash-file-not-found-not-exists": "ãã¹ãè¦ã¤ãããªãããã¾ãã¯ãã¬ã¼ã³ãã¡ã¤ã«ã§ã¯ããã¾ããã",
+ "uploadstash-file-too-large": "$1ãã¤ããè¶
ãããã¡ã¤ã«ã¯æä¾ã§ãã¾ããã",
+ "uploadstash-not-logged-in": "ã¦ã¼ã¶ã¼ã¯ãã°ã¤ã³ãã¦ãã¾ããããã¡ã¤ã«ã¯ã¦ã¼ã¶ã¼ã«å±ãã¦ããå¿
è¦ãããã¾ãã",
+ "uploadstash-wrong-owner": "ãã®ãã¡ã¤ã«ï¼$1ï¼ã¯ç¾å¨ã®ã¦ã¼ã¶ã¼ã«å±ãã¦ãã¾ããã",
+ "uploadstash-no-such-key": "ãã®ãããªéµï¼$1ï¼ã¯åé¤ã§ãã¾ããã",
+ "uploadstash-no-extension": "æ¡å¼µæ©è½ãnullã§ãã",
"uploadstash-zero-length": "ãã¡ã¤ã«ã®ãµã¤ãºãã¼ãã§ãã",
"invalid-chunk-offset": "ç¡å¹ãªãã£ã³ã¯ãªãã»ãã",
"img-auth-accessdenied": "ã¢ã¯ã»ã¹ãæå¦ããã¾ãã",
@@ -1898,6 +1913,8 @@
"pageswithprop-legend": "ãã¼ã¸ããããã£ããããã¼ã¸",
"pageswithprop-text": "ãã®ãã¼ã¸ã§ã¯ãç¹å®ã®ãã¼ã¸ããããã£ãæã¤ãã¼ã¸ãåæãã¾ãã",
"pageswithprop-prop": "ããããã£å:",
+ "pageswithprop-reverse": "éé ã«ã½ã¼ããã",
+ "pageswithprop-sortbyvalue": "ããããã£ã®å¤ã§ã½ã¼ã",
"pageswithprop-submit": "å®è¡",
"pageswithprop-prophidden-long": "ããããã£å¤ã®ããã¹ããé·ãããé表示 ($1)",
"pageswithprop-prophidden-binary": "ããããã£å¤ã®ãã¤ããªãé·ãããé表示 ($1)",
@@ -2029,6 +2046,7 @@
"apisandbox-sending-request": "APIè¦æ±ãéä¿¡ä¸...",
"apisandbox-loading-results": "APIçµæãåä¿¡ä¸...",
"apisandbox-results-error": "API åãåããã®å¿çãèªã¿è¾¼ã¿ä¸ã«ã¨ã©ã¼ãçºçãã¾ãã: $1ã",
+ "apisandbox-results-login-suppressed": "ãã®ãªã¯ã¨ã¹ãã¯ããã©ã¦ã¶ã®åãOriginã®ã»ãã¥ãªãã£ããã¤ãã¹ããããã«ä½¿ç¨ãããããããã°ã¢ã¦ãããã¦ã¼ã¶ã¼ã¨ãã¦å¦çããã¦ãã¾ãã APIãµã³ãããã¯ã¹ã®èªåãã¼ã¯ã³å¦çã¯ããã®ãããªãªã¯ã¨ã¹ãã§ã¯æ£ããæ©è½ããªããããæåã§å
¥åãã¦ãã ããã",
"apisandbox-request-selectformat-label": "ãªã¯ã¨ã¹ããã¼ã¿ã次ã®å½¢å¼ã§è¡¨ç¤º",
"apisandbox-request-format-url-label": "URLã¯ã¨ãªæåå",
"apisandbox-request-url-label": "ãªã¯ã¨ã¹ã URL:",
@@ -2041,6 +2059,7 @@
"apisandbox-alert-field": "ãã®æ¬ã®å¤ãæå¹ã§ã¯ããã¾ããã",
"apisandbox-continue": "ç¶è¡",
"apisandbox-continue-clear": "æ¶å»",
+ "apisandbox-continue-help": "{{int:apisandbox-continue}}ã¯æå¾ã®ãªã¯ã¨ã¹ãã[https://www.mediawiki.org/wiki/API:Query#Continuing_queries ç¶ç¶]ãã¾ãã{{int:apisandbox-continue-clear}}ã¯ãç¶ç¶é¢é£ã®ãã©ã¡ã¼ã¿ãã¯ãªã¢ãã¾ãã",
"apisandbox-param-limit": "æ大é度ãå©ç¨ããã«ã¯maxã¨å
¥åãã¦ãã ããã",
"apisandbox-multivalue-all-namespaces": "$1 (å
¨ã¦ã®åå空é)",
"apisandbox-multivalue-all-values": "$1 (å
¨ã¦ã®å¤)",
@@ -2265,6 +2284,7 @@
"delete-warning-toobig": "ãã®ãã¼ã¸ã«ã¯ã $1çãè¶
ããç·¨éå±¥æ´ãããã¾ãã\nåé¤ããã¨ã{{SITENAME}}ã®ãã¼ã¿ãã¼ã¹å¦çã«å¤§ããªè² è·ããããã¾ãã\nååã«æ³¨æãã¦ãã ããã",
"deleteprotected": "ãã®ãã¼ã¸ã¯ä¿è·ããã¦ããããåé¤ã§ãã¾ããã",
"deleting-backlinks-warning": "è¦å: åé¤ãããã¨ãã¦ãããã¼ã¸ã¯ã[[Special:WhatLinksHere/{{FULLPAGENAME}}|ä»ã®ãã¼ã¸]]ãããªã³ã¯ã¾ãã¯åç
§èªã¿è¾¼ã¿ããã¦ãã¾ãã",
+ "deleting-subpages-warning": "è¦å:åé¤ãããã¨ãã¦ãããã¼ã¸ã¯ã[[Special:PrefixIndex/{{FULLPAGENAME}}/|{{PLURAL:$1|ãµããã¼ã¸|$1 åã®ãµããã¼ã¸|51=50 å以ä¸ã®ãµããã¼ã¸}}]]ãããã¾ãã",
"rollback": "ç·¨éãå·»ãæ»ã",
"rollbacklink": "å·»ãæ»ã",
"rollbacklinkcount": "$1{{PLURAL:$1|ç·¨é}}ãå·»ãæ»ã",
@@ -2280,7 +2300,7 @@
"rollback-success": "{{GENDER:$3|$1}}ã«ããç·¨éãå·®ãæ»ãã¾ããã\n{{GENDER:$4|$2}}ã«ããç´åã®çã¸å¤æ´ããã¾ããã",
"rollback-success-notify": "$1ã«ããç·¨éãå·®ãæ»ãã¾ããã\n$2ã«ããç´åã®çã¸å¤æ´ããã¾ããã[$3 å¤æ´ã表示]",
"sessionfailure-title": "ã»ãã·ã§ã³ã®å¤±æ",
- "sessionfailure": "ãã°ã¤ã³ã®ã»ãã·ã§ã³ã«åé¡ãçºçãã¾ããã\nã»ãã·ã§ã³ä¹ã£åããé²ããããæä½ãåãæ¶ãã¾ããã\nåã®ãã¼ã¸ã¸æ»ã£ã¦å度èªã¿è¾¼ãã å¾ã«ãããä¸åº¦è©¦ãã¦ãã ããã",
+ "sessionfailure": "ãã°ã¤ã³ã®ã»ãã·ã§ã³ã«åé¡ãçºçãã¾ããã\nã»ãã·ã§ã³ä¹ã£åããé²ããããæä½ãåãæ¶ãã¾ããã\nãã©ã¼ã ãåéä¿¡ãã¦ãã ããã",
"changecontentmodel": "ãã¼ã¸ã®ã³ã³ãã³ãã»ã¢ãã«ã®å¤æ´",
"changecontentmodel-legend": "ã³ã³ãã³ãã¢ãã«ãå¤æ´",
"changecontentmodel-title-label": "ãã¼ã¸å",
@@ -2384,6 +2404,7 @@
"undelete-search-title": "åé¤ããããã¼ã¸ã®æ¤ç´¢",
"undelete-search-box": "åé¤ããããã¼ã¸ã®æ¤ç´¢",
"undelete-search-prefix": "表示ãéå§ãããã¼ã¸å:",
+ "undelete-search-full": "次ã®å
容ãå«ããã¼ã¸ã¿ã¤ãã«ã表示ãã:",
"undelete-search-submit": "æ¤ç´¢",
"undelete-no-results": "åé¤ã®ä¿åçã«ãä¸è´ãããã¼ã¸ãè¦ã¤ããã¾ããã§ããã",
"undelete-filename-mismatch": "ãã¡ã¤ã«ã® $1 æç¹ã®çã復å
ã§ãã¾ãã: ãã¡ã¤ã«åãä¸è´ãã¾ããã",
@@ -2555,6 +2576,8 @@
"ipb_blocked_as_range": "ã¨ã©ã¼: IPã¢ãã¬ã¹$1ã¯ç´æ¥ãããã¯ããã¦ãããããããã¯è§£é¤ã§ãã¾ããã§ããã\nãã ãã$2ã®ç¯å²ã§ãããã¯ããã¦ããããã¡ãã®ãããã¯ã¯å¥é解é¤ã§ãã¾ãã",
"ip_range_invalid": "IPç¯å²ãç¡å¹ã§ãã",
"ip_range_toolarge": "/$1ããåºç¯å²ã®ç¯å²ãããã¯ã¯è¨±å¯ããã¦ãã¾ããã",
+ "ip_range_exceeded": "IPç¯å²ãæ大ç¯å²ãè¶
ãã¦ãã¾ãã許å¯ãããç¯å²:/$1",
+ "ip_range_toolow": "IPç¯å²ã¯äºå®ä¸è¨±å¯ããã¾ããã",
"proxyblocker": "ãããã·ãããã¯ä¿",
"proxyblockreason": "ãã®IPã¢ãã¬ã¹ã¯å
¬éãããã·ã§ãããããããã¯ããã¦ãã¾ãã\nã使ç¨ä¸ã®ã¤ã³ã¿ã¼ããããµã¼ãã¹ãããã¤ãã¼ã¾ãã¯æå±çµç¹ã®æè¡æ
å½è
ã«é£çµ¡ãã¦ããããæ·±å»ãªã»ãã¥ãªãã£åé¡ã§ãããã¨ãä¼ãã¦ãã ããã",
"sorbs": "DNSBL",
@@ -2685,6 +2708,7 @@
"thumbnail_dest_directory": "åºåãã£ã¬ã¯ããªãä½æã§ãã¾ãã",
"thumbnail_image-type": "対å¿ãã¦ããªãç»åå½¢å¼ã§ã",
"thumbnail_gd-library": "GDã©ã¤ãã©ãªã®æ§æãä¸å®å
¨ã§ã: é¢æ°$1ãä¸è¶³",
+ "thumbnail_image-size-zero": "ã¤ã¡ã¼ã¸ãã¡ã¤ã«ã®ãµã¤ãºãã¼ãã®ããã§ãã",
"thumbnail_image-missing": "ãã¡ã¤ã«ãè¦ã¤ããã¾ãã: $1",
"thumbnail_image-failure-limit": "ãã®ãµã ãã¤ã«ã®æç»ã«å¤±æããåæ°ï¼$1 å以ä¸ï¼ãä¸éãè¶
ãã¾ããããã°ããå¾ã§ããä¸åº¦ã試ããã ããã",
"import": "ãã¼ã¸ãã¼ã¿ã®åãè¾¼ã¿",
@@ -2700,6 +2724,7 @@
"import-mapping-subpage": "次ã®ãã¼ã¸ã®ä¸ä½ãã¼ã¸ã¨ãã¦ã¤ã³ãã¼ã:",
"import-upload-filename": "ãã¡ã¤ã«å:",
"import-upload-username-prefix": "ã¤ã³ã¿ã¼ã¦ã£ãæ¥é è¾:",
+ "import-assign-known-users": "æå®ãããã¦ã¼ã¶ã¼ããã®ã¦ã£ãã«åå¨ããå ´åãã®ã¦ã¼ã¶ã¼ã«ç·¨éãå²ãå½ã¦ã",
"import-comment": "ã³ã¡ã³ã:",
"importtext": "å
ã®ã¦ã£ãã§[[Special:Export|æ¸ãåºãæ©è½]]ã使ç¨ãã¦ãã¡ã¤ã«ã«æ¸ãåºãã¦ãã ããã\nãããã³ã³ãã¥ã¼ã¿ã¼ã«ä¿åããå¾ããã¡ãã¸ã¢ãããã¼ããã¦ãã ããã",
"importstart": "ãã¼ã¸ãåãè¾¼ã¿ä¸...",
@@ -2708,6 +2733,7 @@
"imported-log-entries": "$1 件ã®{{PLURAL:$1|è¨é²é
ç®}}ãåãè¾¼ã¿ã¾ããã",
"importfailed": "åãè¾¼ã¿ã«å¤±æãã¾ãã: {{ns:user}}:Name/vector.css
â, un \n â{{ns:user}}:Name/vector.js
â heijÃe.",
+ "userinvalidconfigtitle": "Opjepass: Et jitt keij UÃsinn met dämm Nahme: â$1â -\ndängk drahn, dat ene Metmaacher eije Datteije för et UÃsinn han kann, un dat di met kleijne Bohchstahve\naanfange dun, alsu etwa: â{{ns:user}}:Name/vector.css
â, un \n â{{ns:user}}:Name/vector.js
â heijÃe.",
"updated": "(Aanjepack)",
"note": "'''Opjepass:'''",
"previewnote": "Heh kütt blohà en Aanseesch vöraff â Ding Ãnderonge sin noch nidd em Wikki faÃjehallde!",
@@ -1001,7 +1001,7 @@
"prefs-files": "Dateie",
"prefs-custom-css": "Selfsjemaat Cascading Style Sheet",
"prefs-custom-js": "Selfsjemaat JavaSkripp",
- "prefs-common-css-js": "Gemeinsam CSS un JavaSkrepp för all de Bovverfläshe:",
+ "prefs-common-config": "Gemeinsam CSS un JavaSkrepp för all de Bovverfläshe:",
"prefs-reset-intro": "Op dä Sigg kanns De Ding Ennschtällong op dämm Wikki singe Schandatt setze lohÃe. Ãvver OpjepaÃ: Do jidd et keine âRetuhrâ-Knopp för!",
"prefs-emailconfirm-label": "Beshtätejung övver e-mail:",
"youremail": "E-Mail *",
@@ -1289,8 +1289,6 @@
"boteditletter": "B",
"unpatrolledletter": "!",
"number_of_watching_users_pageview": "[{{PLURAL:$1|eine|$1|kein}} Oppasser]",
- "rc_categories": "Bejränz op de Saachjroppe (schrihv â|â dozwesche):",
- "rc_categories_any": "Ãhndseijne vun dä aanjejovve Saachjroppe",
"rc-change-size": "$1 {{PLURAL:$1|Byte|Bytes}}",
"rc-change-size-new": "$1 {{PLURAL:$1|Byte|Bytes|Bytes}} noh dem Ãndere",
"newsectionsummary": "Neuje Afschnet /* $1 */",
diff --git a/languages/i18n/ku-latn.json b/languages/i18n/ku-latn.json
index 2a054643d0..155470529e 100644
--- a/languages/i18n/ku-latn.json
+++ b/languages/i18n/ku-latn.json
@@ -908,7 +908,6 @@
"newpageletter": "Nû",
"boteditletter": "b",
"number_of_watching_users_pageview": "[{{PLURAL:$1|bikarhênerek|$1 bikarhêner}} vê rûpelê {{PLURAL:$1|diÅopîne|diÅopînin}}.]",
- "rc_categories_any": "Qet",
"rc-change-size-new": "PiÅtî guhertinê $1 {{PLURAL:$1|bayt}}",
"newsectionsummary": "/* $1 */ beÅeke nû",
"rc-enhanced-expand": "Hûragahiyan nîÅan bide",
@@ -1497,7 +1496,7 @@
"delete_and_move_reason": "Jêbir ji bo navguherandinê",
"immobile-source-page": "Navê vê rûpelê nikare were guherandin.",
"move-leave-redirect": "Beralîkirinekê bihêle",
- "export": "Rûpelan eksport bike",
+ "export": "Rûpelan derxîne",
"export-addcat": "Zêde bike",
"export-addns": "Zêde bike",
"export-download": "Weka dosyeyê qeyd bike",
diff --git a/languages/i18n/kum.json b/languages/i18n/kum.json
index bd008e6f59..187d3afb55 100644
--- a/languages/i18n/kum.json
+++ b/languages/i18n/kum.json
@@ -59,7 +59,11 @@
"category_header": "\"$1\" каÑегоÑиÑдан ÑагÑиÑалаÑ",
"subcategories": "СÑбкаÑегоÑиÑлаÑ",
"category-media-header": "\"$1\" каÑегоÑиÑдагÑÑ ÑапламлаÑ",
+ "category-empty": "\"ÐÑ ÐºÐ°ÑегоÑÐ¸Ñ Ð±ÑÑÑагÑÐ°Ñ Ð±Ð¾Ñ.\"",
"hidden-categories": "{{PLURAL:$1|ЯÑÑÑÑлгÑан каÑегоÑиÑ|ЯÑÑÑÑлгÑан каÑегоÑиÑлаÑ}}â",
+ "category-subcat-count": "{{PLURAL:$2|ÐÑ ÐºÐ°ÑегоÑиÑда Ñек ÑонггÑÑ Ð³ÐµÐ»ÐµÐ³ÐµÐ½ ÑÑпкаÑегоÑиÑÑÑ Ð±Ð°Ñ.|ÐÑ ÐºÐ°ÑегоÑиÑда {{PLURAL:$1|ÑÑпкаÑегоÑиÑ|$1 ÑÑпкаÑегоÑиÑлаÑ}} баÑ, жамда $2 ÑÑпкаÑегоÑиÑдан.}}",
+ "category-article-count": "{{PLURAL:$2|ÐÑ ÐºÐ°ÑегоÑиÑда ÑнгÑз гелеген Ð±Ð¸Ñ ÑагÑиÑа баÑ.|ÐÑ ÐºÐ°ÑегоÑиÑда Ð±Ð°Ñ $2 ÑагÑиÑÐ°Ð½Ñ {{PLURAL:$1|ÑагÑиÑаÑÑ}} гÑÑÑеÑилген.}}",
+ "category-file-count": "{{PLURAL:$2|ÐÑ ÐºÐ°ÑегоÑиÑда Ð±Ð¸Ñ Ñек ÑонггÑÑ Ð³ÐµÐ»ÐµÐ³ÐµÐ½ ÑÐ°Ð¿Ð»Ð°Ð¼Ñ Ð±Ð°Ñ.|СонггÑÑ Ð³ÐµÐ»ÐµÐ³ÐµÐ½ {{PLURAL:$1|Ñаплам|$1 ÑапламлаÑ}}{{PLURAL:$2|каÑегоÑиÑдадÑÑ|каÑегоÑиÑдадÑÑлаÑ}}}}.",
"listingcontinuesabbrev": "давам",
"noindex-category": "ÐндекÑленмейген ÑагÑиÑалаÑ",
"broken-file-category": "ÐÑлеймейген Ñаплам байланÑвлаÑÑ Ð±Ñлан ÑагÑиÑалаÑ",
@@ -104,6 +108,7 @@
"jumptosearch": "излев",
"aboutsite": "{{SITENAME}} гÑакÑÑнда",
"aboutpage": "Project:СÑпаÑлав",
+ "copyright": "ÐÑделиги $1 лиÑензиÑгÑа гÑÑе гиÑиÑли (баÑгÑаÑÑ Ð¼ÐµÐºÐµÐ½Ð»ÐµÐ½Ð¼ÐµÐ³ÐµÐ½ бÑÑа).",
"copyrightpage": "{{ns:project}}:ЯÑавÑÑ Ð³ÑакÑлаÑ",
"currentevents": "ÐÑалиги гÑаллаÑ",
"currentevents-url": "Project:ÐÑалиги гÑаллаÑ",
@@ -143,11 +148,12 @@
"nosuchspecialpage": "Ðлай Ñ
Ð°Ñ ÑагÑиÑаÑÑ ÑкÑдÑÑ",
"nospecialpagetext": "Сен Ñалап ÑÑген Ñ
Ð°Ñ ÑагÑиÑа ÑкÑ.\n\nÐÑÑÑÑ Ñ
Ð°Ñ ÑагÑиÑÐ°Ð»Ð°Ñ Ð±Ñлан Ñизме мÑнда: [[Special:SpecialPages|{{int:specialpages}}]].",
"badtitle": "ÐÑÑйÑÑмайгÑан аÑ",
+ "badtitletext": "ЧакÑÑÑÑлгÑан ÑагÑиÑÐ°Ð½Ñ Ð°ÑÑ Ð±ÑзÑÐºÑ Ñди, Ñда боÑ, Ñда Ñил-аÑа Ñда вики-аÑа байланÑвлаÑÑ ÑнгÑлÑÑ ÐºÑйде беÑилген Ñди.\nÐалики, аÑÑнда биÑ-Ñки ÑÑамайгÑан гÑаÑп беÑилген Ñди.",
"viewsource": "ÐÑÑÑÑ ÐºÐ¾Ð´Ñна кÑаÑамакÑ",
"viewsource-title": "$1 ÑагÑиÑÐ°Ð½Ñ Ð°ÑÐ»Ñ ÑекÑÑине кÑаÑамакÑ",
"viewsourcetext": "ÐÑ ÑагÑиÑÐ°Ð½Ñ Ð°ÑÐ»Ñ ÐºÐ¾Ð´Ñна кÑаÑап ва Ð¾Ð½Ñ ÐºÑплеп болаÑан.",
"userlogin-yourname": "ÐÑоллавÑÑ Ð°ÑÑ",
- "userlogin-yourname-ph": "ÐÑиÑабÑнг аÑÑн беÑ",
+ "userlogin-yourname-ph": "ÐÑиÑабÑÐ½Ð³Ð½Ñ Ð°ÑÑн беÑ",
"userlogin-yourpassword": "ЧеÑил",
"userlogin-yourpassword-ph": "ЧеÑилингни беÑ",
"createacct-yourpassword-ph": "ЧеÑилингни беÑ",
@@ -160,7 +166,7 @@
"createaccount": "Ð¯Ð½Ð³Ñ Ð±ÐµÑ ÑÑмек",
"userlogin-resetpassword-link": "ЧеÑилингни ÑнÑÑгÑанмÑÑан?",
"userlogin-helplink2": "ÐиÑÐ¸Ñ ÑаÑÐ»Ñ ÐºÑмек",
- "createacct-emailoptional": "ÐлекÑÑон поÑÐ½Ñ ÐµÑлеÑими (гÑÐ°Ð¶Ð°Ñ ÑкÑ)",
+ "createacct-emailoptional": "ÐлекÑÑон поÑÐ½Ñ ÐµÑлеÑими (гÑнгÑллÑ)",
"createacct-email-ph": "ÐлекÑÑон поÑÐ½Ñ ÐµÑлеÑимин беÑ",
"createacct-submit": "ÐеÑинг ÑÑа",
"createacct-benefit-heading": "{{SITENAME}} Ñени йимик Ð°Ð´Ð°Ð¼Ð»Ð°Ð½Ñ Ð¾ÑÑÐ°ÐºÑ Ð·Ð°Ð³ÑмаÑÑ.",
@@ -175,13 +181,13 @@
"passwordreset": "ЧеÑилни ÑнгÑдан бегеÑмек",
"bold_sample": "ÐÑалÑн маÑÑн",
"bold_tip": "ÐÑалÑн маÑÑн",
- "italic_sample": "ÐвÑнкÑÑ ÑекÑÑ",
- "italic_tip": "ÐвÑнкÑÑ ÑекÑÑ",
+ "italic_sample": "ÐвÑнкÑÑ Ð¼Ð°ÑÑн",
+ "italic_tip": "ÐвÑнкÑÑ Ð¼Ð°ÑÑн",
"link_sample": "ÐайланÑÐ²Ð½Ñ Ð°ÑÑ",
"link_tip": "ÐÑ Ð±Ð°Ð¹Ð»Ð°Ð½Ñв",
"extlink_sample": "http://www.example.com байланÑÐ²Ð½Ñ Ð°ÑÑ",
"extlink_tip": "ТÑÑ Ð±Ð°Ð¹Ð»Ð°Ð½Ñв (Ð±Ñ Ð¿ÑеÑикÑни http:// ÑÑде ÑакÑла)",
- "headline_sample": "ЯзÑвбаÑÐ½Ñ ÑекÑÑи",
+ "headline_sample": "ЯзÑвбаÑÐ½Ñ Ð¼Ð°ÑÑнÑ",
"headline_tip": "2 даÑÐ°Ð¶Ð°Ð½Ñ ÑзÑвбаÑÑ",
"nowiki_sample": "ФоÑмаÑланмагÑа геÑе ÑÑгÑл маÑÑÐ½Ð½Ñ Ð±ÐµÑи Ñал",
"nowiki_tip": "Ðики ÑоÑмаÑÐ»Ð°Ð²Ð½Ñ Ñан ÑÑме",
@@ -196,9 +202,15 @@
"preview": "ÐнгкÑаÑав",
"showpreview": "ÐнгкÑаÑав",
"showdiff": "ТÑзлевлени гÑÑÑеÑмек",
+ "anoneditwarning": "ТеÑгев: Сен гиÑÐ¸Ñ ÑÑмединг. ТÑÐ·Ð»ÐµÐ²Ð»ÐµÑ ÑÑÑенг Ñени IP адÑеÑинг пÑбликли гÑÑÑнеÑ. ÐÐ³ÐµÑ [$1 гиÑиÑ] Ñда [$2 кÑайÑÑ] ÑÑÑенг, ÑÑзлевлеÑинг Ñени оÑÑакÑÑÑ Ð°ÑÑ Ð±Ñлан гÑиÑап ÑÑилеÑ, оÑзге пайдалаÑдан да кÑайÑÑ.",
+ "blockedtext": "Сени кÑоллавÑÑ Ð°ÑÑнг Ñда IP адÑеÑинг кÑамалгÑан Ñди.''\n\nÐÑамав ÑÑген $1 ($2).\nСебеп беÑилген: ''$3'.\n\n* ÐÑамав баÑладÑ: $4\n* ÐÑамав биÑе: $5\n* ÐÑÐ°Ð¼Ð°Ð²Ð½Ñ Ð¼ÑÑадÑ: $7\n\n$1 бÑлан Ñда кÑайÑÑ Ð¾Ñзге [[{{MediaWiki:Grouppage-sysop}}|админиÑÑÑаÑоÑ]] бÑлан кÑаÑнап кÑÐ°Ð¼Ð°Ð²Ð½Ñ Ð³ÑакÑÑнда ÑÑйлеÑмеге болаÑан.\nТеÑгеп кÑой, Ñени [[Special:Preferences|ÑнÑили кÑйлемлеÑингде]] e-mail адÑеÑинг ÑÑз беÑмединг бÑÑа Ñда геÑÑи ÑÑмединг бÑÑа, Ñда кÑамав ÑаÑÑлагÑа макÑÑп ÑзÑвÑÐ½Ñ ÐºÑадагÑа гиÑе бÑÑа, \"кÑоллавÑÑгÑа макÑÑп\" ÑÑнкÑиÑÐ½Ñ ÐºÑоллап болмаÑÑан.\nСени IP адÑеÑинг â $3, кÑÐ°Ð¼Ð°Ð²Ð½Ñ Ð¸Ð´ÐµÐ½ÑиÑикаÑоÑÑ â $5. Тилев, Ð±Ñ Ð¼Ð°ÑлÑмаÑÐ»Ð°Ð½Ñ Ð±Ð°ÑÑ ÑалаплаÑÑнга гийиÑ.",
"loginreqlink": "гиÑмек",
+ "newarticletext": "Сен гÑалиде ÑÑаÑÑлмагÑан ÑагÑиÑагÑа гÑÑдинг.\nÐÑ ÑагÑиÑÐ°Ð½Ñ ÑÑаÑÐ¼Ð°ÐºÑ ÑÑÑн, ÑÑбÑндеги кÑÑÑÑгÑÑнда ÑзÑп баÑлагÑÑз (аÑÑÑÐºÑ Ð¼Ð°ÑлÑÐ¼Ð°Ñ ÑÑÑн [$1 кÑмек ÑагÑиÑагÑа] кÑаÑа).\nЯнгÑлÑÑ ÑÑип беÑи гÑÑген бÑÑанг, Ñени бÑаÑзеÑинг аÑÑгÑа ÑÑймеÑине баÑ.",
+ "anontalkpagetext": "ÐÑ Ð³Ñали де Ð±ÐµÑ ÑÑаÑмагÑан Ñда беÑин кÑолламайгÑан аноним кÑоллавÑÑÐ½Ñ ÑÑÑн ÑÑйлеÑив.\nШолай бÑÑа биз Ð¾Ð½Ñ Ð±ÐµÐ»Ð³Ð¸Ð»ÐµÐ¼ÐµÐº ÑÑÑн ÑÐ°Ð½Ð°Ð²Ð»Ñ IP адÑеÑни Ð¿Ð°Ð¹Ð´Ð°Ð»Ð°Ð¼Ð°ÐºÑ Ð³ÐµÑекбиз.\nÐÑ IP адÑÐµÑ Ð±Ð¸Ñ Ð½ÐµÑе кÑоллавÑÑÐ»Ð°Ð½Ñ Ð°ÑаÑÑнда пайланÑп ÑÑÑмагÑа бола.\nСен аноним кÑоллавÑÑ Ð±ÑÑанг, ва ÑагÑа ÑÑгÑл ÑзÑÐ²Ð»Ð°Ñ Ð±Ð°ÐºÑдÑÑÑлгÑан деп ойлаÑа бÑÑанг, Ñилев, [[Special:CreateAccount|ÑÐ½Ð³Ñ Ð±ÐµÑ ÑÑаÑ]] Ñда [[Special:UserLogin|гиÑÐ¸Ñ ÑÑ]], гележекде оÑзге аноним кÑоллавÑÑÐ»Ð°Ñ Ð±Ñлан Ñен кÑаÑаÑÑÐºÑ Ð±Ð¾Ð»Ð¼Ð°Ñ ÑÑÑн.",
"noarticletext": "ÐÑ ÑагÑиÑа гÑали де маÑÑнÑÑз. Сен баÑгÑа ÑагÑиÑалаÑда [[Special:Search/{{PAGENAME}}|бÑлай аÑÑн ÑÑгеÑивлеÑини излемеге]] болаÑан, [{{fullurl:{{#Special:Log}}|page={{FULLPAGENAMEE}}}} ÑийиÑли гÑнделик ÑзÑÐ²Ð»Ð°Ð½Ñ ÑапмагÑа] Ñда '''[{{fullurl:{{FULLPAGENAME}}|action=edit}} бÑлай аÑÑ Ð±Ñлан ÑагÑиÑа ÑÑаÑмагÑа болаÑан]'''.",
+ "noarticletext-nopermission": "ÐÑ ÑагÑиÑа гÑали де ÑекÑÑÑиз. Сен баÑгÑа ÑагÑиÑалаÑда [[Special:Search/{{PAGENAME}}|бÑлай аÑÑн ÑÑгеÑивлеÑини излемеге]], Ñда [{{fullurl:{{#Special:Log}}|page={{FULLPAGENAMEE}}}} ÑийиÑли гÑнделиклени ÑапмагÑа болаÑан]. Тек Ð±Ñ ÑагÑиÑÐ°Ð½Ñ ÑÑаÑмагÑа иÑ
ÑиÑÑÑнг ÑкÑ.",
"userpage-userdoesnotexist-view": "\"$1\" гÑиÑап кÑайÑÑланмагÑан.",
+ "clearyourcache": "Note: СакÑлангÑан Ñонг, ÑÑÑлевлени гÑÑмек ÑаÑÐ»Ñ ÑагÑа бÑаÑзеÑингни кÑÑин ÑнгÑÑÑмагÑа Ñда ÑазаламагÑа геÑек болма бола \n* Firefox / Safari: Shift ÑÑÑÑп Reload баÑ, баÑгÑалай Ctrl-F5 Ñда Ctrl-R Ð±Ð°Ñ (Mac бÑÑа â-R)\n* Google Chrome: Ctrl-Shift-R баÑ(Mac бÑÑа â-Shift-R)\n* Internet Explorer: Ctrl ÑÑÑÑп Refresh баÑ, Ñда Ctrl-F5 баÑ\n* Opera: Menu â Settings бÑлмеге гÑÑ (Mac бÑÑа Opera â Preferences) ва Ñонг Privacy & security â Clear browsing data â Cached images and files.",
"previewnote": "ÐÑ Ð¸Ð½Ð³ÐºÑаÑав Ñкенни ÑÑде ÑакÑла.\nÐлÑÑÑнÑвлаÑÑнг гÑали де ÑакÑланмагÑан!",
"continue-editing": "ТÑÐ·Ð»ÐµÐ²Ð½Ñ Ð´Ð°Ð²Ð°Ð¼Ð»Ð°Ð¼Ð°ÐºÑ",
"editing": "ТÑзлев $1",
@@ -211,6 +223,8 @@
"hiddencategories": "ÐÑ ÑагÑиÑа {{PLURAL:$1|1 ÑÑÑÑÑлгÑан каÑегоÑиÑгÑа}} ÑнаÑа:",
"permissionserrors": "ÐиÑÐ¸Ñ Ð¸Ñ
ÑиÑÑÐ»Ð°Ð½Ñ Ñ
аÑаÑÑ",
"permissionserrorstext-withaction": "ÐÑгÑÐ°Ñ $2 гелеген {{PLURAL:$1|Ñебепге|Ñебеплеге}} гÑÑе иÑ
ÑиÑÑÑнг ÑкÑ:",
+ "recreate-moveddeleted-warn": "ТеÑгев беÑ: ÐлдÑн ÑайдÑÑÑлгÑан ÑагÑиÑÐ°Ð½Ñ ÑÑаÑдÑÑма айланаÑан.\n\nÐаÑлап ÑеÑгеп кÑаÑа, геÑÑиден де ÑаÑÑкÑÐ¼Ñ Ñкен ол ÑагÑиÑÐ°Ð½Ñ ÑÑаÑдÑÑмагÑа.\nТайдÑÑÑв ва аÑÑн алÑÑдÑÑÑв гÑнделиги ÑÑпде беÑилген:",
+ "moveddeleted-notice": "ÐÑ ÑагÑиÑа ÑайдÑÑÑлгÑан Ñди.\nÐÑ ÑагÑиÑÐ°Ð½Ñ ÑайдÑÑÑв, кÑоÑÑв ва аÑÑнгÑÑÑÑв гÑнделиги маÑлÑÐ¼Ð°Ñ ÑаÑÐ»Ñ ÑÑпде гÑÑÑеÑилген.",
"content-model-wikitext": "викимаÑÑн",
"undo-failure": "ÐÑалÑÐºÑ Ð°Ð»ÑÑÑнÑÐ²Ð»Ð°Ð½Ñ ÐºÑÑйÑÑÑвÑÑзлгÑÑ ÑÑÑн ÑÑзлев геÑи алÑнмай.",
"viewpagelogs": "ÐÑ ÑагÑиÑа ÑÑÑн гÑнделиклени гÑÑÑеÑмек",
@@ -222,6 +236,7 @@
"currentrevisionlink": "ÐÑ
ÑÑÑнÑÑ ÑÑÑÑ",
"cur": "гÑал.",
"last": "алкÑ.",
+ "histlegend": "ТÑзлевлеÑден Ñайлав: ÑенглеÑдиÑмеге ÑÑеген баÑÑ ÑÑÑлеÑин белгилеп '''{{int:compare-submit}}''' баÑ.
\nÐÑÑкÑлавлаÑ: '''({{int:cur}})''' â гÑалиги ÑÑÑÑнден баÑгÑалÑкÑ; '''({{int:last}})''' â алдагÑÑ ÑÑÑÑнден баÑгÑалÑкÑ; '''{{int:minoreditletter}}''' â ÑÐ²Ð°ÐºÑ ÑÑзелÑив.",
"history-fieldset-title": "ТÑзлевлеге излев",
"histfirst": "инг ÑÑгилеÑ",
"histlast": "инг ÑнгÑлаÑ",
@@ -237,14 +252,16 @@
"editundo": "геÑи алмакÑ",
"diff-empty": "(баÑгÑалÑкÑÐ»Ð°Ñ ÑкÑ)",
"diff-multi-sameuser": "(Ñо кÑоллавÑÑÐ½Ñ {{PLURAL:$1|$1 аÑалÑÐºÑ ÑÑÑÑ}} гÑÑÑеÑилмеген)",
+ "diff-multi-otherusers": "({{PLURAL:$2|кÑоллавÑÑнÑ}}{{PLURAL:$1|аÑалÑÐºÑ ÑÑзлевÑ|$1 аÑалÑÐºÑ ÑÑзлевлеÑи}} гÑÑÑеÑилмеген)",
"searchresults": "ÐÐ·Ð»ÐµÐ²Ð½Ñ Ð½Ð°ÑижалаÑ",
"searchresults-title": "\"$1\" ÑÑÑн наÑÐ¸Ð¶Ð°Ð»Ð°Ð½Ñ Ð¸Ð·Ð»ÐµÐ¼ÐµÐº",
"prevn": "алдагÑÑ {{PLURAL:$1|$1}}",
"nextn": "ÑонггÑÑ {{PLURAL:$1|$1}}",
"prevn-title": "ÐлдагÑÑ $1 {{PLURAL:$1|гÑаÑил}}",
- "nextn-title": "Ðелеген $1 {{PLURAL:$1|гÑаÑил}}",
+ "nextn-title": "Ðелеген $1 {{PLURAL:$1|гÑаÑил|гÑаÑиллеÑ}}",
"shown-title": "ÐйÑÑ Ð±Ð¸Ñ ÑагÑиÑада $1 {{PLURAL:$1|ÑзÑв|ÑзÑвланÑ}} гÑÑÑеÑмек",
"viewprevnext": "($1 {{int:pipe-separator}} $2) ($3) кÑаÑамакÑ",
+ "searchmenu-exists": "ÐÑ Ð²Ð¸ÐºÐ¸Ð´Ðµ \"[[:$1]]\" деп аÑÑ Ð±Ñлан ÑагÑиÑа баÑ. {{PLURAL:$2|0=|ÐагÑÑ Ð´Ð° ÑабÑлгÑан наÑижалагÑа да кÑаÑа.}}",
"searchmenu-new": "\"[[:$1]]\" ÑагÑиÑа Ð±Ñ Ð²Ð¸ÐºÐ¸Ð´Ðµ ÑÑаÑмакÑ! {{PLURAL:$2|0=|ÐзлевÑнге кÑÑе ÑабÑлгÑан ÑагÑиÑалагÑа да кÑаÑа.|ÐагÑÑ Ð´Ð° излев гÑаÑиллеге кÑаÑа.}}",
"searchprofile-articles": "ÐÑÐ»Ñ ÑагÑиÑалаÑ",
"searchprofile-images": "ÐÑлÑимедиа",
@@ -255,11 +272,13 @@
"searchprofile-everything-tooltip": "ÐаÑÑ Ð´Ð° ÑагÑиÑалаÑда излемек (ÑÑйлеÑив ÑагÑиÑÐ°Ð»Ð°Ð½Ñ Ð´Ð° кÑоÑÑп)",
"searchprofile-advanced-tooltip": "СайлангÑан аÑалÑкÑлаÑда излемек",
"search-result-size": "$1 ({{PLURAL:$2|1 ÑÑз|$2 ÑÑз}})â",
+ "search-result-category-size": "{{PLURAL:$1|1 оÑÑакÑÑÑ|$1 оÑÑакÑÑÑ}} ({{PLURAL:$2|1 ÑÑп каÑегоÑиÑ|$2 ÑÑп каÑегоÑиÑ}}, {{PLURAL:$3|1 Ñаплам|$3 Ñаплам}})",
"search-redirect": "($1 ÑагÑиÑадан бакÑдÑÑÑлгÑан)â",
"search-section": "($1 бÑлме)",
"search-file-match": "(ÑÐ°Ð¿Ð»Ð°Ð¼Ð½Ñ Ð¸Ñделигине ÑÐ°Ñ Ð³ÐµÐ»Ðµ)",
"search-suggest": "ÐÑÐ½Ñ Ð¾Ð¹Ð»Ð°Ð¹Ð¼ÑÑан Ñкен: $1",
"searchall": "баÑÑ Ð´Ð°",
+ "search-showingresults": "{{PLURAL:$4|$1 наÑижа $3 наÑижалаÑдан|$1 â $2 наÑижа $3 наÑижалаÑдан}}",
"search-nonefound": "ÐÑ ÑалапгÑа ÑийиÑли наÑÐ¸Ð¶Ð°Ð»Ð°Ñ ÑабÑлмадÑ.",
"mypreferences": "ÐÑйлемлеÑ",
"group-bot": "ÐоÑлаÑ",
@@ -284,6 +303,7 @@
"recentchanges-label-plusminus": "СагÑиÑÐ°Ð½Ñ Ð³Ñлеми ÑÑнÑакÑÑ Ð±Ð°Ð¹Ñ Ð±Ñлан алÑÑÑнгÑан",
"recentchanges-legend-heading": "УйдÑÑма:",
"recentchanges-legend-newpage": "{{int:recentchanges-label-newpage}} (ÑÑнда да [[Special:NewPages|ÑÐ½Ð³Ñ ÑагÑиÑÐ°Ð»Ð°Ð½Ñ ÑиÑгÑÑна кÑаÑагÑÑз]])",
+ "rcnotefrom": "ТÑбÑндеги â $3, $4 гÑнден беÑли {{PLURAL:$5|ÑÑзлевÑдÑÑ|ÑÑзлевлеÑидиÑ}}.",
"rclistfrom": "$2, $3 ÑÑзлевлеÑден баÑлап гÑÑÑеÑмек",
"rcshowhideminor": "$1 ÑÐ²Ð°ÐºÑ ÑÑзлевлеÑ",
"rcshowhideminor-show": "ÐÑÑÑеÑмек",
@@ -315,6 +335,7 @@
"recentchangeslinked-feed": "ÐÐ°Ð¹Ð»Ð°Ð²Ð»Ñ ÑÑзлевлеÑ",
"recentchangeslinked-toolbox": "ÐÐ°Ð¹Ð»Ð°Ð²Ð»Ñ ÑÑзлевлеÑ",
"recentchangeslinked-title": "\"$1\" ÑагÑиÑагÑа Ð±Ð°Ð¹Ð»Ð°Ð²Ð»Ñ ÑÑзлевлеÑ",
+ "recentchangeslinked-summary": "ÐÑ ÑагÑиÑагÑа Ð±Ð°Ð¹Ð»Ð°Ð²Ð»Ñ ÑÑзлевлеÑи бÑлан ÑагÑиÑаланÑ, Ñда о ÑагÑиÑадан байлавлÑÐ»Ð°Ð½Ñ Ð³ÑÑмек ÑÑÑн аÑÑн Ñз. (ÐаÑегоÑиÑÐ½Ñ Ð¾ÑÑакÑÑалаÑÑн гÑÑмек ÑÑÑн Category:ÐаÑегоÑиÑÐ½Ñ Ð°ÑÑн Ñз). Сени [[Special:Watchlist|ÐÑÑзаÑлав Ñизменгдеги]] алÑÑÑнÑÐ²Ð»Ð°Ñ ÐºÑалÑн гÑаÑплÑлаÑ.",
"recentchangeslinked-page": "СагÑиÑÐ°Ð½Ñ Ð°ÑÑ:",
"recentchangeslinked-to": "ÐÑайÑа, Ð±Ñ ÑагÑиÑагÑа Ð±Ð°Ð¹Ð»Ð°Ð²Ð»Ñ ÑагÑиÑÐ°Ð»Ð°Ð½Ñ Ð°Ð»ÑÑÑнÑвлаÑÑн гÑÑÑеÑмек",
"upload": "Ð¡Ð°Ð¿Ð»Ð°Ð¼Ð½Ñ Ñклемек",
@@ -339,7 +360,7 @@
"imagelinks": "Ð¡Ð°Ð¿Ð»Ð°Ð¼Ð½Ñ ÐºÑоллавÑ",
"linkstoimage": "ШÑндан ÑонггÑÑ {{PLURAL:$1|ÑагÑиÑа|$1 ÑагÑиÑалаÑ}} Ð±Ñ ÑапламгÑа байлангÑан:",
"linkstoimage-more": "$1 {{PLURAL:$1|ÑагÑиÑадан}} аÑÑÑÐºÑ Ð¸Ð³ ÑапламгÑа байланÑвлÑ.\nÐÑ Ñизме ÑнгÑз Ð±Ñ ÑапламгÑа {{PLURAL:$1|first page link|биÑинÑи $1 байланÑÐ²Ð»Ñ ÑагÑиÑанÑ}} гÑÑÑеÑе.\n[[Special:WhatLinksHere/$2|Ð¢Ð¾Ð»Ñ Ñизме де]] баÑ.",
- "nolinkstoimage": "ÐÑ ÑапламгÑа Ð±Ð°Ð¹Ð»Ð°Ð²Ð»Ñ ÑагÑиÑÐ°Ð»Ð°Ñ ÑкÑ",
+ "nolinkstoimage": "ÐÑ ÑапламгÑа Ð±Ð°Ð¹Ð»Ð°Ð²Ð»Ñ ÑагÑиÑÐ°Ð»Ð°Ñ ÑкÑдÑÑ",
"linkstoimage-redirect": "$1 (Ñаплам Ñллав) $2",
"sharedupload-desc-here": "ÐÑ Ñаплам $1 пÑоекÑдендиÑ, ва баÑгÑаÑÑнда да кÑолланма бола. ÐÐ½Ñ [$2 ÑаÑÐ²Ð¸Ñ ÑагÑиÑаÑÑндан] маÑлÑмаÑÑ ÑÑпде беÑиле.â",
"filepage-nofile": "ÐÑлай аÑÑ Ð±Ñлан Ñаплам ÑкÑдÑÑ.",
@@ -348,6 +369,7 @@
"statistics": "ÐÑÑаÑиÑÑик",
"double-redirect-fixer": "Ðллав дÑÑÑÑлавÑ",
"nbytes": "$1 {{PLURAL:$1|байÑ|байÑлаÑ}}â",
+ "nmembers": "$1 {{PLURAL:$1|оÑÑакÑÑÑ}}",
"prefixindex": "ÐÑеÑÐ¸ÐºÑ Ð±Ñлан баÑÑ Ð´Ð° ÑагÑиÑалаÑ",
"listusers": "ÐÑÑакÑÑÑ ÑизмеÑи",
"newpages": "Ð¯Ð½Ð³Ñ ÑагÑиÑалаÑ",
@@ -361,6 +383,7 @@
"speciallogtitlelabel": "ÐÑÑÐ°Ñ (аÑÑ Ñда {{ns:user}}:оÑÑакÑÑÑ):",
"log": "ÐÑнделиклеÑ",
"all-logs-page": "ÐаÑÑ Ð´Ð° гиÑиÑли гÑнделиклеÑ",
+ "alllogstext": "{{SITENAME}} ÑайÑÐ°Ð½Ñ Ð¶ÑйÑÐ¼Ð»Ñ Ð³Ñнделик ÑизмеÑи.\nÐаÑÐ¸Ð¶Ð°Ð»Ð°Ð½Ñ Ð³Ñнделик ÑайпаÑÑна, оÑÑакÑÑÑ Ð°ÑÑна (ÑллÑ-гиÑÑи гÑаÑÐ¿Ð»Ð°Ð½Ñ Ð³ÑиÑапгÑа алÑп) Ñда Ñийилген ÑагÑиÑаÑÑна (ÑллÑ-гиÑÑи гÑаÑÐ¿Ð»Ð°Ð½Ñ Ð³ÑиÑапгÑа алÑп) гÑÑе айÑÑма болаÑан.",
"logempty": "ÐÑÑйÑÑÑÐ²Ð»Ñ ÑзÑÐ²Ð»Ð°Ñ Ð³Ñнделикде ÑкÑ.",
"allpages": "ÐаÑÑ ÑагÑиÑалаÑ",
"allarticles": "ÐаÑÑ ÑагÑиÑалаÑ",
@@ -377,6 +400,7 @@
"unwatch": "ÐеÑи гÑÑзаÑламакÑ",
"watchlist-details": "{{PLURAL:$1|$1 ÑагÑиÑа}} Ñени ÑеÑгев Ñизменгде (пикиÑлеÑив ÑагÑиÑÐ°Ð»Ð°Ð½Ñ Ñанап).",
"wlheader-showupdated": "Сени аÑ
ÑÑÑнÑÑ Ð³ÐµÐ»Ð¸Ð²Ñнгден Ñонг алÑÑÑнгÑан ÑагÑиÑÐ°Ð»Ð°Ñ ÐºÑалÑн ÑÑиÑÑ Ð±Ñлан гÑÑÑеÑилген.",
+ "wlnote": "ТÑбÑндеги â {{PLURAL:$1|аÑ
ÑÑÑнÑÑ ÑÑзлевÑдÑÑ|$1 аÑ
ÑÑÑнÑÑ ÑÑзлевлеÑидиÑ}} алдагÑÑ {{PLURAL:$2|ÑагÑÐ°Ñ Ð°ÑалÑкÑда|$2 ÑагÑÐ°Ñ Ð°ÑалÑкÑда}} ÑÑилген, $3, $4 ÑаÑÑ
Ñндан.",
"wlshowlast": "ÐÑÑдагÑÑ $1 ÑагÑÐ°Ñ $2 гÑннÑкин гÑÑÑеÑмек",
"watchlist-options": "ТеÑгев Ñизмени кÑйлевлеÑи",
"enotif_reset": "ÐаÑÑ Ð´Ð° ÑагÑиÑÐ°Ð»Ð°Ð½Ñ ÐºÑаÑалгÑандай белгилемек",
@@ -391,12 +415,14 @@
"restriction-move": "ÐÑÑн алÑÑдÑÑмакÑ",
"namespace": "ÐÑÐ»Ð°Ñ Ð°ÑалÑгÑÑ:",
"invert": "СайлангÑанÑн айландÑÑмакÑ",
+ "tooltip-invert": "СайлангÑан Ð°Ñ Ð°ÑалÑкÑдагÑÑ (ва белгиленген бÑÑа огÑÐ°Ñ Ð±Ð°Ð¹Ð»Ð°Ð½ÑÑÐ»Ñ Ð°Ñ Ð°ÑалÑкÑдагÑÑ Ð´Ð°) ÑÑзлевлеÑин ÑÑÑÑÐ¼Ð°ÐºÑ ÑÑÑн Ð±Ñ Ð±ÐµÐ»Ð³Ð¸Ð½Ð¸ ÑалÑп кÑой.",
"namespace_association": "ÐайланÑÑÐ»Ñ Ð°ÑÐ»Ð°Ñ Ð°ÑалÑгÑÑ",
+ "tooltip-namespace_association": "СайлангÑан аÑÑÑакÑламагÑа Ð±Ð°Ð¹Ð»Ð°Ð²Ð»Ñ Ð°ÑÑакÑламанÑ, пикиÑлеÑивлени кÑоÑÐ¼Ð°ÐºÑ ÑÑÑн Ð±Ñ Ð±ÐµÐ»Ð³Ð¸Ð½Ð¸ де Ñал.",
"blanknamespace": "(ÐÑлÑ)",
"contributions": "{{GENDER:$1|ÐÑоллавÑÑнÑ}} кÑоÑÑмÑ",
"contributions-title": "ÐÑÑакÑÑÑÐ½Ñ ÑÑдÑÐ¼Ñ $1",
- "mycontris": "ÐÑоÑÑмÑ",
- "anoncontribs": "ÐÑоÑÑмÑ",
+ "mycontris": "ÐÑоÑÑм",
+ "anoncontribs": "ÐÑоÑÑм",
"contribsub2": "ЯÑдÑм {{GENDER:$3|$1}} ($2)",
"nocontribs": "ÐеÑилген ÑÑÑллагÑа кÑÑйÑÑÑÐ²Ð»Ñ Ð°Ð»ÑÑÑнÑÐ²Ð»Ð°Ñ ÑабÑлмагÑан.",
"uctop": "(гÑалиги)",
@@ -431,7 +457,7 @@
"ipboptions": "2 ÑагÑаÑ:2 hours,1 гÑн:1 day,3 гÑн:3 days,1 жÑма:1 week,2 жÑма:2 weeks,1 ай:1 month,3 ай:3 months,6 ай:6 months,1 йÑл:1 year,болжалÑÑз:infinite",
"infiniteblock": "болжалÑÑз",
"blocklink": "кÑамамакÑ",
- "contribslink": "ÐÑоÑÑм",
+ "contribslink": "кÑоÑÑм",
"blocklogpage": "кÑамав гÑнделиги",
"blocklogentry": "кÑамагÑан [[$1]] Ð±Ñ Ð¼ÑгÑлеÑге $2 $3",
"reblock-logentry": "кÑÐ°Ð¼Ð°Ð²Ð½Ñ [[$1]]Ð±Ñ Ð±Ð¾Ð»Ð¶Ð°Ð»Ð³Ñа $2 $3 алÑÑдÑÑгÑан",
@@ -489,6 +515,7 @@
"tooltip-ca-nstab-category": "ÐаÑегоÑиÑÐ½Ñ ÑагÑиÑаÑÑна кÑаÑамакÑ",
"tooltip-minoredit": "Ð£Ð²Ð°ÐºÑ Ð°Ð»ÑÑÑнÑвдай белгилемек",
"tooltip-save": "ÐлÑÑдÑÑÑвлаÑÑнг ÑакÑламакÑ",
+ "tooltip-preview": "СагÑиÑÐ°Ð½Ñ Ð¸Ð½Ð³ÐºÑаÑавÑ. СакÑÑлагÑанÑакÑÑ Ð¿Ð°Ð¹Ð´Ð°Ð»Ð°Ð½.",
"tooltip-diff": "Сен ÑÑген маÑÑÐ½Ð½Ñ ÑÑзлевлеÑинг гÑÑÑеÑмек",
"tooltip-compareselectedversions": "ÐÑ ÑагÑиÑÐ°Ð½Ñ ÑайлангÑан Ñки ÑÑÑлеÑин баÑгÑалÑгÑÑна кÑаÑамакÑ.",
"tooltip-watch": "Сени ÑеÑгев ÑиÑгÑÑнга Ð±Ñ ÑагÑиÑÐ°Ð½Ñ ÐºÑоÑмакÑ",
@@ -502,6 +529,7 @@
"pageinfo-header-restrictions": "СагÑиÑа кÑоÑÑв",
"pageinfo-header-properties": "СагÑиÑа кÑйлемлеÑ",
"pageinfo-display-title": "ÐÑÑÑеÑилеген аÑÑ",
+ "pageinfo-default-sort": "ÐÐ°Ñ ÐºÑйде айÑÑÑв аÑгÑÑÑÑ",
"pageinfo-length": "СагÑиÑÐ°Ð½Ñ ÑзÑнлÑгÑÑ (байÑлаÑда)",
"pageinfo-article-id": "СагÑиÑа ID",
"pageinfo-language": "СагÑиÑÐ°Ð½Ñ Ñили",
@@ -541,14 +569,19 @@
"show-big-image-other": "ÐаÑгÑа {{PLURAL:$2|айÑÑÑм|айÑÑÑмлаÑ}}: $1.",
"show-big-image-size": "$1 à $2 пикÑел",
"metadata": "ÐеÑа маÑлÑмаÑлаÑ",
+ "metadata-help": "ÐÑ Ñаплап кÑоÑÑм маÑлÑÐ¼Ð°Ñ ÑакÑлай, балики, ÑÐ°Ð½Ð°Ð²Ð»Ñ ÐºÐ°Ð¼ÐµÑа Ñда ÑÐºÐ°Ð½Ð½ÐµÑ ÑÐ°Ð±Ð°ÐºÑ ÑÑаÑÑлгÑан Ñда ÑанавлаÑгÑан.\nÐÐ³ÐµÑ Ñаплам аÑÐ»Ñ Ð³Ñалдан ÑÑÑленген бÑÑа, маÑлÑмаÑлаÑдан биÑлеÑи алÑÑÑнгÑан ÑÑÑÑн ÑÐ¾Ð»Ñ ÐºÑйде кÑÑйÑÑÐ¼Ð°Ð¹Ð»Ñ Ð±Ð¾Ð»Ð¼Ð°Ð³Ñа ÑÑай.",
+ "metadata-fields": "ÐÐ³ÐµÑ Ð¼ÐµÑамаÑлÑÐ¼Ð°Ñ Ñабел дагÑÑлÑа, Ð±Ñ Ð¼Ð°ÐºÑÑпда Ñизилген ÑÑÑаÑÐ»Ð°Ð½Ñ Ð¼ÐµÑамаÑлÑÐ¼Ð°Ñ Ð°ÑалÑкÑлаÑÑ ÑÑÑÐ°Ñ ÑагÑиÑÐ°Ð½Ñ Ð´Ð¸Ñплейине гийиÑилеÑ.\nÐÑалгÑандал кÑÑÑÑ ÐºÑйлемлеге гÑÑе ÑÑÑÑÑлаÑлаÑ.\n* make\n* model\n* datetimeoriginal\n* exposuretime\n* fnumber\n* isospeedratings\n* focallength\n* artist\n* copyright\n* imagedescription\n* gpslatitude\n* gpslongitude\n* gpsaltitude",
+ "exif-orientation": "ÐнгаÑÑлÑм",
"exif-xresolution": "ÐÑнделен айÑÑÑм",
"exif-yresolution": "Тик айÑÑÑм",
"exif-datetime": "Ð¡Ð°Ð¿Ð»Ð°Ð¼Ð½Ñ Ð°Ð»ÑÑÑнÑв ÑаÑÑ
Ñ Ð²Ð° заманÑ",
"exif-make": "ÐамеÑÐ°Ð½Ñ ÑÑавÑÑÑÑ",
"exif-model": "ÐамеÑÐ°Ð½Ñ Ð¼Ð¾Ð´ÐµÐ»Ð¸",
+ "exif-software": "ÐÑогÑам ÑаÑмини",
"exif-exifversion": "Exif ÑÑÑÑ",
"exif-colorspace": "ТÑÑÐ»ÐµÑ Ð°ÑалÑгÑÑ",
"exif-datetimeoriginal": "ÐÑÐ»Ñ ÑаÑÑ
ва заман",
+ "exif-datetimedigitized": "СанавлаÑдÑÑÑÐ²Ð½Ñ ÑаÑÑ
Ñ Ð²Ð° заманÑ",
"exif-orientation-1": "ÐоÑмал",
"namespacesall": "баÑÑ Ð´Ð°",
"monthsall": "баÑÑ Ð´Ð°",
@@ -560,6 +593,8 @@
"watchlisttools-edit": "Тизмени кÑаÑап ÑÑзлемек",
"watchlisttools-raw": "СаÑв ÑекÑÑни ÑÑзлемек",
"signature": "[[{{ns:user}}:$1|$2]] ([[{{ns:user_talk}}:$1|ÑÑйлеÑив]])",
+ "redirect": "СапламнÑ, кÑоллавÑÑнÑ, ÑагÑиÑанÑ, ÑÑÑÐ½Ñ Ñда гÑнделикни менлигине гÑÑе Ñллав",
+ "redirect-summary": "ÐÑ Ñ
Ð°Ñ ÑагÑиÑаÑÑ ÑапламгÑа (ÑÐ°Ð¼Ð»Ð°Ð¼Ð½Ñ Ð°ÑÑндан), ÑагÑиÑагÑа (ÑÑÐ·Ð»ÐµÐ²Ð½Ñ ID Ñда ÑагÑиÑÐ°Ð½Ñ ID ÑанавлаÑдан), кÑоллавÑÑ ÑагÑиÑаÑÑна (ÑÐ°Ð½Ð°Ð²Ð»Ñ ÐºÑоллавÑÑ ID нÑмÑÑден) Ñда гÑнделик ÑзÑвгÑа (гÑнделикни IDден) Ñллай. ÐÑоллав:\n[[{{#Special:Redirect}}/file/Example.jpg]], [[{{#Special:Redirect}}/page/64308]], [[{{#Special:Redirect}}/revision/328429]], [[{{#Special:Redirect}}/user/101]] или [[{{#Special:Redirect}}/logid/186]].",
"redirect-submit": "ÐÑÑмек",
"redirect-lookup": "Ðзлев:",
"redirect-value": "ÐÑÑймаÑ:",
@@ -575,9 +610,14 @@
"tags-hitcount": "$1 {{PLURAL:$1|алÑÑÑнÑв|алÑÑÑнÑвлаÑ}}",
"logentry-delete-delete": "$1 {{GENDER:$2|ÑайдÑÑгÑан}} ÑагÑиÑÐ°Ð½Ñ $3",
"logentry-delete-restore": "$1 Ð±Ñ $3 ($4) ÑагÑиÑÐ°Ð½Ñ {{GENDER:$2ÑÑаÑдÑÑгÑан|}}",
+ "logentry-delete-revision": "$1 Ð±Ñ ÑагÑиÑÐ°Ð½Ñ $3: $4 {{PLURAL:$5|ÑÑÑÑн}} гÑÑÑнегенлигин {{GENDER:$2|алÑÑдÑÑдÑ}}",
"revdelete-content-hid": "иÑделиги ÑÑÑÑÑлгÑан",
"logentry-move-move": "$1 кÑоллавÑÑ $3 ÑагÑиÑÐ°Ð½Ñ $4 ÑагÑиÑагÑа аÑÑн айландÑÑгÑан",
+ "logentry-move-move-noredirect": "$1 Ð±Ñ ÑагÑиÑÐ°Ð½Ñ $3 аÑÑн бÑгÑÐ°Ñ $4 {{GENDER:$2|алÑÑдÑÑдÑ}} онгаÑÑвÑÑз да кÑойдÑ",
+ "logentry-move-move_redir": "$1 Ð±Ñ ÑагÑиÑÐ°Ð½Ñ $3 аÑÑн бÑгÑÐ°Ñ $4 {{GENDER:$2|алÑÑдÑÑдÑ}} онгаÑÑвÑÑз да кÑойдÑ",
+ "logentry-patrol-patrol-auto": "$1 оÑзлÑгÑнден $3 ÑагÑиÑÐ°Ð½Ñ $4 ÑÑÑÑн паÑÑÑллангÑандай {{GENDER:$2|белгилеген}}",
"logentry-newusers-create": "$2 кÑоллавÑÑ $1 беÑин ÑÑген",
+ "logentry-newusers-autocreate": "$1 оÑÑакÑÑÑÐ½Ñ Ð³ÑиÑÐ°Ð±Ñ Ð¾ÑзлÑгÑнден {{GENDER:$2|ÑÑаÑÑлдÑ}}",
"logentry-upload-upload": "$1 {{GENDER:$2|Ñклеген}} $3",
"logentry-upload-overwrite": "$1 бÑÐ½Ñ $3 ÑÐ½Ð³Ñ ÑÑÑÑн {{GENDER:$2|Ñклеген}}",
"searchsuggest-search": "{{SITENAME}} иÑинде излемек",
diff --git a/languages/i18n/ky.json b/languages/i18n/ky.json
index 1dbb6c6c8f..19f7d87f02 100644
--- a/languages/i18n/ky.json
+++ b/languages/i18n/ky.json
@@ -781,7 +781,6 @@
"minoreditletter": "м",
"newpageletter": "Ð",
"boteditletter": "б",
- "rc_categories_any": "Ðаалаган",
"rc-enhanced-expand": "ÐоÑÑмÑа маалÑмаÑÑаÑÐ´Ñ ÐºÓ©ÑÑÓ©ÑÒ¯Ò¯ (JavaScript Ñалап кÑлÑнаÑ)",
"rc-enhanced-hide": "ÐоÑÑмÑа маалÑмаÑÑаÑÐ´Ñ Ð¶Ð°ÑÑÑÑÑ",
"recentchangeslinked": "ÐайланÑÑÑÑÑ Ó©Ð·Ð³Ó©ÑүүлөÑ",
diff --git a/languages/i18n/la.json b/languages/i18n/la.json
index a70c190325..e07ef69ea6 100644
--- a/languages/i18n/la.json
+++ b/languages/i18n/la.json
@@ -848,7 +848,6 @@
"newpageletter": "N",
"boteditletter": "a",
"number_of_watching_users_pageview": "[$1 {{PLURAL:$1|usor observans|usores observantes}}]",
- "rc_categories_any": "Ulla",
"rc-change-size-new": "$1 {{PLURAL:$1|octetus|octeti}} post recensionem",
"newsectionsummary": "/* $1 */ nova pars",
"rc-enhanced-expand": "Minima monstrare",
diff --git a/languages/i18n/lad.json b/languages/i18n/lad.json
index 53efa23fa6..dfc7321383 100644
--- a/languages/i18n/lad.json
+++ b/languages/i18n/lad.json
@@ -635,7 +635,6 @@
"minoreditletter": "ch",
"newpageletter": "M",
"boteditletter": "b",
- "rc_categories_any": "Kualkyer",
"rc-change-size-new": "$1 {{PLURAL:$1|bayt|baytes}} dospués del trocamiento",
"rc-enhanced-expand": "Amostrar los detalios",
"rc-enhanced-hide": "Esconder los detalios",
diff --git a/languages/i18n/lb.json b/languages/i18n/lb.json
index 92531efb84..3913c06eff 100644
--- a/languages/i18n/lb.json
+++ b/languages/i18n/lb.json
@@ -647,7 +647,7 @@
"userjspreview": "'''Denkt drun datt Dir Ãre Javascript nëmmen test.'''\n'''En ass nach net gespäichert!'''",
"sitecsspreview": "'''Denkt drun datt Dir dësen CSS just kuckt.\nE gouf nach net gespäichert!'''",
"sitejspreview": "'''Denkt drun datt Dir dëse JavaScript-Code just kuckt.\nE gouf nach net gespäichert!'''",
- "userinvalidcssjstitle": "'''Opgepasst:''' Et gëtt keen Ausgesinn (skin) \"$1\".\nDenkt drun datt eegen .css an .js Säiten e kleng geschriwwenen Titel benotzen, z. Bsp. {{ns:user}}:Foo/vector.css am Géigesaz zu {{ns:user}}:Foo/Vector.css.",
+ "userinvalidconfigtitle": "'''Opgepasst:''' Et gëtt keen Ausgesinn (skin) \"$1\".\nDenkt drun datt eegen .css an .js Säiten e kleng geschriwwenen Titel benotzen, z. Bsp. {{ns:user}}:Foo/vector.css am Géigesaz zu {{ns:user}}:Foo/Vector.css.",
"updated": "(Geännert)",
"note": "'''Notiz:'''",
"previewnote": "'''Denkt drun datt dëst nëmmen eng net gespäichert Versioun ass.'''\nÃr Ãnnerunge sinn nach net gespäichert!",
@@ -1002,7 +1002,7 @@
"prefs-files": "Fichieren",
"prefs-custom-css": "Benotzerdefinéierten CSS",
"prefs-custom-js": "Benotzerdefinéierte JS",
- "prefs-common-css-js": "Gemeinsam CSS/JS fir all Ausgesinn (skins):",
+ "prefs-common-config": "Gemeinsam CSS/JS fir all Ausgesinn (skins):",
"prefs-reset-intro": "Dir kënnt dës Säit benotze fir Ãr Astellungen zréck op d'Standard-Astllungen ze setzen.\nDëst kann net réckgängeg gemaach ginn.",
"prefs-emailconfirm-label": "E-Mail Confirmatioun:",
"youremail": "E-Mail-Adress:",
@@ -1407,8 +1407,6 @@
"newpageletter": "N",
"boteditletter": "B",
"number_of_watching_users_pageview": "[$1 Benotzer {{PLURAL:$1|iwwerwaacht|iwwerwaachen}}]",
- "rc_categories": "Limitéieren op d'Kategorie (getrennt mat \"|\"):",
- "rc_categories_any": "Aus iergendenger vun den erausgesichten",
"rc-change-size": "$1 {{PLURAL:$1|Byte|Bytes}}",
"rc-change-size-new": "$1 {{PLURAL:$1|Byte|Bytes}} no der Ãnnerung",
"newsectionsummary": "Neien Abschnitt /* $1 */",
@@ -2498,6 +2496,7 @@
"thumbnail_dest_directory": "Den Zilepertoire konnt net ugeluecht ginn.",
"thumbnail_image-type": "Bildtyp gëtt net ënnerstëtzt",
"thumbnail_gd-library": "D'Konfiguratioun vun der GD-Bibliothéik (GD library) ass net komplett: D'Funktioun $1 feelt",
+ "thumbnail_image-size-zero": "D'Gréisst vum Fichier vum Bild schéngt null ze sinn.",
"thumbnail_image-missing": "De Fichier schengt ze feelen: $1",
"import": "Säiten importéieren",
"importinterwiki": "Vun enger anerer Wiki importéieren",
diff --git a/languages/i18n/lez.json b/languages/i18n/lez.json
index 832a9ecbfa..0ea7d77d4c 100644
--- a/languages/i18n/lez.json
+++ b/languages/i18n/lez.json
@@ -563,7 +563,6 @@
"minoreditletter": "гÑ",
"newpageletter": "Цl",
"boteditletter": "б",
- "rc_categories_any": "ÐÐ¬Ð°Ñ Ñа",
"rc-change-size-new": "ÐаÑакlа авÑнилай аÑ
па кÑадаÑ: $1 байÑ",
"rc-enhanced-expand": "ÐÑÑлÑÑ-ÑÑÑлÑÑÑÑ ÐºÑалÑÑÑн (JavaScript геÑекзава)",
"rc-enhanced-hide": "ÐÑÑлÑÑ-ÑÑÑлÑÑÑÑ ÑÑÑнÑÑÑ
а",
diff --git a/languages/i18n/lfn.json b/languages/i18n/lfn.json
index f590c4a5ef..daeb9d68dc 100644
--- a/languages/i18n/lfn.json
+++ b/languages/i18n/lfn.json
@@ -646,7 +646,7 @@
"userjspreview": "Recorda ce tu regarda mera un proba/previde de tua JavaScript de usor.\nLo es ancora no fisada!",
"sitecsspreview": "Recorda ce tu regarda mera un previde de esta CSS.\nLo es ancora no fisada!",
"sitejspreview": "Recorda ce tu regarda mera un previde de esta codigo JavaScript.\nLo es ancora no fisada!",
- "userinvalidcssjstitle": "Avisa: No pel \"$1\" esiste.\nPajes .css e .js personal usa un titulo con leteras minor, pe {{ns:user}}:Foo/vector.css en loca de {{ns:user}}:Foo/Vector.css.",
+ "userinvalidconfigtitle": "Avisa: No pel \"$1\" esiste.\nPajes .css e .js personal usa un titulo con leteras minor, pe {{ns:user}}:Foo/vector.css en loca de {{ns:user}}:Foo/Vector.css.",
"updated": "(Cambiada)",
"note": "Nota:",
"previewnote": "Recorda ce esta es mera un previde.\nTua cambias es ancora no fisada!",
@@ -701,6 +701,7 @@
"postedit-confirmation-created": "La paje es creada.",
"postedit-confirmation-restored": "La paje es restorada.",
"postedit-confirmation-saved": "Tua edita es fisada.",
+ "postedit-confirmation-published": "Tua edita ia es publicida.",
"edit-already-exists": "Un paje nova no ia pote es creada.\nLo esiste ja.",
"defaultmessagetext": "Testo inisial de mesaje",
"content-failed-to-parse": "La contenida $2 per model $1 no ia pote es analiseda: $3",
@@ -887,6 +888,8 @@
"diff-multi-sameuser": "({{PLURAL:$1|Un revisa|$1 revisas}} media par la mesma usor no es mostrada)",
"diff-multi-otherusers": "({{PLURAL:$1|Un revisa|$1 revisas}} media par {{PLURAL:$2|un otra usor|$2 usores}} no es mostrada)",
"diff-multi-manyusers": "({{PLURAL:$1|Un revisa|$1 revisas}} media par plu ca $2 {{PLURAL:$2|usor|$2 usores}} no es mostrada)",
+ "diff-paragraph-moved-tonew": "La paragraf ia move. Clica per salta a la loca nova.",
+ "diff-paragraph-moved-toold": "La paragraf ia move. Clica per salta a la loca vea.",
"difference-missing-revision": "{{PLURAL:$2|Un revisa|$2 revisas}} de esta difere ($1) no ia es trovada.\n\nEsta es usual causada par segue un lia nonfresca de istoria a un paje cual on ia sutrae.\nDetalias es trovable en la [{{fullurl:{{#Special:Log}}/delete|page={{FULLPAGENAMEE}}}} rejistra de sutraes].",
"searchresults": "Resultas de xerca",
"searchresults-title": "Resultas de xerca \"$1\"",
@@ -1000,6 +1003,7 @@
"timezoneregion-indian": "Mar Indian",
"timezoneregion-pacific": "Mar Pasifica",
"allowemail": "Permete ce otra usores pote eposta me",
+ "email-allow-new-users-label": "Permete epostas de usores intera nova.",
"email-blacklist-label": "Proibi esta usores de eposta a me:",
"prefs-searchoptions": "Xerca",
"prefs-namespaces": "Spasios de nom",
@@ -1007,7 +1011,7 @@
"prefs-files": "Fixes",
"prefs-custom-css": "CSS personal",
"prefs-custom-js": "JavaScript personal",
- "prefs-common-css-js": "CSS/JavaScript comun per tota peles:",
+ "prefs-common-config": "CSS/JavaScript comun per tota peles:",
"prefs-reset-intro": "Tu pote usa esta paje per reinisia tua preferes a la inisiales per esta pajeria.\nTu no pote desfa esta.",
"prefs-emailconfirm-label": "Confirma de eposta:",
"youremail": "Eposta:",
@@ -1269,6 +1273,8 @@
"recentchanges-summary": "Segue asi la cambias la plu resente a la vici.",
"recentchanges-noresult": "No cambias en la periodo spesifada coresponde a esta criterios.",
"recentchanges-timeout": "Esta xerca ia es abandonada. Posible, tu desira atenta otra parametres de xerca.",
+ "recentchanges-network": "Par un era tecnical, no resultas pote es cargada. Proba refresci la paje, per favore.",
+ "recentchanges-notargetpage": "Tape un nom de paje a supra per vide cambias relatada a acel paje.",
"recentchanges-feed-description": "Segue la cambias la plu resente a la vici en esta flue.",
"recentchanges-label-newpage": "Esta edita ia crea un paje nova",
"recentchanges-label-minor": "Esta es un edita minor",
@@ -1284,7 +1290,9 @@
"rcfilters-group-results-by-page": "Grupi resultas par paje",
"rcfilters-activefilters": "Filtros ativa",
"rcfilters-advancedfilters": "Filtros avansada",
- "rcfilters-limit-title": "Mostra cuanto cambias",
+ "rcfilters-limit-title": "Mostra cuanto resultas",
+ "rcfilters-limit-and-date-label": "$1 {{PLURAL:$1|cambia|cambias}}, $2â",
+ "rcfilters-date-popup-title": "Periodo de tempo per la xerca",
"rcfilters-days-title": "Dias resente",
"rcfilters-hours-title": "Oras resente",
"rcfilters-days-show-days": "$1 {{PLURAL:$1|dia|dias}}",
@@ -1304,10 +1312,11 @@
"rcfilters-savedqueries-apply-and-setdefault-label": "Crea filtro inisial",
"rcfilters-savedqueries-cancel-label": "Cansela",
"rcfilters-savedqueries-add-new-title": "Fisa ajustas presente de filtro",
+ "rcfilters-savedqueries-already-saved": "Esta filtros es ja fisada. Cambia tua ajustas per crea un filtro fisada nova.",
"rcfilters-restore-default-filters": "Restora filtros inisial",
"rcfilters-clear-all-filters": "Vacui tota filtros",
"rcfilters-show-new-changes": "Regarda cambias la plu resente",
- "rcfilters-search-placeholder": "Filtri cambias resente (eleje o comensa tape)",
+ "rcfilters-search-placeholder": "Filtri cambias (usa la menu o xerca un nom de filtro)",
"rcfilters-invalid-filter": "Filtro nonvalida",
"rcfilters-empty-filter": "No filtros es ativa. Tota contribuis es mostrada.",
"rcfilters-filterlist-title": "Filtros",
@@ -1397,6 +1406,11 @@
"rcfilters-watchlist-showupdated": "Cambias a pajes cual tu no ia visita pos cuando los ia aveni es en\ntesto spesa, con indicadores solida.",
"rcfilters-preference-label": "Asconde la varia bonida de Cambias Resente",
"rcfilters-preference-help": "Desfa la redesinia de interfas de 2017 e tota utiles ajuntada alora e\na pos.",
+ "rcfilters-filter-showlinkedfrom-label": "Mostra cambias en pajes liada de",
+ "rcfilters-filter-showlinkedfrom-option-label": "Pajes liada de la paje elejeda",
+ "rcfilters-filter-showlinkedto-label": "Mostra cambias en pajes liante a",
+ "rcfilters-filter-showlinkedto-option-label": "Pajes liante a la paje elejeda",
+ "rcfilters-target-page-placeholder": "Tape un nom de paje (o categoria)",
"rcnotefrom": "A su es la {{PLURAL:$5|cambia|cambias}} de $3, $4 (asta $1).",
"rclistfromreset": "Reinisia la eleje de data",
"rclistfrom": "Mostra cambias nova, comensante de $2, $3",
@@ -1430,8 +1444,6 @@
"newpageletter": "N",
"boteditletter": "b",
"number_of_watching_users_pageview": "[$1 {{PLURAL:$1|usor|usores}} monitorinte]",
- "rc_categories": "Limita de categorias (separa con \"|\"):",
- "rc_categories_any": "Cualce de la elejedas",
"rc-change-size-new": "$1 {{PLURAL:$1|bait|baites}} pos cambia",
"newsectionsummary": "/* $1 */ parte nova",
"rc-enhanced-expand": "Mostra detalias",
@@ -1441,7 +1453,7 @@
"recentchangeslinked-feed": "Cambias relatada",
"recentchangeslinked-toolbox": "Cambias relatada",
"recentchangeslinked-title": "Cambias relatada a \"$1\"",
- "recentchangeslinked-summary": "Esta es un lista de cambias resente a pajes liada de un paje spesifada (o a membros de un categoria spesifada).\nPajes en [[Special:Watchlist|tua lista monitorida]] es spesa.",
+ "recentchangeslinked-summary": "Tape un nom de paje per vide cambias en pajes liada a o de acel paje. (Per vide membros de un categoria, tape bold.) Cambias a pajes en [[Special:Watchlist|tua lista monitorida]] es spesa.",
"recentchangeslinked-page": "Nom de paje:",
"recentchangeslinked-to": "Mostra cambias a pajes cual lia a la paje indicada, en loca",
"recentchanges-page-added-to-category": "[[:$1]] ajuntada a categoria",
@@ -1615,7 +1627,7 @@
"lockmanager-fail-closelock": "La fix de semafor per \"$1\" no ia pote es cluida.",
"lockmanager-fail-deletelock": "La fix de semafor per \"$1\" no ia pote es sutraeda.",
"lockmanager-fail-acquirelock": "La semafor per \"$1\" no ia pote es otenida.",
- "lockmanager-fail-openlock": "La fix de semafor per \"$1\" no ia pote es abrida.",
+ "lockmanager-fail-openlock": "La fix de semafor per \"$1\" no ia pote es abrida. Serti ce tua arcivo de carga es bon ajustada e ce tua servador es permeteda a scrive en acel arcivo. Vide https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:$wgUploadDirectory per plu informa.",
"lockmanager-fail-releaselock": "La semafor per \"$1\" no ia pote es relasada.",
"lockmanager-fail-db-bucket": "Tro poca bancos de semafor ia pote es contatada en balde $1.",
"lockmanager-fail-db-release": "Semafores per banco de datos $1 no ia pote es relasada.",
@@ -1634,6 +1646,25 @@
"uploadstash-refresh": "Refresci la lista de fixes",
"uploadstash-thumbnail": "regarda imajeta",
"uploadstash-exception": "Carga no ia pote es ajuntada a la cargas pendente ($1): \"$2\".",
+ "uploadstash-bad-path": "La adirije no esiste.",
+ "uploadstash-bad-path-invalid": "La adirije no es valida.",
+ "uploadstash-bad-path-unknown-type": "Tipo \"$1\" nonconoseda.",
+ "uploadstash-bad-path-unrecognized-thumb-name": "Imajeta nonreconoseda.",
+ "uploadstash-bad-path-no-handler": "No tratador ia es trovada per tipo $1 de fix $2.",
+ "uploadstash-bad-path-bad-format": "Clave \"$1\" no es en forma coreta.",
+ "uploadstash-file-not-found": "Clave \"$1\" no ia es trovada en la pendentes.",
+ "uploadstash-file-not-found-no-thumb": "La imajeta no ia pote es otenida.",
+ "uploadstash-file-not-found-no-local-path": "No adirije local per la ojeto regrandida.",
+ "uploadstash-file-not-found-no-object": "La fix local per la imajeta no ia pote es creada.",
+ "uploadstash-file-not-found-no-remote-thumb": "Retrae de imajeta ia fali: $1 URL = $2",
+ "uploadstash-file-not-found-missing-content-type": "La xapo \"Content-Type\" manca.",
+ "uploadstash-file-not-found-not-exists": "La adirije no es trovable, o la fix no es plata.",
+ "uploadstash-file-too-large": "Fixes plu grande ca $1 baites no pote es servida.",
+ "uploadstash-not-logged-in": "No usor es autenticida; fixes debe parteni a usores.",
+ "uploadstash-wrong-owner": "Esta fix ($1) no parteni a la usor presente.",
+ "uploadstash-no-such-key": "No tal clave ($1); sutrae no es posible.",
+ "uploadstash-no-extension": "La sufisa manca.",
+ "uploadstash-zero-length": "La fix ave zero baites.",
"invalid-chunk-offset": "Bloco con numero nonvalida",
"img-auth-accessdenied": "Nonasedable",
"img-auth-nopathinfo": "PATH_INFO manca.\nTua servador no es ajustada per envia esta informa.Cisa lo usa CGI e no pote suporta img_auth.\nVide https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:Image_Authorization.",
@@ -1786,7 +1817,7 @@
"doubleredirects": "Redirijes duple",
"doubleredirectstext": "Esta paje lista pajes cual redirije a otra pajes redirijente.\nCada linia conteni linias a la redirije prima e du, como ance la gol de la redirije du, cual es usual la paje \"vera\" a cual la redirije prima debe punta.\nEntradas barida es ja solveda.",
"double-redirect-fixed-move": "[[$1]] es moveda.\nLo ia es automata cambiada e aora lo redirije a [[$2]].",
- "double-redirect-fixed-maintenance": "Automata reparante redirije duple de [[$1]] a [[$2]] en taxe de manteni.",
+ "double-redirect-fixed-maintenance": "Automata reparante redirije duple de [[$1]] a [[$2]] en taxe de manteni",
"double-redirect-fixer": "Reparor de redirijes",
"brokenredirects": "Redirijes rompeda",
"brokenredirectstext": "La redirijes seguente lia a pajes nonesistente:",
@@ -2161,7 +2192,7 @@
"rollback-success": "Editas par {{GENDER:$3|$1}} ia es reversada e cambiada a la revisa la plu resente par {{GENDER:$4|$2}}",
"rollback-success-notify": "Editas par $1 ia es reversada e cambiada a la revisa la plu resente par $2. [$3 Mostra cambias]",
"sessionfailure-title": "Fali de sesion",
- "sessionfailure": "Lo pare ce tua sesion de autentici ave un problem;\nesta ata ia es canselada per proteje contra saisis de sesion.\nRevade a la paje presedente, recarga acel paje, e atenta alora denova.",
+ "sessionfailure": "Lo pare ce tua sesion de autentici ave un problem; esta ata ia es canselada per proteje contra saisis de sesion. Reenvia la formulario, per favore.",
"changecontentmodel": "Cambia model de contenida de un paje",
"changecontentmodel-legend": "Cambia model de contenida",
"changecontentmodel-title-label": "Titulo de paje",
@@ -2566,6 +2597,7 @@
"thumbnail_dest_directory": "Arcivo destinal no pote es creada",
"thumbnail_image-type": "Tipo nonsuportada de imaje",
"thumbnail_gd-library": "Ajusta noncompleta de biblioteca GD: Funsiona $1 manca",
+ "thumbnail_image-size-zero": "La grandia de la fix de imaje pare es zero.",
"thumbnail_image-missing": "Fix pare manca: $1",
"thumbnail_image-failure-limit": "Tro multe atentas resente ($1 o plu) ia fali rendere esta imajeta. Atenta denova plu tarda, per favore.",
"import": "Emporta pajes",
@@ -2580,6 +2612,8 @@
"import-mapping-namespace": "Emporta a un spasio de nom:",
"import-mapping-subpage": "Emporta como supajes de la paje seguente:",
"import-upload-filename": "Nom de fix:",
+ "import-upload-username-prefix": "Prefisa intervical:",
+ "import-assign-known-users": "Asinia editas a usores local do la usor nomida esiste local",
"import-comment": "Comenta:",
"importtext": "Per favore, esporta la fix de la vici fontal par usa la [[Special:Export|util de esporta]].\nFisa lo a tu computador e carga lo asi.",
"importstart": "Emportante pajes...",
@@ -2588,6 +2622,7 @@
"imported-log-entries": "$1 {{PLURAL:$1|entrada|entradas}} de rejistra ia es emportada.",
"importfailed": "Emporta ia fali:
e variables como\n
.\nEn fato, lo despaci cuasi tota cosas entre brasetas risa duple.",
+ "expand_templates_intro": "Esta paje spesial prende vicitesto e despaci tota stensiles en lo, en modo recorsante. Lo despaci ance funsionas suportada de analisador sintatical como
e variables como
. En fato, lo despaci cuasi tota cosas entre brasetas risa duple.",
"expand_templates_title": "Titulo de contesto, per {{FULLPAGENAME}}, etc.:",
- "expand_templates_input": "Testo enflual:",
+ "expand_templates_input": "Vicitesto enflual:",
"expand_templates_output": "Resulta",
"expand_templates_xml_output": "Esflue XML",
"expand_templates_html_output": "Esflue HTML cru",
@@ -3673,7 +3726,7 @@
"expand_templates_preview": "Previde",
"expand_templates_preview_fail_html": "Car HTML cru es comutada en {{SITENAME}} e datos de sesion ia es perdeda, la previde es ascondeda per preveni atacas par JavaScript.\n\nSi esta es un atenta valida de previde, atenta denova, per favore.\nSi lo ancora no funsiona, proba [[Special:UserLogout|desautentici]] e reautentici, e serti ce tua surfador permete cucis de esta pajeria.",
"expand_templates_preview_fail_html_anon": "\nCar HTML cru es comutada en {{SITENAME}} e tu no es autenticida, la previde es ascondeda per preveni atacas par JavaScript.\n\nSi esta es un atenta valida de previde, [[Special:UserLogin|autentici]] e atenta denova, per favore.",
- "expand_templates_input_missing": "Tu debe furni a la min alga testo enflual.",
+ "expand_templates_input_missing": "Tu debe furni a la min alga vicitesto enflual.",
"pagelanguage": "Cambia lingua de paje",
"pagelang-name": "Paje",
"pagelang-language": "Lingua",
@@ -3890,6 +3943,8 @@
"restrictionsfield-badip": "Adirije o estende IP nonvalida: $1",
"restrictionsfield-label": "Estendes IP permeteda:",
"restrictionsfield-help": "Un adirije IP o estende CIDR per linia: Per comuta tota, usa:0.0.0.0/0\n::/0
",
+ "edit-error-short": "Era: $1",
+ "edit-error-long": "Eras:\n\n$1",
"revid": "revisa $1",
"pageid": "numero de paje $1",
"rawhtml-notallowed": "Eticetas <html> no pote es usada estra pajes normal.",
diff --git a/languages/i18n/lg.json b/languages/i18n/lg.json
index 243159c4a5..d8f54b8d1c 100644
--- a/languages/i18n/lg.json
+++ b/languages/i18n/lg.json
@@ -414,7 +414,7 @@
"userjspreview": "'''Jukira nti JavaScript gw'otegese omugezesamubugezesa oba omulozakobulozi.'''
\n'''Tannakazibwa.'''",
"sitecsspreview": "'''Jukira nti CSS ono omulozakobulozi.'''
\n'''Tannakazibwa.'''",
"sitejspreview": "'''Jukira nti JavaScript ono omulozakobulozi.'''
\n'''Tannakazibwa.'''",
- "userinvalidcssjstitle": "'''Kulabula:''' Tewali endabika eyitibwa \"$1\".
\nEmpapula eza .css ne .js bamemba ze b'ekoledde, amannya ga zo ennukuta za mu
\nzonna ziteekwa okuba ntono, okugeza ''{{ns:user}}:Foo/vector.css'' so ssi ''{{ns:user}}:Foo/Vector.css''.",
+ "userinvalidconfigtitle": "'''Kulabula:''' Tewali endabika eyitibwa \"$1\".
\nEmpapula eza .css ne .js bamemba ze b'ekoledde, amannya ga zo ennukuta za mu
\nzonna ziteekwa okuba ntono, okugeza ''{{ns:user}}:Foo/vector.css'' so ssi ''{{ns:user}}:Foo/Vector.css''.",
"updated": "(Ebituukanisidwa)",
"note": "'''Okunnyonyola:'''",
"previewnote": "'''Kuno kugezaamubugeza; by'okoze tebinnakazibwa!'''",
diff --git a/languages/i18n/li.json b/languages/i18n/li.json
index 4c3fc7e88b..85e6a98f36 100644
--- a/languages/i18n/li.json
+++ b/languages/i18n/li.json
@@ -655,7 +655,7 @@
"userjspreview": "'''Lèt op: doe tes noe dien persuunlik JavaScript.\nDe pagina is neet opgesjlage!",
"sitecsspreview": "'''Dit is allein 'n veurvertuin van de CSS.'''\n'''Deze is nog neet opgesjlage!'''",
"sitejspreview": "Dit is allein 'n veurvertuin van de JavaScriptcode.\nDe code is nog neet opgesjlage!",
- "userinvalidcssjstitle": "'''Waarsjoewing:''' d'r is gein skin \"$1\". \nLèt op: dien eige .css- en .js-pagina's beginne mèt 'ne klein lètter, beveurbeeld {{ns:user}}:Naam/vector.css in plaats van {{ns:user}}:Naam/Vector.css.",
+ "userinvalidconfigtitle": "'''Waarsjoewing:''' d'r is gein skin \"$1\". \nLèt op: dien eige .css- en .js-pagina's beginne mèt 'ne klein lètter, beveurbeeld {{ns:user}}:Naam/vector.css in plaats van {{ns:user}}:Naam/Vector.css.",
"updated": "(Biegewèrk)",
"note": "'''Opmirking:'''",
"previewnote": "Lèt op: dit is 'n controlepazjena; dien teks is nog neet opgesjlage!",
@@ -1012,7 +1012,7 @@
"prefs-files": "Bestenj",
"prefs-custom-css": "Persoonlijke CSS",
"prefs-custom-js": "Persoonlijke JS",
- "prefs-common-css-js": "Gedeilde CSS/JS veur eder vormgaeving:",
+ "prefs-common-config": "Gedeilde CSS/JS veur eder vormgaeving:",
"prefs-reset-intro": "Gebroek dees functie om dien veurkäöre te herstelle nao de standaardinstellinge.\nDees hanjeling kin neet ongedaon gemaak waere.",
"prefs-emailconfirm-label": "E-mailbevestiging:",
"youremail": "Dien e-mailadres",
@@ -1333,8 +1333,6 @@
"newpageletter": "N",
"boteditletter": "b",
"number_of_watching_users_pageview": "[$1 {{PLURAL:$1|keer|keer}} op 'ne volglies]",
- "rc_categories": "Bepirk tot categorieë (sjeij mit 'n \"|\")",
- "rc_categories_any": "Idder vanne gekaozene",
"rc-change-size-new": "$1 {{PLURAL:$1|byte|bytes}} nao verangering",
"newsectionsummary": "/* $1 */ nuje subkop",
"rc-enhanced-expand": "Toean details",
diff --git a/languages/i18n/lij.json b/languages/i18n/lij.json
index 74558b9e01..0b7b526abb 100644
--- a/languages/i18n/lij.json
+++ b/languages/i18n/lij.json
@@ -385,7 +385,7 @@
"userlogin-yourname-ph": "Inserisci o teu nómme uténte",
"createacct-another-username-ph": "Scrivi o teu nomme utente",
"yourpassword": "Pòula segretta:",
- "userlogin-yourpassword": "Inserisci a teu ciâve",
+ "userlogin-yourpassword": "Ciâve",
"userlogin-yourpassword-ph": "Scrivi a tu poula segretta.",
"createacct-yourpassword-ph": "Scrivi 'na poula segretta.",
"yourpasswordagain": "Riscrivi a pòula segrétta:",
@@ -653,7 +653,7 @@
"userjspreview": "'''Questa a l'è solo un'anteprimma do proppio JavaScript personâ. E modiffiche no son ancon stæte sarvæ!'''",
"sitecsspreview": "'''Questa a l'è solo un'anteprimma do CSS. E modiffiche no son ancon stæte sarvæ!'''",
"sitejspreview": "'''Questa a l'è solo un'anteprimma pe provâ o JavaScript; e modiffiche no son ancon stæte sarvæ!'''",
- "userinvalidcssjstitle": "Attension: no existe arcun tema con nomme \"$1\". E paggine pe-i .css e .js personalizzæ g'han o tittolo minuscolo, presempio {{ns:user}}:Esempio/vector.css e no {{ns:user}}:Esempio/Vector.css.",
+ "userinvalidconfigtitle": "Attension: no existe arcun tema con nomme \"$1\". E paggine pe-i .css e .js personalizzæ g'han o tittolo minuscolo, presempio {{ns:user}}:Esempio/vector.css e no {{ns:user}}:Esempio/Vector.css.",
"updated": "(Aggiornòu)",
"note": "'''Notta:'''",
"previewnote": "'''Questa chì a l'è solo 'n'anteprimma; i cangiamenti no son ancon stæti sarvæ!'''",
@@ -1015,7 +1015,7 @@
"prefs-files": "File",
"prefs-custom-css": "CSS personalizzou",
"prefs-custom-js": "JavaScript personalizzou",
- "prefs-common-css-js": "CSS/JavaScript condiviso pe tutte e pelle:",
+ "prefs-common-config": "CSS/JavaScript condiviso pe tutte e pelle:",
"prefs-reset-intro": "L'è poscibile doeuviâ sta pagina pe rimpostâ e propie preferençe a quelle predefinie do scito.\nL'opiaçion a no poeu ese annullâ.",
"prefs-emailconfirm-label": "Conferma de l'e-mail:",
"youremail": "Indirìsso email:",
@@ -1404,8 +1404,6 @@
"newpageletter": "N",
"boteditletter": "b",
"number_of_watching_users_pageview": "[osservâ da {{PLURAL:$1|un utente|$1 utenti}}]",
- "rc_categories": "Limite a-e categorie (separæ da \"|\"):",
- "rc_categories_any": "Quâ-se-sæ fra quelle indicæ",
"rc-change-size-new": "$1 {{PLURAL:$1|byte|bytes}} doppo a modiffica",
"newsectionsummary": "/* $1 */ neuva seçion",
"rc-enhanced-expand": "Fanni vedde i detaggi",
diff --git a/languages/i18n/lki.json b/languages/i18n/lki.json
index 137a1bc334..368a641f9a 100644
--- a/languages/i18n/lki.json
+++ b/languages/i18n/lki.json
@@ -648,7 +648,7 @@
"userjspreview": "'''ب٠Ûاد داشت٠باشÛد Ú©Ù Ø´Ù
ا ÙÙØ· دارÛد جاÙااسکرÛپت کاربرÛâتا٠را اÙ
تØا٠Ù
ÛâÚ©ÙÛد/Ù¾ÛØ´âÙÙ
اÛØ´ آ٠را Ù
ÛâبÛÙÛد.'''\n'''اÛ٠جاÙااسکرÛپت ÙÙÙز ذخÛر٠ÙشدÙâاست!'''",
"sitecsspreview": "'''ب٠Ûاد داشت٠باشÛد Ú©Ù Ø´Ù
ا ÙÙØ· دارÛد Ù¾ÛØ´âÙÙ
اÛØ´ اÛ٠سÛâاسâاس را Ù
ÛâبÛÙÛد.'''\n'''اÛ٠سÛâاسâاس ÙÙÙز ذخÛر٠ÙشدÙâاست!'''",
"sitejspreview": "'''ÙراÙ
ÙØ´ Ù
Ú©ÙÛد Ú©Ù Ø´Ù
ا ÙÙØ· دارÛد Ù¾ÛØ´âÙÙ
اÛØ´ سÛâاسâاس کاربرÛâتا٠را Ù
ÛâبÛÙÛد.'''\n'''اÛ٠سÛâاسâاس ÙÙÙز ذخÛر٠ÙشدÙâاست!'''",
- "userinvalidcssjstitle": "'''Ùشدار:''' Ù¾ÙستÙâØ§Û Ø¨Ù ÙاÙ
«$1» ÙجÙد Ùدارد.\nب٠Ûاد داشت٠باشÛد ک٠صÙØÙâÙØ§Û Ø´Ø®ØµÛ â.css Ù â.js باÛد عÙÙاÙÛ Ø¨Ø§ ØرÙÙ Ú©ÙÚÚ© داشت٠باشÙØ¯Ø ÙÙ
ÙÙÙ: {{ns:user}}:ÙÙ/vector.css در Ù
Ùاب٠{{ns:user}}:ÙÙ/Vector.css.",
+ "userinvalidconfigtitle": "'''Ùشدار:''' Ù¾ÙستÙâØ§Û Ø¨Ù ÙاÙ
«$1» ÙجÙد Ùدارد.\nب٠Ûاد داشت٠باشÛد ک٠صÙØÙâÙØ§Û Ø´Ø®ØµÛ â.css Ù â.js باÛد عÙÙاÙÛ Ø¨Ø§ ØرÙÙ Ú©ÙÚÚ© داشت٠باشÙØ¯Ø ÙÙ
ÙÙÙ: {{ns:user}}:ÙÙ/vector.css در Ù
Ùاب٠{{ns:user}}:ÙÙ/Vector.css.",
"updated": "(تازة Ø³Ø§Ø²Û Ø¨ÛØ©)",
"note": "'''ÙکتÙ:'''",
"previewnote": "'''ب٠Ûاد داشت٠باشÛد ک٠اÛÙ ÙÙØ· Ù¾ÛØ´âÙÙ
اÛØ´ است.'''\nتغÛÛرات Ø´Ù
ا ÙÙÙز ذخÛر٠ÙشدÙâاست!",
@@ -996,7 +996,7 @@
"prefs-files": "ÙاÛÙ",
"prefs-custom-css": "سÛâاسâاس شخصÛ",
"prefs-custom-js": "جاÙااسکرÛپت شخصÛ",
- "prefs-common-css-js": "سÛâاسâاس/جاÙااسکرÛپت Ù
شترک Ø¨Ø±Ø§Û ØªÙ
اÙ
Ù¾ÙستÙâÙا:",
+ "prefs-common-config": "سÛâاسâاس/جاÙااسکرÛپت Ù
شترک Ø¨Ø±Ø§Û ØªÙ
اÙ
Ù¾ÙستÙâÙا:",
"prefs-reset-intro": "Ø´Ù
ا Ù
ÛâتÙاÙÛد از اÛ٠صÙØÙ Ø¨Ø±Ø§Û Ø¨Ø§Ø²Ú¯Ø±Ø¯Ø§Ùد٠تÙظÛÙ
ات Ø®Ùد ب٠پÛØ´âÙرض تارÙÙ
ا استÙاد٠کÙÛد.\nاÛ٠کار بازگشتâÙاپذÛر است.",
"prefs-emailconfirm-label": "تأÛÛد اÛÙ
ÛÙ:",
"youremail": "اÛÙ
ÛÙ:",
@@ -1266,8 +1266,6 @@
"newpageletter": "ÙÙ",
"boteditletter": "ر",
"number_of_watching_users_pageview": "[$1 {{PLURAL:$1|کاربر}} Ù¾ÛâÚ¯ÛرÙدÙ]",
- "rc_categories": "Ù
ØدÙد ب٠اÛ٠ردÙâÙا (ردÙâÙا را با «|» جدا Ú©ÙÛد):",
- "rc_categories_any": "Ùر کداÙ
از Ù
ÙتخبâÙا",
"rc-change-size-new": " $1دؤÙ
ا تÛÙÛر دائÙ{{PLURAL:$1|باÛت|باÛتÙ}}",
"newsectionsummary": "/* $1 */ بÛخش ÙÙÙ",
"rc-enhanced-expand": "ÙÙ
اÛØ´ جزئÛات",
diff --git a/languages/i18n/lmo.json b/languages/i18n/lmo.json
index f3b0346ec8..7762da1f82 100644
--- a/languages/i18n/lmo.json
+++ b/languages/i18n/lmo.json
@@ -703,7 +703,7 @@
"prefs-files": "Archivi",
"prefs-custom-css": "CSS personalizà t",
"prefs-custom-js": "JavaScript personalizat",
- "prefs-common-css-js": "CSS/JavaScript cundivis per töte le skin:",
+ "prefs-common-config": "CSS/JavaScript cundivis per töte le skin:",
"prefs-emailconfirm-label": "Cunferma de l'e-mail:",
"youremail": "E-mail",
"username": "{{GENDER:$1|Nom ütent}}:",
@@ -868,7 +868,6 @@
"newpageletter": "N",
"boteditletter": "b",
"number_of_watching_users_pageview": "[tignìda d'öcc de {{PLURAL:$1|1 ütènt|$1 ütèncc}}]",
- "rc_categories_any": "Töcc",
"rc-change-size-new": "$1 {{PLURAL:$1|byte|bytes}} dopo la mudìfica",
"newsectionsummary": "/* $1 */ sezión növa",
"rc-enhanced-expand": "FÃ ved i detai",
diff --git a/languages/i18n/lrc.json b/languages/i18n/lrc.json
index 4fcbd645bf..c77099f623 100644
--- a/languages/i18n/lrc.json
+++ b/languages/i18n/lrc.json
@@ -54,8 +54,8 @@
"tog-norollbackdiff": "ÙأرخÛا ÙÛ Ø¯ Ûئ گئ٠ڤادئÙ
ا رأتئ٠د بئÛ٠بÙرÛت",
"tog-useeditwarning": "د Ú¯Ø§ØªÛ Ú©Ø¦ Ø¢ÙئشتÛا ئÙ
اÛÛ ÙأبÛÙÛ Ø¯ بأÙÚ¯Û Ú¤ÛراÛئشت ڤئ جا Ù
ئ ÙئÙ
Ù
ئÙÛ Ú¤Ø§Ø±Ø¦Ø³ÛØ§Ø±Û Ø¨Ø£Ú©",
"tog-prefershttps": "ÙØ£Ù
ÛØ´Û Ø¯ Ú¯Ø§ØªÛ Ú©Ø¦ Ù
ئ ÙاÙ
د ساÙ
ÙÙÙÛ Ù¾Ø¦ÛڤأÙد Ø£Ù
Ù ÙÛ Ú¤Ø¦ کار بئÛر",
- "underline-always": "ÙØ£Ù
ÛØ´Û",
- "underline-never": "ÙÛÚڤأخت",
+ "underline-always": "ÙÙ
Ûشٱ",
+ "underline-never": "ÙÛÚÛخت",
"underline-default": "Ù¾ÙÙØ³Û Ûا دÙÚ¤Ø§Ø±ØªÛ ÙÛÛأر Ù¾ÛØ´ Ùأرض",
"editfont-style": "راساگ٠ÙÙÙت Ø´Ûڤات ÙÛ Ú¤ÛراÛئشت Ú©Ù",
"editfont-monospace": "ÙÙÙت تأک بأÙÚ¯Û ÛÛ",
@@ -102,13 +102,13 @@
"jan": "جاÙÛÛÙ±",
"feb": "ÙÛرÛÙ±",
"mar": "Ù
ارس",
- "apr": "آڤرÛÙ",
+ "apr": "Ø¢ÛرÛÙ",
"may": "Ù
ئÛ",
- "jun": "جÙÙØ£Ù",
+ "jun": "جÛÙ±Ù",
"jul": "جÙÙÙاÛ",
"aug": "Ø¢Ú¯Ùست",
- "sep": "سئپتاÙ
ر",
- "oct": "ئÙکتÙڤر",
+ "sep": "سپتاÙ
ر",
+ "oct": "اÙکتÙبر",
"nov": "ÙÙڤاÙ
ر",
"dec": "داÙساÙ
ر",
"january-date": "جاÙÚ¤ÛÛ $1",
@@ -214,11 +214,11 @@
"pool-servererror": "Ù¾ÙÙ٠ئشÙ
ار خئذÙ
Ø£ØªÚ¯Û Ø¯ دأسرئس ÙÛ($1).",
"poolcounter-usage-error": "خأطا ڤئ کار گئرئتئÙ:$1",
"aboutsite": "داÙبارٱ {{SITENAME}}",
- "aboutpage": "Ù¾ÙرÙجٱ:دبارٱ",
+ "aboutpage": "Project:دبارٱ",
"copyright": "Ù
ÛÙÙÙÙÛ Ûا Ùا٠د دأسرئس $1 Ù
أر ÛÛ Ú©Ø¦ ڤئ Ûئ گئ٠شÛÚ¤Û ÙØ£ÙÛ ÙÛسأÙÛ Ø¨ÙÙÛ.",
"copyrightpage": "{{ns:project}}:Ú©ÙÙ¾Û Ø±Ø§Ûت",
"currentevents": "رÙØ® ڤأÙÛا ئÛسئÙÛ",
- "currentevents-url": "Ù¾ÙرÙØ¬Û Ûا:رÙØ® ڤأÙÛا ئÛسئÙÛ",
+ "currentevents-url": "Project:رÙØ® ÛÙ±ÙÛا اÛساÙÙÛ",
"disclaimers": "تÛٱپÛشکارÛا",
"disclaimerpage": "Ù¾ÙرÙجٱ: تÛٱپÙØ´Û Ú©Ø±Ø¯Ù ÙÙ
Ù±Ú¯Ûر",
"edithelp": "ÙÙÙ
ÙØ§Ø±Û Ø³Û Ú¤ÛراÛئشت",
@@ -574,8 +574,8 @@
"newarticle": "تازÛ",
"newarticletext": "Ø´ÙÙ
ا ÙاÛÛ٠ڤا دئÙ
ا ÙÙÙ
پئÛڤأÙØ¯Û Ú©Ø¦ Ú¤ÙجÙÙد ÙارÛ.\nØ³Û Ø±Ø£Ú¤Ø£ÙدÛØ§Ø±Û Ø¨Ø£ÙÚ¯Û.Ø´ÙرÙ٠بأکÛت Ù
ÛÙئ Ø¬Ø£Ú¤Û ÙØ§Ø±Û Ø¨Ø£ÙÛسÛت (Ø³Û Ø¯ÙÙÙئسئ٠بÛشتئر سئÛÙ [$1 ] بأکÛت).\nأر Ø´ÙÙ
ا Ø³Û Ø¦Ø´ØªØ¦Ú¤Ø§ کئردئ٠ÙائÛت ئÛÚØ¦Ø Ø±Û Ø¯ÙÚ¯Ù
Û Ú¤Ø§Ø¯Ø¦Ù
ا رأتئ٠دÙÚ¤Ø§Ø±ØªÛ ÙÛأر بأپÙÙرÙÛت.",
"anontalkpagetext": "----",
- "noarticletext": "د ئÛسئÙÛا د Ø¦Û Ø¨Ø£Ùگؤ ÙÛØ³Ø¦Ø³Û ÛÛ Ú¤ÙجÙÙد ÙاشتÛ.\nØ´ÙÙ
ا Ù
Û ØªÙÙÙÛت د[[Special:Search/{{PAGENAME}}|بگردÛد]] د Ø¦Û Ø¨Ø£ÙÚ¯Û Ûا د بأÙÚ¯Û ÙØ£ÙÛ Ûا [{{fullurl:{{#Special:Log}}|page={{FULLPAGENAMEE}}}} د ÙØ£ÙÛ ÙÛ Ù¾Ø¦Û Ø¬ÙØ±Û Ø¨ÙÙÛ]Ø [{{fullurl:{{FULLPAGENAME}}|action=edit}} Ûا Ø¦Û Ø¨Ø£ÙÚ¯Û ÙÛ Ú¤ÛراÛئشت بأکÛت].",
- "noarticletext-nopermission": "د ئÛسئÙÛا د Ø¦Û Ø¨Ø£Ùگؤ ÙÛØ³Ø¦Ø³Û ÛÛ Ú¤ÙجÙÙد ÙاشتÛ.\nØ´ÙÙ
ا Ù
Û ØªÙÙÙÛت د[[Special:Search/{{PAGENAME}}|بگردÛد]] د Ø¦Û Ø¨Ø£ÙÚ¯Û Ûا د بأÙÚ¯Û ÙØ£ÙÛ Ûا [{{fullurl:{{#Special:Log}}|page={{FULLPAGENAMEE}}}} د ÙØ£ÙÛ ÙÛ Ù¾Ø¦Û Ø¬ÙØ±Û Ø¨ÙÙÛ]Ø [{{fullurl:{{FULLPAGENAME}}|action=edit}}.ڤأÙÛ Ø´ÙÙ
ا صئÙا ÛÛ ÙÛ Ú©Ø¦ Ø¦Û Ø¨Ø£ÙÚ¯Û ÙÛ Ø±Ø§Ø³ بأکÛت ÙارÛت.",
+ "noarticletext": "د اÛساÙÙÛا Ø§Û Ø¨ÙÚ¯Ù± ÙÛسسٱ ÛÙجÛد Ùاشتٱ.\nØ´ÙÙ
ا Ù
Û ØªÛÙÛت د[[Special:Search/{{PAGENAME}}|بگردÛد]] د Ø§Û Ø¨ÙÚ¯Ù± Ø§Û Ø¯ بÙÚ¯Ù± ÙÙ±ÙÛ Ûا [{{fullurl:{{#Special:Log}}|page={{FULLPAGENAMEE}}}} د ÙÛ Ù¾Û Ø¬ÛØ±Û Ø¨ÛÙ±]Ø [{{fullurl:{{FULLPAGENAME}}|action=edit}} Ûا Ø§Û Ø¨ÙÚ¯Ù± Ùا٠ÛÛراÛشت بٱکÛت].",
+ "noarticletext-nopermission": "د اÛساÙÙÛا Ø§Û Ø¨ÙÚ¯Ù± ÙÛسسٱ ÛÛ ÛÙجÛد Ùاشتٱ.\nØ´ÙÙ
ا Ù
Û ØªÛÙÛت د[[Special:Search/{{PAGENAME}}|بگردÛد]] د Ø§Û Ø¨ÙÚ¯Ù± Ûا د بÙÚ¯Ù± ÙÙ±ÙÛ Ûا [{{fullurl:{{#Special:Log}}|page={{FULLPAGENAMEE}}}} د ÙÛ Ù¾Û Ø¬ÛØ±Û Ø¨ÛÙ±]Ø [{{fullurl:{{FULLPAGENAME}}|action=edit}}.ÛÙÛ Ø´ÙÙ
ا ساÙÙا ÛÙ± ÙÙ± Ú©Ø§Ù Ø§Û Ø¨ÙÚ¯Ù± Ùا٠راس بٱکÛت ÙارÛت.",
"missing-revision": "ڤاÙئÛØ£Ø±Û #$1 د بأÙÚ¯Û ÛÛ Ú©Ø¦ ÙÙÙ
ئش ڤئÙÛ \"{{FULLPAGENAME}}\" Ú¤ÙجÙÙد ÙارÛ.\n\nÚ¯Ø§Ø³Û Ø³Û Ûئ گئ٠ڤÛرگار ڤئ ÙئÙÚ¯ÙÙ
ÙأبÛÛÛ Ú©Ø¦ د Ûئ گئ٠بأÙÚ¯Û Ù¾Ø§Ú©Ø³Ø§ بÛÛÛ ÙÙÙ
پئÛڤأÙد بÛÛÛ Ø±Ø£Ú¤Ø£ÙدÛØ§Ø±Û Ø¨ÛÛÛ.\nÚ¯Ø§Ø³Û Ø¬ÙزئÛات د[{{fullurl:{{#Special:Log}}/delete|page={{FULLPAGENAMEE}}}} deletion log] دÛØ§Ø±Û Ø¨Ø£Ú©Ø£Ù.",
"userpage-userdoesnotexist": "Øئساڤ کارÛØ§Ø±Û \"$1\" ثأڤت ÙØ£Ù
ÙأبÛÛÛ.\nأر Ù
ÛھاÛت Ø¦Û Ø¨Ø£ÙÚ¯Û Ùئ بأسازÛت Ûا Ú¤ÛراÛئشت Ú©Ø§Ø±Û Ø¨Ø£Ú©Ûت Ûئ Ú¯Ø¦Ù Ú¤Ø§Ø±Ø¦Ø³Û Ø£ÙجÙÙ
بئÛتÙÙ.",
"userpage-userdoesnotexist-view": "Øئساڤ کارÛØ§Ø±Û \"$1\" ثأڤت ÙأبÛÛÛ.",
@@ -587,7 +587,7 @@
"userjspreview": "د Ú¤Ûر داشتÙÙئÛت کئ Ø´ÙÙ
ا ÙØ£Ùأط Ù
Û ØªÙÙÙÛت جاڤا ئسکئرÛپت کارÛØ§Ø±Û ØªÙÙÙÛ Ù¾ÛØ´ سئÛ٠بأکÛت. ڤئ ئÛسئÙÛ Ø¦Ù
اÛÛ ÙأبÛÛÛ!",
"sitecsspreview": "د Ú¤Ûر داشتÙÙئÛت کئ Ø´ÙÙ
ا ÙØ£Ùأط Ù
Û ØªÙÙÙÛت Ø¦Û Ø³Û Ø¦Ø³ ئس کارÛØ§Ø±Û ØªÙÙÙÛ Ù¾ÛØ´ سئÛ٠بأکÛت. ڤئ ئÛسئÙÛ Ø¦Ù
اÛÛ ÙأبÛÛÛ!",
"sitejspreview": "د Ú¤Ûر داشتÙÙئÛت کئ Ø´ÙÙ
ا ÙØ£Ùأط Ù
Û ØªÙÙÙÛت Ø¦Û Ø¬Ø§Ú¤Ø§ ئسکئرÛپت کارÛØ§Ø±Û ØªÙÙÙÛ Ù¾ÛØ´ سئÛ٠بأکÛت. ڤئ ئÛسئÙÛ Ø¦Ù
اÛÛ ÙأبÛÛÛ!",
- "userinvalidcssjstitle": "زئÙار: Ù¾ÙÙØ³Û \"$1\" ÙÛئش.\nØ³Û Ø¦Ø³ ئس جاڤأÙÛ Ù Ø¨Ø£ÙÚ¯Û Ûا جاڤا ئسکئرÛپت سأربأÙÚ¯ ڤا ØأرÙÛا Ú©ÙÚئک ÙÛ Ú¤Ø¦ کار گئرئتÛØ Ú¾Ø£Ù
ÚئÙÛ {{ns:کارÛار}}:ÙÙ/ڤئکتÙر.Ø³Û Ø¦Ø³ ئس ÚÛ Ø¯ Ø±Û Ú¤Ø¦ Ø±Û {{ns:کارÛار}}:ÙÙ/ڤئکتÙر. Ø³Û Ø¦Ø³ ئسÛ.",
+ "userinvalidconfigtitle": "زئÙار: Ù¾ÙÙØ³Û \"$1\" ÙÛئش.\nØ³Û Ø¦Ø³ ئس جاڤأÙÛ Ù Ø¨Ø£ÙÚ¯Û Ûا جاڤا ئسکئرÛپت سأربأÙÚ¯ ڤا ØأرÙÛا Ú©ÙÚئک ÙÛ Ú¤Ø¦ کار گئرئتÛØ Ú¾Ø£Ù
ÚئÙÛ {{ns:کارÛار}}:ÙÙ/ڤئکتÙر.Ø³Û Ø¦Ø³ ئس ÚÛ Ø¯ Ø±Û Ú¤Ø¦ Ø±Û {{ns:کارÛار}}:ÙÙ/ڤئکتÙر. Ø³Û Ø¦Ø³ ئسÛ.",
"updated": "(ڤئ ÙئÙÚ¯ÙÙ
Ø³Ø§Ø²Û Ø¨ÛÛÛ)",
"note": "'''ÙÛسأÙئÙ:'''",
"previewnote": "ÙØ£Ùأط Ø¦Û Ù¾ÛØ´ سئÛ٠د Ú¤ÛرتÙ٠با.\nØ¢Ùئشت کارÛاتÙ٠ھأÙÛ Ø¦Ù
اÛÛ ÙأبÛÙÛ",
@@ -805,7 +805,7 @@
"difference-title": "Ùرخ Ù
ÛÙجا ÙاÙÛرÛا \"$1\"",
"difference-title-multipage": "Ùرخ Ù
ÛÙجا بÙÚ¯Ù Ûا \"$1\" Ù \"$2\"",
"difference-multipage": "(Ùرخ Ù
ÛÙجا بÙÚ¯Ù Ûا)",
- "lineno": "خط $1:",
+ "lineno": "خٱت $1:",
"compareselectedversions": "دÙبار دÛئÙÛاÛÛ Ú©Ù Ø§Ùتخا٠بÛÙÙ Ù
ÙاÛس٠بکÛتÙ",
"showhideselectedversions": "Ø´ÙÚ© دÛئ٠ÙاÙÛرÛا اÙتخا٠بÛÙ Ù٠آÙشت بکÛد",
"editundo": "ÙااÙجÙÙ
گر کردÙ",
@@ -825,7 +825,7 @@
"next-page": "بÙÚ¯Ù ÙÙاÛÛ",
"prevn-title": "Ù¾Ùشتر $1 {{PLURAL:$1|ÙتÙجÙ|ÙتÙجÙا}}",
"nextn-title": "ÙÙاÙÛ $1 {{PLURAL:$1|ÙتÙجÙ|ÙتÙجÙا}}",
- "shown-title": "ÙئشÙ٠دأئ٠$1 {{PLURAL:$1|ÙأتÛجÛ|ÙأتÛجÛ}} Ø³Û Ùأر بأÙÚ¯Û",
+ "shown-title": "ÙØ´Û Ø¯Ù±Ø¦Ù $1 {{PLURAL:$1|ÙتÛجٱ|ÙتÛجٱÛا}} Ø³Û Ùار بÙÚ¯Ù±",
"viewprevnext": "دÙئ٠($1 {{int:pipe-separator}} $2) ($3)",
"searchmenu-exists": "'''اÛÚ٠بÙÚ¯Ù Ø§Û Ùئ ÙÙ ÙÙÙ
\"[[:$1]]\" Ú©Ù Ùا د Ø§Û ÙÛÚ©Û'''",
"searchmenu-new": "'''Ø§Û Ø¨ÙÚ¯Ù Ù٠راس ÙÙ \"[[:$1]]\" د Ø§Û ÙÙÙÙ!'''",
@@ -839,7 +839,7 @@
"searchprofile-advanced-tooltip": "ÙÙÙ
جاÙا ÙÙÙ
دÙار بگرد",
"search-result-size": "$1 ({{PLURAL:$2|1 Ú©ÙÛÙ
Ù|$2 Ú©ÙÛÙ
Ù Ûا}})",
"search-result-category-size": "{{PLURAL:$1|1 Ø£ÙدÙÙ
|$1 Ø£ÙدÙÙ
Ûا}} ({{PLURAL:$2|1 زÛردأسÛ|$2 زÛØ±Ø¯Ø£Ø³Û Ûا}}Ø {{PLURAL:$3|1 جاÙÛا|$3 جاÙÛاÛا}}",
- "search-redirect": "(Ùرگشت٠$1)",
+ "search-redirect": "(ÛÙØ±Ú¯Ø´ØªÙ Ø³Û $1)",
"search-section": "(بÙرجا $1)",
"search-category": "(دس٠$1)",
"search-file-match": "(ÛÚ©Û Ú©Ø±Ø¯Ù Ù
ÛÙÙÙ٠جاÙÛا)",
@@ -928,7 +928,7 @@
"prefs-files": "جاÙÛاÛا",
"prefs-custom-css": "Ø³Û Ø§Ø³ اس جااÙتائÙ",
"prefs-custom-js": "جاÙا ÙÛسس٠جااÙتائÙ",
- "prefs-common-css-js": " Ø³Û Ø§Ø³ اس/جاÙا اسکرÛپت بÙر بÛÙ Ø³Û ÙÙ
Ù Ù¾Ùس٠Ûا:",
+ "prefs-common-config": " Ø³Û Ø§Ø³ اس/جاÙا اسکرÛپت بÙر بÛÙ Ø³Û ÙÙ
Ù Ù¾Ùس٠Ûا:",
"prefs-reset-intro": "Ø´Ù
ا Ù
Û ØªÙÙÛت Ø§Û Ø¨ÙÚ¯Ù Ø³Û Ø¯ Ù٠زÙ٠کرد٠ترجÛØات Ø®Ùت Ù٠شک٠تÛارگ٠پÛØ´ Ùرض Ù٠کار بÙÙÙÛت.\nÛÙ Ùرئشت پذÛر Ùئ.",
"prefs-emailconfirm-label": "پش راست کرد٠اÙجÙÙ
اÙاÙ
Ù:",
"youremail": "Ø£ÙجÙÙ
اÙاÙ
Û:",
@@ -1171,7 +1171,7 @@
"rcshowhidecategorization": "Ø¬Ø£Ø±ØºÛ Ú©Ø§Ø±Û Ø¨Ø£ÙÚ¯Û $1",
"rcshowhidecategorization-show": "ÙئشÙ٠دأئÙ",
"rcshowhidecategorization-hide": "ÙاÙ
کئردئÙ",
- "rclinks": "آخرÛ٠آÙشتÛا $1 Ùش٠بÛ٠د اخرÛ٠رÙزÛا $2",
+ "rclinks": "آخرÛ٠آÙشتÛا $1 د آخرÛ٠رÛزÛا دÛØ§Ø±Û Ø¨Ù±Ú© $2",
"diff": "Ùأرخ",
"hist": "Ú¤Ûرگار",
"hide": "ÙاÙ
کئردئÙ",
@@ -1181,8 +1181,6 @@
"boteditletter": "ب",
"unpatrolledletter": "!",
"number_of_watching_users_pageview": "[$1 دÛÙÙ {{PLURAL:$1|کارÛار|کارÛارÛا}}]",
- "rc_categories": "Ø¬Ø£Ø±ØºÛ Ûا ÙÛ Ù
أدÙÙد Ú©Ù(ڤا \"|\" جئگا باÙ)",
- "rc_categories_any": "ھأرکÙÙ
کئ Ú¯ÙÙئ Ú¤ÙرÚÛÛ Ø¨ÛÛÙÛ",
"rc-change-size": "$1",
"rc-change-size-new": "$1 {{PLURAL:$1|باÛت|باÛتÛا}} ÙاÙÙا Ø¢ÙشتکارÛ",
"newsectionsummary": "/* $1 */ بÙرجا تازÙ",
@@ -2237,7 +2235,7 @@
"tooltip-pt-logout": "د ساÙ
ÙÙ٠دراÙÙ
ائÙ",
"tooltip-pt-createaccount": "Ø´Ù
ا تشÙÛ٠بÛÛت٠ک٠ÛÙ Ú¯Ù Øسا٠راست بکÛت ٠بÛاÛت ÙاÙ
ÛÙØ Ø¯ Ùر جÙر Ø§Û Ú©Ø§Ø± اÚØ¨Ø§Ø±Û Ùئ",
"tooltip-ca-talk": "Ùس٠دبار٠Ù
ÛÙÙÙ٠بÙÚ¯Ù",
- "tooltip-ca-edit": "Ø´Ù
ا تÙÙÙد Ø§Û Ø¨ÙÚ¯Ù ÙÙ ÙÙراÙشت بÙÙد. Ùط٠بÙÙد دگÙ
Ù Ù¾ÙØ´ دÙئ٠پÙØ´ د اÙ
اÛÛ٠کرد٠ÙÙ Ù٠کار بÛئرÛت",
+ "tooltip-ca-edit": "ÛÛراÛشت Ø§Û Ø¨ÙÚ¯Ù±",
"tooltip-ca-addsection": "د Û٠گ٠بÙرجا ÙÙÛ Ø´Ø±Ù Ø¨Ú©",
"tooltip-ca-viewsource": "Ø§Û Ø¨Ùگ٠پر Ù Ù¾ÛÙ
بÙÙ.\nØ´Ù
ا تÙÙÙت سرÚÙ
Ù Ø´ بئÙÙÙÙت",
"tooltip-ca-history": "دÙÙار٠دÙØ¦Ù Ø§Û Ø¨ÙÚ¯Ù",
@@ -2263,7 +2261,7 @@
"tooltip-t-recentchangeslinked": "Ø¢ÙشتÛا تاز٠با٠Ù
ئ٠بÙÚ¯ÙاÙÙ Ù٠د Ø§Û Ø¨ÙÚ¯Ù ÙÙÙ
Ù¾ÛÙÙد بÙئÙÙ",
"tooltip-feed-rss": "ÙÙا٠ØÙ٠آر اس اس Ø³Û Ø§Û Ø¨ÙÚ¯Ù",
"tooltip-feed-atom": "ØÙا٠ÙÙ٠اتÙ
Û Ø³Û Ø§Û Ø¨ÙÚ¯Ù",
- "tooltip-t-contributions": "ÛÙ ÙÙÙ
گ٠د ÙÙÙ
ÛارÛا Ø§Û Ú©Ø§Ø±Ùر",
+ "tooltip-t-contributions": "Ûا٠گاÙ٠سÛائٱ ÙÙÙ
ÛØ§Ø±Û Ø³Û {{GENDER:$1|Ø§Û Ú©Ø§Ø±Ûار}}",
"tooltip-t-emailuser": "Ø³Û Ø§Û ÙارÙر اÙÙ
ÙÙ ÙÙ ÙÙ",
"tooltip-t-info": "دÙÙسÙ
ÙÛا بÛشتر Ø¯Ø¨Ø§Ø±Ù Ø§Û Ø¨ÙÚ¯Ù",
"tooltip-t-upload": "سÙارکرد٠جاÙÛاÛا",
@@ -2273,7 +2271,7 @@
"tooltip-ca-nstab-main": "دÙئ٠Ù
ÛÙÙÙ٠بÙÚ¯Ù",
"tooltip-ca-nstab-user": "دÙئ٠بÙگ٠کارÛار",
"tooltip-ca-nstab-media": "دÛئ٠بÙÚ¯Ù Ùارسگر",
- "tooltip-ca-nstab-special": "ا٠بÙÚ¯Ù ÙÙج٠ÙÙØ Ø´Ù
ا ÙتÙÙÙت Ø®Ùد ا٠بÙÚ¯Ù ÙÙ ÙÙراÙشت بÙÙد",
+ "tooltip-ca-nstab-special": "ÛÙ± Ûا٠گاÙ٠بÙÚ¯Ù± ÛÛجٱ ÛÙ±Ø ÙبÛÙ± ÛÛراÛشتش بٱکÛت",
"tooltip-ca-nstab-project": "دÙئ٠بÙگ٠پرÙجÙ",
"tooltip-ca-nstab-image": "دÙئ٠بÙگ٠جاÙÛا",
"tooltip-ca-nstab-mediawiki": "دÛئ٠پÛغÙÙ
ساÙ
ÙÙÙ",
@@ -2313,7 +2311,7 @@
"spam_reverting": "ÙاگردÙÙÛ ÙÙ Ø¢Ø®Ø±Û ÙسÙÙ Ø§Û Ú©Ù ÙÙÙ
Ù¾ÛÙÙØ¯Û ÙÙ $1 ÙارÙ.",
"spam_blanking": "ÙÙ
Ù ÙاÙئرÛاÛÛ Ú©Ù Ù
ÛÙÙÙ٠دار ÙÙÙ
Ù¾ÛÙÙد $1 ÙئÙØ Ø¯Ø§Ø±Ù ØاÙÛ Ø¨ÙئÙ",
"spam_deleting": "ÙÙ
Ù ÙاÙئرÛاÛÛ Ú©Ù Ù
ÛÙÙÙ٠دار ÙÙÙ
Ù¾ÛÙÙد $1 ÙئÙØ Ø¯Ø§Ø±Ù Ù¾Ø§Ú©Ø³Ø§Ú¯Ø±Û Ø¨ÙئÙ",
- "simpleantispam-label": "ÙØ§Ø±Ø³Û Ø¶Ø¯ اسپÙ
.\nØ§Û \"جاگÙ\" Ù٠پر ÙÚ©Ûت!",
+ "simpleantispam-label": "ÛØ§Ø±Ø³Û Ø±Û Û Ø±Û Ú©Ø§Ø±Û Ø§ÙسپÙ
.\nØ§Û \"جاگٱ\" ÙÙ± Ù¾Ùر ÙÙ±Ú©Ûت!",
"pageinfo-title": "دÙÙسÙ
ÙÛا Ø³Û \"$1\"",
"pageinfo-not-current": "د بدبختÛØÙبÙØ¦Ù Ú©Ù Ø§Û Ø¯ÙÙسÙ
ÙÛا ÙÙ Ø³Û ÙاÙئرÛا دÙ
Ø§ØªØ±Û ÙÙااÙ
اÛÛ٠بکÛت.",
"pageinfo-header-basic": "دÙÙسÙ
ÙÛا پاÛÙ",
@@ -2393,7 +2391,7 @@
"file-info-size": "$1 à $2 Ù¾ÛکسÙ, اÙاز٠ÙاÛÙ: $3, MIME ÙÙع: $4",
"file-info-size-pages": "$1 à $2 pixels, اÙاز٠جاÙÛا: $3, MIME type: $4, $5 {{PLURAL:$5|بÙÚ¯Ù|بÙÚ¯Ù Ûا}}",
"file-nohires": "عس٠Ù٠باÙاتر٠دش ÙÙ",
- "svg-long-desc": "اس ÙÛ Ø¬Û Ø¬Ø§ÙÛا.ÙÙÙ
Ù $1 $2 Ù¾ÙÙس٠$1",
+ "svg-long-desc": "جاÙÛا اÙس ÛÛ Ø¬Û, ÙÙÙ
Û $1 à $2 Ù¾ÛکسÙ, Ù±Ùازٱ جاÙÛا: $3",
"svg-long-desc-animated": "جاÙÛا جÙ
شدار اس ÙÛ Ø¬Û .ÙÙÙ
Ùا $1 à $2 Ù¾ÙÙسÙØاÙاز٠جاÙÛا:$3",
"svg-long-error": "جاÙÛا اس ÙÛ Ø¬Û ÙاÙ
عتÙر:$1",
"show-big-image": "جاÙÛا اصÙÛ",
diff --git a/languages/i18n/lt.json b/languages/i18n/lt.json
index 8055a379f6..38488e2b96 100644
--- a/languages/i18n/lt.json
+++ b/languages/i18n/lt.json
@@ -546,11 +546,11 @@
"botpasswords-insert-failed": "Nepavyko pridÄti boto vardo \"$1\". Gal jis jau pridÄtas?",
"botpasswords-update-failed": "Nepavyko atnaujinti boto vardo \"$1\". Gal jis buvo ištrintas?",
"botpasswords-created-title": "Boto slaptažodis sukurtas",
- "botpasswords-created-body": "Naudotojo $2 boto â$1â slaptažodis buvo sukurtas.",
+ "botpasswords-created-body": "{{GENDER:$2|Naudotojo|Naudotojos}} $2 boto â$1â slaptažodis buvo sukurtas.",
"botpasswords-updated-title": "Boto slaptažodis atnaujintas",
- "botpasswords-updated-body": "Naudotojo $2 boto â$1â slaptažodis buvo atnaujintas.",
+ "botpasswords-updated-body": "{{GENDER:$2|Naudotojo|Naudotojos}} $2 boto â$1â slaptažodis buvo atnaujintas.",
"botpasswords-deleted-title": "Boto slaptažodis ištrintas",
- "botpasswords-deleted-body": "Naudotojo $2 boto â$1â slaptažodis buvo iÅ¡trintas.",
+ "botpasswords-deleted-body": "{{GENDER:$2|Naudotojo|Naudotojos}} $2 boto â$1â slaptažodis buvo iÅ¡trintas.",
"botpasswords-newpassword": "Naujas slaptažodis prisijungimui su $1 yra $2. Prašome įsiminti jį naudojimui ateityje.",
"botpasswords-no-provider": "BotPasswordsSessionProvider nÄra prieinamas.",
"botpasswords-restriction-failed": "Boto slaptažodžio apribojimai draudžia šį prisijungimÄ
.",
@@ -660,7 +660,7 @@
"accmailtext": "Atsitiktinai sukurtas naudotojo [[User talk:$1|$1]] slaptažodis nusiųstas į $2.\n\nŠios naujos paskyros slaptažodis gali būti pakeistas [[Special:ChangePassword|keisti slaptažodį]] puslapyje beprisijungiant.",
"newarticle": "(Naujas)",
"newarticletext": "JÅ«s patekote į dar neegzistuojantį puslapį.\nNorÄdami sukurti puslapį, pradÄkite raÅ¡yti žemiau esanÄiame įvedimo lauke\n(plaÄiau [$1 pagalbos puslapyje]).\nJei patekote Äia per klaidÄ
, paprasÄiausiai spustelkite narÅ¡yklÄs mygtukÄ
'''atgal'''.",
- "anontalkpagetext": "----''Tai yra anoniminio naudotojo, nesusikÅ«rusio arba nenaudojanÄio paskyros, aptarimų puslapis.\nDÄl to naudojamas IP adresas jo identifikavimui.\nÅ is IP adresas gali bÅ«ti dalinamas keliems naudotojams.\nJeigu JÅ«s esate anoniminis naudotojas ir atrodo, kad komentarai nÄra skirti Jums, [[Special:CreateAccount|sukurkite paskyrÄ
]] arba [[Special:UserLogin|prisijunkite]], ir nebūsite tapatinamas su kitais anoniminiais naudotojais.''",
+ "anontalkpagetext": "----\nTai yra anoniminio naudotojo, nesusikÅ«rusio arba nenaudojanÄio paskyros, aptarimų puslapis.\nDÄl to naudojamas IP adresas jo identifikavimui.\nÅ is IP adresas gali priklausyti keliems naudotojams.\nJeigu JÅ«s esate anoniminis naudotojas ir atrodo, kad komentarai nÄra skirti Jums, [[Special:CreateAccount|sukurkite paskyrÄ
]] arba [[Special:UserLogin|prisijunkite]], ir nebūsite tapatinamas su kitais anoniminiais naudotojais.",
"noarticletext": "Å iuo metu Å¡iame puslapyje nÄra jokio teksto.\nJÅ«s galite [[Special:Search/{{PAGENAME}}|ieÅ¡koti Å¡io puslapio pavadinimo]] kituose puslapiuose,\n[{{fullurl:{{#Special:Log}}|page={{FULLPAGENAMEE}}}} ieÅ¡koti susijusių įrašų] arba [{{fullurl:{{FULLPAGENAME}}|action=edit}} sukurti šį puslapį].",
"noarticletext-nopermission": "Å iuo metu Å¡iame puslapyje nÄra jokio teksto.\nJÅ«s galite [[Special:Search/{{PAGENAME}}|ieÅ¡koti Å¡io puslapio pavadinimo]] kituose puslapiuose,\n[{{fullurl:{{#Special:Log}}|page={{FULLPAGENAMEE}}}} ieÅ¡koti susijusių įrašų], taÄiau jÅ«s neturite teisÄs sukurti Å¡io puslapio.",
"missing-revision": "Puslapio peržiÅ«ra #$1 pavadinto â{{FULLPAGENAME}}â neegzistuoja.\n\nTai paprastai atsitinka kai pasenusi nuoroda veda į puslapį, kuris buvo iÅ¡trintas.\nInformacijÄ
galima rasti [{{fullurl:{{#Special:Log}}/delete|page={{FULLPAGENAMEE}}}} deletion log].",
@@ -674,10 +674,10 @@
"userjspreview": "'''Nepamirškite, kad jūs tik testuojat/peržiūrit savo naudotojo JavaScript, jis dar nebuvo išsaugotas!'''",
"sitecsspreview": "'''Nepamirškite, kad jūs tik peržiūrit šio CSS .'''! N!''' Tai dar nebuvo išsaugotas!'''",
"sitejspreview": "'''Nepamirškite, kad jūs tik peržiūrit šis JavaScript kodas .'''! N!''' Tai dar nebuvo išsaugotas!'''",
- "userinvalidcssjstitle": "'''DÄmesio:''' NÄra jokios iÅ¡vaizdos â$1â. NepamirÅ¡kite, kad savo .css ir .js puslapiai naudoja pavadinimÄ
mažosiomis raidÄmis, pvz., {{ns:user}}:Foo/vector.css, o ne {{ns:user}}:Foo/Vector.css.",
+ "userinvalidconfigtitle": "'''DÄmesio:''' NÄra jokios iÅ¡vaizdos â$1â. NepamirÅ¡kite, kad savo .css ir .js puslapiai naudoja pavadinimÄ
mažosiomis raidÄmis, pvz., {{ns:user}}:Foo/vector.css, o ne {{ns:user}}:Foo/Vector.css.",
"updated": "(Atnaujinta)",
"note": "'''Pastaba:'''",
- "previewnote": "''NepamirÅ¡kite, kad tai tik peržiÅ«ra, pakeitimai dar nÄra iÅ¡saugoti!'''",
+ "previewnote": "NepamirÅ¡kite, kad tai tik peržiÅ«ra, pakeitimai dar nÄra iÅ¡saugoti!",
"continue-editing": "Eiti į redagavimo sritį",
"previewconflict": "Å i peržiÅ«ra parodo tekstÄ
iš viršutiniojo teksto redagavimo lauko taip, kaip jis bus rodomas, jei pasirinksite išsaugoti.",
"session_fail_preview": "'''AtsipraÅ¡ome! Mes negalime vykdyti jÅ«sų keitimo dÄl sesijos duomenų praradimo.\nPraÅ¡ome pamÄginti vÄl. Jei tai nepadeda, pamÄginkite atsijungti ir prisijungti atgal.'''",
@@ -694,8 +694,8 @@
"storedversion": "IÅ¡saugota versija",
"editingold": "Ä®spÄjimas: JÅ«s keiÄiate ne naujausiÄ
puslapio versijÄ
. Jei išsaugosite savo keitimus, po to daryti pakeitimai pradings.",
"yourdiff": "Skirtumai",
- "copyrightwarning": "Primename, kad viskas, kas patenka į {{SITENAME}}, yra laikoma paskelbtu pagal $2 (detaliau - $1). Jei nenorite, kad jÅ«sų indÄlis bÅ«tų be gailesÄio redaguojamas ir platinamas, Äia neraÅ¡ykite.
\nJÅ«s taip pat pasižadate, kad tai jÅ«sų paÄių raÅ¡ytas turinys arba kopijuotas iÅ¡ viešų ar panaÅ¡ių nemokamų Å¡altinių.\n'''NEKOPIJUOKITE AUTORINÄMIS TEISÄMIS APSAUGOTŲ DARBŲ BE LEIDIMO!'''",
- "copyrightwarning2": "Primename, kad viskas, kas patenka į {{SITENAME}} gali bÅ«ti redaguojama, perdaroma, ar paÅ¡alinama kitų naudotojų. Jei nenorite, kad jÅ«sų indÄlis bÅ«tų be gailesÄio redaguojamas, Äia neraÅ¡ykite.
\nTaip pat jÅ«s pasižadate, kad tai jÅ«sų paÄių raÅ¡ytas tekstas arba kopijuotas\niÅ¡ viešų ar panaÅ¡ių nemokamų Å¡altinių (detaliau - $1).\n'''NEKOPIJUOKITE AUTORINÄMIS TEISÄMIS APSAUGOTŲ DARBŲ BE LEIDIMO!'''",
+ "copyrightwarning": "Primename, kad viskas, kas patenka į {{SITENAME}}, yra skelbiama pagal $2 (plaÄiau â $1). Jei nenorite, kad jÅ«sų indÄlis bÅ«tų be gailesÄio kaitaliojamas ir platinamas, neraÅ¡ykite Äia.
\nJÅ«s taip pat pasižadate, kad tai jÅ«sų paÄių raÅ¡ytas turinys arba kopijuotas iÅ¡ viešų ar panaÅ¡ių nemokamų Å¡altinių.\nNekopijuokite autorinÄmis teisÄmis apsaugotų darbų be leidimo!",
+ "copyrightwarning2": "Primename, kad viskas, kas patenka į {{SITENAME}} gali bÅ«ti keiÄiama, perdaroma, ar paÅ¡alinama kitų naudotojų. Jei nenorite, kad jÅ«sų indÄlis bÅ«tų be gailesÄio kaitaliojamas, neraÅ¡ykite Äia.
\nTaip pat jÅ«s pasižadate, kad tai jÅ«sų paÄių raÅ¡ytas tekstas arba kopijuotas iÅ¡ viešų ar panaÅ¡ių nemokamų Å¡altinių (plaÄiau - $1).\nNekopijuokite autorinÄmis teisÄmis apsaugotų darbų be leidimo!",
"editpage-cannot-use-custom-model": "Šio puslapio turinio modelis negali būti pakeistas.",
"longpageerror": "'''KLAIDA: Tekstas, kurį pateikÄte, yra $1 {{PLURAL:$1|kilobaito|kilobaitų|kilobaitų}} ilgio, tai yra didesnis nei yra leistina. Yra leidžiami tiktai $2 {{PLURAL:$2|kilobaitas|kilobaitai|kilobaitų}}.''' Jis nebus iÅ¡saugotas.",
"readonlywarning": "Ä®spÄjimas: Duomenų bazÄ buvo užrakinta techninei profilaktikai, todÄl Å¡iuo metu negalÄsite iÅ¡saugoti savo pakeitimų. SiÅ«lome nusikopijuoti tekstÄ
į tekstinį failÄ
ir vÄliau jį Äia iÅ¡saugoti.\n\nJÄ
užrakinusio sistemos administratoriaus paaiškinimas: $1",
@@ -838,7 +838,7 @@
"revdelete-hide-text": "Versijos tekstas",
"revdelete-hide-image": "SlÄpti failo turinį",
"revdelete-hide-name": "SlÄpti veiksmÄ
ir paskirtį",
- "revdelete-hide-comment": "Keitimo komentaras",
+ "revdelete-hide-comment": "Keitimo aprašas",
"revdelete-hide-user": "Redagavusiojo naudotojo vardas/IP adresas",
"revdelete-hide-restricted": "NuslÄpti duomenis nuo adminstratorių kaip ir nuo kitų",
"revdelete-radio-same": "(nekeisti)",
@@ -1033,7 +1033,7 @@
"prefs-files": "Failai",
"prefs-custom-css": "Asmeninis CSS",
"prefs-custom-js": "Asmeninis JavaSript",
- "prefs-common-css-js": "Bendras CSS/JS visoms išvaizdoms:",
+ "prefs-common-config": "Bendras CSS/JS visoms išvaizdoms:",
"prefs-reset-intro": "JÅ«s galite pasinaudoti Å¡iuo puslapiu, kad grÄ
žintumÄte savo nustatymus į svetainÄs numatytuosius.\nTai nebeatÅ¡aukiama.",
"prefs-emailconfirm-label": "El. pašto patvirtinimas:",
"youremail": "El. paštas:",
@@ -1457,8 +1457,6 @@
"newpageletter": "N",
"boteditletter": "a",
"number_of_watching_users_pageview": "[$1 {{PLURAL:$1|stebintis naudotojas|stebintys naudotojai|stebinÄių naudotojų}}]",
- "rc_categories": "Riboti kategorijoms (atskirkite su â|â)",
- "rc_categories_any": "Bet kuris iš pasirinktųjų",
"rc-change-size-new": "$1 {{PLURAL:$1|baitas|baitai|baitų}} po pakeitimo",
"newsectionsummary": "/* $1 */ naujas skyrius",
"rc-enhanced-expand": "Rodyti detales",
@@ -1624,7 +1622,7 @@
"backend-fail-read": "Negalima nuskaityti failo $1.",
"backend-fail-create": "Negalima sukurti failo $1.",
"backend-fail-maxsize": "Failo $1 sukurti nepavyko nes jis didesnis nei {{PLURAL:$2|vienas baitas|$2 baitai|$2 baitų}}.",
- "backend-fail-readonly": "GalutinÄ saugykla \"$1\" dabar yra skirta tik skaitymui. Buvo nurodyta priežastis: \"$2\"",
+ "backend-fail-readonly": "GalutinÄ saugykla \"$1\" dabar yra skirta tik skaitymui. Nurodyta priežastis: $2",
"backend-fail-synced": "Failas \"$1\", esantis vidinÄje galutinÄje saugykloje, yra pažymÄtas kaip nepilnas.",
"backend-fail-connect": "Negalima prisijungti prie galutinÄs saugyklos \"$1\".",
"backend-fail-internal": "Nežinoma klaida įvyko galutinÄje saugykloje \"$1\".",
@@ -2167,7 +2165,7 @@
"editcomment": "Pateiktas toks keitimo paaiškinimas: $1.",
"revertpage": "Atmestas [[Special:Contributions/$2|$2]] ([[User talk:$2|Aptarimas]]) pakeitimas; sugrÄ
žinta [[User:$1|$1]] versija",
"revertpage-nouser": "Atversti pakeitimai paslÄpto vartotojo, grÄ
žino prieÅ¡ tai buvusiÄ
versijÄ
{{GENDER:$1|[[User:$1|$1]]}}",
- "rollback-success": "Atmesti $1 pakeitimai;\ngrÄ
žinta prieš tai buvusi $2 versija.",
+ "rollback-success": "Atmesti {{GENDER:$3|$1}} pakeitimai;\ngrÄ
žinta prieš tai buvusi {{GENDER:$4|$2}} versija.",
"rollback-success-notify": "Atmesti $1 pakeitimai;\ngrÄ
žinta prieš tai buvusi $2 versija. [$3 Rodyti skirtumus]",
"sessionfailure-title": "Sesijos klaida",
"sessionfailure": "Atrodo yra problemų su jÅ«sų prisijungimo sesija; Å¡is veiksmas buvo atÅ¡auktas kaip atsargumo priemonÄ prieÅ¡ sesijos vogimÄ
.\nPraÅ¡ome paspausti âatgalâ ir perkraukite puslapį iÅ¡ kurio atÄjote, ir pamÄginkite vÄl.",
@@ -2229,7 +2227,7 @@
"protect-othertime": "Kitas laikas:",
"protect-othertime-op": "kitas laikas",
"protect-existing-expiry": "Esamas galiojimo laikas: $3, $2",
- "protect-existing-expiry-infinity": "Esamas galiojimo laikas: begalinis",
+ "protect-existing-expiry-infinity": "Esamas galiojimo laikas: neribotas",
"protect-otherreason": "Kita/papildoma priežastis:",
"protect-otherreason-op": "Kita priežastis",
"protect-dropdown": "*Ä®prastos užrakinimo priežastys\n** Intensyvus vandalizmas\n** Nuolatinis nepageidautinų nuorodų dÄliojimas\n** Beprasmis redagavimo karas\n** DidelÄs svarbos puslapis\n** Pakartotinis iÅ¡trinto puslapio atkÅ«rinÄjimas",
@@ -2502,7 +2500,7 @@
"delete_and_move_text": "Paskirties puslapis â[[:$1]]â jau yra. Ar norite jį iÅ¡trinti, kad galÄtumÄte pervardinti?",
"delete_and_move_confirm": "Taip, trinti puslapį",
"delete_and_move_reason": "IÅ¡trinta dÄl perkÄlimo iÅ¡ \"[[$1]]\"",
- "selfmove": "Šaltinio ir paskirties pavadinimai yra tokie patys; negalima pervardinti puslapio į save.",
+ "selfmove": " Pavadinimai yra tokie patys; negalima pervardyti puslapio į save.",
"immobile-source-namespace": "Negalima perkelti puslapių vardų srityje â$1â",
"immobile-target-namespace": "Perkelti puslapius į â$1â vardų sritį negalima",
"immobile-target-namespace-iw": "TarprojektinÄ nuoroda yra neleistina paskirtis perkelti puslapį.",
@@ -2597,14 +2595,14 @@
"import-nonewrevisions": "Nebuvo importuotos jokios versijos (visos jau buvo įkeltos arba praleistos dÄl klaidų).",
"xml-error-string": "$1 $2 eilutÄje, $3 stulpelyje ($4 baitas): $5",
"import-upload": "Įkelti XML duomenis",
- "import-token-mismatch": "Sesijos duomenys prarasti.\n\nGali bÅ«ti, kad esate atsijungÄs. PraÅ¡ome patikrinti, ar vis dar esate prisijungÄs, ir pabandyti iÅ¡ naujo.\nJei ir toliau nepavyksta, pamÄginkite [[Special:UserLogout|atsijungti]] ir vÄl prisijungti, taip pat patikrinkite, ar jÅ«sų narÅ¡yklÄ priima Å¡ios svetainÄs slapukus.",
+ "import-token-mismatch": "Sesijos duomenys prarasti.\n\nGali bÅ«ti, kad esate atsijungÄs. '''PraÅ¡ome patikrinti, ar vis dar esate prisijungÄs, ir pabandyti iÅ¡ naujo'''.\nJei ir toliau nepavyksta, pamÄginkite [[Special:UserLogout|atsijungti]] ir vÄl prisijungti, taip pat patikrinkite, ar jÅ«sų narÅ¡yklÄ priima Å¡ios svetainÄs slapukus.",
"import-invalid-interwiki": "Nepavyko importuoti iš nurodyto wiki projekto.",
"import-error-edit": "Puslapis \"$1\" nebuvo įkeltas, nes jÅ«s neturite teisÄs jį redaguoti.",
"import-error-create": "Puslapis â$1â nebuvo importuotas, nes jÅ«s neturite teisÄs jį sukurti.",
"import-error-interwiki": "Puslapis \"$1\" nebuvo importuotas, nes jo pavadinimas yra rezervuotas išorinei nuorodai (interviki).",
"import-error-special": "Puslapis â$1â nebuvo importuotas, nes jis priklauso specialiai vardų sriÄiai, kurioje neleidžiami puslapiai.",
"import-error-invalid": "Puslapis \"$1\" nebuvo įkeltas, kadangi jo vardas yra neteisingas.",
- "import-error-unserialize": "Versija $2 puslapio â$1â negali bÅ«ti nepublikuota. Versija buvo praneÅ¡ta dÄl turinio modelio $3 naudojimo publikuoti kaip $4.",
+ "import-error-unserialize": "Puslapio â$1â versija $2 negali bÅ«ti struktÅ«ruota. Gautas praneÅ¡imas, kad Å¡ioje atmainoje naudojamas turinio pavyzdys yra $3, kuris struktÅ«ruojamas kaip $4.",
"import-error-bad-location": "Versija $2 naudojanti turinio modelį $3 negali bÅ«ti laikoma â$1â Å¡ioje viki, nes Å¡is modelis nÄra palaikomas tame puslapyje.",
"import-options-wrong": "Netinka {{PLURAL:$2|pasirinktis|pasirinktys}}: \n# Headings that will be ignored by search.\n# Changes to this take effect as soon as the page with the heading is indexed.\n# You can force page reindexing by doing a null edit.\n# The syntax is as follows:\n# * Everything from a \"#\" character to the end of the line is a comment.\n# * Every non-blank line is the exact title to ignore, case and everything.\nReferences\nExternal links\nSee also\n #
",
+ "search-ignored-headings": " # \n# शà¥à¤§à¤¾à¤®à¤§à¥à¤¨ हॠशिरà¥à¤·à¤à¥ वà¤à¤³à¤²à¥ à¤à¤¾à¤¤à¥à¤².\n# शिरà¥à¤·à¤à¤¾à¤à¤®à¤§à¥à¤² बदल à¤
नà¥à¤à¥à¤°à¤®à¤¾à¤£à¤¿à¤à¥à¤¤ à¤à¤²à¥à¤¯à¤¾à¤¬à¤°à¥à¤¬à¤°à¤ पà¥à¤¢à¥à¤² बदल à¤à¤ªà¤¸à¥à¤à¤ हà¥à¤¤à¥à¤².\n# तà¥à¤®à¥à¤¹à¥ पानाà¤à¤®à¤§à¥à¤¯à¥ à¤à¤¸à¤²à¤¾à¤¹à¥ बदल न à¤à¤°à¤¤à¤¾ पà¥à¤¨à¥à¤¹à¤¾ साठवà¥à¤¨ ठà¥à¤µà¤²à¥à¤¯à¤¾à¤¸ पान à¤à¤ªà¤¸à¥à¤à¤ à¤
नà¥à¤à¥à¤°à¤®à¤¾à¤£à¤¿à¤à¥à¤¤ पà¥à¤¨à¥à¤¹à¤¾ à¤à¥à¤¡à¤²à¥ à¤à¤¾à¤à¤².\n# तà¥à¤¯à¤¾à¤à¤¾ सिनà¥à¤à¥à¤à¥à¤¸ पà¥à¤¢à¥à¤²à¤ªà¥à¤°à¤®à¤¾à¤£à¥ à¤à¤¹à¥:\n# * \"#\" à¤à¤¥à¤ªà¤¾à¤¸à¥à¤¨ à¤à¤³à¥à¤à¥à¤¯à¤¾ शà¥à¤µà¤à¤¾à¤ªà¤°à¥à¤¯à¤à¤¤à¤à¥ सरà¥à¤µà¤à¤¾à¤¹à¥ मत मà¥à¤¹à¤£à¥à¤¨ नà¥à¤à¤¦à¤µà¤²à¥à¤²à¥ à¤à¤¹à¥.\n# * पà¥à¤°à¤¤à¥à¤¯à¥à¤ रिà¤à¤¾à¤®à¥ नसलà¥à¤²à¥ à¤à¤³ हॠदà¥à¤°à¥à¤²à¤à¥à¤·à¤¿à¤¤ à¤à¤°à¤£à¥à¤¯à¤¾à¤¸à¤¾à¤ à¥à¤à¥ शिरà¥à¤·à¤ à¤à¤¹à¥, पानॠà¤à¤£à¤¿ सरà¥à¤µà¤à¤¾à¤¹à¥.\nसà¤à¤¦à¤°à¥à¤à¤¯à¤¾à¤¦à¥\nबाहà¥à¤¯à¤¦à¥à¤µà¥\nहॠहॠपहा\n #
",
"searchbutton": "शà¥à¤§à¤¾",
"go": "à¤à¤²à¤¾",
"searcharticle": "à¤à¤¾",
@@ -669,21 +670,21 @@
"accmailtext": "[[User talk:$1|$1]] याà¤à¤¸à¤¾à¤ ॠà¤
नियतà¤à¥à¤°à¤®à¤¾à¤¨à¥ निरà¥à¤®à¤¿à¤¤ à¤à¥à¤²à¥à¤²à¤¾ परवलà¥à¤à¤¾ शबà¥à¤¦ $2 याà¤à¤¨à¤¾ पाठवणà¥à¤¯à¤¾à¤¤ à¤à¤²à¤¾ à¤à¤¹à¥.\n\nया नवà¥à¤¨ à¤à¤¾à¤¤à¥à¤¯à¤¾à¤¸à¤¾à¤ à¥à¤à¤¾ परवलà¥à¤à¤¾ शबà¥à¤¦,सनà¥à¤à¤¦-पà¥à¤°à¤µà¥à¤¶ à¤à¥à¤¤à¤²à¥à¤¯à¤¾à¤µà¤° [[Special:ChangePassword|परवलà¥à¤à¤¾ शबà¥à¤¦ बदला]] यà¥à¤¥à¥ बदलता यà¥à¤à¤².",
"newarticle": "(नवà¥à¤¨ लà¥à¤)",
"newarticletext": "à¤à¤ªà¤£ सधà¥à¤¯à¤¾ à¤
सà¥à¤¤à¤¿à¤¤à¥à¤¤à¥à¤µà¤¾à¤¤ नसलà¥à¤²à¥à¤¯à¤¾ पानाà¤à¥à¤¯à¤¾ दà¥à¤µà¥à¤¯à¤¾à¤à¤¾ माà¤à¥à¤µà¤¾ à¤à¥à¤¤ à¤à¤²à¤¾ à¤à¤¹à¤¾à¤¤.\nहॠपान नवà¥à¤¯à¤¾à¤¨à¥ तयार à¤à¤°à¤£à¥à¤¯à¤¾à¤¸à¤¾à¤ ॠà¤à¤¾à¤²à¥à¤² पà¥à¤à¥à¤¤ à¤à¤à¤à¤¨ à¤à¤°à¤£à¥ सà¥à¤°à¥ à¤à¤°à¤¾(à¤
धिठमाहितà¥à¤¸à¤¾à¤ ॠ[$1 साहायà¥à¤¯ पान] बà¤à¤¾).\n\nà¤à¤° à¤à¤ªà¤£ यà¥à¤¥à¥ à¤à¥à¤à¥à¤¨ à¤à¤²à¤¾ à¤
साल तर बà¥à¤°à¤¾à¤à¤à¤°à¤à¥à¤¯à¤¾ परत(बà¥
à¤) à¤à¤³à¥à¤µà¤° à¤à¤¿à¤à¤à¥ दà¥à¤¯à¤¾.",
- "anontalkpagetext": "---- ''हॠà¤à¤°à¥à¤à¤¾à¤ªà¤¾à¤¨ à¤
शा à¤
à¤à¥à¤à¤¾à¤¤ सदसà¥à¤¯à¤¾à¤¸à¤¾à¤ ॠà¤à¤¹à¥, à¤à¥à¤¯à¤¾à¤à¤¨à¥ à¤à¤¾à¤¤à¥ तयार à¤à¥à¤²à¥à¤²à¥ नाहॠà¤à¤¿à¤à¤µà¤¾ तà¥à¤¯à¤¾à¤à¤¾ वापर à¤à¤°à¤¤ नाहà¥à¤¤. तà¥à¤¯à¤¾à¤à¤à¥à¤¯à¤¾ à¤à¤³à¤à¥à¤¸à¤¾à¤ ॠà¤à¤®à¥à¤¹à¥ à¤à¤à¤¤à¤°à¤à¤¾à¤² à¤
à¤à¤à¤ªà¤¤à¥à¤¤à¤¾ वापरतॠà¤à¤¹à¥à¤¤. à¤
सा à¤
à¤à¤à¤ªà¤¤à¥à¤¤à¤¾ बऱà¥à¤¯à¤¾à¤ लà¥à¤à¤¾à¤à¤à¤¾ à¤à¤à¤ à¤
सॠशà¤à¤¤à¥. à¤à¤° à¤à¤ªà¤£ à¤
à¤à¥à¤à¤¾à¤¤ सदसà¥à¤¯ à¤
साल à¤à¤£à¤¿ à¤à¤ªà¤²à¥à¤¯à¤¾à¤²à¤¾ à¤à¤¾à¤¹à¥ à¤
पà¥à¤°à¤¾à¤¸à¤à¤à¤¿à¤ सà¤à¤¦à¥à¤¶ मिळाला à¤
सà¥à¤² तर à¤à¥à¤ªà¤¯à¤¾ [[Special:UserLogin| à¤à¤¾à¤¤à¥ तयार à¤à¤°à¤¾]] à¤à¤¿à¤à¤µà¤¾ [[Special:CreateAccount|सनà¥à¤à¤¦-पà¥à¤°à¤µà¥à¤¶ à¤à¤°à¤¾]] à¤à¥à¤¯à¤¾à¤®à¥à¤³à¥, पà¥à¤¢à¥ à¤
सॠà¤à¥à¤°à¤¸à¤®à¤ हà¥à¤£à¤¾à¤° नाहà¥à¤¤.''",
+ "anontalkpagetext": "हॠà¤à¤°à¥à¤à¤¾à¤ªà¤¾à¤¨ à¤
शा à¤
à¤à¥à¤à¤¾à¤¤ सदसà¥à¤¯à¤¾à¤¸à¤¾à¤ ॠà¤à¤¹à¥, à¤à¥à¤¯à¤¾à¤à¤¨à¥ à¤à¤¾à¤¤à¥ तयार à¤à¥à¤²à¥à¤²à¥ नाहॠà¤à¤¿à¤à¤µà¤¾ तà¥à¤¯à¤¾à¤à¤¾ वापर à¤à¤°à¤¤ नाहà¥à¤¤. \nतà¥à¤¯à¤¾à¤à¤à¥à¤¯à¤¾ à¤à¤³à¤à¥à¤¸à¤¾à¤ ॠà¤à¤®à¥à¤¹à¥ à¤à¤à¤¤à¤°à¤à¤¾à¤² à¤
à¤à¤à¤ªà¤¤à¥à¤¤à¤¾ वापरतॠà¤à¤¹à¥à¤¤. à¤
सा à¤
à¤à¤à¤ªà¤¤à¥à¤¤à¤¾ बऱà¥à¤¯à¤¾à¤ लà¥à¤à¤¾à¤à¤à¤¾ à¤à¤à¤ à¤
सॠशà¤à¤¤à¥. \nà¤à¤° à¤à¤ªà¤£ à¤
à¤à¥à¤à¤¾à¤¤ सदसà¥à¤¯ à¤
साल à¤à¤£à¤¿ à¤à¤ªà¤²à¥à¤¯à¤¾à¤²à¤¾ à¤à¤¾à¤¹à¥ à¤
पà¥à¤°à¤¾à¤¸à¤à¤à¤¿à¤ सà¤à¤¦à¥à¤¶ मिळाला à¤
सà¥à¤² तर à¤à¥à¤ªà¤¯à¤¾ [[Special:CreateAccount| à¤à¤¾à¤¤à¥ तयार à¤à¤°à¤¾]] à¤à¤¿à¤à¤µà¤¾ [[Special:CreateAccount|सनà¥à¤à¤¦-पà¥à¤°à¤µà¥à¤¶ à¤à¤°à¤¾]] à¤à¥à¤¯à¤¾à¤®à¥à¤³à¥, पà¥à¤¢à¥ à¤
सॠà¤à¥à¤°à¤¸à¤®à¤ हà¥à¤£à¤¾à¤° नाहà¥à¤¤.",
"noarticletext": "या लà¥à¤à¤¾à¤¤ सधà¥à¤¯à¤¾ à¤à¤¾à¤¹à¥à¤¹à¥ मà¤à¤à¥à¤° नाहà¥.\nतà¥à¤®à¥à¤¹à¥ विà¤à¤¿à¤ªà¥à¤¡à¤¿à¤¯à¤¾à¤µà¤°à¥à¤² à¤à¤¤à¤° लà¥à¤à¤¾à¤à¤®à¤§à¥à¤¯à¥ या [[Special:Search/{{PAGENAME}}| मथळà¥à¤¯à¤¾à¤à¤¾ शà¥à¤§ à¤à¥à¤ शà¤à¤¤à¤¾]], [{{fullurl:{{#Special:Log}}|page={{FULLPAGENAMEE}}}} à¤à¤¤à¤° नà¥à¤à¤¦à¥ शà¥à¤§à¤¾],\nà¤à¤¿à¤à¤µà¤¾ हा लà¥à¤ [{{fullurl:{{FULLPAGENAME}}|action=edit}}तयार à¤à¤°à¥ शà¤à¤¤à¤¾].",
"noarticletext-nopermission": "सधà¥à¤¯à¤¾ या लà¥à¤à¤¾à¤¤ à¤à¤¾à¤¹à¥à¤¹à¥ मà¤à¤à¥à¤° नाहà¥.\nतà¥à¤®à¥à¤¹à¥ विà¤à¤¿à¤ªà¥à¤¡à¤¿à¤¯à¤¾à¤µà¤°à¥à¤² à¤à¤¤à¤° लà¥à¤à¤¾à¤à¤®à¤§à¥à¤¯à¥ [[Special:Search/{{PAGENAME}}| या मथळà¥à¤¯à¤¾à¤à¤¾ शà¥à¤§ à¤à¥à¤ शà¤à¤¤à¤¾]], [{{fullurl:{{#Special:Log}}|page={{FULLPAGENAME}}}}à¤à¤ªà¤£ या लà¥à¤à¤¾à¤à¥à¤¯à¤¾ à¤à¤¤à¤° नà¥à¤à¤¦à¥ शà¥à¤§à¤¾],परà¤à¤¤à¥, à¤à¤ªà¤£à¤¾à¤¸ हा लà¥à¤ लिहà¥à¤£à¥à¤¯à¤¾à¤à¥ परवानà¤à¥ दà¥à¤£à¥à¤¯à¤¾à¤¤ यà¥à¤ शà¤à¤¤ नाहà¥.",
"missing-revision": "\"{{FULLPAGENAME}}\" या लà¥à¤à¤¾à¤à¥ #$1 हॠसà¤à¤¸à¥à¤à¤°à¤£ à¤
सà¥à¤¤à¤¿à¤¤à¥à¤µà¤¾à¤¤ नाहà¥.वà¤à¤³à¤²à¥à¤¯à¤¾ à¤à¥à¤²à¥à¤²à¥à¤¯à¤¾ लà¥à¤à¤ªà¤¾à¤¨à¤¾à¤à¥à¤¯à¤¾ à¤à¥à¤¨à¥à¤¯à¤¾ à¤à¤¤à¤¿à¤¹à¤¾à¤¸-दà¥à¤µà¥à¤¯à¤¾à¤à¥ à¤
नà¥à¤¸à¤°à¤£ à¤à¥à¤²à¥à¤¯à¤¾à¤®à¥à¤³à¥ à¤
सॠहà¥à¤¤à¥.याबाबत विसà¥à¤¤à¥à¤¤ माहितॠ[{{fullurl:{{#Special:Log}}/delete|page={{FULLPAGENAMEE}}}} वà¤à¤³à¤²à¥à¤²à¥à¤¯à¤¾ नà¥à¤à¤¦à¥]यà¥à¤¥à¥ बà¤à¤¤à¤¾ यà¥à¤à¤².",
"userpage-userdoesnotexist": "\"
(Untuk bot-bot lama yang memerlukan nama log masuk agar sama dengan nama pengguna akhirnya, anda juga boleh menggunakan $3 sebagai nama pengguna dan $4 sebagai kata laluan.)",
@@ -657,7 +657,7 @@
"newarticle": "(Baru)",
"newarticletext": "Anda telah mengikuti pautan ke laman yang belum wujud.\nUntuk mencipta laman ini, sila taip dalam kotak di bawah\n(lihat [$1 laman bantuan] untuk maklumat lanjut).\nJika anda tiba di sini secara tak sengaja, hanya klik butang '''back''' pada pelayar anda.",
"anontalkpagetext": "Ini ialah laman perbincangan bagi pengguna tanpa nama yang belum membuka akaun atau tidak menggunakannya.\nOleh itu, kami terpaksa menggunakan alamat IP angka untuk mengenal pasti pengguna tersebut. Alamat IP ini boleh dikongsi oleh ramai pengguna.\nSekiranya anda ialah seorang pengguna tanpa nama dan berasa bahawa komen yang tidak relevan telah ditujukan kepada anda, sila [[Special:CreateAccount|buka akaun baru]] atau [[Special:UserLogin|log masuk]] untuk mengelakkan sebarang kekeliruan dengan pengguna tanpa nama yang lain.",
- "noarticletext": "Laman ini buat masa sekarang tidak berteks. Anda boleh [[Special:Search/{{PAGENAME}}|cari tajuk bagi laman ini]] dalam laman-laman lain, [{{fullurl:{{#Special:Log}}|page={{FULLPAGENAMEE}}}} cari log-log yang berkaitan], atau [{{fullurl:{{FULLPAGENAME}}|action=edit}} sunting laman ini].",
+ "noarticletext": "Laman ini tiada teks buat masa sekarang.\nAnda boleh [[Special:Search/{{PAGENAME}}|cari tajuk bagi laman ini]] di laman-laman lain, [{{fullurl:{{#Special:Log}}|page={{FULLPAGENAMEE}}}} cari log-log yang berkaitan], atau [{{fullurl:{{FULLPAGENAME}}|action=edit}} sunting laman ini].",
"noarticletext-nopermission": "Tiada teks dalam laman ini ketika ini.\nAnda boleh [[Special:Search/{{PAGENAME}}|mencari tajuk laman ini]] dalam laman lain,\natau [{{fullurl:{{#Special:Log}}|page={{FULLPAGENAMEE}}}} mencari log yang berkaitan].",
"missing-revision": "Semakan #$1 pada halaman \"{{FULLPAGENAME}}\" tidak wujud.\n\nHal ini biasanya disebabkan oleh pautan sejarah yang lapuk ke halaman yang sudah dihapuskan.\nButirannya boleh didapati di [{{fullurl:{{#Special:Log}}/delete|page={{FULLPAGENAMEE}}}} log penghapusan].",
"userpage-userdoesnotexist": "Akaun pengguna \"
\nÐÑÑÑжо ÑезÑÐ½Ñ Ð¼Ð°ÑеÑÐ¸Ð°Ð»Ð¾Ð½Ñ Ð¼Ð°ÐºÑомÑоÑ, кемекÑÑÐ°Ñ Ñон ÑонÑÑ ÑÑÑмадÑк ÑонзÑ, али Ñаик ÑÐ¾Ð½Ð·Ñ Ð²ÐµÐ¹ÑÑÐ½Ñ ÑнкÑÑо али олÑÑÐ¸Ð½Ñ Ð¿Ð¾ÑÑалÑÑо.\n'''ÐÐЯ ÐÐÐСРÐÐÐСТÐÐЬ ÐÐÐÐЧÐСРÐÐÐÐÐÐÐЬ ÐÐÐÐÐÐÐÐÐТЬ ÐÐÐÐ ÐÐÐÐСТÐÐ!'''",
- "titleprotectedwarning": "'''ÐÐÐÐÐ: Те лопаÑÑ ÑÑлгозÑ, ÑÐ¾Ð½Ð·Ñ Ñкамга-Ñеемга [[Special:ListGroupRights|баÑка видеÑÑÑÑ]] ÑÑÑвиÑÑ.'''\nÐÑÑÐ½Ð°Ð»Ð¾Ð½Ñ Ð¼ÐµÐµÐ»ÑÑе ÑÑÑмадовкÑоÑÑ Ð¼Ð°ÐºÑÐ¾Ð·Ñ Ð°Ð»Ð¾, ÑÑÑвиндеÑÑй ÑÐ¾Ð½Ð·Ñ Ð²Ð°Ð½Ð¾Ð¼Ñ.",
+ "titleprotectedwarning": "'''ÐÐÐÐÐ: Те лопаÑÑ Ð¿ÐµÐºÑÑазÑ, ÑÐ¾Ð½Ð·Ñ Ñкамга-Ñеемга ÑÑÑвиÑÑ [[Special:ListGroupRights|баÑка видеÑиÑÑ]].'''\nÐÑÑÐ½Ð°Ð»Ð¾Ð½Ñ Ð¼ÐµÐµÐ»ÑÑе ÑÑÑмадовкÑоÑÑ Ð¼Ð°ÐºÑÐ¾Ð·Ñ Ð°Ð»Ð¾, ÑÑÑвиндеÑÑй ÑÐ¾Ð½Ð·Ñ Ð²Ð°Ð½Ð¾Ð¼Ñ.",
"templatesused": "Те лопаÑонÑÑ ÑÐµÐ²Ñ Ð½Ð¾Ð»Ð´Ð°Ð·Ñ {{PLURAL:$1|лопапаÑÑÑн|лопапаÑÑÑнÑ}}:",
"templatesusedpreview": "Те икелÑÐºÑ Ð²Ð°Ð½Ð¾Ð²ÐºÑÑонÑÑ ÑÐµÐ²Ñ Ð½Ð¾Ð»Ð´Ð°Ð·Ñ {{PLURAL:$1|лопа паÑÑÑн|лопа паÑÑÑнÑ}}:",
"templatesusedsection": "Те пелÑкÑÑÑнÑÑ ÑÐµÐ²Ñ Ð½Ð¾Ð»Ð´Ð°Ð·Ñ {{PLURAL:$1|лопа паÑÑÑноÑÑ|лопа паÑÑÑнÑнÑ}}:",
@@ -497,7 +497,7 @@
"page_first": "ваÑенÑе",
"page_last": "меелÑÑе",
"histlegend": "ÐеÑÑиÑÐ½Ñ ÐºÐ¾ÑкамоÑÑ: ÑеÑкÑÑÑ Ð½ÐµÐ²ÑÐµÐ·Ñ Ð²ÐµÑÑиÑÑненÑ, али лепÑÑик Enter повнÑнÑÑ.
\nЧаÑÑкодевÑемаÑ: (молиÑ.) = ÑедÑмоÑÑ Ð¼Ð¾Ð»Ð¸ÑÑ Ð²ÐµÑÑиÑÑÑонÑÑ; (и. молиÑ.) = ÑедÑмоÑÑ Ð¸ÐºÐµÐ»Ðµ молиÑÑ Ð²ÐµÑÑиÑÑÑонÑÑ; '''а''' = Ð°Ð²Ð¾Ð»Ñ Ñеде ламо лиÑкÑÑомÑома.",
- "history-fieldset-title": "ÐÐ°Ð½Ð¾Ð¼Ñ Ð»Ð¾Ð¿Ð°Ð½ÑÑ ÑÑонзо-пÑÑовкÑонзо",
+ "history-fieldset-title": "ÐеÑÐ½ÐµÐ¼Ñ Ð²ÐµÑÑиÑÑ",
"history-show-deleted": "ÐнÑÑк наÑдазÑ",
"histfirst": "веÑемеде ÑмонÑ",
"histlast": "ÐеелÑÑе",
@@ -588,7 +588,7 @@
"powersearch-ns": "ÐеÑÐ½ÐµÐ¼Ñ Ð½Ðµ лемпоÑмоÑнеÑÑÑ:",
"powersearch-toggleall": "ÐеÑе",
"powersearch-togglenone": "ÐÑаÑÑ Ð¼ÐµÐ·Ðµ невÑемÑ",
- "search-external": "УÑо Ð¹Ð¾Ð½Ð´Ð¾Ð½Ñ Ð²ÐµÑнема",
+ "search-external": "УÑо ÑÐ½Ð´Ð¾Ð½Ñ Ð²ÐµÑнема",
"preferences": "ÐÑавÑомаÑ",
"mypreferences": "ÐÑавÑомаÑ",
"prefs-edits": "ÐÑÑокÑÑÑ Ð²Ð¸ÑнезÑ-пеÑнезÑ:",
@@ -631,7 +631,7 @@
"timezoneregion-europe": "ÐвÑопа",
"timezoneregion-indian": "ÐндиÑÐ½Ñ Ð¸Ð½ÐµÐ²ÐµÐ´Ñ",
"timezoneregion-pacific": "СÑÑÑме иневедÑ",
- "prefs-searchoptions": "ÐеÑнем",
+ "prefs-searchoptions": "ÐеÑнемÑ",
"prefs-namespaces": "Ðем поÑмоÑ",
"default": "зÑÑдо лиÑÐºÑ Ð°Ð¿Ð°Ðº ÑвÑа",
"prefs-files": "ФайлаÑ",
@@ -677,7 +677,7 @@
"grouppage-sysop": "{{ns:project}}:ÐдминиÑÑÑаÑоÑÑ",
"grouppage-bureaucrat": "{{ns:project}}:ÐÑÑокÑаÑÑ",
"right-read": "ÐопаÑÐ½ÐµÐ½Ñ Ð»Ð¾Ð²Ð½Ð¾Ð¼Ð¾",
- "right-edit": "ÐопаÑÐ½ÐµÐ½Ñ Ð²Ð¸Ñнеме-пеÑнеме",
+ "right-edit": "ÐиÑнемÑ-пеÑÐ½ÐµÐ¼Ñ Ð»Ð¾Ð¿Ð°Ñ",
"right-createpage": "ТеемÑ-ÑÐºÐ°Ð¼Ñ Ð»Ð¾Ð¿Ð°Ñ (Ð°Ð²Ð¾Ð»Ñ ÐºÐ¾ÑÑнема лопаÑ)",
"right-createtalk": "ТеемÑ-ÑÐºÐ°Ð¼Ñ ÐºÐ¾ÑÑнема лопаÑ",
"right-createaccount": "ТеемÑ-ÑÐºÐ°Ð¼Ñ ÑовиÑÑÐ½Ñ Ð¾Ð´ ÑаÑкаÑ",
@@ -691,7 +691,7 @@
"right-writeapi": "Ðода Ð½Ð¾Ð»Ð´Ð°Ð¼Ñ ÑÐµÐ²Ñ ÑÑÑмадома API-нÑÑ",
"right-delete": "ÐаÑÐ´Ð°Ð¼Ñ Ð»Ð¾Ð¿Ð°ÑненÑ",
"right-bigdelete": "ÐаÑÐ´Ð°Ð¼Ñ ÐºÑвака икелÑÐºÑ Ñма маÑÑо лопаÑненÑ",
- "right-browsearchive": "ÐеÑÐ½ÐµÐ¼Ñ Ð½Ð°ÑÐ´Ð°Ð½Ñ ÑайлаÑнеÑÑ",
+ "right-browsearchive": "ÐеÑÐ½ÐµÐ¼Ñ Ð½Ð°ÑÐ´Ð°Ð·Ñ ÑайлаÑнеÑÑ",
"right-undelete": "ÐелÑмевÑÐµÐ¼Ñ Ð½Ð°ÑÐ´Ð°Ð½Ñ Ð»Ð¾Ð¿Ð°",
"right-block": "ÐаÑÐ´Ð°Ð¼Ñ Ð»Ð¸Ñ ÑовийÑненÑ-лиÑийÑÐ½ÐµÐ½Ñ Ð²Ð¸Ñнемадо-пеÑнемадо",
"right-blockemail": "ÐаÑÐ´Ð°Ð¼Ñ Ð»Ð¸Ñ Ð»Ð¸ÑийÑненÑ-ÑовийÑÐ½ÐµÐ½Ñ Ðµ-ÑÑÑÐ¼Ð°Ð½Ñ ÐºÑÑомадо",
@@ -707,9 +707,9 @@
"newuserlogpagetext": "Те ÑеиÑÑÐ½Ñ ÑкавкÑÑо жÑÑнал",
"rightslog": "УÑÑкеÑеиÑÑнÑÑ Ð²Ð¸Ð´ÐµÑинÑÑ ÐºÐµÐ¼ÐµÐºÑÑома",
"action-read": "Ñе Ð»Ð¾Ð¿Ð°Ð½Ñ Ð»Ð¾Ð²Ð½Ð¾Ð¼Ð¾",
- "action-edit": "Ñе лопанÑÑ Ð²Ð¸Ñнеме-пеÑнеме",
- "action-createpage": "Ð»Ð¾Ð¿Ð°Ð½Ñ Ñееме-Ñкамо",
- "action-createtalk": "коÑÑнема Ð»Ð¾Ð¿Ð°Ð½Ñ Ñееме-Ñкамо",
+ "action-edit": "виÑнемÑ-пеÑÐ½ÐµÐ¼Ñ Ñе лопанÑÑ",
+ "action-createpage": "Ñеик-Ñкик Ñе лопанÑÑ",
+ "action-createtalk": "Ñеик-Ñкик Ñе коÑÑнема лопанÑÑ",
"action-createaccount": "Ð¨ÐºÐ°Ð¼Ñ ÑовиÑÑÐ½Ñ Ñе ÑаÑканÑÑ",
"action-minoredit": "ТеÑкÑÑÐ°Ð¼Ñ Ñе виÑнеманÑÑ-пеÑнеманÑÑ Ð° покÑкÑнекÑ",
"action-move": "пеÑÑевÑÐµÐ¼Ñ Ñе лопанÑÑ",
@@ -721,9 +721,9 @@
"action-upload_by_url": "ÑвкÑÑÐ°Ð¼Ñ Ñе ÑайланÑÑ URL адÑеÑÑÑÑ",
"action-writeapi": "Ð½Ð¾Ð»Ð´Ð°Ð¼Ñ ÑÐµÐ²Ñ ÑÑÑмадома API-нÑÑ",
"action-delete": "наÑÐ´Ð°Ð¼Ñ Ñе лопанÑÑ",
- "action-deleterevision": "наÑÐ´Ð°Ð¼Ñ Ñе лиÑкÑÑомÑоманÑÑ",
- "action-browsearchive": "веÑÐ½ÐµÐ¼Ñ Ð½Ð°ÑÐ´Ð°Ð½Ñ Ð»Ð¾Ð¿Ð°ÑнеÑÑÑ",
- "action-undelete": "велÑмевÑÐµÐ¼Ñ Ð¼ÐµÐºÐµÐ² Ñе лопанÑÑ",
+ "action-deleterevision": "наÑÐ´Ð°Ð¼Ñ Ð»Ð¸ÑкÑÑомÑомаÑ",
+ "action-browsearchive": "веÑÐ½ÐµÐ¼Ñ Ð½Ð°ÑÐ´Ð°Ð·Ñ Ð»Ð¾Ð¿Ð°ÑнеÑÑÑ",
+ "action-undelete": "велÑмевÑÐµÐ¼Ñ Ð»Ð¾Ð¿Ð°Ñ Ð¼ÐµÐºÐµÐ²",
"action-suppressionlog": "Ð²Ð°Ð½Ð¾Ð¼Ñ Ñе ÑеиÑÑнÑÑ Ñевнеде ÑÑÑмадовкÑ",
"action-block": "каÑÐ´Ð°Ð¼Ñ Ñе ÑовиÑÑнÑÑ Ð²Ð¸Ñнемадо-пеÑнемадо",
"action-import": "ÑовавÑÐ¾Ð¼Ñ ÑезÑÐ½Ñ Ð»Ð¾Ð¿Ð°Ñ Ð»Ð¸Ñ ÐикиÑÑÑ",
@@ -768,7 +768,6 @@
"minoreditletter": "а",
"newpageletter": "Ð",
"boteditletter": "б",
- "rc_categories_any": "ÐоÑказеÑÐ½ÐµÐ½Ñ ÑйÑÑÑ ÐºÐ¾Ð´Ð°Ð¼Ð¾-понгÑÑ",
"rc-change-size-new": "ÐолавÑнемадонÑÑ Ð¼ÐµÐ¹Ð»Ðµ {{PLURAL:$1|байÑÑнÑде}}: $1",
"newsectionsummary": "/* $1 */ од пелÑкÑ",
"rc-enhanced-expand": "ÐевÑÐµÐ¼Ñ Ñеде ламо ÑÐµÐ½Ñ Ð»Ð°Ð½Ð³Ð°",
@@ -898,7 +897,7 @@
"randomredirect-nopages": "\"$1\" лем поÑмоÑонÑÑ Ð»Ð¸Ñв ÑÑавÑÐ¾Ð¼Ð°Ñ Ð°ÑаÑÑÑ.",
"statistics": "СÑаÑиÑÑикаÑ",
"statistics-header-pages": "ÐÐ¾Ð¿Ð°Ð½Ñ ÑÑаÑиÑÑикаÑ",
- "statistics-header-edits": "СÑаÑиÑÑÐ¸ÐºÐ°Ð½Ñ Ð²Ð¸Ñнеме-пеÑнеме",
+ "statistics-header-edits": "ÐиÑнеманÑ-пеÑÐ½ÐµÐ¼Ð°Ð½Ñ ÑÑаÑиÑÑикаÑÑ",
"statistics-header-users": "ТеиÑÑÐ½Ñ ÑÑаÑиÑÑика",
"statistics-header-hooks": "ÐÐ¸Ñ ÑÑаÑиÑÑика",
"statistics-articles": "ÐоÑмо маÑÑо лопаÑ",
@@ -908,7 +907,7 @@
"doubleredirects": "ÐавкÑÑÑ ÑÑавÑозÑ",
"double-redirect-fixer": "ÐеÑÑевÑÐµÐ¼Ñ Ð²Ð¸Ñнема-пеÑнема пелÑ",
"brokenredirects": "Ð¡ÐµÐ·ÐµÐ·Ñ ÑнкÑоÑÑ",
- "brokenredirects-edit": "виÑнеме-пеÑнеме",
+ "brokenredirects-edit": "виÑнемÑ-пеÑнемÑ",
"brokenredirects-delete": "наÑдамÑ",
"withoutinterwiki": "ÐÐ¾Ð¿Ð°Ñ ÐºÐµÐ»ÐµÐ½ÑÑÑÐºÐ¾Ð²Ð°Ð½Ñ Ð½ÐµÐ²ÑевкÑÐ½ÐµÐ½Ñ Ñеме",
"withoutinterwiki-summary": "Ðана неÑÑ Ð»Ð¾Ð¿Ð°Ñне апак ÑÑлма Ð»Ð¸Ñ ÐºÐµÐ»ÐµÐ½Ñ Ð²ÐµÑÐ·Ð¸Ñ Ð¼Ð°ÑÑо:",
@@ -1089,7 +1088,7 @@
"minimum-size": "ÐинимÑм кÑвалмозо",
"maximum-size": "ÐокÑÐ¾Ð»Ð¼Ð°Ð½Ñ ÑÑкÑ:",
"pagesize": "(байÑÑ)",
- "restriction-edit": "ÐиÑнеме-пеÑнеме",
+ "restriction-edit": "ÐиÑнемÑ-пеÑнемÑ",
"restriction-move": "ЮÑавÑÐ¾Ð¼Ñ Ð»Ð¸Ñ ÑаÑкаÑ",
"restriction-create": "ШкамÑ-ÑеемÑ",
"restriction-upload": "ÐвкÑÑамÑ",
@@ -1143,7 +1142,7 @@
"whatlinkshere-hideredirs": "лиÑв-лиÑв ÑÑавÑовкÑÑнÑде $1",
"whatlinkshere-hidetrans": "ÑÑÐ»Ð¼Ð°Ð²Ð¾Ð·Ñ Ð¿ÐµÐ»ÑкÑÑнÑде $1",
"whatlinkshere-hidelinks": "ÑÑлмавома пеÑнеде $1",
- "whatlinkshere-hideimages": "$1 ÑайланÑÑ ÑÑлмавомапензÑ",
+ "whatlinkshere-hideimages": "ÑÐ°Ð¹Ð»Ð°Ð½Ñ $1 ÑÑлмавомапенеÑÑ",
"whatlinkshere-filters": "ФилÑÑÑаÑ",
"block": "ÐÑавÑÐ¾Ð¼Ñ ÑеиÑÑнÑÑ ÑаймаÑ",
"unblock": "ÐÐ¾Ð»Ð´Ð°Ð¼Ñ ÑеиÑÑнÑÑ ÑаймаÑÑо",
@@ -1198,7 +1197,7 @@
"movepagetext": "Ðло макÑÐ¾Ð·Ñ Ð»ÑвонÑÑ ÑÐµÐ²Ñ Ð½Ð¾Ð»Ð´Ð°Ð·Ñ, Ð¾Ð´Ñ Ð»ÐµÐ¼Ð´ÑÑ Ð»Ð¾Ð¿Ð°, ве ÑкаÑÑо пеÑÑевÑÑÑ Ð¾Ð´ ÑаÑÐºÐ°Ñ ÑÐ¾Ð½Ð·Ñ Ð»Ð¸ÑкÑÑомÑома ÑÑонзо-жÑÑналонзо.\nÐÐºÐµÐ»ÐµÐ½Ñ Ð»ÐµÐ¼ÐµÐ·Ñ Ñееви пеÑÑевÑема лопакÑ, кона ÑÑавÑÑ Ð»Ð¸ÑийÑÑ-ÑовийÑÑ Ð¾Ð´ леменÑенÑ.\nÐевÑевкÑÑÐ½Ñ Ð¸ÐºÐµÐ»ÐµÐ½Ñ Ð»ÐµÐ¼ÐµÐ½ÑÑ Ð»Ð°Ð½Ð³Ñ Ð° каÑмиÑÑ Ð»Ð¸ÑкÑÑомÑовомо (инеÑÑкеÑÑ, Ð²Ð°Ð½Ñ ÑлиÑÑ - аÑаÑÑÑ [[Special:DoubleRedirects|кавÑÐ¾Ð½Ñ ÐºÐ¸ÑданÑ]] Ð´Ñ [[Special:BrokenRedirects|ÑÐµÐ·ÐµÐ½Ñ Ð¿ÐµÑÑевÑемаÑ]]).\nÐÑеÑÑ Ð»Ð°Ð½Ð³Ñо вана невÑевкÑÑÐ½Ñ Ð½ÐµÐ²ÑеÑÑ Ñев, ков ÑÑÑви.\n\nÐÐµÐ»Ñ ÑвÑ, ÑлиндеÑÑй анок лопа од леменÑÑ ÑаÑкаÑо, лопаÑÑ '''а пеÑÑевÑеви'''. ÐеÑÑевÑеви анÑÑк ÑеÑÑÑ, зÑÑдо лопаÑÑ Ñаво Ñли аÑÑи певÑевÑема лопакÑ, ÐºÐ¾Ð½Ð°Ð½Ñ Ð°ÑаÑÑ Ð²Ð¸ÑнеманÑ-пеÑÐ½ÐµÐ¼Ð°Ð½Ñ Ð¸ÐºÐµÐ»ÑÐºÑ Ñмазо. ÐиÑÐºÑ Ð¼ÐµÑемга, маÑÑови одов Ð»ÐµÐ¼Ð´ÐµÐ¼Ñ Ð»Ð¾Ð¿Ð° Ð¸ÐºÐµÐ»ÐµÐ½Ñ Ð»ÐµÐ¼ÑÑнзÑ, зÑÑдо ÑеÑÑ Ð¸Ð»ÑведевкÑ; ÑÐ»Ð¸ÐºÑ Ð»Ð¸Ñ Ð»Ð¾Ð¿Ð° а наÑдави.\n\n'''ÐÐÐÐÐ!'''\nÐÐ´Ñ Ð»ÐµÐ¼Ð´ÑмоÑÑ ÑÑÑÑ Ð¿Ð¾ÐºÑ Ð´Ñ Ð¿ÐµÐº апак ÑÑÐ¾Ð½Ñ Ð¿Ð¾Ð»Ð°Ð²ÑÐ¾Ð²Ð¾Ð¼Ð°Ñ Ð»Ð¾Ð¿Ð°ÑнененÑ, конаÑÐ½ÐµÑ ''веÑÐµÐ¼ÐµÐ½ÐµÐ½Ñ Ð¿ÐµÐº ÑодавикÑÑ''.\nÐнеÑÑкеÑÑ, поладомадо икеле ваÑÐ½Ñ Ð²Ð°Ð½Ñ, ÑаÑÑкодÑÑ - ÑаÑÑкодÑÑ ÐºÐ¾Ð·Ð¾Ð½Ñ Ñе ÑевеÑÑ Ð²ÐµÑи.",
"movepagetalktext": "ÐÐ¾Ð»Ð°Ð´Ð¾Ð·Ñ ÐºÐ¾ÑÑавÑома лопаÑÑ, кодак иÑÑÑмоÑÑ Ñли ÑÑавÑови авÑомаÑика велÑде Ð¾Ð´Ñ Ð»ÐµÐ¼Ð´ÑзенÑÑ Ð¼Ð°ÑÑо, '''а ÑÑавÑови, зÑÑдо:'''
\n\n*ÐÑÑÑмо лем маÑÑо коÑÑавÑома лопа, конаÑÑ Ð°Ð²Ð¾Ð»Ñ Ñаво мÑеви\n*ÐзиÑÑ Ð¿ÑÑо ÑеÑкÑÑ Ð¿Ð°ÐºÑÑÑонÑÑ Ð°Ð»Ð¾.
\n\nÐÑÑдо иÑÑÑÑ ÑевÑне, Ñави ÑонÑÑеÑÑ Ð»Ð¾Ð¿Ð°ÑÐ½ÐµÐ½Ñ ÐºÑÑомÑ-ÑÑлмамÑ, кедÑÑÑ.",
"movenotallowed": "ÐÑаÑÑ Ð¼ÐµÑÐµÐ¼Ð°Ñ Ð¿ÐµÑÑевÑÐµÐ¼Ñ Ð»Ð¾Ð¿Ð°ÑнеÑÑ.",
- "newtitle": "Ðд леменÑÑÑ:",
+ "newtitle": "Ðд лемезÑ:",
"move-watch": "ÐÐ°Ð½Ð¾Ð¼Ñ Ð»Ð¾Ð¿Ð°Ð½ÑÑ",
"movepagebtn": "ÐеÑÑевÑÐµÐ¼Ñ Ð»Ð¾Ð¿Ð°Ð½ÑÑ",
"pagemovedsub": "ÐопаÑÑ Ð¿ÐµÑÑевÑевÑÑ",
@@ -1257,9 +1256,9 @@
"import-upload": "ÐвкÑÑÐ°Ð¼Ñ XML даÑанÑÑ",
"importlogpage": "ÐмпоÑÑонÑÑ Ð¶ÑÑналоÑÑ",
"import-logentry-upload-detail": "СовавÑÐ¾Ð·Ñ $1 {{PLURAL:$1|лиÑкÑÑомÑома|лиÑкÑÑомÑомаÑ}}",
- "tooltip-pt-userpage": "ТеиÑÑÐ½Ñ Ð»Ð¾Ð¿Ð°Ñ",
- "tooltip-pt-mytalk": "ÐоÑÑнемалопам",
- "tooltip-pt-preferences": "ÐейÑÑ Ñвован лиÑÑÐ½ÐµÐ½Ñ ÑйÑÑÑ",
+ "tooltip-pt-userpage": "{{GENDER:|ТеиÑÑÐ½Ñ Ð»Ð¾Ð¿Ð°Ñ}}",
+ "tooltip-pt-mytalk": "{{GENDER:|ÐоÑÑнемалопам}}",
+ "tooltip-pt-preferences": "{{GENDER:|ÐÑеÑÑ}} аÑавÑнемаÑ",
"tooltip-pt-watchlist": "ÐопаÑне, конаÑÐ½ÐµÐ½Ñ Ð¼ÐµÐ»Ñга ванÑÑнÑÑ: лиÑкÑÑомÑовиÑÑ Ð° лиÑкÑÑомÑовиÑÑ",
"tooltip-pt-mycontris": "ÐезеÑÑ Ð»ÐµÐ·Ð´ÑÐ½Ñ Ð¼ÐµÐ·Ðµ пÑÑÑнÑ",
"tooltip-pt-login": "СовавÑовлиÑÑ ÑÑÑ Ð¿ÑÑÑ ÑезÑнÑ, аÑаÑÑ Ð¼ÐµÐ»ÐµÑÑ, илÑ.",
@@ -1530,15 +1529,15 @@
"watchlistedit-normal-title": "ÐиÑнемÑ-пеÑÐ½ÐµÐ¼Ñ Ð²Ð°Ð½ÑÑома лопанÑÑ",
"watchlistedit-normal-submit": "ÐаÑÐ´Ð°Ð¼Ñ ÐºÐ¾Ð½ÑкÑÑнÑнÑ",
"watchlistedit-normal-done": "{{PLURAL:$1|1 конÑÐºÑ Ð½Ð°ÑдазелÑ|$1 конÑкÑÑ Ð½Ð°ÑдазелÑÑÑ}} Ð²Ð°Ð½Ð¾Ð¼Ð°Ð½Ñ Ð»Ð¾Ð¿Ð°ÑÑоÑ:",
- "watchlistedit-raw-title": "ÐиÑнеме-пеÑнеме веÑек ваномалопанÑÑ",
- "watchlistedit-raw-legend": "ÐиÑнеме-пеÑнеме веÑек ваномалопанÑÑ",
+ "watchlistedit-raw-title": "ÐиÑнемÑ-пеÑÐ½ÐµÐ¼Ñ Ð²ÐµÑек ваномалопанÑÑ",
+ "watchlistedit-raw-legend": "ÐиÑнемÑ-пеÑÐ½ÐµÐ¼Ñ Ð²ÐµÑек ваномалопанÑÑ",
"watchlistedit-raw-titles": "ÐонÑкÑÑ:",
"watchlistedit-raw-submit": "Ðезе мелÑга ванÑÑнÑÑ, ÑпиÑкаÑÑ Ð¾Ð´ÐºÑÑомÑомÑ",
"watchlistedit-raw-added": "{{PLURAL:$1|1 конÑÐºÑ Ð¿Ð¾Ð»Ð°Ð´Ð¾Ð·ÐµÐ»Ñ|$1 конÑкÑÑ Ð¿Ð¾Ð»Ð°Ð´Ð¾Ð·ÐµÐ»ÑÑÑ}}:",
"watchlistedit-raw-removed": "{{PLURAL:$1|1 конÑÐºÑ Ð½Ð°ÑдазелÑ|$1 конÑкÑÑ Ð½Ð°ÑдазелÑÑÑ}}:",
"watchlisttools-view": "ÐиÑкÑÑомаÑÑне лопаÑнеÑÑ Ð¿Ð¾ÑмокÑÑÑонÑÑ",
"watchlisttools-edit": "ÐÐ°Ð½Ð¾Ð¼Ñ Ð´Ñ Ð²Ð¸ÑнемÑ-пеÑÐ½ÐµÐ¼Ñ Ð¼ÐµÐ·Ðµ мелÑга ванÑÑнÑÑ",
- "watchlisttools-raw": "ÐиÑнеме-пеÑнеме веÑек ваномалопанÑÑ",
+ "watchlisttools-raw": "ÐиÑнемÑ-пеÑÐ½ÐµÐ¼Ñ Ð²ÐµÑек ваномалопанÑÑ",
"duplicate-defaultsort": "'''Ðанок!''' Ð ÑÐ´Ñ Ð°ÑавÑÐ¾Ð¼Ð°Ð½Ñ Ñе \"$2\" панжомаÑÑ Ñаеви Ñе \"$1\" панжомадо икеле.",
"version": "ÐеÑÑиÑ",
"version-skins": "ÐÑавÑÐ¾Ð·Ñ Ð»Ð°Ð½Ð³Ñ",
@@ -1576,7 +1575,7 @@
"compare-rev1": "ÐеÑÑÐ¸Ñ 1",
"compare-rev2": "ÐеÑÑÐ¸Ñ 2",
"compare-submit": "ÐÑавÑÐ¾Ð¼Ñ ÐºÐ°Ñадо каÑÑо",
- "diff-form": "'''Ñ
оÑма'''",
+ "diff-form": "ÐейÑÑ ÑвовиÑÑ",
"htmlform-submit": "ÐакÑомÑ",
"htmlform-reset": "Ð¡Ð°ÐµÐ¼Ñ Ð¼ÐµÐºÐµÐ² полавÑомаÑненÑ",
"htmlform-selectorother-other": "ÐиÑ",
@@ -1600,5 +1599,5 @@
"special-characters-group-latin": "ÐаÑиниÑа",
"special-characters-group-symbols": "ТеÑкÑÑÑ",
"special-characters-group-cyrillic": "ÐиÑиллиÑа",
- "randomrootpage": "Ðодама понгÑÑ ÑÑÑ Ð»Ð¾Ð¿Ð°"
+ "randomrootpage": "Ðодама понгÑÑ ÑÑÑлопа"
}
diff --git a/languages/i18n/nah.json b/languages/i18n/nah.json
index 7776556b43..19efe88db3 100644
--- a/languages/i18n/nah.json
+++ b/languages/i18n/nah.json
@@ -616,7 +616,6 @@
"newpageletter": "Y",
"boteditletter": "T",
"number_of_watching_users_pageview": "[$1 tlatequitiltilīlli {{PLURAL:$1|tlachiya|tlachiyah}}]",
- "rc_categories_any": "ZÄzo in tlaihittalli",
"newsectionsummary": "YancuÄ«c tlahtÅltzintli: /* $1 */",
"recentchangeslinked": "Tlapatlaliztli tzonhuilizpan",
"recentchangeslinked-feed": "Tlapatlaliztli tzonhuilizpan",
diff --git a/languages/i18n/nan.json b/languages/i18n/nan.json
index 82c49f0467..f7fcfc6758 100644
--- a/languages/i18n/nan.json
+++ b/languages/i18n/nan.json
@@ -9,7 +9,8 @@
"Luuva",
"Macofe",
"é²ä¹",
- "Liuxinyu970226"
+ "Liuxinyu970226",
+ "Yoxem"
]
},
"tog-underline": "Liân-kiat oÄ té-sûn:",
@@ -218,7 +219,7 @@
"pool-timeout": "Chhiau-koè só-tÄng ê sî-kan",
"pool-queuefull": "TÅ«i-liaÌt pâi moá ah",
"pool-errorunknown": "MÌ-chai siá⿠chhò-gÅÍ",
- "pool-servererror": "ç¡æä¾ç³»çµ±æå總æ¸ççµ±è¨ã",
+ "pool-servererror": "Bô thê-kiong hÄ-thóng hoÌk-bÅ« chóng-sòÍ--ê thóng-kè ($1).",
"poolcounter-usage-error": "Äng-hoat chhò-gÅÍ: $1",
"aboutsite": "Koan-hÄ {{SITENAME}}",
"aboutpage": "Project:Koan-hÄ",
@@ -263,7 +264,7 @@
"collapsible-expand": "Hià n",
"confirmable-confirm": "{{GENDER:$1|ä½ }}æ¢ç¢ºå®å
?",
"confirmable-yes": "èå¦",
- "confirmable-no": "ç¡å¦ï¼æ¯æ¯ï¼",
+ "confirmable-no": "Bô--lah!",
"thisisdeleted": "Khoà ⿠aÌh-sÄ« kiù $1?",
"viewdeleted": "Beh khoà ⿠$1ï¼",
"restorelink": "{{PLURAL:$1|chiÌt ê thâi-tià u ê pian-chiÌp|$1 thâi-tià u ê pian-chiÌp}}",
@@ -323,7 +324,7 @@
"formerror": "Chhò-gÅ·: bô-hoat-tÅ· kÄ pió sà ng chhut khì.",
"badarticleerror": "BÄ-tà ng tià m chit iaÌh chip-hêng chit ê tÅng-chok.",
"cannotdelete": "Bô-hoat-tÅ· kÄ hit ê iaÌh aÌh-sÄ« iáâ¿-siÅng ã$1ã thâi tiÄu. (Khó-lêng paÌt-lâng Ã-keng kÄ thâi tiÄu ah.)",
- "cannotdelete-title": "ç¡æ³åº¦å
±\"$1\"éé å£æã",
+ "cannotdelete-title": "Bô-hoat-tÅÍ kÄ \"$1\" chit iaÌh thâi-tiÄu.",
"delete-hook-aborted": "æè¨å®é»æå£æçåä½ã\næ¯é£ç¡å
¶ä»ç解說ã",
"no-null-revision": "è¢ç¶äº\"$1\"ç¢çä¸ä¸ªç©ºçä¿®è¨æ¬ã",
"badtitle": "MÌ-chiâ⿠piau-tê",
@@ -354,20 +355,20 @@
"namespaceprotected": "Là bô khoân-lÄ« kái '''$1''' miâ-khong-kan ê iaÌh",
"customcssprotected": "ä½ ç¡åæ¬å»æ¹é个 CSSé ï¼å çºé个é æå
æ¬å¥ä¸ªç¨è
çå人è¨å®ã",
"customjsprotected": "ä½ ç¡ææ¬å»æ¹é个JavaScripté ï¼å çºé个é å
æ¬å¥ä¸ªç¨è
çå人è¨å®ã",
- "mycustomcssprotected": "ä½ ç¡ææ¬å»æ¹é个CSSé ã",
- "mycustomjsprotected": "ä½ ç¡ææ¬å»æ¹é个JavaScripté ã",
- "myprivateinfoprotected": "ä½ ç¡ææ¬æ¹ä½ 家己çç§äººè³è¨ã",
- "mypreferencesprotected": "ä½ ç¡ææ¬æ¹ä½ ç家己çåæè¨å®ã",
+ "mycustomcssprotected": "Là bô hÃ-khó lâi kái chit ê CSS iaÌh.",
+ "mycustomjsprotected": "Là bô hÃ-khó lâi kái chit ê Javascript iaÌh.",
+ "myprivateinfoprotected": "Là bô hÃ-khó lâi kái là ka-kÄ«--ê su-jîn chu-sìn.",
+ "mypreferencesprotected": "Là bô hÃ-khó kái ka-kÄ«--ê iÅng-chiá siat-tÄng.",
"ns-specialprotected": "ç¹æ®é è¢å¾æ¹ã",
"titleprotected": "é个æ¨é¡å·²ç¶äº[[User:$1|$1]]ä¿è·èµ·ä¾ï¼è¢å¾æä¾ç¨ã\nåå æ¯ $2ã",
"filereadonlyerror": "å çºæªæ¡åº«é馬åªæ使çï¼æ以è¢å¾æ¹ \"$1\"é个æªæ¡ã\néæªæ¡åº«ç管çå¡è¬æ¯å çºï¼\"$3\"ã",
"invalidtitle-knownnamespace": "ä½å空é \"$2\"ä½®æå\"$3\"çæ¨é¡è¢ä½¿å¾ã",
"invalidtitle-unknownnamespace": "å空éç·¨è $1(æ¯ç¥å)ç\"$2\"æåæ¨é¡è¢ä½¿ç¨ã",
"exception-nologin": "Bô teng-jiÌp",
- "exception-nologin-text": "è«å
ç»å
¥ï¼æææ³åº¦çéé æå°éé ååä½ã",
- "exception-nologin-text-manual": "è«å
$1ï¼æææ³åº¦çéé æå°éé ååä½ã",
+ "exception-nologin-text": "Chhiá⿠seng teng-jiÌp, chiah Å« hoat-tÅÍ khoà ⿠chit iaÌh iah tùi chit iaÌh chò tÅng-chok.",
+ "exception-nologin-text-manual": "Chhiá⿠seng $1, chiah Å« hoat-tÅÍ khoà ⿠chit iaÌh iah tùi chit iaÌh chò tÅng-chok.",
"virus-badscanner": "è¨å®æ¯èï¼ä½ çç
æ¯ææç¨å¼é®æ¯ç¥ï¼$1",
- "virus-scanfailed": "æç
æ¯ç¡æåï¼ä»£ç¢¼$1ï¼",
+ "virus-scanfailed": "Sáu pÄâ¿-toÌk bô sêng-kong (tÄi-bé: $1)",
"virus-unknownscanner": "MÌ-chai siá⿠pÄâ¿-toÌk:",
"logouttext": "'''Là Ã-keng teng-chhut.'''\nChhiaâ¿ chù-ì: Å«-kóa iaÌh Å« khó-lêng khoà â¿-tioÌh bÄ-su là iáu teng-jiÌp tÄ« leh; che chi-ià u pià ⿠tiÄu liû-lám-khì ê khoà i-chhú-khu, tiÅ Ä chèng-siông.",
"welcomeuser": "Hoan-gêng, $1!",
@@ -420,11 +421,11 @@
"badretype": "Là su-jiÌp ê 2-cho· biÌt-bé bô tùi.",
"userexists": "Là phah ê iÅng-chiá miâ-chheng Ã-keng Å« lâng iÅng. Chhiá⿠là iÅng paÌt-ê miâ.",
"loginerror": "Teng-jiÌp chhò-gÅ·",
- "createacct-error": "éå£åº§ç¡æå",
+ "createacct-error": "Khui kháu-chŠbô sêng-kong",
"createaccounterror": "Bô hoat-tÅÍ khui kháu-chÅ: $1",
"nocookiesnew": "LÃ--ê iÅng-chiá kháu-chÅ Ã-keng khui hó--ah, mÌ-koh là iáu-boÄ teng-jiÌp.\n{{SITENAME}} Å« sái Cookies choè kì-lioÌk teng-jiÌp--ê iÅng-chiá.\nLà bô Ãn-chún iÅng Cookies, chhiá⿠là seng kÄ chóÍ-tòng theÌh tiÄu, chiah koh iÅng lÃ--ê iÅng-chiá-miâ kap biÌt-bé teng-jiÌp.",
"nocookieslogin": "{{SITENAME}}æç¨cookiesåè¨éç¨è
ï¼æ¯éä½ ç¡å
æºç¨cookiesï¼çä½ æ¹åæç¶äºå¾ï¼æé£è©¦ã",
- "nocookiesfornew": "å çºä¸æçåå ï¼é®ç¡æ³åº¦å»ºç«ç¨è
çå£åº§ã\nè«å
確å®ä½ çcookieæ使ç¨ï¼é£éé²å
¥éé ï¼é£è©¦ä¸æºã",
+ "nocookiesfornew": "In-Å«i put-bêng--ê goân-in, gún bô-hoat-tÅÍ kià n-liÌp iÅng-chiá--ê kháu-chÅ. Chhiá⿠seng khak-tÄng lÃ--ê cookie Ä-tà ng Äng, têng chìn-jiÌp chit iaÌh, koh chhì chiÌt pái.",
"noname": "Là phah--ê iÅng-chiá-miâ boÄ-sái.",
"loginsuccesstitle": "Teng-jiÌp sêng-kong",
"loginsuccess": "Là hiÄn-chhú-sî Ã-keng teng-jiÌp {{SITENAME}} chò \"$1\".",
@@ -512,7 +513,7 @@
"anonpreviewwarning": "Là bô teng-jiÌp. NÄ-sÄ« là beh pó-chûn, lÃ--ê IP Å«i-chÃ Ä kì-loÌk tÄ« i--ê siu-kái leÌk-sú lÄi-bÄ«n.",
"summary-preview": "Khà i-ià u ê preview:",
"subject-preview": "Ū-lám tê-boÌk/piau-tê:",
- "blockednoreason": "ç¡å¯«çç±",
+ "blockednoreason": "bô siá lÃ-iû",
"whitelistedittext": "Là à i $1 chiah Ä-sái siu-kái.",
"nosuchsectiontitle": "Chhoé bô toÄn-loÌh",
"loginreqtitle": "Su-ià u Teng-jiÌp",
@@ -523,7 +524,7 @@
"newarticle": "(Sin)",
"newarticletext": "Là tòe 1 ê liân-kiat lâi kà u 1 bÄ«n iáu-bÅe chûn-chÄi ê iaÌh. Beh khai-sà pian-chiÌp chit iaÌh, chhiá⿠tÄ« Ä-kha ê bûn-jÄ« keh-á lÄi-té phah-jÄ«. ([$1 BoÌk-lioÌk] kà là án-choá⿠chìn-hêng.) Ká-sú là bô-tiuâ¿-tî lâi kà u chia, Ä-sai chhiÌh liû-lám-khì ê '''téng-1-iaÌh''' tÅg--khì.",
"anontalkpagetext": "----''Pún thó-lÅ«n-iaÌh bô kò·-tÄng ê kháu-chÅ/hÅ·-thâu, kan-na Å« 1 ê IP chÅ«-chà (chhin-chhiÅ«â¿ 123.456.789.123). In-Å«i bô kÄng lâng tÄ« bô kÄng sî-chÅ«n Å« khó-lêng tú-hó kong-ke kÄng-ê IP, lâu tÄ« chia ê oÄ Å« khó-lêng hÅ· bô kÄng lâng ê! Beh pÄ«-bián chit khoán bÅ«n-tê, Ä-sái khì [[Special:UserLogin|khui 1 ê hÅ·-thâu aÌh-sÄ« teng-jiÌp]].''",
- "noarticletext": "éé é馬ç¡å
§å®¹ï¼ä½ æ使ä½å¥é [[Special:Search/{{PAGENAME}}|æ£éé æ¨é¡]]ï¼\n[{{fullurl:{{#Special:Log}}|page={{FULLPAGENAMEE}}}} æ£ç¸éæ¥èª]ï¼\næ[{{fullurl:{{FULLPAGENAME}}|action=edit}} åµé éé ]ã",
+ "noarticletext": "Chit iaÌh chit-má bô loÄ-iông, là Ä-sái tÄ« paÌt iaÌh [[Special:Search/{{PAGENAME}}|chhoÄ chit iaÌh piau-tê]], \n[{{fullurl:{{#Special:Log}}|page={{FULLPAGENAMEE}}}} chhoÄ siong-koan jiÌt-chì], \niah [{{fullurl:{{FULLPAGENAME}}|action=edit}} chhòng-chò chit iaÌh]ã",
"clearyourcache": "'''Chù-ì:''' Pó-chûn liáu-Äu, tioÌh Ä-kì leh kÄ liû-lám-khì ê cache pià ⿠tiÄu chiah khoà â¿-Ä-tioÌh kái-pià n: *'''Firefox / Safari:''' chhiÌh tiâu \"Shift\" kâng-sî-chÅ«n tiám-kik ''Reload/têng-sin chà i-jiÌp'' aÌh-sÄ« chhiÌh ''Ctrl-F5'' \"Ctrl-R\" kî-tiong chiÌt ê (''Command-R'' tÄ« Mac) \n* '''Google Chrome:''' chhiÌh ''Ctrl-Shift-R'' (''Command-Shift-R'' tÄ« Mac)\n'''Internet Explorer :'''chhiÌh tiâu \"Ctrl\" kâng-sî-chÅ«n tiám-kek ''Refresh/têng-sin chà i-jiÌp'' aÌh-sÄ« chhiÌh \"Ctrl-F5\" \n* '''Konqueror:''' tiám-kek ''Reload/têng-sin chà i-jiÌp'' aÌh-sÄ« chhiÌh ''F5''\n* '''Opera:''' pià â¿-tiÄu cache tÄ« ''Tools(ke-si) â Preferences(siat-piÄn)''",
"usercssyoucanpreview": "'''Phiat-pÅ·''': Pó-chûn chìn-chêng Ä-sái chhiÌh 'Seng khoà â¿-mÄi' kiám-cha sin ê CSS aÌh-sÄ« JavaScript.",
"userjsyoucanpreview": "'''Phiat-pÅ·''': Pó-chûn chìn-chêng Ä-sái chhiÌh 'Seng khoà â¿-mÄi' kiám-cha sin ê CSS aÌh-sÄ« JavaScript.",
@@ -582,7 +583,7 @@
"histfirst": "Tùi thâu-chêng",
"histlast": "Tùi Äu-piah",
"history-feed-item-nocomment": "$1 tī $2",
- "revdel-restore": "æ¹æç¶çç¡",
+ "revdel-restore": "kái Ä-tà ng khoà â¿--bô",
"revertmerge": "åæ¶åä½µ",
"history-title": "\"$1\"--ê leÌk-sú pán-pún",
"difference-title": "\"$1\" pán-pún chi-kan bô-kÄng--ê tÄ-hng",
@@ -611,6 +612,7 @@
"search-section": "(toÄn-loÌh $1)",
"searchall": "choân-pÅ·",
"showingresults": "Ä-kha tùi #$2 khai-sà hián-sÄ« $1 hÄng kiat-kó.",
+ "search-showingresults": "{{PLURAL:$4|$3 ê kiat-kó $1|$3 ê kiat-kó $1 â $2}}",
"search-nonefound": "ChhoÄ mÌ tioÌh",
"powersearch-legend": "Kiám-sek",
"preferences": "Siat-tÄng",
@@ -652,7 +654,7 @@
"prefs-files": "Tóng-à n",
"prefs-custom-css": "Chū-siat CSS",
"prefs-custom-js": "Chū-siat JavaScript",
- "prefs-common-css-js": "SóÍ-Å« gÅa-phôe kong-ke ê CSS/JavaScript",
+ "prefs-common-config": "SóÍ-Å« gÅa-phôe kong-ke ê CSS/JavaScript",
"prefs-reset-intro": "Là Ä-sà i Äng pún iaÌh lâi chiong là ê siat-tì têng-siat chò pún chÄm kì-tÄng.\nChe bÄ hoat-tÅÍ hoÌk-goân.",
"prefs-emailconfirm-label": "TiÄn-chú-phoe khak-tÄng:",
"youremail": "Là ê email:",
@@ -687,7 +689,7 @@
"recentchanges-label-newpage": "Chit ê siu-kái Ä sán-seng sin iaÌh",
"recentchanges-label-minor": "Che sī sió siu-kái",
"recentchanges-label-bot": "Che sī ki-khì-lâng kái--ê",
- "recentchanges-label-unpatrolled": "é个編輯æç¡å·¡è¦é",
+ "recentchanges-label-unpatrolled": "Chit ê pian-chiÌp iah bô sûn--koè.",
"recentchanges-label-plusminus": "Hit iaÌh kái liáu; cheng-chha ê Å«i-goân-choÍ",
"recentchanges-legend-heading": "Ké-soeh:",
"recentchanges-legend-newpage": "{{int:recentchanges-label-newpage}} (è«åè[[Special:NewPages|æ°é æ¸
å®]])",
@@ -725,6 +727,7 @@
"recentchangeslinked-title": "kap \"$1\" siong-koan ê kái-pià n",
"recentchangeslinked-summary": "éæ¯æç¸æ¥å°æå®é (ææ¯æå®åé¡çæææå¡)ï¼èä¸æè¿å®¶å·±é çå
§å®¹ææ¹éçæ¸
å®ã\néçé [[Special:Watchlist|ä½ä½ çç£è¦æ¸
å®]]æç¨ç²é« æ¨ç¤ºã",
"recentchangeslinked-page": "IaÌh ê miâ:",
+ "recentchangeslinked-to": "Åaâ¿ chò tián-sÄ« liân kòe chÃ-tÄng iaÌh-bÄ«n ê iaÌh-bÄ«n ê kái-pià n",
"upload": "KÄ tóng-à n chiÅ«â¿-bÄng",
"uploadbtn": "KÄ tóng-à n chiÅ«â¿-bÄng",
"reuploaddesc": "Tò khì sà ng-chiÅ«â¿-bÄng ê pió.",
@@ -765,7 +768,7 @@
"filehist-user": "IÅng-chiá",
"filehist-dimensions": "寸尺",
"filehist-comment": "soat-bêng",
- "imagelinks": "tóng-à n sù-iÅng ê chÅng-hòng",
+ "imagelinks": "Tóng-à n sù-iÅng ê chÅng-hòng",
"linkstoimage": "Ä-kha {{PLURAL:$1|ê iaÌh}} Å« iÅng tioÌh chit ê iáâ¿-siÅng:",
"nolinkstoimage": "Bô poà ⿠iaÌh liân kà u chit tiuâ¿ iáâ¿-siÅng.",
"sharedupload-desc-here": "Chit--ê $1--ê tóng-à n Å« khó-lêng hÅÍ kî-thaâ¿--ê choan-à n Äng tioÌh.\nChia sÄ« chit--ê tóng-à n i--ê [$2 soat-bêng].",
@@ -1072,6 +1075,7 @@
"metadata-fields": "ä½é¡¯ç¤ºåççé ï¼è¥æéå
è³æï¼ä¸è·¤çEXIFè³ææåçèãå
¶ä»çå
è³ææ¯å
çç¡ã\n* å» å\n* æ©å\n* ç¿åçæé£\n* æå
\n* å
å\n* ISO éç\n* ç¦è·\n* ä½è
\n* çæ¬\n* 說æ\n* 緯度(GPS)\n* ç¶åº¦(GPS)\n* æµ·æ(GPS)",
"exif-xresolution": "Chúi-pê⿠kái-siÅng-tÅÍ",
"exif-yresolution": "Sûi-tiÌt kái-siÅng-tÅÍ",
+ "exif-datetime": "Tóng-à n kái-pià n ê jiÌt-chà kap sî-kan",
"exif-software": "Sú-iÅng ê nÅg-thé",
"exif-colorspace": "Sek-chhái khong-kan",
"namespacesall": "choân-pÅ·",
diff --git a/languages/i18n/nap.json b/languages/i18n/nap.json
index 61e4403b25..00975fd35c 100644
--- a/languages/i18n/nap.json
+++ b/languages/i18n/nap.json
@@ -651,7 +651,7 @@
"userjspreview": "'''Arricuordate ca chest'è sulamente n'anteprimma p' 'o JavaScript perzunale. 'E cagnamiente nun so' state ancora sarvate!'''",
"sitecsspreview": "'''Arricuordate ca chest'è sulamente n'anteprimma p' 'o CSS. 'E cagnamiente nun so' state ancora sarvate!'''",
"sitejspreview": "'''Arricuordate ca chest'è sulamente n'anteprimma p' 'o codece JavaScript. 'E cagnamiente nun so' state ancora sarvate!'''",
- "userinvalidcssjstitle": "'''Attenziò:''' Nun esiste nisciuna skin c' 'o nomme \"$1\". Vide ch' 'e paggene .css e .js personalezzate teneno nu titolo n minucola, p'esempio {{ns:user}}:Esempio/vector.css e nun {{ns:user}}:Esempio/Vector.css.",
+ "userinvalidconfigtitle": "'''Attenziò:''' Nun esiste nisciuna skin c' 'o nomme \"$1\". Vide ch' 'e paggene .css e .js personalezzate teneno nu titolo n minucola, p'esempio {{ns:user}}:Esempio/vector.css e nun {{ns:user}}:Esempio/Vector.css.",
"updated": "(Agghiurnato)",
"note": "'''Nota:'''",
"previewnote": "'''Chesta è sola n'anteprimma; 'e cagnamiénte â paggena nun songo ancora sarvate!'''",
@@ -1010,7 +1010,7 @@
"prefs-files": "File",
"prefs-custom-css": "CSS personalizzato",
"prefs-custom-js": "JavaScript personalizzato",
- "prefs-common-css-js": "CSS/JavaScript spartuto pe' tutt' 'e skin:",
+ "prefs-common-config": "CSS/JavaScript spartuto pe' tutt' 'e skin:",
"prefs-reset-intro": "Putisse ausà sta paggena pe' rimpizzà 'e preferenze proprie comme chille predefinite d' 'o sito.\nL'operazione nun se può annullà .",
"prefs-emailconfirm-label": "Cunferma 'e ll'e-mail:",
"youremail": "E-mail:",
@@ -1308,8 +1308,6 @@
"newpageletter": "N",
"boteditletter": "b",
"number_of_watching_users_pageview": "[osservata 'a {{PLURAL:$1|n'utente|$1 utente}}]",
- "rc_categories": "Lemmeta a 'e categurìe (spartute 'a \"|\"):",
- "rc_categories_any": "Qualunque d' 'e scigliute",
"rc-change-size-new": "$1 {{PLURAL:$1|byte|byte}} aropp'ô cagnamiento",
"newsectionsummary": "/* $1 */ sezziona nnova",
"rc-enhanced-expand": "Fa vede dettaglie",
@@ -3317,7 +3315,7 @@
"htmlform-user-not-exists": "$1 nun esiste.",
"htmlform-user-not-valid": "$1 nun è nu nomme buono.",
"logentry-delete-delete": "$1 {{GENDER:$2|scancellaje}} 'a paggena $3",
- "logentry-delete-restore": "$1 {{GENDER:$2|arrepigliaje}} 'a paggena $3",
+ "logentry-delete-restore": "$1 {{GENDER:$2|arrepigliaje}} 'a paggena $3 ($4)",
"logentry-delete-event": "$1 {{GENDER:$2|cagnaie}} 'a vesibbiletà 'e {{PLURAL:$5|n'azione d' 'o riggistro|$5 aziune d' 'o riggistro}} ncopp' 'a 'a $3: $4",
"logentry-delete-revision": "$1 {{GENDER:$2|cagnaie}} 'a vesibbiletà 'e {{PLURAL:$5|na verziona|$5 verziune}} ncopp' 'a 'a $3: $4",
"logentry-delete-event-legacy": "$1 {{GENDER:$2|cagnaie}} 'a vesibbiletà 'e l'aziune dint' 'o riggistro ncopp' 'a $3: $4",
diff --git a/languages/i18n/nb.json b/languages/i18n/nb.json
index dd522a15a3..fe826a268b 100644
--- a/languages/i18n/nb.json
+++ b/languages/i18n/nb.json
@@ -691,7 +691,7 @@
"userjspreview": "'''Husk at dette bare er en test eller forhåndsvisning av ditt bruker-JavaScript, og det ikke er lagret!'''",
"sitecsspreview": "'''Husk at du bare forhåndsviser denne CSS-en.'''\n'''Den har ikke blitt lagret ennå!'''",
"sitejspreview": "'''Husk at du bare forhåndsviser denne JavaScript-koden.'''\n'''Den har ikke blitt lagret ennå!'''",
- "userinvalidcssjstitle": "'''Advarsel:''' Det finnes ikke noe utseende ved navn «$1». Husk at .css- og .js-sider bruker titler i små bokstaver, for eksempel {{ns:user}}:Eksempel/vector.css, ikke {{ns:user}}:Eksempel/Vector.css",
+ "userinvalidconfigtitle": "'''Advarsel:''' Det finnes ikke noe utseende ved navn «$1». Husk at .css- og .js-sider bruker titler i små bokstaver, for eksempel {{ns:user}}:Eksempel/vector.css, ikke {{ns:user}}:Eksempel/Vector.css",
"updated": "(Oppdatert)",
"note": "'''Merk:'''",
"previewnote": "'''Husk at dette bare er en forhåndsvisning.'''\nEndringene dine har ikke blitt lagret ennå!",
@@ -1058,7 +1058,7 @@
"prefs-files": "Filer",
"prefs-custom-css": "Personlig CSS",
"prefs-custom-js": "Personlig Javascript",
- "prefs-common-css-js": "Delt CSS/JS for alle drakter:",
+ "prefs-common-config": "Delt CSS/JS for alle drakter:",
"prefs-reset-intro": "Du kan bruke denne siden til å tilbakestille innstillingene dine til standardinnstillingene.\nDette kan ikke tilbakestilles.",
"prefs-emailconfirm-label": "E-postbekreftelse:",
"youremail": "E-post:",
@@ -1493,8 +1493,6 @@
"newpageletter": "N",
"boteditletter": "b",
"number_of_watching_users_pageview": "[$1 overvåkende {{PLURAL:$1|bruker|brukere}}]",
- "rc_categories": "Begrens til kategorier (skilletegn: «|»)",
- "rc_categories_any": "Alle",
"rc-change-size-new": "$1 {{PLURAL:$1|byte|bytes}} etter endring",
"newsectionsummary": "/* $1 */ ny seksjon",
"rc-enhanced-expand": "Vis detaljer",
@@ -2649,6 +2647,7 @@
"thumbnail_dest_directory": "Klarte ikke å opprette målmappe",
"thumbnail_image-type": "Bildetypen støttes ikke",
"thumbnail_gd-library": "Ufullstendig konfigurering av GD library: mangler funksjonen $1",
+ "thumbnail_image-size-zero": "Filstørrelsen til bildet ser ut til å være null.",
"thumbnail_image-missing": "Filen ser ut til å mangle: $1",
"thumbnail_image-failure-limit": "Det har vært for mange nylige forsøk ($1 eller flere) på å gjengi dette miniatyrbildet. Vennligst prøv igjen senere.",
"import": "Importer sider",
diff --git a/languages/i18n/nds-nl.json b/languages/i18n/nds-nl.json
index a3c2e33371..39344433f8 100644
--- a/languages/i18n/nds-nl.json
+++ b/languages/i18n/nds-nl.json
@@ -175,7 +175,7 @@
"printableversion": "Aofdrokbaore versie",
"permalink": "Vaste verwiezing",
"print": "Aofdrokken",
- "view": "Lezen",
+ "view": "Leasen",
"view-foreign": "Bekieken op $1",
"edit": "Bewarken",
"edit-local": "Lokale beschrieving bewarken",
@@ -191,7 +191,7 @@
"talkpagelinktext": "Overleg",
"specialpage": "Spesiale zied",
"personaltools": "Persoonlike instellingen",
- "talk": "Overleg",
+ "talk": "Oaverleg",
"views": "Weergaven",
"toolbox": "Hulpmiddels",
"imagepage": "Bestaandszied bekieken",
@@ -248,9 +248,9 @@
"youhavenewmessagesmulti": "Je hebben nieje berichten op $1",
"editsection": "bewark",
"editold": "bewark",
- "viewsourceold": "brontekste bekieken",
+ "viewsourceold": "brontekste bekyken",
"editlink": "bewark",
- "viewsourcelink": "brontekste bekieken",
+ "viewsourcelink": "brontekste bekyken",
"editsectionhint": "Bewarkingsveld: $1",
"toc": "Inhold",
"showtoc": "Bekieken",
@@ -283,7 +283,7 @@
"nstab-template": "Mal",
"nstab-help": "Hulpe",
"nstab-category": "Kategorie",
- "mainpage-nstab": "Veurblad",
+ "mainpage-nstab": "Vöärblad",
"nosuchaction": "De op-egeven haandeling besteet niet",
"nosuchactiontext": "De opdrachte in t webadres in ongeldig.\nJe hebben t webadres misschien verkeerd in-etikt of de verkeerde verwiezing evolgd.\nDit kan oek dujen op n fout in de programmatuur van {{SITENAME}}.",
"nosuchspecialpage": "Der besteet gien spesiale zied mit disse naam",
@@ -324,7 +324,7 @@
"perfcached": "Disse gegevens koemen uut t tussengeheugen en bin misschien niet aktueel. Der {{PLURAL:$1|is hooguut een resultaot|bin hooguut $1 resultaoten}} beschikbaor in t tussengeheugen.",
"perfcachedts": "Disse gegevens koemen uut t tussengeheugen die veur t lest bie-ewörken is op $2 um $3. Der {{PLURAL:$4|is hooguut een resultaot|bin hooguut $4 resultaoten}} beschikbaor in t tussengeheugen.",
"querypage-no-updates": "'''Disse zied wördt niet meer bie-ewörken.'''",
- "viewsource": "Brontekste bekieken",
+ "viewsource": "Brontekste bekyken",
"viewsource-title": "Bron bekieken van $1",
"actionthrottled": "Haandeling tegenehöllen",
"actionthrottledtext": "As maotregel tegen t plaotsen van alderhaande moek, is t antal keren da'j disse haandeling in n korte tied uutvoeren kunnen beteund. Je hebben de limiet overschrejen. Probeer t over n antal minuten weer.",
@@ -563,7 +563,7 @@
"userjspreview": "'''Denk deran da'j joew persoonlike JavaScript allinnig nog mer an t bekieken bin, t is nog niet op-esleugen!'''",
"sitecsspreview": "'''Je bin allinnig mer de CSS an t naokieken.'''\n'''t Is nog niet op-esleugen!'''",
"sitejspreview": "'''Je bin allinnig mer de JavaScript-kode an t naokieken.'''\n'''t Is nog niet op-esleugen!'''",
- "userinvalidcssjstitle": "'''Waorschuwing:''' der is gien uutvoering mit de naam \"$1\". Vergeet niet dat joew eigen .css- en .js-ziejen beginnen mit n kleine letter, bv. \"{{ns:user}}:Naam/'''v'''ector\" in plaotse van \"{{ns:user}}:Naam/'''V'''ector.css\".",
+ "userinvalidconfigtitle": "'''Waorschuwing:''' der is gien uutvoering mit de naam \"$1\". Vergeet niet dat joew eigen .css- en .js-ziejen beginnen mit n kleine letter, bv. \"{{ns:user}}:Naam/'''v'''ector\" in plaotse van \"{{ns:user}}:Naam/'''V'''ector.css\".",
"updated": "(Bewark)",
"note": "'''Opmarking:'''",
"previewnote": "'''Waort je: dit is n naokiekzied.'''\nJoew tekste is niet op-esleugen!",
@@ -875,7 +875,7 @@
"prefs-files": "Bestaanden",
"prefs-custom-css": "Persoonlike CSS",
"prefs-custom-js": "Persoonlike JS",
- "prefs-common-css-js": "Edeelden CSS/JS veur elke vormgeving:",
+ "prefs-common-config": "Edeelden CSS/JS veur elke vormgeving:",
"prefs-reset-intro": "Je kunnen disse zied gebruken um joew veurkeuren naor de standardinstellingen weerumme te zetten.\nDisse haandeling kan niet ongedaonemaakt wörden.",
"prefs-emailconfirm-label": "Netpostbevestiging:",
"youremail": "Netpostadres (niet verplicht) *",
@@ -1154,8 +1154,6 @@
"boteditletter": "B",
"unpatrolledletter": "!",
"number_of_watching_users_pageview": "[$1 {{PLURAL:$1|keer|keer}} op n volglieste]",
- "rc_categories": "Beparking tot kategorieën (scheien mit \"|\")",
- "rc_categories_any": "alles",
"rc-change-size-new": "$1 {{PLURAL:$1|byte|bytes}} nao de wieziging",
"newsectionsummary": "Niej onderwarp: /* $1 */",
"rc-enhanced-expand": "Details bekieken",
@@ -2905,7 +2903,7 @@
"feedback-subject": "Onderwarp:",
"feedback-submit": "Opslaon",
"feedback-thanks": "Bedankt! Joew kommentaar is op de zied \"[$2 $1]\" ezet.",
- "searchsuggest-search": "{{SITENAME}} deurzeuken",
+ "searchsuggest-search": "{{SITENAME}} döärsöken",
"searchsuggest-containing": "bevat...",
"api-error-badtoken": "Interne fout: t token klopt niet.",
"api-error-emptypage": "Je maggen gien lege nieje ziejen anmaken.",
diff --git a/languages/i18n/nds.json b/languages/i18n/nds.json
index 19a85d059e..49a51cf6c9 100644
--- a/languages/i18n/nds.json
+++ b/languages/i18n/nds.json
@@ -465,7 +465,7 @@
"userjsyoucanpreview": "'''Tipp:''' Bruuk den Vörschau-Knoop, üm dien nieg JS vör dat Spiekern to testen.",
"usercsspreview": "'''Denk doran, dat du blots en Vörschau vun dien CSS ankickst, dat is noch nich spiekert!'''",
"userjspreview": "'''Denk doran, dat du blots en Vörschau vun dien JS ankiekst, dat is noch nich spiekert!'''",
- "userinvalidcssjstitle": "'''Wohrschau:''' Dat gifft keen Skin â$1â. Denk dor an, dat .css- un .js-Sieden för Brukers mit en lütten Bookstaven anfangen mööt, toân Bispeel ''{{ns:user}}:Brukernaam/vector.css'' un nich ''{{ns:user}}:Brukernaam/Vector.css''.",
+ "userinvalidconfigtitle": "'''Wohrschau:''' Dat gifft keen Skin â$1â. Denk dor an, dat .css- un .js-Sieden för Brukers mit en lütten Bookstaven anfangen mööt, toân Bispeel ''{{ns:user}}:Brukernaam/vector.css'' un nich ''{{ns:user}}:Brukernaam/Vector.css''.",
"updated": "(Ãnnert)",
"note": "'''Wohrschau:'''",
"previewnote": "Dit is bloots en Vörschau, de Sied is noch nich spiekert!'''",
@@ -716,7 +716,7 @@
"prefs-files": "Datein",
"prefs-custom-css": "Anpasst CSS",
"prefs-custom-js": "Anpasst JS",
- "prefs-common-css-js": "Deelt CSS/JavaScript för all Skins:",
+ "prefs-common-config": "Deelt CSS/JavaScript för all Skins:",
"prefs-reset-intro": "Du kannst disse Sied bruken, dien Instellungen al op de Standardinstellung trüchtosetten.\nDat kann nich wedder ungeschehn maakt warrn.",
"prefs-emailconfirm-label": "E-Mail-Bestätigung:",
"youremail": "Dien E-Mail (kene Plicht) *",
@@ -919,8 +919,6 @@
"newpageletter": "N",
"boteditletter": "B",
"number_of_watching_users_pageview": "[{{PLURAL:$1|Een Bruker|$1 Brukers}}, de oppasst]",
- "rc_categories": "Blot Sieden ut de Kategorien (trennt mit â|â):",
- "rc_categories_any": "All",
"rc-change-size-new": "$1 {{PLURAL:$1|byte|bytes}} achter Ãnnern",
"newsectionsummary": "/* $1 */ nee Afsnitt",
"rc-enhanced-expand": "Details wiesen (bruukt JavaScript)",
diff --git a/languages/i18n/ne.json b/languages/i18n/ne.json
index de3b42e286..cc780dacfd 100644
--- a/languages/i18n/ne.json
+++ b/languages/i18n/ne.json
@@ -25,7 +25,8 @@
"Suniltheblue",
"Irus",
"रमà¥à¤¶ सिà¤à¤¹ बà¥à¤¹à¤°à¤¾",
- "Nirajan pant"
+ "Nirajan pant",
+ "Drjpoudel"
]
},
"tog-underline": "रà¥à¤à¤¾à¤à¥à¤à¤¿à¤¤ लिà¤à¥à¤:",
@@ -524,6 +525,11 @@
"botpasswords-label-cancel": "रदà¥à¤¦ à¤à¤°à¥à¤¨à¥",
"botpasswords-label-delete": "मà¥à¤à¥à¤¨à¥",
"botpasswords-label-resetpassword": "पà¥à¤°à¤µà¥à¤¸à¤¶à¤¬à¥à¤¦ पà¥à¤¨à¤ तय à¤à¤°à¥à¤¨à¥",
+ "botpasswords-label-grants-column": "पà¥à¤°à¤®à¤¾à¤£à¤¿à¤¤ à¤à¤°à¤¿à¤¯à¥",
+ "botpasswords-bad-appid": "बà¥à¤ नाम \"$1\" मानà¥à¤¯ à¤à¥à¤¨à¥¤",
+ "botpasswords-insert-failed": "\"$1\" बà¥à¤ नाम थपà¥à¤¨ à¤
सफल à¤à¤¯à¥à¥¤ à¤à¥ यॠपहिलॠनॠथपिà¤à¤à¥ थियà¥?",
+ "botpasswords-update-failed": "\"$1\" बà¥à¤ नाम à¤
दà¥à¤¯à¤¾à¤µà¤§à¤¿à¤ à¤à¤°à¥à¤¨ à¤
सफल à¤à¤¯à¥à¥¤ à¤à¥ यॠहà¤à¤¾à¤à¤¯à¥ हà¥?",
+ "botpasswords-created-title": "बà¥à¤ पासवरà¥à¤¡ सिरà¥à¤à¤¨à¤¾ à¤à¤°à¤¿à¤¯à¥",
"resetpass_forbidden": "पासवरà¥à¤¡ परिवरà¥à¤¤à¤¨ à¤à¤°à¥à¤¨ मिलà¥à¤¦à¥à¤¨",
"resetpass-no-info": "यॠपà¥à¤·à¥à¤ सिधॠहà¥à¤°à¥à¤¨à¤à¥ लाà¤à¤¿ तपाà¤à¤à¤²à¥ पà¥à¤°à¤µà¥à¤¶ à¤à¤°à¥à¤¨à¥à¤ªà¤°à¥à¤ ।",
"resetpass-submit-loggedin": "पà¥à¤°à¤µà¥à¤¸à¤¶à¤¬à¥à¤¦ परिवरà¥à¤¤à¤¨ à¤à¤°à¥à¤¨à¥",
@@ -635,7 +641,7 @@
"userjspreview": "याद राà¤à¥à¤¨à¥à¤¹à¥à¤¸ तपाà¤à¤à¤²à¥ à¤à¤«à¥à¤¨à¥ पà¥à¤°à¤¯à¥à¤à¤à¤°à¥à¤¤à¤¾ à¤à¤¾à¤à¤¾à¤¸à¥à¤à¥à¤°à¤¿à¤ªà¥à¤à¤à¥ पà¥à¤°à¥à¤µà¤¾à¤µà¤²à¥à¤à¤¨ मातà¥à¤° हà¥à¤°à¤¿à¤°à¤¹à¤¨à¥ à¤à¤à¤à¥ à¤à¥¤\nयसलाठà¤
हिलॠसमà¥à¤® सà¤à¥à¤à¥à¤°à¤¹ à¤à¤°à¤¿à¤à¤à¥ à¤à¥à¤¨!",
"sitecsspreview": "याद राà¤à¥à¤¨à¥à¤¹à¥à¤¸à¥ तपाà¤à¤à¤²à¥ à¤à¥à¤µà¤² विशà¥à¤µà¤µà¥à¤¯à¤¾à¤ªà¥ सियसयसà¤à¥ पà¥à¤°à¥à¤µà¤¾à¤µà¤²à¥à¤à¤¨ मातà¥à¤° à¤
वलà¥à¤à¤¨ à¤à¤°à¥à¤¨à¥à¤à¤à¤à¥ ठ।\nयसलाठà¤
हिलà¥à¤¸à¤®à¥à¤® सà¤à¥à¤à¥à¤°à¤¹ à¤à¤°à¤¿à¤à¤à¥ à¤à¥à¤¨!",
"sitejspreview": "याद राà¤à¥à¤¨à¥à¤¹à¥à¤¸à¥ तपाà¤à¤à¤²à¥ à¤à¥à¤µà¤² à¤à¤¾à¤à¤¾à¤¸à¥à¤à¥à¤°à¤¿à¤ªà¥à¤ à¤à¥à¤¡à¤à¥ पà¥à¤°à¥à¤µà¤¾à¤µà¤²à¥à¤à¤¨ मातà¥à¤° हà¥à¤°à¤¿à¤°à¤¹à¤¨à¥ à¤à¤à¤à¥ à¤à¥¤\nयसलाठà¤
हिलॠसमà¥à¤® सà¤à¥à¤à¥à¤°à¤¹ à¤à¤°à¤¿à¤à¤à¥ à¤à¥à¤¨!",
- "userinvalidcssjstitle": "à¤à¥à¤¤à¤¾à¤µà¤¨à¥: यहाठà¤à¥à¤¨à¥à¤ªà¤¨à¤¿ \"$1\" नामà¤à¥ à¤à¥à¤² à¤à¥à¤¨à¥¤\nपà¥à¤°à¤à¤²à¤¿à¤¤ .css तथा .js पà¥à¤·à¥à¤ हरà¥à¤²à¥ निमà¥à¤¨à¤ªà¤¦ शà¥à¤°à¥à¤·à¤ पà¥à¤°à¤¯à¥à¤ à¤à¤°à¥à¤à¤¨à¥, à¤à¤¸à¥à¤¤à¥ {{ns:user}}:Foo/Vector.css à¤à¥ सà¤à¥à¤à¤¾à¤®à¤¾ {{ns:user}}:Foo/vector.css",
+ "userinvalidconfigtitle": "à¤à¥à¤¤à¤¾à¤µà¤¨à¥: यहाठà¤à¥à¤¨à¥à¤ªà¤¨à¤¿ \"$1\" नामà¤à¥ à¤à¥à¤² à¤à¥à¤¨à¥¤\nपà¥à¤°à¤à¤²à¤¿à¤¤ .css तथा .js पà¥à¤·à¥à¤ हरà¥à¤²à¥ निमà¥à¤¨à¤ªà¤¦ शà¥à¤°à¥à¤·à¤ पà¥à¤°à¤¯à¥à¤ à¤à¤°à¥à¤à¤¨à¥, à¤à¤¸à¥à¤¤à¥ {{ns:user}}:Foo/Vector.css à¤à¥ सà¤à¥à¤à¤¾à¤®à¤¾ {{ns:user}}:Foo/vector.css",
"updated": "नवà¥à¤¨",
"note": "'''सà¥à¤à¤¨à¤¾:'''",
"previewnote": "'''याद राà¤à¥à¤¨à¥à¤¹à¥à¤¸à¥ यॠà¤à¥à¤µà¤² पà¥à¤°à¥à¤µà¤¾à¤µà¤²à¥à¤à¤¨ मातà¥à¤° हà¥; तपाà¤à¤à¤à¤¾ परिवरà¥à¤¤à¤¨à¤¹à¤°à¥ सà¤à¤à¥à¤°à¤¹à¤¿à¤¤ à¤à¤à¤à¤¾ à¤à¥à¤¨à¤¨à¥!'''",
@@ -976,7 +982,7 @@
"prefs-files": "फाà¤à¤²à¤¹à¤°à¥",
"prefs-custom-css": "à¤
नà¥à¤à¥à¤²à¤¿à¤¤ CSS",
"prefs-custom-js": "à¤
नà¥à¤à¥à¤²à¤¿à¤¤ JS",
- "prefs-common-css-js": "साà¤à¤¾ CSS/à¤à¤¾à¤à¤¾ सà¥à¤à¥à¤°à¤¿à¤ªà¥à¤ सबॠतà¥à¤µà¤à¤¾(सà¥à¤à¤¿à¤¨)à¤à¥ लाà¤à¤¿:",
+ "prefs-common-config": "साà¤à¤¾ CSS/à¤à¤¾à¤à¤¾ सà¥à¤à¥à¤°à¤¿à¤ªà¥à¤ सबॠतà¥à¤µà¤à¤¾(सà¥à¤à¤¿à¤¨)à¤à¥ लाà¤à¤¿:",
"prefs-reset-intro": "तपाà¤à¤ यॠपà¥à¤·à¥à¤ लाठà¤à¤«à¥à¤¨à¥ à¤
à¤à¤¿à¤°à¥à¤à¥à¤¹à¤°à¥ साà¤à¤ पà¥à¤°à¥à¤µà¤¾à¤µà¤¸à¥à¤¥à¤¾à¤®à¤¾ फरà¥à¤à¤¾à¤à¤¨ पà¥à¤°à¤¯à¥à¤ à¤à¤°à¥à¤¨ सà¤à¥à¤¨à¥à¤¹à¥à¤¨à¥à¤ । तà¥à¤¯à¤¸ पà¤à¤¿ यसलाठरदà¥à¤¦ à¤à¤°à¥à¤¨ सà¤à¥à¤¨à¥à¤¹à¥à¤¨à¥à¤¨ ।",
"prefs-emailconfirm-label": "à¤-मà¥à¤² à¤à¤à¤¿à¤¨ पà¥à¤°à¤à¥à¤°à¤¿à¤¯à¤¾ :",
"youremail": "à¤à¤®à¥à¤²",
@@ -1038,6 +1044,13 @@
"userrights-changeable-col": "तपाà¤à¤à¤²à¥ परिवरà¥à¤¤à¤¨ à¤à¤°à¥à¤¨ सà¤à¥à¤¨à¥ समà¥à¤¹à¤¹à¤°à¥",
"userrights-unchangeable-col": "तपाà¤à¤à¤²à¥ परिवरà¥à¤¤à¤¨ à¤à¤°à¥à¤¨ नसà¤à¥à¤¨à¥ समà¥à¤¹à¤¹à¤°à¥",
"userrights-irreversible-marker": "$1*",
+ "userrights-expiry-none": "समापà¥à¤¤ हà¥à¤à¤¦à¥à¤¨",
+ "userrights-expiry": "मà¥à¤¯à¤¾à¤¦ सà¤à¤¿à¤¨à¥à¤:",
+ "userrights-expiry-existing": "à¤
वसà¥à¤¥à¤¿à¤¤ समापà¥à¤¤à¤¿ समय: $3, $2",
+ "userrights-expiry-othertime": "à¤
नà¥à¤¯ समय:",
+ "userrights-expiry-options": "१ दिन: १ दिन, १ हपà¥à¤¤à¤¾: १ हपà¥à¤¤à¤¾, १ महिना: १ महिना, ३ महिना: ३ महिना, ६ महिना: ६ महिना, १ वरà¥à¤·: १ वरà¥à¤·",
+ "userrights-invalid-expiry": "\"$1\" समà¥à¤¹à¤à¥ लाà¤à¤¿ समापà¥à¤¤à¤¿ समय à¤
मानà¥à¤¯ à¤à¥¤",
+ "userrights-expiry-in-past": "\"$1\" समà¥à¤¹à¤à¥ à¤
नà¥à¤¤à¤¿à¤® समय बितà¥à¤à¥ à¤à¥¤",
"userrights-conflict": "पà¥à¤°à¤¯à¥à¤à¤à¤°à¥à¤¤à¤¾à¤à¥ à¤
धिà¤à¤¾à¤° परिवरà¥à¤¤à¤¨à¤®à¤¾ मतà¤à¥à¤¦ à¤à¤¯à¥ ! à¤à¥à¤ªà¤¯à¤¾ तपाà¤à¤à¤à¥ परिवरà¥à¤¤à¤¨ पà¥à¤¨à¤°à¤¾à¤µà¤²à¥à¤à¤¨ तथा पà¥à¤·à¥à¤à¤¿ à¤à¤°à¥à¤¨à¥à¤¹à¥à¤¸à¥ ।",
"group": "समà¥à¤¹ :",
"group-user": "पà¥à¤°à¤¯à¥à¤à¤à¤°à¥à¤¤à¤¾à¤¹à¤°à¥",
@@ -1130,6 +1143,12 @@
"right-managechangetags": "डाà¤à¤¾à¤¬à¥à¤¸à¤¬à¤¾à¤ [[Special:Tags|tags]] बनाà¤à¤¨à¥ र हà¤à¤¾à¤à¤¨à¥",
"right-applychangetags": "à¤à¤à¤à¥ परिवरà¥à¤¤à¤¨ सहित [[Special:Tags|tags]] लाà¤à¥ à¤à¤°à¥à¤¨à¥",
"right-changetags": "à¤à¥à¤¡à¥à¤¨à¥ र हà¤à¤¾à¤à¤¨à¥ सà¥à¤µà¤¤à¤¨à¥à¤¤à¥à¤° [[Special:Tags|à¤à¥à¤¯à¤¾à¤]] वà¥à¤¯à¤à¥à¤¤à¤¿à¤à¤¤ à¤
वतरणहरॠर लठà¤à¤¨à¥à¤à¥à¤°à¥à¤¹à¤°à¥à¤®à¤¾",
+ "right-deletechangetags": "डाà¤à¤¾à¤¬à¥à¤¸à¤¬à¤¾à¤ [[Special:Tags|tags]] हà¤à¤¾à¤à¤¨à¥à¤¹à¥à¤¸à¥",
+ "grant-generic": "\"$1\" à¤
धिà¤à¤¾à¤° बनà¥à¤¡à¤²",
+ "grant-group-page-interaction": "पà¥à¤·à¥à¤ हरà¥à¤¸à¤à¤ à¤
नà¥à¤¤à¤°à¤à¥à¤°à¤¿à¤¯à¤¾ à¤à¤°à¥à¤¨à¥à¤¹à¥à¤¸à¥",
+ "grant-group-file-interaction": "मिडियासà¤à¤ à¤
नà¥à¤¤à¤°à¤à¥à¤°à¤¿à¤¯à¤¾ à¤à¤°à¥à¤¨à¥à¤¹à¥à¤¸à¥",
+ "grant-group-watchlist-interaction": "तपाà¤à¤à¤à¥ दà¥à¤·à¥à¤à¤¿à¤¸à¥à¤à¥à¤¸à¤à¤ à¤
नà¥à¤¤à¤°à¤à¥à¤°à¤¿à¤¯à¤¾ à¤à¤°à¥à¤¨à¥à¤¹à¥à¤¸à¥",
+ "grant-group-email": "à¤-मà¥à¤² पठाà¤à¤¨à¥à¤¹à¥à¤¸à¥",
"grant-createeditmovepage": "पà¥à¤·à¥à¤ हरà¥à¤®à¤¾ परिवरà¥à¤¤à¤¨ à¤à¤°à¥à¤¨à¥à¤¹à¥à¤¸à¥",
"grant-editmycssjs": "तपाà¤à¤à¤à¥ पà¥à¤°à¤¯à¥à¤à¤à¤°à¥à¤¤à¤¾ CSS/JavaScript समà¥à¤ªà¤¾à¤¦à¤¨ à¤à¤°à¥à¤¨à¥à¤¹à¥à¤¸à¥",
"grant-editmyoptions": "तपाà¤à¤à¤à¥ पà¥à¤°à¤¯à¥à¤à¤à¤°à¥à¤¤à¤¾ à¤
à¤à¤¿à¤°à¥à¤à¥à¤¹à¤°à¥à¤²à¤¾à¤ समà¥à¤ªà¤¾à¤¦à¤¨ à¤à¤°à¥à¤¨à¥à¤¹à¥à¤¸à¥",
@@ -1236,8 +1255,6 @@
"boteditletter": "बà¥",
"unpatrolledletter": "!",
"number_of_watching_users_pageview": "[$1 निà¤à¤°à¤¾à¤¨à¥ à¤à¤°à¥à¤¦à¥{{PLURAL:$1|पà¥à¤°à¤¯à¥à¤à¤à¤°à¥à¤¤à¤¾|पà¥à¤°à¤¯à¥à¤à¤à¤°à¥à¤¤à¤¾à¤¹à¤°à¥}}]",
- "rc_categories": "शà¥à¤°à¥à¤£à¥à¤¹à¤°à¥à¤®à¤¾ सà¥à¤®à¤¿à¤¤ (\"|\" लॠà¤à¥à¤à¥à¤¯à¤¾à¤à¤¨à¥à¤¹à¥à¤¸à¥)",
- "rc_categories_any": "à¤à¤¾à¤¨à¤¿à¤à¤à¤¾ à¤à¥à¤¨à¥",
"rc-change-size": "$1",
"rc-change-size-new": "परिवरà¥à¤¤à¤¨à¤ªà¤à¤¿ $1 {{PLURAL:$1|बाà¤à¤|बाà¤à¤}}",
"newsectionsummary": "/* $1 */ नयाठà¤à¤£à¥à¤¡",
diff --git a/languages/i18n/nl-informal.json b/languages/i18n/nl-informal.json
index fc0f1569a1..db558b32f7 100644
--- a/languages/i18n/nl-informal.json
+++ b/languages/i18n/nl-informal.json
@@ -9,7 +9,8 @@
"McDutchie",
"Romaine",
"Mainframe98",
- "Mar(c)"
+ "Mar(c)",
+ "Robin van der Vliet"
]
},
"view-pool-error": "De servers zijn op het moment helaas overbelast.\nTe veel gebruikers proberen deze pagina te bekijken.\nWacht even voordat je opnieuw toegang probeert te krijgen tot deze pagina.\n\n$1",
@@ -92,7 +93,7 @@
"userjsyoucanpreview": "'''Tip:''' gebruik de knop \"{{int:showpreview}}\" om je nieuwe JavaScript te testen alvorens op te slaan.",
"usercsspreview": "'''Dit is alleen een voorvertoning van je persoonlijke CSS.\nDeze is nog niet opgeslagen!'''",
"userjspreview": "'''Let op: je test nu je persoonlijke JavaScript.'''\n'''De pagina is niet opgeslagen!'''",
- "userinvalidcssjstitle": "'''Waarschuwing:''' er is geen uiterlijk \"$1\".\nJe eigen .css- en .js-pagina's beginnen met een kleine letter, bijvoorbeeld {{ns:user}}:Naam/vector.css in plaats van {{ns:user}}:Naam/Vector.css.",
+ "userinvalidconfigtitle": "'''Waarschuwing:''' er is geen uiterlijk \"$1\".\nJe eigen .css- en .js-pagina's beginnen met een kleine letter, bijvoorbeeld {{ns:user}}:Naam/vector.css in plaats van {{ns:user}}:Naam/Vector.css.",
"previewnote": "'''Let op: dit is een controlepagina.'''\nJe tekst is niet opgeslagen!",
"previewconflict": "Deze voorvertoning geeft aan hoe de tekst in het bovenste veld eruit ziet als je deze opslaat.",
"session_fail_preview": "'''Je bewerking is niet verwerkt, omdat de sessiegegevens verloren zijn gegaan.\nProbeer het opnieuw.\nAls het dan nog niet lukt, [[Special:UserLogout|meld jezelf dan af]] en weer aan.'''",
@@ -138,6 +139,7 @@
"prefs-help-variant": "Jouw voorkeursvariant of -spelling om de inhoudspagina's van deze wiki in weer te geven.",
"prefs-help-signature": "Reacties op de overlegpagina's worden meestal ondertekend met \"$1=\"$2\"
jest niedozwolone w plikach SVG.",
- "uploaded-href-attribute-svg": "atrybuty href w plikach SVG mogÄ
linkowaÄ tylko do celów z http:// lub https://, znaleziono <$1 $2=\"$3\">
.",
+ "uploaded-href-attribute-svg": "Elementy mogÄ
tylko ÅÄ
czyÄ (href) z danymi: (wbudowany plik), http: // lub https: // lub fragmentami (#, ten sam-dokument) obiektami docelowymi. W przypadku innych elementów, takich jak & lt; 1 $ 2 $ = \"$ 3\" & gt; code>.",
"uploaded-href-unsafe-target-svg": "Znaleziono atrybut href kierujÄ
cy do niebezpiecznych danych: cel URI
<$1 $2=\"$3\">
w przesÅanym pliku SVG.",
"uploaded-animate-svg": "Znaleziono znacznik \"animate\", który może zmieniaÄ atrybut href, przy użyciu atrybutu \"from\" <$1 $2=\"$3\">
w przesÅanym pliku SVG.",
"uploaded-setting-event-handler-svg": "Ustawianie atrybutów obsÅugi zdarzeÅ jest zablokowane, znaleziono <$1 $2=\"$3\">
w przesyÅanym pliku SVG.",
@@ -1720,7 +1721,7 @@
"lockmanager-fail-closelock": "Nie można znieÅÄ blokady z pliku \"$1\".",
"lockmanager-fail-deletelock": "Nie można usunÄ
Ä blokady z pliku \"$1\".",
"lockmanager-fail-acquirelock": "Nie można ustawiÄ blokady dla pliku \"$1\".",
- "lockmanager-fail-openlock": "Nie można znieÅÄ blokady z pliku \"$1\".",
+ "lockmanager-fail-openlock": "Nie można otworzyÄ pliku blokady dla \"$1\". Upewnij siÄ, że katalog przesyÅania jest poprawnie skonfigurowany, a twój serwer internetowy ma uprawnienia do zapisu w tym katalogu. WiÄcej informacji można znaleÅºÄ na stronie https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:$wgUploadDirectory.",
"lockmanager-fail-releaselock": "Nie może zwolniÄ blokady dla \" $1 \".",
"lockmanager-fail-db-bucket": "Nie można powiÄ
zaÄ wystarczajÄ
cej iloÅci zablokowanych baz danych w segmencie $1 .",
"lockmanager-fail-db-release": "Nie udaÅo siÄ zwolniÄ blokad w bazie danych $1.",
@@ -1742,11 +1743,16 @@
"uploadstash-bad-path": "Åcieżka nie istnieje.",
"uploadstash-bad-path-invalid": "Åcieżka jest nieprawidÅowa.",
"uploadstash-bad-path-unknown-type": "Nieznany typ â$1â.",
+ "uploadstash-bad-path-unrecognized-thumb-name": "Nierozpoznana nazwa miniaturki.",
+ "uploadstash-bad-path-no-handler": "Nie znaleziono obsÅugi dla typu mime 1 $ pliku $2.",
+ "uploadstash-bad-path-bad-format": "Klucz \"$1\" nie jest w odpowiednim formacie.",
+ "uploadstash-file-not-found": "Klucz \"$1\" nie zostaÅ znaleziony w schowku.",
"uploadstash-file-not-found-no-thumb": "Nie można uzyskaÄ miniaturki.",
"uploadstash-file-not-found-no-local-path": "Brak lokalnej Åcieżki dla skalowanego elementu.",
"uploadstash-file-not-found-no-object": "Nie można utworzyÄ lokalnego obiektu pliku dla miniatury.",
"uploadstash-file-not-found-no-remote-thumb": "Nie udaÅo siÄ pobraÄ miniatury: $1\nURL = $2",
"uploadstash-file-not-found-missing-content-type": "Brakuje nagÅówka content-type.",
+ "uploadstash-file-not-found-not-exists": "Nie można znaleÅºÄ Åcieżki ani zwykÅego pliku.",
"uploadstash-file-too-large": "Nie można wyÅwietliÄ pliku wiÄkszego niż $1 bajtów.",
"uploadstash-not-logged-in": "Użytkownik nie jest zalogowany, a pliki muszÄ
należeÄ do użytkowników.",
"uploadstash-wrong-owner": "Ten plik ($1) nie należy do bieżÄ
cego użytkownika.",
diff --git a/languages/i18n/pms.json b/languages/i18n/pms.json
index 9f03ec0abc..3543a66f96 100644
--- a/languages/i18n/pms.json
+++ b/languages/i18n/pms.json
@@ -584,7 +584,7 @@
"userjspreview": "'''Che as visa che a l'é mach antramentre che as fa na preuva ëd sò còdes Javascript e che a l'é ancó pa stà it salvà !'''",
"sitecsspreview": "'''Che a varda che a l'é mach an camin ch'a preuva cost CSS.'''\n'''A l'é pa ancora stà it salvà !'''",
"sitejspreview": "'''Che a varda che a l'é mach an camin ch'a preuva cost còdes JavaScript.'''\n'''A l'é pa ancora stà it salvà !'''",
- "userinvalidcssjstitle": "'''Atension:''' A-i é gnun-a pel «$1». Che as visa che le pà gine .css e .js che un as fa daspërchiel a deuvro tute minùscole për tìtol, pr'esempi {{ns:user}}:Scaramacaj/vector.css nopà che {{ns:user}}:Scaramacaj/Vector.css.",
+ "userinvalidconfigtitle": "'''Atension:''' A-i é gnun-a pel «$1». Che as visa che le pà gine .css e .js che un as fa daspërchiel a deuvro tute minùscole për tìtol, pr'esempi {{ns:user}}:Scaramacaj/vector.css nopà che {{ns:user}}:Scaramacaj/Vector.css.",
"updated": "(Agiornà )",
"note": "'''Nòta:'''",
"previewnote": "'''Che a ten-a da ment che costa-sì a l'é mach na preuva.'''\nSoe modìfiche a son pa ancora stà ite salvà !",
@@ -925,7 +925,7 @@
"prefs-files": "Archivi",
"prefs-custom-css": "CSS përsonaj",
"prefs-custom-js": "JS përsonaj",
- "prefs-common-css-js": "CSS e JS condividù për tute le pej:",
+ "prefs-common-config": "CSS e JS condividù për tute le pej:",
"prefs-reset-intro": "A peul dovré costa pà gina për amposté torna ij sò gust a coj dë stà ndard.\nSòn a peul pa esse anulà .",
"prefs-emailconfirm-label": "Conferma dl'adrëssa ëd pòsta eletrònica:",
"youremail": "Soa adrëssa ëd pòsta eletrònica:",
@@ -1173,8 +1173,6 @@
"newpageletter": "N",
"boteditletter": "t",
"number_of_watching_users_pageview": "[tnùa sot-euj da {{PLURAL:$1|n'utent|$1 utent}}]",
- "rc_categories": "Limité a le categorìe (che a jë scriva separand-je antra 'd lor con un \"|\"):",
- "rc_categories_any": "Un-a qualsëssìa ëd cole selessionà ",
"rc-change-size-new": "$1 {{PLURAL:$1|byte|byte}} apress ij cambi",
"newsectionsummary": "/* $1 */ session neuva",
"rc-enhanced-expand": "Mostré ij detaj",
diff --git a/languages/i18n/pnb.json b/languages/i18n/pnb.json
index afc7d6b2bb..26f15f2f41 100644
--- a/languages/i18n/pnb.json
+++ b/languages/i18n/pnb.json
@@ -117,7 +117,7 @@
"oct": "اکتÙبر",
"nov": "ÙÙÙ
بر",
"dec": "دسÙ
بر",
- "january-date": "جÙÙØ±Û $1",
+ "january-date": "جÙÙرÛ",
"february-date": "ÙرÙØ±Û $1",
"march-date": "Ù
Ø§Ø±Ú $1",
"april-date": "اپرÛÙ $1",
@@ -509,7 +509,7 @@
"userjspreview": "'''Ûاد Ø±Ú©Ú¾Ù Ø¨Û ØªØ³Û ØµØ±Ù Ø§Ù¾ÙÛ Ùرت٠'JavaScript ÚÛÚ© Ú©Ø±Ø±Û Ø§Ù''\n'''اÛÙÙÚº ÛØ¬Û Ø¨ÚاÛا ÙئÛÚº Ú¯Ûا!'''",
"sitecsspreview": "'''ÛØ§Ø¯Ø±Ú©Ú¾Ù Ø¬Û ØªØ³Û Ø§Ù¾ÙÛ Ùرت٠CSS دا Ú©Úا Ú©Ù
ÙÛÚ©Ú¾ Ø±Û Ø§Ù.'''\n'''IØ§Û ÛÙÛ Ø¨ÚØ§Ø¦Û ÙئÛÚº گئ!'''",
"sitejspreview": "'''Ûاد Ø±Ú©Ú¾Ù Ø¨Û ØªØ³Û ØµØ±Ù Ø§ÛÛ 'JavaScript Ú©ÙÚ ÚÛÚ© Ú©Ø±Ø±Û Ø§Ù''\n'''اÛÙÙÚº ÛØ¬Û Ø¨ÚاÛا ÙئÛÚº Ú¯Ûا!'''",
- "userinvalidcssjstitle": "'''خبردار:''' \"$1\" سک٠ÙئÛÚº اÛÛ\nCustom .css ØªÛ .js pages use a lowercase title, e.g. {{ns:user}}:Foo/vector.css as opposed to {{ns:user}}:Foo/Vector.css.",
+ "userinvalidconfigtitle": "'''خبردار:''' \"$1\" سک٠ÙئÛÚº اÛÛ\nCustom .css ØªÛ .js pages use a lowercase title, e.g. {{ns:user}}:Foo/vector.css as opposed to {{ns:user}}:Foo/Vector.css.",
"updated": "(ÙÙاں Ú©Ûتا Ú¯Ûا)",
"note": "'''ÙÙÙ¹:'''",
"previewnote": "'''Ø§Û ÛÙÛ Ú©Úا Ú©Ù
اÛØ ØªØ¨Ø¯ÛÙÛاں بÚائÛاں ÙÛÛÚº گئÛاں'''",
@@ -684,7 +684,7 @@
"history-title": "\"$1\" دا رÛکارÚ",
"difference-title": "\"$1\" دÛاں دÛرائÛاں ÙÚ Ùکھراپا",
"difference-multipage": "(صÙÛاں Ú ÙرÙ)",
- "lineno": "ÙÛÚ© $1:",
+ "lineno": "ÙÛÚ© 1:",
"compareselectedversions": "ÚÙÛ ØµÙØÛ Ø¢Ù¾ÙÛ Ø³Ø§Ù
ÙÛ Ú©Ø±Ù",
"showhideselectedversions": "Ùکھاؤ/Ùکاؤ ÚÙÛاں دÛرائÛاں",
"editundo": "Ùاپس",
@@ -789,7 +789,7 @@
"prefs-files": "ÙائÙاں",
"prefs-custom-css": "کسٹÙ
Ø³Û Ø§Ûس اÛس",
"prefs-custom-js": "کسٹÙ
جاÙاسکرپٹ",
- "prefs-common-css-js": "Ø³Û Ø§Ûس اÛس/جاÙاسکرپٹ شئÛر کر٠Ûر ÙکھاÙÛ ÙئÛ:",
+ "prefs-common-config": "Ø³Û Ø§Ûس اÛس/جاÙاسکرپٹ شئÛر کر٠Ûر ÙکھاÙÛ ÙئÛ:",
"prefs-reset-intro": "تسÛÚº اÛس صÙÛ ÙÙÚº Ú©Ø³Û Ø³Ø§Ø¦Ù¹ Ø¯Û ÚÛÙاÙÙ¹ Ø¯Û ÚÙÙتÛاں Ù
Ø±Ø¶Û Ø¯Ûاں کر٠Ùرت Ø³Ú©Ø¯Û Ø§ÙÛ\n\nØ§Û Ùاپس ÙئÛÚº ÛÙسکداÛ",
"prefs-emailconfirm-label": "اÛ-Ù
ÛÙ Ú©ÙÙرÙ
ÛØ´Ù:",
"youremail": "Ø§Û Ù
ÛÙ:",
@@ -997,8 +997,6 @@
"newpageletter": "ÙÙاں",
"boteditletter": "بÙÙ¹",
"number_of_watching_users_pageview": "[ $1 ÙÛÚ©Ú¾ رÛÛا اÛ{{PLURAL:$1|Ùرت٠ÙاÙا|ÙاÙÛ}}]",
- "rc_categories": "گٹھاں Ø¯Û Øد (ÙÚ©Ú¾Ø±Û Ú©Ø±Ù \"|\")",
- "rc_categories_any": "Ú©ÙئÛ",
"rc-change-size-new": "$1 {{PLURAL:$1|بائٹ|بائٹاں}} تبدÛÙÛ Ù
گرÙÚº",
"newsectionsummary": "/* $1 */ ÙÙاں پاسÛ",
"rc-enhanced-expand": "تÙضÛÙ Ùکھاؤ (جاÙا سکرپٹ ÚائÛدا اÛ)",
@@ -2416,6 +2414,7 @@
"autosumm-replace": "\"$1\" Ùا٠Ù
Ùاد بدÙÙ",
"autoredircomment": "صÙÛ ÙÙÚº [[$1]] Ù٠رÛÚائرکٹ کرÙ",
"autosumm-new": "\"$1\" Ùا٠صÙÛ Ø¨ÙاÛا Ú¯ÛاÛ",
+ "autosumm-newblank": "خاÙÛ ØµÙØÛ Ø¨ÙاÛا",
"lag-warn-normal": "$1 تÙÚº ÙÙÛاں تبدÛÙÛاں {{PLURAL:$1|سکÙÙ¹}}",
"lag-warn-high": "تÛز ÚÛٹاسرÙر Ùاگ Ø $1 تÙÚº ÙÙÛاں تبدÛÙÛاں {{PLURAL:$1|سکÙÙ¹|سکÙÙ¹}} ÛÙسکدا Ø§Û Ø§Ûس Ùسٹ Ùاں Ø¯Ø³Û Ø¬Ø§ÙÛ",
"watchlistedit-normal-title": " اکھ تھÙÛ Ø±Ú©Ú¾Û ÛÙØ¦Û Ù٠تبدÛ٠کرÙ",
diff --git a/languages/i18n/pnt.json b/languages/i18n/pnt.json
index bd423a5337..c28659a8cf 100644
--- a/languages/i18n/pnt.json
+++ b/languages/i18n/pnt.json
@@ -491,7 +491,6 @@
"minoreditletter": "μ",
"newpageletter": "Î",
"boteditletter": "b",
- "rc_categories_any": "Îάθαν",
"rc-enhanced-expand": "Îείξον λεÏÏομÎÏÎµÎ¹Î±Ï (θελ' JavaScript)",
"rc-enhanced-hide": "ÎÏÏÏον λεÏÏομÎÏειαÏ",
"recentchangeslinked": "ΣÏεÏικά αλλαγάÏ",
diff --git a/languages/i18n/prg.json b/languages/i18n/prg.json
index a24b37de9d..42256e004d 100644
--- a/languages/i18n/prg.json
+++ b/languages/i18n/prg.json
@@ -381,7 +381,7 @@
"clearyourcache": "'''NÅda: KitawÄ«dinsnas pa enpeisÄsnan stÄisan nÄunan ensadÄ«nsenin mazzi ni bÅ«twei widÄminan. Prawerru skistÄ«ntun lasÄltas rÄnkas minÄ«snan.'''\n*'''Mozilla, Firefox anga Safari - ''' zabÄis \"Shift\" gnestan ne gnetteis \"Etnauninnais\" anga gnetteis \"Ctrl-F5\" anga \"Ctrl-R\" (\"Command-R\" en Macu);\n*'''Konqueror:''' gnetteis '''EtwÄrtai kraÅ«neis\" anga \"F5\";\n'''Opera:''' skistinnais rÄnkas minÄ«snan en \"Änrankis-Pirminiskwas\";\n'''Internet Explorer:''' zabÄis \"Ctrl\" gnetÄ«ntei \"Etnauninnais\" anga gnetteis \"Ctrl-F5\".",
"usercsspreview": "'''PamÄnais, kÄi sta ast tÄr twÄise CSS pirmÄdira - nika dabber ni pastÄi enpeisÄtan!'''",
"userjspreview": "'''PamÄnais, kÄi sta ast tÄr twÄise JS kÅdas pirmÄdira - nika dabber ni pastÄi enpeisÄtan!'''",
- "userinvalidcssjstitle": "'''ÄmpirsergÄ«senis:''' Ni ast prusna \"$1\".\nPamÄnais kÄi tÄrpautajas .css be .js pÄusai turri pagaÅ«tun si sen lÄ«kutan litteran, p. e.g. {{ns:user}}:Foo/vector.css, ni {{ns:user}}:Foo/Vector.css.",
+ "userinvalidconfigtitle": "'''ÄmpirsergÄ«senis:''' Ni ast prusna \"$1\".\nPamÄnais kÄi tÄrpautajas .css be .js pÄusai turri pagaÅ«tun si sen lÄ«kutan litteran, p. e.g. {{ns:user}}:Foo/vector.css, ni {{ns:user}}:Foo/Vector.css.",
"updated": "(Ernaunīntan)",
"note": "'''Endirīsenis:'''",
"previewnote": "'''Sta ast tÄr pirmÄdira.'''\nKitawÄ«dinsnas dabber ni pastÄi enpeisÄtan!\"",
@@ -781,8 +781,6 @@
"newpageletter": "N",
"boteditletter": "b",
"number_of_watching_users_pageview": "[$1 {{PLURAL:$1|nadirÄ«nts tÄrpautajs|nadirÄ«ntei tÄrpautajai}}]",
- "rc_categories": "ArÄikinais prei kategÅrijan (izsklaitinnais sen \"|\")",
- "rc_categories_any": "WisÄi",
"newsectionsummary": "/* $1 */ naunÄ sekciÅni",
"rc-enhanced-expand": "Waidinnais malkans (izkīnina JavaScript)",
"rc-enhanced-hide": "Kliptinais malkans",
diff --git a/languages/i18n/ps.json b/languages/i18n/ps.json
index ab90f28e55..e31095a43f 100644
--- a/languages/i18n/ps.json
+++ b/languages/i18n/ps.json
@@ -655,7 +655,7 @@
"userjspreview": "'''ÙÛر Ù
Ù ÙØ´Ù ÚÛ Ø¯Ø§ ÙÙØ§Ø²Û Ø³ØªØ§Ø³Û Ø¯ کار٠د جاÙا سکرÛپټ آزÙ
ÛÙÙ/Ù
Ø®ÙÙدÙ٠دÙ.'''\n'''تر اÙس٠پÙØ±Û Ùا Ø³ØªØ§Ø³Û Ø¨Ø¯ÙÙÙÙÙÙ Ù٠د٠خÙÙد٠شÙÙ!'''",
"sitecsspreview": "'''پ٠پاÙ
Ú©Û Ø¯Û ÙÙ ÚÛ Ø¯Ø§ ÙÙØ§Ø²Û Ø³ØªØ§Ø³Û Ø¯ CSS Ù
Ø®ÙÙدÙ٠دÙ.'''\n'''تر اÙس٠پÙØ±Û Ùا Ø³ØªØ§Ø³Û Ø¨Ø¯ÙÙÙÙÙÙ Ù٠د٠خÙÙد٠شÙÙ!'''",
"sitejspreview": "'''پ٠پاÙ
Ú©Û Ù
٠اÙس٠ÚÛ ØªØ§Ø³Û ÙÙØ§Ø²Û Ø¯ دغ٠جاÙاسکرÛپټ Ú©ÙÚ Ù
Ø®ÙÙدÙÙ Ú©ÙÛ.'''\n'''تر اÙس٠پÙØ±Û Ø¯Ø§ ÙÙ Ø¯Û Ø®ÙÙد٠شÙÛ!'''",
- "userinvalidcssjstitle": "خبردارÛ:دÙت٠ÙÛÚ
Ù¾Ùست Ùشت٠\"$1\".\nد Ú«Ù
رکÙÙÙ .ث٠اس اس ا٠.ج س Ù
Ø®ÙÙÙ Ú©ÙÚÙ٠سرÙÛÚ© استعÙ
اÙÙÙØ Ø§Ù Ø¯Ø§Ø³Û ÙÙر. {{ns:user}}:Foo/vector.css Ú©Ù Ù
خاÙÙ ÙÙ ÙÙ {{ns:user}}:Foo/Vector.css.",
+ "userinvalidconfigtitle": "خبردارÛ:دÙت٠ÙÛÚ
Ù¾Ùست Ùشت٠\"$1\".\nد Ú«Ù
رکÙÙÙ .ث٠اس اس ا٠.ج س Ù
Ø®ÙÙÙ Ú©ÙÚÙ٠سرÙÛÚ© استعÙ
اÙÙÙØ Ø§Ù Ø¯Ø§Ø³Û ÙÙر. {{ns:user}}:Foo/vector.css Ú©Ù Ù
خاÙÙ ÙÙ ÙÙ {{ns:user}}:Foo/Vector.css.",
"updated": "(تازÙ)",
"note": "'''ÙادÙÙÙ:'''",
"previewnote": "'''ÙÛر Ù
Ù ÙÙ Ø´Ù ÚÛ Ø¯Ø§ ÙÙاÚÛ ÙÙÙ Ù
Ø®ÙÙدÙ٠دÙ.'''\nØ³ØªØ§Ø³Û ÙØ®Ùا ترسر٠شÙ٠بدÙÙÙÙÙÙ Ùا تر اÙس٠پÙØ±Û Ù٠د٠خÙÙد٠شÙÙ!!",
@@ -961,7 +961,7 @@
"prefs-files": "دÙتÙÛ",
"prefs-custom-css": "دÙدÙز٠س٠اس اس",
"prefs-custom-js": "ÚاÙ٠جاÙاسکرÛپټ",
- "prefs-common-css-js": "د Ù¼ÙÙÙ Ù¾ÙÚÙÙÙ Ùپار٠د CSS/جاÙاسکرÛپټ دÙتÙÙ:",
+ "prefs-common-config": "د Ù¼ÙÙÙ Ù¾ÙÚÙÙÙ Ùپار٠د CSS/جاÙاسکرÛپټ دÙتÙÙ:",
"prefs-emailconfirm-label": "د برÛÚÙÙÚ© باÙرتÙا:",
"youremail": "برÛÚÙÙÚ© *",
"username": "{{GENDER:$1|کار٠ÙÙÙ
}}:",
@@ -1330,8 +1330,6 @@
"boteditletter": "ر",
"unpatrolledletter": "!",
"number_of_watching_users_pageview": "[$1 {{PLURAL:$1|کتÙÙÚ©Û Ú©Ø§Ø±Ù|کتÙÙک٠کارÙاÙ}}]",
- "rc_categories": "د ÙÛØ´ÙÙز٠تر برÙد٠(Ù¾Ù \"|\" بÛÙÙÙ)",
- "rc_categories_any": "Ù٠ټاک٠شÙÙÙ Ùر ÙÙ",
"rc-change-size": "$1",
"rc-change-size-new": "$1 {{PLURAL:$1|باÙÙ¼|باÙÙ¼ÙÙÙ}} د بدÙÙÙ ÙرÙستÙ",
"newsectionsummary": "/* $1 */ ÙÙÛ Ø¨Ø±Ø®Ù",
@@ -2276,7 +2274,7 @@
"siteuser": "د {{SITENAME}} کار٠$1",
"anonuser": "د {{SITENAME}} ÙرکÙÙÙ
Û Ú©Ø§Ø±Ù $1",
"lastmodifiedatby": "دا Ù
Ø® ÙرÙØ³ØªÛ ÚÙ $3 ÙØ®Ùا Ù¾Ù $2Ø $1 بدÙÙÙ Ù
ÙÙدÙÛ.",
- "othercontribs": "ÙÙر کار پر بÙسټ",
+ "othercontribs": "ÙÙر کار پر اساس د $1.",
"others": "ÙÙر",
"siteusers": "د {{SITENAME}} {{PLURAL:$2|کارÙ|کارÙاÙ}} $1",
"anonusers": "د {{SITENAME}} {{PLURAL:$2|ÙرکÙÙÙ
Û Ú©Ø§Ø±Ù|ÙرکÙÙÙ
٠کارÙاÙ}} $1",
diff --git a/languages/i18n/pt-br.json b/languages/i18n/pt-br.json
index 3820aa88d6..683ecf57d2 100644
--- a/languages/i18n/pt-br.json
+++ b/languages/i18n/pt-br.json
@@ -757,7 +757,7 @@
"userjspreview": "'''Lembre-se que está apenas testando/prevendo o seu JavaScript particular e que ele ainda não foi salvo!'''",
"sitecsspreview": "'''Lembre-se de que você está apenas previsualizando este CSS.'''\n'''Ele ainda não foi salvo!'''",
"sitejspreview": "'''Lembre-se de que você está apenas previsualizando este código JavaScript.'''\n'''Ele ainda não foi salvo!'''",
- "userinvalidcssjstitle": "'''Aviso:''' Não existe um tema \"$1\". Lembre-se que as páginas .css e .js utilizam um tÃtulo em minúsculas, exemplo: {{ns:user}}:Alguém/vector.css aposto a {{ns:user}}:Alguém/Vector.css.",
+ "userinvalidconfigtitle": "'''Aviso:''' Não existe um tema \"$1\". Lembre-se que as páginas .css e .js utilizam um tÃtulo em minúsculas, exemplo: {{ns:user}}:Alguém/vector.css aposto a {{ns:user}}:Alguém/Vector.css.",
"updated": "(Atualizado)",
"note": "'''Nota:'''",
"previewnote": "'''Lembre-se de que isto é apenas uma previsão.'''\nSuas alterações ainda não foram salvas!",
@@ -1124,7 +1124,7 @@
"prefs-files": "Arquivos",
"prefs-custom-css": "CSS personalizada",
"prefs-custom-js": "JS personalizado",
- "prefs-common-css-js": "CSS/JS compartilhado por todos os temas:",
+ "prefs-common-config": "CSS/JS compartilhado por todos os temas:",
"prefs-reset-intro": "Você pode usar esta página para restaurar as suas preferências para os valores predefinidos do sÃtio.\nEsta ação não pode ser desfeita.",
"prefs-emailconfirm-label": "Confirmação do e-mail:",
"youremail": "Seu e-mail:",
@@ -1515,8 +1515,8 @@
"rcfilters-liveupdates-button": "Atualizações instantâneas",
"rcfilters-liveupdates-button-title-on": "Desativar as atualizações ao vivo",
"rcfilters-liveupdates-button-title-off": "Exibir novas mudanças à medida que elas acontecem",
- "rcfilters-watchlist-markseen-button": "Marque todas as mudanças como visto",
- "rcfilters-watchlist-edit-watchlist-button": "Edite sua lista de páginas vigiadas",
+ "rcfilters-watchlist-markseen-button": "Marcar todas as mudanças como vistas",
+ "rcfilters-watchlist-edit-watchlist-button": "Editar lista de páginas vigiadas",
"rcfilters-watchlist-showupdated": "As alterações nas páginas que você não visitou desde as mudanças ocorridas estão em negrito, com marcadores sólidos.",
"rcfilters-preference-label": "Ocultar a versão melhorada das Mudanças Recentes",
"rcfilters-preference-help": "Reverte o redesenho da interface de 2017 e todas as ferramentas adicionadas na altura e desde então.",
@@ -1558,8 +1558,6 @@
"newpageletter": "N",
"boteditletter": "b",
"number_of_watching_users_pageview": "[{{PLURAL:$1|$1 usuário|$1 usuários}} vigiando]",
- "rc_categories": "Limitar às categorias (separar com \"|\"):",
- "rc_categories_any": "Qualquer um dos escolhidos",
"rc-change-size-new": "$1 {{PLURAL:$1|byte|bytes}} após alterações",
"newsectionsummary": "/* $1 */ nova seção",
"rc-enhanced-expand": "Exibir detalhes",
@@ -2277,7 +2275,7 @@
"historywarning": "Aviso: A página que está prestes a eliminar tem um histórico com aproximadamente $1 {{PLURAL:$1|revisão|revisões}}:",
"historyaction-submit": "Exibir",
"confirmdeletetext": "Encontra-se prestes a eliminar uma página juntamente com todo o seu histórico.\nPor favor, confirme que possui a intenção de fazer isto, que compreende as consequências e que encontra-se a fazer isto de acordo com as [[{{MediaWiki:Policy-url}}|polÃticas]] do projeto.",
- "actioncomplete": "Ação concluÃda",
+ "actioncomplete": "Ação efetuada com sucesso",
"actionfailed": "Falha na ação",
"deletedtext": "\"$1\" foi eliminada.\nConsulte $2 para um registro de eliminações recentes.",
"dellogpage": "Registro de eliminações",
@@ -2309,7 +2307,7 @@
"rollback-success": "Edições revertidas por {{GENDER:$3|$1}};\nalterado para a última revisão por {{GENDER:$4|$2}}.",
"rollback-success-notify": "Revertidas as edições de $1;\nMudança para a última revisão de $2. [$3 Mostrar alterações]",
"sessionfailure-title": "Erro de sessão",
- "sessionfailure": "Foram detetados problemas com a sua sessão;\nEsta ação foi cancelada como medida de proteção contra a intercepção de sessões.\nExperimente usar o botão \"Voltar\" e atualizar a página de onde veio e tente novamente.",
+ "sessionfailure": "Parece haver um problema com sua sessão de login;\nEsta ação foi cancelada como uma precaução contra o seqüestro de sessão.\nPor favor, reenvie o formulário.",
"changecontentmodel": "Alterar o modelo de conteúdo de uma página",
"changecontentmodel-legend": "Alterar o modelo de conteúdo",
"changecontentmodel-title-label": "TÃtulo da página",
@@ -2714,6 +2712,7 @@
"thumbnail_dest_directory": "Não foi possÃvel criar o diretório de destino",
"thumbnail_image-type": "Tipo de imagem não suportado",
"thumbnail_gd-library": "Configuração da biblioteca GD incompleta: função $1 não encontrada",
+ "thumbnail_image-size-zero": "O tamanho do arquivo de imagem parece ser zero.",
"thumbnail_image-missing": "Arquivo aparentemente inexistente: $1",
"thumbnail_image-failure-limit": "Houveram muitas tentativas falhas recentemente ($1 ou mais) de criação desta miniatura. Por favor, tente novamente mais tarde.",
"import": "Importar páginas",
@@ -3437,6 +3436,7 @@
"watchlistedit-clear-titles": "TÃtulos:",
"watchlistedit-clear-submit": "Limpar a lista de páginas vigiadas (Esta ação é permanente!)",
"watchlistedit-clear-done": "Sua lista de páginas vigiadas foi limpa.",
+ "watchlistedit-clear-jobqueue": "A sua lista de páginas vigiadas está a ser esvaziada. Esta operação pode ser demorada.",
"watchlistedit-clear-removed": "{{PLURAL:$1|Foi removido um tÃtulo|Foram removidos $1 tÃtulos}}:",
"watchlistedit-too-many": "Há muitas páginas para exibir aqui.",
"watchlisttools-clear": "Limpar a lista de páginas vigiadas",
diff --git a/languages/i18n/pt.json b/languages/i18n/pt.json
index a2728273bd..6340c76e7d 100644
--- a/languages/i18n/pt.json
+++ b/languages/i18n/pt.json
@@ -724,7 +724,7 @@
"userjspreview": "Lembre-se de que está apenas a testar ou a antever o seu JavaScript particular.\nEste ainda não foi gravado!",
"sitecsspreview": "Lembre-se de que está apenas a antever este CSS.\nEle ainda não foi gravado!",
"sitejspreview": "Lembre-se de que está apenas a antever este código JavaScript.\nEle ainda não foi gravado!",
- "userinvalidcssjstitle": "Aviso: Não existe um tema \"$1\".\nAs páginas personalizadas .css e .js têm um tÃtulo em minúsculas, por exemplo: {{ns:user}}:Alguém/vector.css em vez de {{ns:user}}:Alguém/Vector.css.",
+ "userinvalidconfigtitle": "Aviso: Não existe um tema \"$1\".\nAs páginas personalizadas .css e .js têm um tÃtulo em minúsculas, por exemplo: {{ns:user}}:Alguém/vector.css em vez de {{ns:user}}:Alguém/Vector.css.",
"updated": "(Atualizado)",
"note": "Nota:",
"previewnote": "Lembre-se de que esta é apenas uma antevisão do resultado.\nAs modificações ainda não foram gravadas!",
@@ -758,7 +758,7 @@
"templatesusedpreview": "{{PLURAL:$1|Predefinição utilizada|Predefinições utilizadas}} nesta antevisão:",
"templatesusedsection": "{{PLURAL:$1|Predefinição utilizada|Predefinições utilizadas}} nesta secção:",
"template-protected": "(protegida)",
- "template-semiprotected": "(semi-protegida)",
+ "template-semiprotected": "(semiprotegida)",
"hiddencategories": "Esta página pertence a {{PLURAL:$1|uma categoria oculta|$1 categorias ocultas}}:",
"edittools": "",
"edittools-upload": "-",
@@ -1094,7 +1094,7 @@
"prefs-files": "Ficheiros",
"prefs-custom-css": "CSS personalizado",
"prefs-custom-js": "JS personalizado",
- "prefs-common-css-js": "CSS/JS partilhado por todos os temas:",
+ "prefs-common-config": "CSS/JS partilhado por todos os temas:",
"prefs-reset-intro": "Pode usar esta página para repor as configurações padrão das preferências.\nAs suas preferências serão modificadas para os valores predefinidos do sÃtio.\nEsta operação não pode ser desfeita.",
"prefs-emailconfirm-label": "Confirmação do correio eletrónico:",
"youremail": "Correio eletrónico:",
@@ -1532,8 +1532,6 @@
"newpageletter": "N",
"boteditletter": "b",
"number_of_watching_users_pageview": "[{{PLURAL:$1|$1 utilizador|$1 utilizadores}} a vigiar]",
- "rc_categories": "Limitar às categorias (separar com \"|\"):",
- "rc_categories_any": "Qualquer dos escolhidos",
"rc-change-size-new": "$1 {{PLURAL:$1|byte|bytes}} após mudança",
"newsectionsummary": "/* $1 */ nova secção",
"rc-enhanced-expand": "Mostrar detalhes",
@@ -2357,7 +2355,7 @@
"restriction-create": "Criar",
"restriction-upload": "Carregar",
"restriction-level-sysop": "totalmente protegida",
- "restriction-level-autoconfirmed": "semi-protegida",
+ "restriction-level-autoconfirmed": "semiprotegida",
"restriction-level-all": "qualquer nÃvel",
"undelete": "Ver páginas eliminadas",
"undeletepage": "Ver e restaurar páginas eliminadas",
@@ -2687,6 +2685,7 @@
"thumbnail_dest_directory": "Não foi possÃvel criar o diretório de destino",
"thumbnail_image-type": "Tipo de imagem não suportado",
"thumbnail_gd-library": "Configuração da biblioteca GD incompleta: função $1 em falta",
+ "thumbnail_image-size-zero": "O tamanho do ficheiro de imagem parece ser zero.",
"thumbnail_image-missing": "Ficheiro em falta: $1",
"thumbnail_image-failure-limit": "Ocorreram demasiadas tentativas recentes ($1 ou mais) de criação desta miniatura. Tente novamente mais tarde, por favor.",
"import": "Importar páginas",
diff --git a/languages/i18n/qqq.json b/languages/i18n/qqq.json
index f3cbb7baf4..ec41d37cc1 100644
--- a/languages/i18n/qqq.json
+++ b/languages/i18n/qqq.json
@@ -194,7 +194,9 @@
"Pginer",
"Wladek92",
"Gombang",
- "Trizek (WMF)"
+ "Trizek (WMF)",
+ "Acamicamacaraca",
+ "Avatar6"
]
},
"sidebar": "{{notranslate}}",
@@ -879,7 +881,7 @@
"userjspreview": "Text displayed on preview of every user .js subpage",
"sitecsspreview": "Text displayed on preview of .css pages in MediaWiki namespace.\n\nSee also:\n* {{msg-mw|Usercsspreview}}",
"sitejspreview": "Text displayed on preview of .js pages in MediaWiki namespace",
- "userinvalidcssjstitle": "Parameters:\n* $1 - skin name",
+ "userinvalidconfigtitle": "Parameters:\n* $1 - skin name",
"updated": "{{Identical|Updated}}",
"note": "{{Identical|Note}}",
"previewnote": "Note displayed when clicking on Show preview",
@@ -1268,7 +1270,7 @@
"prefs-files": "Title of a tab in [[Special:Preferences]].\n{{Identical|File}}",
"prefs-custom-css": "visible on [[Special:Preferences]] -[Skins].\n{{Identical|Custom CSS}}",
"prefs-custom-js": "visible on [[Special:Preferences]] -[Skins].\n{{Identical|Custom JavaScript}}",
- "prefs-common-css-js": "Used as label in [[Special:Preferences#mw-prefsection-rendering|preferences]], tab \"Appearance\", section \"Skin\".\n\nSee also:\n* {{msg-mw|Globalcssjs-custom-css-js}}",
+ "prefs-common-config": "Used as label in [[Special:Preferences#mw-prefsection-rendering|preferences]], tab \"Appearance\", section \"Skin\".\n\nSee also:\n* {{msg-mw|Globalcssjs-custom-css-js}}",
"prefs-reset-intro": "Used in [[Special:Preferences/reset]].",
"prefs-emailconfirm-label": "Sub-heading in [[Special:Preferences]] > {{int:prefs-personal}} > {{int:email}}.",
"youremail": "Label of the e-mail text box of the \"E-mail options\" section of [[Special:Preferences]].\nAlso used on create account form.\n\n{{Identical|E-mail}}",
@@ -1672,7 +1674,7 @@
"rcfilters-view-tags-help-icon-tooltip": "Tooltip for the help button that leads user to Special:Tags page",
"rcfilters-liveupdates-button": "Label for the button to enable or disable live updates on [[Special:RecentChanges]]",
"rcfilters-liveupdates-button-title-on": "Title for the button to enable or disable live updates on [[Special:RecentChanges]] when the feature is ON.",
- "rcfilters-liveupdates-button-title-off": "Title for the button to enable or disable live updates on [[Special:RecentChanges]] when the feature is OFF.",
+ "rcfilters-liveupdates-button-title-off": "Title for the button to enable or disable live updates on [[Special:RecentChanges]].",
"rcfilters-watchlist-markseen-button": "Label for the button to mark all changes as seen on [[Special:Watchlist]] when using the structured filters interface.",
"rcfilters-watchlist-edit-watchlist-button": "Label for the button to edit the watched pages on [[Special:Watchlist]] when using the structured filters interface.\n\nCf. {{msg-mw|watchlisttools-edit}}.",
"rcfilters-watchlist-showupdated": "Message at the top of [[Special:Watchlist]] when the Structured filters are enabled that describes what unseen changes look like.\n\nCf. {{msg-mw|wlheader-showupdated}}",
@@ -1718,8 +1720,6 @@
"unpatrolledletter": "{{optional}}\n\nUsed in {{msg-mw|Recentchanges-label-legend}}, meaning \"unpatrolled\".",
"number_of_watching_users_RCview": "{{notranslate}}\nParameters:\n* $1 - number of users who are watching",
"number_of_watching_users_pageview": "Used if $wgPageShowWatchingUsers
is true.\n* $1 - number of watching user(s)",
- "rc_categories": "A label of an input box. Appears on Special:RecentChanges if filtering recent changes by category is enabled (that is, $wgAllowCategorizedRecentChanges is set to true).",
- "rc_categories_any": "Appears ''after'' the input box the label of which is {{msg-mw|rc_categories}}, which appears on [[Special:RecentChanges]], if $wgAllowCategorizedRecentChanges
is true. \"Chosen\" refers to categories.",
"rc-change-size": "{{optional}}\nDoes not work under $wgMiserMode ([[mwr:48986|r48986]]).\n\nParameters:\n* $1 - size of diff",
"rc-change-size-new": "Tooltip when hovering a change list diff size. Parameters:\n* $1 - the resulting new size (in bytes)",
"newsectionsummary": "Default summary when adding a new section to a page. Parameters:\n* $1 - section title",
@@ -2958,6 +2958,7 @@
"thumbnail_dest_directory": "Used as thumbnail error message.\n\nSee also:\n* {{msg-mw|Thumbnail error}}\n* {{msg-mw|Thumbnail-temp-create}}\n* {{msg-mw|Thumbnail-dest-create}}\n* {{msg-mw|Thumbnail invalid params}}",
"thumbnail_image-type": "This is the parameter 1 of the message {{msg-mw|thumbnail error}}",
"thumbnail_gd-library": "This is the parameter 1 of the message {{msg-mw|thumbnail error}}.\n*$1 is a function name of the GD library",
+ "thumbnail_image-size-zero": "This is the parameter 1 of the message {{msg-mw|thumbnail error}}.\n*$1 is the path incl. filename of the image with zero size",
"thumbnail_image-missing": "This is the parameter 1 of the message {{msg-mw|thumbnail error}}.\n*$1 is the path incl. filename of the missing image",
"thumbnail_image-failure-limit": "Used as $1
in {{msg-mw|Thumbnail error}}.\n\nParameters:\n* $1 - the maximum allowed number of failed attempts",
"import": "The title of the special page [[Special:Import]];",
@@ -3965,7 +3966,7 @@
"signature-anon": "{{notranslate}}\nUsed as signature for anonymous user. Parameters:\n* $1 - username (IP address?)\n* $2 - nickname (IP address?)\nSee also:\n* {{msg-mw|Signature}} - signature for registered user",
"timezone-utc": "{{optional}}",
"timezone-local": "Label to indicate that a time is in the user's local timezone.\n{{Identical|Local}}",
- "duplicate-defaultsort": "See definition of [[w:Sorting|sort key]] on Wikipedia. Parameters:\n* $1 - old default sort key\n* $2 - new default sort key",
+ "duplicate-defaultsort": "Warning: Default sort key \"$2\" overrides earlier default sort key \"$1\".",
"duplicate-displaytitle": "Warning shown when a page has its display title set multiple times. Parameters:\n* $1 - old display title\n* $2 - new display title",
"restricted-displaytitle": "Warning shown when a display title is ignored because it is not equivalent to its actual title. Parameters:\n* $1 - the ignored display title",
"invalid-indicator-name": "Warning shown when the [https://www.mediawiki.org/wiki/Help:Page_status_indicators <indicator name=\"''unique-identifier''\">''content''</indicator>] parser tag is used incorrectly.",
diff --git a/languages/i18n/qu.json b/languages/i18n/qu.json
index ab0277a3a9..8b3db5d487 100644
--- a/languages/i18n/qu.json
+++ b/languages/i18n/qu.json
@@ -553,7 +553,7 @@
"userjspreview": "'''Yuyariy, qhawarillachkankim ruraqpa JavaScript-niykita, manaraqmi waqaychasqachu!'''",
"sitecsspreview": "'''Yuyariy, qhawarillachkankim kay CSS-ta.'''\n'''Manaraqmi waqaychasqachu!'''",
"sitejspreview": "'''Yuyariy, qhawarillachkankim kay JavaScript qillqata.'''\n'''Manaraqmi waqaychasqachu!'''",
- "userinvalidcssjstitle": "'''Paqtataq:''' Manam kanchu \"$1\" qara. Yuyariy, kikinpa .css, .js p'anqankunaqa uchuy sanampa umalliyuqmi, ahinataq {{ns:user}}:Foo/vector.css manataq {{ns:user}}:Foo/Vector.css nisqachu.",
+ "userinvalidconfigtitle": "'''Paqtataq:''' Manam kanchu \"$1\" qara. Yuyariy, kikinpa .css, .js p'anqankunaqa uchuy sanampa umalliyuqmi, ahinataq {{ns:user}}:Foo/vector.css manataq {{ns:user}}:Foo/Vector.css nisqachu.",
"updated": "(Musuqchasqa)",
"note": "'''Musyay:'''",
"previewnote": "'''Yuyaykuy: Kayqa qhawariyllam.'''\nLlamk'apusqaykiqa manaraqmi waqaychasqachu!",
@@ -864,7 +864,7 @@
"prefs-files": "Willañiqikuna",
"prefs-custom-css": "Munakusqa CSS",
"prefs-custom-js": "Munakusqa JS",
- "prefs-common-css-js": "Tukuy qarakunapaq rakinakusqa CSS/JS:",
+ "prefs-common-config": "Tukuy qarakunapaq rakinakusqa CSS/JS:",
"prefs-reset-intro": "Kay p'anqataqa llamk'achiyta atinki allinkachinaykikunata kikinmanta kasqaman kutichinaykipaq.\nChaytataq manam kutichiyta atinkichu.",
"prefs-emailconfirm-label": "E-chaskita takyachiy:",
"youremail": "E-chaski imamaytayki",
@@ -1096,8 +1096,6 @@
"newpageletter": "M",
"boteditletter": "r",
"number_of_watching_users_pageview": "[$1 watiqachkaq {{PLURAL:$1|ruraq|ruraqkuna}}]",
- "rc_categories": "Kay katiguriyakunaman saywachay (\"|\" nisqawan rakisqa)",
- "rc_categories_any": "Imallapas",
"rc-change-size-new": "$1 {{PLURAL:$1|byte|byte}} hukchasqa kaptinña",
"newsectionsummary": "Musuq raki: /* $1 */",
"rc-enhanced-expand": "Imaymanachakunata rikuchiy",
diff --git a/languages/i18n/rm.json b/languages/i18n/rm.json
index 30cb14ae05..b4a9057a0d 100644
--- a/languages/i18n/rm.json
+++ b/languages/i18n/rm.json
@@ -505,7 +505,7 @@
"userjspreview": "'''Fa stim che quai è be ina prevista da tes JavaScript d'utilisader.'''\n'''El n'è anc betg memorisà .'''",
"sitecsspreview": "'''Fa stim che quai è be ina prevista da quest CSS.'''\n'''El n'è anc betg memorisà .'''",
"sitejspreview": "'''Fa stim che quai è be ina prevista da quest JavaScript.'''\n'''El n'è anc betg memorisà .'''",
- "userinvalidcssjstitle": "'''Attenziun:''' I n'exista nagin skin \"$1\".\nFa stim che titels da paginas persunalisadas .css u .js vegnan scrits pitschen, p. ex. {{ns:user}}:Foo/vector.css e betg {{ns:user}}:Foo/Vector.css.",
+ "userinvalidconfigtitle": "'''Attenziun:''' I n'exista nagin skin \"$1\".\nFa stim che titels da paginas persunalisadas .css u .js vegnan scrits pitschen, p. ex. {{ns:user}}:Foo/vector.css e betg {{ns:user}}:Foo/Vector.css.",
"updated": "(midà )",
"note": "'''Remartga:'''",
"previewnote": "'''Fa stim che quai è be ina prevista.'''\nTias midadas n'èn anc betg vegnidas memorisadas!",
@@ -801,7 +801,7 @@
"prefs-files": "Datotecas",
"prefs-custom-css": "CSS persunalisà ",
"prefs-custom-js": "JavaScript persunalisà ",
- "prefs-common-css-js": "CSS/JavaScript cundividì per tut ils skins:",
+ "prefs-common-config": "CSS/JavaScript cundividì per tut ils skins:",
"prefs-reset-intro": "Ti pos utilisar questa pagina per restituir las valurs da standard da questa pagina per tias preferenzas. \nQuesta operaziun na po betg vegnir revocada.",
"prefs-emailconfirm-label": "Confirmaziun per e-mail:",
"youremail": "Adressa dad e-mail:",
@@ -1011,8 +1011,6 @@
"newpageletter": "N",
"boteditletter": "B",
"number_of_watching_users_pageview": "[$1 {{PLURAL:$1|utilisader|utilisaders}} observeschan quest artitgel]",
- "rc_categories": "Be paginas ord las categorias (seperar cun \"|\")",
- "rc_categories_any": "Tuts",
"rc-change-size-new": "$1 {{PLURAL:$1|byte|bytes}} suenter la midada",
"newsectionsummary": "Nov chapitel /* $1 */",
"rc-enhanced-expand": "Mussar detagls",
diff --git a/languages/i18n/ro.json b/languages/i18n/ro.json
index e4f3e9f399..2a06075b09 100644
--- a/languages/i18n/ro.json
+++ b/languages/i18n/ro.json
@@ -71,6 +71,7 @@
"tog-watchlisthideminor": "Ascunde modificÄrile minore din lista de pagini urmÄrite",
"tog-watchlisthideliu": "Ascunde modificÄrile efectuate de utilizatori autentificaÈi din lista de pagini urmÄrite",
"tog-watchlistreloadautomatically": "ReîncarcÄ automat lista paginilor urmÄrite de fiecare datÄ când un filtru este modificat (necesitÄ JavaScript)",
+ "tog-watchlistunwatchlinks": "AdaugÄ legÄturi directe pentru urmÄrire/neurmÄrire inrÄrilor din lista de pagini urmÄrite (este nevoie de JavaScript pentru a activa funcÈionalitatea)",
"tog-watchlisthideanons": "Ascunde modificÄrile fÄcute de utilizatori anonimi din lista de pagini urmÄrite",
"tog-watchlisthidepatrolled": "Ascunde paginile patrulate din lista de pagini urmÄrite",
"tog-watchlisthidecategorization": "Ascunde categorisirea paginilor",
@@ -470,7 +471,7 @@
"nosuchusershort": "Nu existÄ niciun utilizator cu numele â$1â.\nVerificaÈi ortografierea.",
"nouserspecified": "Trebuie sÄ specificaÈi un nume de utilizator.",
"login-userblocked": "Acest utilizator este blocat. Autentificarea nu este permisÄ.",
- "wrongpassword": "Parola pe care aÈi introdus-o este incorectÄ. VÄ rugÄm sÄ Ã®ncercaÈi din nou.",
+ "wrongpassword": "Utilizatorul sau parola pe care le-aÈi introdus sunt incorecte. VÄ rugÄm sÄ Ã®ncercaÈi din nou.",
"wrongpasswordempty": "SpaÈiul pentru introducerea parolei nu a fost completat. VÄ rugÄm sÄ Ã®ncercaÈi din nou.",
"passwordtooshort": "Parola trebuie sÄ aibÄ cel puÈin {{PLURAL:$1|1 caracter|$1 caractere|$1 de caractere}}.",
"passwordtoolong": "Parolele nu pot fi mai lungi de {{PLURAL:$1|un caracter|$1 caractere|$1 de caractere}}.",
@@ -543,11 +544,11 @@
"botpasswords-insert-failed": "Eroare adÄugare nume bot \"$1\". A fost adÄugat deja?",
"botpasswords-update-failed": "Updatare nume bot $1 eÈuat. A fost Èters?",
"botpasswords-created-title": "Parola de robot a fost creatÄ",
- "botpasswords-created-body": "Parola bot pentru bot nume \"$1\" a utilizatorului \"$2\" a fost creatÄ.",
+ "botpasswords-created-body": "Parola de robot pentru robotul \"$1\" al {{GENDER:$2|utilizatorului|utilizatoarei}} \"$2\" a fost creatÄ.",
"botpasswords-updated-title": "Parola de robot a fost actualizatÄ",
- "botpasswords-updated-body": "Parola bot pentru bot nume \"$1\" a utilizatorului \"$2\" a fost actualizatÄ.",
+ "botpasswords-updated-body": "Parola de robot pentru robotul \"$1\" al {{GENDER:$2|utilizatorului|utilizatoarei}} \"$2\" a fost actualizatÄ.",
"botpasswords-deleted-title": "Parola de bot a fost ÈtearsÄ",
- "botpasswords-deleted-body": "Parola bot pentru bot nume \"$1\" a utilizatorului \"$2\" a fost stearsÄ.",
+ "botpasswords-deleted-body": "Parola de robot pentru robotul \"$1\" al {{GENDER:$2|utilizatorului|utilizatoarei}} \"$2\" a fost ÈtearsÄ.",
"botpasswords-newpassword": "Noua parolÄ pentru autentificare cu $1 este $2. SalvaÈi-l pentru utilizÄri ulterioare.
(Pentru roboÈi mai vechi, care necesitÄ ca numele de autentificare sÄ fie acelaÈi cu numele de utilizator, puteÈi utiliza Èi $3 ca nume de utilizator Èi $4 ca parolÄ.)",
"botpasswords-no-provider": "BotPasswordsSessionProvider nu este disponibil.",
"botpasswords-restriction-failed": "RestricÈiile privind parola botului împiedicÄ aceastÄ conectare.",
@@ -673,7 +674,7 @@
"userjspreview": "'''ReÈineÈi cÄ vizualizaÈi doar o previzualizare/versiune de testare a JavaScript-ului dumneavoastrÄ de utilizator.'''\n'''Acesta nu a fost încÄ salvat!'''",
"sitecsspreview": "'''ReÈineÈi cÄ doar previzualizaÈi aceastÄ foaie de stil.'''\n'''Ea nu a fost salvatÄ Ã®ncÄ!'''",
"sitejspreview": "'''ReÈineÈi cÄ doar previzualizaÈi acest cod JavaScript.'''\n'''El nu a fost salvat încÄ!'''",
- "userinvalidcssjstitle": "'''Avertizare:''' Nu existÄ aspectul â$1â.\nPaginile .css Èi .js specifice utilizatorilor au titluri care încep cu literÄ micÄ; de exemplu {{ns:user}}:Foo/vector.css în comparaÈie cu {{ns:user}}:Foo/Vector.css.",
+ "userinvalidconfigtitle": "'''Avertizare:''' Nu existÄ aspectul â$1â.\nPaginile .css Èi .js specifice utilizatorilor au titluri care încep cu literÄ micÄ; de exemplu {{ns:user}}:Foo/vector.css în comparaÈie cu {{ns:user}}:Foo/Vector.css.",
"updated": "(Actualizat)",
"note": "'''NotÄ:'''",
"previewnote": "'''ÈineÈi cont cÄ aceasta este doar o previzualizare.'''\nModificÄrile dumneavoastrÄ nu au fost încÄ salvate!",
@@ -692,6 +693,7 @@
"yourtext": "Textul dumneavoastrÄ",
"storedversion": "Versiunea curentÄ",
"editingold": "'''AtenÈie: ModificaÈi o versiune veche a acestei pagini.'''\nDacÄ salvaÈi pagina, toate modificÄrile intermediare se vor pierde.",
+ "unicode-support-fail": "Se pare cÄ browserul dumneavoastrÄ nu Ètie Unicode. Acest lucru este necesar pentru a edita pagini, de aceea editarea dumneavoastrÄ nu a fost salvatÄ.",
"yourdiff": "DiferenÈe",
"copyrightwarning": "ReÈine cÄ toate contribuÈiile la {{SITENAME}} sunt distribuite sub licenÈa $2 (vezi $1 pentru detalii).\nDacÄ nu doriÈi ca ceea ce scrieÈi sÄ fie modificat fÄrÄ milÄ Èi redistribuit în voie, atunci nu trimiteÈi materialele respective aici.
\nDe asemenea, ne asiguraÈi cÄ ceea ce aÈi scris a fost compoziÈie proprie sau copie dintr-o resursÄ publicÄ sau liberÄ.\n'''Nu introduceÈi materiale aflate sub incidenÈa drepturilor de autor fÄrÄ a avea permisiune!'''",
"copyrightwarning2": "ReÈineÈi cÄ toate contribuÈiile la {{SITENAME}} pot fi modificate, alterate sau Èterse de alÈi contribuitori.\nDacÄ nu doriÈi ca ceea ce scrieÈi sÄ fie modificat fÄrÄ milÄ Èi redistribuit în voie, atunci nu trimiteÈi materialele respective aici.
\nDe asemenea, ne asiguraÈi cÄ ceea ce aÈi scris a fost compoziÈie proprie sau copie dintr-o resursÄ publicÄ sau liberÄ (vedeÈi $1 pentru detalii).\n'''Nu introduceÈi materiale aflate sub incidenÈa drepturilor de autor fÄrÄ a avea permisiune!'''",
@@ -728,6 +730,7 @@
"postedit-confirmation-created": "Pagina a fost creatÄ.",
"postedit-confirmation-restored": "Pagina a fost restauratÄ.",
"postedit-confirmation-saved": "Modificarea dumneavoastrÄ a fost salvatÄ.",
+ "postedit-confirmation-published": "Editarea dumneavoastrÄ a fost publicatÄ.",
"edit-already-exists": "Pagina nouÄ nu a putut fi creatÄ.\nEa existÄ deja.",
"defaultmessagetext": "Textul implicit",
"content-failed-to-parse": "Nu s-a putut analiza conÈinutul de tip $2 pentru modelul $1: $3",
@@ -758,6 +761,7 @@
"parser-template-loop-warning": "BuclÄ de formate detectatÄ: [[$1]]",
"template-loop-category": "Pagini cu bucle de formate",
"template-loop-category-desc": "Pagina conÈine o buclÄ de Èabloane, adicÄ un Èablon care se autoapeleazÄ recursiv.",
+ "template-loop-warning": "AtenÈie: AceastÄ paginÄ apeleazÄ [[:$1]] ceea ce cauzeazÄ un ciclu de formate (un apel recursiv infinit).",
"parser-template-recursion-depth-warning": "LimitÄ de adâncime a recursiei depÄÈitÄ ($1)",
"language-converter-depth-warning": "Limita adâncimii convertorului de limbÄ a fost depÄÈitÄ ($1)",
"node-count-exceeded-category": "Pagini unde numÄrul de noduri este depÄÈit",
@@ -914,6 +918,8 @@
"diff-multi-sameuser": "(Nu {{PLURAL:$1|s-a afiÈat o versiune intermediarÄ efectuatÄ|s-au afiÈat $1 versiuni intermediare efectuate|s-au afiÈat $1 de versiuni intermediare efectuate}} de acelaÈi utilizator)",
"diff-multi-otherusers": "(Nu {{PLURAL:$1|s-a afiÈat o versiune intermediarÄ efectuatÄ|s-au afiÈat $1 versiuni intermediare efectuate|s-au afiÈat $1 de versiuni intermediare efectuate}} de {{PLURAL:$2|un alt utilizator|alÈi $2 utilizatori|alÈi $2 de utilizatori}})",
"diff-multi-manyusers": "({{PLURAL:$1|O versiune intermediarÄ efectuatÄ de|$1 (de) versiuni intermediare efectuate de peste}} $2 {{PLURAL:$2|utilizator|utilizatori}} {{PLURAL:$1|neafiÈatÄ|neafiÈate}})",
+ "diff-paragraph-moved-tonew": "Paragraful a fost mutat. Clic pentru a ajunge la noua locaÈie.",
+ "diff-paragraph-moved-toold": "Paragraful a fost mutat. Clic pentru a ajunge la vechea locaÈie.",
"difference-missing-revision": "{{PLURAL:$2|O versiune a|$2 versiuni ale|$2 de versiuni ale}} acestei diferenÈe ($1) nu {{PLURAL:$2|a fost gÄsitÄ|au fost gÄsite}}.\n\nAcest lucru se întâmplÄ de obicei atunci când se acceseazÄ o legÄturÄ expiratÄ cÄtre istoricul unei pagini Èterse.\nDetalii se pot gÄsi în [{{fullurl:{{#Special:Log}}/delete|page={{FULLPAGENAMEE}}}} jurnalul Ètergerilor].",
"searchresults": "Rezultatele cÄutÄrii",
"searchresults-title": "Rezultatele cÄutÄrii pentru â$1â",
@@ -1007,7 +1013,7 @@
"recentchangesdays-max": "(maxim {{PLURAL:$1|o zi|$1 zile}})",
"recentchangescount": "NumÄrul modificÄrilor afiÈate implicit:",
"prefs-help-recentchangescount": "Sunt incluse schimbÄrile recente, istoricul paginilor Èi jurnalele.",
- "prefs-help-watchlist-token2": "Aceasta este cheia secretÄ pentru fluxul web al listei dumneavoastrÄ de pagini urmÄrite.\nOricine o cunoaÈte vÄ va putea citi lista de pagini urmÄrite, aÈa cÄ n-o partajaÈi cu nimeni.\n[[Special:ResetTokens|FaceÈi clic aici dacÄ doriÈi sÄ o resetaÈi]].",
+ "prefs-help-watchlist-token2": "Aceasta este cheia secretÄ pentru fluxul web al listei dumneavoastrÄ de pagini urmÄrite.\nOricine o cunoaÈte vÄ va putea citi lista de pagini urmÄrite, aÈa cÄ n-o partajaÈi cu nimeni. DacÄ doriÈi, \n[[Special:ResetTokens|o puteÈi reseta]].",
"savedprefs": "PreferinÈele dumneavoastrÄ au fost salvate.",
"savedrights": "Grupurile utilizatorului {{GENDER:$1|$1}} au fost salvate.",
"timezonelegend": "Fus orar:",
@@ -1035,7 +1041,7 @@
"prefs-files": "FiÈiere",
"prefs-custom-css": "CSS personalizat",
"prefs-custom-js": "JS personalizat",
- "prefs-common-css-js": "Pagini CSS Èi JavaScript comune pentru toate interfeÈele:",
+ "prefs-common-config": "Pagini CSS Èi JavaScript comune pentru toate interfeÈele:",
"prefs-reset-intro": "PoÈi folosi aceastÄ paginÄ pentru a reseta preferinÈele la valorile implicite.\nAcÈiunea nu este reversibilÄ.",
"prefs-emailconfirm-label": "Confirmare e-mail:",
"youremail": "AdresÄ de e-mail:",
@@ -1070,6 +1076,7 @@
"prefs-editor": "Editor",
"prefs-preview": "Previzualizare",
"prefs-advancedrc": "OpÈiuni avansate",
+ "prefs-opt-out": "DezactivaÈi îmbunÄtÄÈirile",
"prefs-advancedrendering": "OpÈiuni avansate",
"prefs-advancedsearchoptions": "OpÈiuni avansate",
"prefs-advancedwatchlist": "OpÈiuni avansate",
@@ -1295,6 +1302,9 @@
"recentchanges-legend": "OpÈiuni schimbÄri recente",
"recentchanges-summary": "UrmÄriÈi cele mai recente modificÄri din wiki pe aceastÄ paginÄ.",
"recentchanges-noresult": "Nicio modificare din intervalul specificat nu corespunde acestor criterii.",
+ "recentchanges-timeout": "CÄutarea a expirat. PuteÈi încerca parametri de cÄutare diferiÈi.",
+ "recentchanges-network": "DatoritÄ unei erori tehnice nu au putut fi încÄrcate rezultate. ÃncercaÈi sÄ reîncÄrcaÈi pagina.",
+ "recentchanges-notargetpage": "IntroduceÈi numele paginii deasupra pentru a vedea schimbÄri legate de acea paginÄ.",
"recentchanges-feed-description": "UrmÄreÈte cele mai recente schimbÄri folosind acest flux.",
"recentchanges-label-newpage": "AceastÄ modificare a creat o paginÄ nouÄ",
"recentchanges-label-minor": "Aceasta este o modificare minorÄ",
@@ -1312,13 +1322,15 @@
"rcfilters-activefilters": "Filtre active",
"rcfilters-advancedfilters": "Filtre avansate",
"rcfilters-limit-title": "SchimbÄri de afiÈat",
+ "rcfilters-limit-and-date-label": "$1 {{PLURAL:$1|schimbare|schimbÄri|de schimbÄri}}, $2",
+ "rcfilters-date-popup-title": "Perioada cÄutÄrii",
"rcfilters-days-title": "Ultimele zile",
"rcfilters-hours-title": "Ultimele ore",
"rcfilters-days-show-days": "$1 {{PLURAL:$1|zi|zile|de zile}}",
"rcfilters-days-show-hours": "$1 {{PLURAL:$1|orÄ|ore|de ore}}",
"rcfilters-highlighted-filters-list": "FIltru: $1",
"rcfilters-quickfilters": "Filtre salvate",
- "rcfilters-quickfilters-placeholder-title": "Nicio legÄturÄ salvatÄ Ã®ncÄ",
+ "rcfilters-quickfilters-placeholder-title": "Niciun filtru salvat deocamdatÄ",
"rcfilters-quickfilters-placeholder-description": "Pentru a salva setÄrile de filtrare Èi a le refolosi mai târziu, faceÈi clic pe iconiÈa de marcaje în zona de Filtre active de mai jos.",
"rcfilters-savedqueries-defaultlabel": "Filtre salvate",
"rcfilters-savedqueries-rename": "RedenumeÈte",
@@ -1331,10 +1343,11 @@
"rcfilters-savedqueries-apply-and-setdefault-label": "CreaÈi filtru implicit",
"rcfilters-savedqueries-cancel-label": "Anulare",
"rcfilters-savedqueries-add-new-title": "SalvaÈi filtrele curente",
+ "rcfilters-savedqueries-already-saved": "Aceste filtre sunt deja salvate. SchimbaÈi setÄrile pentru a salva un nou filtru de cÄutare.",
"rcfilters-restore-default-filters": "RestauraÈi filtrele prestabilite",
"rcfilters-clear-all-filters": "ÈtergeÈi toate filtrele",
"rcfilters-show-new-changes": "AratÄ schimbÄrile mai noi",
- "rcfilters-search-placeholder": "FiltraÈi modificÄrile recente (rÄsfoiÈi sau începeÈi sÄ tastaÈi)",
+ "rcfilters-search-placeholder": "FiltraÈi modificÄrile recente (folosiÈi meniul sau cÄutaÈi numele filtrului)",
"rcfilters-invalid-filter": "Filtru invalid",
"rcfilters-empty-filter": "Nu existÄ filtre active. Toate contribuÈiile sunt afiÈate.",
"rcfilters-filterlist-title": "Filtre",
@@ -1351,14 +1364,14 @@
"rcfilters-filter-editsbyself-label": "ModificÄrile tale",
"rcfilters-filter-editsbyself-description": "ContribuÈiile tale.",
"rcfilters-filter-editsbyother-label": "ContribuÈiile altora",
- "rcfilters-filter-editsbyother-description": "Toate modificÄrile mai puÈin ale tale.",
+ "rcfilters-filter-editsbyother-description": "Toate modificÄrile cu excepÈia celor proprii.",
"rcfilters-filtergroup-userExpLevel": "Nivelul de experienÈÄ a utilizatorilor",
"rcfilters-filter-user-experience-level-registered-label": "Ãnregistrat",
"rcfilters-filter-user-experience-level-registered-description": "Editorii conectaÈi.",
"rcfilters-filter-user-experience-level-unregistered-label": "Neînregistrat",
"rcfilters-filter-user-experience-level-unregistered-description": "Editorii care nu sunt conectaÈi.",
"rcfilters-filter-user-experience-level-newcomer-label": "Nou veniÈi",
- "rcfilters-filter-user-experience-level-newcomer-description": "Editorii înregistraÈi care au mai puÈin de 10 editÄri Èi 4 zile de activitate.",
+ "rcfilters-filter-user-experience-level-newcomer-description": "Editorii înregistraÈi care au mai puÈin de 10 editÄri sau 4 zile de activitate.",
"rcfilters-filter-user-experience-level-learner-label": "CursanÈi",
"rcfilters-filter-user-experience-level-learner-description": "Editorii înregistraÈi a cÄror experienÈÄ este între \"Noi veniÈi\" Èi \"Utilizatori experimentaÈi\".",
"rcfilters-filter-user-experience-level-experienced-label": "Utilizatori experimentaÈi",
@@ -1378,10 +1391,10 @@
"rcfilters-filter-minor-description": "ModificÄri pe care autorul le-a marcat ca fiind minore.",
"rcfilters-filter-major-label": "ModificÄri non-minore",
"rcfilters-filter-major-description": "ModificÄri care nu sunt etichetate ca minore.",
- "rcfilters-filtergroup-watchlist": "Pagini urmÄrite de dv.",
- "rcfilters-filter-watchlist-watched-label": "ListÄ de urmÄrire",
- "rcfilters-filter-watchlist-watched-description": "ModificÄri are paginilor urmÄrite de dv.",
- "rcfilters-filter-watchlist-watchednew-label": "Modificari ale listei urmÄrite de dv.",
+ "rcfilters-filtergroup-watchlist": "Pagini urmÄrite de dvs.",
+ "rcfilters-filter-watchlist-watched-label": "Ãn lista de pagini urmÄrite",
+ "rcfilters-filter-watchlist-watched-description": "ModificÄri ale paginilor urmÄrite de dvs.",
+ "rcfilters-filter-watchlist-watchednew-label": "ModificÄri noi ale paginilor urmÄrite de dvs.",
"rcfilters-filter-watchlist-watchednew-description": "ModificÄrile paginilor urmÄrite care nu au fost vizitate de la efectuarea schimbÄrilor.",
"rcfilters-filter-watchlist-notwatched-label": "Care nu sunt pe lista urmÄritÄ de dv.",
"rcfilters-filter-watchlist-notwatched-description": "Totul, cu excepÈia modificÄrilor aduse paginilor urmÄrite de dvs.",
@@ -1394,8 +1407,8 @@
"rcfilters-filter-pageedits-label": "EditÄri ale paginii",
"rcfilters-filter-pageedits-description": "EditÄri ale conÈinutului wiki, discuÈii, descrieri de categoriiâ¦",
"rcfilters-filter-newpages-label": "Creare de pagini",
- "rcfilters-filter-newpages-description": "ModificÄri care creeazÄ pagini noi.",
- "rcfilters-filter-categorization-label": "ModificÄri de categorie",
+ "rcfilters-filter-newpages-description": "ModificÄri care au dus la crearea de pagini noi.",
+ "rcfilters-filter-categorization-label": "ModificÄri de categorii",
"rcfilters-filter-categorization-description": "ÃnregistrÄri ale paginilor adÄugate sau eliminate din categorii.",
"rcfilters-filter-logactions-label": "AcÈiuni logate",
"rcfilters-filter-logactions-description": "AcÈiuni administrative, creare de conturi, Ètergere de pagini, încÄrcÄriâ¦",
@@ -1413,13 +1426,19 @@
"rcfilters-exclude-button-on": "Se exclud cele selectate",
"rcfilters-view-tags": "EditÄri marcate",
"rcfilters-view-namespaces-tooltip": "FiltreazÄ rezultatele dupÄ spaÈiul de nume",
+ "rcfilters-view-tags-tooltip": "FiltraÈi rezultatele folosind etichete pentru editÄri",
+ "rcfilters-view-return-to-default-tooltip": "Ãntoarcere la meniul principal",
+ "rcfilters-view-tags-help-icon-tooltip": "AflaÈi mai multe despre etichetele de editare",
"rcfilters-liveupdates-button": "ActualizÄri în timp real",
"rcfilters-liveupdates-button-title-on": "OpreÈte actualizÄrile",
"rcfilters-liveupdates-button-title-off": "AratÄ noile schimbÄri când se întâmplÄ",
"rcfilters-watchlist-markseen-button": "MarcheazÄ toate schimbÄrile ca vÄzute",
"rcfilters-watchlist-edit-watchlist-button": "EditaÈi lista de pagini urmÄrite",
+ "rcfilters-watchlist-showupdated": "Paginile care au fost modificate dupÄ ultima dumneavoastrÄ vizitÄ sunt afiÈate îngroÈat.",
"rcfilters-preference-label": "Ascunde versiunea îmbunÄtÄÈitÄ a SchimbÄrilor Recente",
"rcfilters-preference-help": "Ascunde interfaÈa schimbatÄ Ã®n 2017 Èi toate uneltele adÄugate de atunci.",
+ "rcfilters-filter-showlinkedfrom-label": "AratÄ schimbÄrile pe paginile cÄtre care existÄ legÄturi în",
+ "rcfilters-filter-showlinkedfrom-option-label": "Pages la care trimite pagina selectatÄ",
"rcnotefrom": "Dedesubt {{PLURAL:$5|se aflÄ o modificare|sunt modificÄrile}} începând cu $3, $4 (maximum $1 afiÈate).",
"rclistfromreset": "ResetaÈi selectarea datei",
"rclistfrom": "AfiÈeazÄ modificÄrile începând cu $3, ora $2",
@@ -1454,8 +1473,6 @@
"boteditletter": "b",
"unpatrolledletter": "!",
"number_of_watching_users_pageview": "[$1 {{PLURAL:$1|utilizator|utilizatori|de utilizatori}} care urmÄresc]",
- "rc_categories": "LimiteazÄ la categoriile (separate prin â|â):",
- "rc_categories_any": "Oricare dintre cele alese",
"rc-change-size": "$1",
"rc-change-size-new": "$1 {{PLURAL:$1|octet|octeÈi|de octeÈi}} dupÄ modificare",
"newsectionsummary": "/* $1 */ secÈiune nouÄ",
@@ -1466,7 +1483,7 @@
"recentchangeslinked-feed": "ModificÄri corelate",
"recentchangeslinked-toolbox": "ModificÄri corelate",
"recentchangeslinked-title": "ModificÄri legate de â$1â",
- "recentchangeslinked-summary": "Aceasta este o listÄ a schimbÄrilor efectuate recent asupra paginilor cu legÄturi de la o anumitÄ paginÄ (sau asupra membrilor unei anumite categorii).\nPaginile pe care le [[Special:Watchlist|urmÄriÈi]] apar cu aldine.",
+ "recentchangeslinked-summary": "IntroduceÈi titlul unei pagini pentru a vedea schimbÄrile din paginile spre care trimite sau care trimit spre ea. (Pentru a vedea membrii unei categorii, scrieÈi Categorie:Numele categoriei).\nSchimbÄrile din paginile pe care le [[Special:Watchlist|urmÄriÈi]] apar cu aldine.",
"recentchangeslinked-page": "Numele paginii:",
"recentchangeslinked-to": "AratÄ Ã®n schimb modificÄrile asupra paginilor care se leagÄ de pagina indicatÄ",
"recentchanges-page-added-to-category": "[[:$1]] a fost adÄugatÄ Ã®n categorii",
@@ -3644,7 +3661,7 @@
"expandtemplates": "Expandare formate",
"expand_templates_intro": "AceastÄ paginÄ specialÄ serveÈte la expandarea recursivÄ a tuturor formatelor dintr-un text. Ea acÈioneazÄ Èi asupra funcÈiilor de analizÄ (''parser'') de tipul $wgDefaultSkin
, $1
недоÑÑÑпна.\n\nУ Ð²Ð°Ñ Ð½ÐµÑ ÑÑÑановленнÑÑ
Ñем оÑоÑмлениÑ.\n\n; ÐÑли Ð²Ñ ÑолÑко ÑÑо ÑÑÑановили или обновили MediaWiki:\n: ÐÑ, видимо, Ñделали ÑÑо Ñ Git или непоÑÑедÑÑвенно из иÑÑ
одного кода Ñ Ð¸ÑполÑзованием дÑÑгого ÑпоÑоба. Тогда Ñакое возможно. MediaWiki веÑÑии 1.24 и новее не ÑодеÑÐ¶Ð°Ñ ÑÐµÐ¼Ñ Ð¾ÑоÑÐ¼Ð»ÐµÐ½Ð¸Ñ Ð² оÑновном ÑепозиÑоÑии. ÐопÑобÑйÑе ÑÑÑановиÑÑ Ð½ÐµÐºÐ¾ÑоÑÑе ÑÐµÐ¼Ñ Ð¸Ð· [https://www.mediawiki.org/wiki/Category:All_skins каÑалога Ñем оÑоÑÐ¼Ð»ÐµÐ½Ð¸Ñ ÑайÑа mediawiki.org]:\n:* ÑкаÑав [https://www.mediawiki.org/wiki/Download аÑÑ
ив ÑÑÑановоÑнÑÑ
Ñайлов], коÑоÑÑй ÑодеÑÐ¶Ð¸Ñ Ð½ÐµÑколÑко Ñем оÑоÑÐ¼Ð»ÐµÐ½Ð¸Ñ Ð¸ ÑаÑÑиÑений; Ð²Ñ Ð¼Ð¾Ð¶ÐµÑе ÑкопиÑоваÑÑ Ð¿Ð°Ð¿ÐºÑ skins/
из него;\n:* ÑкаÑав аÑÑ
Ð¸Ð²Ñ Ð¾ÑделÑнÑÑ
Ñем оÑоÑÐ¼Ð»ÐµÐ½Ð¸Ñ Ñ [https://www.mediawiki.org/wiki/Special:SkinDistributor mediawiki.org];\n:* [https://www.mediawiki.org/wiki/Download_from_Git#Using_Git_to_download_MediaWiki_skins иÑполÑзовав Git Ð´Ð»Ñ Ð·Ð°Ð³ÑÑзки Ñем оÑоÑмлениÑ].\n: ÐÑо не должно навÑедиÑÑ Ð²Ð°ÑÐµÐ¼Ñ ÑепозиÑоÑÐ¸Ñ Git, еÑли Ð²Ñ ÑазÑабоÑÑик MediaWiki. См. [https://www.mediawiki.org/wiki/Manual:Skin_configuration Manual:Skin configuration] Ñ Ð¸Ð½ÑоÑмаÑией о Ñом, как вклÑÑиÑÑ ÑÐµÐ¼Ñ Ð¾ÑоÑÐ¼Ð»ÐµÐ½Ð¸Ñ Ð¸ вÑбÑаÑÑ ÑÐµÐ¼Ñ Ð¿Ð¾ ÑмолÑаниÑ.",
"default-skin-not-found-row-enabled": "* $1
/ $2 (вклÑÑено)",
"default-skin-not-found-row-disabled": "* $1
/ $2 (оÑклÑÑено)",
- "mediastatistics": "Ðедиа-ÑÑаÑиÑÑика",
+ "mediastatistics": "СÑаÑиÑÑика медиа",
"mediastatistics-summary": "СÑаÑиÑÑиÑеÑкие даннÑе о ÑипаÑ
загÑÑженнÑÑ
Ñайлов. Ðна вклÑÑÐ°ÐµÑ Ð¸Ð½ÑоÑмаÑÐ¸Ñ ÑолÑко о поÑледниÑ
веÑÑиÑÑ
Ñайлов. Ðолее ÑÑаÑÑе или ÑдалÑннÑе веÑÑии Ñайлов не ÑÑиÑÑваÑÑÑÑ.",
"mediastatistics-nfiles": "$1 ($2%)",
"mediastatistics-nbytes": "$1 {{PLURAL:$1|байÑ|байÑа|байÑ}} ($2; $3%)",
diff --git a/languages/i18n/rue.json b/languages/i18n/rue.json
index 712c93eb24..54bf4fc55e 100644
--- a/languages/i18n/rue.json
+++ b/languages/i18n/rue.json
@@ -542,7 +542,7 @@
"userjspreview": "'''ÐамÑÑайÑе, же ÑеÑÑÑÑÑе а пеÑезеÑаÑе лем наглÑд ваÑого Ñ
оÑноваÑелÑÑкого JavaScript-Ñ, ÑÑÑ Ð½Ðµ бÑв ÑложенÑй!'''",
"sitecsspreview": "'''ÐамÑÑайÑе, же ÑÐ¾Ð±Ñ Ð¿ÐµÑезеÑаÑе лем наглÑд Ñого CSS.'''\n'''ÐÑÑ Ð½Ðµ бÑло Ñложене!'''",
"sitejspreview": "'''ÐамÑÑайÑе, же ÑÐ¾Ð±Ñ Ð¿ÐµÑезеÑаÑе лем наглÑд Ñого JavaScript-Ñ.'''\n'''ÐÑÑ Ð½Ðµ бÑв ÑложенÑй!'''",
- "userinvalidcssjstitle": "'''Увага:''' Тема взглÑÐ´Ñ â$1â не екзÑÑÑÑÑ. Ðе забÑдÑÑе, же Ñ
оÑноваÑелÑÑке .css Ñ .js ÑÐ°Ð¹Ð»Ñ Ñ
оÑнÑÑÑÑ Ð¼Ð°Ð»Ñ Ð¿Ð¸Ñмена, напÑиклад {{ns:user}}:{{BASEPAGENAME}}/vector.css, а не {{ns:user}}:{{BASEPAGENAME}}/Vector.css.",
+ "userinvalidconfigtitle": "'''Увага:''' Тема взглÑÐ´Ñ â$1â не екзÑÑÑÑÑ. Ðе забÑдÑÑе, же Ñ
оÑноваÑелÑÑке .css Ñ .js ÑÐ°Ð¹Ð»Ñ Ñ
оÑнÑÑÑÑ Ð¼Ð°Ð»Ñ Ð¿Ð¸Ñмена, напÑиклад {{ns:user}}:{{BASEPAGENAME}}/vector.css, а не {{ns:user}}:{{BASEPAGENAME}}/Vector.css.",
"updated": "(ÐмÑна Ñложена)",
"note": "'''ÐознаÑка:''' ",
"previewnote": "'''ÐамÑÑайÑе, же Ñо лем наглÑд.'''\nÐмÑÐ½Ñ ÑÑÑ Ð½Ðµ ÑÑÑÑ ÑложенÑ!",
@@ -844,7 +844,7 @@
"prefs-files": "ФайлÑ",
"prefs-custom-css": "ÐлаÑÑнÑй CSS",
"prefs-custom-js": "ÐлаÑÑнÑй JS",
- "prefs-common-css-js": "СдÑлÑне CSS/JS пÑо вÑÑÑÐºÑ ÑÑÑлÑ:",
+ "prefs-common-config": "СдÑлÑне CSS/JS пÑо вÑÑÑÐºÑ ÑÑÑлÑ:",
"prefs-reset-intro": "ÐомоÑов Ñой ÑÑоÑÑÐ½ÐºÑ Ð¼Ð¾Ð¶ÐµÑе вÑÑÑÐºÑ Ð½Ð°ÑÑавлÑÐ½Ñ Ð²ÐµÑнÑÑи на ÑмплÑÑÑÑÐ½Ñ Ð³Ð¾Ð´Ð½Ð¾ÑÑ.\nТоÑÑ Ð¾Ð¿ÐµÑаÑÑÑ Ð½Ðµ годен веÑнÑÑи назад.",
"prefs-emailconfirm-label": "ÐоÑвеÑджÑÐ½Ñ ÐµÐ»ÐµÐºÑÑонÑÑной поÑÑÑ:",
"youremail": "ÐдÑеÑа елекÑÑонÑÑной поÑÑÑ:",
@@ -1073,8 +1073,6 @@
"newpageletter": "Ð",
"boteditletter": "б",
"number_of_watching_users_pageview": "[$1 {{PLURAL:$1|ÑлÑдÑÑÑÑй Ñ
оÑноваÑелÑ|ÑлÑдÑÑÑÑ Ñ
оÑноваÑелÑ|ÑлÑдÑÑÑÑÑ
Ñ
оÑноваÑелÑв}}]",
- "rc_categories": "Ðем з каÑеÒоÑÑй (ÑоздÑлÑÐ²Ð°Ñ Â«|»)",
- "rc_categories_any": "ÐÑдÑ-ÑкÑй",
"rc-change-size-new": "$1 {{PLURAL:$1|байÑt|байÑÑ|байÑÑв}} по змÑнÑ",
"newsectionsummary": "/* $1 */ нова ÑекÑÑÑ",
"rc-enhanced-expand": "ÐказаÑи деÑайлÑ",
diff --git a/languages/i18n/sa.json b/languages/i18n/sa.json
index 666f91a1f9..c2805b247c 100644
--- a/languages/i18n/sa.json
+++ b/languages/i18n/sa.json
@@ -594,7 +594,7 @@
"userjspreview": "à¤à¤¤à¤¤à¥ à¤à¥à¤µà¤²à¤ सदसà¥à¤¯à¤¸à¥à¤¯ JabaScript à¤à¤¤à¥à¤¯à¤¸à¥à¤¯ पà¥à¤°à¤¾à¤à¥à¤¦à¥à¤¶à¥à¤¯à¤ वरà¥à¤¤à¤¤à¥ à¤à¤¤à¤¿ सà¥à¤®à¤°à¤¤à¥ । à¤à¤µà¤¤à¤¾/à¤à¤µà¤¤à¥à¤¯à¤¾ à¤à¥à¤¤à¤¾à¤¨à¤¿ परिवरà¥à¤¤à¤¨à¤¾à¤¨à¤¿ à¤à¤¤à¤µà¤¤à¤¾ न रà¤à¥à¤·à¤¿à¤¤à¤¾à¤¨à¤¿ !",
"sitecsspreview": "à¤à¤¤à¤¤à¥ à¤à¥à¤µà¤²à¤ CSS à¤à¤¤à¥à¤¯à¤¸à¥à¤¯ पà¥à¤°à¤¾à¤à¥à¤¦à¥à¤¶à¥à¤¯à¤ वरà¥à¤¤à¤¤à¥ à¤à¤¤à¤¿ सà¥à¤®à¤°à¤¤à¥ । à¤à¤µà¤¤à¤¾/à¤à¤µà¤¤à¥à¤¯à¤¾ à¤à¥à¤¤à¤¾à¤¨à¤¿ परिवरà¥à¤¤à¤¨à¤¾à¤¨à¤¿ à¤à¤¤à¤µà¤¤à¤¾ न रà¤à¥à¤·à¤¿à¤¤à¤¾à¤¨à¤¿ !",
"sitejspreview": "à¤à¤¤à¤¤à¥ à¤à¥à¤µà¤²à¤ JavaScript à¤à¤¤à¥à¤¯à¤¸à¥à¤¯ पà¥à¤°à¤¾à¤à¥à¤¦à¥à¤¶à¥à¤¯à¤ वरà¥à¤¤à¤¤à¥ à¤à¤¤à¤¿ सà¥à¤®à¤°à¤¤à¥ । à¤à¤µà¤¤à¤¾/à¤à¤µà¤¤à¥à¤¯à¤¾ à¤à¥à¤¤à¤¾à¤¨à¤¿ परिवरà¥à¤¤à¤¨à¤¾à¤¨à¤¿ à¤à¤¤à¤µà¤¤à¤¾ न रà¤à¥à¤·à¤¿à¤¤à¤¾à¤¨à¤¿ !",
- "userinvalidcssjstitle": "'''पà¥à¤°à¥à¤µà¤¸à¥à¤à¤¨à¤¾:''' \"$1\" à¤à¤¤à¤¿ तà¥à¤µà¤à¥ न विदà¥à¤¯à¤¤à¥à¥¤\nयà¥à¤à¤à¤ªà¤°à¤¿à¤µà¤°à¥à¤¤à¤¿à¤¤à¥ .css, .js सà¤à¥à¤à¤¿à¤à¥ लà¤à¥-à¤à¤à¥à¤à¥à¤²à¤µà¤°à¥à¤£à¤®à¤¾à¤²à¤¾à¤¯à¤¾à¤ वरà¥à¤£à¥à¤ लिà¤à¥à¤¯à¥à¤¤à¥ । à¤à¤¦à¤¾. {{ns:user}}:Foo/Vector.css à¤à¤µà¤ न लà¥à¤à¤¨à¥à¤¯à¤®à¥ । लà¤à¥à¤µà¤°à¥à¤£à¥à¤ {{ns:user}}:Foo/vector.css à¤à¤µà¤ लà¥à¤à¤¨à¥à¤¯à¤®à¥ ।",
+ "userinvalidconfigtitle": "'''पà¥à¤°à¥à¤µà¤¸à¥à¤à¤¨à¤¾:''' \"$1\" à¤à¤¤à¤¿ तà¥à¤µà¤à¥ न विदà¥à¤¯à¤¤à¥à¥¤\nयà¥à¤à¤à¤ªà¤°à¤¿à¤µà¤°à¥à¤¤à¤¿à¤¤à¥ .css, .js सà¤à¥à¤à¤¿à¤à¥ लà¤à¥-à¤à¤à¥à¤à¥à¤²à¤µà¤°à¥à¤£à¤®à¤¾à¤²à¤¾à¤¯à¤¾à¤ वरà¥à¤£à¥à¤ लिà¤à¥à¤¯à¥à¤¤à¥ । à¤à¤¦à¤¾. {{ns:user}}:Foo/Vector.css à¤à¤µà¤ न लà¥à¤à¤¨à¥à¤¯à¤®à¥ । लà¤à¥à¤µà¤°à¥à¤£à¥à¤ {{ns:user}}:Foo/vector.css à¤à¤µà¤ लà¥à¤à¤¨à¥à¤¯à¤®à¥ ।",
"updated": "(नवà¥à¤à¥à¤¤à¤®à¥ (updated))",
"note": "'''सà¥à¤à¤¨à¤¾:'''",
"previewnote": "à¤à¤¤à¤¤à¥ à¤à¥à¤µà¤²à¤ पà¥à¤°à¤¾à¤à¥à¤¦à¥à¤¶à¥à¤¯à¤ वरà¥à¤¤à¤¤à¥ à¤à¤¤à¤¿ सà¥à¤®à¤°à¤¤à¥ । à¤à¤µà¤¤à¤¾/à¤à¤µà¤¤à¥à¤¯à¤¾ à¤à¥à¤¤à¤¾à¤¨à¤¿ परिवरà¥à¤¤à¤¨à¤¾à¤¨à¤¿ à¤à¤¤à¤µà¤¤à¤¾ न रà¤à¥à¤·à¤¿à¤¤à¤¾à¤¨à¤¿ !",
@@ -930,7 +930,7 @@
"prefs-files": "सà¤à¥à¤à¤¿à¤à¤¾à¤",
"prefs-custom-css": "सà¥à¤µà¤¾à¤¨à¥à¤à¥à¤²à¤¸à¤®à¥à¤ªà¤¾à¤¦à¤¿à¤¤à¤ CSS",
"prefs-custom-js": "सà¥à¤µà¤¾à¤¨à¥à¤à¥à¤²à¤¸à¤®à¥à¤ªà¤¾à¤¦à¤¿à¤¤à¤ JavaScript",
- "prefs-common-css-js": "सरà¥à¤µà¤¾à¤¸à¤¾à¤ तà¥à¤µà¤à¤¾à¤ (of skins) à¤à¥à¤¤à¥ CSS/JavaScript:",
+ "prefs-common-config": "सरà¥à¤µà¤¾à¤¸à¤¾à¤ तà¥à¤µà¤à¤¾à¤ (of skins) à¤à¥à¤¤à¥ CSS/JavaScript:",
"prefs-reset-intro": "à¤à¤µà¤¾à¤¨à¥/à¤à¤µà¤¤à¥ à¤
सà¥à¤¯ पà¥à¤·à¥à¤ सà¥à¤¯ साहायà¥à¤¯à¥à¤¨ सà¥à¤µà¤¸à¥à¤¯ à¤à¤·à¥à¤à¤¤à¤®à¤µà¤¿à¤à¤²à¥à¤ªà¤¾à¤¨à¥ मà¥à¤²à¤µà¤¿à¤à¤¿-विà¤à¤²à¥à¤ªà¤¸à¤¦à¥à¤¶à¤ सà¥à¤¥à¤¾à¤ªà¤¯à¤¿à¤¤à¥à¤ (à¤à¤°à¥à¤¤à¥à¤) शà¤à¥à¤¨à¥à¤¤à¤¿ ।\nपरनà¥à¤¤à¥ ततठà¤à¤µà¤¾à¤¨à¥/à¤à¤µà¤¤à¥ पà¥à¤°à¥à¤µà¤µà¤¤à¥ सà¥à¤¥à¤¿à¤¤à¤¿à¤ पà¥à¤°à¤¾à¤ªà¥à¤¤à¥à¤ न शà¤à¥à¤·à¥à¤¯à¤¤à¤¿ ।",
"prefs-emailconfirm-label": "वि-पतà¥à¤°à¤ दà¥à¤¢à¥à¤à¥à¤°à¤¿à¤¯à¤¤à¤¾à¤®à¥ :",
"youremail": "वि-पतà¥à¤°à¤¸à¤à¥à¤à¥à¤¤à¤ :",
@@ -1176,8 +1176,6 @@
"newpageletter": "(नवà¥à¤¨à¤®à¥)",
"boteditletter": "(बà¥à¤à¥)",
"number_of_watching_users_pageview": "[$1 à¤
वलà¥à¤à¤¯à¤¤à¤¿ {{PLURAL:$1|सदसà¥à¤¯à¤|सदसà¥à¤¯à¤¾à¤}}]",
- "rc_categories": "वरà¥à¤à¤¾à¤¨à¥ नियतà¥à¤à¤°à¥à¤¤à¥ ।",
- "rc_categories_any": "à¤à¤¶à¥à¤à¤¿à¤¤à¥",
"rc-change-size-new": "$1 {{PLURAL:$1|byte|bytes}} परिवरà¥à¤¤à¤¨à¤ªà¤¶à¥à¤à¤¾à¤¤à¥ ।",
"newsectionsummary": "/* $1 */ नवà¥à¤¨à¤µà¤¿à¤à¤¾à¤à¤",
"rc-enhanced-expand": "विवरणानि दà¥à¤¶à¥à¤¯à¤¨à¥à¤¤à¤¾à¤®à¥",
diff --git a/languages/i18n/sah.json b/languages/i18n/sah.json
index 55494e24b8..2af51314f6 100644
--- a/languages/i18n/sah.json
+++ b/languages/i18n/sah.json
@@ -655,7 +655,7 @@
"userjspreview": "'''УмнÑма: Ð±Ñ JavaScript ÑÑÑгÑÑÑÑÑÑ ÑÑÑ, ÑлаÑÑппÑÑÑÒ¥ бигÑÑгÑÑÐ¸Ð»Ð»Ñ Ð¸Ð»Ð¸Ðº!'''",
"sitecsspreview": "'''ÐÑ CSS бигÑÑгÑппÑÐºÐºÑ ÐºÓ©ÑÓ© олоÑоÑгÑн ÑмнÑма.'''\n'''ÐигÑÑгÑÑÐ¸Ð»Ð»Ñ Ð¸Ð»Ð¸Ðº!'''",
"sitejspreview": "'''ÐÑ JavaScript-кÑодÑн бигÑÑгÑппÑÐºÐºÑ ÐºÓ©ÑÓ© олоÑоÑгÑн ÑмнÑма.'''\n'''ÐигÑÑгÑÑÐ¸Ð»Ð»Ñ Ð¸Ð»Ð¸Ðº!'''",
- "userinvalidcssjstitle": "'''ÐолÒой:''' ÐÑ ÑиÑÐ¼Ñ Â«$1» ÑÑоÑ
. ÐÑÑÑааÑÑÑ .css и .js ÑиÑÑйдÑÑÑ ÐºÑÑа бÑÑкÑбаннан ÑÑÑÑллÑоÑ
ÑааÑ
ÑаÑ, Ñ
олобÑÑ Â«{{ns:user}}:ÐÑÑÑгÑн/vector.css», маннÑк бÑолÑо ÑÑоÑ
ÑааÑ
«{{ns:user}}:ÐÑÑÑгÑн/Vector.css».",
+ "userinvalidconfigtitle": "'''ÐолÒой:''' ÐÑ ÑиÑÐ¼Ñ Â«$1» ÑÑоÑ
. ÐÑÑÑааÑÑÑ .css и .js ÑиÑÑйдÑÑÑ ÐºÑÑа бÑÑкÑбаннан ÑÑÑÑллÑоÑ
ÑааÑ
ÑаÑ, Ñ
олобÑÑ Â«{{ns:user}}:ÐÑÑÑгÑн/vector.css», маннÑк бÑолÑо ÑÑоÑ
ÑааÑ
«{{ns:user}}:ÐÑÑÑгÑн/Vector.css».",
"updated": "(СаҥаÑдÑлÑнна)",
"note": "'''Ð¥Ð¾Ñ Ð±ÑһааÑÑÑ:'''",
"previewnote": "'''ÐÑ Ð±Ð°ÑÑллаан көÑÒ¯Ò¯ ÑÑÑ.'''\nÐÑÑн ÑлаÑÑÑÑÑ Ð±Ð¸Ð³ÑÑгÑÑÐ¸Ð»Ð»Ñ Ð¸Ð»Ð¸Ðº!",
@@ -1022,7 +1022,7 @@
"prefs-files": "ÐилÑлÑÑ",
"prefs-custom-css": "ÐÑÐ¹Ñ CSS",
"prefs-custom-js": "ÐÑÐ¹Ñ JS",
- "prefs-common-css-js": "ÐаÑÑ ÑиÑмÑлÑÑÐ³Ñ Ð±Ð¸Ð¸Ñ CSS/JS",
+ "prefs-common-config": "ÐаÑÑ ÑиÑмÑлÑÑÐ³Ñ Ð±Ð¸Ð¸Ñ CSS/JS",
"prefs-reset-intro": "ÐÑ ÑиÑÑй көмөÑүнÑн ÑÑÑÑоÑÑÑлаÑгÑн ÑаҥаÑÑан ÑÑÑÑоÑÐ°Ñ ÑÑÑÑкка ÑөннөÑÒ¯Ó©Ñ
Ñ
үн Ñөп.\nÐÐ°Ð½Ñ Ð±Ð¸Ð³ÑÑгÑÑÑÑÑ
Ñ
Ð¸Ð½Ñ Ð±Ð¸Ð»Ð¸Ð³Ð¸Ð½ Ð±Ð°Ð°Ñ ÑÑÑÑоÑÑÑлаÑÑ Ð´ÑÐ±Ð¸Ð³Ð¸Ñ ÑÓ©ÑгүппÑккин.",
"prefs-emailconfirm-label": "Ðл. поÑÑÐ°Ð½Ñ Ð±Ð¸Ð³ÑÑгÑÑии:",
"youremail": "E-mail-ÑÒ¥:",
@@ -1455,8 +1455,6 @@
"newpageletter": "С",
"boteditletter": "Ñ",
"number_of_watching_users_pageview": "[$1 кÑÑÐ¸Ð¸Ñ {{PLURAL:$1|кÑÑÑааÑÑÑ|кÑÑÑааÑÑÑлаÑ}}]",
- "rc_categories": "ÐÑ ÑÑÑ ÐºÐ°ÑегоÑиÑлаÑÑан (аÑааÑÐ°Ñ Ð±ÑÐ»Ð¸Ñ \"|\")",
- "rc_categories_any": "ТалÑллÑбÑÑÑан Ñ
айаÑа баÒаÑаÑ",
"rc-change-size-new": "УлаÑÑÑÑÑ ÐºÑÑмÑйÑ: $1 баайÑ",
"newsectionsummary": "/* $1 */ Ñаҥа ÑиÑкÑийÑ",
"rc-enhanced-expand": "Сиһилии көÑдөÑ",
diff --git a/languages/i18n/sat.json b/languages/i18n/sat.json
index d5cb44a4f7..54270ab510 100644
--- a/languages/i18n/sat.json
+++ b/languages/i18n/sat.json
@@ -18,51 +18,51 @@
"Ramjit Tudu"
]
},
- "tog-underline": "Joá¹aoko latarre dag udugoḱma:",
- "tog-hideminor": "Nitaḱ bodolaḱre huá¸iá¹
kạmi danaá¹
me",
+ "tog-underline": "ᱡá±á±±á±á±² á±á±á±á±á±¨á±¨á±® ᱫá±á±á±½ ᱩᱫᱩá±á±½á±¢á±®:",
+ "tog-hideminor": "ᱱᱤá±á±á± á±µá±á±«á±á±á±á±á±¨á±® ᱦᱩᱰᱤᱧ á±¥á±á±¯á±²á±á±£ ᱩᱠᱩá±á±¢á±®",
"tog-hidepatrolled": "ᱡá±á±²á±á±£á± á±á±± á±¥á±á±¯á±²á±á±£á± á± á±±á±á±£á± á±µá±á±«á±á± á± á±·á±á±± ᱩᱠᱩá±á±¢á±®",
"tog-newpageshidepatrolled": "á±±á±á±£á± á±¥á±á±¦á±´á± á±á±á±¹á±á± á±á±¹ á± á±·á±á±± ᱵᱤᱰá±á±¹á±£á± á±á±± á±¥á±á±¦á±´á±á± ᱠᱩᱠᱩá±á±¢á±®",
"tog-hidecategorization": "á±¥á±á±¦á±´á± ᱨᱮᱱá±á± á±á±·á±á± ᱠᱠᱫá±á±±á±á±",
- "tog-extendwatchlist": "Khạli nitoḱ bodolko do baá¹
, joto bodolkodo Åeloḱ tạlikare phaylaomẽ.",
+ "tog-extendwatchlist": "á± á±·á±á±¹á±á±¤ ᱱᱮá±á±á± á±µá±á±«á±á±á±á± ᱫᱠᱵá±á±, ᱡá±á±á± á±µá±á±«á±á±á±á± á±á±® ᱧᱮá±á±á± á±á±á±¹á±á± á±á±¹á±¨á±® ᱯᱷá±á±á±á±á±£á±¢á±®",
"tog-usenewrc": "Nahaḱ bodolakanaḱko ar nojor reaḱ pahaá¹are bodolaḱko mitÌsão ÅelÅam",
- "tog-numberheadings": "Mukhiạ kathako do actege piá¹hipiá¹hite sajaḱma",
+ "tog-numberheadings": "ᱢᱩᱬᱩᱠᱠá±á±á±·á±á± ᱩ ᱫᱠá±á±ªá±á±®á±á±® ᱯᱤᱲᱦᱤ ᱯᱤᱲᱦᱤá±á±® á±¥á±á±¡á±á±á±¢á±",
"tog-showtoolbar": "ᱦá±á±¹á±á±¤á±á±á±¹á±¨ á± á±á±¸á± ᱩᱫᱩá±á±½ ᱢᱮ",
"tog-editondblclick": "Bar dhao lin kate sakam torjomão reaḱ ạidari emogoḱma",
"tog-editsectiononrightclick": "Pahaá¹a reaḱ pahaá¹a guá¹kathare jojom seÄ lin hotete
pahaá¹a sompadon lạgitte ektiạr em hoyoḱma (JavaScript)",
- "tog-watchcreations": "IÅaḱ tear sakam ar rakaá¹ páelko iÅaḱ Åelogoḱ tạlikare Åeloḱ ma",
- "tog-watchdefault": "IÅaḱ purạoakanaḱ sakam ar phayelko do iÅaḱ Åeloḱ tạlikare joá¹aoḱma",
- "tog-watchmoves": "IÅaḱ ocoḱ sakam ar phayelko inyaḱ nojor sakamre joá¹aḱma",
- "tog-watchdeletion": "Sakamko toÅgeyme IÅaḱ Åeloḱ tạlika khon getÌ giá¸ikam",
- "tog-minordefault": "Etohoá¹re sanam joá¹ao purạoanaḱko do bekor unuduḱ lekate cinhạkma",
- "tog-previewontop": "Joá¹ao bakso purạo lahare unuduḱ hoyoḱma",
- "tog-previewonfirst": "Pạhil joá¹ao purạore unuduḱ hoyoḱma",
+ "tog-watchcreations": "á±¥á±á±¦á±´á±á± ᱩ ᱥᱮá±á±®á±«á±¢á±® ᱤᱧá±á± á±á±®á±á±á±¨ á±á±¨ ᱨᱮᱫᱠᱩ ᱤᱧá±á± ᱧᱮá±á±á± á±á±á±¹á±á± á±á±¹á±¨á±® ᱨá±á± á±á±µ ᱢᱮ",
+ "tog-watchdefault": "ᱤᱧá±á± á±¥á±á±¯á±²á±á±£ ᱧᱮá±á±á± á±á±á±¹á±á± á±á±¹á±¨á±® á±¥á±á±¦á±´á±á± ᱩ á±á±¨ ᱨᱮᱫᱠᱩ ᱥᱮá±á±®á±« ᱢᱮ",
+ "tog-watchmoves": "ᱤᱧá±á± á±¥á±á±¯á±²á±á±£ ᱧᱮá±á±á± á±á±á±¹á±á± á±á±¹á±¨á±® á±¥á±á±¦á±´á±á± ᱩ á±á±¨ ᱨᱮᱫᱠᱩ á±á±ªá±á±á±½ ᱢᱮ",
+ "tog-watchdeletion": "ᱤᱧá±á± á±¥á±á±¯á±²á±á±£ ᱧᱮá±á±á± á±á±á±¹á±á± á±á±¹á±¨á±® á±¥á±á±¦á±´á±á± ᱩ á±á±¨ ᱨᱮᱫᱠᱩ á±á±®á±« á±á±¤á±°á±¤á± ᱢᱮ",
+ "tog-minordefault": "á±®á±á±¦á±á±µá±¨á±® á±¥á±á±±á±á±¢ á±¥á±á±¯á±²á±á±£á± ᱩ ᱦᱩᱰᱤᱧ á±á±®á± á±á±á±® ᱪᱤᱱᱦá±á±¹ á± á±á± ᱢᱮ",
+ "tog-previewontop": "á±¥á±á±¯á±²á±á±£ á±µá±á± ᱥᱳ á±á±á±¦á±á±¨á±® ᱩᱱᱩᱫᱩᱠᱩᱫᱩá±á±½ ᱢᱮ",
+ "tog-previewonfirst": "ᱯá±á±¹á±¦á±¤á± á±¥á±á±¯á±²á±á±£ ᱨᱮ ᱩᱱᱩᱫᱩᱠᱩᱫᱩá±á±½ ᱢᱮ",
"tog-enotifwatchlistpages": "E-mailạÅme one tinre inÌaḱ nÌeloḱ tạlika do bodolok",
- "tog-enotifusertalkpages": "E-mailạnÌme one tinre inÌaḱ roá¹aḱ laá¹caá¹ sakam do bodoloḱa",
+ "tog-enotifusertalkpages": "ᱤ-ᱢᱮᱠá±á±¹á±§á±¢á±® á±á±¤á±±á±¨á±® ᱤᱧá±á± ᱨá±á±² á±¥á±á±¦á±´á± á±µá±á±«á±á±á±-á±",
"tog-enotifminoredits": "E-mailạnÌme arhõ one tinre inÌaḱ sakamre huá¸iÅ kạmi hoyoḱ",
- "tog-enotifrevealaddr": "Dhạrwạk reaḱ sakamre iÅaḱ e-mail á¹hikạna sodor hoyoḱma",
- "tog-shownumberswatching": "Åelok laá¹caá¹koaḱ songkha uduḱme",
+ "tog-enotifrevealaddr": "á±°á±·á±á±¹á±¨á±£á±á± á±¥á±á±¦á±´á±á±¨á±® ᱤᱧá±á± e-mail ᱴᱷᱤᱠᱱᱠᱥá±á±«á±á±¨ ᱦᱩá±á±©á± á±¢á±",
+ "tog-shownumberswatching": "ᱧᱮá±á±á± ᱵᱮᱵá±á±¦á±á±¨á±¤á±¡ ᱠᱯᱣá±á± á±®á±á±®á± ᱩᱫᱩá±á±½ ᱢᱮ",
"tog-oldsig": "á±á±¢á±á± ᱥᱩᱦᱤ:",
- "tog-fancysig": "Signạcar do wikiá¹esk hisạbte moneyemẽ (jahan acte hoyoḱ joá¹ao bạgikate)",
+ "tog-fancysig": "ᱥᱩᱦᱤ ᱫᱠᱣᱤᱠᱤ á±á± ᱦᱤᱥá±á±¹á±µá±á±® á±¢á±á±±á±®á±á±¢á±® (á±á±ªá±á±® ᱦᱩá±á± á±á±± ᱡá±á±±á±á±² á±µá±á±¹á±á±¤á± á±á±á±®)",
"tog-uselivepreview": "JewetÌ Åeloḱ beoharme (JavaScript jaruá¹ menaḱa)",
- "tog-forceeditsummary": "Khạli sompadon guá¹katha em oktere iÅ baá¸ae ocoyiÅ hoyoḱma",
- "tog-watchlisthideown": "Åeloḱ talikare iÅaḱ joá¹ao kamiko danaá¹
me",
- "tog-watchlisthidebots": "Boá¹reaḱ sompadon kạmiko do Åeloḱ tạlika khon danaá¹
mẽ",
- "tog-watchlisthideminor": "Åeloḱ tạlikare iÅak huá¸iá¹
joá¹ao kạmiko danaá¹
me",
- "tog-watchlisthideliu": "Åeloḱ tạlikareaḱ ekauná¹ bolok beoharkoaḱ sompadon danaá¹
hoyoḱma",
- "tog-watchlisthideanons": "Åeloḱ tạlikare baá¹
ÅutamaniÄ beohariÄaḱ sompadonko danaá¹
hoyoḱma",
- "tog-watchlisthidepatrolled": "Biá¸áº¡en sompadonko do Åeloḱ sakamre danaá¹
mẽ",
+ "tog-forceeditsummary": "á± á±·á±á±¹á±á±¤ á±¥á±á±¯á±²á±á±£ á±á±¤á±´ á± á±á±á±·á± ᱮᱢ á±á± á±á±á±¨á±® ᱤᱧ á±µá±á±°á±á± á±á±ªá±á±á±¤á±§ ᱦᱩá±á±©á±á±¢á±",
+ "tog-watchlisthideown": "ᱧᱮá±á±á± á±á±á±¹á±á± á±á±¹ á± á±·á±á±± ᱤᱧá±á± á±¥á±á±¯á±²á±á±£á± ᱩ ᱩᱠᱩá±á±¢á±®",
+ "tog-watchlisthidebots": "ᱧᱮá±á±á± á±á±á±¹á±á± á±á±¹ á± á±·á±á±± á±µá±á±´ á±¥á±á±¯á±²á±á±£á± ᱩ ᱩᱠᱩá±á±¢á±®",
+ "tog-watchlisthideminor": "ᱧᱮá±á±á± á±á±á±¹á±á± á±á±¹ á± á±·á±á±± ᱦᱩᱰᱤᱧ á±¥á±á±¯á±²á±á±£á± ᱩ ᱩᱠᱩá±á±¢á±®",
+ "tog-watchlisthideliu": "ᱧᱮá±á±á± á±á±á±¹á±á± á±á±¹ á± á±·á±á±± á±µá±á±á± á±á± á±á±± ᱵᱮᱵᱦá±á±¨á±¤á±á±á± á±¥á±á±¯á±²á±á±£á± ᱩ ᱩᱠᱩá±á±¢á±®",
+ "tog-watchlisthideanons": "ᱧᱮá±á±á± á±á±á±¹á±á± á±á±¹ á± á±·á±á±± á±µá±á± á±µá±á±á± á±á± á±á±± ᱵᱮᱵᱦá±á±¨á±¤á±á±á± á±¥á±á±¯á±²á±á±£á± ᱩ ᱩᱠᱩá±á±¢á±®",
+ "tog-watchlisthidepatrolled": "ᱧᱮá±á±á± á±á±á±¹á±á± á±á±¹ á± á±·á±á±± ᱵᱤᱰá±á±¹á±£á±®á±± á±¥á±á±¯á±²á±á±£á± ᱩ ᱩᱠᱩá±á±¢á±®",
"tog-watchlisthidecategorization": "á±¥á±á±¦á±´á± ᱨᱮᱱá±á± á±á±·á±á± ᱠᱠᱫá±á±±á±á±",
- "tog-ccmeonemails": "E-mail reaḱ kopy kulạÅme Eá¹aḱ laá¹caá¹ko kulakome",
- "tog-diffonly": "Farak reaḱ latar sakamre babotko baá¹
udugoḱma",
- "tog-showhiddencats": "Danaá¹
rokom sokomko uduḱmẽ",
+ "tog-ccmeonemails": "E-mail ᱠᱩ ᱨᱮá±á±á± á± á±á±¯á±¤á± ᱩ ᱠᱩá±á±¢á±® ᱡá±á±¸á±¦á±á±¸ ᱤᱧ ᱮᱴá±á± ᱵᱮᱵᱦá±á±¨á±¤á±¡á± ᱩ ᱴᱷᱮᱱᱤᱧ ᱠᱩᱠá±á±®",
+ "tog-diffonly": "ᱯᱷá±á±¨á±á± ᱨᱮá±á±á± á±á±á±á±á±¨ á±¥á±á±¦á±´á±á±¨á±® á±µá±á±µá±á±á± ᱩ á±µá±á± ᱩᱫᱩá±á±á± á±¢á±",
+ "tog-showhiddencats": "ᱩᱠᱩ á±á±·á±á± ᱠᱩ ᱩᱫᱩá±á±½á±¢á±®",
"tog-norollbackdiff": "rollback tayomte farak alom uduga",
- "underline-always": "Sanam okte",
- "underline-never": "Tis hõ banÌ",
+ "underline-always": "á±¥á±á±¨á± á±á±·á±á±¹á±²á±¤á±¡",
+ "underline-never": "á±á±¤á±¥ ᱦá±á±¸ á±µá±á±",
"underline-default": "Browjarre cetlekate em hoy akana",
- "editfont-style": "Sompadon á¹hại reaḱ foná¹ sá¹ayel:",
- "editfont-monospace": "MonoespeÄ foná¹",
- "editfont-sansserif": "Sans-serif foná¹",
- "editfont-serif": "Serif foná¹",
+ "editfont-style": "á±¥á±á±¯á±²á±á±£ ᱡá±á±á± ᱨᱮᱱá±á± ᱯᱷá±á±±á±´ ᱮᱥᱴá±á±á±¤á±:",
+ "editfont-monospace": "Monospaced font",
+ "editfont-sansserif": "Sans-serif font",
+ "editfont-serif": "Serif font",
"sunday": "ᱥᱤᱸá±á±® á±¢á±á±¦á±á±¸",
"monday": "á±á±á±® á±¢á±á±¦á±á±¸",
"tuesday": "á±µá±á±á±® á±¢á±á±¦á±á±¸",
@@ -127,63 +127,63 @@
"december-date": "ᱰᱤᱥᱮᱢᱵá±á±¨ $1",
"pagecategories": "{{PLURAL:$1|á±á±·á±á± |á±á±·á±á± ᱠᱩ}}",
"category_header": "á±á±·á±á± ᱨᱮᱱ á±¥á±á±¦á±´á±á±á±© \"$1\"",
- "subcategories": "Huá¸iÅ rokom sokomko",
- "category-media-header": "\"$1\" babot reaḱ rokom sokomte emen meá¸iya rẽtko",
+ "subcategories": "ᱦᱩᱰᱤᱧ á±á±·á±á± ᱠᱩ",
+ "category-media-header": "\"$1\" á±µá±á±µá±á± ᱨᱮá±á±á± ᱢᱤᱰᱤá±á± á±á±·á±á± ",
"category-empty": "á±±á±á±£á± á±á±·á±á± ᱨᱮ ᱱᱮá±á±á± ᱩᱱᱩᱫᱩᱠᱥá±á±¦á±´á±á± ᱠᱥᱮ ᱢᱤᱰᱤá±á± á±µá±á±±á±©á±-á±á±¾",
"hidden-categories": "{{PLURAL:$1|ᱫá±á±±á±á± á±á±·á±á± |ᱫá±á±±á±á± á±á±·á±á± ᱠᱩ}}",
- "hidden-category-category": "Uku akan rokom sokom ko",
- "category-subcat-count": "{{PLURAL:$2| keá¹agorire eken tayom hudiÅkeá¹agori menaḱa. |Noa keá¹agorire tayom menaḱa {{PLURAL:$1 hudiÅkeá¹agoriko}}, jotokote $2}}",
- "category-subcat-count-limited": "Noa rokom sokomre latar reaḱ {{PLURAL:$1 gan kạá¹ic rokom sokom $1gan kạtic rokom sokom menaḱa}}",
+ "hidden-category-category": "ᱩᱠᱩ á±á±·á±á± ᱠᱩ",
+ "category-subcat-count": "{{PLURAL:$2| á±±á±á±£á± á±á±·á±á± ᱨᱮ á±±á±á±£á±á± ᱩ ᱦᱩᱰᱤᱧ á±á±·á±á± ᱠᱩ ᱢᱮᱱá±á±-á±|á±±á±á±£á± á±á±·á±á± ᱨᱮ ᱢᱮᱱá±á±-á± {{PLURAL:$1|ᱦᱩᱰᱤᱧ á±á±·á±á± ᱠᱩ}}, ᱡá±á±á±á± á±á±á±® $2}}",
+ "category-subcat-count-limited": "á±±á±á±£á± á±á±·á±á± ᱨᱮᱫᱠᱱá±á±£á±á± ᱩ {{PLURAL:$1 á±á±á±± ᱦᱩᱰᱤᱧ á±á±·á±á± $1 á±á±á±± ᱦᱩᱰᱤᱧ á±á±·á±á± ᱠᱩ ᱢᱮᱱá±á±-á±}}",
"category-article-count": "{{PLURAL:$2| á±±á±á±£á± á±á±·á±á± ᱨᱮᱫᱠᱮᱠᱮᱱ á±á±á±á±á±¢á±á±®á±±á±á± á±¥á±á±¦á±´á± ᱢᱮᱱá±á±-á±á±¾| á±á±á±á±á±¢ {{PLURAL:$2| á±¥á±á±¦á±´á± ᱫᱠ|$1 á±¥á±á±¦á±´á±á± á± á± á±á±±á±}} ᱱᱤá±á±á±¹ á±á±·á±á± ᱨᱮ, á±¥á±á±±á±á±¢á± á±á±á±® ᱦᱩá±á±©á± á± á±á±±á± $2 á±¾}}",
- "category-article-count-limited": "Noa {{PLURAL:$1 sakam sakamko}} rokom sokomre menaḱa.",
+ "category-article-count-limited": "á±±á±á±£á± {{PLURAL:$1 á±¥á±á±¦á±´á± á±¥á±á±¦á±´á±á± ᱩ}} á±á±·á±á± ᱨᱮ ᱢᱮᱱá±á±-á±á±¾",
"category-file-count": "{{PLURAL:$2|á±±á±á±£á± á±á±·á±á± ᱨᱮá±á±á± ᱩᱱᱩᱫᱩᱠᱫᱠᱮᱠᱮᱱ ᱯá±á±¸á±¡á±á±¸ ᱨᱮᱫ á±á±®á±¾| á±±á±á±£á± ᱯá±á±¸á±¡á±á±¸ \n{{PLURAL:$1|ᱨᱮᱫ ᱫá±|$1 ᱨᱮᱫ ᱫá±á± á±}} ᱱᱤá±á±á±¹ á±á±·á±á± ᱨᱮ $2 ᱡá±á±á±á±á±®á±¾}}",
- "category-file-count-limited": "Latar reaḱ {{PLURAL:$1 rẽt rẽtko}} noa rokom sokomre menaḱa.",
- "listingcontinuesabbrev": "Calaḱa",
+ "category-file-count-limited": "á±±á±á±£á± {{PLURAL:$1 ᱨᱮᱫ ᱨᱮᱫᱠᱩ }} á±á±·á±á± ᱨᱮ ᱢᱮᱱá±á±-á±á±¾",
+ "listingcontinuesabbrev": "ᱪá±á±á±á± á± á±á±±á±",
"index-category": "ᱩᱱᱩᱫᱩá±-á±á±± á±¥á±á±¦á±´á±á± á±",
"noindex-category": "ᱩᱱᱩᱫᱩᱠᱵá±á±¹á±±á±©á±-á±á±± á±¥á±á±¦á±´á±á± á±",
"broken-file-category": "ᱨá±á±¹á±¯á±©á±« ᱨᱮᱫ ᱡá±á±±á±á±²á± ᱩ á±¥á±á±á±á±« á±¥á±á±¦á±´á±á± á±",
- "about": "Lạgitte, Lạgti",
+ "about": "á±á±á±¹á±á±¤á±",
"article": "ᱩᱱᱩᱫᱩᱠᱥá±á±¦á±´á±",
"newwindow": "(á±±á±á±£á± ᱡá±á±±á±á±á±¨á±® ᱡᱷᱤᱡ ᱢᱮ)",
"cancel": "á±µá±á±«á±½",
- "moredotdotdot": "Aema",
+ "moredotdotdot": "á±µá±á±¹á±²á±á±¤...",
"morenotlisted": "á±±á±á±£á± á±á±á±¹á±á± á±á±¹ ᱫᱠᱯá±á±¥á±®á±¡ á±á±«á±·á± á±á±®á±á±á±¾",
"mypage": "á±¥á±á±¦á±´á±",
"mytalk": "ᱨá±á±²",
"anontalk": "ᱨá±á±²",
"navigation": "á±á±¹á±ªá±©á±¨á±µá±á±²á±",
"and": " á±á±¨",
- "faq": "Baá¸ae kupuliko",
- "actions": "Kạmi",
+ "faq": "FAQ",
+ "actions": "á± á±á±¹á±¢á±¤á± ᱩ",
"namespaces": "ᱧᱤá±á±©á±¢ ᱡá±á±á±",
"variants": "ᱮᱴá±á±á± á±³",
"navigation-heading": "á±á±ªá±©á±¨á±µá±á±²á± ᱢᱮᱱᱩ",
- "errorpagetitle": "vul",
- "returnto": "$1 te ruar-rok' me",
+ "errorpagetitle": "ᱦᱩᱲá±á±¹á±",
+ "returnto": "$1 á±á±® ᱨᱩá±á±á±¹á±²á±á± ᱢᱮ",
"tagline": " {{SITENAME}} á± á±·á±á±±",
"help": "á±á±á±¸á±²á±á±¸",
"search": "ᱥᱮᱸᱫᱽᱨá±",
"searchbutton": "ᱥᱮᱸᱫᱽᱨá±",
- "go": "Calaḱme",
+ "go": "ᱪá±á±á±á± ᱢᱮ",
"searcharticle": "ᱪá±á±á±á± ᱢᱮ",
"history": "á±¥á±á±¦á±´á± á±±á±á±á±á±¢",
"history_short": "á±±á±á±á±á±¢",
"history_small": "á±±á±á±á±á±¢",
- "updatedmarker": "IÅaḱ mucạt hiripor khon nitaḱ halot",
+ "updatedmarker": "ᱤᱧá±á± ᱢᱩᱪá±á±¹á± ᱦᱤᱨᱤᱯá±á±¨ á± á±·á±á±± ᱱᱤá±á±á± ᱦá±á±á±á±",
"printableversion": "ᱪᱷá±á±¯á± á±á±á±±á±á± á±á±°á±á±«",
"permalink": "á±á±¤á±¨á±®á±¡á±©á±á±® ᱡá±á±±á±á±²",
- "print": "Chapa",
+ "print": "ᱪᱷá±á±¯á±",
"view": "ᱩᱰᱩá±á±½á±¢á±®",
"view-foreign": "$1 ᱨᱮ ᱧᱮᱠᱢᱮ",
"edit": "á±¥á±á±¯á±²á±á±£",
"create": "á±á±®á±á±á±¨",
"create-local": "ᱢᱮᱥá±á±á±¢á±® á± á±á±á±·á± á± á±",
"delete": "á±á±®á±« á±á±¤á±°á±¤",
- "undelete_short": "Baá¹
getgiá¸ilena {{PLURAL:$1 1á¹en joá¹ao $ joá¹aoko}}",
- "viewdeleted_short": "{{PLURAL:$1 gan ocoḱ sompadok $1 gan ocoḱ sompadon}} udugmẽ",
- "protect": "banchao'",
- "protect_change": "Judạ",
- "unprotect": "Bodol banÌcao",
+ "undelete_short": "á±µá±á± á±á±®á±« á±á±¤á±°á±¤á±á±®á±±á± {{PLURAL:$1 ᱢᱤᱫᱴᱮᱱ ᱡá±á±±á±á±² $1 ᱡá±á±±á±á±²á± ᱩ}}",
+ "viewdeleted_short": "{{PLURAL:$1 á±á±á±± á±á±®á±« á±á±¤á±°á±¤ á±á± á±á±± á±¥á±á±¯á±²á±á±£á± ᱩ $1 á±á±á±± á±á±®á±« á±á±¤á±°á±¤ á±á± á±á±± á±¥á±á±¯á±²á±á±£á± ᱩ}} ᱩᱫᱩá±á±½á±¢á±®",
+ "protect": "ᱨᱩᱠᱷᱤá±á±á±¹",
+ "protect_change": "á±µá±á±«á±á±",
+ "unprotect": "á±µá±á±«á±á± ᱨᱩᱠᱷᱤá±á±á±¹",
"newpage": "á±±á±á±¶á± á±¥á±á±¦á±´á±",
"talkpagelinktext": "ᱨá±á±²",
"specialpage": "ᱵᱤᱥᱮᱥ á±¥á±á±¦á±´á±",
@@ -195,22 +195,22 @@
"mediawikipage": "á± á±·á±á±µá±á±¨ á±¥á±á±¦á±´á± ᱧᱮá±á±¢á±®",
"templatepage": "ᱪᱷá±á±¸á±ª á±¥á±á±¦á±´á± ᱩᱫᱩá±á±½ ᱢᱮ",
"viewhelppage": "á±á±á±¸á±²á± á±¥á±á±¦á±´á± ᱧᱮá±á±¢á±®",
- "categorypage": "Babot reaḱ rokom sokom udugmẽ",
- "viewtalkpage": "Galmarao Åelme",
+ "categorypage": "á±á±·á±á± á±¥á±á±¦á±´á± ᱧᱮá±á±¢á±®",
+ "viewtalkpage": "á±á±á±á±¢á±á±¨á±á±£ ᱧᱮá±á±¢á±®",
"otherlanguages": "ᱮᱴá±á± ᱯá±á±¹á±¨á±¥á±¤ á±á±®",
"redirectedfrom": "($1 á± á±·á±á±± á±á±¹á±ªá±©á±¨ ᱦᱮᱡᱠá±á±±á±)",
"redirectpagesub": "á±µá±á± á±¥á±á±¡á±½á±¦á±® á±¥á±á±¦á±´á±",
- "redirectto": "Ar hõ udugoḱakana:",
+ "redirectto": "ᱪá±á±á±á± á± á±á±±á±:",
"lastmodifiedat": "á±±á±á±¶á± á±¥á±á±¦á±´á± ᱢᱩᱪá±á±¹á±« ᱫᱷá±á±£ á±µá±á±«á±á± á±á± á±á±±á± $1 á±¢á±á±¹á±¦á±¤á±, $2 á±á± á±á±á±¨á±®",
- "viewcount": "Noa sakamdo {{PLURAL:$1 dhom $1 dhom}} udug hoena.",
- "protectedpage": "RukhÃạ sakamko",
+ "viewcount": "á±±á±á±£á± á±¥á±á±¦á±´á± ᱫᱠ{{PLURAL:$1 ᱫᱷá±á±¶ $1 ᱫᱷá±á±¶}} ᱩᱫᱩᱠᱦᱩá±á±®á±±á±á±¾",
+ "protectedpage": "ᱨᱩᱠᱷᱤá±á±á±¹ á±¥á±á±¦á±´á±",
"jumpto": "ᱫá±á±±á±¢á±® :",
"jumptonavigation": "á±á±¹á±ªá±©á±¨á±µá±á±²á±",
"jumptosearch": "ᱥᱮᱸᱫᱽᱨá±",
"view-pool-error": "IkạkaÅmẽ, sarvarre nitoḱ do aá¸i cap menaḱa.\nẠá¸i aema beoharko noa sakam Åel lạgitÌko kurumuá¹ueda.\nNãwate noa sakam Åel kurumuá¹uy lạgitÌte dayakate mitÌghạá¹i tạá¹
giymẽ.\n$1",
"pool-timeout": "Somoy paromena cạbi lạgitÌte tạá¹
gi hoyoḱkana",
"pool-queuefull": "Pool queue is full",
- "pool-errorunknown": "BaÅ baá¸ayaḱ bhul",
+ "pool-errorunknown": "á±µá±á± á±µá±á±°á±á± ᱦᱩᱲá±á±¹á±",
"aboutsite": "á±µá±á±µá±á± {{SITENAME}}",
"aboutpage": "Project: á±µá±á±µá±á±",
"copyright": "ᱩᱱᱩᱫᱩᱠᱫᱠᱧá±á±¢á±á±-á± $1 á±á±®á± á±á±á±® á±µá±á±á± á±·á±á±± á±á± á±á±á±¦á±®á±±á±",
@@ -220,96 +220,96 @@
"disclaimers": "ᱫá±á±¹á±µá±¤ á±µá±á±±á±©á±á± á±³",
"disclaimerpage": "Project: á±¥á±á±«á±·á±á±¨á±á±± ᱫá±á±¹á±µá±¤ á±µá±á±±á±©á±á± ᱩ",
"edithelp": "á±¥á±á±¯á±²á±á±£ á±á±á±¸á±²á±á±¸",
- "helppage-top-gethelp": "á±á±á±²á±",
+ "helppage-top-gethelp": "á±á±á±¸á±²á±á±¸",
"mainpage": "ᱢᱩᱬᱩᱠᱥá±á±¦á±´á±",
"mainpage-description": "ᱢᱩᱬᱩᱠᱥá±á±¦á±´á±",
- "policy-url": "Project:Ritiniti",
+ "policy-url": "Project:ᱨᱤá±á±¤á±±á±¤á±á±¤",
"portal": "á±á±©á±¥á±´á±¤ á±µá±á±á±á± ᱫᱩá±á±á±¹á±¨",
"portal-url": "Project:ᱠᱷᱩᱴ á±µá±á±á±á±± ᱦá±á±¨",
"privacy": "ᱩᱠᱩ ᱮᱠá±á±¤á±á±á±¨",
"privacypage": "Project: ᱩᱠᱩ ᱮᱠá±á±¤á±á±á±¨",
- "badaccess": "Ektiạr vul",
+ "badaccess": "á±á±¹á±á±«á±á±¹á±¨á±¤ ᱦᱩᱲá±á±¹á±",
"badaccess-group0": "Am do oka kạmi lạgitÌem aroj akatÌ, ona kạmi purạo lạgitÌte ạidạri do bạnuḱa.",
"badaccess-groups": "Am do oka kạmim menjoá¹
kan ona do khạli {{PLURAL:$2 rạsiạkore noa rạsiạreaḱ mitÌá¹enre}} mitá¹en beohariÄ sompadon daá¹eyaḱa: $1.",
"versionrequired": "ᱢᱤᱰᱤá±á± ᱩá±á± ᱤ ᱨᱮá±á±á± $1 á±±á±á±£á± ᱵᱷá±á±¨á±¥á±á±± ᱡá±á±¹á±¨á±©á±²á±",
"versionrequiredtext": "Version $1 of MediaWiki is required to use this page.\nSee [[Special:Version|version page]].",
- "ok": "Ṭhik gea",
+ "ok": "ᱴᱷᱤᱠá±á±®á±á±",
"retrievedfrom": "\"$1\" á± á±·á±á±± ᱧá±á±¢ á±á±¹á±á±©á±",
- "youhavenewmessages": "Amaḱ do $1 ($2) menaḱa",
+ "youhavenewmessages": "{{PLURAL:$3|á±á±¢á±á± ᱢᱮᱱá±á±-á±}} $1 ($2)á±¾",
"youhavenewmessagesfromusers": "{{PLURAL:$4|á±á±¢ ᱫá±}} $1 á± á±·á±á±± {{PLURAL:$3|á±á±¨á±¢á±¤á±« ᱵᱮᱵᱷá±á±¨á±¤á±á±á±¹|$3 ᱵᱷᱮᱵᱷá±á±¨á±©á±á±á±¹}} ($2) á±¾",
"newmessageslinkplural": "{{PLURAL:$1|ᱢᱤᱫ á±±á±á±¶á± ᱢᱮᱥᱮᱡᱽ|999=á±±á±á±¶á± ᱢᱮᱥᱮᱡᱽᱠá±}}",
"newmessagesdifflinkplural": "ᱢᱩᱪá±á±¹á±« {{PLURAL:$1|á±µá±á±«á±á±|999=á±µá±á±«á±á±á± á±}}",
"youhavenewmessagesmulti": "á±á±¢á±á± á±±á±á±£á± á± á±·á±á±µá±á±¨á± ᱠᱫᱠ$1 ᱨᱮ ᱢᱮᱱá±á±-á±",
"editsection": "á±¥á±á±¯á±²á±á±£",
"editold": "á±¥á±á±¯á±²á±á±£",
- "viewsourceold": "Åamoḱ jayga",
+ "viewsourceold": "ᱯᱷᱮᱰá±á± ᱧᱮá±",
"editlink": "á±¥á±á±¯á±²á±á±£",
"viewsourcelink": "ᱯᱷᱮᱰá±á± ᱦá±á±¨ ᱧᱮá±á±¢á±®",
"editsectionhint": "á±¥á±á±¯á±²á±á±£ ᱡá±á±á±á±: $1",
"toc": "ᱩᱱᱩᱫᱩá±",
- "showtoc": "Uduḱme",
- "hidetoc": "uku, Danaá¹
",
- "collapsible-collapse": "Murchạo caba",
- "collapsible-expand": "Phaylao",
+ "showtoc": "á±¥á±á±«á±á±¨",
+ "hidetoc": "ᱫá±á±±á±á±",
+ "collapsible-collapse": "ᱢᱩᱨᱪᱷá±á±¹á±£ ᱪá±á±µá±",
+ "collapsible-expand": "ᱯᱷá±á±á±á±á±£",
"confirmable-yes": "ᱦᱮᱸ",
"confirmable-no": "á±µá±á±",
"thisisdeleted": "ᱧᱮᱠᱥᱮ ᱨᱩá±á±á±¹á±² ᱫá±á±²á±¦á± $1?",
- "viewdeleted": "$1 Åelme",
+ "viewdeleted": "$1 ᱧᱮá±á±¢á±®",
"restorelink": "{{PLURAL:$1 mitÌá¹en ocoḱgiá¸i sompadon $1 gan udug giá¸i sompadon}}",
- "feedlinks": "Jom oco",
+ "feedlinks": "á±á±¡á±:",
"feed-invalid": "Garhak feed reaḱ rokom do ạnlekate baá¹
kana",
- "feed-unavailable": "Siná¸ikason feed do baá¹
Åamoḱkana",
+ "feed-unavailable": "ᱥᱤᱱᱰᱤᱠᱮᱥá±á±± á±á±¡á± ᱠᱩᱫᱠᱵá±á± ᱧá±á±¢á±á± á± á±á±±á±",
"site-rss-feed": "$1 RSS feed",
"site-atom-feed": " $1 ᱡá±á±¢ á±á±ªá±",
"page-rss-feed": "\"$1\" RSS feed",
- "page-atom-feed": "\"$1\" khon khudri jom",
+ "page-atom-feed": " $1 ᱡá±á±¢ á±á±ªá±",
"red-link-title": "$1 (ᱱᱤá±á±á±¹ á±¥á±á±¦á±´á± ᱫᱠᱵá±á±¹á±±á±©á±-á±)",
"sort-descending": "Ulá¹áº¡o horop lekate sajao",
- "sort-ascending": "Horop lekate sajao",
+ "sort-ascending": "á±¥á±á±¢á±´á±á±£ á±á±®",
"nstab-main": "á±¥á±á±¦á±´á±",
"nstab-user": "ᱵᱮᱵᱦá±á±¹á±¨á±¤á±á±á±¹á± á±¥á±á±¦á±´á±",
"nstab-media": "Media á±¥á±á±¦á±´á±",
"nstab-special": "á±á±¥á±á± á±á±á±á±®á±á±á± á±¥á±á±¦á±´á±",
"nstab-project": "ᱯᱨá±á±¡á±®á± á±´ á±¥á±á±¦á±´á±",
"nstab-image": "ᱨᱮᱫ",
- "nstab-mediawiki": "Mesag",
+ "nstab-mediawiki": "á± á±·á±á±µá±á±¨",
"nstab-template": "ᱪᱷá±á±¸á±ª",
"nstab-help": "á±á±á±¸á±²á± á±¥á±á±¦á±´á±",
"nstab-category": "á±á±·á±á± ",
"mainpage-nstab": "ᱢᱩᱬᱩᱠᱥá±á±¦á±´á±",
- "nosuchaction": "Noá¹
kanaḱ kạmi bạnuḱa",
+ "nosuchaction": "á±±á±á±á± á±á±± á± á±á±¹á±¢á±¤ á±µá±á±¹á±±á±©á±-á±",
"nosuchactiontext": "Noa URL re goá¹a akan kạmi do ạnlekate baá¹
kana.\nAm do paseÄ mitÌá¹en vul joá¹aoem emakada se URL oltem vul akada.\nNoa do noá¹
kanaḱ menkana je {{SITENAME}} sayeá¹re beoharen sofá¹ower re mitÌá¹en vul menaḱa.",
"nosuchspecialpage": "á±±á±á±á± á±á±±á± á±á±¥á±á± á±á± á±¥á±á±¦á±´á± ᱫᱠᱵá±á±¹á±±á±©á±-á±",
"nospecialpagetext": "á±á±¢ ᱫᱠᱡá±á±¦á±á±¸ á±¥á±á±¦á±´á± á±á±á±¹á±á±¤á±« ᱮᱢ ᱱᱮᱦá±á±¨ á±á± á±á±«á± á±á±±á±á±«á± á±µá±á±¹á±±á±©á±-á± \nᱡá±á±¦á±á±¸ á±¥á±á±¦á±´á±á± ᱩ á±±á±á±¸á±°á±® ᱢᱮᱱá±á±-á± á±á±±á±á±¨á±®á±±á±á± á±á±á±¹á±á± á±á±¹ á±±á±á±¸á±°á±®á±¢ ᱧá±á±¢á± [[Special:SpecialPages|{{int:specialpages}}]]á±¾",
- "error": "bhul",
- "databaseerror": "á¸aá¹abase vul",
+ "error": "ᱦᱩᱲá±á±¹á±",
+ "databaseerror": "á±°á±á±´á±á±µá±®á±¡á±½ ᱦᱩᱲá±á±¹á±",
"databaseerror-error": "ᱦᱩᱲá±á±¹á±: $1",
"laggedslavemode": "'''Sontoroḱme:''' sakamre do nahaḱ nãwãnaḱko paseÄ bạnuḱa.",
- "readonly": "á¸aá¹abes do talagea",
+ "readonly": "á±°á±á±´á±á±µá±®á±¡á±½ á±á±á±á±á±á±®á±á±",
"enterlockreason": "Cạbie reaḱ karon do cetÌkana ma lạimẽ, Saõte tinre tala cạbim jhija ona okte hõ lạimẽ",
"readonlytext": "Nãwã hataen ar eá¹agaḱ sompadon lạgitÌte á¸aá¹abes do nit bondo gea. PaseÄ á¸aá¹abes rukhiyạre niyom lekate kạmi calaḱ kana. Thoá¹a ghạrá»iÄ porte laha obosthare acur hạjuḱa.\nSasetiÄ do noa kathae roá¹ keda: $1",
"missing-article": "\"$1\" $2 noa Åutumanaḱ sakhiyạ̣t sakamre olakanaḱ do baÅ á¹
amoka.\nNoa hoy renaḱ karon do hoyoḱkana cabak tạrik pharak se noare joá¹ao sakam do getÌ giá¸i akana.\nJudi noa do karon baÅ hoylen khan, noa do am sopá¹oyer re kạtiÄtem Åam daá¹eyaḱa.\nDaya katetÌ noa do nonde [[Special:ListUsers/sysop|administrator]], á¹hen lạime, URL hotete.",
"missingarticle-rev": "(ᱥᱩᱫᱷᱨá±á±¹á±£#:$1)",
- "missingarticle-diff": "(Pharak: $1, $2)",
+ "missingarticle-diff": "(ᱯᱷá±á±¨á±á± : $1, $2)",
"readonly_lag": "á¸aá¹abes do aÄhote tege bondo hoe akana, je lekate udhin reaḱ á¸aá¹abes sarvarkor mukhiạ á¸aá¹abes sarvar lekate heÄ daá¹eaḱ.",
- "internalerror": "Bhitri reaḱ bhul",
- "internalerror_info": "Bhitri reaḱ vul: $1",
- "filecopyerror": "\"$1\" rẽt khon \"$2\" rẽt baá¹
kopilena.",
- "filerenameerror": "\"$1\" rẽt reaḱ Åutum bodol kate \"$2\" em baá¹
hoyoḱ kana.",
+ "internalerror": "ᱵᱷᱤá±á±¨á±¤ ᱦᱩᱲá±á±¹á±",
+ "internalerror_info": "ᱵᱷᱤá±á±¨á±¤ ᱦᱩᱲá±á±¹á±: $1",
+ "filecopyerror": "\"$1\" ᱨᱮᱫ á± á±·á±á±± \"$2\" ᱨᱮᱫ á±µá±á± á± á±á±¯á±¤á±á±®á±±á±á±¾",
+ "filerenameerror": "\"$1\" ᱨᱮᱫ ᱨᱮá±á±á± ᱧᱩá±á±©á±¢ á±µá±á±«á±á± á± á±á±á±® \"$2\" ᱮᱢ á±µá±á± á±á±á±±á±á± á± á±á±±á±á±¾",
"filedeleteerror": "$1 ᱨᱮᱫ ᱫᱠᱵá±á± á±á±®á±«á±½ á±á±¤á±°á±¤ á±á±®á±±á±",
- "directorycreateerror": "\"$1\" dayreká¹ori do baá¹
tearlena.",
- "filenotfound": "\"$1\" rẽt do baá¹
sendra Åamoḱ kana.",
- "unexpected": "Baá¹
asakan mạn: \"$1\"=\"$2\".",
- "formerror": "Vul: forom do baá¹
jimạlena.",
- "badarticleerror": "Noa sakamre kạmiko do baá¹
puraolena.",
+ "directorycreateerror": "\"$1\" á±°á±á±á±¨á±®á± ᱴᱳᱨᱤ ᱫᱠᱵá±á± á±á±®á±á±á±¨á±á±®á±±á±á±¾",
+ "filenotfound": "\"$1\" ᱨᱮᱫ ᱫᱠᱵá±á± ᱧá±á±¢á±á±®á±±á±á±¾",
+ "unexpected": "á±µá±á± á±á±¥á±á± á± á±á±± á±¢á±á±¹á±±: \"$1\"=\"$2\".",
+ "formerror": "ᱦᱩᱲá±á±¹á±: ᱯᱷá±á±¨á±á±¢ ᱫᱠᱵá±á± ᱡᱤᱢá±á±¹á±á±®á±±á±á±¾",
+ "badarticleerror": "á±±á±á±£á± á± á±á±¹á±¢á±¤ ᱫᱠᱱá±á±£á± á±¥á±á±¦á±´á±á±¨á±® á±µá±á± ᱦᱩá±á±á±®á±±á±á±¾",
"cannotdelete": "$1 sakam se rẽt do baá¹
get giá¸ilena.\nPasec eá¹aḱ hoá¹ noa do lahareko get giá¸i akada.",
- "cannotdelete-title": "\"$1\" Sakam do baá¹
get giá¸iḱkana",
- "badtitle": "barich' bishóÌÌÌÌy",
+ "cannotdelete-title": "\"$1\" á±¥á±á±¦á±´á± ᱫᱠᱵá±á± á±á±®á±« á±á±¤á±°á±¤ á±á± á±á±±á±",
+ "badtitle": "á±µá±á±¹á±¨á±¤á±¡ á±´á±á±á±´á±®á±",
"badtitletext": "á±á±¢á±®á±¢ ᱱᱮᱦá±á±¨á±á± á±á±± á±¥á±á±¦á±´á± ᱧᱤá±á±©á±¢ ᱫᱠᱵá±á± ᱴᱷᱤᱠá±, á± á±·á±á±¹á±á±¤ ᱥᱮ ᱵᱷᱩá±á±á±® ᱵᱷᱤá±á±¨á±¤ ᱯá±á±¹á±¨á±¥á±¤á±á±® ᱥᱮ ᱩá±á± ᱤ á±´á±á±á±´á±®á± á±á±® ᱡá±á±±á±á±² á±á±®á±á±á±¾\ná±±á±á±£á±á±¨á±® ᱫᱠᱢᱤᱫ ᱥᱮ á±á±á±¢á± ᱩᱱᱩᱫᱩᱠᱢᱮᱱá±á± á±á± ᱠᱫᱠᱧᱤá±á±©á±¢á±¨á±® á±µá±á± ᱵᱮᱵᱦá±á±¨á±á±á±¾",
"querypage-no-updates": "Noa sakam reaḱ nahaḱ halot bondo gea. Noná¸e doho akana á¸aá¹ako do baá¹
saphaḱa.",
"viewsource": "ᱯᱷᱮᱰá±á± ᱧᱮá±",
- "viewsource-title": "$1 renaḱ Åamoḱ á¹hại Åelmẽ",
- "actionthrottled": "Kạmi reaḱ dhara bại",
+ "viewsource-title": "$1 ᱨᱮᱱá±á± ᱯᱷᱮᱰá±á± ᱧᱮá±á±¢á±®",
+ "actionthrottled": "á± á±á±¹á±¢á±¤ ᱨᱮá±á±á± ᱫᱷá±á±¨á± á±µá±á±¹á±",
"protectedpagetext": "Noa sakam do ol toá¹
ge lạgitÌte do baÅcao gea.",
"viewsourcetext": "á±±á±á±á± á±¥á±á±¦á±´á±á±¢ ᱧᱮᱠᱫá±á±²á±®á±á±á±-á± á±á±¨á±®á±¢ á± á±á±¯á±¤ ᱫá±á±²á±®á±á±á±-á±á±¾",
"viewyourtext": "Am do '''Amaḱ sompadon''' noa sakam Åel arem kopi hatao daá¹eaḱa:",
@@ -324,30 +324,30 @@
"virus-unknownscanner": "Baá¹
urum aná¹vayras:",
"welcomeuser": "á±¥á±á±¹á±á±©á±± ᱫá±á±¨á±á±¢, $1!",
"welcomecreation-msg": "Amaḱ ekauná¹ doÌ jhiÄena. Amaḱ pạsindko bodol alom hiá¹iÅa.",
- "yourname": "Beoboharicaḱ Åutum",
+ "yourname": "ᱵᱮᱵᱷá±á±¨á±¤á±á±á±¹ ᱧᱩá±á±©á±¢:",
"userlogin-yourname": "ᱵᱮᱵᱷá±á±¨á±¤á±á±á±¹ ᱧᱩá±á±©á±¢",
- "userlogin-yourname-ph": "á±á±¢á±á± ᱵᱮᱵᱦá±á±¨á±¤á±¡ ᱧᱤá±á±©á±¢ á±µá±á±á±á± ᱢᱮ",
- "createacct-another-username-ph": "ᱵᱮᱵᱦá±á±¨á±¤á±á±á± ᱧᱤá±á±©á±¢ á±µá±á±á±á± ᱢᱮ",
+ "userlogin-yourname-ph": "á±á±¢á±á± ᱵᱮᱵᱦá±á±¨á±¤á±á±á±¹ ᱧᱤá±á±©á±¢ á±µá±á±á±á± ᱢᱮ",
+ "createacct-another-username-ph": "ᱵᱮᱵᱷá±á±¨á±¤á±á±á± ᱧᱤá±á±©á±¢ á±µá±á±á±á± ᱢᱮ",
"yourpassword": "ᱫá±á±±á±á± á±¥á±á±µá±á±«á±½",
"userlogin-yourpassword": "ᱫá±á±±á±á± á±¥á±á±µá±á±«á±½",
"userlogin-yourpassword-ph": "ᱫá±á±±á±á± á±¥á±á±µá±á±«á±½ á±á±«á±®á±¨á±¢á±®",
"createacct-yourpassword-ph": "ᱫá±á±±á±á± á±¥á±á±µá±á±«á±½ á±á±«á±®á±¨á±¢á±®",
- "yourpasswordagain": "Arhõ oku namber olme",
+ "yourpasswordagain": "ᱫá±á±²á±¦á±á±á±® ᱫá±á±±á±á± á±¥á±á±µá±á±«á±½ á±á±á±¢á±®",
"createacct-yourpasswordagain": "ᱫá±á±±á±á± á±¥á±á±µá±á±«á±½ á±´á±·á±á±¹á±£á± á±á±¹á± ᱢᱮ",
"createacct-yourpasswordagain-ph": "ᱫá±á±±á±á± á±¥á±á±µá±á±«á±½ á±á±«á±®á±¨á±¢á±® ᱫá±á±²á±¦á±",
- "userlogin-remembermypassword": "Bolo thirege dohokạÅme",
- "yourdomainname": "Amaḱ á¸omen:",
+ "userlogin-remembermypassword": "á±µá±á±á± á±á±·á±¤á±¨á±á±® ᱫá±á±¦á±á± á±á±¹á±§á±¢á±®",
+ "yourdomainname": "á±á±¢á±á± ᱧᱩá±á±©á±¢:",
"externaldberror": "Hoe daá¹eyaḱa jahan bahre reaḱ jacaeaḱ á¸aá¹abes vul hoeakana se amaḱ bahre reaḱ ekauná¹ do nahaḱ halot aguire ạidạri bạnuḱa.",
"login": "á±µá±á±á±á± ᱢᱮ",
- "nav-login-createaccount": "Boloá¸±Ì duạr / ekaunt tearme",
- "logout": "Bahre oá¸oÅ",
- "userlogout": "Bahre oá¸oÅ",
- "notloggedin": "Bhitri baá¹
bolokana",
+ "nav-login-createaccount": "á±µá±á±á±á± ᱫᱩᱣá±á±¹á±¨ / ᱦᱤᱥá±á±¹á±µ á± á±·á±á±á± á±á±®á±á±á±¨á±¢á±®",
+ "logout": "á±á±°á±á± á±á± ᱢᱮ",
+ "userlogout": "á±á±°á±á± á±á± ᱢᱮ",
+ "notloggedin": "á±µá±á±¢ á±µá±á±á± á±á± á±á±±á±",
"userlogin-noaccount": "á± á±·á±á±á± á±µá±á±¹á±±á±©á± á±á±á±¢á±?",
"userlogin-joinproject": "á± á±·á±á±¸á±¡á± {{SITENAME}}",
- "createaccount": "Ṭhai benaome",
+ "createaccount": "á± á±·á±á±á± á±á±®á±á±á±¨á±¢á±®",
"userlogin-resetpassword-link": "á±á±¢á±á± ᱫá±á±±á±á± á±¥á±á±µá±á±«á±½ ᱦᱤᱲᱤᱧ ᱠᱮᱫá±á±¢?",
- "userlogin-helplink2": "Bolon khạtir goÌ á¹oÌ ",
+ "userlogin-helplink2": "á±µá±á±á±á± á± á±·á±á±¹á±á±¤á±¨ á±á±á±¸á±²á±á±¸",
"userlogin-createanother": "ᱮᱴá±á± á± á±·á±á±á± á±á±®á±á±á±¨á±¢á±®",
"createacct-emailrequired": "ᱤᱢᱮᱠᱵᱩᱴá±á±¹",
"createacct-emailoptional": "Email ᱴᱷᱤᱠᱱᱠ(á±µá±á±¹á±²á±á±¤á±á±®)",
@@ -367,9 +367,9 @@
"createacct-benefit-body3": "ᱱᱮá±á±á±¨ {{PLURAL:$1|ᱮᱱᱮᱢᱤá±á±á±¹|ᱮᱱᱮᱢᱤá±á±á±¹á± á±}}",
"badretype": "Am do okaá¹aḱ oku nambarkom em keda ona do baá¹
milạolena.",
"userexists": "Laá¹caá¹icaḱ Åutum em hoyena ona do beohar hoyakana.\nDayakatetÌ eá¹agaḱ Åutum bachaome.",
- "loginerror": "Bhitri bolok do vulgea",
+ "loginerror": "ᱵᱷᱤá±á±¨á±¤ á±µá±á±á±á± ᱦᱩᱲá±á±¹á±",
"createacct-error": "á± á±·á±á±á± á±á±®á±á±á±¨ ᱦᱩᱲá±á±¹á±",
- "createaccounterror": "Ekauná¹ do baá¹
tear lena: $1",
+ "createaccounterror": "ᱦᱤᱥá±á±¹á±µ á± á±·á±á±á± á±µá±á± á±á±®á±á±á±¨á± á±á±±á±: $1",
"nocookiesnew": "ᱵᱮᱵᱦá±á±¨á±¤á±á±á± ᱦᱤᱥá±á±¹á±µ á±á±®á±á±á±¨ ᱦᱩᱠá±á±®á±±á±, ᱢᱮᱱᱠᱷá±á±± á±á±¢á±«á± ᱱᱤᱠᱫᱷá±á±¹á±µá±¤á±¡ á±µá±á±¢ á±µá±á±á±á±£á± á±á±±á±á±¾ {{SITENAME}} ᱨᱮ ᱠᱩᱠᱤᱠᱠᱵᱮᱵᱦá±á±¨ á± á±á±á±® ᱵᱮᱵᱦá±á±¨á±¤á±á±á± ᱦᱤᱥá±á±¹á±µá±¨á±® á±µá±á±á±á±£á±á±¾\ná±á±¢á±á± ᱠᱩᱠᱤᱠᱠᱵá±á±¸á±«á± ᱦᱩá±á± á±á±±á±á±¾\nᱫá±á±á±á± á±á±á±® ᱠᱩᱠᱤᱠᱠᱡᱷᱤᱡ ᱢᱮ, á±á±±á± á±á±á±á±á±¢ á±á±¢á±á± á±±á±á±£á± ᱵᱮᱵᱦá±á±¨á±¤á±¡ ᱧᱤá±á±©á±¢ á±á±¨ ᱩᱠᱩ á±®á±á±¥á±á± ᱵᱮᱵᱦá±á±¨ á± á±á±á±®á±¡ á±±á±á±£á± ᱦᱤᱥá±á±¹á±µá±¨á±® á±µá±á±á±á±á±¢á±®á±¾",
"nocookieslogin": "{{SITENAME}} re kuki hotete beohariÄaḱ bhitri boloḱ do hoyoḱa. Amaḱ sendrare kuki bondo menaḱa. Kuki cạlu kate arhõ kurumuá¹uimẽ.",
"nocookiesfornew": "BeohariÄaḱ ekauná¹ do baá¹
tear akana, Cedaḱ je noa Åamoḱ jaega babote ale do bale uruma.\nAle do baá¸ae ocolem amaḱ kuki doe kạmikana, sakam do arhõ rakaá¹ lạgitÌte kurumuá¹uemẽ.",
@@ -385,8 +385,8 @@
"passwordtooshort": "Uku nambar do {{PLURAL:$1 1 horop reaḱ $1 horop reaḱ}} mudre hoyoḱ jạruá¹a.",
"password-name-match": "Amaḱ oku nambar do amaḱ Åutum khon eá¹aḱ hoyoḱ jạruá¹tama.",
"password-login-forbidden": "Noa laá¹caá¹icaḱ Åutum ar oku nambar do ạnlekate baá¹
kana.",
- "mailmypassword": "á±±á±á±£á±á±á±® ᱩᱠᱩ á±®á±á±¥á±á± ᱮᱢᱢᱮ",
- "passwordremindertitle": "á±±á±á±£á± ᱱᱤᱠá±á±á±¹á±á±¤á± ᱩᱠᱩ á±®á±á±¥á±á± {{SITENAME}} á±á±á±¹á±á±¤á± á±á±®",
+ "mailmypassword": "á±±á±á±£á±á±á±® ᱫá±á±±á±á± á±¥á±á±µá±á±«á±½ ᱮᱢ",
+ "passwordremindertitle": "á±±á±á±£á± ᱱᱤᱠá±á±á±¹á±á±¤á± ᱫá±á±±á±á± á±¥á±á±µá±á±«á±½ {{SITENAME}} á±á±á±¹á±á±¤á± á±á±®",
"noemail": "\"$1\" beohariÄ lạgitÌte do jahan e-mail á¹hikana rukhiyạ doho bạnuḱa.",
"noemailcreate": "Am do mitá¹en jewet e-mail á¹hikạna em jaruá¹ menaḱtama.",
"passwordsent": "\"$1\" á¹hikạnate resá¹ariyen e-mail lạgitÌte mitá¹en oku nambar em hoyena.\nDaya kate Åam porte arhõ bhitri boloḱme.",
@@ -399,24 +399,24 @@
"invalidemailaddress": "Noa e-mail á¹hikạna do baá¹
hataoa, karon noa formeá¹ do pusá¹áº¡ote baá¹
em akana. Dayakate pusá¹ao formeá¹te á¹hikạna emmẽ, se khet do khạliemẽ.",
"cannotchangeemail": "Ekauná¹ e-mail á¹hikạnakodo noa wiki re baá¹
bodoloḱ kana.",
"emaildisabled": "Noa sayeá¹re do e-mail em subita bạnuḱa.",
- "accountcreated": "Ekauná¹ do teyarena",
+ "accountcreated": "ᱦᱤᱥá±á±¹á±µ á± á±·á±á±á± á±á±®á±á±á±¨á±±á±",
"accountcreatedtext": "$1 lạgitÌte ekauná¹ do benaoena.",
- "createaccount-title": "{{SITENAME}} lạgitÌte ekauná¹ benao",
+ "createaccount-title": "{{SITENAME}} á±á±á±¹á±á±¤á±á±á±® ᱦᱤᱥá±á±¹á±µ á± á±·á±á±á± á±á±®á±á±á±¨",
"createaccount-text": "Okoe co am lạgitÌte mitá¹en ekauná¹ko amaḱ e-mail á¹hikạna lạgit {{SITENAME}} re ($4) Åutum \"$2\", oku nambar \"$3\".\nAm do mesagem baá¹
daá¹eyaḱa, judi noa ekauná¹ do vulge benaolen khan.",
"login-throttled": "Am do mitghạri lahare por por aema dhao boloḱem kurumuá¹u keda.\nArhõ kurumuá¹ue lahare dayakate thoá¹agan tạá¹
giemẽ.",
"login-abort-generic": "Amaḱ bhitri boloḱ do baá¹
hoylena - batena.",
"loginlanguagelabel": "ᱯá±á±¹á±¨á±¥á±¤: $1",
"pt-login": "á±µá±á±á±á± ᱫᱩá±á±á±¹á±¨",
- "pt-login-button": "Bolon",
+ "pt-login-button": "á±µá±á±á±á± ᱢᱮ",
"pt-createaccount": "á±´á±·á±á± ᱵᱮᱱá±á±£á±¢á±®",
"pt-userlogout": "á±á±°á±á± á±á± ᱢᱮ",
"user-mail-no-addy": "Jahan e-mail á¹hikana bạgi kate e-mail kul kurumuá¹u hoena.",
- "changepassword": "Uku nombor bodolme",
- "resetpass_header": "Ekauná¹ oku namber bodol",
- "oldpassword": "Mare uku nombor",
+ "changepassword": "ᱫá±á±±á±á± á±¥á±á±µá±á±«á±½ á±µá±á±«á±á±",
+ "resetpass_header": "ᱦᱤᱥá±á±¹á±µ á± á±·á±á±á± ᱨᱮᱱá±á± ᱫá±á±±á±á± á±¥á±á±µá±á±«á±½ á±µá±á±«á±á±",
+ "oldpassword": "á±¢á±á±¨á±®á±á±á± ᱫá±á±±á±á± á±¥á±á±µá±á±«á±½:",
"newpassword": "á±±á±á±¶á± ᱫá±á±±á±á±á±¥á±á±µá±á±«á±½á±º",
- "retypenew": "Doá¹hate oku namber olme",
- "resetpass_submit": "Oku namber joá¹ao ar bhitri bolok",
+ "retypenew": "ᱫá±á±²á±¦á±á±á±® ᱫá±á±±á±á± á±¥á±á±µá±á±«á±½ á±á±á±¢á±®:",
+ "resetpass_submit": "ᱫá±á±±á±á± á±¥á±á±µá±á±«á±½ ᱮᱢᱢᱮ á±á±¨ á±µá±á±á±á± ᱢᱮ",
"changepassword-success": "Amaḱ oku namber do napayte bodolena!\nNitoḱ do am bhitritem boloḱkana...",
"botpasswords": "á±µá±á±´ ᱫá±á±±á±á± á±¥á±á±µá±á±«á±½",
"botpasswords-createnew": "á±±á±á±¶á± á±µá±á±´ ᱫá±á±±á±á± á±¥á±á±µá±á±«á±½ á±á±®á±á±á±¨á±¢á±®",
@@ -428,48 +428,48 @@
"botpasswords-label-resetpassword": "á±±á±á±£á±á±á±® ᱫá±á±±á±á±á±¥á±á±µá±á±«á±½ ᱮᱢ",
"botpasswords-label-grants-column": "ᱦᱩá±á± á±á±±",
"botpasswords-bad-appid": "á±µá±á±´ ᱧᱤá±á±©á±¢ \"$1\" á±µá±á± ᱴᱷᱤᱠá±á±¾",
- "botpasswords-created-title": "á±µá±á±´ ᱩᱠᱩ á±®á±á±¥á±á± á±á±®á±á±á±¨á±±á±",
+ "botpasswords-created-title": "á±µá±á±´ ᱩᱠᱩ ᱫá±á±±á±á± á±¥á±á±µá±á±«á±½ á±á±®á±á±á±¨á±±á±",
"botpasswords-updated-title": "á±µá±á±´ ᱫá±á±±á±á± á±¥á±á±µá±á±«á±½ ᱩá±á±·á±±á±á±¹á±£",
- "botpasswords-deleted-title": "á±µá±á±´ ᱩᱠᱩ á±®á±á±¥á±á± ᱢᱩᱪᱷá±á±¹á±£á±±á±",
- "resetpass_forbidden": "Oku namber do baá¹
bodoloklena",
- "resetpass_forbidden-reason": "ᱩᱠᱩ á±®á±á±¥á±á± á±µá±á± á±µá±á±«á±á±á±á±-á±: $1",
+ "botpasswords-deleted-title": "á±µá±á±´ ᱫá±á±±á±á± á±¥á±á±µá±á±«á±½ ᱢᱩᱪᱷá±á±¹á±£á±±á±",
+ "resetpass_forbidden": "ᱫá±á±±á±á± á±¥á±á±µá±á±«á±½ á±µá±á± á±µá±á±«á±á±á±-á±",
+ "resetpass_forbidden-reason": "ᱫá±á±±á±á± á±¥á±á±µá±á±«á±½ á±µá±á± á±µá±á±«á±á±á±á±-á±: $1",
"resetpass-no-info": "Noa sakam sojhete laá¹caá¹ lạgitÌte am do bhitri boloḱ hoyoḱtama.",
- "resetpass-submit-loggedin": "Oku namber bodol",
- "resetpass-submit-cancel": "Bạgi",
- "resetpass-temp-password": "Nit lạgit uku nambar:",
- "passwordreset": "á±±á±á±£á±á±á±® ᱩᱠᱩ á±®á±á±¥á±á± ᱮᱢᱢᱮ",
+ "resetpass-submit-loggedin": "ᱫá±á±±á±á± á±¥á±á±µá±á±«á±½ á±µá±á±«á±á±",
+ "resetpass-submit-cancel": "á±µá±á±«á±½",
+ "resetpass-temp-password": "ᱱᱮá±á±á± á±á±á±¹á±á±¤á± ᱫá±á±±á±á± á±¥á±á±µá±á±«á±½:",
+ "passwordreset": "á±±á±á±£á±á±á±® ᱫá±á±±á±á± á±¥á±á±µá±á±«á±½ ᱮᱢ",
"passwordreset-disabled": "Noa wikire amaḱ uku nambar nãwãte em lạgit subita do bando gea.",
- "passwordreset-username": "Beoharicaḱ Åutum:",
- "passwordreset-domain": "á¸omen:",
- "passwordreset-email": "E-mail á¹hikạna:",
+ "passwordreset-username": "ᱵᱮᱵᱦá±á±¨á±¤á±¡ ᱧᱩá±á±©á±¢:",
+ "passwordreset-domain": "ᱧᱩá±á±©á±¢:",
+ "passwordreset-email": "ᱤᱢᱮᱠᱵᱩᱴá±á±¹:",
"passwordreset-emailtitle": "{{SITENAME}} sayeá¹re beohariÄaḱ purạo thutiko",
- "passwordreset-emailelement": "BeohariÄaḱ Åutum: \n$1\n\nMitÌ ghạá¹i lạgit uku nambar: \n$2",
+ "passwordreset-emailelement": "ᱵᱮᱵᱦá±á±¨á±¤á±á±á± ᱧᱩá±á±©á±¢: \n$1\n\nᱢᱤᱫ á±á±·á±á±¹á±²á±¤ á±á±á±¹á±á±¤á± ᱫá±á±±á±á± á±±á±á±µá±á±«á±½: \n$2",
"passwordreset-emailsentemail": "Mitá¹en disạ ruaá¹ e-mail do kulena.",
- "changeemail": "email ᱴᱷᱤᱠᱱᱠᱵá±á±«á±á± ᱢᱮ ᱥᱮ á±á±ªá±á±á±½ ᱢᱮ",
+ "changeemail": "ᱤᱢᱮᱠᱴᱷᱤᱠᱱᱠᱵá±á±«á±á± ᱢᱮ ᱥᱮ á±á±ªá±á±á±½ ᱢᱮ",
"changeemail-header": "Ekauná¹ e-mail á¹hikạna do bodolme",
"changeemail-no-info": "Noa sakam sojhete laá¹caá¹ lạgitÌte am do bhitri boloḱ hoyoḱtama.",
- "changeemail-oldemail": "Nitaḱ e-mail á¹hikạna:",
+ "changeemail-oldemail": "ᱱᱮá±á±á±-á±á± ᱤᱢᱮᱠᱴᱷᱤᱠá±á±¹á±±á±",
"changeemail-newemail": "á±±á±á±£á± ᱤᱢᱮᱠᱵᱩᱴá±á±¹:",
- "changeemail-none": "(Okaá¹aḱ hõ baá¹
)",
- "changeemail-password": "á±á±¢á±á± {{SITENAME}} ᱩᱠᱩ á±®á±á±¥á±á±:",
- "changeemail-submit": "E-mail bodolme",
+ "changeemail-none": "(ᱪᱮᱫ ᱦá±á±¸ á±µá±á±¹á±±á±©á±-á±)",
+ "changeemail-password": "á±á±¢á±á± {{SITENAME}} ᱫá±á±±á±á± á±¥á±á±µá±á±½:",
+ "changeemail-submit": "ᱤ-ᱢᱮᱠᱵá±á±«á±á±á±¢á±®",
"bold_sample": "á±¢á±á±´á± á±á±",
"bold_tip": "á±¢á±á±´á± á±á±",
"italic_sample": "á±á±·á±á±¸á±¡á±®á±² á±á±",
"italic_tip": "á±á±·á±á±¸á±¡á±®á±² á±á±",
- "link_sample": "Joá¹aotetÌ reaḱ bohoḱ",
+ "link_sample": "ᱡá±á±±á±á±² á±´á±á±á±´á±®á±",
"link_tip": "ᱵᱷᱤá±á±¨á±¤ ᱡá±á±±á±á±²",
- "extlink_sample": "http://www.nạmuna.makaá¹gạá¹i ạmạli",
+ "extlink_sample": "http://www.example.com ᱡá±á±±á±á±² á±´á±á±á±´á±®á±",
"extlink_tip": "á±µá±á±¨á±¦á±® ᱨᱮᱱá±á± ᱡá±á±±á±á±² (ᱫᱤᱥá±á±¹á±á±¢á±® http://prefix)",
"headline_sample": "á±µá±á±¦á±á± ᱨᱮᱱá±á± á±á±",
- "headline_tip": "level 2 guá¸katha",
- "nowiki_sample": "Begor format olko bhoraome",
- "nowiki_tip": "wiki formatting bạgiyaḱme",
+ "headline_tip": "á±á±®á±µá±·á±®á± ᱠᱦᱮᱰá±á±á±á±¤á±±",
+ "nowiki_sample": "ᱵᱮá±á±á±¨ ᱯᱷá±á±¨á±¢á±®á±´ á±á±á± ᱩ ᱵᱷá±á±¨á±á±£á±¢á±®",
+ "nowiki_tip": "ᱣᱤᱠᱤ ᱯᱷá±á±¨á±¢á±á±´á±¤á± á±µá±á±¹á±á±¤á±á±¢á±®",
"image_tip": "á±á±á±á±á± á±á±± ᱨᱮᱫ",
"media_tip": "ᱨᱮᱫ ᱡá±á±±á±á±²",
- "sig_tip": "Amaḱ suhi sãote okte",
- "hr_tip": "Barabạri dag",
- "summary": "Guá¹ katha",
+ "sig_tip": "á±á±¢á±á± ᱥᱩᱦᱤ á±¥á±á±¶á±á±® á±á± á±á± ᱪᱷá±á±¯",
+ "hr_tip": "á±µá±á±¨á±á±µá±á±¹á±¨á±¤ ᱫá±á±á±½",
+ "summary": "ᱢᱩᱬᱩᱠᱠá±á±á±¦á±:",
"subject": "á±¥á±á±á±á±¢:",
"minoredit": "á±±á±á±£á± ᱫᱠᱦᱩᱰᱤᱧ á±¥á±á±¯á±²á±á±£ á± á±á±±á±",
"watchthis": "á±±á±á±£á± á±¥á±á±¦á±´á± ᱧᱮá±á±¢á±®",
@@ -477,67 +477,67 @@
"savechanges": "á±µá±á±«á±á±á± ᱠᱨᱩᱠᱷᱤá±á±á±¹á± ᱢᱮ",
"publishpage": "á±¥á±á±¦á±´á± ᱯá±á±¨á±¥á±á± ᱢᱮ",
"publishchanges": "á±µá±á±«á±á±á± ᱠᱯá±á±¨á±¥á±á± ᱢᱮ",
- "preview": "Åel, Unuduḱ",
- "showpreview": "Unuduḱ",
+ "preview": "ᱧᱮᱠᱵᱤᱰá±á±¹á±£",
+ "showpreview": "ᱧᱮá±á±¡á±á± ᱩᱫᱩá±á±½á±¢á±®",
"showdiff": "á±µá±á±«á±á±á± ᱩ ᱩᱫᱩá±á±½ ᱢᱮ",
"anoneditwarning": "ᱦᱩᱥᱤá±á±á±¹á±¨: á±á±¢ á±µá±á±¢ á±µá±á±á±á±£á±á± á±á±±á± á±¾ ᱡᱩᱫᱤ á±á±¢ ᱡá±á±¦á±á±¸á±±á±á± á±¥á±á±¯á±²á±á±£á±á±¢ á±á±¢á±á± IP ᱵᱩᱴá±á±¹ á±¥á±á±«á±á±¨ á±á±á±¦á±®á±¸á±±á± á±¾ ᱡᱩᱫᱤ á±á±¢ [$1 á±µá±á±á±á±±á±á±¢]
\nᱩᱱᱩᱫᱩá±: '''({{int:cur}})''' = ᱱᱮá±á±á±¨ ᱥᱩᱫᱷᱨá±á±¹á±£ á±¥á±á±¶á±á±® á±¥á±á±, '''({{int:last}})''' = á±á±á±¦á± ᱨᱮá±á±á± á±±á±á±£á± ᱥᱩᱫᱷᱨá±á±¹á±£ á±¥á±á±¶á±á±® á±¥á±á±, '''{{int:minoreditletter}}''' = ᱦᱩᱰᱤᱧ á±¥á±á±¯á±²á±á±£á±¾",
+ "page_first": "ᱯá±á±¹á±¦á±¤á±",
+ "page_last": "ᱢᱩᱪá±á±¹á±«",
+ "histlegend": "ᱮᱴá±á± á±µá±á±ªá±·á±á±£: á±±á±á±£á± á±µá±á±«á±á±á± á± á±á±©á±á±á±¹á±£ ᱢᱮᱱᱠᱷá±á±±, ᱨᱮᱰᱤá±á±³ á±µá±á± á±¥á±á±¨á±® ᱪᱤᱱ ᱮᱢ á± á±á±á±® á±µá±á±á±á± ᱥᱮ á±á±á±á±á±¨ ᱨᱮᱱá±á± á±µá±á±´á±á±± á±á±¤á±±á±¢á±®á±¾
\nᱩᱱᱩᱫᱩá±: ({{int:cur}}) = ᱱᱮá±á±á±¨ ᱥᱩᱫᱷᱨá±á±¹á±£ á±¥á±á±¶á±á±® á±¥á±á±, ({{int:last}}) = á±á±á±¦á± ᱨᱮá±á±á± á±±á±á±£á± ᱥᱩᱫᱷᱨá±á±¹á±£ á±¥á±á±¶á±á±® á±¥á±á±, {{int:minoreditletter}} = ᱦᱩᱰᱤᱧ á±¥á±á±¯á±²á±á±£ á±¾",
"history-fieldset-title": "ᱧᱮᱠá±á±¹á±¨á±© á±á±á±¹á±á±¤á±« ᱥᱮᱸᱫᱽᱨá±",
"history-show-deleted": "khạli get giá¸iyaḱ koge",
"histfirst": "á±¢á±á±¨á±®á±±á±á±",
"histlast": "á±±á±á±£á±á±±á±á±",
- "historysize": "({{PLURAL:$1 1 bayeá¹ $1 bayeá¹ko}})",
- "historyempty": "(banuḱa)",
+ "historysize": "({{PLURAL:$1 1 á±µá±á±á±¤á±´ $1 á±µá±á±á±¤á±´á±¥}})",
+ "historyempty": "(á± á±·á±á±¹á±á±¤)",
"history-feed-title": "ᱥᱩᱫᱷᱨá±á±¹á±£ á±±á±á±á±á±¢",
"history-feed-description": "ᱩá±á± ᱤᱨᱮ ᱱᱤá±á±á±¹ á±¥á±á±¦á±´á± á±µá±á±«á±á± ᱨᱮᱱá±á± á±±á±á±á±á±¢",
- "history-feed-item-nocomment": "re",
- "rev-deleted-comment": "(Sompadon reaḱ guṠkatha do ocoǵ hoena)",
- "rev-deleted-user": "(laá¹caá¹iÄ Åutum ocoḱena)",
+ "history-feed-item-nocomment": "$2 ᱨᱮ $1",
+ "rev-deleted-comment": "(á±¥á±á±¯á±²á±á±£ ᱢᱩᱬᱩᱠᱠá±á±á±¦á± á±á±ªá±á±á± á±á±±á±)",
+ "rev-deleted-user": "(ᱵᱮᱵᱷá±á±¨á±¤á±á±á± ᱧᱩá±á±©á±¢ á±á±ªá±á±á± á±á±±á±)",
"rev-deleted-event": "(Log kạmi do ocog hoena)",
- "rev-deleted-user-contribs": "[BeohariÄaḱ Åutum se IP á¹hikạna do ocog hoena - kạmi khon sompadon do uku hoe akana]",
- "rev-delundel": "Juá¸awaḱko Åel",
- "rev-showdeleted": "Uduḱme",
+ "rev-deleted-user-contribs": "[ᱵᱮᱵᱷá±á±¨á±¤á±¡ ᱧᱩá±á±©á±¢ ᱥᱮ IP ᱴᱷᱤᱠá±á±±á± ᱫᱠá±á±ªá±á± ᱦᱩá±á±±á± - ᱮᱱᱮᱢ á± á±·á±á±± á±¥á±á±¯á±²á±á±£ ᱫᱠᱩᱠᱩ á±á± á±á±±á±]",
+ "rev-delundel": "ᱧᱮᱧᱮá±á±á± á±µá±á±«á±á±",
+ "rev-showdeleted": "á±¥á±á±«á±á±¨",
"revisiondelete": "á±á±®á±« á±á±¤á±°á±¤/á±µá±á± á±á±®á±« á±á±¤á±°á±¤ ᱥᱩᱫᱷᱨá±á±¹á±£á± á±",
- "revdelete-show-file-submit": "Hẽ",
+ "revdelete-show-file-submit": "ᱦᱮᱸ",
"revdelete-hide-text": "Nãwã aroe olko ukuemẽ",
- "revdelete-hide-image": "Rẽt reaḱ babotko ukue mẽ",
+ "revdelete-hide-image": "ᱨᱮᱫ á±¥á±á±á±á±¢á± ᱩ ᱩᱠᱩá±á±¢á±®",
"revdelete-hide-name": "Kạmi ar bejha ukue mẽ",
"revdelete-hide-comment": "Sompadon gut katha ukue mẽ",
"revdelete-hide-user": "SompadoniÄaḱ beohar Åutum/IP á¹hikạna ukuemẽ",
- "revdelete-radio-same": "(alom bodola)",
+ "revdelete-radio-same": "(á±á±á±á±¢ á±µá±á±«á±á±á±)",
"revdelete-radio-set": "ᱩᱠᱩ",
"revdelete-radio-unset": "ᱧᱮᱠá±á±á±±á±á±",
- "revdelete-log": "Babot:",
- "revdel-restore": "Judạ lekate Åel",
+ "revdelete-log": "á±á±¡á±®:",
+ "revdel-restore": "ᱧᱮᱧᱮá±á±á± á±µá±á±«á±á±",
"pagehist": "á±¥á±á±¦á±´á± á±±á±á±á±á±¢",
- "deletedhist": "Get giá¸i jạá¹",
- "revdelete-reasonotherlist": "Eá¹aḱak karon",
+ "deletedhist": "á±á±®á±« á±á±¤á±°á±¤á±á±á± á±á±± á±±á±á±á±á±¢",
+ "revdelete-reasonotherlist": "ᱮᱴá±á± á±á±¡á±®",
"mergehistory-from": "ᱯᱷᱮᱰá±á± á±¥á±á±¦á±´á±á±º",
"mergehistory-reason": "á±á±¡á±®:",
"mergelog": "á±á±á±á±½ ᱢᱮᱥá±",
- "revertmerge": "baÅ mitÌ",
+ "revertmerge": "á±µá±á± ᱢᱤá±",
"history-title": "\"$1\" ᱨᱮᱱá±á± ᱥᱩᱫᱷᱨá±á±¹á±£ á±±á±á±á±á±¢",
"difference-title": "\"$1\" ᱨᱮᱱá±á± ᱫá±á±¦á±²á±á±á±®á±± á±á±á±á±á±¨á±® ᱯᱷá±á±¨á±á± ",
"lineno": "ᱫᱷá±á±¹á±² $1:",
@@ -603,70 +603,70 @@
"diff-multi-sameuser": "({{PLURAL:$1|ᱢᱤᱫ á±á±á±á±-á±¢á±á±á± ᱫá±á±¦á±²á±|$1 á±á±á±á±-á±¢á±á±á± ᱫá±á±¦á±²á±á± á±}} á±¥á±á±¢á±á±± ᱵᱮᱵᱷá±á±¨á±¤á±á±á±¹ ᱫá±á±¨á±á±á±á±® á±µá±á± ᱧᱮá±á±á±-á±)",
"diff-multi-otherusers": "({{PLURAL:$1|ᱢᱤᱫ á±á±á±á±-á±¢á±á±á± ᱫá±á±¦á±²á±|$1 á±á±á±á±-á±¢á±á±á± ᱫá±á±¦á±²á±á± á±}} {{PLURAL:$2|ᱢᱤᱫ ᱮᱴá±á± ᱵᱮᱵᱷá±á±¨á±¤á±á±á±¹|$2 ᱵᱮᱵᱷá±á±¨á±¤á±á±á±¹á± á±}} á±µá±á± ᱠᱧᱮá±á±á±-á±)",
"searchresults": "ᱥᱮᱸᱫᱽᱨᱠá±á±¨á±¡á±á± á±³",
- "searchresults-title": "\"$1\" ᱨᱮᱱá±á± ᱥᱮᱸᱫᱽᱨᱠᱯᱷá±á±",
- "prevn": "Laha reaḱ {{PLURAL:$1|$1}}",
- "nextn": "Táyom teaḱ {{PLURAL:$1|$1}}",
+ "searchresults-title": "\"$1\" ᱨᱮᱱá±á± ᱥᱮᱸᱫᱽᱨᱠá±á±¨á±¡á±",
+ "prevn": "á±á±á±¦á±á±á±®á±±á±á± {{PLURAL:$1|$1}}",
+ "nextn": "á±á±á±á±á±¢á±á±®á±±á±á± {{PLURAL:$1|$1}}",
"prev-page": "ᱯá±á±ªá±® á±¥á±á±¦á±´á±",
"next-page": "ᱫá±á±¨á±á± á±¥á±á±¦á±´á±",
"prevn-title": "á±á±á±¦á±á±á±®á±±á±á± $1 {{PLURAL:$1|á±á±¨á±¡á±|á±á±¨á±¡á±á± á±}}",
- "nextn-title": "Tayom $1 {{PLURAL:$1|result|results}}",
+ "nextn-title": "á±á±á±á±á±¢á±á±®á±±á±á± $1 {{PLURAL:$1|á±á±¨á±¡á±|á±á±¨á±¡á±á± á±}}",
"shown-title": "á±¥á±á±¦á±´á± $1 {{PLURAL:$1|á±á±¨á±¡á±|á±á±¨á±¡á±á± á±³}} ᱩᱰᱩá±á±½á±¢á±®",
- "viewprevnext": "Åelme ($1 {{int:pipe-separator}} $2) ($3)",
+ "viewprevnext": "ᱧᱮá±á±¢á±® ($1 {{int:pipe-separator}} $2) ($3)",
"searchmenu-exists": "á±¥á±á±¦á±´á± ᱧᱤá±á±©á±¢ ᱫᱠ\"[[:$1]]\" ᱱᱤá±á±á±¹ ᱩá±á± ᱤᱨᱮ᱾ {{PLURAL:$2|0=|á±á±¨á±¦á±á±¸ ᱧᱮá±á±¢á±® ᱮᱴá±á± ᱥᱮᱸᱫᱽᱨᱠá±á±¨á±¡á± á± á±á±¨á±®á±¾}}",
"searchmenu-new": "á±¥á±á±¦á±´á± á±á±®á±á±á±¨ ᱢᱮ \"[[:$1]]\" á±±á±á±¶á± ᱣᱤᱠᱤ ᱨᱮ! {{PLURAL:$2|0=|á±á±¢á±á± ᱥᱮᱸᱫᱽᱨᱠá±á±® ᱧá±á±¢á±®á±± á±¥á±á±¦á±´á± ᱧᱮá±á±¢á±®|ᱧá±á±¢á±®á±± ᱥᱮᱸᱫᱽᱨᱠá±á±¨á±¡á± ᱠᱠᱦá±á±¸ ᱧᱮá±á±¢á±®}}",
"searchprofile-articles": "ᱩᱱᱩᱫᱩᱠᱥá±á±¦á±´á±á± á±",
- "searchprofile-images": "Multimedia",
+ "searchprofile-images": "á±¢á±á±á±´á±¤á±¢á±¤á±°á±¤á±á±",
"searchprofile-everything": "ᱡá±á±á±á±á±®",
- "searchprofile-advanced": "Sompadon",
+ "searchprofile-advanced": "á±¢á±á±²á±á±",
"searchprofile-articles-tooltip": "$1 ᱨᱮ ᱥᱮᱸᱫᱽᱨá±á±á±¢á±®",
"searchprofile-images-tooltip": "ᱨᱮᱫᱠᱩ ᱥᱮᱸᱫᱽᱨá±",
"searchprofile-everything-tooltip": "ᱡá±á±á± á±¥á±á±á±á±¢ á±¥á±á±¦á±´á±á±¨á±® ᱥᱮᱸᱫᱽᱨá±á± ᱢᱮ (ᱨá±á±² á±¥á±á±¦á±´á± á± á±á±¦á±á±¸)",
"searchprofile-advanced-tooltip": "ᱵᱮᱱá±á±£ ᱧᱤá±á±©á±¢ á±á±® ᱥᱮᱸᱫᱽᱨá±",
"search-result-size": "$1 ({{PLURAL:$2|1 á±á±¹á±²á±á±¹|$2 á±á±¹á±²á±á±¹á± á±³}})",
- "search-result-category-size": "{{PLURAL:$1 1 gãoren $1 gãota renko}} ({{PLURAL:$2 1 kạá¹ic rokom sokom $ 2 goá¹en}}, {{PLURAL:$3 1 rẽt $3 rẽtko}})",
+ "search-result-category-size": "{{PLURAL:$1|1 á±¥á±á±¦á±®á±«|$1 á±¥á±á±¦á±®á±«á± ᱩ}} ({{PLURAL:$2|1 ᱦᱩᱰᱤᱧ á±á±·á±á± |$ 2 ᱦᱩᱰᱤᱧ á±á±·á±á± ᱠᱩ}}, {{PLURAL:$3|1 ᱨᱮᱫ|$3 ᱨᱮᱫᱠᱩ}})",
"search-redirect": "(á±¥á±á±¡á±·á±® ᱦᱤᱡᱩá±-á± $1 á± á±·á±á±±)",
- "search-section": "(Pahaá¹a $1)",
+ "search-section": "(á±á±·á±á± $1)",
"search-file-match": "(ᱢᱤᱫᱩá±á±á± ᱨᱮᱫ ᱩᱱᱩᱫᱩá±)",
"search-suggest": "ᱪᱮᱫ ᱮᱢ ᱢᱮᱱ á±á±ªá±á±á±®á±«á±: $1",
"search-interwiki-caption": "ᱦá±á±¯á±á±± ᱯᱨá±á±¡á±®á± á±´ á± á±·á±á±± á±á±¨á±¡á±",
"search-interwiki-default": "$1 folko:",
- "search-interwiki-more": "(Arhõ)",
+ "search-interwiki-more": "(á±µá±á±¹á±²á±á±¤)",
"search-interwiki-more-results": "á±µá±á±¹á±²á±á±¤ á±á±¨á±¡á±á± á±",
"search-relatedarticle": "á±¥á±á±¹á±á±á±¹á±á±á±±",
- "searchrelated": "songenko",
+ "searchrelated": "á±¥á±á±¹á±á±á±¹á±á±á±±á± ᱩ",
"searchall": "ᱡá±á±á±",
"search-showingresults": "{{PLURAL:$4|á±á±¨á±¡á± $1 ᱨᱮᱱá±á± $3|á±á±¨á±¡á±á± á± $1 - $2 ᱨᱮᱱá±á± $3}}",
- "search-nonefound": "Kupuli leka roá¹ruạṠbạnuḱa",
+ "search-nonefound": "ᱠᱩᱠá±á±¤ á±¥á±á±¶á±á±® ᱯᱷá±á± á±µá±á± ᱢᱤá±á±á±¹á±® á±á±®á±±á±á±¾",
"powersearch-ns": "ᱨá±á± ᱷᱠᱧᱩá±á±©á±¢ ᱨᱮ ᱥᱮᱸᱫᱽᱨá±",
- "powersearch-togglelabel": "Sendra",
- "powersearch-toggleall": "Sanamaḱ",
- "powersearch-togglenone": "Okaá¹aḱ hõ baá¹
",
+ "powersearch-togglelabel": "á± á±·á±á±¸á±¡á±½:",
+ "powersearch-toggleall": "ᱡá±á±á±",
+ "powersearch-togglenone": "á±á± á±á±´á±á± ᱦá±á±¸ á±µá±á±",
"preferences": "ᱠᱩᱥᱤᱠá±",
"mypreferences": "ᱠᱩᱥᱤᱠá±",
"prefs-edits": "á±¥á±á±¯á±²á±á±£á±á± á±®á±:",
- "prefs-skin": "Harta",
- "skin-preview": "Åel, Unuduḱ",
- "datedefault": "Pạsind banuḱa",
+ "prefs-skin": "ᱦá±á±¨á±á±",
+ "skin-preview": "ᱧᱮᱠᱵᱤᱰá±á±¹á±£",
+ "datedefault": "ᱠᱩᱥᱤ á±µá±á±¹á±±á±©á±-á±",
"prefs-user-pages": "ᱵᱮᱵᱦá±á±¨á±¤á±á±á± á±¥á±á±¦á±´á±á± á±",
- "prefs-resetpass": "Uku nombor bodolme",
+ "prefs-resetpass": "ᱫá±á±±á±á± á±¥á±á±µá±á±«á±½ á±µá±á±«á±á±",
"prefs-changeemail": "E-mail á¹hikạna bodolme",
- "prefs-setemail": "E-mail á¹hikana benaome",
- "saveprefs": "Rukhiyạymẽ",
- "searchresultshead": "Sendra",
- "timezoneregion-africa": "Aphrika",
- "timezoneregion-america": "Amirika",
- "timezoneregion-asia": "Esiya",
- "timezoneregion-australia": "Ausá¹ralia",
+ "prefs-setemail": "ᱤᱢᱮᱠᱵᱩᱴá±á±¹ ᱡá±á±²á±á±£á±¢á±®",
+ "saveprefs": "ᱨᱩᱠᱷᱤá±á±á±¹á±á±¢á±®",
+ "searchresultshead": "ᱥᱮᱸᱫᱽᱨá±",
+ "timezoneregion-africa": "á±á±¯á±·á±¨á±¤á± á±",
+ "timezoneregion-america": "á±á±¢á±®á±¨á±¤á± á±",
+ "timezoneregion-asia": "ᱮᱥᱤá±á±",
+ "timezoneregion-australia": "á±á±¥á±´á±¨á±®á±á±¤á±á±",
"prefs-searchoptions": "ᱥᱮᱸᱫᱽᱨá±",
- "prefs-files": "Rẽtko",
- "youremail": "E-mail:",
+ "prefs-files": "ᱨᱮᱫᱠá±",
+ "youremail": "Email:",
"username": "BeohariÄaḱ Åutum:",
- "yourrealname": "Sạri Åutum",
+ "yourrealname": "á±á±¥á±á± ᱧᱩá±á±©á±¢:",
"yourlanguage": "ᱯá±á±¹á±¨á±¥á±¤:",
"yournick": "á±±á±á±¶á± ᱥᱩᱦᱤ:",
"gender-male": "Baba hoá¹",
"gender-female": "Gogo hoá¹, Kuá¹i, Kuá¹i gidrạ",
- "email": "E-mail",
+ "email": "Email",
"prefs-help-email": "E-mail á¹hikana do bạá¹titege, menkhan uku namber nãwãte benao jạruá¹a, am do amaḱ uku nomborem hiá¹iÅ keda.",
"prefs-help-email-others": "Am são e-mail hotete jogajog dohoy lạgitte mitá¹en joá¹ao se amaḱ katha roá¹aḱ sakam bachao joÅme.\nAmaḱ e-mail á¹hikạna do baÅ cabaḱa tinre onko do ko beohara",
"prefs-signature": "ᱥᱩᱦᱤ",
@@ -674,7 +674,7 @@
"prefs-preview": "ᱧᱮᱠᱵᱤᱰá±á±¹á±£",
"userrights": "BeohariÄaḱ laá¹caá¹ ektiạrko",
"userrights-lookup-user": "Beoharkoaḱ gãotako laá¹caá¹",
- "userrights-user-editname": "BeohariÄaḱ Åutum emmẽ",
+ "userrights-user-editname": "ᱵᱮᱵᱦá±á±¨á±¤á±á±á± ᱧᱤá±á±©á±¢ á±µá±á±á±á± ᱢᱮ:",
"editusergroup": "BeohariÄaḱ gãotako toá¹
geymẽ",
"userrights-editusergroup": "BeohariÄaḱ gãotako toá¹
geymẽ",
"saveusergroups": "BeohariÄaḱ gãotako rukhiyaymẽ",
@@ -683,19 +683,19 @@
"group-sysop": "á±á±°á±¢á±¤á±±á±¤á±¥á±´á±¨á±®á±´á±á±¨",
"grouppage-bot": "{{ns:project}}:á±µá±á±´á± á±",
"grouppage-sysop": "{{ns:project}}:ᱯá±á±¨á±á±á±±á±á± á±",
- "right-read": "Sakamko paá¹haomẽ",
- "right-edit": "Sakamko toá¹
ge",
+ "right-read": "á±¥á±á±¦á±´á±á± ᱩ ᱯá±á±²á±¦á±á±£á±¢á±®",
+ "right-edit": "á±¥á±á±¦á±´á±á± ᱩ á±¥á±á±¯á±²á±á±£",
"right-createpage": "Sakamko benoamẽ (Okako do galmarao sakamko baá¹
kan)",
- "right-createtalk": "Galmarao sakamko benaomẽ",
+ "right-createtalk": "á±á±á±á±¢á±á±¨á±á±£ á±¥á±á±¦á±´á±á± ᱩ ᱵᱮᱱá±á±£á±¢á±®",
"right-createaccount": "á±±á±á±¶á± ᱵᱮᱵᱷá±á±¨á±¤á±á±á±¹ á± á±·á±á±á± á±á±®á±á±á±¨",
- "right-move": "Sakamko ocogmẽ",
+ "right-move": "á±¥á±á±¦á±´á±á± á± á±¥á±á±¦á±á±á±¢á±®",
"right-move-subpages": "á±¥á±á±¦á±´á± á±¥á±á±¦á±á±¦á±á±á±¢á±® á±¥á±á±¶á±á±®á±± á±¥á±á±¦á±´á±á± á± á±¥á±á±¶",
- "right-movefile": "Rẽtko ocogmẽ",
- "right-upload": "Rẽtko rakabmẽ",
+ "right-movefile": "ᱨᱮᱫᱠᱠá±á±ªá±á±á±½ ᱢᱮ",
+ "right-upload": "ᱨᱮᱫ á± á± á±á±á±«á±®á±¢á±®",
"right-writeapi": "á±á± API ᱨᱮᱱá±á± ᱵᱮᱵᱷá±á±¨",
- "right-delete": "Sakamko get giá¸iymẽ",
+ "right-delete": "á±¥á±á±¦á±´á±á± á± á±á±®á±«á±½ ᱢᱮ",
"right-browsearchive": "ᱥᱮᱸᱫᱽᱨá±á± ᱢᱮ á±á±®á±« á±á± á±á±±á± á±¥á±á±¦á±´á±á± á±",
- "newuserlogpage": "Laá¹caá¹iÄaḱ tear cạbi",
+ "newuserlogpage": "ᱵᱮᱵᱦá±á±¨á±¤á±á±á± á±á±®á±á±á±¨ ᱪá±á±¹á±µá±¤",
"rightslog": "ᱵᱮᱵᱷá±á±¨á±¤á±á±á±¹ á±á±¹á±á±«á±á±¹á±¨ á±á±á±á±½",
"action-edit": "á±±á±á±á± á±¥á±á±¦á±´á± á±¥á±á±¯á±²á±á±£á±¢á±®",
"action-createaccount": "á±±á±á±¶á± ᱵᱮᱵᱷá±á±¨á±¤á±á±á±¹ á± á±·á±á±á± ᱵᱮᱱá±á±£",
@@ -716,17 +716,17 @@
"action-browsearchive": "ᱥᱮᱸᱫᱽᱨá±á± ᱢᱮ á±á±®á±« á±á± á±á±±á± á±¥á±á±¦á±´á±á± á±",
"action-undelete": "á±µá±á± á±á±®á±«á±á± á±¥á±á±¦á±´á±á± á±",
"action-suppressrevision": "ᱧᱮá±á±á±¹á±¨á±© á±á±¨ á±á±·á±á±¯á±á±±á±á±¹á±¨á±© ᱫá±á±±á±á± ᱧᱮá±á±á±¹á±¨á±©á± á±",
- "nchanges": "$1 {{PLURAL:$1 bodol bodolko}}",
+ "nchanges": "$1 {{PLURAL:$1|á±á±¹á±¨á±©|á±á±¹á±¨á±©á± á±}}",
"enhancedrc-history": "á±±á±á±á±á±¢",
"recentchanges": "ᱨá±á± á± á±µá±á±«á±á±á± á±",
- "recentchanges-legend": "Nahaḱ bodol teaḱko",
+ "recentchanges-legend": "á±±á±á±£á±á±±á± á±µá±á±«á±á± á±á±®á±á±á±á± á±",
"recentchanges-summary": "á±±á±á±£á± á±¥á±á±¦á±´á±á±¨á±® ᱩá±á± ᱤ ᱨᱮá±á±á± ᱡá±á±á± á± á±·á±á±± á±±á±á±£á± á±µá±á±«á±á±á± ᱠᱯá±á±¸á±¡á±á±¸á±á±¢á±®á±¾",
"recentchanges-noresult": "ᱮᱢá±á±®á±± á±¥á±á±¢á±á± ᱵᱷᱤá±á±¤á±¨ ᱨᱮ á±µá±á±«á±á±á±á± á± á± á±µá±á± ᱢᱤᱫᱩᱠᱠá±á±±á± á±¾",
"recentchanges-feed-description": "á±±á±á±£á± feed ᱨᱮ ᱩá±á± ᱤ ᱨᱮá±á±á± ᱡá±á±á± á± á±·á±á±± á±±á±á±£á± á±µá±á±«á±á±á± ᱠᱯá±á±¸á±¡á±á±¸á±á±¢á±®á±¾",
"recentchanges-label-newpage": "á±±á±á±£á± á±¥á±á±¯á±²á±á±£ ᱢᱤᱫᱴᱮᱱ á±±á±á±£á± á±¥á±á±¦á±´á±á± á±á±®á±á±á±¨á± ᱮᱫá±",
"recentchanges-label-minor": "á±±á±á±£á± ᱫᱠᱦᱩᱰᱤᱧ á±¥á±á±¯á±²á±á±£ á± á±á±±á±",
"recentchanges-label-bot": "á±±á±á±£á± á±¥á±á±¯á±²á±á±£ ᱫᱠᱵá±á±´ á±® á± á±á±¨á±á±£á± á±á±«á±",
- "recentchanges-label-unpatrolled": "Noa sompadon do ÅitÌ hạbiÄ baá¹
Åel Åamakana",
+ "recentchanges-label-unpatrolled": "á±±á±á±£á± á±¥á±á±¯á±²á±á±£ ᱱᱤᱠᱫᱷá±á±¹á±µá±¤á±¡ á±µá±á± ᱧᱮᱠᱧá±á±¢ á±á± á±á±±á±",
"recentchanges-label-plusminus": "á±¥á±á±¦á±´á± ᱫᱠᱵá±á±«á±á±á±®á±±á± ᱱᱤᱱá±á±¹á± ᱮᱠᱵá±á±á±¤á±´á±¥ á±á±®",
"recentchanges-legend-heading": "á±á±¤á±¡á±®á±¸á±°:",
"recentchanges-legend-newpage": "{{int:recentchanges-label-newpage}} (á±á±¨á±¦á±á±¸ ᱧᱮá±á±¢á±® [[Special:NewPages|á±±á±á±¶á± á±¥á±á±¦á±´á± á±á±¤á±¥á±´á±¤]])",
@@ -753,13 +753,13 @@
"rcshowhidebots": "á±µá±á±´á± á± $1",
"rcshowhidebots-show": "ᱧᱮá±",
"rcshowhidebots-hide": "ᱫá±á±±á±á±",
- "rcshowhideliu": "Regisá¹ari beohariÄko $1",
+ "rcshowhideliu": "á±µá±á±á±á±£á± á±á±± ᱵᱮᱵá±á±¦á±á±¨á±¤á± ᱩ $1",
"rcshowhideliu-show": "ᱧᱮá±",
"rcshowhideliu-hide": "ᱫá±á±±á±á±",
"rcshowhideanons": "$1 ᱧᱤá±á±©á±¢ á±µá±á±±á±©á± ᱵᱮᱵᱦá±á±¨á±¤á±ª",
"rcshowhideanons-show": "ᱧᱮá±",
"rcshowhideanons-hide": "ᱫá±á±±á±á±",
- "rcshowhidepatr": "$1 Biá¸áº¡en sompadonko",
+ "rcshowhidepatr": "$1 ᱵᱤᱰá±á±á±®á±± á±¥á±á±¯á±²á±á±£á± ᱩ",
"rcshowhidepatr-show": "á±¥á±á±«á±á±¨",
"rcshowhidepatr-hide": "ᱫá±á±±á±á±",
"rcshowhidemine": "$1 ᱤᱧá±á± á±¥á±á±¯á±²á±á±£á± ᱩ",
@@ -768,7 +768,7 @@
"rcshowhidecategorization": "$1 á±¥á±á±¦á±´á± á±á±·á±á± ",
"rcshowhidecategorization-show": "ᱧᱮá±",
"rcshowhidecategorization-hide": "ᱫá±á±±á±á±",
- "rclinks": "$2 din lahare $1 bodol unuduḱme",
+ "rclinks": "$2 ᱫᱤᱱ á±á±á±¦á±á±¨á±® $1 á±µá±á±«á±á± ᱩᱫᱩá±á±½á±¢á±®",
"diff": "ᱡᱩᱫá±á±¹",
"hist": "á±±á±á±á±á±¢",
"hide": "ᱫá±á±±á±á±",
@@ -778,29 +778,29 @@
"boteditletter": "b",
"rc-change-size-new": "$1 {{PLURAL:$1|á±µá±á±á±¤á±´|á±µá±á±á±¤á±´á±¥}} á±µá±á±«á±á± á±á±á±á±á±¢",
"rc-enhanced-expand": "Purạote uduḱ",
- "rc-enhanced-hide": "Purạo cuku",
+ "rc-enhanced-hide": "ᱡá±á±á±á±á±á± ᱩᱠᱩá±á±¢á±®",
"rc-old-title": "á±á±¥á±á±á±¨á±® á±á±®á±á±á±¨á±á± á±á±±á± \"$1\" á±á±®á± á±á±á±®",
"recentchangeslinked": "á±¥á±á±¶á±á±®á±±á±á± á±µá±á±«á±á±á± á±",
"recentchangeslinked-feed": "á±¥á±á±¹á±á±á±¹á±á±á±± á±µá±á±«á±á±á± á±",
"recentchangeslinked-toolbox": "á±¥á±á±¹á±á±á±¹á±á±á±± á±µá±á±«á±á±á± á±",
- "recentchangeslinked-title": "Bodolaḱko do \"$1\" sãote joá¹ao geya",
- "recentchangeslinked-summary": "á±±á±á±£á± ᱫᱠá±á±±á± á±á±á±¹á±á± á±á±¹ á± á±á±±á± á±á± ᱠᱫᱠᱱᱮᱵᱮá±á±á±¨á±á±® á±µá±á±«á±á± ᱦᱩᱠá±á± á±á±±á± á±á± ᱠᱫᱠcategory ᱦá±á±á±á±£ á±á± á±á±± á±¥á±á± á±á±¢ á± á±·á±á±±á±¾\n\n[[Special:Watchlist|your watchlist]] ᱨᱮá±á±á± á±¥á±á±¦á±´á± ᱫá±'''bold''' .",
+ "recentchangeslinked-title": "á±µá±á±«á±á±á±á± á± á±á±«á± \"$1\" á±¥á±á±¶á±á±® ᱡá±á±²á±á±£ á±á±®á±á±",
+ "recentchangeslinked-summary": "á±±á±á±£á± ᱫᱠá±á±±á± á±á±á±¹á±á± á±á±¹ á± á±á±±á± á±á± ᱠᱫᱠᱱᱮᱵᱮá±á±á±¨á±á±® á±µá±á±«á±á± ᱦᱩᱠá±á± á±á±±á± á±á± ᱠᱫᱠcategory ᱦá±á±á±á±£ á±á± á±á±± á±¥á±á± á±á±¢ á± á±·á±á±±á±¾\n\n[[Special:Watchlist|your watchlist]] ᱨᱮá±á±á± á±¥á±á±¦á±´á± ᱫᱠ'''bold''' .",
"recentchangeslinked-page": "á±¥á±á±¦á±´á± ᱧᱤá±á±©á±¢ :",
"recentchangeslinked-to": "ᱡá±á±±á±á±² á±¥á±á±¦á±´á±á±¨á±® ᱧᱮᱠá±á±ªá±á± ᱢᱮ ᱮᱢá±á± á±¥á±á±¦á±´á± á±µá±á±¹á±á±¤ á± á±á±á±®",
"upload": "ᱨᱮᱫ á±á±á±«á±®á±¢á±®",
- "uploadbtn": "Rẽt rakabmẽ",
- "uploadlogpage": "Chạbi do uthạome",
- "filename": "Rẽt Åutum",
- "filedesc": "Guá¹ katha",
- "fileuploadsummary": "Guá¹ katha",
+ "uploadbtn": "ᱨᱮᱫ á±á±á±«á±®",
+ "uploadlogpage": "ᱨá±á± á±á±µ á±á±á±¹á±á± á±á±¹",
+ "filename": "ᱨᱮᱫ ᱧᱩá±á±©á±¢",
+ "filedesc": "ᱢᱩᱬᱩᱠᱠá±á±á±¦á±",
+ "fileuploadsummary": "ᱢᱩᱬᱩᱠᱠá±á±á±¦á±:",
"filestatus": "á±á±«á±á± á±á±µá±á±¥á±á±:",
- "savefile": "Rẽt rukhiyaymẽ",
+ "savefile": "ᱨᱮᱫ ᱨᱩᱠᱷᱤá±á±á±¹á±á±¢á±®",
"upload-source": "ᱯᱷᱮᱰá±á± ᱨᱮᱫ",
"sourcefilename": "ᱯᱷᱮᱰá±á± ᱨᱮᱫᱧᱩᱢ:",
"sourceurl": "ᱯᱷᱮᱰá±á± URL:",
- "upload-description": "Rẽt reaḱ jạá¹",
- "watchthisupload": "Noa rẽt Åelmẽ",
- "upload-file-error": "Bhitri reaḱ bhul",
+ "upload-description": "ᱨᱮᱫ ᱵᱤᱵá±á±¨á±á±±á±¤",
+ "watchthisupload": "á±±á±á±£á± ᱨᱮᱫ ᱧᱮá±á±¢á±®",
+ "upload-file-error": "ᱵᱷᱤá±á±¨á±¤ ᱵᱷᱩá±",
"upload-dialog-title": "ᱨᱮᱫ á±á±á±«á±®",
"upload-dialog-button-cancel": "á±µá±á±«á±½",
"upload-dialog-button-back": "á±á±á±á±á±¢",
@@ -812,22 +812,22 @@
"upload-form-label-usage-filename": "ᱨᱮᱫ ᱧᱩá±á±©á±¢",
"upload-form-label-own-work": "á±±á±á±¶á± ᱫᱠᱤᱧá±á± á± á±á±¹á±¢á±¤á±á±á±",
"upload-form-label-infoform-date": "á±¢á±á±¹á±¦á±¤á±",
- "license": "Laisence benao",
- "license-header": "Laisense benao",
+ "license": "á±á±á±á±¥á±®á±±á±¥ á±á±®á±á±á±¨:",
+ "license-header": "á±á±á±á±¥á±®á±±á±¥ á±á±®á±á±á±¨",
"imgfile": "ᱨᱮᱫ",
"listfiles": "ᱨᱮᱫ á±á±á±¹á±á± á±á±¹",
- "listfiles_date": "Tạrikh",
- "listfiles_name": "Åutum",
- "listfiles_user": "BeohariÄ, Laá¹caá¹ic",
+ "listfiles_date": "á±¢á±á±¹á±¦á±¤á±",
+ "listfiles_name": "ᱧᱩá±á±©á±¢",
+ "listfiles_user": "ᱵᱮᱵᱦá±á±¨á±¤á±¡",
"file-anchor-link": "ᱨᱮᱫ",
"filehist": "ᱨᱮᱫ ᱨᱮá±á±á± á±±á±á±á±á±¢",
"filehist-help": "á±á± á±á± ᱨᱮ á±á±¤á±± ᱢᱮ/á±á± á±á± ᱨᱮ ᱨᱮᱫ ᱧᱮᱠá±á±á±¹á±á±¤á± á±á±¤á±± ᱢᱮ",
- "filehist-deleteall": "Joto get giá¸i",
- "filehist-deleteone": "Get giá¸i",
- "filehist-revert": "Lahaleka",
+ "filehist-deleteall": "ᱡá±á±á± á±á±®á±« á±á±¤á±°á±¤á±á±¢á±®",
+ "filehist-deleteone": "á±á±®á±« á±á±¤á±°á±¤",
+ "filehist-revert": "ᱨᱩᱣá±á±¹á±² á±á±¹á±á±©",
"filehist-current": "ᱱᱤá±á±á±",
"filehist-datetime": "á±á±á±¹á±¨á±¤á± á±·/á±á± á±á±",
- "filehist-thumb": "Ṭip",
+ "filehist-thumb": "ᱴᱤᱯ",
"filehist-thumbtext": "Thumbnail for version as of $1",
"filehist-nothumb": "á±µá±á±¹á±±á±©á±-ᱠᱴᱤᱯ-ᱨá±á±¢á±",
"filehist-user": "ᱵᱮᱵᱦá±á±¨á±¤á±¡á±½",
@@ -843,30 +843,30 @@
"upload-disallowed-here": "á±á±¢á±«á± á±±á±á±£á± ᱨᱮᱫ ᱪᱮá±á±á±± á±µá±á±¢ á±á± ᱫá±á±²á±®á±á±á±-á±á±¾",
"mimesearch": "MIME ᱥᱮᱸᱫᱽᱨá±",
"randompage": "ᱡá±á±²á±á±£ á±¥á±á±¦á±´á±",
- "statistics": "Halot",
- "statistics-pages": "Sakamko",
+ "statistics": "ᱦá±á±á±á±",
+ "statistics-pages": "á±¥á±á±¦á±´á±á± á±",
"double-redirect-fixer": "á±¢á±á±¸á±¦á±á±°á± á±´á±·á±á±¹á±£á± á±á±¹á±á±¤á±¡",
"nbytes": "$1 {{PLURAL:$1|byte|bytes}}",
- "nmembers": "$1 {{PLURAL:$1 Gaõtaren Gaõtarenko}}",
+ "nmembers": "$1 {{PLURAL:$1|á±¥á±á±¦á±®á±«|á±¥á±á±¦á±®á±«á± ᱩ}}",
"prefixindex": "ᱡá±á±á± á±¥á±á±¦á±´á±á± á± prefix á±¥á±á±¶",
- "shortpages": "Huá¸iÅ sakamko",
- "longpages": "JiliÅ sakamko",
+ "shortpages": "ᱦᱩᱰᱤᱧ á±¥á±á±¦á±´á±á± á±",
+ "longpages": "á±á±á±¹á±´á±© á±¥á±á±¦á±´á±á± á±",
"listusers": "ᱵᱮᱵᱦá±á±¨á±¤á±¡ á±á±á±¹á±á± á±á±¹",
"listusers-creationsort": "á±á±®á±á±á±¨á±á± á±á±± á±¢á±á±¹á±¦á±¤á± á±á±®á± á±á±á±® ᱯá±á±±á±á±®",
- "usercreated": "{{JẠT: $3 | benawakan}} $1 tarikre $2 okte",
+ "usercreated": "{{ᱡá±á±±á±á±:$3|ᱵᱮᱱá±á±£á± á±á±±}} $1 á±¢á±á±¹á±¦á±¤á±á±¨á±® $2 á±á± á±á±á±¨á±®",
"newpages": "á±±á±á±¶á± á±¥á±á±¦á±´á±á± á±³",
- "newpages-username": "BeohariÄaḱ Åutum:",
- "ancientpages": "Mare sakamko",
+ "newpages-username": "ᱵᱮᱵᱦá±á±¨á±¤á±¡ ᱧᱩá±á±©á±¢á±º",
+ "ancientpages": "á±¢á±á±¨á±® á±¥á±á±¦á±´á±á± á±",
"move": "á±á±ªá±á±",
"movethispage": "á±±á±á±¶á± á±¥á±á±¦á±´á± á±¥á±á±¦á±á±á±¢á±®",
"pager-newer-n": "{{PLURAL:$1|1 á±±á±á±£á±á±±á±á± | á±±á±á±£á±á±±á±á± $1}}",
- "pager-older-n": "{{PLURAL:$1 arhõ mare 1á¹en arhõ mare $1á¹en}}",
+ "pager-older-n": "{{PLURAL:$1|á±¢á±á±¨á±®á±á±á± 1|á±¢á±á±¨á±®á±á±á± $1}}",
"booksources": "ᱯá±á±á±á±µ ᱯᱷᱮᱰá±á± ᱦá±á±¨á± á±",
"booksources-search-legend": "ᱯá±á±á±á±µ ᱨᱮá±á±á± ᱯᱷᱮᱰá±á± ᱦá±á±¨ á±á±á±¹á±á±¤á± ᱥᱮᱸᱫᱽᱨá±",
"booksources-search": "ᱥᱮᱸᱫᱽᱨá±",
"specialloguserlabel": "á± á±á±¹á±¢á±¤á±á±á±¹:",
"speciallogtitlelabel": "ᱡá±á±¥ (ᱧᱩá±á±©á±¢ á±á±¨á±µá±á± {{ns:user}}:ᱵᱮᱵᱷá±á±¨á±¤á±á±á±¹ á±á±á±¹á±á±©á±« ᱵᱮᱵᱷá±á±¨á±¤á±á±á±¹ ᱧᱩá±á±©á±¢):",
- "log": "Cạbiko",
+ "log": "ᱪá±á±¹á±µá±¤á± ᱩ",
"all-logs-page": "ᱡá±á±á± ᱫᱤᱥᱣá±á±¹ á±á±á±á±½ á± á±",
"alllogstext": "ᱢᱮᱥá±á± á±á±á±® ᱩᱫᱩá±á±½á±¢á±® ᱡá±á±á± ᱢᱮᱱá±á± {{SITENAME}} á±á±á±á±½á± á± á±¾\nᱧᱮá±á±á± á± á±á±¢ á± á±á±¹á±¡ ᱫá±á±²á±®á±á±á± á±á±£á± á±á±á±á±½ á±á±®á± á±á±±, ᱵᱮᱵᱷá±á±¨á±¤á±á±á±¹ ᱧᱩá±á±©á±¢ (case-sensitive), á±á±¨á±µá±á± ᱯᱨá±á±µá±·á±á±µá±á±± á±¥á±á±¦á±´á± (also case-sensitive) á± á± á±µá±á±ªá±·á±á±± á± á±á±á±® á±¾",
"logempty": "á±á±á±á±½ ᱨᱮ á±á±±á±á±á±®á± á±á±± ᱡᱤᱱᱤᱥ á±µá±á±¹á±±á±©á±-á± á±¾",
@@ -876,80 +876,80 @@
"allpages-hide-redirects": "á±¢á±á±¦á±°á±á±¦á±á±á± ᱠᱫá±á±±á±á±",
"categories": "á±á±·á±á± á± á±",
"linksearch-ok": "ᱥᱮᱸᱫᱽᱨá±",
- "linksearch-line": "$2 khon $1 re joá¹ao hoeakana",
- "listusers-submit": "Udugmẽ",
- "listusers-blocked": "(Esetgea)",
- "listgrouprights-group": "Gaõta",
- "listgrouprights-rights": "Ạidạriko",
+ "linksearch-line": "$2 á± á±·á±á±± $1 ᱨᱮ ᱡá±á±±á±á±² á±á± á±á±±",
+ "listusers-submit": "ᱧᱮá±",
+ "listusers-blocked": "(ᱮᱥᱮᱫ á±á±®á±á±)",
+ "listgrouprights-group": "á±á±á±¶á±á±",
+ "listgrouprights-rights": "á±á±¹á±á±«á±á±¹á±¨á±¤á± á±",
"listgrouprights-helppage": "Goá¹o:Gaõta ạidạri",
- "listgrouprights-members": "Saõtenkoaḱ tạlika",
- "listgrouprights-addgroup-all": "Joto gaõtare ko soá¹
gekom",
- "listgrouprights-removegroup-all": "Joto gaõtaren ko ocoḱgiá¸ikom",
- "emailuser": "Nui beohariÄ e-mail emayme",
- "noemailtitle": "E-mail á¹hikạna do banuḱa",
- "emailusername": "BeohariÄaḱ Åutum:",
- "emailusernamesubmit": "Em",
- "emailfrom": "KuliÄ:",
- "emailto": "ÅamiÄ:",
- "emailmessage": "Mesag",
- "emailsend": "Kulmẽ",
+ "listgrouprights-members": "(á±¥á±á±¦á±®á±«á± ᱩᱣá±á± á±á±á±¹á±á± á±á±¹)",
+ "listgrouprights-addgroup-all": "ᱡá±á±á± á±á±á±¶á±á±á± ᱩ ᱥᱮá±á±®á±« ᱠᱩ ᱢᱮ",
+ "listgrouprights-removegroup-all": "ᱡá±á±á± á±á±á±¶á±á±á± ᱩ á±á±ªá±á± ᱠᱩ ᱢᱮ",
+ "emailuser": "ᱱᱩᱠᱵᱮᱵᱦá±á±¨á±¤á±¡ e-mail ᱮᱢá±á±á±¢á±®",
+ "noemailtitle": "E-mail ᱴᱷᱤᱠá±á±¹á±±á± ᱫᱠᱵá±á±¹á±±á±©á±-á±",
+ "emailusername": "ᱵᱮᱵᱦá±á±¨á±¤á±¡ ᱧᱩá±á±©á±¢á±º",
+ "emailusernamesubmit": "ᱮᱢ",
+ "emailfrom": "ᱠᱩá±á±¤á±ª:",
+ "emailto": "á±±á±á±¹á±¢á±¤á±ª:",
+ "emailmessage": "á± á±·á±á±µá±á±¨:",
+ "emailsend": "ᱠᱩá±á±¢á±®",
"usermessage-editor": "ᱥᱤᱥᱴá±á±¢ ᱨá±á±á±µá±á±¨",
"watchlist": "ᱧᱮá±á±á± á±á±¤á±¥á±´á±¤",
"mywatchlist": "ᱧᱮá±á±á± á±á±¤á±¥á±´á±¤",
"watchlistfor2": "$1 ($2) á±á±á±¹á±á±¤á±",
"watch": "ᱧᱮá±",
- "unwatch": "bang nelok' a",
+ "unwatch": "á±µá±á±±á± ᱧᱮá±á± á±á±±",
"watchlist-details": "á±µá±á± ᱯᱩᱨá±á±¹á±£ á±á±á±¹á±á± á±á±¹á±¨á±®{{PLURAL:$1 á±¥á±á±¦á±´á± $1 á±¥á±á±¦á±´á±}} ᱢᱮᱱá±á±-á± (ᱨá±á±² á±¥á±á±¦á±´á± á± á±á±¦á±á±¸)",
"wlheader-showupdated": "á±á±¢á±á± ᱢᱩᱪá±á±¹á±« á±µá±á±á±á±á±¨á±® ᱡá±á±¸á±¦á±á±¸ á±¥á±á±¦á±´á± á± á±á±¢ á±µá±á±«á±á± á±á±®á±«á± á±á±±á±á± ᱩ ᱧᱮá±á±á±-á± bold.",
"wlnote": "á±á±á±á±á±¨ ᱨᱮᱱá±á± {{PLURAL:$1|ᱫᱠᱢᱩᱪá±á±¹á±« á±µá±á±«á±á± á± á±á±±á±|ᱠᱠᱫᱠᱢᱩᱪá±á±¹á±« $1 á±µá±á±«á±á±á± á±á±±á±}} ᱢᱩᱪá±á±¹á±« ᱨᱮ {{PLURAL:$2|á±´á±á±²á±á±|$2 á±´á±á±²á±á±}}, $3, $4 á±á±®á± á±á±á±® á±¾",
"wlshowlast": "ᱢᱩᱪá±á±¹á± ᱩᱫᱩá±á±¢á±® $1 á±´á±á±²á±á± $2 á±¢á±á±¦á±á±¸",
- "watchlist-options": "Åelok tạlika reak sonketko",
- "watching": "Åeloḱ kana...",
+ "watchlist-options": "ᱧᱮá±á±á± á±á±á±¹á±á± á±á±¹ ᱨᱮá±á±á± á±¥á±á±á± á±®á±á± ᱩ",
+ "watching": "ᱧᱮá±á±á± á± á±á±±á±...",
"enotif_reset": "ᱱᱤᱱᱦá±á±¹á±á±¢á±® ᱡá±á±á± á±¥á±á±¦á±´á± ᱦᱤᱨᱤá±á±á± á±á±±á±",
"changed": "Bodolena",
"deletepage": "á±¥á±á±¦á±´á± á±á±®á±«á±½ ᱢᱮ",
- "delete-legend": "Get giá¸i",
- "actioncomplete": "kami Chabae-ena",
- "actionfailed": "Kami bang hoe-lena",
- "dellogpage": "Mãrao log",
+ "delete-legend": "á±á±®á±« á±á±¤á±°á±¤",
+ "actioncomplete": "á± á±á±¹á±¢á±¤ ᱪá±á±µá±á±á±±á±",
+ "actionfailed": "á± á±á±¹á±¢á±¤ á±µá±á± ᱦᱩá±á±á±®á±±á±",
+ "dellogpage": "ᱢᱩᱪᱷá±á±¹á±£ ᱪá±á±¹á±µá±¤",
"rollbacklink": "á±á±·á±©á±¨á±á±á±¹á±£ á±á±¹á±ªá±©á±¨",
"rollbacklinkcount": "á±á±á±°á±á±£ ᱨᱩᱣá±á±¹á±² $1 {{PLURAL:$1|á±¥á±á±¯á±²á±á±£|á±¥á±á±¯á±²á±á±£á± á±}}",
"changecontentmodel-reason-label": "á±á±¡á±®:",
"changecontentmodel-submit": "á±µá±á±«á±á±",
- "protectlogpage": "Rukhiyạy tala cạbi",
- "protectedarticle": "Rukhiyạgeya \"[[$1]]\"",
+ "protectlogpage": "ᱨᱩᱠᱷᱤá±á±á±¹á± á±á±á±á± ᱪá±á±¹á±µá±¤",
+ "protectedarticle": "ᱨᱩᱠᱷᱤá±á±á±¹á±á±®á±á± \"[[$1]]\"",
"modifiedarticleprotection": "\"[[$1]]\" á±á±á±¹á±á±¤á±« ᱨᱩᱠᱷá±á±á±¹ á±á±²á±® á±µá±á±«á±á±á±®á±±á±",
- "protectcomment": "karon",
- "protectexpiry": "Cabaḱ",
+ "protectcomment": "á±á±¡á±®:",
+ "protectexpiry": "ᱢᱮá±á±á±« ᱯá±á±¨á±á±¢:",
"protect-default": "ᱡá±á±á± ᱵᱮᱵᱷá±á±¨á±¤á±á±á±¹á± ᱠᱫá±á±£ ᱮᱢ",
"restriction-edit": "á±¥á±á±¯á±²á±á±£",
"restriction-move": "á±á±ªá±á±",
- "restriction-create": "Tearmẽ, Benaomẽ",
- "undeletelink": "Åel/doho ruạá¹",
- "undeleteviewlink": "Åel",
+ "restriction-create": "á±á±®á±á±á±¨",
+ "undeletelink": "ᱧᱮá±/ᱫá±á±¦á± ᱨᱩᱣá±á±¹á±²",
+ "undeleteviewlink": "ᱧᱮá±",
"undelete-search-submit": "ᱥᱮᱸᱫᱽᱨá±",
"namespace": "ᱧᱤá±á±©á±¢ ᱡá±á±á±",
- "invert": "SeÄ bachao",
+ "invert": "ᱥᱮᱪ á±µá±á±ªá±·á±á±£",
"tooltip-invert": "á±±á±á±¶á± á±µá±á± ᱥᱠᱴᱤᱠᱢᱮ á±¥á±á±¦á±´á± á± á±·á±á±± á±µá±á±«á±á±á±á±á± ᱠᱫá±á±±á±á± á±á±á±¹á±á±¤á±« á±µá±á±á±·á±á±± ᱨá±á± ᱷᱠᱧᱩá±á±©á±¢ á±¥á±á±¶á±á±® (á±á±¨ ᱡá±á±¯á±á±²á±á±£á±á±± ᱨá±á± ᱷᱠᱧᱩá±á±©á±¢ ᱡᱩᱫᱤ ᱴᱤᱠá±á± á±á±±á±)",
"namespace_association": "á±¥á±á±¦á±á±«á±¤á±á±á±¹ ᱨá±á± ᱷᱠᱧᱩá±á±©á±¢",
"tooltip-namespace_association": "á±±á±á±¶á± á±µá±á± ᱥᱠᱴᱤᱠᱢᱮ ᱨá±á±¯á±á±² á±µá±á±á± á±·á±á±± á±¥á±á±á±á±¢ ᱨá±á± ᱷᱠᱧᱩá±á±©á±¢ á±µá±á±ªá±·á±á±± á±á± á±á±± ᱨá±á± ᱷᱠᱧᱩá±á±©á±¢ á±¥á±á±¶ ᱡá±á±¯á±á±²á±á±£ á±á± á±á±±á±á±",
"blanknamespace": "(ᱢᱩᱬᱩá±)",
- "contributions": "{{GENDER:$1|BeohariÄaḱ }} Kạmiko",
- "contributions-title": "$1 BeohariÄaḱ kạmiko",
+ "contributions": "{{GENDER:$1|ᱵᱮᱵᱦá±á±¨á±¤á±á±á±¹}} ᱮᱱᱮᱢᱠᱩ",
+ "contributions-title": "$1 ᱵᱮᱵᱦá±á±¨á±¤á±á±á± ᱮᱱᱮᱢᱠᱩ",
"mycontris": "ᱮᱱᱮᱢᱠᱩ",
"anoncontribs": "ᱮᱱᱮᱢᱠᱩ",
"contribsub2": "{{GENDER:$3|$1}} ($2) á±á±á±¹á±á±¤á±« á±á±®",
"nocontribs": "á±±á±á±¶á± ᱮᱢá±á± á±¥á±á±¶ ᱡá±á±²á±á±£á±á±± á±µá±á±«á±á±á± á± á±µá±á± ᱧá±á±¢á±á±®á±±á± |",
"uctop": "(ᱱᱤá±á±á±)",
- "month": "Cando khon (ar etohopreaḱ)",
- "year": "Nia serma reak' pahil khoch'",
+ "month": "ᱪá±á±¸á±«á± á± á±·á±á±± (á±á±¨ á±á±á±¦á±á±¨á±®á±á±á±)",
+ "year": "á±±á±á±£á± ᱥᱮᱨᱢᱠᱠᱷá±á±¡ (á±á±¨ á±á±á±¦á±á±¨á±®á±á±á±):",
"sp-contributions-newbies": "á±±á±á±£á± ᱦᱤᱥá±á±µ ᱨᱮᱱá±á± ᱮᱱᱮᱢᱠᱠᱩᱫᱩá±á±½ ᱢᱮ",
- "sp-contributions-blocklog": "Tala eset",
- "sp-contributions-uploads": "Rakaá¹me",
- "sp-contributions-logs": "Tala",
+ "sp-contributions-blocklog": "ᱠᱩá±á±©á±¯ ᱮᱥᱮᱫ",
+ "sp-contributions-uploads": "á±á±á±«á±®á± ᱩ",
+ "sp-contributions-logs": "á±á±á±á±á± ᱩ",
"sp-contributions-talk": "ᱨá±á±²",
- "sp-contributions-search": "Kạmiko emoḱ lạgitte sendrayme",
- "sp-contributions-username": "IP á¹hikạna se laá¹caá¹iÄaḱ nÌutum",
+ "sp-contributions-search": "ᱮᱱᱮᱢᱠᱩ á±á±á±¹á±á±¤á± ᱥᱮᱸᱫᱨá±",
+ "sp-contributions-username": "IP ᱴᱷᱤᱠá±á±¹á±±á± ᱥᱮ ᱵᱮᱵᱦá±á±¨á±¤á±á±á± ᱧᱩá±á±©á±¢",
"sp-contributions-toponly": "ᱱᱮá±á±á±¨ ᱥᱩᱫᱷᱨá±á±¹á±£ á± á±á±¨á±®á±á±á± á±¥á±á±¯á±²á±á±£ á± á±á±¹á±¢á±¤á± ᱠᱩᱫᱩá±á±½ ᱢᱮ",
"sp-contributions-newonly": "ᱥᱩᱢᱩᱠá±á±¹á±¨á±©á± á± á±¥á±á±«á±á±¨á±¢á±® ᱡá±á±¦á±á±¸ á±¥á±á±¦á±á±´á± ᱫᱠᱥᱤᱨᱡá±á±¹á±£á±á± á± á±á±±á±",
"sp-contributions-submit": "ᱥᱮᱸᱫᱽᱨá±",
@@ -959,56 +959,56 @@
"linkshere": "á±á±á±á±á±¨ ᱨᱮá±á±á± á±¥á±á±¦á±´á±á± ᱠᱫᱠ'''[[:$1]]''' ᱡá±á±±á±á±² ᱢᱮᱱá±á±-á± :",
"nolinkshere": "á±¥á±á±¦á±´á± ᱡá±á±±á±á±² á±µá±á±±á±©á±-ᱠᱱᱤá±á±á±¹ [[:$1]].",
"isredirect": "á±µá±á± á±¥á±á±¡á±½á±¦á±® á±¥á±á±¦á±´á±",
- "istemplate": "Ar mitÌ teÄ sãote joá¹ao",
+ "istemplate": "ᱥᱮá±á±®á±«",
"isimage": "ᱨᱮᱫ ᱡá±á±±á±á±²",
"whatlinkshere-prev": "{{PLURAL:$1|á±á±á±¦á± ᱨᱮá±á±á± |á±á±á±¦á± ᱨᱮá±á±á±$1}}",
"whatlinkshere-next": "{{PLURAL:$1 |á±á±á±á±á±¢ |á±á±á±á±á±¢ $1}}",
"whatlinkshere-links": "â ᱡá±á±±á±á±²á± á±",
- "whatlinkshere-hideredirs": "$1 arhõ unuduḱ",
- "whatlinkshere-hidetrans": "SeletÌ $1",
+ "whatlinkshere-hideredirs": "$1 á±á±¨á±¦á±á±¸ ᱩᱱᱩᱫᱩá±",
+ "whatlinkshere-hidetrans": "ᱥᱮá±á±®á±« $1",
"whatlinkshere-hidelinks": "$1 ᱡá±á±±á±á±²á± á±",
"whatlinkshere-hideimages": "$1 ᱨᱮᱫ ᱡᱳᱱᱳᱲᱠá±",
"whatlinkshere-filters": "ᱪᱷá±á±¹á±±á±¤á± ᱩ",
- "block": "BeohariÄ esedem",
+ "block": "ᱵᱮᱵᱦá±á±¨á±¤á±¡ ᱮᱥᱮᱫᱮᱢ",
"blockip": "BeohariÄ esedem",
- "ipboptions": "2 Ghoná¹a : 2 hours, 1 maha:1 day, 3 maha : 3 days,1 hapta :1 week, 2 hapta : 2 weeks, 1 cando :1 month, 3 cando : 3 months,6 cando :6 months, 1 serma :1 year, Aemamaha : infinite",
+ "ipboptions": "á± á±á±·á±á±±á±´á± : 2 hours, á± á±¢á±á±¦á±á±¸:1 day, á± á±¢á±á±¦á±á±¸ : 3 days,ᱠᱦá±á±¯á±á±:1 week, ᱠᱦá±á±¯á±á± : 2 weeks, ᱠᱪá±á±¸á±«á± :1 month, ᱠᱪá±á±¸á±«á± : 3 months, ᱠᱪá±á±¸á±«á±:6 months, ᱠᱥᱮᱨᱢá±:1 year, ᱥᱤᱢá±á±¹á±±á±á±¹ ᱪᱷá±á±²á± : infinite",
"autoblocklist-submit": "ᱥᱮᱸᱫᱽᱨá±",
- "ipblocklist": "Beoharic esetgeyay",
- "ipblocklist-submit": "Sendra",
+ "ipblocklist": "ᱵᱮᱵᱦá±á±¨á±¤á±¡ ᱮᱥᱮᱫá±á±®á±á±á±",
+ "ipblocklist-submit": "ᱥᱮᱸᱫᱽᱨá±",
"infiniteblock": "á±á±¦á±¤á±¥á±á±¹á±µá±½",
- "emailblock": "E-mail do esetgea",
+ "emailblock": "E-mail á±µá±á±¸á±«á±· á±á±®á±á±",
"blocklink": "ᱮᱥᱮᱫᱽ",
- "unblocklink": "baÅ block",
- "change-blocklink": "block judạ",
+ "unblocklink": "á±µá±á± ᱮᱥᱮᱫ",
+ "change-blocklink": "block á±µá±á±«á±á±",
"contribslink": "ᱮᱱᱮᱢ",
- "emaillink": "E-mail kulmẽ",
- "blocklogpage": "Tala eset",
- "blocklogentry": "Eset [[$1]] sãote cabaḱ okte oka do $2 $3",
+ "emaillink": "E-mail ᱠᱩá±á±¢á±®",
+ "blocklogpage": "ᱠᱩá±á±©á±¯ ᱮᱥᱮᱫ",
+ "blocklogentry": "ᱮᱥᱮᱫ [[$1]] á±¥á±á±¶á±á±® ᱪá±á±µá±á± á±á± á±á± á±á± ᱠᱫᱠ$2 $3",
"reblock-logentry": "á±µá±á±«á±á±á±®á±±á± á±µá±á±¸á±« á±¥á±á±¡á±á±£á± á± [[$1]] á±á±á±¹á±á±¤á±« ᱪá±á±µá±á± á±á± á±á± $2 $3 á±¥á±á±¶",
- "block-log-flags-nocreate": "Ekauná¹ benao do bondogeya",
- "block-log-flags-noemail": "E-mail do esetgea",
- "block-log-flags-hiddenname": "BeohariÄaḱ Åutum do ukugea",
+ "block-log-flags-nocreate": "ᱮᱠá±á±£á±±á±´ ᱵᱮᱱá±á±£ á±µá±á±±á±«á±· á±á±®á±á±",
+ "block-log-flags-noemail": "E-mail á±µá±á±¸á±«á±· á±á±®á±á±",
+ "block-log-flags-hiddenname": "ᱵᱮᱵᱦá±á±¨á±¤á±á±á± ᱧᱩá±á±©á±¢ ᱩᱠᱩ á±á±®á±á±",
"proxyblocker": "ᱯᱨá±á± ᱥᱤ ᱮᱥᱮᱫᱤᱡ",
"movepagebtn": "á±¥á±á±¦á±´á± á±¥á±á±¦á±á±á±¢á±®",
- "pagemovedsub": "Ocogoḱ do hoena",
- "movelogpage": "Tala cạbi ocoḱme",
- "revertmove": "ruạr agu",
+ "pagemovedsub": "á±á±ªá±á± ᱫᱠᱦᱩá±á±±á±",
+ "movelogpage": "á±á±á±á± ᱪá±á±¹á±µá±¤ á±á±ªá±á±á±½á±¢á±®",
+ "revertmove": "ᱨᱩᱣá±á±¹á±² á±á±¹á±á±©",
"export": "á±á±¹á±á±©á±á±®á±± á±¥á±á±¦á±´á±á± á±",
- "export-addcat": "Joá¹aomẽ",
- "export-addns": "Joá¹aomẽ",
- "allmessagesname": "Åutum",
+ "export-addcat": "ᱥᱮá±á±®á±«",
+ "export-addns": "ᱥᱮá±á±®á±«",
+ "allmessagesname": "ᱧᱩá±á±©á±¢",
"allmessagesdefault": "BaÅ bhul mesag ol",
- "allmessages-filter-all": "Sanamaḱ",
- "allmessages-filter-submit": "Calaḱmẽ",
+ "allmessages-filter-all": "ᱡá±á±á±",
+ "allmessages-filter-submit": "ᱪá±á±á±á± ᱢᱮ",
"thumbnail-more": "á±á±á±¹á±´á±©á± ᱢᱮ",
"thumbnail_error": "Benawakan unuduḱ kạá¹uá¹ do baá¹
á¹hika: $1",
- "import-upload-filename": "Rẽt Åutum",
+ "import-upload-filename": "ᱨᱮᱫᱧᱩá±á±©á±¢á±º",
"importlogpage": "á±á±á±á±½ á±á±¹á±á±©",
"tooltip-pt-userpage": "{{GENDER:|á±á±¢á±á± ᱵᱮᱵᱦá±á±¨á±¤á±á±á±¹}} á±¥á±á±¦á±´á±",
"tooltip-pt-mytalk": "{{GENDER:|á±á±¢á±á±}} ᱨá±á±² á±¥á±á±¦á±´á±",
"tooltip-pt-preferences": "{{GENDER:|á±á±¢á±á±}} ᱠᱩᱥᱤᱠá±",
"tooltip-pt-watchlist": "á±¥á±á±¦á±´á± á±á±á±¹á±á± á±á±¹ á±á± á±á±á±á±á±á±® á±á±¢ ᱫᱠᱱá±á±£á± á±µá±á±«á±á± á±á±á±¹á±á±¤á± á±á±® ᱧᱮá±á±®á± á± á±á±±",
- "tooltip-pt-mycontris": "MitÌá¹en lisá¹ {{GENDER:|amaḱ}} kạmiko reaḱ",
+ "tooltip-pt-mycontris": "á±á±á±¹á±á± á±á±¹ {{GENDER:|á±á±¢á±á±}} ᱮᱱᱮᱢᱠᱠᱨᱮá±á±á±",
"tooltip-pt-login": "á±á±¢ ᱫᱠᱵá±á±á±á± á±á±á±¹á±á±¤á± ᱩᱫᱽá±á±á±£á±¤á±§ ᱮᱢá±á±¢á± á±á±±á±; á±µá±á±á±á± á±á±á±á±á±-á± á±á±á± ᱠᱫᱠᱵá±á±",
"tooltip-pt-logout": "á±á±°á±á± á±á± ᱢᱮ",
"tooltip-pt-createaccount": "á±á±¢ ᱫᱠᱢᱤᱫᱽᱴᱮᱱ ᱦᱤᱥá±á±¹á±µ ᱡᱷᱤᱪ á± á±á±á±® á±µá±á±á±á± á±á±á±¹á±á±¤á±á±¤á±§ ᱩᱫᱽá±á±á±£á±®á± ᱢᱮá±á±; á±á±«á± ᱡá±á±¹á±¨á±©á±² á±µá±á±á±á± á±á±á± ᱠᱫᱠᱵá±á± á± á±á±±á±",
@@ -1051,18 +1051,18 @@
"tooltip-ca-nstab-template": "ᱪᱷá±á±¸á±ª ᱧᱮá±á±¢á±®",
"tooltip-ca-nstab-help": "á±á±á±¸á±²á± á±¥á±á±¦á±´á± ᱧᱮá±á±¢á±®",
"tooltip-ca-nstab-category": "á±á±·á±á± á±¥á±á±¦á±´á± ᱧᱮá±á±¢á±®",
- "tooltip-minoredit": "Noa do huá¸iÅ joá¹ao lekate lekhay me",
- "tooltip-save": "Bodolaḱko rukhiyayme",
- "tooltip-preview": "Amaḱ bodolaḱ uduḱme, noa beoharme ạuri rukhiyayre",
- "tooltip-diff": "Uduḱme okaá¹aḱ onolem bodolakada",
+ "tooltip-minoredit": "ᱦᱩᱰᱤᱧ á±¥á±á±¯á±²á±á±£ ᱦᱤᱥá±á±¹á±µá±á±® á±á±®Kᱦá±á±á±¢á±®",
+ "tooltip-save": "á±µá±á±«á±á±á± ᱩ ᱨᱩᱠᱷᱤá±á±á±¹á±á±¢á±®",
+ "tooltip-preview": "á±á±¢á±á± á±µá±á±«á±á±á± ᱩ ᱩᱫᱩá±á±½á±¢á±®, ᱨᱩᱠᱷᱤá±á±á±¹ á±á±á±¦á±á±¨á±® á±±á±á±£á± ᱵᱮᱵᱦá±á±¨ ᱢᱮ᱾",
+ "tooltip-diff": "á±á± á±á±´á±á± ᱮᱢ á±µá±á±«á±á±á± á±á±«á± á±á±±á± ᱩᱫᱩá±á±½á±¢á±®",
"tooltip-compareselectedversions": "á±±á±á±£á± á±¥á±á±¦á±´á± ᱨᱮᱱá±á± á±µá±á±¨á±á± ᱧᱮá±á±á±¹á±¨á±© ᱵᱷᱮá±á±®á±« ᱧᱮᱠᱢᱮ",
"tooltip-watch": "á±±á±á±¶á± á±¥á±á±¦á±´á± á±á±¢á±á± ᱧᱮá±á±á± á±á±á±¹á±á± á±á±¹á±¨á±® ᱡá±á±²á±á±£á±¢á±®",
"tooltip-rollback": "ᱫá±á±²á±¦á±á±á±® ᱢᱤᱫ ᱫᱷá±á±£ á±á±¤á±± á±á±® contributor á±á± ᱢᱩᱪá±á±¹á±« á±¥á±á±¯á±²á±á±£ \"á±á±·á±©á±¨á±á±á±¹ á±á±¹á±ªá±©á±¨\" ᱢᱮ",
- "tooltip-undo": "Noa joá¹ao kạmire ulá¹ao \"bạgiyaḱme\" ar Åeloḱ lekate noa joá¹ao jhicme. Noa do am guḠkaron joá¹aoe ektiyariye emama.",
+ "tooltip-undo": "á±±á±á±£á± á±¥á±á±¯á±²á±á±£ á± á±á±¹á±¢á±¤á±¨á±® \"ᱩá±á±´á±á±¹á±£ á± á±á±¹á±¢á±¤\" á±á±¨ ᱧᱮá±á±á± á±á±®á± á±á±á±® á±±á±á±£á± á±¥á±á±¯á±²á±á±£ ᱡᱷᱤᱡᱽᱢᱮ᱾ á±±á±á±£á± ᱫᱠá±á±¢ ᱢᱩᱬᱩᱠᱠá±á±á±·á±á±¨á±® á±¥á±á±®á±«á±á± ᱨᱮᱱá±á± ᱮᱠá±á±¤á±á±á±¨ ᱮᱢá±á±¢á±á±¾",
"tooltip-preferences-save": "ᱠᱩᱥᱤᱠᱠᱨᱩᱠᱷᱤá±á±á±¹á±á±¢á±®",
- "tooltip-summary": "Khaá¹ote guá¹ katha bhoraome",
- "others": "Eá¹agaḱko",
- "simpleantispam-label": "Ená¹i espam Åel\nDo not noa purạome!",
+ "tooltip-summary": "ᱦᱩᱰᱤᱧá±á±® ᱢᱩᱬᱩᱠᱠá±á±á±·á± ᱵᱷá±á±¨á±á±£á±¢á±®",
+ "others": "ᱮᱴá±á±á± á±",
+ "simpleantispam-label": "ᱮᱱᱴᱤ ᱮᱥᱯᱮᱢ ᱧᱮá±á±¾\nDo not á±±á±á±£á± ᱯᱩᱨá±á±§á±¢á±®!",
"pageinfo-title": "\"$1\" á±á±á±¹á±á±¤á±« ᱥᱩᱪᱱá±",
"pageinfo-header-basic": "ᱢᱩᱬ ᱥᱩᱪᱱá±",
"pageinfo-header-edits": "á±¥á±á±¯á±²á±á±£ á±±á±á±á±á±¢",
@@ -1102,13 +1102,13 @@
"widthheightpage": "$1 à $2, $3 {{PLURAL:$3|á±¥á±á±¦á±´á±|á±¥á±á±¦á±´á±á± á±}}",
"file-info-size": "$1 x $2 pixels, file size: $3, MIME type: $4",
"file-info-size-pages": "$1 à $2 ᱯᱤᱠᱥᱮá±, ᱨᱮᱫ á±¥á±á±: $3, MIME á±á±®á± á±á±±: $4, $5 {{PLURAL:$5|á±¥á±á±¦á±´á±|á±¥á±á±¦á±´á±á± á±}}",
- "file-nohires": "Aema resulation nondá¸e banuḱa",
- "svg-long-desc": "SVG rẽt, normalte $1 x $2 pixels, rẽt sayej: $3",
+ "file-nohires": "á±á±á±¢á± ᱨᱮᱡᱩá±á±®á±¥á±á±± á±µá±á±±á±©á±-á±á±¾",
+ "svg-long-desc": "SVG ᱨᱮᱫ, á±±á±á±¨á±¢á±á±á±á±® $1 x $2 pixels, ᱨᱮᱫ ᱡá±á±á±: $3",
"show-big-image": "á±á±¥á±á± ᱨᱮᱫ",
- "show-big-image-preview": "Noa Åeloḱ akar do:$1",
+ "show-big-image-preview": "ᱧᱮá±á±¡á±á± ᱨᱮᱱá±á± á±á± á±á±¨:$1",
"show-big-image-other": "ᱮᱢá±á±± á±á±®á±á±á± {{PLURAL:$2|resolution|resolutions}}: $1",
"show-big-image-size": "$1 X $2 Pixels",
- "ilsubmit": "Sendra",
+ "ilsubmit": "ᱥᱮᱸᱫᱽᱨá±",
"bydate": "á±¢á±á±¹á±¦á±¤á± á±á±®",
"monday-at": "á±á±á±®á±¢á±á±¦á±á±¸ $1 ᱨᱮ",
"tuesday-at": "á±µá±á±á±®á±¢á±á±¦á±á±¸ $1 ᱨᱮ",
@@ -1120,18 +1120,18 @@
"metadata": "ᱢᱮᱴᱠᱥá±á±¹á± á±·á±á±á±¹á±",
"metadata-help": "á±±á±á±£á± ᱨᱮᱫ ᱨᱮᱫᱠᱵá±á±¹á±²á±á±¤ á± á±á±á±·á±á± ᱠᱢᱮᱱá±á±-á±, ᱯá±á±¥á±®á±¡ á±±á±á±£á± ᱫᱠᱰᱤᱡᱤᱴá±á± ᱠᱮᱢᱨᱠᱥᱮ ᱮᱥᱠᱮᱱá±á±¨ ᱵᱮᱵᱦá±á±¨ á± á±á±á±® ᱰᱤᱡᱤᱴá±á± á±á± á±á±«á±á± á±á±¾ ᱡᱩᱫᱤ á±±á±á±£á± ᱨᱮᱫ ᱨᱮá±á±á± ᱵᱩᱱᱤá±á±á±¹á±« á± á±·á±á±± á±±á±á±£á± ᱥᱩᱫᱷᱨá±á±£ á±á±®á±±á± á±·á±á±±, ᱯá±á±¥á±®á±¡ á±¥á±á±±á±á±¢á± á± á±á±·á±á±²á± á±µá±á±á± ᱩ á±¥á±á±«á±á±¨á±á±-á± á±±á±á±£á± ᱨᱮᱫ ᱨᱮᱫá±á±¾",
"metadata-fields": "Image metadata fields listed in this message will be included on image page display when the metadata table is collapsed.\nOthers will be hidden by default.\n* make\n* model\n* datetimeoriginal\n* exposuretime\n* fnumber\n* isospeedratings\n* focallength\n* artist\n* copyright\n* imagedescription\n* gpslatitude\n* gpslongitude\n* gpsaltitude",
- "exif-imagewidth": "Ganá¸e",
- "exif-imagelength": "Usul",
+ "exif-imagewidth": "á±á±á±¸á±°á±®",
+ "exif-imagelength": "ᱩᱥᱩá±",
"exif-orientation": "á±¥á±á±¢á±á±",
"exif-xresolution": "á±á±¤á±á±¤á±¡ á±á±®",
"exif-yresolution": "á±á±¤á±á±á±© á±á±®",
"exif-datetime": "ᱨᱮᱫ á±µá±á±«á±á± á±á±á±¹á±¨á±¤á± á±· á±á±¨ á±á± á±á±",
- "exif-make": "Kemera teariÄ",
- "exif-model": "Kemera model",
- "exif-software": "Beoharen Software",
- "exif-artist": "Onoliạ",
- "exif-exifversion": "Exif bharson",
- "exif-colorspace": "Roá¹
coá¹
dhạrti",
+ "exif-make": "ᱠᱮᱢᱮᱨᱠᱵᱮᱱá±á±£á±¤á±ª",
+ "exif-model": "ᱠᱮᱢᱮᱨᱠᱢá±á±°á±®á±",
+ "exif-software": "ᱵᱮᱵᱦá±á±¨á±á± á±á±± á±¥á±á±¯á±·á±´á±á±á±á±¨",
+ "exif-artist": "á±á±±á±á±á±¤á±á±á±¹",
+ "exif-exifversion": "Exif ᱵᱷá±á±¨á±¥á±á±±",
+ "exif-colorspace": "ᱨá±á±á±ªá±á± ᱡá±á±á±",
"exif-datetimeoriginal": "á±°á±á±´á± á±á±®á±á±á±¨ ᱨᱮᱱá±á± á±¢á±á±¹á±¦á±¤á± á±á±¨ á±á± á±á±",
"exif-datetimedigitized": "ᱰᱤᱡᱤᱴá±á±á±¡á±¤á±á±á± á±¢á±á±¹á±¦á±¤á± á±á±¨ á±á± á±á±",
"exif-subsectime": "á±¢á±á±¹á±¦á±¤á± á±á± á±á± ᱴᱤᱯᱤᱡ",
@@ -1147,10 +1147,10 @@
"imgmultigo": "ᱥᱮᱱá±á±!",
"imgmultigoto": "ᱥᱮᱱá±á± ᱢᱮ á±¥á±á±¦á±´á± $1",
"watchlisttools-clear": "ᱠᱩᱥᱤá±á±á± á±á±¤á±¥á±´á±¤ á±¥á±á±¯á±·á±",
- "watchlisttools-view": "JoÅgá¹ao bodolaḱko Åel",
- "watchlisttools-edit": "Åelok tạlika Åel ar joá¹ao",
- "watchlisttools-raw": "Baá¹ purạo akan Åelok tạlika purạomẽ",
- "signature": "[[{{ns:user}}:$1|$2]] ([[{{ns:user_talk}}:$1|galmarao]])",
+ "watchlisttools-view": "ᱡá±á±á±²á±á±£ á±µá±á±«á±á±á± ᱩ ᱧᱮá±",
+ "watchlisttools-edit": "ᱧᱮá±á±¢á±® á±á±¨ ᱧᱮá±á±á± á±á±á±¹á±á± á±á±¹ á±¥á±á±¯á±²á±á±£á±¢á±®",
+ "watchlisttools-raw": "á±µá±á± ᱯᱩᱨá±á±£ á±á± á±á±± ᱧᱮá±á±á± á±á±á±¹á±á± á±á±¹ á±¥á±á±¯á±²á±á±£á±¢á±®",
+ "signature": "[[{{ns:user}}:$1|$2]] ([[{{ns:user_talk}}:$1|á±á±á±á±¢á±á±¨á±á±£]])",
"duplicate-defaultsort": "'''Sontoroḱmẽ:''' á¸ifolá¹ sajao reaḱ cạbi: $2 lahare á¸ifolá¹ sajao reaḱ sakam: ''$1'' e bae luturaḱ kana.",
"redirect": "ᱨᱮᱫ, ᱵᱮᱵᱷá±á±¨á±©á±á±á±¹, á±¥á±á±¦á±´á±, ᱧᱮá±-á±á±¹á±¨á±©, á±µá±á±á± á±·á±á±± á±á±á±á±½ ID ᱫá±á±¨á±á±á±á±® á±¢á±á±¦á±°á±",
"redirect-summary": "á±±á±á±¶á± á±¥á±á±¦á±´á± ᱫᱠᱢá±á±¦á±°á± ᱠᱢᱤᱫ ᱨᱮᱫ (ᱮᱢá±á± á±á±± ᱨᱮᱫᱧᱩá±á±©á±¢) ᱴᱷᱮᱱ, ᱢᱤᱫ á±¥á±á±¦á±´á± (ᱮᱢᱮᱱ á±á±¹á±¨á±©á±£á±á± ID á±á±¨á±µá±á± á±¥á±á±¦á±´á± ID), ᱢᱤᱫ ᱵᱮᱵᱷá±á±¨á±©á±á±á±¹ á±¥á±á±¦á±´á± (ᱮᱢᱮᱱ á±®á±á±©á± ᱵᱮᱵᱷá±á±¨á±¤á±á±á±¹ ID ), á±á±¨á±µá±á± ᱢᱤᱫ á±á±á±á±½ á±µá±á±á± (ᱮᱢᱮᱱ á±á±á±á±½ ID) á±¾ ᱵᱮᱵᱷá±á±¨á±á± á±á±±: [[{{#Special:Redirect}}/file/Example.jpg]], [[{{#Special:Redirect}}/page/64308]], [[{{#Special:Redirect}}/revision/328429]], [[{{#Special:Redirect}}/user/101]], á±á±¨á±µá±á± [[{{#Special:Redirect}}/logid/186]]",
@@ -1164,8 +1164,8 @@
"fileduplicatesearch": "ᱥᱮᱸᱫᱽᱨá±á± ᱢᱮ á±µá±á±¹á±²á±¤á±¡ ᱨᱮᱫᱠá±",
"fileduplicatesearch-submit": "ᱥᱮᱸᱫᱽᱨá±",
"specialpages": "ᱵᱤᱥᱮᱥ á±¥á±á±¦á±´á±á± á±",
- "external_image_whitelist": "#Noa sakam do cet leka menaḱa oá¹
kage dohoemẽ\n#Sanam okte re jạhiren kuá¹rạ latar re (khạli hạtiÅ //talare) bạisạomẽ\n#Noako do bahre reaḱ (hotlinked) chubi reaḱ URL saõte milạo hoyoḱa\n#Okako milạḱa, onako do chubi lekate udugoḱa, baá¹
khan do khali chubi joá¹ao udugoḱa\n#Noa layen reaḱ ehoá¹re # menaḱa ona layenko menko hisapte beohar hoyoḱka\n#Noa do kas-baá¹
rimjhạoaḱge\n#Noa dag cetanre regex kuá¹rạ bạsạomẽ. Noa layen cetleka menaḱa oá¹
kage dohoemẽ",
- "tag-filter": "[[Special:Tags|Tag]] saphay:",
+ "external_image_whitelist": "#á±±á±á±£á± á±¥á±á±¦á±´á± ᱫᱠᱪᱮᱠá±á±®á± ᱠᱢᱮᱱá±á±-á± á±á±á± á±á±á±® ᱫá±á±¦á±á±á±¢á±®\n#ᱡá±á±á± á±á± á±á± ᱨᱮ ᱡá±á±¹á±¦á±¤á±¨á±®á±± ᱠᱩᱴᱨá±á±¹ á±á±á±á±á±¨ ᱨᱮ (á± á±·á±á±¹á±á±¤ ᱦá±á±¹á±´á±¤á±§ //á±á±á±á±á±¨á±®) á±µá±á±¹á±á±¥á±á±¹á±£á±¢á±®\n#á±±á±á±£á± ᱠᱠᱫᱠᱵá±á±¨á±¦á±® ᱨᱮá±á±á± (hotlinked) ᱪᱤá±á±á±¹á±¨ ᱨᱮá±á±á± URL á±¥á±á±¶á±á±® ᱢᱤá±á±á±¹á±£ ᱦᱩá±á±©á±-á±\n#á±á± á±á± ᱩ ᱢᱤá±á±á±¹á±-á±, á±á±±á±á± ᱩ ᱫᱠᱪᱤá±á±á±¹á±¨ á±á±®á± á±á±á±® ᱩᱫᱩá±á±á±-á±, á±µá±á±á± á±·á±á±± ᱫᱠᱠᱷá±á±¹á±á±¤ ᱪᱤá±á±á±¨ ᱡá±á±±á±á±² ᱩᱫᱩá±á±á±-á±\n#á±±á±á±£á± á±á±á±á±¤á±± ᱨᱮá±á±á± á±®á±á±¦á±á±µá±¨á±® # ᱢᱮᱱá±á±-á± á±á±±á± á±á±á±á±¤á±±á± ᱠᱢᱮᱱᱠᱠᱦᱤᱥá±á±¹á±µá±á±® ᱵᱮᱵᱦá±á±¨ ᱦᱩá±á±©á±-á±\n#á±±á±á±£á± ᱫᱠᱨᱤᱢᱡᱷá±á±¹á±£á±á±®\n#á±±á±á±£á± ᱫá±á±á±½ ᱪᱮá±á±á±±á±¨á±® regex ᱠᱩᱴᱨá±á±¹ á±µá±á±¹á±á±¥á±á±¹á±£á±¢á±®á±¾ á±±á±á±£á± á±á±á±á±¤á±± ᱪᱮᱫá±á±®á± ᱠᱢᱮᱱá±á±-á± á±á±á± á±á±á±® ᱫá±á±¦á±á±á±¢á±®",
+ "tag-filter": "[[Special:Tags|Tag]] ᱪᱷá±á±¹á± ᱱᱤ:",
"tag-list-wrapper": "([[Special:Tags|{{PLURAL:$1|á±¥á±á±á±á±¢|á±¥á±á±á±á±¢á± ᱩ}}]]: $2)",
"tags-active-yes": "ᱦᱮᱸ",
"tags-active-no": "á±µá±á±",
@@ -1182,7 +1182,7 @@
"logentry-patrol-patrol-auto": "$1 á±á±¡á±á±®á±á±® {{GENDER:$2|ᱪᱤᱱᱦá±á±¹á±á±®á±±á±}} $4 ᱧᱮá±á±á±¹á±¨á±© $3 á±¥á±á±¦á±´á± ᱨᱮᱱá±á± á±¾",
"logentry-newusers-create": "ᱵᱮᱵᱦá±á±¨á±¤á±á±á± ᱦᱤᱥá±á±¹á±µ $1 ᱫᱠ{{GENDER:$2|á±á±®á±á±á±¨á±±á±}}",
"logentry-newusers-autocreate": "ᱵᱮᱵᱷá±á±¨á±¤á±á±á±¹ á± á±·á±á±á± $1 ᱫᱠ{{GENDER:$2|á±á±®á±á±á±¨á±®á±±á±}} á±á±¡á±á±®á±á±®",
- "logentry-upload-upload": "$1 {{GENDER:$2|rakaá¹ akadae}} $3",
+ "logentry-upload-upload": "$1 {{GENDER:$2|ᱨá±á± á±á±µá± á±á±±}} $3",
"logentry-upload-overwrite": "$1 {{GENDER:$2|á±á±á±«á±®á±á±®á±±á±}} ᱢᱤᱫ á±±á±á±¶á± ᱵᱷá±á±¨á±¥á±á±± $3 ᱨᱮᱱá±á±",
"searchsuggest-search": "ᱥᱮᱸᱫᱽᱨᱠ{{SITENAME}}",
"duration-days": "$1 {{PLURAL:$1|á±¢á±á±¦á±á±¸|á±¢á±á±¸á±¦á±á±¸}}",
diff --git a/languages/i18n/sc.json b/languages/i18n/sc.json
index ac93b67363..6f3fefcb87 100644
--- a/languages/i18n/sc.json
+++ b/languages/i18n/sc.json
@@ -842,7 +842,6 @@
"minoreditletter": "m",
"newpageletter": "N",
"boteditletter": "b",
- "rc_categories_any": "Calesisiat",
"rc-change-size": "$1",
"rc-change-size-new": "$1 {{PLURAL:$1|byte|bytes}} a pustis de sa modìfica",
"newsectionsummary": "/* $1 */ setzione noa",
diff --git a/languages/i18n/scn.json b/languages/i18n/scn.json
index ca6b172681..02fa5bee77 100644
--- a/languages/i18n/scn.json
+++ b/languages/i18n/scn.json
@@ -584,7 +584,7 @@
"userjspreview": "'''Arricorda ca stai sulu tistanno/vidennu 'n antiprima lu tò javascript pirsunali, nun hà statu ancora sarvatu!'''",
"sitecsspreview": "Arricòrdati chi chista è sulu n'antiprima di stu CSS. Ancora nun fu sarvatu!",
"sitejspreview": "Arricòrdati chi chista è sulu n'antiprima di stu còdici JavaScript. Ancora nun fu sarvatu!",
- "userinvalidcssjstitle": "'''Accura:''' Nun esisti arcuna skin cu nomu \"$1\". S'arricorda ca li pà ggini pi li .css e .js pirsunalizzati hannu la nizziali dû tìtulu minùscula, p'asempiu {{ns:user}}:Asempiu/vector.js e nun {{ns:user}}:Asempiu/Vector.css.",
+ "userinvalidconfigtitle": "'''Accura:''' Nun esisti arcuna skin cu nomu \"$1\". S'arricorda ca li pà ggini pi li .css e .js pirsunalizzati hannu la nizziali dû tìtulu minùscula, p'asempiu {{ns:user}}:Asempiu/vector.js e nun {{ns:user}}:Asempiu/Vector.css.",
"updated": "(Aggiurnatu)",
"note": "Nota:",
"previewnote": "Arricòrdati ca chista è sulu n'antiprima.\nLi tò canciamenti ancora nun foru sarvati!",
@@ -925,7 +925,7 @@
"prefs-files": "File",
"prefs-custom-css": "CSS pirsunalizzatu",
"prefs-custom-js": "JavaScript pirsunalizzatu",
- "prefs-common-css-js": "CSS/JavaScript cunnivisu tra tutti li peddi:",
+ "prefs-common-config": "CSS/JavaScript cunnivisu tra tutti li peddi:",
"prefs-reset-intro": "Poi adupirari sta pà ggina p'azzirari li tò prifirenzi a chiddi pridifinuti dû situ.\nSt'opirazzioni nun si pò annullari doppu ch'è fatta.",
"prefs-emailconfirm-label": "Cunvà lida dâ posta elittrònica:",
"youremail": "Nnirizzu di posta elittrònica:",
@@ -1169,8 +1169,6 @@
"newpageletter": "N",
"boteditletter": "b",
"number_of_watching_users_pageview": "[taliata di {{PLURAL:$1|nu utenti|$1 utenti}}]",
- "rc_categories": "Lìmita a li catigurìi (spartuti cu «|»)",
- "rc_categories_any": "Qualegghiè tra chiddi scigghiuti",
"rc-change-size-new": "$1 {{PLURAL:$1|byte|byte}} appressu dû canciamentu",
"newsectionsummary": "/* $1 */ sizzioni nova",
"rc-enhanced-expand": "Ammustra li dittagghî",
diff --git a/languages/i18n/sco.json b/languages/i18n/sco.json
index c6d54eb47d..cd442a3192 100644
--- a/languages/i18n/sco.json
+++ b/languages/i18n/sco.json
@@ -663,7 +663,7 @@
"userjspreview": "'''Mynd that ye're juist testin/previewin yer uiser JavaScript; it haesna been hained yet!'''",
"sitecsspreview": "Mynd that ye'r yinly previewing this CSS.\nIt's no been hained yet!",
"sitejspreview": "Mynd that ye'r yinly previewing this JavaScript code.\nIt's no been hained yet!",
- "userinvalidcssjstitle": "Warnishmant Thaur's na ae skin \"$1\". Mynd that yer ain .css n .js pages uise ae lowercase teetle, e.g. {{ns:user}}:Foo/vector.css in steid o {{ns:user}}:Foo/Vector.css.",
+ "userinvalidconfigtitle": "Warnishmant Thaur's na ae skin \"$1\". Mynd that yer ain .css n .js pages uise ae lowercase teetle, e.g. {{ns:user}}:Foo/vector.css in steid o {{ns:user}}:Foo/Vector.css.",
"updated": "(Updatit)",
"note": "'''Mynd:'''",
"previewnote": "Mynd that this is yinlie ae luikower.\nYer chynges hae na been hained yet!",
@@ -1022,7 +1022,7 @@
"prefs-files": "Files",
"prefs-custom-css": "Custom CSS",
"prefs-custom-js": "Custom JS",
- "prefs-common-css-js": "Shaired CSS/JavaScript fer aw skins:",
+ "prefs-common-config": "Shaired CSS/JavaScript fer aw skins:",
"prefs-reset-intro": "Ye can uise this page tae reset yer preeferances til the steid defauts.\nThis canna be ondun.",
"prefs-emailconfirm-label": "Wab-mail confirmation:",
"youremail": "Yer email:",
@@ -1411,8 +1411,6 @@
"newpageletter": "N",
"boteditletter": "b",
"number_of_watching_users_pageview": "[$1 watchin {{PLURAL:$1|uiser|uisers}}]",
- "rc_categories": "Leemit tae categories (separate wi \"|\"):",
- "rc_categories_any": "Ony o the chosen",
"rc-change-size-new": "$1 {{PLURAL:$1|byte|bytes}} efter chynge",
"newsectionsummary": "/* $1 */ new section",
"rc-enhanced-expand": "Shaw details",
diff --git a/languages/i18n/sd.json b/languages/i18n/sd.json
index 598395977c..6b0dc679cb 100644
--- a/languages/i18n/sd.json
+++ b/languages/i18n/sd.json
@@ -147,7 +147,7 @@
"mytalk": "بØØ«",
"anontalk": "بØØ«",
"navigation": "رھÙÙ
ائÙ",
- "and": " ØÛ½",
+ "and": " Û½",
"faq": "ڪپس",
"actions": "ڪارگذارÙÙÙ",
"namespaces": "ÙاÙØ¡ÙÙ¾ÙÙارÙ",
@@ -1026,7 +1026,6 @@
"boteditletter": "Ú¯",
"unpatrolledletter": "!",
"number_of_watching_users_pageview": "[$1 {{PLURAL:$1|ÙاپرائÙÙدÚ|ÙاپرائÙÙدÚÙ}} Ú©Ù Ùظر Û¾ رکÙدÙ]",
- "rc_categories_any": "ÚÙÙÚÙÙÙ Ù
ا٠ڪ٠بÛ",
"rc-change-size-new": "$1 {{PLURAL:$1|بائÙÙ½|بائÙٽس}} تبدÙÙÙء٠کاÙÙ¾ÙØ¡Ù",
"newsectionsummary": "/* $1 */ ÙئÙ٠سÙڪشÙ",
"rc-enhanced-expand": "تÙصÙÙ ÚÙکارÙÙ",
diff --git a/languages/i18n/sdc.json b/languages/i18n/sdc.json
index 180e320bfe..06de033a2b 100644
--- a/languages/i18n/sdc.json
+++ b/languages/i18n/sdc.json
@@ -390,7 +390,7 @@
"userjsyoucanpreview": "'''Suggerimentu:''' Usa lu buttoni '''Visuarizza antiprimma''' pa prubà li nobi JS primma di sà ivvaddi.",
"usercsspreview": "'''Ammitanti ch'è soru un'antiprimma di lu propriu CSS passunari; li mudìfigghi nò so ancora isthaddi sà ivvaddi!'''",
"userjspreview": "'''Ammitanti ch'è soru un'antiprimma pa prubà lu propriu JavaScript passunari; li mudìfigghi nò so ancora isthaddi sà ivvaddi!'''",
- "userinvalidcssjstitle": "'''Attinzioni:''' Nò isisthi nisciun aipettu grà ficu \"$1\". Amminta chi li pà gini pa li .css e .js passunari à ni lu primu carà tteri di lu tìturu minori, cumenti {{ns:user}}:Foo/vector.css e nò {{ns:user}}:Foo/Vector.css.",
+ "userinvalidconfigtitle": "'''Attinzioni:''' Nò isisthi nisciun aipettu grà ficu \"$1\". Amminta chi li pà gini pa li .css e .js passunari à ni lu primu carà tteri di lu tìturu minori, cumenti {{ns:user}}:Foo/vector.css e nò {{ns:user}}:Foo/Vector.css.",
"updated": "(Aggiornaddu)",
"note": "'''NOTA:'''",
"previewnote": "'''Attinzioni: chistha è soru un'antiprimma. Li mudifigghi a la pagina Nà so ancora isthaddi saivvaddi!'''",
@@ -653,8 +653,6 @@
"newpageletter": "N",
"boteditletter": "b",
"number_of_watching_users_pageview": "[abbaidadda da {{PLURAL:$1|un'utenti|$1 utenti}}]",
- "rc_categories": "Limita a li categuri (siparaddi da \"|\")",
- "rc_categories_any": "Cassisia",
"newsectionsummary": "/* $1 */ noba sezzioni",
"rc-enhanced-expand": "Musthrà dettagli (dumanda JavaScript)",
"rc-enhanced-hide": "Cua dettà gli",
diff --git a/languages/i18n/se.json b/languages/i18n/se.json
index 9f53e48cac..901b15a1b4 100644
--- a/languages/i18n/se.json
+++ b/languages/i18n/se.json
@@ -509,8 +509,6 @@
"minoreditletter": "u",
"newpageletter": "O",
"number_of_watching_users_pageview": "[$1 Äuovvujeaddji geavaheaddji]",
- "rc_categories": "Beare luohkáin (earuheaddji lea â|â)",
- "rc_categories_any": "Mii beare",
"recentchangeslinked": "Dán siiddu varas rievdadusat",
"recentchangeslinked-feed": "Dán siiddu varas rievdadusat",
"recentchangeslinked-toolbox": "Dán siiddu varas rievdadusat",
diff --git a/languages/i18n/sei.json b/languages/i18n/sei.json
index bfa6b5e5ea..64faa2ed4b 100644
--- a/languages/i18n/sei.json
+++ b/languages/i18n/sei.json
@@ -342,7 +342,7 @@
"userjsyoucanpreview": "'''Tip:''' Usadad 'Cohuatlöx cuáxiit' testom me hun JS xuniim 'depre.",
"usercsspreview": "'''He cuáxiit he CSSde caitom, zo necoccebj xuniim!'''",
"userjspreview": "'''He cuáxiit/testom he JavaScriptde caitom, zo necoccebj xuniim!'''",
- "userinvalidcssjstitle": "'''Attencion:''' Skin \"$1\" coccebj ne'dáár. Regardom .css ö .js páhinám usadad titlenam lowercase zo, yanuiÃxzo mii yahöxde ti {{ns:user}}:Foo/vector.css opposadadde {{ns:user}}:Foo/Vector.css.",
+ "userinvalidconfigtitle": "'''Attencion:''' Skin \"$1\" coccebj ne'dáár. Regardom .css ö .js páhinám usadad titlenam lowercase zo, yanuiÃxzo mii yahöxde ti {{ns:user}}:Foo/vector.css opposadadde {{ns:user}}:Foo/Vector.css.",
"updated": "(varupdatenám)",
"note": "'''Notificacion:'''",
"previewnote": "'''Jan coccebj cuáxiit zo; quiÃx necoccebj xuniim!'''",
@@ -493,8 +493,6 @@
"newpageletter": "H",
"boteditletter": "R",
"number_of_watching_users_pageview": "[$1 cait(o/ó)m cáminot]",
- "rc_categories": "Limitde cayliÃb (separatman \"|\" mii)",
- "rc_categories_any": "Jömde pac",
"newsectionsummary": "/* $1 */ hunseccion",
"recentchangeslinked": "Quiix hámÃigonix",
"recentchangeslinked-feed": "Quiix hámÃigonix",
diff --git a/languages/i18n/ses.json b/languages/i18n/ses.json
index f629d11ae8..de801f492a 100644
--- a/languages/i18n/ses.json
+++ b/languages/i18n/ses.json
@@ -559,7 +559,7 @@
"userjspreview": "Honga kaÅ war goo ma Å¡ii/moofur de war JavaScript goykaa ga.\nA mana gaabundi jina!",
"sitecsspreview": "Honga kaÅ war mma moofur de CSS woo ga.\n A mana gaabundi jina!",
"sitejspreview": "Honga kaŠwar mma moofur de JavaScript ašariyaa woo ga.\nA mana gaabundi jina!",
- "userinvalidcssjstitle": "Yaamar: \"$1\" kuuru kul šii.\nLaada .css nda .js moɲey ga goy nda karfu kayna maa, sanda {{ns:user}}:Foo/vector.css manti {{ns:user}}:Foo/Vector.css.",
+ "userinvalidconfigtitle": "Yaamar: \"$1\" kuuru kul šii.\nLaada .css nda .js moɲey ga goy nda karfu kayna maa, sanda {{ns:user}}:Foo/vector.css manti {{ns:user}}:Foo/Vector.css.",
"updated": "(Taagante)",
"note": "Laasaabu:",
"previewnote": "Honga kaÅ war moofuryan de ti wo.\nWar barmawey mana gaabundi jina!",
@@ -888,7 +888,7 @@
"prefs-files": "Tukey",
"prefs-custom-css": "Laada CSS",
"prefs-custom-js": "Laada JavaScript",
- "prefs-common-css-js": "CSS/JavaScript kaÅ kuurey k'a may:",
+ "prefs-common-config": "CSS/JavaScript kaÅ kuurey k'a may:",
"prefs-reset-intro": "War ga hin ka goy nda moɲoo woo ka war ibaayey yeeti nungoo tilasu alhaaley ga.\nWoo ši hin ka taafeeri.",
"prefs-emailconfirm-label": "Bataga tabatandiyan:",
"youremail": "Bataga:",
@@ -1130,8 +1130,6 @@
"boteditletter": "b",
"unpatrolledletter": "!",
"number_of_watching_users_pageview": "[$1 goo ma {{PLURAL:$1|goykaa|goykey}} guna]",
- "rc_categories": "Kayandi dumey ga (i fay nda \"|\")",
- "rc_categories_any": "Affoo kul",
"rc-change-size": "$1",
"rc-change-size-new": "{{PLURAL:$1|cebsi}} $1 barmaa banda ga",
"newsectionsummary": "/* $1 */ dunbu taaga",
diff --git a/languages/i18n/sgs.json b/languages/i18n/sgs.json
index 392a55b98c..fe79eb2b69 100644
--- a/languages/i18n/sgs.json
+++ b/languages/i18n/sgs.json
@@ -520,7 +520,7 @@
"userjsyoucanpreview": "'''PatarÄms:''' Nauduokat â{{int:showpreview}}â mÄ«gtoka, kÅ« ÄÅ¡miegintomiet sava naujaji JS prÄ«Å¡ anou ÄÅ¡saugont.",
"usercsspreview": "'''NapamirÅ¡kÄt, kÅ« Tamsta tÄk parveizÄt sava nauduotoja CSS, ans da nabova ÄÅ¡sauguots!'''",
"userjspreview": "'''NepamirÅ¡kÄt, kÅ« Tamsta tÄk testoujat/parvaizÄt sava nauduotoja ''JavaScript'', ans da nabova ÄÅ¡sauguots!'''",
- "userinvalidcssjstitle": "'''DiemesÄ:''' NÄ juokÄs ÄÅ¡ruodos â$1â. NapamirÅ¡kÄt, kÅ« sava .css Är .js poslapÄ nauduo pavadÄnÄma mažuosiomÄs raidiemis, pvz., Nauduotuos:Foo/vector.css, o ne Nauduotuos:Foo/Vector.css.",
+ "userinvalidconfigtitle": "'''DiemesÄ:''' NÄ juokÄs ÄÅ¡ruodos â$1â. NapamirÅ¡kÄt, kÅ« sava .css Är .js poslapÄ nauduo pavadÄnÄma mažuosiomÄs raidiemis, pvz., Nauduotuos:Foo/vector.css, o ne Nauduotuos:Foo/Vector.css.",
"updated": "(AtnaujÄnta)",
"note": "'''ŽÄniuo:'''",
"previewnote": "'''NapamirÅ¡kat, kÅ« tas tÄktÄs tier parvaiza, pakeitÄmÄ da nier ÄÅ¡sauguoti!'''",
@@ -754,7 +754,7 @@
"prefs-files": "AbruozdielÄ",
"prefs-custom-css": "AsabÄÅ¡ks CSS",
"prefs-custom-js": "AsabÄÅ¡ks JavaScript",
- "prefs-common-css-js": "Bendros CSS/JavaScript vÄsuom aplinkuom:",
+ "prefs-common-config": "Bendros CSS/JavaScript vÄsuom aplinkuom:",
"prefs-reset-intro": "ÄiuonÄs galat grÅžintÄ vÄsus sava nÅ«statÄ«mus ont pradÄniu (kap bÅ«n tiktÄs prisijongus).\nTas dalÄ«ks nab'atÅ¡aukiams.",
"prefs-emailconfirm-label": "TÄkrÄ tuokis el. paÅ¡tos?",
"youremail": "El. paštos:",
@@ -898,8 +898,6 @@
"newpageletter": "N",
"boteditletter": "r",
"number_of_watching_users_pageview": "[$1 {{PLURAL:$1|keravuojontis nauduotuos|keravuojontÄ«s nauduotuojÄ|keravuojontiu nauduotuoju}}]",
- "rc_categories": "RuodÄ«tÄ tÄk tas kateguorÄjÄs (atskirkat nauduojont â|â)",
- "rc_categories_any": "BikuokÄ",
"rc-change-size-new": "$1 {{PLURAL:$1|baits|baitÄ|baitu}} pu pakeitÄma",
"newsectionsummary": "/* $1 */ naus skÄrsnelis",
"rc-enhanced-expand": "RuodÄ«tÄ smolkmenas",
diff --git a/languages/i18n/sh.json b/languages/i18n/sh.json
index 3f0065fd17..a9f871648a 100644
--- a/languages/i18n/sh.json
+++ b/languages/i18n/sh.json
@@ -587,7 +587,7 @@
"userjspreview": "'''Zapamite da je ovo samo test/pretpregled Vaše JavaScript-e.'''\n'''Još uvijek nije snimljena!'''",
"sitecsspreview": "'''Zapamtite ovo je samo izgled Vašeg CSS-a.'''\n'''Još uvijek nije snimljen!'''",
"sitejspreview": "'''Zapamtite ovo je samo izgled ovog koda JavaScripte.'''\n'''Još uvijek nije snimljen!'''",
- "userinvalidcssjstitle": "'''Upozorenje:''' Nema skina pod imenom \"$1\".\nUpamtite da korisniÄke .css i .js stranice koriste naslov s malim slovom, npr. {{ns:user}}:Foo/monobook.css umjesto {{ns:user}}:Foo/Monobook.css.",
+ "userinvalidconfigtitle": "'''Upozorenje:''' Nema skina pod imenom \"$1\".\nUpamtite da korisniÄke .css i .js stranice koriste naslov s malim slovom, npr. {{ns:user}}:Foo/monobook.css umjesto {{ns:user}}:Foo/Monobook.css.",
"updated": "(Osvježeno)",
"note": "'''Napomena:'''",
"previewnote": "Ne zaboravite da je ovo samo pregled\nIzmjene stranice nisu joÅ¡ saÄuvane!",
@@ -931,7 +931,7 @@
"prefs-files": "Datoteke",
"prefs-custom-css": "PrilagoÄeni CSS",
"prefs-custom-js": "PrilagoÄeni JS",
- "prefs-common-css-js": "ZajedniÄki CSS/JS za sve izglede (skinove):",
+ "prefs-common-config": "ZajedniÄki CSS/JS za sve izglede (skinove):",
"prefs-reset-intro": "Možete koristiti ovu stranicu da poništite Vaše postavke na ovom sajtu na pretpostavljene vrijednosti.\nOvo se ne može vratiti unazad.",
"prefs-emailconfirm-label": "E-mail potvrda:",
"youremail": "VaÅ¡a e-poÅ¡ta / ÐаÑа е-поÑÑа*",
@@ -1178,8 +1178,6 @@
"newpageletter": "N/Ð",
"boteditletter": "b",
"number_of_watching_users_pageview": "[$1 {{PLURAL:$1|korisnik|korisnika}} koji pregledaju]",
- "rc_categories": "OgraniÄi na kategorije (razdvoji sa \"|\"):",
- "rc_categories_any": "Bilo koju odabranu",
"rc-change-size-new": "$1 {{PLURAL:$1|bajt|bajta|bajtova}} posle izmene",
"newsectionsummary": "/* $1 */ nova sekcija",
"rc-enhanced-expand": "Pokaži detalje",
@@ -3004,7 +3002,7 @@
"feedback-subject": "Tema:",
"feedback-submit": "Unesi",
"feedback-thanks": "Hvala! VaÅ¡a povratna informacija je postavljena na stranicu â[$2 $1]â.",
- "searchsuggest-search": "Traži",
+ "searchsuggest-search": "Traži {{GRAMMAR:akuzativ|{{SITENAME}}}}",
"searchsuggest-containing": "sadrži...",
"api-error-badtoken": "Unutrašnja greška: token nije ispravan.",
"api-error-emptypage": "Stvaranje novih praznih stranica nije dozvoljeno.",
diff --git a/languages/i18n/shi.json b/languages/i18n/shi.json
index 38894c0b7a..7d7adf55bd 100644
--- a/languages/i18n/shi.json
+++ b/languages/i18n/shi.json
@@ -637,7 +637,6 @@
"boteditletter": "â´±",
"unpatrolledletter": "!",
"number_of_watching_users_pageview": "[$1 iżÅi {{PLURAL:$1|amsqdac|imsqdacn}}]",
- "rc_categories_any": "wanna",
"rc-change-size": "$1",
"rc-change-size-new": "$1 {{PLURAL:$1|ⴱⴰⵢâµ|âµâ´· ⴱⴰⵢâµ}} ⴷⴼⴼâµâµ âµ âµâµâµâ´¼âµ",
"newsectionsummary": "/* $1 */ âµâµâ´³âµ£âµâµ âµâ´°âµâ´°âµ¢âµâµâµ",
diff --git a/languages/i18n/shn.json b/languages/i18n/shn.json
index 74f24b1155..d886354c77 100644
--- a/languages/i18n/shn.json
+++ b/languages/i18n/shn.json
@@ -868,7 +868,7 @@
"prefs-files": "á¾á¢áá",
"prefs-custom-css": "CSS áááºá¸áá°ááº",
"prefs-custom-js": "JavaScript áááºá¸áá°ááº",
- "prefs-common-css-js": "CSS/Javascript á¸áá°ááºá¸á½ááá¸ááºáááá ááá á½áááºá¼ááºáááºá¸ááµááºá :",
+ "prefs-common-config": "CSS/Javascript á¸áá°ááºá¸á½ááá¸ááºáááá ááá á½áááºá¼ááºáááºá¸ááµááºá :",
"prefs-reset-intro": "á¸ááºááµááºá áá±á¸á¢ááºáá¸ááºáá¼áááááµáºáá¼áá áá½á¼áºáááá áááºáá¶áá¯á¼áºá¸ áá½ááºááááá¸ááºá¸ááºááµááºá á¸á°á¸áµáááá®á áá¢áá ááá°ááºáµá
ááºáá á¼áááá¼áºá¸áá±á¢ááºáá¸á¢ááºá á¶áá¯á¼áºá¸ááá¸á¶áá¯ááºá¶áá¯á¼áºá¸á",
"prefs-emailconfirm-label": "á¶á±ááá¼ááá¼á½á¼áºá¸ á¢á®á¸áá±á¸áẠ:",
"youremail": "á¢á®á¸áá±á¸áẠ:",
@@ -1178,7 +1178,6 @@
"newpageletter": "N",
"boteditletter": "b",
"number_of_watching_users_pageview": "[$1 áááºááá°áºáºá¸ {{PLURAL:$1|á½á°áá¸ááºáááá¯ááºá¸|á½á°áá¸ááºáááá¯ááºá¸á¶ááº}}]",
- "rc_categories_any": "ááá°áµáºááá±á¢á¼áºá¢á¼áº",
"rc-change-size-new": "$1 {{PLURAL:$1|byte|bytes}} áá¢áá¸áá±áá
áµáºááá¢áá",
"newsectionsummary": "/* $1 */ áµá¼áºá¢á¼áºáááºá",
"rc-enhanced-expand": "á¼ááá¼áº áá°ááºáá½áááá¼áºá¸",
diff --git a/languages/i18n/si.json b/languages/i18n/si.json
index b1980a40e5..41c87d4f16 100644
--- a/languages/i18n/si.json
+++ b/languages/i18n/si.json
@@ -622,7 +622,7 @@
"userjspreview": "'''à¶à¶¶ à·à·à¶¯à·à¶à¶»à¶±à·à¶±à· à¶à¶¶à¶à· පරà·à·à·à¶½à¶ ජà·à·à·à·à·à¶à·âරà·à¶´à·à¶§à· පරà·à¶à·à·à· à¶à·à¶»à·à¶¸/පà·à¶»-දà·à·à¶± පමණà¶à· බ෠ධà·à¶»à¶«à¶º à¶à¶»à¶±à·à¶±.'''\n'''à¶à¶º à¶à·à¶¸à¶à· à·à·à¶»à·à¶à·à¶¸à¶§ ලà¶à· à¶à·à¶§ නà·à¶¸à·à¶!'''",
"sitecsspreview": "'''à¶à¶¶ දà¶à·à¶±à·à¶±à· මà·à¶¸ CSS à·à· පà·à¶»à¶¯à·à·à¶±à¶à· පමණà¶à· බ෠à·à·à·à· à¶à¶¶à·à¶à¶±à·à¶±.'''\n'''à¶à¶º à¶à·à¶¸à¶à· à·à·à¶»à·à¶à·à¶¸à¶§ ලà¶à· à¶à·à¶§ නà·à¶¸à·à¶!'''",
"sitejspreview": "'''à¶à¶¶ දà¶à·à¶±à·à¶±à· මà·à¶¸ JavaScript à¶à·à¶à¶ºà·à·à· පà·à¶»à¶¯à·à·à¶±à¶à· පමණà¶à· බ෠à·à·à·à· à¶à¶¶à·à¶à¶±à·à¶±.'''\n'''à¶à¶º à¶à·à¶¸à¶à· à·à·à¶»à·à¶à·à¶¸à¶§ ලà¶à· à¶à·à¶§ නà·à¶¸à·à¶!'''",
- "userinvalidcssjstitle": "'''à¶
à·à·à·à¶¯à¶ºà¶ºà·:''' ඡà·à·à¶ºà¶à· නà·à¶¸à·à¶ \"$1\".\nරà·à¶à· පà·âරà¶à·à¶»à· .css à·à· .js පà·à¶§à· à·à·à·à·à¶±à· à¶à¶à¶à·âරà·à·à· à¶à·à¶©à·-à¶
à¶à·à¶»à· à·à·à¶»à·à· භà·à·à·à¶à· à¶à·à¶»à·à¶± බ෠à·à·à·à· à¶à¶¶à· à¶à¶±à·à¶±, නà·à¶¯à·à·à¶±. {{ns:user}}:Foo/vector.css මà·à· {{ns:user}}:Foo/Vector.css නà·à·à¶± බà·.",
+ "userinvalidconfigtitle": "'''à¶
à·à·à·à¶¯à¶ºà¶ºà·:''' ඡà·à·à¶ºà¶à· නà·à¶¸à·à¶ \"$1\".\nරà·à¶à· පà·âරà¶à·à¶»à· .css à·à· .js පà·à¶§à· à·à·à·à·à¶±à· à¶à¶à¶à·âරà·à·à· à¶à·à¶©à·-à¶
à¶à·à¶»à· à·à·à¶»à·à· භà·à·à·à¶à· à¶à·à¶»à·à¶± බ෠à·à·à·à· à¶à¶¶à· à¶à¶±à·à¶±, නà·à¶¯à·à·à¶±. {{ns:user}}:Foo/vector.css මà·à· {{ns:user}}:Foo/Vector.css නà·à·à¶± බà·.",
"updated": "(යà·à·à¶à·à¶à·à¶½à·à¶±)",
"note": "'''à·à¶§à·à¶±:'''",
"previewnote": "'''මà·à¶ºÂ පà·à¶»à¶¯à·à·à¶±à¶à· පමණà¶à· බ෠à·à·à·à·à¶à¶¶à·à¶à¶±à·à¶±.'''\nà¶à¶¶à¶à·Â à·à·à¶±à·à·à¶à·à¶»à·à¶¸à·Â à¶à·à¶¸à¶à·Â à·à·à¶»à·à¶à·à¶¸à¶§ ලà¶à· à¶à·à¶§Â නà·à¶¸à·à¶!",
@@ -960,7 +960,7 @@
"prefs-files": "à¶à·à¶±à·",
"prefs-custom-css": "à¶
භà·à¶»à·à¶ à· CSS",
"prefs-custom-js": " à¶
භà·à¶»à·à¶ à· JS",
- "prefs-common-css-js": "à·à·à¶ºà·
à· à·à·à·à· à·à¶³à·à· à·à·à·à¶½à· භà·à·à·à¶ CSS/ජà·à·à· à·à·à¶à·âරà·à¶´à·à¶§à·:",
+ "prefs-common-config": "à·à·à¶ºà·
à· à·à·à·à· à·à¶³à·à· à·à·à·à¶½à· භà·à·à·à¶ CSS/ජà·à·à· à·à·à¶à·âරà·à¶´à·à¶§à·:",
"prefs-reset-intro": "à¶à¶¶à¶à· à¶
භà·à¶´à·âරà·à¶à¶ºà¶±à·, à¶
ඩà·à· පà·à¶»à¶±à·à¶¸à· à·à·à¶à¶§ යà·
à·-පà·à·à·à¶§à·à·à·à¶¸ à·à¶³à·à·, à¶à¶¶ à·à¶§ මà·à¶¸ පà·à¶§à·à· භà·à·à·à¶à· à¶à¶½ à·à·à¶.\nමà·à¶º à¶
à·à·à·à· à¶à¶½ නà·à·à·à¶.",
"prefs-emailconfirm-label": "à·à·à¶¯à·âයà·à¶à·-ලà·à¶´à·à¶±à¶º à¶à·à·à·à¶»à·à¶à·à¶»à·à¶¸:",
"youremail": "à·à·à¶¯à·âයà·à¶à· à¶à·à¶´à·à¶½:",
@@ -1213,8 +1213,6 @@
"newpageletter": "නà·",
"boteditletter": "රà·à¶¶à·",
"number_of_watching_users_pageview": "[ {{PLURAL:$1| à¶à¶à· පරà·à·à·à¶½à¶à¶ºà·à¶à· මà·à¶»-à¶à¶»à¶ºà·|පරà·à·à·à¶½à¶à·à¶»à·à¶±à· $1 à¶à· මà·à¶»-à¶à¶»à¶à·}} ]",
- "rc_categories": "පà·âරà·à¶»à·à¶à¶ºà¶±à·à¶§ à·à·à¶¸à· à¶à¶»à¶±à·à¶± (\"|\" මà¶à·à¶±à· à·à·à¶±à· à¶à¶»à¶±à·à¶±):",
- "rc_categories_any": "à¶à·à¶»à·à¶à¶à· à¶à¶±à·à¶¸ à¶à¶à¶à·",
"rc-change-size": "$1",
"rc-change-size-new": "à·à·à¶±à·à· à¶à·
පà·à· {{PLURAL:$1|බයà·à¶§|බයà·à¶§à¶ºà¶±à·}} $1 à¶à·",
"newsectionsummary": "/* $1 */ න෠ඡà·à¶¯à¶º",
diff --git a/languages/i18n/sk.json b/languages/i18n/sk.json
index 4ada884f72..be54581954 100644
--- a/languages/i18n/sk.json
+++ b/languages/i18n/sk.json
@@ -674,7 +674,7 @@
"userjspreview": "'''Nezabudnite, že iba testujete/náhľad vášho použÃvateľského JavaScriptu, eÅ¡te nebol uložený!'''",
"sitecsspreview": "'''Nezabudnite, že toto je iba náhľad tohto CSS.'''\n'''Zatiaľ nebolo uložené!'''",
"sitejspreview": "'''Nezabudnite, že toto je iba náhľad tohto JavaScriptu.'''\n'''Zatiaľ nebol uložený!'''",
- "userinvalidcssjstitle": "'''Upozornenie:''' Neexistuje vzhľad â$1â. Pamätajte, že vlastné .css a .js stránky použÃvajú názov s malými pÃsmenami, napr. {{ns:user}}:Foo/vector.css a nie {{ns:user}}:Foo/Vector.css.",
+ "userinvalidconfigtitle": "'''Upozornenie:''' Neexistuje vzhľad â$1â. Pamätajte, že vlastné .css a .js stránky použÃvajú názov s malými pÃsmenami, napr. {{ns:user}}:Foo/vector.css a nie {{ns:user}}:Foo/Vector.css.",
"updated": "(Aktualizovaný)",
"note": "'''Poznámka: '''",
"previewnote": "'''Nezabudnite, toto je iba náhľad stránky, ktorú upravujete.\nZmeny ešte nie sú uložené!'''",
@@ -1021,7 +1021,7 @@
"prefs-files": "Súbory",
"prefs-custom-css": "Vlastný CSS",
"prefs-custom-js": "Vlastný JS",
- "prefs-common-css-js": "SpoloÄné CSS/JS pre vÅ¡etky témy:",
+ "prefs-common-config": "SpoloÄné CSS/JS pre vÅ¡etky témy:",
"prefs-reset-intro": "Túto stránku môžete použiÅ¥ na vrátenie predvolených hodnôt vaÅ¡ich nastavenÃ.\nTúto operáciu nemožno vrátiÅ¥.",
"prefs-emailconfirm-label": "Overenie e-mailu:",
"youremail": "Váš e-mail²",
@@ -1434,8 +1434,6 @@
"newpageletter": "N",
"boteditletter": "b",
"number_of_watching_users_pageview": "[$1 {{PLURAL:$1|sledujúci použÃvateľ|sledujúci použÃvatelia|sledujúcich použÃvateľov}}]",
- "rc_categories": "ObmedziÅ¥ na kategórie (oddeľte znakom â|â)",
- "rc_categories_any": "Akékoľvek z vybraných",
"rc-change-size-new": "$1 {{PLURAL:$1|bajt|bajty|bajtov}} po zmene",
"newsectionsummary": "/* $1 */ nová sekcia",
"rc-enhanced-expand": "Zobraziť podrobnosti",
diff --git a/languages/i18n/skr-arab.json b/languages/i18n/skr-arab.json
index f76e8dc632..991e75691f 100644
--- a/languages/i18n/skr-arab.json
+++ b/languages/i18n/skr-arab.json
@@ -390,6 +390,7 @@
"loginreqlink": "Ùاگ اÙ",
"accmailtitle": "پاس ÙØ±Ú Ø¨Ú¾Ûج ÝتÛ",
"newarticle": "(ÙÙاں)",
+ "noarticletext": "Ûݨ اÛÚº ÙرÙÛ ØªÛ Ú©Ø¬Ú¾ کائÙÛ ÙÚ©Ú¾Ûا ÛÙÛاÛتساں Ù»Ûاں ÙرÙÛاں ÙÚ [[Special:Search/{{PAGENAME}}|اÛÚº ÙرÙÛ Ø¯Û Ø¹ÙÙا٠کÙÚº Ú³ÙÙÚ¾ Ø³Ú³Ø¯Û ÛÙ]]Ø [{{fullurl:{{#Special:Log}}|page={{FULLPAGENAMEE}}}} Ù
تعÙÙÛ Ùاڳ ÙÚ Ú³ÙÙÚ¾ Ø³Ú³Ø¯Û ÛÙ]Ø\nÛا [{{fullurl:{{FULLPAGENAME}}|action=edit}} اÛÚº ÙرÙÛ Ú©ÙÚº Ù
ÙÙÚÚ¾ÙÚº بݨا Ø³Ú³Ø¯Û ÛÙ]Û",
"userpage-userdoesnotexist-view": "ØµØ§Ø±Ù Ú©Ú¾Ø§ØªÛ \"$1\" Ø±Ø¬Ø³Ù¹Ø±Ú Ú©Ø§Ø¦ÙÛÛ",
"updated": "(اپ ÚÛÙ¹ ØªÚ¾Û Ú³Ûا)",
"note": "ÙÙÙ¹:",
diff --git a/languages/i18n/sl.json b/languages/i18n/sl.json
index 982fb961b0..5c7b60f0fd 100644
--- a/languages/i18n/sl.json
+++ b/languages/i18n/sl.json
@@ -656,7 +656,7 @@
"userjspreview": "'''Ne pozabite, da svoj uporabniški JavaScript le preizkušate/predogledujete.'''\n'''Ni še bil shranjen!'''",
"sitecsspreview": "'''Ne pozabite, da ta CSS samo preizkušate.'''\n'''Ni še bil shranjen!'''",
"sitejspreview": "'''Ne pozabite, da kodo tega JavaScripta samo preizkušate.'''\n'''Ni še bila shranjena!'''",
- "userinvalidcssjstitle": "'''Opozorilo:''' Koža »$1« ne obstaja.\nVedite, da .css in .js strani po meri uporabljajo naslov z malo zaÄetnico, npr. {{ns:user}}:Blabla/vector.css namesto {{ns:user}}:Blabla/Vector.css.",
+ "userinvalidconfigtitle": "'''Opozorilo:''' Koža »$1« ne obstaja.\nVedite, da .css in .js strani po meri uporabljajo naslov z malo zaÄetnico, npr. {{ns:user}}:Blabla/vector.css namesto {{ns:user}}:Blabla/Vector.css.",
"updated": "(Posodobljeno)",
"note": "'''Opomba:'''",
"previewnote": "'''Vedite, da stran le predogledujete.'''\nVaših sprememb še nismo shranili!",
@@ -1023,7 +1023,7 @@
"prefs-files": "Datoteke",
"prefs-custom-css": "CSS po meri",
"prefs-custom-js": "JS po meri",
- "prefs-common-css-js": "Skupni CSS/JS za vse kože:",
+ "prefs-common-config": "Skupni CSS/JS za vse kože:",
"prefs-reset-intro": "To stran lahko uporabite za ponastavitev nastavitev na privzete za to spletiÅ¡Äe.\nTega ni mogoÄe razveljaviti.",
"prefs-emailconfirm-label": "Potrditev e-pošte:",
"youremail": "E-poštni naslov:",
@@ -1457,8 +1457,6 @@
"newpageletter": "N",
"boteditletter": "b",
"number_of_watching_users_pageview": "[temo {{PLURAL:$1|spremlja|spremljata|spremljajo|spremlja|spremlja}} $1 {{PLURAL:$1|uporabnik|uporabnika|uporabniki|uporabnikov|uporabnikov}}]",
- "rc_categories": "Omejitev na kategorije (loÄite jih z »|«):",
- "rc_categories_any": "Katera koli od izbranih",
"rc-change-size-new": "po spremembi: $1 {{PLURAL:$1|zlog|zloga|zlogi|zlogov}}",
"newsectionsummary": "/* $1 */ nov razdelek",
"rc-enhanced-expand": "Pokaži podrobnosti",
@@ -2613,6 +2611,7 @@
"thumbnail_dest_directory": "Ne morem ustvariti ciljnega direktorija",
"thumbnail_image-type": "Vrsta slike ni podprta",
"thumbnail_gd-library": "Nepopolna konfiguracija knjižice GD: manjka funkcija $1",
+ "thumbnail_image-size-zero": "Zdi se, da je velikost datoteke slike enaka niÄ.",
"thumbnail_image-missing": "Kaže, da datoteka manjka: $1",
"thumbnail_image-failure-limit": "Nedavno je bilo preveÄ spodletelih poskusov ($1 ali veÄ) izdelave sliÄice. Prosimo, poskusite znova pozneje.",
"import": "Uvoz strani",
diff --git a/languages/i18n/sli.json b/languages/i18n/sli.json
index e25511cbd0..855fb7abb7 100644
--- a/languages/i18n/sli.json
+++ b/languages/i18n/sli.json
@@ -374,7 +374,7 @@
"userjsyoucanpreview": "'''Tipp:''' Benutze dann Vurschau-Button, im dei neues JS vur damm Speichern zu testa.",
"usercsspreview": "== Vurschau Dennes Nutzer-CSS ==\n'''Beachte:''' Noach damm Speichern muÃt du dennen Browser oaweisa, de neue Version zu loada: '''Mozilla/Firefox:''' ''Strg-Shift-R'', '''Internet Explorer:''' ''Strg-F5'', '''Opera:''' ''F5'', '''Safari:''' ''Cmd-Shift-R'', '''Konqueror:''' ''F5''.",
"userjspreview": "== Vurschau Dennes Nutzer-JavaScript ==\n'''Beachte:''' Noach damm Speichern muÃt du dennen Browser oaweisa, de neue Version zu loada: '''Mozilla/Firefox:''' ''Strg-Shift-R'', '''Internet Explorer:''' ''Strg-F5'', '''Opera:''' ''F5'', '''Safari:''' ''Cmd-Shift-R'', '''Konqueror:''' ''F5''.",
- "userinvalidcssjstitle": "'''OCHTICHE:''' Skin â$1â existiert ne. Bedenke, doà nutzerspezifische .css- und .js-Seyta miet a'm Kleenbuchstaba oafanga missa, olso beispielsweise ''{{ns:user}}:Mustermann/vector.css'' oa Stalle vu ''{{ns:user}}:Mustermoan/Vector.css''.",
+ "userinvalidconfigtitle": "'''OCHTICHE:''' Skin â$1â existiert ne. Bedenke, doà nutzerspezifische .css- und .js-Seyta miet a'm Kleenbuchstaba oafanga missa, olso beispielsweise ''{{ns:user}}:Mustermann/vector.css'' oa Stalle vu ''{{ns:user}}:Mustermoan/Vector.css''.",
"previewnote": "'''Dies ies ock anne Vurschau, de Seite wurde noo nee gespeichert!'''",
"previewconflict": "Diese Vurschau gitt 'n Inhalt des obern Textfeldes wieder. Su werd de Seite aussahn, wenn du jitz speicherst.",
"session_fail_preview": "'''Denne Beoarbeetung konnte ne gespeichert waan, do Sitzungsdaten verlorn geganga sein.\nBitte versiche is erneut, indem du under dar fulgenda Textvurschau noo amols uff âSeyte speichernâ klickst.\nSullte doas Problem bestiehn bleiba, [[Special:UserLogout|melde diech ob]] und danone wieder oa.'''",
@@ -727,8 +727,6 @@
"newpageletter": "N",
"boteditletter": "b",
"number_of_watching_users_pageview": "[$1 {{PLURAL:$1|beobachtender|beobachtende}} Nutzer]",
- "rc_categories": "Ock Seyta aus dann Kategorien (getrennt miet â|â):",
- "rc_categories_any": "Olle",
"newsectionsummary": "Neuer Obschnitt /* $1 */",
"rc-enhanced-expand": "Details oazeega (beneetigt JavaScript)",
"rc-enhanced-hide": "Details verstecka",
diff --git a/languages/i18n/so.json b/languages/i18n/so.json
index e5f30ea130..c043222969 100644
--- a/languages/i18n/so.json
+++ b/languages/i18n/so.json
@@ -707,7 +707,6 @@
"minoreditletter": "y",
"newpageletter": "C",
"boteditletter": "b",
- "rc_categories": "Wuxuu u gaar yahay qeybaha (u kala qeybsan \"|\")",
"rc-enhanced-expand": "Itus ka hadalka (waxaa loo baahanyahay JavaScript)",
"rc-enhanced-hide": "Qari ka hadalka",
"recentchangeslinked": "Isbedelada la'xiriira",
diff --git a/languages/i18n/sq.json b/languages/i18n/sq.json
index fc400c0ec8..c148b6407b 100644
--- a/languages/i18n/sq.json
+++ b/languages/i18n/sq.json
@@ -33,7 +33,8 @@
"Kosovastar",
"Matma Rex",
"Arianit",
- "Denisa"
+ "Denisa",
+ "Fanjiayi"
]
},
"tog-underline": "Nënvizimi i lidhjes:",
@@ -100,30 +101,30 @@
"thu": "Enj",
"fri": "Pre",
"sat": "Sht",
- "january": "Janar",
- "february": "Shkurt",
- "march": "Mars",
- "april": "Prill",
- "may_long": "Maj",
- "june": "Qershor",
- "july": "Korrik",
- "august": "Gusht",
- "september": "Shtator",
- "october": "Tetor",
- "november": "Nëntor",
- "december": "Dhjetor",
- "january-gen": "Janar",
- "february-gen": "Shkurt",
- "march-gen": "Mars",
- "april-gen": "Prill",
- "may-gen": "Maj",
- "june-gen": "Qershor",
- "july-gen": "Korrik",
- "august-gen": "Gusht",
- "september-gen": "Shtator",
- "october-gen": "Tetor",
- "november-gen": "Nëntor",
- "december-gen": "Dhjetor",
+ "january": "janar",
+ "february": "shkurt",
+ "march": "mars",
+ "april": "prill",
+ "may_long": "maj",
+ "june": "qershor",
+ "july": "korrik",
+ "august": "gusht",
+ "september": "shtator",
+ "october": "tetor",
+ "november": "nëntor",
+ "december": "dhjetor",
+ "january-gen": "janar",
+ "february-gen": "shkurt",
+ "march-gen": "mars",
+ "april-gen": "prill",
+ "may-gen": "maj",
+ "june-gen": "qershor",
+ "july-gen": "korrik",
+ "august-gen": "gusht",
+ "september-gen": "shtator",
+ "october-gen": "tetor",
+ "november-gen": "nëntor",
+ "december-gen": "dhjetor",
"jan": "Jan",
"feb": "Shk",
"mar": "Mar",
@@ -307,7 +308,7 @@
"nstab-project": "Projekti",
"nstab-image": "Skedari",
"nstab-mediawiki": "Mesazhi",
- "nstab-template": "Shablloni",
+ "nstab-template": "Stampa",
"nstab-help": "Ndihmë",
"nstab-category": "Kategoria",
"mainpage-nstab": "Faqja kryesore",
@@ -661,7 +662,7 @@
"userjspreview": "'''Vini re se kjo është vetëm një provë ose parapamje e faqes tuaj JavaScript, ajo nuk është ruajtur akoma!'''",
"sitecsspreview": "Vini re! Ju jeni duke inspektuar CSS-në!\nNuk është ruajtur ende!",
"sitejspreview": "Vini re! Ju jeni duke inspektuar këtë kod JavaScript. \nNuk është ruajtur ende!",
- "userinvalidcssjstitle": "'''Kujdes:''' Nuk ka pamje të quajtur \"$1\". Vini re se faqet .css dhe .js përdorin titull me gërma të vogla, p.sh. {{ns:user}}:Foo/vector.css, jo {{ns:user}}:Foo/Vector.css.",
+ "userinvalidconfigtitle": "'''Kujdes:''' Nuk ka pamje të quajtur \"$1\". Vini re se faqet .css dhe .js përdorin titull me gërma të vogla, p.sh. {{ns:user}}:Foo/vector.css, jo {{ns:user}}:Foo/Vector.css.",
"updated": "(E ndryshuar)",
"note": "'''Shënim:'''",
"previewnote": "'''Mos harro që kjo është vetëm një parapamje.'''\nNdryshimet e tua nuk janë ruajtur ende!",
@@ -704,7 +705,7 @@
"permissionserrorstext": "Nuk keni leje për të bërë këtë veprim për {{PLURAL:$1|këtë arsye|këto arsye}}:",
"permissionserrorstext-withaction": "Ju nuk keni leje për $2, për {{PLURAL:$1|këtë arsye|këto arsye}}:",
"recreate-moveddeleted-warn": "'''Kujdes: Po rikrijoni një faqe që është grisur më parë.'''\n\nMendohuni nëse dëshironi të vazhdoni me veprimin tuaj në këtë faqe.\nRegjistri i grisjes për këtë faqe jepet më poshtë:",
- "moveddeleted-notice": "Kjo faqe është grisur. Të dhënat e grisjes për këtë faqe gjenden më poshtë, për referencë.",
+ "moveddeleted-notice": "Kjo faqe është grisur. Të dhënat, protection e grisjes për këtë faqe gjenden më poshtë, për referencë.",
"log-fulllog": "Shihe ditaret të plota",
"edit-hook-aborted": "Redaktimi u ndërpre nga një goditje.\nNuk dha asnjë shpjegim.",
"edit-gone-missing": "Faqja nuk mund t freskohet.\nDuket se është grisur.",
@@ -983,7 +984,7 @@
"prefs-files": "Figura",
"prefs-custom-css": "CSS i përpunuem",
"prefs-custom-js": "JavaScripti i përpunuar",
- "prefs-common-css-js": "CSS/Javascript të përbashkët për të gjitha pamjet:",
+ "prefs-common-config": "CSS/Javascript të përbashkët për të gjitha pamjet:",
"prefs-reset-intro": "Mundeni me përdorë këtë faqe për me i kthy parapëlqimet tueja në ato të paracaktuemet e faqes.\nKjo nuk mundet me u zhbâ.",
"prefs-emailconfirm-label": "Konfirmimi i emailit:",
"youremail": "Adresa e email-it*",
@@ -1362,8 +1363,6 @@
"newpageletter": "R",
"boteditletter": "b",
"number_of_watching_users_pageview": "[$1 duke u mbikqyrur nga {{PLURAL:$1|përdorues|përdorues}}]",
- "rc_categories": "Kufizimi i kategorive (të ndara me \"|\")",
- "rc_categories_any": "Ndonjë nga të zgjedhurat",
"rc-change-size-new": "$1 {{PLURAL:$1|bajt|bajtë}} pas ndryshimit",
"newsectionsummary": "/* $1 */ seksion i ri",
"rc-enhanced-expand": "Trego detajet",
@@ -1373,7 +1372,7 @@
"recentchangeslinked-feed": "Ndryshime të ndërvarura",
"recentchangeslinked-toolbox": "Ndryshime të ndërvarura",
"recentchangeslinked-title": "Ndryshime që kanë lidhje me \"$1\"",
- "recentchangeslinked-summary": "Kjo është një listë e ndryshimeve së fundmi të faqeve të lidhura nga faqja e dhënë (ose bëjnë pjesë tek kategoria e dhënë).\nFaqet [[Special:Watchlist|nën mbikqyrjen tuaj]] duken të '''theksuara'''.",
+ "recentchangeslinked-summary": "Kjo është një listë e ndryshimeve së fundmi të faqeve të lidhura nga faqja e dhënë (ose bëjnë pjesë tek kategoria e dhënë).\nFaqet [[Special:Watchlist|nën mbikqyrjen tuaj]] duken të theksuara.",
"recentchangeslinked-page": "Emri i faqes:",
"recentchangeslinked-to": "Trego ndryshimet e faqeve që lidhen tek faqja e dhënë",
"recentchanges-page-added-to-category": "[[:$1]] shtuar në kategori",
diff --git a/languages/i18n/sr-ec.json b/languages/i18n/sr-ec.json
index 763be02ade..38e81e5c65 100644
--- a/languages/i18n/sr-ec.json
+++ b/languages/i18n/sr-ec.json
@@ -45,35 +45,35 @@
"tog-newpageshidepatrolled": "СакÑÐ¸Ñ Ð¿Ð°ÑÑолиÑане ÑÑÑаниÑе Ñа ÑпиÑка новиÑ
ÑÑÑаниÑа",
"tog-hidecategorization": "СакÑÐ¸Ñ ÐºÐ°ÑегоÑизаÑиÑÑ ÑÑÑаниÑа",
"tog-extendwatchlist": "ÐÑоÑиÑи ÑпиÑак надгледаÑа за пÑиказ ÑвиÑ
измена, не Ñамо ÑкоÑаÑÑиÑ
",
- "tog-usenewrc": "ÐÑÑпни пÑиказ измена Ñваке поÑединаÑне ÑÑÑаниÑе Ñ ÑкоÑаÑÑим изменама и ÑпиÑÐºÑ Ð½Ð°Ð´Ð³Ð»ÐµÐ´Ð°Ñа",
+ "tog-usenewrc": "ÐÑÑпиÑи измене по ÑÑÑаниÑи Ñ ÑкоÑаÑÑим изменама и ÑпиÑÐºÑ Ð½Ð°Ð´Ð³Ð»ÐµÐ´Ð°Ñа",
"tog-numberheadings": "ÐÑÑомаÑÑки нÑмеÑиÑи поднаÑлове",
"tog-showtoolbar": "ÐÑикажи ÑÑÐ°ÐºÑ Ñ Ð°Ð»Ð°Ñкама за ÑÑеÑиваÑе",
"tog-editondblclick": "УÑеÑиваÑе ÑÑÑаниÑа двоÑÑÑÑким кликом",
"tog-editsectiononrightclick": "УÑеÑиваÑе одеÑака деÑним кликом на ÑиÑ
ове наÑлове",
- "tog-watchcreations": "ÐÐ¾Ð´Ð°Ñ ÑÑÑаниÑе коÑе напÑавим и даÑоÑеке коÑе поÑаÑем Ñ Ð¼Ð¾Ñ ÑпиÑак надгледаÑа",
+ "tog-watchcreations": "ÐÐ¾Ð´Ð°Ñ ÑÑÑаниÑе коÑе напÑавим и даÑоÑеке коÑе оÑпÑемим Ñ Ð¼Ð¾Ñ ÑпиÑак надгледаÑа",
"tog-watchdefault": "ÐÐ¾Ð´Ð°Ñ ÑÑÑаниÑе и даÑоÑеке коÑе изменим Ñ Ð¼Ð¾Ñ ÑпиÑак надгледаÑа",
"tog-watchmoves": "ÐÐ¾Ð´Ð°Ñ ÑÑÑаниÑе и даÑоÑеке коÑе пÑемеÑÑим Ñ Ð¼Ð¾Ñ ÑпиÑак надгледаÑа",
"tog-watchdeletion": "ÐÐ¾Ð´Ð°Ñ ÑÑÑаниÑе и даÑоÑеке коÑе обÑиÑем Ñ Ð¼Ð¾Ñ ÑпиÑак надгледаÑа",
"tog-watchuploads": "ÐÐ¾Ð´Ð°Ñ Ð´Ð°ÑоÑеке коÑе оÑпÑемим Ñ Ð¼Ð¾Ñ ÑпиÑак надгледаÑа",
"tog-watchrollback": "ÐÐ¾Ð´Ð°Ñ ÑÑÑаниÑе на коÑима Ñам вÑаÑио измене Ñ Ð¼Ð¾Ñ ÑпиÑак надгледаÑа",
"tog-minordefault": "ÐзнаÑÐ°Ð²Ð°Ñ Ñве измене као маÑе",
- "tog-previewontop": "ÐÑикажи пÑеÑпÑеглед пÑе оквиÑа за ÑÑеÑиваÑе",
- "tog-previewonfirst": "ÐÑикажи пÑеглед на пÑÐ²Ð¾Ñ Ð¸Ð·Ð¼ÐµÐ½Ð¸",
- "tog-enotifwatchlistpages": "ÐоÑаÑи ми имеÑл када Ñе измени ÑÑÑаниÑа или даÑоÑека коÑÑ Ð½Ð°Ð´Ð³Ð»ÐµÐ´Ð°Ð¼",
- "tog-enotifusertalkpages": "ÐоÑаÑи ми имеÑл када Ñе моÑа ÑÑÑаниÑа за ÑÐ°Ð·Ð³Ð¾Ð²Ð¾Ñ Ð¸Ð·Ð¼ÐµÐ½Ð¸",
- "tog-enotifminoredits": "ÐоÑаÑи ми имеÑл и за маÑе измене ÑÑÑаниÑа и даÑоÑека",
- "tog-enotifrevealaddr": "ÐÑикажи моÑÑ Ð¸Ð¼ÐµÑл адÑеÑÑ Ñ Ð¿Ð¾ÑÑкама обавеÑÑеÑа",
+ "tog-previewontop": "ÐÑикажи пÑеÑпÑеглед изнад оквиÑа за ÑÑеÑиваÑе",
+ "tog-previewonfirst": "ÐÑикажи пÑеÑпÑеглед пÑи пÑÐ²Ð¾Ñ Ð¸Ð·Ð¼ÐµÐ½Ð¸",
+ "tog-enotifwatchlistpages": "ÐоÑаÑи ми имеÑл када Ñе пÑомени ÑÑÑаниÑа или даÑоÑека Ñа мог ÑпиÑка надгледаÑа",
+ "tog-enotifusertalkpages": "ÐоÑаÑи ми имеÑл кад Ñе пÑомени моÑа ÑÑÑаниÑа за ÑазговоÑ",
+ "tog-enotifminoredits": "ÐоÑаÑи ми имеÑл и код маÑиÑ
измена ÑÑÑаниÑа и даÑоÑека",
+ "tog-enotifrevealaddr": "ÐÑкÑÐ¸Ñ Ð¼Ð¾ÑÑ Ð¸Ð¼ÐµÑл адÑеÑÑ Ñ Ð¿Ð¾ÑÑкама обавеÑÑеÑа",
"tog-shownumberswatching": "ÐÑикажи бÑÐ¾Ñ ÐºÐ¾ÑиÑника коÑи надгледаÑÑ",
"tog-oldsig": "ÐÐ°Ñ ÑÑенÑÑни поÑпиÑ:",
"tog-fancysig": "СмаÑÑÐ°Ñ Ð¿Ð¾ÑÐ¿Ð¸Ñ ÐºÐ°Ð¾ викиÑекÑÑ (без ÑамоповезиваÑа)",
- "tog-uselivepreview": "ÐÑикажи пÑеÑпÑеглед без оÑвежаваÑа ÑÑÑане",
+ "tog-uselivepreview": "ÐÑикажи пÑеÑпÑеглед без поновног ÑÑиÑаваÑа ÑÑÑаниÑе",
"tog-forceeditsummary": "УпозоÑи ме када не ÑнеÑем Ð¾Ð¿Ð¸Ñ Ð¸Ð·Ð¼ÐµÐ½Ðµ",
"tog-watchlisthideown": "СакÑÐ¸Ñ Ð¼Ð¾Ñе измене Ñа ÑпиÑка надгледаÑа",
"tog-watchlisthidebots": "СакÑÐ¸Ñ Ð¸Ð·Ð¼ÐµÐ½Ðµ боÑова Ñа ÑпиÑка надгледаÑа",
"tog-watchlisthideminor": "СакÑÐ¸Ñ Ð¼Ð°Ñе измене Ñа ÑпиÑка надгледаÑа",
"tog-watchlisthideliu": "СакÑÐ¸Ñ Ð¸Ð·Ð¼ÐµÐ½Ðµ пÑиÑавÑениÑ
коÑиÑника Ñа ÑпиÑка надгледаÑа",
- "tog-watchlistreloadautomatically": "ÐÑÑомаÑÑки оÑвежи ÑпиÑак надгледаÑа кад год Ñе ÑилÑÐµÑ Ð¸Ð·Ð¼ÐµÐ½Ð¸ (поÑÑебан JavaScript)",
- "tog-watchlistunwatchlinks": "ÐÐ¾Ð´Ð°Ñ Ð²ÐµÐ·Ðµ за диÑекÑно додаваÑе/ÑклаÑаÑе ÑÑавки Ñа ÑпиÑка надгледаÑа (поÑÑебан ÐаваСкÑипÑ)",
+ "tog-watchlistreloadautomatically": "ÐÑÑомаÑÑки поново ÑÑиÑÐ°Ñ ÑпиÑак надгледаÑа кад год Ñе ÑилÑÐµÑ Ð¸Ð·Ð¼ÐµÐ½Ð¸ (поÑÑебан JavaScript)",
+ "tog-watchlistunwatchlinks": "ÐÐ¾Ð´Ð°Ñ Ð²ÐµÐ·Ðµ за диÑекÑно додаваÑе/ÑклаÑаÑе ÑÑавки Ñа ÑпиÑка надгледаÑа (поÑÑебан JavaScript)",
"tog-watchlisthideanons": "СакÑÐ¸Ñ Ð¸Ð·Ð¼ÐµÐ½Ðµ анонимниÑ
коÑиÑника Ñа ÑпиÑка надгледаÑа",
"tog-watchlisthidepatrolled": "СакÑÐ¸Ñ Ð¿Ð°ÑÑолиÑане измене Ñа ÑпиÑка надгледаÑа",
"tog-watchlisthidecategorization": "СакÑÐ¸Ñ ÐºÐ°ÑегоÑизаÑиÑÑ ÑÑÑаниÑа",
@@ -82,11 +82,11 @@
"tog-showhiddencats": "ÐÑикажи ÑкÑивене каÑегоÑиÑе",
"tog-norollbackdiff": "Ðе пÑиказÑÑ ÑÐ°Ð·Ð»Ð¸ÐºÑ Ð½Ð°ÐºÐ¾Ð½ извÑÑеног вÑаÑаÑа",
"tog-useeditwarning": "УпозоÑи ме када напÑÑÑам ÑÑÑаниÑÑ Ñа неÑаÑÑваним изменама",
- "tog-prefershttps": "Увек коÑиÑÑи ÑигÑÑÐ½Ñ ÐºÐ¾Ð½ÐµÐºÑиÑÑ ÐºÐ°Ð´Ð° Ñам пÑиÑавÑен.",
+ "tog-prefershttps": "Увек коÑиÑÑи ÑигÑÑÐ½Ñ Ð²ÐµÐ·Ñ Ð´Ð¾Ðº Ñам пÑиÑавÑен.",
"underline-always": "Увек",
"underline-never": "Ðикад",
"underline-default": "ÐÑема Ñеми или пÑегледаÑÑ",
- "editfont-style": "Ðзглед ÑонÑа Ñ ÑÑеÑиваÑком оквиÑÑ:",
+ "editfont-style": "СÑил ÑонÑа Ñ Ð¾ÐºÐ²Ð¸ÑÑ Ð·Ð° ÑÑеÑиваÑе:",
"editfont-monospace": "СÑазмеÑно ÑиÑок ÑонÑ",
"editfont-sansserif": "ÐеÑеÑиÑни ÑонÑ",
"editfont-serif": "СеÑиÑни ÑонÑ",
@@ -140,18 +140,18 @@
"oct": "окÑ",
"nov": "нов",
"dec": "деÑ",
- "january-date": "$1 ÑанÑаÑ",
- "february-date": "$1 ÑебÑÑаÑ",
- "march-date": "$1 маÑÑ",
- "april-date": "$1 апÑил",
- "may-date": "$1 маÑ",
- "june-date": "$1 ÑÑн",
- "july-date": "$1 ÑÑл",
- "august-date": "$1 авгÑÑÑ",
- "september-date": "$1 ÑепÑембаÑ",
- "october-date": "$1 окоÑобаÑ",
- "november-date": "$1 новембаÑ",
- "december-date": "$1 деÑембаÑ",
+ "january-date": "$1. ÑанÑаÑ",
+ "february-date": "$1. ÑебÑÑаÑ",
+ "march-date": "$1. маÑÑ",
+ "april-date": "$1. апÑил",
+ "may-date": "$1. маÑ",
+ "june-date": "$1. ÑÑн",
+ "july-date": "$1. ÑÑл",
+ "august-date": "$1. авгÑÑÑ",
+ "september-date": "$1. ÑепÑембаÑ",
+ "october-date": "$1. окоÑобаÑ",
+ "november-date": "$1. новембаÑ",
+ "december-date": "$1. деÑембаÑ",
"period-am": "пÑеподне",
"period-pm": "поподне",
"pagecategories": "{{PLURAL:$1|ÐаÑегоÑиÑа|ÐаÑегоÑиÑе|ÐаÑегоÑиÑа}}",
@@ -172,7 +172,7 @@
"noindex-category": "ÐепопиÑане ÑÑÑаниÑе",
"broken-file-category": "СÑÑаниÑе Ñ Ð½ÐµÐ¸ÑпÑавним везама до даÑоÑека",
"about": "Рнама",
- "article": "СÑÑаниÑа Ñа ÑадÑжаÑем",
+ "article": "Чланак",
"newwindow": "(оÑваÑа Ñе Ñ Ð½Ð¾Ð²Ð¾Ð¼ пÑозоÑÑ)",
"cancel": "ÐÑкажи",
"moredotdotdot": "ÐиÑеâ¦",
@@ -189,9 +189,10 @@
"navigation-heading": "ÐавигаÑиони мени",
"errorpagetitle": "ÐÑеÑка",
"returnto": "Ðазад на $1.",
- "tagline": "Ðз {{SITENAME}}",
+ "tagline": "ÐзвоÑ: {{SITENAME}}",
"help": "ÐомоÑ",
"search": "ÐÑеÑÑажи",
+ "search-ignored-headings": " # \n# ÐаÑлови коÑи Ñе биÑи занемаÑени пÑи пÑеÑÑази.\n# Ðзмене ÑÑ Ð²Ð¸Ð´Ñиве одмаÑ
након ÑÑо Ñе ÑÑÑаниÑа Ñа наÑловом попиÑе.\n# ÐожеÑе изнÑдиÑи поновно попиÑиваÑе âнÑлÑомâ изменом.\n# СинÑакÑа Ñе ÑледеÑа:\n# * Сваки Ñед коÑи запоÑиÑе знаком â#â Ñе коменÑаÑ.\n# * Сваки не пÑазни Ñед Ñе ÑаÑан наÑлов коÑи Ñе биÑи занемаÑен, Ñ Ñим да Ñе ÑазликÑÑÑ Ð¼Ð°Ð»Ð° и велика Ñлова и Ñве оÑÑало\nРеÑеÑенÑе\nСпоÑаÑÑе везе\nТакоÑе погледаÑÑе\n #
",
"searchbutton": "ÐÑеÑÑажи",
"go": "Ðди",
"searcharticle": "Ðди",
@@ -209,7 +210,7 @@
"create": "ÐапÑави",
"create-local": "ÐÐ¾Ð´Ð°Ñ Ð»Ð¾ÐºÐ°Ð»Ð½Ð¸ опиÑ",
"delete": "ÐбÑиÑи",
- "undelete_short": "ÐÑаÑи {{PLURAL:$1|1=ÑÐµÐ´Ð½Ñ Ð¾Ð±ÑиÑÐ°Ð½Ñ Ð¸Ð·Ð¼ÐµÐ½Ñ|$1 обÑиÑане измене|$1 обÑиÑаниÑ
измена}}",
+ "undelete_short": "ÐÑаÑи {{PLURAL:$1|обÑиÑÐ°Ð½Ñ Ð¸Ð·Ð¼ÐµÐ½Ñ|$1 обÑиÑане измене|$1 обÑиÑаниÑ
измена}}",
"viewdeleted_short": "ÐÐ¾Ð³Ð»ÐµÐ´Ð°Ñ {{PLURAL:$1|обÑиÑÐ°Ð½Ñ Ð¸Ð·Ð¼ÐµÐ½Ñ|$1 обÑиÑане измене|$1 обÑиÑаниÑ
измена}}",
"protect": "ÐаÑÑиÑи",
"protect_change": "пÑомени",
@@ -230,12 +231,12 @@
"viewhelppage": "ÐÐ¾Ð³Ð»ÐµÐ´Ð°Ñ ÑÑÑаниÑÑ Ð¿Ð¾Ð¼Ð¾Ñи",
"categorypage": "ÐÐ¾Ð³Ð»ÐµÐ´Ð°Ñ ÑÑÑаниÑÑ ÐºÐ°ÑегоÑиÑе",
"viewtalkpage": "ÐÐ¾Ð³Ð»ÐµÐ´Ð°Ñ ÑазговоÑ",
- "otherlanguages": "Ðа дÑÑгим ÑезиÑима",
+ "otherlanguages": "ÐÑÑги ÑезиÑи",
"redirectedfrom": "(пÑеÑÑмеÑено Ñа $1)",
"redirectpagesub": "ÐÑеÑÑмеÑеÑе",
"redirectto": "ÐÑеÑÑмеÑава на:",
"lastmodifiedat": "Ðва ÑÑÑаниÑа Ñе поÑледÑи пÑÑ ÑÑеÑена на даÑÑм $1 Ñ $2 Ñ.",
- "viewcount": "Ðва ÑÑÑаниÑа Ñе пÑегледана {{PLURAL:$1|ÑеданпÑÑ|$1 пÑÑа|$1 пÑÑа}}.",
+ "viewcount": "ÐÐ²Ð¾Ñ ÑÑÑаниÑи Ñе пÑиÑÑÑпÑено {{PLURAL:$1|ÑеданпÑÑ|$1 пÑÑа}}.",
"protectedpage": "ÐаÑÑиÑена ÑÑÑаниÑа",
"jumpto": "Ðди на:",
"jumptonavigation": "навигаÑиÑÑ",
@@ -252,7 +253,7 @@
"copyright": "СадÑÐ¶Ð°Ñ Ñе доÑÑÑпан под лиÑенÑом $1 оÑим ако Ñе дÑÑгаÑиÑе наведено.",
"copyrightpage": "{{ns:project}}:ÐÑÑоÑÑка пÑава",
"currentevents": "ÐкÑÑелноÑÑи",
- "currentevents-url": "Project:ÐкÑÑелноÑÑи",
+ "currentevents-url": "Project:ÐовоÑÑи",
"disclaimers": "ÐдÑиÑаÑе одговоÑноÑÑи",
"disclaimerpage": "Project:ÐдÑиÑаÑе одговоÑноÑÑи",
"edithelp": "ÐÐ¾Ð¼Ð¾Ñ Ð¿Ñи ÑÑеÑиваÑÑ",
@@ -261,25 +262,25 @@
"mainpage-description": "Ðлавна ÑÑÑана",
"policy-url": "Project:ÐÑавила",
"portal": "ÐоÑÑал заÑедниÑе",
- "portal-url": "Project:РадиониÑа",
+ "portal-url": "Project:ÐоÑÑал заÑедниÑе",
"privacy": "ÐолиÑика пÑиваÑноÑÑи",
"privacypage": "Project:ÐолиÑика пÑиваÑноÑÑи",
"badaccess": "ÐÑеÑке Ñ Ð¾Ð²Ð»Ð°ÑÑеÑима",
- "badaccess-group0": "ÐиÑе вам дозвоÑено да извÑÑиÑе заÑ
ÑÐµÐ²Ð°Ð½Ñ ÑадÑÑ.",
+ "badaccess-group0": "ÐиÑе Ðам дозвоÑено да извÑÑиÑе заÑ
ÑÐµÐ²Ð°Ð½Ñ ÑадÑÑ.",
"badaccess-groups": "РадÑа коÑÑ ÑÑе заÑ
Ñевали Ñе огÑаниÑена Ñамо коÑиÑниÑима Ñ {{PLURAL:$2|ÑледеÑÐ¾Ñ Ð³ÑÑпи|ÑледеÑим гÑÑпама}}: $1.",
- "versionrequired": "ÐоÑÑебно Ñе издаÑе $1 ÐедиÑавикиÑа",
- "versionrequiredtext": "ÐоÑÑебно Ñе издаÑе $1 ÐедиÑавикиÑа да биÑÑе коÑиÑÑили Ð¾Ð²Ñ ÑÑÑаниÑÑ.\nÐогледаÑÑе ÑÑÑаниÑÑ Ð·Ð° [[Special:Version|издаÑе]].",
+ "versionrequired": "ÐоÑÑебно Ñе $1 издаÑе ÐедиÑавикиÑа",
+ "versionrequiredtext": "ÐоÑÑебно Ñе $1 издаÑе ÐедиÑавикиÑа да биÑÑе коÑиÑÑили Ð¾Ð²Ñ ÑÑÑаниÑÑ.\nÐогледаÑÑе ÑÑÑаниÑÑ Ð·Ð° [[Special:Version|издаÑе]].",
"ok": "У ÑедÑ",
"pagetitle": "$1 â {{SITENAME}}",
"pagetitle-view-mainpage": "{{SITENAME}}",
"backlinksubtitle": "â $1",
"retrievedfrom": "ÐÑеÑзеÑо из â$1â",
"youhavenewmessages": "ÐмаÑе $1 ($2).",
- "youhavenewmessagesfromusers": "ÐмаÑе $1 од {{PLURAL:$3|дÑÑгог коÑиÑника|$3 коÑиÑника|$3 коÑиÑника}} ($2).",
+ "youhavenewmessagesfromusers": "{{PLURAL:$4|ÐмаÑе}} $1 од {{PLURAL:$3|дÑÑгог коÑиÑника|$3 коÑиÑника}} ($2).",
"youhavenewmessagesmanyusers": "ÐмаÑе $1 од много коÑиÑника ($2).",
- "newmessageslinkplural": "{{PLURAL:$1|Ð½Ð¾Ð²Ñ Ð¿Ð¾ÑÑкÑ|999=нове поÑÑке}}",
- "newmessagesdifflinkplural": "{{PLURAL:$1|поÑледÑа измена|999=поÑледÑе измене}}",
- "youhavenewmessagesmulti": "ÐмаÑе новиÑ
поÑÑка на $1",
+ "newmessageslinkplural": "{{PLURAL:$1|Ð½Ð¾Ð²Ñ Ð¿Ð¾ÑÑкÑ|нове поÑÑке|новиÑ
поÑÑка}}",
+ "newmessagesdifflinkplural": "{{PLURAL:$1|поÑледÑа измена|поÑледÑе измене|поÑледÑиÑ
измена}}",
+ "youhavenewmessagesmulti": "ÐмаÑе нове поÑÑке на $1",
"editsection": "ÑÑеди",
"editold": "ÑÑеди",
"viewsourceold": "извоÑни код",
@@ -294,9 +295,9 @@
"confirmable-confirm": "Ðа ли {{GENDER:$1|ÑÑе}} ÑигÑÑни?",
"confirmable-yes": "Ðа",
"confirmable-no": "Ðе",
- "thisisdeleted": "ÐогледаÑи или вÑаÑиÑи $1?",
- "viewdeleted": "ÐогледаÑи $1?",
- "restorelink": "{{PLURAL:$1|1=обÑиÑÐ°Ð½Ñ Ð¸Ð·Ð¼ÐµÐ½Ñ|$1 обÑиÑане измене|$1 обÑиÑаниÑ
измена}}",
+ "thisisdeleted": "ÐÐ¾Ð³Ð»ÐµÐ´Ð°Ñ Ð¸Ð»Ð¸ вÑаÑи $1?",
+ "viewdeleted": "ÐÐ¾Ð³Ð»ÐµÐ´Ð°Ñ $1?",
+ "restorelink": "{{PLURAL:$1|обÑиÑÐ°Ð½Ñ Ð¸Ð·Ð¼ÐµÐ½Ñ|$1 обÑиÑане измене|$1 обÑиÑаниÑ
измена}}",
"feedlinks": "Ðовод:",
"feed-invalid": "ÐеиÑпÑавна вÑÑÑа довода.",
"feed-unavailable": "Ðоводи ниÑÑ Ð´Ð¾ÑÑÑпни",
@@ -331,7 +332,7 @@
"databaseerror-query": "УпиÑ: $1",
"databaseerror-function": "ФÑнкÑиÑа: $1",
"databaseerror-error": "ÐÑеÑка: $1",
- "laggedslavemode": "УпозоÑеÑе: ÑÑÑаниÑа Ñе можда заÑÑаÑела.",
+ "laggedslavemode": "УпозоÑеÑе: могÑÑе Ñе да ÑÑÑаниÑа ниÑе ажÑÑиÑана.",
"readonly": "Ðаза подаÑака Ñе закÑÑÑана",
"enterlockreason": "УнеÑиÑе Ñазлог за закÑÑÑаваÑе, ÑкÑÑÑÑÑÑÑи и вÑеме оÑкÑÑÑаваÑа",
"readonlytext": "Ðаза подаÑака Ñе ÑÑенÑÑно закÑÑÑана, ÑÑо знаÑи да Ñе ниÑе могÑÑе меÑаÑи.\n\nСиÑÑемÑки админиÑÑÑаÑÐ¾Ñ Ñе навео ÑледеÑе обÑаÑÑеÑе: $1",
@@ -340,17 +341,17 @@
"missingarticle-diff": "(Ñазлика: $1, $2)",
"readonly_lag": "Ðаза подаÑака Ñе аÑÑомаÑÑки закÑÑÑана да би Ñе ÑекÑндаÑни ÑеÑвеÑи базе подаÑака ÑÑкладили Ñ Ð³Ð»Ð°Ð²Ð½Ð¸Ð¼.",
"internalerror": "УнÑÑÑаÑÑа гÑеÑка",
- "internalerror_info": "УнÑÑÑаÑÑа гÑеÑка: $1",
+ "internalerror_info": "ÐнÑеÑна гÑеÑка: $1",
"internalerror-fatal-exception": "ФаÑална гÑеÑка Ñипа â$1â",
- "filecopyerror": "Ðе Ð¼Ð¾Ð³Ñ Ð´Ð° Ñмножим даÑоÑÐµÐºÑ â$1â Ñ â$2â.",
+ "filecopyerror": "Ðе Ð¼Ð¾Ð³Ñ Ð´Ð° копиÑам даÑоÑÐµÐºÑ â$1â Ñ â$2â.",
"filerenameerror": "Ðе Ð¼Ð¾Ð³Ñ Ð´Ð° пÑеименÑÑем даÑоÑÐµÐºÑ â$1â Ñ â$2â.",
"filedeleteerror": "Ðе Ð¼Ð¾Ð³Ñ Ð´Ð° обÑиÑем даÑоÑÐµÐºÑ â$1â.",
- "directorycreateerror": "Ðе Ð¼Ð¾Ð³Ñ Ð´Ð° напÑавим ÑаÑÑÐ¸ÐºÐ»Ñ â$1â.",
+ "directorycreateerror": "Ðе Ð¼Ð¾Ð³Ñ Ð´Ð° напÑавим диÑекÑоÑиÑÑм â$1â.",
"directoryreadonlyerror": "ÐиÑекÑоÑиÑÑм â$1â Ñе Ñамо за ÑиÑаÑе.",
"directorynotreadableerror": "ÐиÑекÑоÑиÑÑм â$1â ниÑе ÑиÑÑив.",
"filenotfound": "Ðе Ð¼Ð¾Ð³Ñ Ð´Ð° пÑонаÑем даÑоÑÐµÐºÑ â$1â.",
"unexpected": "ÐеоÑекивана вÑедноÑÑ: â$1â=â$2â.",
- "formerror": "ÐÑеÑка: не Ð¼Ð¾Ð³Ñ Ð´Ð° поÑаÑем обÑазаÑ",
+ "formerror": "ÐÑеÑка: не Ð¼Ð¾Ð³Ñ Ð´Ð° поÑаÑем обÑазаÑ.",
"badarticleerror": "Ðва ÑадÑа Ñе не може извÑÑиÑи на Ð¾Ð²Ð¾Ñ ÑÑÑаниÑи.",
"cannotdelete": "Ðе Ð¼Ð¾Ð³Ñ Ð´Ð° обÑиÑем ÑÑÑаниÑÑ Ð¸Ð»Ð¸ даÑоÑÐµÐºÑ â$1â.\nÐеÑоваÑно ÑÑ Ñе неко дÑÑги обÑиÑао.",
"cannotdelete-title": "Ðе Ð¼Ð¾Ð³Ñ Ð´Ð° обÑиÑем ÑÑÑаниÑÑ â$1â",
@@ -422,6 +423,7 @@
"cannotloginnow-title": "ÐÑиÑава ÑÑенÑÑно ниÑе могÑÑа",
"cannotloginnow-text": "ÐÑиÑава ниÑе могÑÑа када Ñе коÑиÑÑи $1.",
"cannotcreateaccount-title": "ÐÑваÑаÑе налога ниÑе могÑÑе",
+ "cannotcreateaccount-text": "ÐиÑекÑно пÑавÑеÑе налога ниÑе омогÑÑено на овом викиÑÑ.",
"yourdomainname": "Ðомен:",
"password-change-forbidden": "Ðе можеÑе да пÑомениÑе Ð»Ð¾Ð·Ð¸Ð½ÐºÑ Ð½Ð° овом викиÑÑ.",
"externaldberror": "ÐоÑло Ñе до гÑеÑке пÑи пÑепознаваÑÑ Ð±Ð°Ð·Ðµ подаÑака или немаÑе овлаÑÑеÑа да ажÑÑиÑаÑе ÑÐ²Ð¾Ñ ÑпоÑни налог.",
@@ -444,9 +446,11 @@
"createacct-email-ph": "УнеÑиÑе ÐаÑÑ Ð¸Ð¼ÐµÑл адÑеÑÑ",
"createacct-another-email-ph": "УнеÑиÑе имеÑл адÑеÑÑ",
"createaccountmail": "ÐоÑиÑÑиÑе пÑивÑеменÑ, ÑлÑÑаÑно ÑÑвоÑÐµÐ½Ñ Ð»Ð¾Ð·Ð¸Ð½ÐºÑ Ð¸ поÑаÑиÑе на Ð½Ð°Ð²ÐµÐ´ÐµÐ½Ñ Ð¸Ð¼ÐµÑл адÑеÑÑ",
+ "createaccountmail-help": "Ðоже Ñе коÑиÑÑиÑи да Ñе некоме напÑави налог без ÑазнаÑа лозинке.",
"createacct-realname": "ÐÑаво име (необавезно)",
"createacct-reason": "Разлог",
"createacct-reason-ph": "ÐаÑÑо пÑавиÑе ÑÐ¾Ñ Ñедан налог?",
+ "createacct-reason-help": "ÐоÑÑка коÑа Ñе пÑиказÑÑе Ñ Ð´Ð½ÐµÐ²Ð½Ð¸ÐºÑ ÑÑваÑаÑа коÑиÑниÑкиÑ
налога",
"createacct-submit": "ÐÑвоÑи налог",
"createacct-another-submit": "ÐÑвоÑи налог",
"createacct-continue-submit": "ÐаÑÑавиÑе оÑваÑаÑе налога",
@@ -536,6 +540,7 @@
"botpasswords-label-cancel": "ÐÑкажи",
"botpasswords-label-delete": "ÐбÑиÑи",
"botpasswords-label-resetpassword": "РеÑеÑÑÑ Ð»Ð¾Ð·Ð¸Ð½ÐºÑ",
+ "botpasswords-label-grants": "ÐÑименÑиве дозволе:",
"botpasswords-label-grants-column": "ÐдобÑено",
"botpasswords-bad-appid": "â$1â ниÑе иÑпÑаван назив боÑа.",
"botpasswords-insert-failed": "ÐеÑÑпеÑно додаваÑе боÑа \"$1\". Ðа ли Ñе Ð²ÐµÑ Ð´Ð¾Ð´Ð°Ñ?",
@@ -547,6 +552,8 @@
"botpasswords-deleted-title": "ÐбÑиÑана лозинка боÑа",
"botpasswords-deleted-body": "Ðозинка за боÑа â$1â коÑиÑника â$2â Ñе обÑиÑана.",
"botpasswords-no-provider": "BotPasswordsSessionProvider ниÑе доÑÑÑпан.",
+ "botpasswords-restriction-failed": "Ðе можеÑе Ñе пÑиÑавиÑи због огÑаниÑеÑа лозинки за боÑове.",
+ "botpasswords-not-exist": "ÐоÑиÑник â$1â нема Ð»Ð¾Ð·Ð¸Ð½ÐºÑ Ð±Ð¾Ñа â$2â.",
"resetpass_forbidden": "Ðозинка не може биÑи пÑомеÑена",
"resetpass_forbidden-reason": "Ðозинке ниÑе могÑÑе пÑомениÑи: $1",
"resetpass-no-info": "ÐоÑаÑе биÑи пÑиÑавÑени да биÑÑе пÑиÑÑÑпили Ð¾Ð²Ð¾Ñ ÑÑÑаниÑи.",
@@ -664,7 +671,7 @@
"userjspreview": "Ðво Ñе Ñамо пÑеглед ÑаваÑкÑипÑа.\nСÑÑаниÑа ÑÐ¾Ñ Ð½Ð¸Ñе ÑаÑÑвана!",
"sitecsspreview": "Ðво Ñе Ñамо пÑеглед CSS-а.\nСÑÑаниÑа ÑÐ¾Ñ Ð½Ð¸Ñе ÑаÑÑвана!",
"sitejspreview": "Ðво Ñе Ñамо пÑеглед ÑаваÑкÑипÑа.\nСÑÑаниÑа ÑÐ¾Ñ Ð½Ð¸Ñе ÑаÑÑвана!",
- "userinvalidcssjstitle": "УпозоÑеÑе: не поÑÑоÑи Ñема â$1â.\nÐÑилагоÑене ÑÑÑаниÑе CSS и ÑаваÑкÑÐ¸Ð¿Ñ Ð¿Ð¾ÑиÑÑ Ð¼Ð°Ð»Ð¸Ð¼ Ñловом, нпÑ. {{ns:user}}:Foo/vector.css, а не {{ns:user}}:Foo/Vector.css.",
+ "userinvalidconfigtitle": "УпозоÑеÑе: не поÑÑоÑи Ñема â$1â.\nÐÑилагоÑене ÑÑÑаниÑе CSS и ÑаваÑкÑÐ¸Ð¿Ñ Ð¿Ð¾ÑиÑÑ Ð¼Ð°Ð»Ð¸Ð¼ Ñловом, нпÑ. {{ns:user}}:Foo/vector.css, а не {{ns:user}}:Foo/Vector.css.",
"updated": "(ажÑÑиÑано)",
"note": "Ðапомена:",
"previewnote": "Ðе забоÑавиÑе да Ñе ово Ñамо пÑеÑпÑеглед.\nÐаÑе измене ÑÐ¾Ñ Ð½Ð¸ÑÑ ÑаÑÑване!",
@@ -819,7 +826,7 @@
"revdelete-no-file": "ТÑажена даÑоÑека не поÑÑоÑи.",
"revdelete-show-file-confirm": "ÐелиÑе ли да видиÑе обÑиÑÐ°Ð½Ñ Ð¸Ð·Ð¼ÐµÐ½Ñ Ð´Ð°ÑоÑеке â<$1 $2=\"$3\">
Ñ Ð¿Ð¾ÑÑавÑÐµÐ½Ð¾Ñ SVG даÑоÑеÑи.",
"uploaded-animate-svg": "ÐÑонаÑена âanimateâ ознака коÑа можда меÑа href коÑиÑÑеÑи Ñе âfromâ аÑÑибÑÑом <$1 $2=\"$3\">
Ñ Ð¿Ð¾ÑÑавÑÐµÐ½Ð¾Ñ SVG даÑоÑеÑи.",
"uploadscriptednamespace": "Ðва SVG даÑоÑека ÑадÑжи погÑеÑан именÑки пÑоÑÑÐ¾Ñ âÐÑеÑÑÑани ÑноÑи ÑÑ Ð²ÐµÑ ÑеÑени.",
"double-redirect-fixed-move": "[[$1]] Ñе пÑемеÑÑен.\nÐÑÑомаÑÑки Ñе ажÑÑиÑано и Ñада пÑеÑÑмеÑава на [[$2]].",
@@ -1854,7 +1890,7 @@
"listusers": "СпиÑак коÑиÑника",
"listusers-editsonly": "ÐÑикажи Ñамо коÑиÑнике коÑи ÑÑ ÑÑеÑивали",
"listusers-creationsort": "ÐоÑеÑÐ°Ñ Ð¿Ð¾ даÑÑÐ¼Ñ ÑÑваÑаÑа",
- "listusers-desc": "СоÑÑиÑÐ°Ñ Ñ Ð¾Ð¿Ð°Ð´Ð°ÑÑÑем ÑедоÑледÑ",
+ "listusers-desc": "ÐоÑеÑÐ°Ñ Ñ Ð¾Ð¿Ð°Ð´Ð°ÑÑÑем ÑедоÑледÑ",
"usereditcount": "$1 {{PLURAL:$1|измена|измене|измена}}",
"usercreated": "{{GENDER:$3|Ñе напÑавио|Ñе напÑавила|Ñе напÑавио}} дана $1 Ñ $2",
"newpages": "Ðове ÑÑÑаниÑе",
@@ -1902,7 +1938,12 @@
"apisandbox-sending-request": "СлаÑе API заÑ
Ñева...",
"apisandbox-loading-results": "ÐÑиÑем API ÑезÑлÑаÑа...",
"apisandbox-results-error": "ÐоÑло Ñе до гÑеÑке пÑиликом ÑÑиÑаваÑа ÑезÑлÑаÑа API ÑпиÑа: $1.",
+ "apisandbox-request-selectformat-label": "ÐÑикажи ÑаÑ
Ñеване подаÑке као:",
"apisandbox-request-url-label": "ÐдÑеÑа заÑ
Ñева:",
+ "apisandbox-request-time": "ÐÑеме за извÑÑаваÑе заÑ
ÑÑева: {{PLURAL:$1|$1 милиÑекÑнда|$1 милиÑекÑнде|$1 милиÑекÑнди}}",
+ "apisandbox-results-fixtoken": "ÐÑпÑави жеÑон и поÑаÑи поново",
+ "apisandbox-alert-page": "ÐоÑа на ÑÑÑаниÑи ÑÑ Ð½ÐµÐ¸ÑпÑавна.",
+ "apisandbox-alert-field": "ÐÑедноÑÑ Ð¾Ð²Ð¾Ð³ поÑа Ñе неиÑпÑавна.",
"apisandbox-continue": "ÐаÑÑави",
"apisandbox-continue-clear": "ÐÑиÑÑи",
"apisandbox-multivalue-all-namespaces": "$1 (Ñви именÑки пÑоÑÑоÑи)",
@@ -1913,6 +1954,8 @@
"booksources-search": "ÐÑеÑÑажи",
"booksources-text": "ÐÑпод Ñе налази ÑпиÑак веза ка ÑаÑÑовима коÑи Ñе баве пÑодаÑом новиÑ
и половниÑ
кÑига, а коÑи би могли имаÑи додаÑне подаÑке о кÑигама коÑе ÑÑажиÑе:",
"booksources-invalid-isbn": "Ðаведени ISBN бÑÐ¾Ñ Ð½Ð¸Ñе иÑпÑаван. ÐÑовеÑиÑе да ниÑе доÑло до гÑеÑке пÑи ÑмножаваÑÑ Ð¸Ð· пÑвобиÑног извоÑа.",
+ "magiclink-tracking-rfc": "СÑÑаниÑе Ñ Ð¼Ð°Ð³Ð¸Ñним RFC везама",
+ "magiclink-tracking-pmid": "СÑÑаниÑе Ñ Ð¼Ð°Ð³Ð¸Ñним PMID везама",
"magiclink-tracking-isbn": "СÑÑаниÑе Ñа ISBN магиÑним везама",
"specialloguserlabel": "ÐзвÑÑилаÑ:",
"speciallogtitlelabel": "Ð¦Ð¸Ñ (наÑлов или {{ns:user}}:коÑиÑниÑко име):",
@@ -1950,7 +1993,7 @@
"deletedcontributions": "ÐбÑиÑани коÑиÑниÑки допÑиноÑи",
"deletedcontributions-title": "ÐбÑиÑани коÑиÑниÑки допÑиноÑи",
"sp-deletedcontributions-contribs": "допÑиноÑи",
- "linksearch": "ÐÑеÑÑага ÑпоÑниÑ
веза",
+ "linksearch": "ÐÑеÑÑажи ÑпоÑаÑÑе везе",
"linksearch-pat": "ÐбÑÐ°Ð·Ð°Ñ Ð¿ÑеÑÑаге:",
"linksearch-ns": "ÐменÑки пÑоÑÑоÑ:",
"linksearch-ok": "ÐÑеÑÑажи",
@@ -1965,6 +2008,8 @@
"activeusers-intro": "Ðво Ñе ÑпиÑак коÑиÑника коÑи ÑÑ Ð±Ð¸Ð»Ð¸ акÑивни {{PLURAL:$1|1=пÑеÑÑ
одни дан|Ñ Ð¿Ð¾ÑледÑа $1 дана|Ñ Ð¿Ð¾ÑледÑиÑ
$1 дана}}.",
"activeusers-count": "$1 {{PLURAL:$1|ÑадÑа|ÑадÑе|ÑадÑи}} {{PLURAL:$3|пÑеÑÑ
одни дан|Ñ Ð¿Ð¾ÑледÑа $3 дана|Ñ Ð¿Ð¾ÑледÑиÑ
$3 дана}}",
"activeusers-from": "ÐÑикажи коÑиÑнике поÑев од:",
+ "activeusers-groups": "ÐÑикажи коÑиÑнике коÑи ÑÑ Ñланови гÑÑпа:",
+ "activeusers-excludegroups": "ÐзÑзми коÑиÑнике коÑи ÑÑ Ñланови гÑÑпа:",
"activeusers-noresult": "ÐоÑиÑник ниÑе пÑонаÑен.",
"activeusers-submit": "ÐÑикажи акÑивне коÑиÑнике",
"listgrouprights": "ÐÑава коÑиÑниÑкиÑ
гÑÑпа",
@@ -1988,11 +2033,14 @@
"listgrouprights-namespaceprotection-namespace": "ÐменÑки пÑоÑÑоÑ",
"listgrouprights-namespaceprotection-restrictedto": "ÐÑава поÑÑебна за ÑÑеÑиваÑе",
"listgrants": "Ðозволе",
+ "listgrants-grant": "Ðозвола",
"listgrants-rights": "ÐÑава",
"trackingcategories": "ÐедиÑавики каÑегоÑиÑе",
"trackingcategories-summary": "Ðва поÑебна ÑÑÑаниÑа Ñе ÑпиÑак каÑегоÑиÑа коÑе ÑÑ Ð´ÐµÐ¾ ÐедиÑавикиÑа, оне Ñе аÑÑомаÑÑки ажÑÑиÑаÑÑ Ð¸ ÑиÑ
ови називи Ñе Ð¼Ð¾Ð³Ñ Ð¼ÐµÑаÑи ÑÑеÑиваÑем ÑиÑÑемÑкиÑ
поÑÑка Ñ Ð¸Ð¼ÐµÐ½Ñком пÑоÑÑоÑÑ {{ns:8}}.",
+ "trackingcategories-msg": "ÐÑаÑеÑе каÑегоÑиÑе",
"trackingcategories-name": "Ðме поÑÑке",
"trackingcategories-desc": "ÐоÑе ÑÑÑаниÑе Ñе налазе Ñ ÐºÐ°ÑегоÑиÑи",
+ "restricted-displaytitle-ignored": "СÑÑаниÑе Ñа занемаÑеним наÑловима за пÑиказ",
"noindex-category-desc": "СÑÑаниÑе коÑе Ñ Ñеби имаÑÑ Ð¼Ð°Ð³Ð¸ÑÐ½Ñ ÑеÑ
.",
"index-category-desc": "СÑÑаниÑе коÑе Ñ Ñеби имаÑÑ Ð¼Ð°Ð³Ð¸ÑÐ½Ñ ÑеÑ
и Ñамим Ñим ÑÑ Ð¸Ð½Ð´ÐµÐºÑиÑане од ÑÑÑане ÑобоÑа.",
"broken-file-category-desc": "СÑÑаниÑе коÑе имаÑÑ Ð²ÐµÐ·Ðµ до непоÑÑоÑеÑиÑ
даÑоÑека.",
@@ -2117,14 +2165,15 @@
"rollbacklinkcount": "вÑаÑи $1 {{PLURAL:$1|изменÑ|измене|измена}}",
"rollbacklinkcount-morethan": "вÑаÑи виÑе од $1 {{PLURAL:$1|измене|измене|измена}}",
"rollbackfailed": "ÐеÑÑпеÑно вÑаÑаÑе",
+ "rollback-missingrevision": "Ðе Ð¼Ð¾Ð³Ñ ÑÑиÑаÑи подаÑке о измени.",
"cantrollback": "Ðе Ð¼Ð¾Ð³Ñ Ð´Ð° вÑаÑим изменÑ.\nÐоÑледÑи аÑÑÐ¾Ñ Ñе ÑÑедно и Ñедини.",
"alreadyrolled": "ÐÑаÑаÑе поÑледÑе измене ÑÑÑаниÑе [[:$1]] од ÑÑÑане {{GENDER:$2|коÑиÑника|коÑиÑниÑе|коÑиÑника}} [[User:$2|$2]] ([[User talk:$2|ÑазговоÑ]]{{int:pipe-separator}}[[Special:Contributions/$2|{{int:contribslink}}]]) ниÑе ÑÑпело; неко дÑÑги Ñе Ñ Ð¼ÐµÑÑвÑÐµÐ¼ÐµÐ½Ñ Ð¸Ð·Ð¼ÐµÐ½Ð¸Ð¾ или вÑаÑио ÑÑÑаниÑÑ.\n\nÐоÑледÑÑ Ð¸Ð·Ð¼ÐµÐ½Ñ Ñе {{GENDER:$3|напÑавио|напÑавила|напÑавио}} [[User:$3|$3]] ([[User talk:$3|ÑазговоÑ]]{{int:pipe-separator}}[[Special:Contributions/$3|{{int:contribslink}}]]).",
"editcomment": "ÐÐ¿Ð¸Ñ Ð¸Ð·Ð¼ÐµÐ½Ðµ: $1.",
"revertpage": "ÐÑаÑене измене [[Special:Contribs/$2|$2]] ([[User talk:$2|ÑазговоÑ]]) на поÑледÑÑ Ð¸Ð·Ð¼ÐµÐ½Ñ ÐºÐ¾ÑиÑника [[User:$1|$1]]",
- "revertpage-nouser": "ÐÑаÑене ÑÑ Ð¸Ð·Ð¼ÐµÐ½Ðµ ÑкÑивеног коÑиÑника на поÑледÑÑ Ð¸Ð·Ð¼ÐµÐ½Ñ {{GENDER:$1|коÑиÑника|коÑиÑниÑе}} [[User:$1|$1]]",
- "rollback-success": "ÐÑаÑене ÑÑ Ð¸Ð·Ð¼ÐµÐ½Ðµ {{GENDER:$1|коÑиÑника|коÑиÑниÑе}} {{GENDER:$3|$1}}\nна поÑледÑÑ Ð¸Ð·Ð¼ÐµÐ½Ñ {{GENDER:$2|коÑиÑника|коÑиÑниÑе}} {{GENDER:$4|$2}}.",
+ "revertpage-nouser": "Ðзмене ÑкÑивеног коÑиÑника ÑÑ Ð²ÑаÑене на поÑледÑÑ Ð¸Ð·Ð¼ÐµÐ½Ñ {{GENDER:$1|коÑиÑника|коÑиÑниÑе}} [[User:$1|$1]]",
+ "rollback-success": "Ðзмене {{GENDER:$1|коÑиÑника|коÑиÑниÑе}} {{GENDER:$3|$1}} ÑÑ Ð²ÑаÑене на поÑледÑÑ Ð¸Ð·Ð¼ÐµÐ½Ñ {{GENDER:$2|коÑиÑника|коÑиÑниÑе}} {{GENDER:$4|$2}}.",
"sessionfailure-title": "СеÑиÑа Ñе оконÑана",
- "sessionfailure": "Ðзгледа да поÑÑоÑи пÑоблем Ñ Ð²Ð°Ñом ÑеÑиÑом;\nова ÑадÑа Ñе оÑказана да би Ñе избегла злоÑпоÑÑеба.\nÐÑаÑиÑе Ñе на пÑеÑÑ
Ð¾Ð´Ð½Ñ ÑÑÑаниÑÑ, поново Ñе ÑÑиÑаÑÑе и покÑÑаÑÑе поново.",
+ "sessionfailure": "Ðзгледа да поÑÑоÑи пÑоблем Ñ Ð²Ð°Ñом ÑеÑиÑом;\nова ÑадÑа Ñе оÑказана да би Ñе избегла злоÑпоÑÑеба.\nÐолимо, поново поÑаÑиÑе обÑазаÑ.",
"changecontentmodel": "ÐÑомени модел ÑадÑжаÑа ÑÑÑаниÑе",
"changecontentmodel-legend": "ÐÑомени модел ÑадÑжаÑа",
"changecontentmodel-title-label": "ÐаÑлов ÑÑÑаниÑе",
@@ -2135,6 +2184,7 @@
"changecontentmodel-success-text": "Ðодел ÑадÑжаÑа ÑÑÑаниÑе [[:$1]] Ñе пÑомеÑен.",
"changecontentmodel-cannot-convert": "Ðодел ÑадÑжаÑа ÑÑÑаниÑе [[:$1]] Ñе не може пÑеÑвоÑиÑи Ñ Ð²ÑÑÑÑ $2.",
"changecontentmodel-nodirectediting": "Ðодел ÑадÑжаÑа $1 не подÑжава изÑавно ÑÑеÑиваÑе",
+ "changecontentmodel-emptymodels-title": "Ðема доÑÑÑпниÑ
модела ÑадÑжаÑа",
"log-name-contentmodel": "Ðневник пÑомене модела ÑадÑжаÑа",
"log-description-contentmodel": "Ðва ÑÑÑаниÑа пÑиказÑÑе измене Ñ Ð¼Ð¾Ð´ÐµÐ»Ð¸Ð¼Ð° ÑадÑжаÑа ÑÑÑаниÑа и ÑÑÑаниÑе коÑе ÑÑ Ð½Ð°Ð¿ÑавÑене Ñа моделом ÑадÑжаÑа коÑи Ñе ÑазликÑÑе од подÑазÑмеваног.",
"logentry-contentmodel-change": "$1 Ñе {{GENDER:$2|пÑоменио|пÑоменила}} модел ÑадÑжаÑа ÑÑÑаниÑе $3 из â$4â Ñ â$5â",
@@ -2380,6 +2430,7 @@
"block-log-flags-hiddenname": "коÑиÑниÑко име Ñе ÑакÑивено",
"range_block_disabled": "ÐдминиÑÑÑаÑоÑÑка могÑÑноÑÑ Ð·Ð° блокиÑаÑе ÑаÑпона ÐРадÑеÑа Ñе онемогÑÑена.",
"ipb_expiry_invalid": "ÐÑеме иÑÑека Ñе неиÑпÑавно.",
+ "ipb_expiry_old": "ÐÑеме иÑÑека Ñе Ñ Ð¿ÑоÑлоÑÑи.",
"ipb_expiry_temp": "СакÑивене блокаде коÑиÑника моÑаÑÑ Ð±Ð¸Ñи ÑÑаÑне.",
"ipb_hide_invalid": "Ðе Ð¼Ð¾Ð³Ñ Ð´Ð° поÑиÑнем Ð¾Ð²Ð°Ñ Ð½Ð°Ð»Ð¾Ð³; има виÑе од {{PLURAL:$1|Ñедне измене|$1 измена}}.",
"ipb_already_blocked": "â$1â Ñе Ð²ÐµÑ Ð±Ð»Ð¾ÐºÐ¸Ñан.",
@@ -2390,6 +2441,7 @@
"ipb_blocked_as_range": "ÐÑеÑка: IP адÑеÑа $1 ниÑе диÑекÑно блокиÑана и не може да Ñе деблокиÑа.\nÐна Ñе блокиÑана као део блокаде $2, коÑа може биÑи деблокиÑана.",
"ip_range_invalid": "ÐеиÑпÑаван ÑаÑпон IP адÑеÑа.",
"ip_range_toolarge": "ÐпÑежна блокиÑаÑа веÑа од /$1 ниÑÑ Ð´Ð¾Ð·Ð²Ð¾Ñена.",
+ "ip_range_toolow": "IP-опÑези ниÑÑ Ð´Ð¾Ð·Ð²Ð¾Ñени.",
"proxyblocker": "ÐÐ»Ð¾ÐºÐµÑ Ð¿Ð¾ÑÑедника",
"proxyblockreason": "ÐаÑа ÐРадÑеÑа Ñе блокиÑана ÑÐµÑ Ð¿ÑедÑÑавÑа оÑвоÑени поÑÑедник.\nÐбÑаÑиÑе Ñе ваÑем добавÑаÑÑ Ð¸Ð½ÑеÑÐ½ÐµÑ ÑÑлÑга или ÑеÑ
ниÑÐºÑ Ð¿Ð¾Ð´ÑÑÐºÑ Ð¸ обавеÑÑиÑе иÑ
о овом озбиÑном безбедноÑном пÑоблемÑ.",
"sorbs": "DNSBL",
@@ -2428,6 +2480,9 @@
"cant-move-user-page": "ÐемаÑе Ð´Ð¾Ð·Ð²Ð¾Ð»Ñ Ð·Ð° пÑемеÑÑаÑе оÑновниÑ
коÑиÑниÑкиÑ
ÑÑÑаниÑа (оÑим подÑÑÑаниÑа).",
"cant-move-to-user-page": "ÐемаÑе Ð´Ð¾Ð·Ð²Ð¾Ð»Ñ Ð·Ð° пÑемеÑÑаÑе ÑÑÑаниÑе на ваÑÑ ÐºÐ¾ÑиÑниÑÐºÑ ÑÑÑаниÑÑ (оÑим на коÑиÑниÑÐºÑ Ð¿Ð¾Ð´ÑÑÑаниÑÑ).",
"cant-move-category-page": "ÐемаÑе Ð´Ð¾Ð·Ð²Ð¾Ð»Ñ Ð´Ð° пÑемеÑÑаÑе ÑÑÑаниÑе каÑегоÑиÑа.",
+ "cant-move-to-category-page": "ÐемаÑе Ð´Ð¾Ð·Ð²Ð¾Ð»Ñ Ð´Ð° пÑемеÑÑиÑе ÑÑÑаниÑÑ Ð½Ð° ÑÑÑаниÑÑ ÐºÐ°ÑегоÑиÑе.",
+ "cant-move-subpages": "ÐемаÑе Ð´Ð¾Ð·Ð²Ð¾Ð»Ñ Ð´Ð° пÑемеÑÑаÑе подÑÑÑаниÑе.",
+ "namespace-nosubpages": "ÐмениÑки пÑоÑÑÐ¾Ñ â$1â не дозвоÑава подÑÑÑаниÑе.",
"newtitle": "Ðови наÑлов:",
"move-watch": "ÐÐ°Ð´Ð³Ð»ÐµÐ´Ð°Ñ Ð¾Ð²Ñ ÑÑÑаниÑÑ",
"movepagebtn": "ÐÑемеÑÑи ÑÑÑаниÑÑ",
@@ -2485,6 +2540,7 @@
"export-download": "СаÑÑÐ²Ð°Ñ ÐºÐ°Ð¾ даÑоÑекÑ",
"export-templates": "УкÑÑÑи Ñаблоне",
"export-pagelinks": "УкÑÑÑи повезане ÑÑÑаниÑе до дÑбине од:",
+ "export-manual": "Ð ÑÑно Ð´Ð¾Ð´Ð°Ñ ÑÑÑаниÑе:",
"allmessages": "СиÑÑемÑке поÑÑке",
"allmessagesname": "Ðазив",
"allmessagesdefault": "ÐодÑазÑмевани ÑекÑÑ",
@@ -2524,6 +2580,7 @@
"import-mapping-namespace": "Увези Ñ Ð¸Ð¼ÐµÐ½Ñки пÑоÑÑоÑ:",
"import-mapping-subpage": "Увези као подÑÑÑаниÑе ÑледеÑе ÑÑÑаниÑе:",
"import-upload-filename": "Ðазив даÑоÑеке:",
+ "import-upload-username-prefix": "ÐеÑÑвики пÑеÑикÑ:",
"import-comment": "ÐоменÑаÑ:",
"importtext": "ÐзвезиÑе даÑоÑÐµÐºÑ Ñ Ð¸Ð·Ð²Ð¾Ñног викиÑа коÑиÑÑеÑи [[Special:Export|извоз]].\nСаÑÑваÑÑе Ñе на ÑаÑÑÐ½Ð°Ñ Ð¸ поÑаÑиÑе овде.",
"importstart": "Увозим ÑÑÑаниÑеâ¦",
@@ -2532,6 +2589,7 @@
"imported-log-entries": "{{PLURAL:$1|Увезена Ñе $1 ÑÑавка извеÑÑаÑа|Увезене ÑÑ $1 ÑÑавке извеÑÑаÑа|Увезено Ñе $1 ÑÑавки извеÑÑаÑа}}.",
"importfailed": "ÐеÑÑпеÑан Ñвоз: $1
/ $2 (омогÑÑена)",
"mediastatistics": "СÑаÑиÑÑика даÑоÑека",
"mediastatistics-summary": "СÑаÑиÑÑике о Ñиповима поÑлаÑиÑ
даÑоÑека. Ðвде ÑÑ ÑÑаÑÑнаÑе Ñамо наÑновиÑе веÑзиÑе даÑоÑека. СÑаÑе или обÑиÑане веÑзиÑе ниÑÑ ÑÑаÑÑнаÑе.",
"mediastatistics-table-mimetype": "MIME Ñип",
@@ -3744,9 +3825,13 @@
"special-characters-group-lao": "ÐаоÑки",
"special-characters-group-khmer": "ÐмеÑÑки",
"special-characters-group-canadianaboriginal": "ÐанадÑки абоÑиÑинÑки",
+ "special-characters-title-endash": "ÑÑÑиÑа",
+ "special-characters-title-emdash": "дÑга ÑÑÑиÑа",
+ "special-characters-title-minus": "минÑÑ",
"mw-widgets-dateinput-no-date": "ÐаÑÑм ниÑе изабÑан",
"mw-widgets-dateinput-placeholder-day": "ÐÐÐÐ-ÐÐ-ÐÐ",
"mw-widgets-dateinput-placeholder-month": "ÐÐÐÐ-ÐÐ",
+ "mw-widgets-mediasearch-input-placeholder": "ÐÑеÑÑажи даÑоÑеке",
"mw-widgets-mediasearch-noresults": "Ðема ÑезÑлÑаÑа.",
"mw-widgets-titleinput-description-new-page": "ÑÑÑаниÑа ÑÐ¾Ñ Ñвек не поÑÑоÑи",
"mw-widgets-titleinput-description-redirect": "пÑеÑÑмеÑава на $1",
@@ -3754,6 +3839,7 @@
"mw-widgets-usersmultiselect-placeholder": "ÐÐ¾Ð´Ð°Ñ ÑоÑ...",
"date-range-from": "Ðд даÑÑма:",
"date-range-to": "Ðо даÑÑма:",
+ "sessionprovider-generic": "$1 ÑеÑиÑе",
"randomrootpage": "СлÑÑаÑна коÑенÑка ÑÑÑаниÑа",
"log-action-filter-block": "Тип блокиÑаÑа:",
"log-action-filter-contentmodel": "Тип пÑомене модела ÑадÑжаÑа:",
@@ -3765,16 +3851,20 @@
"log-action-filter-patrol": "Тип паÑÑолиÑаÑа:",
"log-action-filter-protect": "Тип закÑÑÑаваÑа:",
"log-action-filter-rights": "Тип пÑомене коÑиÑниÑкиÑ
пÑава:",
+ "log-action-filter-suppress": "ÐÑÑÑа ÑкÑиваÑа:",
"log-action-filter-upload": "Тип оÑпÑемаÑа:",
"log-action-filter-all": "Све",
"log-action-filter-block-block": "блокиÑаÑе",
"log-action-filter-block-reblock": "измена блокиÑаÑа",
"log-action-filter-block-unblock": "деблокиÑаÑе",
+ "log-action-filter-contentmodel-change": "Ðзмена модела ÑадÑжаÑа",
+ "log-action-filter-contentmodel-new": "Ðова ÑÑÑаниÑа Ñ Ð½ÐµÑÑандаÑдним моделом ÑадÑжаÑа",
"log-action-filter-delete-delete": "бÑиÑаÑе ÑÑÑаниÑе",
"log-action-filter-delete-delete_redir": "пÑеÑнимаваÑе пÑеÑÑмеÑеÑа",
"log-action-filter-delete-restore": "вÑаÑаÑе ÑÑÑаниÑе",
"log-action-filter-delete-event": "бÑиÑаÑе ÑноÑа Ñ Ð´Ð½ÐµÐ²Ð½Ð¸Ñима",
"log-action-filter-delete-revision": "бÑиÑаÑе измене",
+ "log-action-filter-import-interwiki": "ÐеÑÑвики Ñвоз",
"log-action-filter-managetags-create": "нова ознака",
"log-action-filter-managetags-delete": "бÑиÑаÑе ознаке",
"log-action-filter-managetags-activate": "акÑивиÑаÑе ознаке",
@@ -3792,23 +3882,38 @@
"log-action-filter-protect-move_prot": "пÑемеÑÑаÑе заÑÑиÑе",
"log-action-filter-rights-rights": "ÑÑÑно",
"log-action-filter-rights-autopromote": "аÑÑомаÑÑки",
+ "log-action-filter-suppress-event": "СкÑиваÑе ÑноÑа Ñ Ð´Ð½ÐµÐ²Ð½Ð¸ÐºÑ",
+ "log-action-filter-suppress-revision": "СкÑиваÑе измене",
+ "log-action-filter-suppress-delete": "СкÑиваÑе ÑÑÑаниÑе",
+ "log-action-filter-suppress-block": "СкÑиваÑе коÑиÑника блокиÑаÑем",
+ "log-action-filter-suppress-reblock": "СкÑиваÑе коÑиÑника поновним блокиÑаÑем",
"log-action-filter-upload-upload": "ново оÑпÑемаÑе",
"log-action-filter-upload-overwrite": "пÑомена поÑÑоÑеÑег",
+ "authmanager-authn-no-primary": "ÐÑÑжени акÑедиÑиви не Ð¼Ð¾Ð³Ñ Ñе пÑовеÑиÑи.",
+ "authmanager-create-disabled": "ÐнемогÑÑено пÑавÑеÑе налога.",
+ "authmanager-create-from-login": "ÐопÑниÑе поÑа да биÑÑе напÑавили налог.",
"authmanager-authplugin-setpass-failed-title": "ÐеÑÑпеÑна пÑомена лозинке",
"authmanager-authplugin-setpass-bad-domain": "ÐеиÑпÑаван домен.",
+ "authmanager-autocreate-noperm": "ÐÑÑомаÑÑко пÑавÑеÑе налога ниÑе дозвоÑено.",
"authmanager-userdoesnotexist": "ÐоÑиÑниÑки налог â$1â ниÑе оÑвоÑен.",
"authmanager-email-label": "ÐмеÑл",
"authmanager-email-help": "ÐмеÑл адÑеÑа",
"authmanager-realname-label": "ÐÑаво име",
"authmanager-realname-help": "ÐÑаво име коÑиÑника",
+ "authmanager-provider-temporarypassword": "ÐÑивÑемена лозинка",
"authprovider-confirmlink-option": "$1 ($2)",
+ "authprovider-confirmlink-request-label": "РаÑÑни коÑи Ñе ÑÑебаÑÑ Ð¿Ð¾Ð²ÐµÐ·Ð°Ñи",
"authprovider-confirmlink-success-line": "$1: УÑпеÑно повезано.",
"authprovider-resetpass-skip-label": "ÐÑеÑкоÑи",
"authform-newtoken": "ÐедоÑÑаÑе жеÑон. $1",
"authform-notoken": "ÐедоÑÑаÑе жеÑон",
"authform-wrongtoken": "ÐогÑеÑан жеÑон",
"specialpage-securitylevel-not-allowed-title": "ÐиÑе дозвоÑено",
+ "authpage-cannot-login": "Ðе Ð¼Ð¾Ð³Ñ Ð·Ð°Ð¿Ð¾ÑеÑи пÑиÑавÑ.",
+ "authpage-cannot-create": "Ðе Ð¼Ð¾Ð³Ñ Ð·Ð°Ð¿Ð¾ÑеÑи ÑÑваÑаÑе налога.",
+ "authpage-cannot-link": "Ðе Ð¼Ð¾Ð³Ñ Ð·Ð°Ð¿Ð¾ÑеÑи ÑпаÑаÑе налога.",
"cannotauth-not-allowed-title": "ÐÑиÑÑÑп Ñе одбиÑен",
+ "cannotauth-not-allowed": "ÐиÑе Ðам дозвоÑено да коÑиÑÑиÑе Ð¾Ð²Ñ ÑÑÑаниÑÑ",
"changecredentials": "ÐÑомÑена акÑедиÑива",
"changecredentials-submit": "ÐÑомени",
"removecredentials": "УклаÑаÑе акÑедиÑива",
diff --git a/languages/i18n/sr-el.json b/languages/i18n/sr-el.json
index 9b8059b6b6..c35d8bacbd 100644
--- a/languages/i18n/sr-el.json
+++ b/languages/i18n/sr-el.json
@@ -168,7 +168,7 @@
"newwindow": "(otvara se u novom prozoru)",
"cancel": "Otkaži",
"moredotdotdot": "ViÅ¡eâ¦",
- "morenotlisted": "Ova lista je možda nepotpuna",
+ "morenotlisted": "Ovaj spisak možda nije potpun.",
"mypage": "Stranica",
"mytalk": "Razgovor",
"anontalk": "Razgovor",
@@ -184,7 +184,7 @@
"tagline": "Izvor: {{SITENAME}}",
"help": "PomoÄ",
"search": "Pretraga",
- "search-ignored-headings": "# \n# Naslovi koji Äe biti ignorisani upitom\n# Promene su vidljive odmah nakon Å¡to stranica sa naslovom bude popisana\n# Možete iznuditi ponovno popisivanje sa \"null\" promenom\n# Sintaksa je sledeÄa:\n# * Svaka vrsta koja zapoÄinje \"#\" znakom pa sve do kraja je komentar\n# * Svaka ne prazna vrsta je taÄan naslov za zanemariti, u taÄnom obliku\nReference\nSpoljaÅ¡nje veze\nPogledajte\n#
",
+ "search-ignored-headings": "# \n# Naslovi koji Äe biti ignorisani upitom\n# Promene su vidljive odmah nakon Å¡to stranica sa naslovom bude popisana\n# Možete iznuditi ponovno popisivanje sa \"null\" promenom\n# Sintaksa je sledeÄa:\n# * Svaka vrsta koja zapoÄinje \"#\" znakom pa sve do kraja je komentar\n# * Svaka ne prazna vrsta je taÄan naslov za zanemariti, u taÄnom obliku\nReference\nSpoljaÅ¡nje veze\nPogledajte\n#
",
"searchbutton": "Pretraži",
"go": "Idi",
"searcharticle": "Idi",
@@ -214,7 +214,7 @@
"talk": "Razgovor",
"views": "Pregledi",
"toolbox": "Alatke",
- "tool-link-userrights": "Promeni {{GENDER:$1|korisniÄke}} grupe",
+ "tool-link-userrights": "Uredi {{GENDER:$1|korisniÄke}} grupe",
"tool-link-userrights-readonly": "Prikaži {{GENDER:$1|korisnik}} grupe",
"tool-link-emailuser": "Pošalji imejl",
"imagepage": "Pogledaj stranicu datoteke",
@@ -619,7 +619,7 @@
"userjspreview": "'''Ovo je samo pregled javaskripta.'''\n'''Stranica joÅ¡ nije saÄuvana!'''",
"sitecsspreview": "'''Ovo je samo pregled CSS-a.'''\n'''Stranica joÅ¡ nije saÄuvana!'''",
"sitejspreview": "'''Ovo je samo pregled javaskripta.'''\n'''Stranica joÅ¡ nije saÄuvana!'''",
- "userinvalidcssjstitle": "Upozorenje: ne postoji tema â$1â.\nPrilagoÄene stranice CSS i javaskript poÄinju malim slovom, npr. {{ns:user}}:Foo/vector.css, a ne {{ns:user}}:Foo/Vector.css.",
+ "userinvalidconfigtitle": "Upozorenje: ne postoji tema â$1â.\nPrilagoÄene stranice CSS i javaskript poÄinju malim slovom, npr. {{ns:user}}:Foo/vector.css, a ne {{ns:user}}:Foo/Vector.css.",
"updated": "(Ažurirano)",
"note": "Napomena:",
"previewnote": "Ne zaboravite da je ovo samo pretpregled.\nVaÅ¡e izmene joÅ¡ nisu saÄuvane!",
@@ -953,7 +953,7 @@
"prefs-files": "Datoteke",
"prefs-custom-css": "PrilagoÄeni CSS",
"prefs-custom-js": "PrilagoÄeni javaskript",
- "prefs-common-css-js": "Deljeni CSS/javaskript za sve teme:",
+ "prefs-common-config": "Deljeni CSS/javaskript za sve teme:",
"prefs-reset-intro": "Možete koristiti ovu stranicu da poništite svoje postavke na podrazumevane vrednosti.\nOva radnja se ne može vratiti.",
"prefs-emailconfirm-label": "Potvrda imejla:",
"youremail": "Imejl:",
@@ -1174,6 +1174,7 @@
"recentchanges-legend": "Opcije skorašnjih izmena",
"recentchanges-summary": "Pratite skorašnje izmene na ovoj stranici.",
"recentchanges-noresult": "Nema promena u zadatom vremenu za zadate kriterijume.",
+ "recentchanges-notargetpage": "Unesite naziv stranice kako biste videli srodne izmene.",
"recentchanges-feed-description": "Pratite skoraÅ¡nje izmene uz pomoÄ ovog dovoda.",
"recentchanges-label-newpage": "Ovom izmenom napravljena je nova izmena",
"recentchanges-label-minor": "Ovo je manja izmena",
@@ -1274,8 +1275,6 @@
"boteditletter": "b",
"unpatrolledletter": "!",
"number_of_watching_users_pageview": "[$1 {{PLURAL:$1|korisnik nadgleda|korisnika nadgledaju|korisnika nadgledaju}}]",
- "rc_categories": "OgraniÄi na kategorije (razdvoji s uspravnom crtom):",
- "rc_categories_any": "Sve",
"rc-change-size": "$1",
"rc-change-size-new": "$1 {{PLURAL:$1|bajt|bajta|bajtova}} posle izmene",
"newsectionsummary": "/* $1 */ novi odeljak",
diff --git a/languages/i18n/stq.json b/languages/i18n/stq.json
index 5eb4ab7ad6..cbf959315c 100644
--- a/languages/i18n/stq.json
+++ b/languages/i18n/stq.json
@@ -440,7 +440,7 @@
"userjspreview": "== Foarskau fon dien Benutser-CSS ==\n'''Beoachtje:''' Ãtter dät Spiekerjen moast du dien Browser kweede, ju näie Version tou leeden: '''Mozilla/Firefox:''' ''Strg-Shift-R'', '''Internet Explorer:''' ''Strg-F5'', '''Opera:''' ''F5'', '''Safari:''' ''Cmd-Shift-R'', '''Konqueror:''' ''F5''.",
"sitecsspreview": "\"Beoachtje, dät du bloot ne Foarskau fon dit CSS bekiekest.\"\n\"Der wuud noch nit spiekerd!\"",
"sitejspreview": "'''Beoachtje, dät du bloot n Foarbekiek fon dit JavaScript bekiekest.'''\n'''Dät is noch nit spiekerd!'''",
- "userinvalidcssjstitle": "'''Woarskauenge:''' Deer existiert neen Skin \"$1\". Betoank jädden, dät benutserspezifiske .css- un .js-Sieden män n Littek-Bouksteeuwe anfange mouten, also t.B. ''{{ns:user}}:Mustermann/vector.css'', nit ''{{ns:user}}:Mustermann/Vector.css''.",
+ "userinvalidconfigtitle": "'''Woarskauenge:''' Deer existiert neen Skin \"$1\". Betoank jädden, dät benutserspezifiske .css- un .js-Sieden män n Littek-Bouksteeuwe anfange mouten, also t.B. ''{{ns:user}}:Mustermann/vector.css'', nit ''{{ns:user}}:Mustermann/Vector.css''.",
"updated": "(Annerd)",
"note": "'''Waiwiesenge:'''",
"previewnote": "'''Dit is man ne Foarbekiek, ju Siede wuude noch nit spiekerd!'''",
@@ -720,7 +720,7 @@
"prefs-files": "Doatäie",
"prefs-custom-css": "Benutserdefinierde CSS",
"prefs-custom-js": "Benutserdefinierd JS",
- "prefs-common-css-js": "Gemeensoam CSS/JS foar aal Skins:",
+ "prefs-common-config": "Gemeensoam CSS/JS foar aal Skins:",
"prefs-reset-intro": "Du koast disse Siede bruuke, uum do Ienstaalengen ap do Standoarde touräächtousätten.\nDät kon nit moor tourääch troald wäide.",
"prefs-emailconfirm-label": "E-Mail-Bestäätigenge:",
"youremail": "E-Mail-Adrässe:",
@@ -913,8 +913,6 @@
"newpageletter": "Näi",
"boteditletter": "B",
"number_of_watching_users_pageview": "[$1 beooboachtjende {{PLURAL:$1|Benutser|Benutsere}}]",
- "rc_categories": "Bloot Sieden uut do Kategorien (tränd mäd â|â):",
- "rc_categories_any": "Aal",
"rc-change-size": "$1 {{PLURAL:$1|Byte|Bytes}}",
"newsectionsummary": "Näie Apsats /* $1 */",
"rc-enhanced-expand": "Details anwiese (bruukt JavaScript)",
diff --git a/languages/i18n/su.json b/languages/i18n/su.json
index ca646b2a03..736a6296f1 100644
--- a/languages/i18n/su.json
+++ b/languages/i18n/su.json
@@ -647,7 +647,7 @@
"userjspreview": "'''Inget yén anjeun ukur nguji/nyawang ''javascript'' pamaké anjeun, can disimpen!'''",
"sitecsspreview": "'''Inget yén ieu CSS ukur pramidang.'''\n'''Can disimpen!'''",
"sitejspreview": "'''Inget yén ieu kodeu JavaScript ukur pramidang.'''\n'''Can disimpen!'''",
- "userinvalidcssjstitle": "'''Awas''': kulit \"$1\" mah teu aya. Sing émut yén kaca .css jeung .js mah migunakeun aksara leutik dina judulna, contona baé {{ns:user}}:Foo/vector.css lawan {{ns:user}}:Foo/Vector.css.",
+ "userinvalidconfigtitle": "'''Awas''': kulit \"$1\" mah teu aya. Sing émut yén kaca .css jeung .js mah migunakeun aksara leutik dina judulna, contona baé {{ns:user}}:Foo/vector.css lawan {{ns:user}}:Foo/Vector.css.",
"updated": "(Geus diropéa)",
"note": "'''Catetan:'''",
"previewnote": "'''Inget yén ieu ukur pratayang, can disimpen.'''\nÃditan anjeun can disimpen!",
@@ -992,7 +992,7 @@
"prefs-files": "Berkas",
"prefs-custom-css": "CSS sakahayang",
"prefs-custom-js": "JavaScript sakahayang",
- "prefs-common-css-js": "CSS/JavaScript dipaké pikeun sakabéh kulit:",
+ "prefs-common-config": "CSS/JavaScript dipaké pikeun sakabéh kulit:",
"prefs-reset-intro": "Anjeun bisa maké ieu kaca pikeun mulangkeun préferénsi anjeun ka nu baku.\nMun geus anggeus teu bisa dibolaykeun.",
"prefs-emailconfirm-label": "Konfirmasi surélék:",
"youremail": "Surélék:",
@@ -1397,8 +1397,6 @@
"newpageletter": "A",
"boteditletter": "b",
"number_of_watching_users_pageview": "[$1 {{PLURAL:$1|ngawaskeun|ngawaskeun}}]",
- "rc_categories": "Watesan nepi ka kategori (dipisah ku \"|\"):",
- "rc_categories_any": "Unggal nu kapilih",
"rc-change-size-new": "$1 {{PLURAL:$1|bit|bit}} sanggeus robah",
"newsectionsummary": "/* $1 */ bagean anyar",
"rc-enhanced-expand": "Témbongkeun rincian",
@@ -3351,7 +3349,7 @@
"logentry-protect-unprotect": "$1 {{GENDER:$2|mupus}} panangtayungan ti $3",
"logentry-protect-protect": "$1 {{GENDER:$2|ditangtayungan}} $3 $4",
"logentry-upload-upload": "$1 {{GENDER:$2|ngamuat}} $3",
- "logentry-upload-overwrite": "$1 {{GENDER:$2|ngunggah}} $3 vérsi anyar",
+ "logentry-upload-overwrite": "$1 {{GENDER:$2|ngunjal}} $3 vérsi anyar",
"logentry-upload-revert": "$1 {{GENDER:$2|diunjal}} $3",
"log-name-managetags": "Log pangokolaan tag",
"logentry-managetags-create": "$1 {{GENDER:$2|nyieun}} tag \"$4\"",
diff --git a/languages/i18n/sv.json b/languages/i18n/sv.json
index bd5e3ff571..fab5c8eaad 100644
--- a/languages/i18n/sv.json
+++ b/languages/i18n/sv.json
@@ -718,7 +718,7 @@
"userjspreview": "'''Kom ihåg att du bara testar/förhandsgranskar ditt JavaScript.'''\n'''Det har inte sparats än!'''",
"sitecsspreview": "'''Kom ihåg att du bara förhandsgranskar detta CSS.''' \n'''Det har ännu inte sparats!'''",
"sitejspreview": "'''Kom ihåg att du bara förhandsgranskar denna JavaScript-kod.'''\n'''Det har ännu inte sparats!'''",
- "userinvalidcssjstitle": "'''Varning:''' Utseendet \"$1\" finns inte. Kom ihåg att .css- och .js-sidor för enskilda användare börjar på liten bokstav. Exempel: {{ns:user}}:Foo/vector.css i stället för {{ns:user}}:Foo/Vector.css.",
+ "userinvalidconfigtitle": "'''Varning:''' Utseendet \"$1\" finns inte. Kom ihåg att .css- och .js-sidor för enskilda användare börjar på liten bokstav. Exempel: {{ns:user}}:Foo/vector.css i stället för {{ns:user}}:Foo/Vector.css.",
"updated": "(Uppdaterad)",
"note": "'''Obs!'''",
"previewnote": "'''Kom ihåg att detta bara är en förhandsvisning.'''\nDina ändringar har ännu inte sparats!",
@@ -1086,7 +1086,7 @@
"prefs-files": "Filer",
"prefs-custom-css": "Personlig CSS",
"prefs-custom-js": "Personligt JavaScript",
- "prefs-common-css-js": "Delad CSS/JS för alla utseenden:",
+ "prefs-common-config": "Delad CSS/JS för alla utseenden:",
"prefs-reset-intro": "Du kan använda den här sidan till att återställa dina inställningar till webbplatsens standardinställningar.\nDetta kan inte återställas.",
"prefs-emailconfirm-label": "E-postbekräftelse:",
"youremail": "E-post:",
@@ -1520,8 +1520,6 @@
"newpageletter": "N",
"boteditletter": "b",
"number_of_watching_users_pageview": "[$1 bevakande {{PLURAL:$1|användare|användare}}]",
- "rc_categories": "Begränsa till följande kategorier (separera med \"|\"):",
- "rc_categories_any": "NÃ¥gon av de valda",
"rc-change-size-new": "$1 {{PLURAL:$1|byte}} efter ändring",
"newsectionsummary": "/* $1 */ nytt avsnitt",
"rc-enhanced-expand": "Visa detaljer",
@@ -2272,7 +2270,7 @@
"rollback-success": "Ã
terställde ändringar av {{GENDER:$3|$1}};\nändrade tillbaka till senaste versionen av {{GENDER:$4|$2}}.",
"rollback-success-notify": "Ã
terställde ändringar av $1;\nändrade tillbaka till senaste sidversion av $2. [$3 Visa ändringar]",
"sessionfailure-title": "Sessionsfel",
- "sessionfailure": "Något med din session som inloggad är på tok. Din begärda åtgärd har avbrutits, för att förhindra att någon kapar din session. Klicka på \"Tillbaka\" i din webbläsare och ladda om den sida du kom ifrån. Försök sedan igen.",
+ "sessionfailure": "Någonting med din inloggningssession är på tok;\ndin begärda åtgärd har avbrutits för att förhindra att någon kapar din session.\nSkicka formuläret igen.",
"changecontentmodel": "Ãndra innehÃ¥llsmodell för en sida",
"changecontentmodel-legend": "Ãndra innehÃ¥llsmodell",
"changecontentmodel-title-label": "Sidtitel",
@@ -2677,6 +2675,7 @@
"thumbnail_dest_directory": "Kan inte skapa målkatalogen",
"thumbnail_image-type": "Bildtypen stöds inte",
"thumbnail_gd-library": "Inkomplett GD library konfigurering: saknar funktionen $1",
+ "thumbnail_image-size-zero": "Bildens filstorlek verkar vara noll.",
"thumbnail_image-missing": "Fil verkar saknas: $1",
"thumbnail_image-failure-limit": "Det har nyligen förekommit alltför många misslyckade försök ($1 eller fler) att skapa den här miniatyrbilden. Försök igen senare.",
"import": "Importera sidor",
@@ -3415,6 +3414,7 @@
"watchlistedit-clear-titles": "Sidor:",
"watchlistedit-clear-submit": "Rensa bevakningslistan (Detta är permanent!)",
"watchlistedit-clear-done": "Din bevakningslista har rensats.",
+ "watchlistedit-clear-jobqueue": "Din bevakningslista skapas. Detta kan ta en stund!",
"watchlistedit-clear-removed": "{{PLURAL:$1|1 sida|$1 sidor}} togs bort:",
"watchlistedit-too-many": "Det finns för många sidor att visa här.",
"watchlisttools-clear": "Rensa bevakningslistan",
diff --git a/languages/i18n/sw.json b/languages/i18n/sw.json
index 7a2bbbafd2..62318b8d48 100644
--- a/languages/i18n/sw.json
+++ b/languages/i18n/sw.json
@@ -575,7 +575,7 @@
"userjspreview": "'''Kumbuka kwamba unajaribu/kuhakiki mandhari ya ukurasa wako wa JavaScript tu.'''\n'''Haijahifadhiwa bado!'''",
"sitecsspreview": "'''Kumbuka kwamba unahakiki tu mandhari ya CSS hii.'''\n'''Haijahifadhiwa bado!'''",
"sitejspreview": "'''Kumbuka kwamba unahakiki tu mandhari ya JavaScript hii.'''\n'''Haijahifadhiwa bado!'''",
- "userinvalidcssjstitle": "'''Onyo:''' Hakuna umbo \"$1\".\nKumbuka kwamba desturi ya kurasa za .css na .js hutumia herufi ndogo, yaani, {{ns:user}}:Foo/vector.css na si {{ns:user}}:Foo/Vector.css.",
+ "userinvalidconfigtitle": "'''Onyo:''' Hakuna umbo \"$1\".\nKumbuka kwamba desturi ya kurasa za .css na .js hutumia herufi ndogo, yaani, {{ns:user}}:Foo/vector.css na si {{ns:user}}:Foo/Vector.css.",
"updated": "(Imesasishwa)",
"note": "'''Taarifa:'''",
"previewnote": "'''Hii ni hakikisho tu.''' \nMabadiliko hayajahifadhiwa bado!",
@@ -891,7 +891,7 @@
"prefs-files": "Mafaili",
"prefs-custom-css": "CSS niliyotunga mwenyewe",
"prefs-custom-js": "JS niliyotunga mwenyewe",
- "prefs-common-css-js": "CSS/JS inayoshirikishwa na maumbo yote:",
+ "prefs-common-config": "CSS/JS inayoshirikishwa na maumbo yote:",
"prefs-reset-intro": "Unaweza kutumia ukurasa huu ili kurudisha mapendekezo yako kwenye yale ya msingi ya tovuti.\nHutaweza kulibatilisha tendo hili baadaye.",
"prefs-emailconfirm-label": "Kuhakikisha barua pepe:",
"youremail": "Barua pepe yako:",
@@ -1125,8 +1125,6 @@
"newpageletter": "P",
"boteditletter": "r",
"number_of_watching_users_pageview": "[idadi ya {{PLURAL:$1|watumiaji}} wanaoufuatilia ni $1]",
- "rc_categories": "Chagua jamii zingine (uzitenge na kigawaji hiki \"|\")",
- "rc_categories_any": "Yoyote",
"rc-change-size-new": "$1 {{PLURAL:$1|byte|bytes}} baada ya mabadiliko",
"newsectionsummary": "/* $1 */ mjadala mpya",
"rc-enhanced-expand": "Onyesha maelezo",
diff --git a/languages/i18n/szl.json b/languages/i18n/szl.json
index 66ce850876..2fa107fe22 100644
--- a/languages/i18n/szl.json
+++ b/languages/i18n/szl.json
@@ -530,7 +530,7 @@
"userjspreview": "'''Pamjyntej, aże to je no raźe ino podglůnd Twojego arkusza stylůw JavaScriptu.'''\n'''Åic jeszcze Åy zostoÅo naszkryflane!'''",
"sitecsspreview": "'''Pamjyntej, aże to je na raźe ino podglůnd Twojego arkusza stylůw CSS.'''\n'''Åic jeszcze Åy zostoÅo naszkryflane!'''",
"sitejspreview": "'''Pamjyntej, aże to je na raźe ino podglůnd Twojego JavaScriptu - nic jeszcze Åy zostoÅo naszkryflane!'''",
- "userinvalidcssjstitle": "'''Pozůr:''' Åy mo skůrki uo mjaÅe \"$1\". Pamjyntej, aże zajty użytkowÅika zawjyrajůnce CSS i JavaScript powinny zaczynaÄ Åe maÅům buchsztabům, lb. {{ns:user}}:Foo/vector.css.",
+ "userinvalidconfigtitle": "'''Pozůr:''' Åy mo skůrki uo mjaÅe \"$1\". Pamjyntej, aże zajty użytkowÅika zawjyrajůnce CSS i JavaScript powinny zaczynaÄ Åe maÅům buchsztabům, lb. {{ns:user}}:Foo/vector.css.",
"updated": "(PomjyÅano)",
"note": "'''Pozůr:'''",
"previewnote": "'''To je ino podglůnd - artikel jeszcze Åy je spamjyntany!'''",
@@ -977,8 +977,6 @@
"newpageletter": "N",
"boteditletter": "b",
"number_of_watching_users_pageview": "[$1 {{PLURAL:$1|dowajůncy pozůr užytkowÅik|dowajůncych pozůr užytkowÅikůw}}]",
- "rc_categories": "UůgraÅiÄ do katygorii (oddźelej za půmocům \"|\")",
- "rc_categories_any": "WÅ¡yskie",
"rc-change-size-new": "$1 {{PLURAL:$1|bajt|bajty|bajtůw}} po půmjyÅyÅu",
"newsectionsummary": "/* $1 */ nowo tajla",
"rc-enhanced-expand": "Pokoż szczygůÅy",
diff --git a/languages/i18n/ta.json b/languages/i18n/ta.json
index 638d3ebb38..655423a6f0 100644
--- a/languages/i18n/ta.json
+++ b/languages/i18n/ta.json
@@ -671,7 +671,7 @@
"userjspreview": "'''நà¯à®°à¯ à®à®®à®¤à¯ à®à®¾à®µà®¾ நிரல௠à®à¯à®¤à®¿à®à¯à®à®¿à®±à¯à®°à¯ à®
லà¯à®²à®¤à¯ à®®à¯à®©à¯ தà¯à®±à¯à®±à®¤à¯à®¤à¯ à®®à®à¯à®à¯à®®à¯ பாரà¯à®à¯à®à®¿à®±à¯à®°à¯ à®à®©à¯à®ªà®¤à¯ நினà¯à®µà®¿à®²à¯ à®à¯à®³à¯à®³à®µà¯à®®à¯, à®à®©à¯à®©à®®à¯à®®à¯ à®à¯à®®à®¿à®à¯à®à®ªà¯à®ªà®à®µà®¿à®²à¯à®²à¯!'''",
"sitecsspreview": "'''நà¯à®à¯à®à®³à¯ à®®à®à¯à®à¯à®®à¯ à®à®¨à¯à®¤ CSS. à®à®©à¯ à®®à¯à®©à¯ தà¯à®±à¯à®±à®¤à¯à®¤à¯ à®à®¾à®£à¯à®à®¿à®±à¯à®°à¯à®à®³à¯ à®à®©à¯à®ªà®¤à¯ நினà¯à®µà®¿à®²à¯ à®à¯à®³à¯à®³à®µà¯à®®à¯.'''\n'''à®à®¤à¯ à®à®©à¯à®©à®®à¯à®®à¯ à®à¯à®®à®¿à®à¯à®à®ªà¯à®ªà®à®µà®¿à®²à¯à®²à¯!'''",
"sitejspreview": "'''நà¯à®à¯à®à®³à¯ à®®à®à¯à®à¯à®®à¯ à®à®¨à¯à®¤ JavaScript code à®à®©à¯ à®®à¯à®©à¯ தà¯à®±à¯à®±à®¤à¯à®¤à¯ à®à®¾à®£à¯à®à®¿à®±à¯à®°à¯à®à®³à¯ à®à®©à¯à®ªà®¤à¯ நினà¯à®µà®¿à®²à¯ à®à¯à®³à¯à®³à®µà¯à®®à¯.'''\n'''à®à®¤à¯ à®à®©à¯à®©à®®à¯à®®à¯ à®à¯à®®à®¿à®à¯à®à®ªà¯à®ªà®à®µà®¿à®²à¯à®²à¯!'''",
- "userinvalidcssjstitle": "'''à®à®à¯à®à®°à®¿à®à¯à®à¯:''' \"$1\" à®à®©à¯à®±à®ªà¯ பà¯à®¯à®°à®¿à®²à¯ தà¯à®²à¯à®²à¯à®±à¯à®à¯ à®à®¿à®à¯à®¯à®¾à®¤à¯. à®à®¿.à®à®¸à¯.à®à®¸à¯ மறà¯à®±à¯à®®à¯ à®à¯.à®à®¸à¯. பà®à¯à®à®à¯à®à®³à¯ à®à®à¯à®à®¿à®² à®à¯à®´à¯ வரிà®à¯à®ªà¯ பà¯à®¯à®°à¯à®à®³à¯à®à¯ à®à¯à®£à¯à®à®¿à®°à¯à®à¯à® வà¯à®£à¯à®à¯à®®à¯ à®à®©à¯à®ªà®¤à¯à®à¯ à®à®µà®©à®¿à®à¯à®à®µà¯à®®à¯. à®+à®à®¾: {{ns:user}}:Foo/vector.css à®à®©à¯à®ªà®¤à¯ à®à®°à®¿à®¯à®¾à®© வà®à®¿à®µà®®à¯ {{ns:user}}:Foo/Vector.css à®à®©à¯à®ªà®¤à¯ பிழà¯à®¯à®¾à®© வà®à®¿à®µà®®à¯.",
+ "userinvalidconfigtitle": "'''à®à®à¯à®à®°à®¿à®à¯à®à¯:''' \"$1\" à®à®©à¯à®±à®ªà¯ பà¯à®¯à®°à®¿à®²à¯ தà¯à®²à¯à®²à¯à®±à¯à®à¯ à®à®¿à®à¯à®¯à®¾à®¤à¯. à®à®¿.à®à®¸à¯.à®à®¸à¯ மறà¯à®±à¯à®®à¯ à®à¯.à®à®¸à¯. பà®à¯à®à®à¯à®à®³à¯ à®à®à¯à®à®¿à®² à®à¯à®´à¯ வரிà®à¯à®ªà¯ பà¯à®¯à®°à¯à®à®³à¯à®à¯ à®à¯à®£à¯à®à®¿à®°à¯à®à¯à® வà¯à®£à¯à®à¯à®®à¯ à®à®©à¯à®ªà®¤à¯à®à¯ à®à®µà®©à®¿à®à¯à®à®µà¯à®®à¯. à®+à®à®¾: {{ns:user}}:Foo/vector.css à®à®©à¯à®ªà®¤à¯ à®à®°à®¿à®¯à®¾à®© வà®à®¿à®µà®®à¯ {{ns:user}}:Foo/Vector.css à®à®©à¯à®ªà®¤à¯ பிழà¯à®¯à®¾à®© வà®à®¿à®µà®®à¯.",
"updated": "(à®à®±à¯à®±à¯à®ªà¯à®ªà®à¯à®¤à¯à®¤à®ªà¯à®ªà®à¯à®à®¤à¯)",
"note": "'''à®à¯à®±à®¿à®ªà¯à®ªà¯:'''",
"previewnote": "'''à®à®¤à¯ à®à®°à¯ à®®à¯à®©à¯à®¤à¯à®±à¯à®±à®®à¯ à®®à®à¯à®à¯à®®à¯''', à®à®à¯à®à®³à¯ மாறà¯à®±à®à¯à®à®³à¯ à®à®©à¯à®©à¯à®®à¯ à®à¯à®®à®¿à®à¯à®à®ªà¯à®ªà®à®µà®¿à®²à¯à®²à¯!",
@@ -1021,7 +1021,7 @@
"prefs-files": "à®à¯à®ªà¯à®ªà¯à®à®³à¯",
"prefs-custom-css": "தனிபà¯à®ªà®à¯à® à®à®¿.à®à®à¯.à®à®à¯ (CSS)",
"prefs-custom-js": "தனிபயன௠à®à®¾à®µà®¾à®¸à¯à®à®¿à®°à®¿à®ªà¯à®à¯",
- "prefs-common-css-js": "à®à®²à¯à®²à®¾ à®®à¯à®à®ªà¯à®ªà¯à®±à¯à®à®³à¯à®à¯à®à¯à®®à®¾à®©(skins) பà®à®¿à®°à®ªà¯à®ªà®à¯à® à®à®¿.à®à®à¯.à®à®à¯/à®à®¾à®µà®¾à®à®¿à®±à®¿à®ªà¯à®à¯ (CSS/JavaScript):",
+ "prefs-common-config": "à®à®²à¯à®²à®¾ à®®à¯à®à®ªà¯à®ªà¯à®±à¯à®à®³à¯à®à¯à®à¯à®®à®¾à®©(skins) பà®à®¿à®°à®ªà¯à®ªà®à¯à® à®à®¿.à®à®à¯.à®à®à¯/à®à®¾à®µà®¾à®à®¿à®±à®¿à®ªà¯à®à¯ (CSS/JavaScript):",
"prefs-reset-intro": " à®à®¨à¯à®¤ பà®à¯à®à®¤à¯à®¤à¯ பயனà¯à®ªà®à¯à®¤à¯à®¤à®¿ à®à®à¯à®à®³à¯ விரà¯à®ªà¯à®ªà®à¯à®à®³à¯ தள à®à®¯à®²à¯à®ªà¯à®¨à®¿à®²à¯à®à¯à®à¯ à®®à¯à®à¯à®à®®à¯à®à¯à®à®²à®¾à®®à¯.\nà®à®¤à¯ à®à¯à®¯à¯à®¯à®¾à®®à®²à¯ à®à®°à¯à®à¯à® à®à®¯à®²à®¾à®¤à¯.",
"prefs-emailconfirm-label": "மினà¯à®©à®à¯à®à®²à¯ à®à®±à¯à®¤à®¿à®à¯à®¯à¯à®¤à®²à¯:",
"youremail": "மினà¯à®©à®à¯à®à®²à¯:",
@@ -1339,8 +1339,6 @@
"newpageletter": "பà¯",
"boteditletter": "தா",
"number_of_watching_users_pageview": "[à®à®ªà¯à®ªà®à¯à®à¯à®¤à¯à®¤à¯ {{PLURAL:$1|à®à®°à¯ பயனர௠பாரà¯à®à®¿à®±à®¾à®°à¯|$1 பயனரà¯à®à®³à¯ பாரà¯à®à®¿à®±à®¾à®°à¯à®à®³à¯}}]",
- "rc_categories": "பà®à¯à®ªà¯à®ªà¯à®à®³à¯à®à¯à®à¯ à®®à®à¯à®à¯à®ªà¯à®ªà®à¯à®¤à¯à®¤à¯ (\"|\" à®à¯à®±à®¿à®¯à¯à®à¯à®à®¾à®²à¯ பிரிà®à¯à®à®ªà¯à®ªà®à¯à®à¯à®³à¯à®³à®¤à¯)",
- "rc_categories_any": "தà¯à®°à®¿à®µà¯ à®à¯à®¯à¯à®¤à®¤à®¿à®²à¯ à®à®¤à®¾à®µà®¤à¯",
"rc-change-size-new": "$1 {{PLURAL:$1|பà¯à®à¯à®à¯|பà¯à®à¯à®à¯à®à®³à¯}} -மாறà¯à®±à®¤à¯à®¤à®¿à®±à¯à®à¯à®ªà¯ பிறà®à¯",
"newsectionsummary": "/* $1 */ பà¯à®¤à®¿à®¯ பà®à¯à®¤à®¿",
"rc-enhanced-expand": "விவரதà¯à®¤à¯ à®à®¾à®à¯à®à¯",
diff --git a/languages/i18n/tay.json b/languages/i18n/tay.json
index 449a4123cc..ca2bec2dcb 100644
--- a/languages/i18n/tay.json
+++ b/languages/i18n/tay.json
@@ -649,7 +649,6 @@
"minoreditletter": "cipuq",
"newpageletter": "Giqas",
"boteditletter": "squliq na kikay",
- "rc_categories_any": "Ana nanuâ binzyagan na",
"rc-change-size-new": "sin-nbah$1 {{PLURAL:bzyaqan kkayal na llpgan}}",
"rc-old-title": "pinsâruxsa minqsuâ na laluâ ga \"$1\"",
"recentchangeslinked": "Mâubuy quw zyuwaw na sinbahan",
diff --git a/languages/i18n/tcy.json b/languages/i18n/tcy.json
index 86866310f3..9f1cba9bb2 100644
--- a/languages/i18n/tcy.json
+++ b/languages/i18n/tcy.json
@@ -807,7 +807,6 @@
"minoreditletter": "à²à²¿",
"newpageletter": "ಪà³",
"boteditletter": "ಬಾ",
- "rc_categories_any": "à²à²µà³à²µà³",
"rc-change-size-new": "$1 {{PLURAL:$1|ಬà³à²à³|ಬà³à²à³âಲà³}}ಬದಲಾವಣà³à²¡à³à²¦à³ ಬà³à²à³à²à³",
"newsectionsummary": "\n/* $1 */ಪà³à²¸ ವಿà²à²¾à²",
"rc-enhanced-expand": "ವಿವರà³à²²à³à²¨à³ ತà³à²à²¾à²µà³",
diff --git a/languages/i18n/te.json b/languages/i18n/te.json
index 696bcfc502..08a38847ea 100644
--- a/languages/i18n/te.json
+++ b/languages/i18n/te.json
@@ -651,7 +651,7 @@
"userjspreview": "à°à±à°°à±à°¤à±à°à°à±à°à±à°à°¡à°¿, à°®à±à°°à°¿à°à°à°¾ మౠవాడà±à°à°°à°¿ à°à°¾à°µà°¾à°¸à±à°à±à°°à°¿à°ªà±à°à±à°¨à± à°à°¦à±à°°à°ªà°°à°à°²à±à°¦à±, à°à±à°µà°²à° పరà±à°à±à°·à°¿à°¸à±à°¤à±à°¨à±à°¨à°¾à°°à±/సరిà°à±à°¸à±à°¤à±à°¨à±à°¨à°¾à°°à±!",
"sitecsspreview": "'''à°®à±à°°à± à°à±à°¸à±à°¤à±à°¨à±à°¨à°¦à°¿ à° CSS à°®à±à°¨à±à°à±à°ªà±à°¨à± మాతà±à°°à°®à±à°¨à°¨à°¿ à°à±à°°à±à°¤à±à°à°à±à°à±à°à°¡à°¿.'''\n'''à°¦à±à°¨à±à°¨à°¿à°à°à°¾ à°à°¦à±à°°à°ªà°°à°à°²à±à°¦à±!'''",
"sitejspreview": "'''à°®à±à°°à± à°à±à°¸à±à°¤à±à°¨à±à°¨à°¦à°¿ à° JavaScript à°®à±à°¨à±à°à±à°ªà±à°¨à± మాతà±à°°à°®à±à°¨à°¨à°¿ à°à±à°°à±à°¤à±à°à°à±à°à±à°à°¡à°¿.''' \n'''à°¦à±à°¨à±à°¨à°¿à°à°à°¾ à°à°¦à±à°°à°ªà°°à°à°²à±à°¦à±!'''",
- "userinvalidcssjstitle": "à°¹à±à°à±à°à°°à°¿à°: \"$1\" à°
నౠరà±à°ªà± à°²à±à°¦à±.\nà°
à°à°¿à°®à°¤ .css మరియౠ.js à°ªà±à°à°² à°¶à±à°°à±à°·à°¿à°à°²à± à°à°à°à±à°²à±à°·à± à°à°¿à°¨à±à°¨à°¬à°¡à°¿ à°
à°à±à°·à°°à°¾à°² à°²à±à°¨à± à°à°à°¡à°¾à°²à°¨à°¿ à°à±à°°à±à°¤à±à°à°à±à°à±à°à°¡à°¿, à°à°¦à°¾à°¹à°°à°£à°à± à°à°²à°¾ {{ns:user}}:Foo/vector.css à°
à°à°¤à±à°à°¾à°¨à±, {{ns:user}}:Foo/Vector.css à°à°²à°¾ à°à°¾à°¦à±.",
+ "userinvalidconfigtitle": "à°¹à±à°à±à°à°°à°¿à°: \"$1\" à°
నౠరà±à°ªà± à°²à±à°¦à±.\nà°
à°à°¿à°®à°¤ .css మరియౠ.js à°ªà±à°à°² à°¶à±à°°à±à°·à°¿à°à°²à± à°à°à°à±à°²à±à°·à± à°à°¿à°¨à±à°¨à°¬à°¡à°¿ à°
à°à±à°·à°°à°¾à°² à°²à±à°¨à± à°à°à°¡à°¾à°²à°¨à°¿ à°à±à°°à±à°¤à±à°à°à±à°à±à°à°¡à°¿, à°à°¦à°¾à°¹à°°à°£à°à± à°à°²à°¾ {{ns:user}}:Foo/vector.css à°
à°à°¤à±à°à°¾à°¨à±, {{ns:user}}:Foo/Vector.css à°à°²à°¾ à°à°¾à°¦à±.",
"updated": "(నవà±à°à°°à°¿à°à°à°¬à°¡à°¿à°à°¦à°¿)",
"note": "à°à°®à°¨à°¿à°:",
"previewnote": "à°à°¦à°¿ à°®à±à°¨à±à°à±à°ªà± మాతà±à°°à°®à±à°¨à°¨à°¿ à°à±à°°à±à°¤à±à°à°à±à°à±à°à°¡à°¿.\nమౠమారà±à°ªà±à°²à± à°à°à°à°¾ à°à°¦à±à°°à°®à°µà±à°µà°²à±à°¦à±!",
@@ -994,7 +994,7 @@
"prefs-files": "à°«à±à°³à±à°³à±",
"prefs-custom-css": "à°ªà±à°°à°¤à±à°¯à±à° CSS",
"prefs-custom-js": "à°ªà±à°°à°¤à±à°¯à±à° JS",
- "prefs-common-css-js": "à°
à°¨à±à°¨à°¿ à°°à±à°ªà±à°²à°²à±à°¨à± à°à°¨à±à°¨ CSS/JS:",
+ "prefs-common-config": "à°
à°¨à±à°¨à°¿ à°°à±à°ªà±à°²à°²à±à°¨à± à°à°¨à±à°¨ CSS/JS:",
"prefs-reset-intro": "à° à°ªà±à°à±à°²à±, మౠà°
à°à°¿à°°à±à°à±à°²à°¨à± à°¸à±à°à± డిఫాలà±à°à± విలà±à°µà°²à°à± మారà±à°à±à°à±à°µà°à±à°à±. మళà±à°³à± à°µà±à°¨à°à±à°à°¿ à°¤à±à°¸à±à°à±à°ªà±à°²à±à°°à±.",
"prefs-emailconfirm-label": "à°-à°®à±à°¯à°¿à°²à± నిరà±à°§à°¾à°°à°£:",
"youremail": "à°à°®à±à°¯à°¿à°²à±:",
@@ -1395,8 +1395,6 @@
"newpageletter": "à°à±",
"boteditletter": "బా",
"number_of_watching_users_pageview": "[à°µà±à°à±à°·à°¿à°¸à±à°¤à±à°¨à±à°¨ à°¸à°à±à°¯à±à°²à±: {{PLURAL:$1|à°à°à±à°à°°à±|$1}}]",
- "rc_categories": "ఠవరà±à°à°¾à°²à°à± పరిమితఠà°à±à°¯à±à°¯à°¿ (\"|\" తౠవà±à°°à± à°à±à°¯à±à°¯à°à°¡à°¿):",
- "rc_categories_any": "à°à°à°à±à°à±à°¨à±à°¨à°¦à°¿ à°à°¦à°¯à°¿à°¨à°¾",
"rc-change-size-new": "మారà±à°ªà± తరà±à°µà°¾à°¤ $1 {{PLURAL:$1|à°¬à±à°à±|à°¬à±à°à±à°²à±}}",
"newsectionsummary": "/* $1 */ à°à±à°¤à±à°¤ విà°à°¾à°à°",
"rc-enhanced-expand": "వివరాలనౠà°à±à°ªà°¿à°à°à±",
diff --git a/languages/i18n/tg-cyrl.json b/languages/i18n/tg-cyrl.json
index 82a51cda13..03ca3428cb 100644
--- a/languages/i18n/tg-cyrl.json
+++ b/languages/i18n/tg-cyrl.json
@@ -506,7 +506,7 @@
"userjsyoucanpreview": "Ðзоҳ: ТÑгмаи \"{{int:showpreview}}\" баÑои ÑанҷиÑи паÑванди ҶаваСкÑÐ¸Ð¿Ñ Òабл аз заÑ
иÑа иÑÑиÑода баÑед.",
"usercsspreview": "ФаÑÐ¾Ð¼Ó¯Ñ Ð½Ð°ÐºÑнед, ки ÑÑмо ÑаÒÐ°Ñ CSS коÑбаÑиаÑонÑо пеÑÐ½Ð°Ð¼Ð¾Ð¸Ñ ÐºÐ°Ñда иÑÑодааед. Ðн ҳанӯз заÑ
иÑа наÑÑдааÑÑ!",
"userjspreview": "'''ФаÑÐ¾Ð¼Ó¯Ñ Ð½Ð°ÐºÑнед, ки ÑÑмо ÑаÒÐ°Ñ Ò¶Ð°Ð²Ð°Ð¡ÐºÑипÑи коÑбаÑиаÑонÑо имÑиҳон,пеÑÐ½Ð°Ð¼Ð¾Ð¸Ñ ÐºÐ°Ñда иÑÑодаед ва он ҳанӯз заÑ
иÑа наÑÑдааÑÑ!'''",
- "userinvalidcssjstitle": "'''Ò²ÑÑдоÑ:'''ÐÓ¯ÑÑе бо номи \"$1\" вÑÒ·Ñд надоÑад. Таваҷҷӯҳ кÑнед ки ÑаҳиÑаҳои .css ва .js бо ҳаÑÑҳои Ñ
ÑÑд навиÑÑа меÑаванд, ÐамÑна. {{ns:user}}:ФÑ/vector.css Ð´Ð°Ñ Ð¼ÑÒобили коÑÐ±Ð°Ñ {{ns:user}}:ФÑ/Vector.css.",
+ "userinvalidconfigtitle": "'''Ò²ÑÑдоÑ:'''ÐÓ¯ÑÑе бо номи \"$1\" вÑÒ·Ñд надоÑад. Таваҷҷӯҳ кÑнед ки ÑаҳиÑаҳои .css ва .js бо ҳаÑÑҳои Ñ
ÑÑд навиÑÑа меÑаванд, ÐамÑна. {{ns:user}}:ФÑ/vector.css Ð´Ð°Ñ Ð¼ÑÒобили коÑÐ±Ð°Ñ {{ns:user}}:ФÑ/Vector.css.",
"updated": "(Ðа Ñӯз ÑÑда)",
"note": "'''Ðзоҳ:'''",
"previewnote": "'''Ðа Ñд доÑÑа боÑед, ки ин ÑаÒÐ°Ñ Ð¿ÐµÑÐ½Ð°Ð¼Ð¾Ð¸Ñ Ð°ÑÑ.'''\nТаÒийÑоÑи ÑÑмо ҳанӯз заÑ
иÑа наÑÑдааÑÑ!",
@@ -917,8 +917,6 @@
"newpageletter": "Ðав",
"boteditletter": "б",
"number_of_watching_users_pageview": "[$1 пайгиÑикÑнанда {{PLURAL:$1|коÑбаÑ|коÑбаÑон}}]",
- "rc_categories": "ÐаҳдÑдиÑÑ Ð±Ð° гÑÑӯҳҳо (бо аломаÑи \"|\" Ò·Ñдо кÑнед)",
- "rc_categories_any": "Ò²Ð°Ñ ÐºÐ°Ð´Ð¾Ð¼",
"rc-change-size-new": "$1 {{PLURAL:$1|байÑ}} Ð¿Ð°Ñ Ð°Ð· ÑаÒйиÑ",
"newsectionsummary": "/* $1 */ баÑ
Ñи ҷадид",
"rc-enhanced-expand": "ÐамоиÑи Ò·ÑзÑиÑÑ",
diff --git a/languages/i18n/tg-latn.json b/languages/i18n/tg-latn.json
index effda3db8c..9171657477 100644
--- a/languages/i18n/tg-latn.json
+++ b/languages/i18n/tg-latn.json
@@ -380,7 +380,7 @@
"usercssyoucanpreview": "'''Ezoh:''' PeÅ parvandai CSS jo JS xudro zaxira kuned, bo istifoda az tugmai \"PeÅnamoiÅ\" metavoned onro ozmoiÅ kuned.",
"userjsyoucanpreview": "'''Ezoh:''' PeÅ parvandai CSS jo JS xudro zaxira kuned, bo istifoda az tugmai \"PeÅnamoiÅ\" metavoned onro ozmoiÅ kuned.",
"userjspreview": "'''FaromÅ«Å nakuned, ki Åumo faqat ÃavaSkripti korbariatonro imtihon,peÅnamoiÅ karda istodaed va on hanÅ«z zaxira naÅudaast!'''",
- "userinvalidcssjstitle": "'''HuÅdor:'''PÅ«ste bo nomi \"$1\" vuçud nadorad. Tavaççūh kuned ki sahifahoi .css va .js bo harfhoi xurd naviÅta meÅavand, Namuna. {{ns:user}}:Fu/vector.css dar muqobili korbar {{ns:user}}:Fu/Vector.css.",
+ "userinvalidconfigtitle": "'''HuÅdor:'''PÅ«ste bo nomi \"$1\" vuçud nadorad. Tavaççūh kuned ki sahifahoi .css va .js bo harfhoi xurd naviÅta meÅavand, Namuna. {{ns:user}}:Fu/vector.css dar muqobili korbar {{ns:user}}:Fu/Vector.css.",
"updated": "(Ba rÅ«z Åuda)",
"note": "'''Ezoh:'''",
"previewnote": "'''In faqat peÅnamoiÅ ast; digarguniho holo zaxira naÅudaand!'''",
@@ -668,8 +668,6 @@
"newpageletter": "Nav",
"boteditletter": "b",
"number_of_watching_users_pageview": "[$1 pajgirikunanda {{PLURAL:$1|korbar|korbaron}}]",
- "rc_categories": "Mahdudijat ba gurūhho (bo alomati \"|\" çudo kuned)",
- "rc_categories_any": "Har kadom",
"newsectionsummary": "/* $1 */ baxÅi çadid",
"rc-enhanced-expand": "NamoiÅi çuz'ijot (nijozmand ba Ãava Skript)",
"rc-enhanced-hide": "Pinhoni çuz'ijot",
diff --git a/languages/i18n/th.json b/languages/i18n/th.json
index e163eef57d..fac7ea737b 100644
--- a/languages/i18n/th.json
+++ b/languages/i18n/th.json
@@ -210,7 +210,7 @@
"talkpagelinktext": "à¸à¸¸à¸¢",
"specialpage": "หà¸à¹à¸²à¸à¸´à¹à¸¨à¸©",
"personaltools": "à¹à¸à¸£à¸·à¹à¸à¸à¸¡à¸·à¸à¸ªà¹à¸§à¸à¸à¸±à¸§",
- "talk": "à¸à¸ ิà¸à¸£à¸²à¸¢",
+ "talk": "à¸à¸¸à¸¢",
"views": "à¸à¸¹",
"toolbox": "à¹à¸à¸£à¸·à¹à¸à¸à¸¡à¸·à¸",
"tool-link-userrights": "à¹à¸à¸¥à¸µà¹à¸¢à¸à¸à¸¥à¸¸à¹à¸¡{{GENDER:$1|à¸à¸¹à¹à¹à¸à¹}}",
@@ -664,7 +664,7 @@
"userjspreview": "à¸à¸¶à¸à¸£à¸°à¸¥à¸¶à¸à¸§à¹à¸²à¸à¸¸à¸à¸à¸³à¸¥à¸±à¸à¸à¸à¸ªà¸à¸/à¸à¸¹à¸à¸±à¸§à¸à¸¢à¹à¸²à¸à¸à¸²à¸§à¸²à¸ªà¸à¸£à¸´à¸à¸à¹à¸à¸¹à¹à¹à¸à¹à¸à¸à¸à¸à¸¸à¸\nยัà¸à¹à¸¡à¹à¹à¸à¹à¸à¸±à¸à¸à¸¶à¸!",
"sitecsspreview": "à¸à¸¶à¸à¸£à¸°à¸¥à¸¶à¸à¸§à¹à¸²à¸à¸¸à¸à¹à¸à¸µà¸¢à¸à¸à¸³à¸¥à¸±à¸à¹à¸ªà¸à¸à¸à¸±à¸§à¸à¸¢à¹à¸²à¸ CSS à¸à¸µà¹\nยัà¸à¹à¸¡à¹à¹à¸à¹à¸à¸±à¸à¸à¸¶à¸!",
"sitejspreview": "à¸à¸¶à¸à¸£à¸°à¸¥à¸¶à¸à¸§à¹à¸²à¸à¸¸à¸à¹à¸à¸µà¸¢à¸à¸à¸³à¸¥à¸±à¸à¹à¸ªà¸à¸à¸à¸±à¸§à¸à¸¢à¹à¸²à¸à¹à¸à¹à¸à¸à¸²à¸§à¸²à¸ªà¸à¸£à¸´à¸à¸à¹à¸à¸µà¹\nยัà¸à¹à¸¡à¹à¹à¸à¹à¸à¸±à¸à¸à¸¶à¸!",
- "userinvalidcssjstitle": "à¸à¸³à¹à¸à¸·à¸à¸: à¹à¸¡à¹à¸¡à¸µà¸«à¸à¹à¸²à¸à¸² \"$1\" หà¸à¹à¸² .css à¹à¸¥à¸° .js à¹à¸à¹à¸à¸±à¸§à¹à¸¥à¹à¸à¸à¸±à¹à¸à¸«à¸¡à¸ à¹à¸à¹à¸ {{ns:user}}:Foo/vector.css มิà¹à¸à¹ {{ns:user}}:Foo/Vector.css",
+ "userinvalidconfigtitle": "à¸à¸³à¹à¸à¸·à¸à¸: à¹à¸¡à¹à¸¡à¸µà¸«à¸à¹à¸²à¸à¸² \"$1\" หà¸à¹à¸² .css à¹à¸¥à¸° .js à¹à¸à¹à¸à¸±à¸§à¹à¸¥à¹à¸à¸à¸±à¹à¸à¸«à¸¡à¸ à¹à¸à¹à¸ {{ns:user}}:Foo/vector.css มิà¹à¸à¹ {{ns:user}}:Foo/Vector.css",
"updated": "(à¸à¸£à¸±à¸à¹à¸¥à¹à¸§)",
"note": "หมายà¹à¸«à¸à¸¸:",
"previewnote": "à¸à¸¶à¸à¸£à¸°à¸¥à¸¶à¸à¸§à¹à¸²à¸à¸µà¹à¹à¸à¹à¸à¹à¸à¸µà¸¢à¸à¸à¸²à¸£à¹à¸ªà¸à¸à¸à¸±à¸§à¸à¸¢à¹à¸²à¸\nยัà¸à¹à¸¡à¹à¹à¸à¹à¸à¸±à¸à¸à¸¶à¸à¸à¸²à¸£à¹à¸à¸¥à¸µà¹à¸¢à¸à¹à¸à¸¥à¸à¸à¸à¸à¸à¸¸à¸!",
@@ -1023,7 +1023,7 @@
"prefs-files": "à¹à¸à¸¥à¹",
"prefs-custom-css": "สà¹à¸à¸¥à¹à¸à¸µà¸à¸à¸£à¸±à¸à¹à¸à¹à¸à¹à¸à¸",
"prefs-custom-js": "à¸à¸²à¸§à¸²à¸ªà¸à¸£à¸´à¸à¸à¹à¸à¸£à¸±à¸à¹à¸à¹à¸à¹à¸à¸",
- "prefs-common-css-js": "CSS / à¸à¸²à¸§à¸²à¸ªà¸à¸£à¸´à¸à¸à¹à¸£à¸§à¸¡à¸ªà¸³à¸«à¸£à¸±à¸à¸à¸¸à¸à¸«à¸à¹à¸²à¸à¸²:",
+ "prefs-common-config": "CSS / à¸à¸²à¸§à¸²à¸ªà¸à¸£à¸´à¸à¸à¹à¸£à¸§à¸¡à¸ªà¸³à¸«à¸£à¸±à¸à¸à¸¸à¸à¸«à¸à¹à¸²à¸à¸²:",
"prefs-reset-intro": "à¸à¸¸à¸à¸ªà¸²à¸¡à¸²à¸£à¸à¹à¸à¹à¸«à¸à¹à¸²à¸à¸µà¹à¸à¸±à¹à¸à¸à¸²à¸£à¸à¸±à¹à¸à¸à¹à¸²à¸à¸à¸à¸à¸¸à¸à¹à¸à¹à¸à¸à¹à¸²à¸à¸£à¸´à¸¢à¸²à¸¢à¸à¸à¸à¹à¸§à¹à¸à¹à¸«à¸¡à¹\nà¹à¸¡à¹à¸ªà¸²à¸¡à¸²à¸£à¸à¸à¸³à¸à¸¥à¸±à¸à¹à¸à¹",
"prefs-emailconfirm-label": "à¸à¸²à¸£à¸¢à¸·à¸à¸¢à¸±à¸à¸à¸µà¹à¸¡à¸¥:",
"youremail": "à¸à¸µà¹à¸¡à¸¥:",
@@ -1457,8 +1457,6 @@
"boteditletter": "à¸",
"unpatrolledletter": "!",
"number_of_watching_users_pageview": "[$1 à¸à¸¹à¹à¹à¸à¹à¹à¸à¹à¸²à¸à¸¹]",
- "rc_categories": "à¸à¸³à¸à¸±à¸à¹à¸à¸à¸²à¸°à¸«à¸¡à¸§à¸à¸«à¸¡à¸¹à¹ (à¹à¸¢à¸à¸à¹à¸§à¸¢ \"|\"):",
- "rc_categories_any": "à¸à¸°à¹à¸£à¸à¹à¹à¸à¹à¸à¸µà¹à¹à¸¥à¸·à¸à¸",
"rc-change-size-new": "$1 à¹à¸à¸à¹à¸«à¸¥à¸±à¸à¹à¸à¸¥à¸µà¹à¸¢à¸à¹à¸à¸¥à¸",
"newsectionsummary": "/* $1 */ สà¹à¸§à¸à¹à¸«à¸¡à¹",
"rc-enhanced-expand": "à¹à¸ªà¸à¸à¸£à¸²à¸¢à¸¥à¸°à¹à¸à¸µà¸¢à¸",
@@ -2020,7 +2018,7 @@
"unwatchthispage": "à¹à¸¥à¸´à¸à¹à¸à¹à¸²à¸à¸¹à¸«à¸à¹à¸²à¸à¸µà¹",
"notanarticle": "à¹à¸¡à¹à¹à¸à¹à¸«à¸à¹à¸²à¹à¸à¸·à¹à¸à¸«à¸²",
"notvisiblerev": "รุà¹à¸à¸¥à¹à¸²à¸ªà¸¸à¸à¹à¸à¸¢à¸à¸¹à¹à¹à¸à¹à¸à¸µà¸à¸à¸à¸à¸¹à¸à¸¥à¸à¹à¸¥à¹à¸§",
- "watchlist-details": "มี $1 หà¸à¹à¸²à¹à¸à¸£à¸²à¸¢à¸à¸²à¸£à¹à¸à¹à¸²à¸à¸¹à¸à¸à¸à¸à¸¸à¸ (รวมหà¸à¹à¸²à¸à¸¹à¸à¸à¸¸à¸¢)",
+ "watchlist-details": "มี $1 หà¸à¹à¸²à¹à¸à¸£à¸²à¸¢à¸à¸²à¸£à¹à¸à¹à¸²à¸à¸¹à¸à¸à¸à¸à¸¸à¸ (รวมหà¸à¹à¸²à¸à¸¸à¸¢)",
"wlheader-enotif": "à¹à¸à¸´à¸à¹à¸à¹à¸à¸²à¸à¸à¸²à¸£à¹à¸à¹à¸à¹à¸à¸·à¸à¸à¸à¹à¸²à¸à¸à¸µà¹à¸¡à¸¥",
"wlheader-showupdated": "หà¸à¹à¸²à¸à¸µà¹à¸¡à¸µà¸à¸²à¸£à¹à¸à¸¥à¸µà¹à¸¢à¸à¹à¸à¸¥à¸à¸à¸±à¹à¸à¹à¸à¹à¸à¸¸à¸à¹à¸¢à¸µà¹à¸¢à¸¡à¸à¸£à¸±à¹à¸à¸ªà¸¸à¸à¸à¹à¸²à¸¢à¹à¸ªà¸à¸à¸à¹à¸§à¸¢à¸à¸±à¸§à¸«à¸à¸²",
"wlnote": "à¸à¹à¸²à¸à¸¥à¹à¸²à¸à¹à¸à¹à¸{{PLURAL:$1|à¸à¸²à¸£à¹à¸à¸¥à¸µà¹à¸¢à¸à¹à¸à¸¥à¸à¸«à¸¥à¸±à¸à¸ªà¸¸à¸| $1 à¸à¸²à¸£à¹à¸à¸¥à¸µà¹à¸¢à¸à¹à¸à¸¥à¸à¸«à¸¥à¸±à¸à¸ªà¸¸à¸}} à¹à¸{{PLURAL:$2|à¸à¸±à¹à¸§à¹à¸¡à¸| $2 à¸à¸±à¹à¸§à¹à¸¡à¸}}à¸à¸µà¹à¸«à¸¥à¸±à¸à¸ªà¸¸à¸ à¸à¸à¸à¸¶à¸ $3, $4",
@@ -2061,7 +2059,7 @@
"deletepage": "ลà¸à¸«à¸à¹à¸²",
"confirm": "ยืà¸à¸¢à¸±à¸",
"excontent": "à¹à¸à¸·à¹à¸à¸«à¸²à¹à¸à¸´à¸¡: \"$1\"",
- "excontentauthor": "à¹à¸à¸·à¹à¸à¸«à¸²à¹à¸à¸´à¸¡: \"$1\" à¹à¸¥à¸°à¸¡à¸µà¸à¸¹à¹à¹à¸à¸µà¸¢à¸à¸à¸à¹à¸à¸µà¸¢à¸§à¸à¸·à¸ \"[[Special:Contributions/$2|$2]]\" ([[User talk:$2|à¸à¸¹à¸à¸à¸¸à¸¢]])",
+ "excontentauthor": "à¹à¸à¸·à¹à¸à¸«à¸²à¹à¸à¸´à¸¡: \"$1\" à¹à¸¥à¸°à¸¡à¸µà¸à¸¹à¹à¹à¸à¸µà¸¢à¸à¸à¸à¹à¸à¸µà¸¢à¸§à¸à¸·à¸ \"[[Special:Contributions/$2|$2]]\" ([[User talk:$2|à¸à¸¸à¸¢]])",
"exbeforeblank": "à¹à¸à¸·à¹à¸à¸«à¸²à¸à¹à¸à¸à¸à¸¹à¸à¸à¸³à¸§à¹à¸²à¸à¸à¸·à¸: \"$1\"",
"delete-confirm": "ลภ\"$1\"",
"delete-legend": "ลà¸",
@@ -2093,9 +2091,9 @@
"rollback-missingparam": "à¹à¸à¸à¸³à¸à¸à¹à¸¡à¹à¸¡à¸µà¸à¸±à¸§à¹à¸à¸£à¹à¸ªà¸£à¸´à¸¡à¸à¸µà¹à¸à¹à¸à¸à¸à¸²à¸£",
"rollback-missingrevision": "à¹à¸¡à¹à¸ªà¸²à¸¡à¸²à¸£à¸à¸à¸¶à¸à¸à¹à¸à¸¡à¸¹à¸¥à¸£à¸¸à¹à¸",
"cantrollback": "à¹à¸¡à¹à¸ªà¸²à¸¡à¸²à¸£à¸à¸¢à¹à¸à¸à¸à¸²à¸£à¹à¸à¹à¹à¸à¹à¸à¹ à¸à¸¹à¹à¹à¸à¸µà¸¢à¸à¸à¸à¸¥à¹à¸²à¸ªà¸¸à¸à¹à¸à¹à¸à¸à¸¹à¹à¹à¸à¸µà¸¢à¸à¸à¸à¹à¸à¸µà¸¢à¸§à¸à¸à¸à¸«à¸à¹à¸²à¸à¸µà¹",
- "alreadyrolled": "à¹à¸¡à¹à¸ªà¸²à¸¡à¸²à¸£à¸à¸¢à¹à¸à¸à¸£à¸§à¸à¹à¸à¸µà¸¢à¸§à¸à¸²à¸£à¹à¸à¹à¹à¸à¸ªà¸¸à¸à¸à¹à¸²à¸¢à¹à¸à¸¢ [[User:$2|$2]] ([[User talk:$2|à¸à¸¹à¸à¸à¸¸à¸¢]]{{int:pipe-separator}}[[Special:Contributions/$2|{{int:contribslink}}]]) à¹à¸à¸«à¸à¹à¸² [[:$1]] มีà¸à¸¹à¹à¸à¸·à¹à¸à¹à¸à¹à¹à¸à¹à¹à¸à¸«à¸£à¸·à¸à¸¢à¹à¸à¸à¸£à¸§à¸à¹à¸à¸µà¸¢à¸§à¸«à¸à¹à¸²à¸à¸µà¹à¹à¸à¸à¹à¸à¸à¹à¸¥à¹à¸§\n\nà¸à¸¹à¹à¹à¸à¹à¹à¸à¸¥à¹à¸²à¸ªà¸¸à¸à¸à¸à¸à¸«à¸à¹à¸²à¸à¸µà¹à¸à¸·à¸ [[User:$3|$3]] ([[User talk:$3|à¸à¸¹à¸à¸à¸¸à¸¢]]{{int:pipe-separator}}[[Special:Contributions/$3|{{int:contribslink}}]])",
+ "alreadyrolled": "à¹à¸¡à¹à¸ªà¸²à¸¡à¸²à¸£à¸à¸¢à¹à¸à¸à¸£à¸§à¸à¹à¸à¸µà¸¢à¸§à¸à¸²à¸£à¹à¸à¹à¹à¸à¸ªà¸¸à¸à¸à¹à¸²à¸¢à¹à¸à¸¢ [[User:$2|$2]] ([[User talk:$2|à¸à¸¸à¸¢]]{{int:pipe-separator}}[[Special:Contributions/$2|{{int:contribslink}}]]) à¹à¸à¸«à¸à¹à¸² [[:$1]] มีà¸à¸¹à¹à¸à¸·à¹à¸à¹à¸à¹à¹à¸à¹à¹à¸à¸«à¸£à¸·à¸à¸¢à¹à¸à¸à¸£à¸§à¸à¹à¸à¸µà¸¢à¸§à¸«à¸à¹à¸²à¸à¸µà¹à¹à¸à¸à¹à¸à¸à¹à¸¥à¹à¸§\n\nà¸à¸¹à¹à¹à¸à¹à¹à¸à¸¥à¹à¸²à¸ªà¸¸à¸à¸à¸à¸à¸«à¸à¹à¸²à¸à¸µà¹à¸à¸·à¸ [[User:$3|$3]] ([[User talk:$3|à¸à¸¸à¸¢]]{{int:pipe-separator}}[[Special:Contributions/$3|{{int:contribslink}}]])",
"editcomment": "à¸à¸³à¸à¸à¸´à¸à¸²à¸¢à¸à¸²à¸£à¹à¸à¹à¹à¸à¸à¸·à¸: $1",
- "revertpage": "ยà¹à¸à¸à¸à¸²à¸£à¹à¸à¹à¹à¸à¹à¸à¸¢ [[Special:Contributions/$2|$2]] ([[User talk:$2|Talk]]) à¹à¸à¸¢à¸±à¸à¸£à¸¸à¹à¸à¹à¸à¹à¹à¸à¸¥à¹à¸²à¸ªà¸¸à¸à¹à¸à¸¢ [[User:$1|$1]]",
+ "revertpage": "ยà¹à¸à¸à¸à¸²à¸£à¹à¸à¹à¹à¸à¹à¸à¸¢ [[Special:Contributions/$2|$2]] ([[User talk:$2|à¸à¸¸à¸¢]]) à¹à¸à¸¢à¸±à¸à¸£à¸¸à¹à¸à¹à¸à¹à¹à¸à¸¥à¹à¸²à¸ªà¸¸à¸à¹à¸à¸¢ [[User:$1|$1]]",
"revertpage-nouser": "ยà¹à¸à¸à¸à¸²à¸£à¹à¸à¹à¹à¸à¹à¸à¸¢à¸à¸¹à¹à¹à¸à¹à¹à¸¡à¹à¸£à¸°à¸à¸¸à¸à¸·à¹à¸à¹à¸à¸¢à¸±à¸à¸£à¸¸à¹à¸à¸¥à¹à¸²à¸ªà¸¸à¸à¹à¸à¸¢ {{GENDER:$1|[[User:$1|$1]]}}",
"rollback-success": "ยà¹à¸à¸à¸à¸²à¸£à¹à¸à¹à¹à¸à¹à¸à¸¢ $1; \nà¹à¸à¸¥à¸µà¹à¸¢à¸à¸à¸¥à¸±à¸à¹à¸à¸£à¸¸à¹à¸à¸¥à¹à¸²à¸ªà¸¸à¸à¹à¸à¸¢ $2",
"rollback-success-notify": "ยà¹à¸à¸à¸à¸²à¸£à¹à¸à¹à¹à¸à¹à¸à¸¢ $1;\nà¹à¸à¸¥à¸µà¹à¸¢à¸à¸à¸¥à¸±à¸à¹à¸à¸£à¸¸à¹à¸à¸¥à¹à¸²à¸ªà¸¸à¸à¹à¸à¸¢ $2 [$3 à¹à¸ªà¸à¸à¸à¸²à¸£à¹à¸à¸¥à¸µà¹à¸¢à¸à¹à¸à¸¥à¸]",
@@ -2119,7 +2117,7 @@
"unprotectedarticle-comment": "{{GENDER:$2|}}à¸à¸¥à¸à¸¥à¹à¸à¸ \"[[$1]]\"",
"protect-title": "à¹à¸à¸¥à¸µà¹à¸¢à¸à¸£à¸°à¸à¸±à¸à¸à¸²à¸£à¸¥à¹à¸à¸à¸ªà¸³à¸«à¸£à¸±à¸ \"$1\"",
"protect-title-notallowed": "à¸à¸¹à¸£à¸°à¸à¸±à¸à¸à¸²à¸£à¸¥à¹à¸à¸à¸à¸à¸ \"$1\"",
- "prot_1movedto2": "à¹à¸à¸¥à¸µà¹à¸¢à¸à¸à¸·à¹à¸ [[$1]] à¹à¸à¹à¸ [[$2]]",
+ "prot_1movedto2": "ยà¹à¸²à¸¢ [[$1]] à¹à¸à¹à¸ [[$2]]",
"protect-badnamespace-title": "à¹à¸à¸¡à¸ªà¹à¸à¸à¸¥à¹à¸à¸à¹à¸¡à¹à¹à¸à¹",
"protect-badnamespace-text": "ลà¹à¸à¸à¸«à¸à¹à¸²à¹à¸à¹à¸à¸¡à¸ªà¹à¸à¸à¸à¸µà¹à¹à¸¡à¹à¹à¸à¹",
"protect-norestrictiontypes-text": "หà¸à¹à¸²à¸à¸µà¹à¹à¸¡à¹à¸ªà¸²à¸¡à¸²à¸£à¸à¸à¸¹à¸à¸¥à¹à¸à¸ à¹à¸à¸£à¸²à¸°à¹à¸¡à¹à¸¡à¸µà¸à¸£à¸°à¹à¸ à¸à¸à¸²à¸£à¸à¸³à¸à¸±à¸à¸à¸µà¹à¹à¸à¹à¹à¸à¹",
@@ -2160,7 +2158,7 @@
"maximum-size": "à¸à¸à¸²à¸à¸à¸¢à¹à¸²à¸à¸¡à¸²à¸",
"pagesize": "(à¹à¸à¸à¹)",
"restriction-edit": "à¹à¸à¹à¹à¸",
- "restriction-move": "à¹à¸à¸¥à¸µà¹à¸¢à¸à¸à¸·à¹à¸",
+ "restriction-move": "ยà¹à¸²à¸¢",
"restriction-create": "สรà¹à¸²à¸",
"restriction-upload": "à¸à¸±à¸à¹à¸«à¸¥à¸",
"restriction-level-sysop": "à¸à¹à¸à¸à¸à¸±à¸à¸ªà¸¡à¸à¸¹à¸£à¸à¹",
@@ -2209,7 +2207,7 @@
"tooltip-invert": "à¹à¸¥à¸·à¸à¸à¸à¸¥à¹à¸à¸à¸à¸µà¹à¹à¸à¸·à¹à¸à¸à¹à¸à¸à¸à¸²à¸£à¹à¸à¸¥à¸µà¹à¸¢à¸à¹à¸à¸¥à¸à¹à¸à¸¢à¸±à¸à¸«à¸à¹à¸²à¹à¸à¹à¸à¸¡à¹à¸à¸à¸à¸µà¹à¹à¸¥à¸·à¸à¸ (à¹à¸¥à¸°à¹à¸à¸¡à¸ªà¹à¸à¸à¸à¸µà¹à¹à¸à¸µà¹à¸¢à¸§à¸à¹à¸à¸à¸à¹à¸²à¹à¸¥à¸·à¸à¸)",
"tooltip-whatlinkshere-invert": "à¹à¸¥à¸·à¸à¸à¸à¸¥à¹à¸à¸à¸à¸µà¹à¹à¸à¸·à¹à¸à¸à¹à¸à¸à¸¥à¸´à¸à¸à¹à¸à¸²à¸à¸«à¸à¹à¸²à¹à¸à¹à¸à¸¡à¸ªà¹à¸à¸à¸à¸µà¹à¹à¸¥à¸·à¸à¸",
"namespace_association": "à¹à¸à¸¡à¸ªà¹à¸à¸à¸à¸µà¹à¹à¸à¸µà¹à¸¢à¸§à¸à¹à¸à¸",
- "tooltip-namespace_association": "à¹à¸¥à¸·à¸à¸à¸à¸¥à¹à¸à¸à¸à¸µà¹à¹à¸à¸·à¹à¸à¸£à¸§à¸¡à¹à¸à¸¡à¸ªà¹à¸à¸à¸à¸¹à¸à¸à¸¸à¸¢à¸«à¸£à¸·à¸à¸«à¸±à¸§à¸à¹à¸à¸à¸µà¹à¹à¸à¸µà¹à¸¢à¸§à¸à¹à¸à¸à¸à¸±à¸à¹à¸à¸¡à¸ªà¹à¸à¸à¸à¸µà¹à¹à¸¥à¸·à¸à¸à¸à¹à¸§à¸¢",
+ "tooltip-namespace_association": "à¹à¸¥à¸·à¸à¸à¸à¸¥à¹à¸à¸à¸à¸µà¹à¹à¸à¸·à¹à¸à¸£à¸§à¸¡à¹à¸à¸¡à¸ªà¹à¸à¸à¸à¸¸à¸¢à¸«à¸£à¸·à¸à¹à¸£à¸·à¹à¸à¸à¸à¸µà¹à¹à¸à¸µà¹à¸¢à¸§à¸à¹à¸à¸à¸à¸±à¸à¹à¸à¸¡à¸ªà¹à¸à¸à¸à¸µà¹à¹à¸¥à¸·à¸à¸à¸à¹à¸§à¸¢",
"blanknamespace": "(หลัà¸)",
"contributions": "à¹à¸£à¸·à¹à¸à¸à¸à¸µà¹{{GENDER:$1|à¸à¸¹à¹à¹à¸à¹}}à¸à¸µà¹à¹à¸à¸µà¸¢à¸",
"contributions-title": "à¹à¸£à¸·à¹à¸à¸à¸à¸µà¹à¹à¸à¸µà¸¢à¸à¹à¸à¸¢ $1",
@@ -2229,7 +2227,7 @@
"sp-contributions-deleted": "à¸à¸²à¸£à¹à¸à¹à¹à¸à¸à¸à¸à¸à¸¹à¹à¹à¸à¹à¸à¸µà¹à¸à¸¹à¸à¸¥à¸",
"sp-contributions-uploads": "à¸à¸±à¸à¹à¸«à¸¥à¸",
"sp-contributions-logs": "à¸à¸¹à¸¡",
- "sp-contributions-talk": "à¸à¸¹à¸à¸à¸¸à¸¢",
+ "sp-contributions-talk": "à¸à¸¸à¸¢",
"sp-contributions-userrights": "à¸à¸²à¸£à¸à¸±à¸à¸à¸²à¸£à¸ªà¸´à¸à¸à¸´à¸à¸¹à¹à¹à¸à¹",
"sp-contributions-blocked-notice": "à¸à¸±à¸à¸à¸¸à¸à¸±à¸à¸à¸¹à¹à¹à¸à¹à¸à¸µà¹à¸à¸¹à¸à¸à¸¥à¹à¸à¸\nà¸à¸¹à¸¡à¸à¸²à¸£à¸à¸¥à¹à¸à¸à¸¥à¹à¸²à¸ªà¸¸à¸à¹à¸ªà¸à¸à¸à¹à¸²à¸à¸¥à¹à¸²à¸à¸à¸µà¹à¹à¸à¸·à¹à¸à¸à¸²à¸£à¸à¹à¸²à¸à¸à¸´à¸:",
"sp-contributions-blocked-notice-anon": "à¸à¸±à¸à¸à¸¸à¸à¸±à¸à¹à¸¥à¸à¸à¸µà¹à¸à¸¢à¸¹à¹à¹à¸à¸à¸µà¸à¸µà¹à¸à¸¹à¸à¸à¸¥à¹à¸à¸\nà¸à¸¹à¸¡à¸à¸²à¸£à¸à¸¥à¹à¸à¸à¸¥à¹à¸²à¸ªà¸¸à¸à¹à¸ªà¸à¸à¸à¹à¸²à¸à¸¥à¹à¸²à¸à¸à¸µà¹à¹à¸à¸·à¹à¸à¸à¸²à¸£à¸à¹à¸²à¸à¸à¸´à¸:",
@@ -2341,7 +2339,7 @@
"block-log-flags-nocreate": "à¸à¸´à¸à¹à¸à¹à¸à¸²à¸à¸à¸²à¸£à¸ªà¸£à¹à¸²à¸à¸à¸±à¸à¸à¸µ",
"block-log-flags-noautoblock": "à¸à¸´à¸à¹à¸à¹à¸à¸²à¸à¸à¸²à¸£à¸à¸¥à¹à¸à¸à¸à¸±à¸à¹à¸à¸¡à¸±à¸à¸´",
"block-log-flags-noemail": "à¸à¸´à¸à¹à¸à¹à¸à¸²à¸à¸à¸µà¹à¸¡à¸¥",
- "block-log-flags-nousertalk": "à¹à¸¡à¹à¸ªà¸²à¸¡à¸²à¸£à¸à¹à¸à¹à¹à¸à¸«à¸à¹à¸²à¸à¸¹à¸à¸à¸¸à¸¢à¸à¸à¸à¸à¸à¹à¸à¸",
+ "block-log-flags-nousertalk": "à¹à¸¡à¹à¸ªà¸²à¸¡à¸²à¸£à¸à¹à¸à¹à¹à¸à¸«à¸à¹à¸²à¸à¸¸à¸¢à¸à¸±à¸à¸à¸¹à¹à¹à¸à¹à¸à¸à¸à¸à¸à¹à¸à¸",
"block-log-flags-angry-autoblock": "à¸à¸²à¸£à¸à¸¥à¹à¸à¸à¸à¸±à¸à¹à¸à¸¡à¸±à¸à¸´à¸à¸±à¹à¸à¸ªà¸¹à¸à¹à¸à¸´à¸à¹à¸à¹à¸à¸²à¸",
"block-log-flags-hiddenname": "à¸à¸·à¹à¸à¸à¸¹à¹à¹à¸à¹à¸à¸¹à¸à¸à¹à¸à¸",
"range_block_disabled": "à¸à¸²à¸£à¸à¸¥à¹à¸à¸à¸à¹à¸§à¸à¹à¸à¸à¸µà¸à¸à¸à¸à¸¹à¹à¸à¸¹à¹à¸¥à¸£à¸°à¸à¸à¸à¸¹à¸à¸à¸´à¸à¹à¸à¹à¸à¸²à¸",
@@ -2382,10 +2380,10 @@
"databasenotlocked": "à¸à¸²à¸à¸à¹à¸à¸¡à¸¹à¸¥à¹à¸¡à¹à¹à¸à¹à¸¥à¹à¸à¸",
"lockedbyandtime": "(à¹à¸à¸¢ {{GENDER:$1|$1}} à¹à¸¡à¸·à¹à¸à¸§à¸±à¸à¸à¸µà¹ $2 à¹à¸§à¸¥à¸² $3)",
"move-page": "ยà¹à¸²à¸¢ $1",
- "move-page-legend": "à¹à¸à¸¥à¸µà¹à¸¢à¸à¸à¸·à¹à¸",
+ "move-page-legend": "ยà¹à¸²à¸¢à¸«à¸à¹à¸²",
"movepagetext": "à¸à¸²à¸£à¹à¸à¹à¹à¸à¸à¸à¹à¸²à¸à¸¥à¹à¸²à¸à¸à¸°à¹à¸à¸¥à¸µà¹à¸¢à¸à¸à¸·à¹à¸à¸«à¸à¹à¸² à¹à¸¥à¸°à¸¢à¹à¸²à¸¢à¸à¸£à¸°à¸§à¸±à¸à¸´à¸à¸±à¹à¸à¸«à¸¡à¸à¹à¸à¸à¸·à¹à¸à¹à¸«à¸¡à¹\nà¸à¸·à¹à¸à¹à¸£à¸·à¹à¸à¸à¹à¸à¹à¸²à¸à¸°à¸à¸¥à¸²à¸¢à¹à¸à¹à¸à¸«à¸à¹à¸²à¹à¸à¸¥à¸µà¹à¸¢à¸à¸à¸²à¸à¹à¸à¸à¸·à¹à¸à¹à¸£à¸·à¹à¸à¸à¹à¸«à¸¡à¹\nà¸à¸¸à¸à¸ªà¸²à¸¡à¸²à¸£à¸à¸à¸£à¸±à¸à¸à¸²à¸£à¹à¸à¸¥à¸µà¹à¸¢à¸à¸à¸²à¸à¸à¸¶à¹à¸à¸à¸µà¹à¹à¸à¸¢à¸±à¸à¸à¸·à¹à¸à¹à¸£à¸·à¹à¸à¸à¹à¸à¸´à¸¡à¹à¸à¹à¸à¸±à¸à¹à¸à¸¡à¸±à¸à¸´\nà¹à¸à¹à¸«à¸²à¸à¸à¸¸à¸à¹à¸¥à¸·à¸à¸à¹à¸¡à¹à¸à¸³à¹à¸à¹à¸à¸à¸±à¹à¸ à¹à¸«à¹à¹à¸à¹à¹à¸à¸§à¹à¸²à¸à¸£à¸§à¸à¸ªà¸à¸[[Special:DoubleRedirects|หà¸à¹à¸²à¹à¸à¸¥à¸µà¹à¸¢à¸à¸à¸²à¸à¸à¹à¸³à¸à¹à¸à¸]]หรืà¸[[Special:BrokenRedirects|หà¸à¹à¸²à¹à¸à¸¥à¸µà¹à¸¢à¸à¸à¸²à¸à¹à¸ªà¸µà¸¢]]\nà¸à¸¸à¸à¹à¸à¹à¸à¸à¸¹à¹à¸£à¸±à¸à¸à¸´à¸à¸à¸à¸à¹à¸à¸·à¹à¸à¹à¸«à¹à¹à¸à¹à¹à¸à¸§à¹à¸²à¸¥à¸´à¸à¸à¹à¸à¹à¸²à¸ ๠ยัà¸à¸à¸µà¹à¹à¸à¸¢à¸±à¸à¸à¸µà¹à¸à¸µà¹à¸ªà¸¡à¸à¸§à¸£\n\nà¹à¸à¸£à¸à¸à¸£à¸²à¸à¸§à¹à¸²à¸«à¸à¹à¸²à¸à¸±à¸à¸à¸¥à¹à¸²à¸§à¸à¸°à¹à¸¡à¹à¸à¸¹à¸à¸¢à¹à¸²à¸¢ à¸à¹à¸²à¸¡à¸µà¸«à¸à¹à¸²à¸à¸µà¹à¹à¸à¹à¸à¸·à¹à¸à¹à¸£à¸·à¹à¸à¸à¹à¸«à¸¡à¹à¹à¸¥à¹à¸§ à¹à¸§à¹à¸à¹à¸à¹à¸«à¸à¹à¸²à¸à¸±à¹à¸à¹à¸à¹à¸à¸«à¸à¹à¸²à¹à¸à¸¥à¸µà¹à¸¢à¸à¸à¸²à¸ à¹à¸¥à¸°à¹à¸¡à¹à¸¡à¸µà¸à¸£à¸°à¸§à¸±à¸à¸´à¸à¸²à¸£à¹à¸à¹à¹à¸à¹à¸à¸à¸à¸µà¸\nà¸à¸¶à¹à¸à¸«à¸¡à¸²à¸¢à¸à¸§à¸²à¸¡à¸§à¹à¸² à¸à¸¸à¸à¸ªà¸²à¸¡à¸²à¸£à¸à¹à¸à¸¥à¸µà¹à¸¢à¸à¸à¸·à¹à¸à¸«à¸à¹à¸²à¸à¸¥à¸±à¸à¹à¸à¹à¸à¸à¸·à¹à¸à¹à¸à¸´à¸¡à¹à¸à¹à¸«à¸²à¸à¸à¸¸à¸à¸à¸³à¸à¸´à¸à¸à¸¥à¸²à¸ à¹à¸¥à¸°à¸à¸¸à¸à¹à¸¡à¹à¸ªà¸²à¸¡à¸²à¸£à¸à¹à¸à¸µà¸¢à¸à¸à¸±à¸à¸«à¸à¹à¸²à¸à¸µà¹à¸¡à¸µà¸à¸¢à¸¹à¹à¹à¸¥à¹à¸§à¹à¸à¹\n\nà¸à¸³à¹à¸à¸·à¸à¸!\nสิà¹à¸à¸à¸µà¹à¸à¸²à¸à¹à¸à¹à¸à¸à¸²à¸£à¹à¸à¸¥à¸µà¹à¸¢à¸à¹à¸à¸¥à¸à¸à¸µà¹à¸£à¸¸à¸à¹à¸£à¸à¹à¸¥à¸°à¹à¸¡à¹à¸à¸²à¸à¸à¸´à¸à¸ªà¸³à¸«à¸£à¸±à¸à¸«à¸à¹à¸²à¸à¸µà¹à¹à¸à¹à¸à¸à¸µà¹à¸à¸´à¸¢à¸¡\nà¹à¸à¸£à¸à¹à¸«à¹à¹à¸à¹à¹à¸à¸§à¹à¸²à¸à¸¸à¸à¹à¸à¹à¸²à¹à¸à¸à¸¥à¸¥à¸±à¸à¸à¹à¸à¸µà¹à¸à¹à¸à¸à¸à¸³à¹à¸à¸´à¸à¸à¸²à¸£",
"movepagetext-noredirectfixer": "à¸à¸²à¸£à¹à¸à¹à¹à¸à¸à¸à¹à¸²à¸à¸¥à¹à¸²à¸à¸à¸°à¹à¸à¸¥à¸µà¹à¸¢à¸à¸à¸·à¹à¸à¸«à¸à¹à¸² à¸à¸¶à¹à¸à¸à¸°à¸à¸³à¹à¸«à¹à¸à¸£à¸°à¸§à¸±à¸à¸´à¸à¸±à¹à¸à¸«à¸¡à¸à¸¢à¹à¸²à¸¢à¹à¸à¸¢à¸±à¸à¸à¸·à¹à¸à¹à¸«à¸¡à¹\nà¸à¸·à¹à¸à¹à¸£à¸·à¹à¸à¸à¹à¸à¹à¸²à¸à¸°à¸à¸¥à¸²à¸¢à¹à¸à¹à¸à¸«à¸à¹à¸²à¹à¸à¸¥à¸µà¹à¸¢à¸à¸à¸²à¸à¹à¸à¸¢à¸±à¸à¸à¸·à¹à¸à¹à¸£à¸·à¹à¸à¸à¹à¸«à¸¡à¹\nà¹à¸«à¹à¹à¸à¹à¹à¸à¸§à¹à¸² à¸à¸£à¸§à¸à¸ªà¸à¸[[Special:DoubleRedirects|หà¸à¹à¸²à¹à¸à¸¥à¸µà¹à¸¢à¸à¸à¸²à¸à¸à¹à¸³à¸à¹à¸à¸]]หรืà¸[[Special:BrokenRedirects|หà¸à¹à¸²à¹à¸à¸¥à¸µà¹à¸¢à¸à¸à¸²à¸à¸à¸µà¹à¹à¸ªà¸µà¸¢]]\nà¸à¸¸à¸à¸à¸°à¹à¸à¹à¸à¸à¸¹à¹à¸£à¸±à¸à¸à¸´à¸à¸à¸à¸à¹à¸à¸·à¹à¸à¹à¸«à¹à¹à¸à¹à¹à¸à¸§à¹à¸²à¸¥à¸´à¸à¸à¹à¸à¹à¸²à¸ ๠ยัà¸à¸à¸µà¹à¹à¸à¸¢à¸±à¸à¸à¸µà¹à¸à¸µà¹à¸ªà¸¡à¸à¸§à¸£\n\nà¹à¸à¸£à¸à¸à¸£à¸²à¸à¸§à¹à¸²à¸«à¸à¹à¸²à¸à¸±à¸à¸à¸¥à¹à¸²à¸§à¸à¸°'''à¹à¸¡à¹'''à¸à¸¹à¸à¸¢à¹à¸²à¸¢ à¸à¹à¸²à¸¡à¸µà¸«à¸à¹à¸²à¸à¸µà¹à¹à¸à¹à¸à¸·à¹à¸à¹à¸£à¸·à¹à¸à¸à¹à¸«à¸¡à¹à¸à¸¢à¸¹à¹à¹à¸¥à¹à¸§ à¹à¸§à¹à¸à¹à¸à¹à¹à¸à¹à¸à¸«à¸à¹à¸²à¸§à¹à¸²à¸à¸«à¸£à¸·à¸à¸«à¸à¹à¸²à¹à¸à¸¥à¸µà¹à¸¢à¸à¸à¸²à¸ à¹à¸¥à¸°à¹à¸¡à¹à¸¡à¸µà¸à¸£à¸°à¸§à¸±à¸à¸´à¸à¸²à¸£à¹à¸à¹à¹à¸à¹à¸à¸à¸à¸µà¸\nà¸à¸¶à¹à¸à¸«à¸¡à¸²à¸¢à¸à¸§à¸²à¸¡à¸§à¹à¸² à¸à¸¸à¸à¸ªà¸²à¸¡à¸²à¸£à¸à¹à¸à¸¥à¸µà¹à¸¢à¸à¸à¸·à¹à¸à¸«à¸à¹à¸²à¸à¸¥à¸±à¸à¹à¸à¹à¸à¸à¸·à¹à¸à¹à¸à¸´à¸¡à¹à¸à¹à¸«à¸²à¸à¸à¸¸à¸à¸à¸³à¸à¸´à¸à¸à¸¥à¸²à¸ à¹à¸¥à¸°à¸à¸¸à¸à¹à¸¡à¹à¸ªà¸²à¸¡à¸²à¸£à¸à¹à¸à¸µà¸¢à¸à¸à¸±à¸à¸«à¸à¹à¸²à¸à¸µà¹à¸¡à¸µà¸à¸¢à¸¹à¹à¹à¸¥à¹à¸§à¹à¸à¹\n\n'''à¸à¸³à¹à¸à¸·à¸à¸!'''\nสิà¹à¸à¸à¸µà¹à¸à¸²à¸à¹à¸à¹à¸à¸à¸²à¸£à¹à¸à¸¥à¸µà¹à¸¢à¸à¹à¸à¸¥à¸à¸à¸µà¹à¸£à¸¸à¸à¹à¸£à¸à¹à¸¥à¸°à¹à¸¡à¹à¸à¸²à¸à¸à¸´à¸à¸ªà¸³à¸«à¸£à¸±à¸à¸«à¸à¹à¸²à¸à¸µà¹à¹à¸à¹à¸à¸à¸µà¹à¸à¸´à¸¢à¸¡\nà¹à¸à¸£à¸à¹à¸à¹à¹à¸à¸§à¹à¸²à¸à¸¸à¸à¹à¸à¹à¸²à¹à¸à¸à¸¶à¸à¸à¸¥à¸¥à¸±à¸à¸à¹à¸à¸µà¹à¸à¹à¸à¸à¸à¸µà¹à¸à¸°à¸à¸³à¹à¸à¸´à¸à¸à¸²à¸£à¸à¹à¸à¹à¸",
- "movepagetalktext": "หาà¸à¸à¸¸à¸à¹à¸¥à¸·à¸à¸à¸à¸¥à¹à¸à¸à¸à¸µà¹ หà¸à¹à¸²à¸à¸¹à¸à¸à¸¸à¸¢à¸à¸à¸à¸«à¸à¹à¸²à¸à¸µà¹à¸à¸°à¸à¸¹à¸à¸¢à¹à¸²à¸¢à¹à¸à¸à¸·à¹à¸à¹à¸£à¸·à¹à¸à¸à¹à¸«à¸¡à¹à¹à¸à¸¢à¸à¸±à¸à¹à¸à¸¡à¸±à¸à¸´à¹à¸§à¹à¸à¹à¸à¹à¸à¸¥à¸²à¸¢à¸à¸²à¸à¸¡à¸µà¸«à¸à¹à¸²à¸à¸¹à¸à¸à¸¸à¸¢à¹à¸¡à¹à¸§à¹à¸²à¸à¹à¸¥à¹à¸§\n\nà¹à¸à¸à¸£à¸à¸µà¹à¸«à¸¥à¹à¸²à¸à¸µà¹ à¸à¸¸à¸à¸à¸°à¸à¹à¸à¸à¸¢à¹à¸²à¸¢à¸«à¸£à¸·à¸à¸à¸ªà¸²à¸à¸«à¸à¹à¸²à¹à¸à¸à¸«à¸²à¸à¸à¹à¸à¸à¸à¸²à¸£",
+ "movepagetalktext": "หาà¸à¸à¸¸à¸à¹à¸¥à¸·à¸à¸à¸à¸¥à¹à¸à¸à¸à¸µà¹ หà¸à¹à¸²à¸à¸¸à¸¢à¸à¸à¸à¸«à¸à¹à¸²à¸à¸µà¹à¸à¸°à¸à¸¹à¸à¸¢à¹à¸²à¸¢à¹à¸à¸à¸·à¹à¸à¹à¸£à¸·à¹à¸à¸à¹à¸«à¸¡à¹à¹à¸à¸¢à¸à¸±à¸à¹à¸à¸¡à¸±à¸à¸´à¹à¸§à¹à¸à¹à¸à¹à¸à¸¥à¸²à¸¢à¸à¸²à¸à¸¡à¸µà¸«à¸à¹à¸²à¸à¸¸à¸¢à¹à¸¡à¹à¸§à¹à¸²à¸à¹à¸¥à¹à¸§\n\nà¹à¸à¸à¸£à¸à¸µà¹à¸«à¸¥à¹à¸²à¸à¸µà¹ à¸à¸¸à¸à¸à¸°à¸à¹à¸à¸à¸¢à¹à¸²à¸¢à¸«à¸£à¸·à¸à¸à¸ªà¸²à¸à¸«à¸à¹à¸²à¹à¸à¸à¸«à¸²à¸à¸à¹à¸à¸à¸à¸²à¸£",
"moveuserpage-warning": "à¸à¸³à¹à¸à¸·à¸à¸: à¸à¸¸à¸à¸à¸³à¸¥à¸±à¸à¸¢à¹à¸²à¸¢à¸«à¸à¹à¸²à¸à¸¹à¹à¹à¸à¹ à¹à¸à¸£à¸à¸à¸£à¸²à¸à¸§à¹à¸²à¸«à¸à¹à¸²à¸à¸¹à¹à¹à¸à¹à¹à¸à¹à¸²à¸à¸±à¹à¸à¸à¸µà¹à¸à¸°à¸à¸¹à¸à¹à¸à¸¥à¸µà¹à¸¢à¸à¸à¸·à¹à¸ à¹à¸à¹à¸à¸¹à¹à¹à¸à¹à¸à¸°à¹à¸¡à¹à¸à¸¹à¸à¹à¸à¸¥à¸µà¹à¸¢à¸à¸à¸·à¹à¸",
"movecategorypage-warning": "à¸à¸³à¹à¸à¸·à¸à¸: à¸à¸¸à¸à¸à¸³à¸¥à¸±à¸à¸¢à¹à¸²à¸¢à¸«à¸à¹à¸²à¸«à¸¡à¸§à¸à¸«à¸¡à¸¹à¹ à¹à¸à¸£à¸à¸à¸£à¸²à¸à¸§à¹à¸² à¸à¸°à¸¢à¹à¸²à¸¢à¹à¸à¸à¸²à¸°à¸«à¸à¹à¸²à¹à¸¥à¸°à¸à¸¸à¸à¸«à¸à¹à¸²à¹à¸à¸«à¸¡à¸§à¸à¸«à¸¡à¸¹à¹à¹à¸à¹à¸²à¸à¸°à¹à¸¡à¹à¸à¸¹à¸à¸à¸±à¸à¹à¸à¹à¸²à¸«à¸¡à¸§à¸à¸«à¸¡à¸¹à¹à¹à¸«à¸¡à¹",
"movenologintext": "à¸à¹à¸²à¸à¹à¸à¸à¸à¸²à¸£à¹à¸à¸¥à¸µà¹à¸¢à¸à¸à¸·à¹à¸à¸«à¸à¹à¸²à¸à¸µà¹ à¸à¹à¸à¸à¹à¸à¹à¸à¸à¸¹à¹à¹à¸à¹à¸¥à¸à¸à¸°à¹à¸à¸µà¸¢à¸à¹à¸¥à¸°[[Special:UserLogin|ลà¹à¸à¸à¸à¸´à¸]]",
@@ -2398,25 +2396,25 @@
"namespace-nosubpages": "à¹à¸à¸¡à¸ªà¹à¸à¸ \"$1\" à¹à¸¡à¹à¸à¸à¸¸à¸à¸²à¸à¹à¸«à¹à¸¡à¸µà¸«à¸à¹à¸²à¸¢à¹à¸à¸¢",
"newtitle": "à¸à¸·à¹à¸à¹à¸£à¸·à¹à¸à¸à¹à¸«à¸¡à¹:",
"move-watch": "à¹à¸à¹à¸²à¸à¸¹à¸«à¸à¹à¸²à¸à¹à¸à¸à¸²à¸à¹à¸¥à¸°à¸«à¸à¹à¸²à¸à¸¥à¸²à¸¢à¸à¸²à¸",
- "movepagebtn": "à¹à¸à¸¥à¸µà¹à¸¢à¸à¸à¸·à¹à¸",
- "pagemovedsub": "à¹à¸à¸¥à¸µà¹à¸¢à¸à¸à¸·à¹à¸à¸ªà¸³à¹à¸£à¹à¸",
+ "movepagebtn": "ยà¹à¸²à¸¢à¸«à¸à¹à¸²",
+ "pagemovedsub": "ยà¹à¸²à¸¢à¸ªà¸³à¹à¸£à¹à¸",
"movepage-moved": "à¹à¸à¸¥à¸µà¹à¸¢à¸à¸à¸·à¹à¸ \"$1\" à¹à¸à¹à¸ \"$2\" à¹à¸¥à¹à¸§",
"movepage-moved-redirect": "สรà¹à¸²à¸à¸«à¸à¹à¸²à¹à¸à¸¥à¸µà¹à¸¢à¸à¸à¸²à¸à¹à¸¥à¹à¸§",
"movepage-moved-noredirect": "à¸à¸²à¸£à¸ªà¸£à¹à¸²à¸à¸«à¸à¹à¸²à¹à¸à¸¥à¸µà¹à¸¢à¸à¸à¸²à¸à¸à¸¹à¸à¸£à¸°à¸à¸±à¸",
"articleexists": "หà¸à¹à¸²à¸à¸µà¹à¸à¹à¸à¸à¸à¸²à¸£à¸¡à¸µà¸à¸¢à¸¹à¹à¹à¸¥à¹à¸§ หรืà¸à¸à¸·à¹à¸à¸à¸µà¹à¹à¸¥à¸·à¸à¸à¹à¸¡à¹à¸à¸¹à¸à¸à¹à¸à¸ à¸à¸£à¸¸à¸à¸²à¹à¸¥à¸·à¸à¸à¸à¸·à¹à¸à¹à¸«à¸¡à¹",
"cantmove-titleprotected": "à¸à¸¸à¸à¹à¸¡à¹à¸ªà¸²à¸¡à¸²à¸£à¸à¹à¸à¸¥à¸µà¹à¸¢à¸à¸à¸·à¹à¸à¸«à¸à¹à¸²à¹à¸à¹à¸à¸à¸·à¹à¸à¸à¸µà¹à¹à¸à¹ à¹à¸à¸·à¹à¸à¸à¸à¸²à¸à¸à¸·à¹à¸à¹à¸£à¸·à¹à¸à¸à¹à¸«à¸¡à¹à¸à¸¹à¸à¸à¹à¸à¸à¸à¸±à¸à¸¡à¸´à¹à¸«à¹à¸ªà¸£à¹à¸²à¸",
- "movetalk": "à¹à¸à¸¥à¸µà¹à¸¢à¸à¸à¸·à¹à¸à¸«à¸à¹à¸²à¸à¸¹à¸à¸à¸¸à¸¢à¸à¸µà¹à¸ªà¸±à¸¡à¸à¸±à¸à¸à¹",
+ "movetalk": "ยà¹à¸²à¸¢à¸«à¸à¹à¸²à¸à¸¸à¸¢à¸à¸µà¹à¸ªà¸±à¸¡à¸à¸±à¸à¸à¹",
"move-subpages": "ยà¹à¸²à¸¢à¸«à¸à¹à¸²à¸¢à¹à¸à¸¢à¸à¸±à¹à¸à¸«à¸¡à¸ (มาà¸à¸ªà¸¸à¸ $1 หà¸à¹à¸²)",
- "move-talk-subpages": "ยà¹à¸²à¸¢à¸«à¸à¹à¸²à¸¢à¹à¸à¸¢à¸à¸±à¹à¸à¸«à¸¡à¸à¸à¸à¸à¸«à¸à¹à¸²à¸à¸ ิà¸à¸£à¸²à¸¢ (มาà¸à¸ªà¸¸à¸ $1 หà¸à¹à¸²)",
+ "move-talk-subpages": "ยà¹à¸²à¸¢à¸«à¸à¹à¸²à¸¢à¹à¸à¸¢à¸à¸±à¹à¸à¸«à¸¡à¸à¸à¸à¸à¸«à¸à¹à¸²à¸à¸¸à¸¢ (มาà¸à¸ªà¸¸à¸ $1 หà¸à¹à¸²)",
"movepage-page-exists": "มีหà¸à¹à¸² $1 à¸à¸¢à¸¹à¹à¹à¸¥à¹à¸§à¹à¸¥à¸°à¹à¸¡à¹à¸ªà¸²à¸¡à¸²à¸£à¸à¸à¸±à¸à¸à¸¶à¸à¸à¸±à¸à¸à¸±à¸à¹à¸à¸¡à¸±à¸à¸´",
- "movepage-page-moved": "à¹à¸à¸¥à¸µà¹à¸¢à¸à¸à¸·à¹à¸à¸«à¸à¹à¸² $1 à¹à¸à¹à¸ $2 à¹à¸¥à¹à¸§",
+ "movepage-page-moved": "ยà¹à¸²à¸¢à¸«à¸à¹à¸² $1 à¹à¸à¹à¸ $2 à¹à¸¥à¹à¸§",
"movepage-page-unmoved": "à¹à¸¡à¹à¸ªà¸²à¸¡à¸²à¸£à¸à¹à¸à¸¥à¸µà¹à¸¢à¸à¸à¸·à¹à¸à¸«à¸à¹à¸² $1 à¹à¸à¹à¸ $2",
- "movepage-max-pages": "à¹à¸à¸¥à¸µà¹à¸¢à¸à¸à¸·à¹à¸à¸«à¸à¹à¸²à¸¡à¸²à¸à¸ªà¸¸à¸ $1 หà¸à¹à¸²à¹à¸¥à¹à¸§à¹à¸¥à¸°à¸à¸°à¹à¸¡à¹à¹à¸à¸¥à¸µà¹à¸¢à¸à¸à¸·à¹à¸à¸«à¸à¹à¸²à¹à¸à¸´à¹à¸¡à¸à¸µà¸à¸à¸±à¸à¹à¸à¸¡à¸±à¸à¸´",
+ "movepage-max-pages": "ยà¹à¸²à¸¢à¸«à¸à¹à¸²à¸¡à¸²à¸à¸ªà¸¸à¸ $1 หà¸à¹à¸²à¹à¸¥à¹à¸§à¹à¸¥à¸°à¸à¸°à¹à¸¡à¹à¸¢à¹à¸²à¸¢à¸«à¸à¹à¸²à¹à¸à¸´à¹à¸¡à¸à¸µà¸à¸à¸±à¸à¹à¸à¸¡à¸±à¸à¸´",
"movelogpage": "à¸à¸¹à¸¡à¸à¸²à¸£à¹à¸à¸¥à¸µà¹à¸¢à¸à¸à¸·à¹à¸",
"movelogpagetext": "à¸à¹à¸²à¸à¸¥à¹à¸²à¸à¹à¸à¹à¸à¸£à¸²à¸¢à¸à¸²à¸£à¸à¸²à¸£à¹à¸à¸¥à¸µà¹à¸¢à¸à¸à¸·à¹à¸à¸à¸±à¹à¸à¸«à¸¡à¸",
"movesubpage": "{{PLURAL:$1|หà¸à¹à¸²à¸¢à¹à¸à¸¢|หà¸à¹à¸²à¸¢à¹à¸à¸¢}}",
"movesubpagetext": "หà¸à¹à¸²à¸à¸µà¹à¸¡à¸µà¸«à¸à¹à¸²à¸¢à¹à¸à¸¢ $1 หà¸à¹à¸² à¸à¸±à¸à¸à¹à¸²à¸à¸¥à¹à¸²à¸",
- "movesubpagetalktext": "หà¸à¹à¸²à¸à¸¹à¸à¸à¸¸à¸¢à¸à¸µà¹à¸ªà¸±à¸¡à¸à¸±à¸à¸à¹à¸¡à¸µ $1 หà¸à¹à¸²à¸¢à¹à¸à¸¢ à¸à¸±à¸à¹à¸ªà¸à¸à¸à¹à¸²à¸à¸¥à¹à¸²à¸",
+ "movesubpagetalktext": "หà¸à¹à¸²à¸à¸¸à¸¢à¸à¸µà¹à¸ªà¸±à¸¡à¸à¸±à¸à¸à¹à¸¡à¸µ $1 หà¸à¹à¸²à¸¢à¹à¸à¸¢ à¸à¸±à¸à¹à¸ªà¸à¸à¸à¹à¸²à¸à¸¥à¹à¸²à¸",
"movenosubpage": "หà¸à¹à¸²à¸à¸µà¹à¹à¸¡à¹à¸¡à¸µà¸«à¸à¹à¸²à¸¢à¹à¸à¸¢",
"movereason": "à¹à¸«à¸à¸¸à¸à¸¥:",
"revertmove": "ยà¹à¸à¸",
@@ -2525,7 +2523,7 @@
"javascripttest-qunit-intro": "à¸à¸¹[$1 à¹à¸à¸à¸ªà¸²à¸£à¸à¸³à¸à¸±à¸à¸à¸²à¸£à¸à¸à¸ªà¸à¸]à¸à¸ mediawiki.org",
"tooltip-pt-userpage": "{{GENDER:|หà¸à¹à¸²à¸à¸¹à¹à¹à¸à¹}}à¸à¸à¸à¸à¸¸à¸",
"tooltip-pt-anonuserpage": "หà¸à¹à¸²à¸à¸¹à¹à¹à¸à¹à¸à¸à¸à¹à¸¥à¸à¸à¸µà¹à¸à¸¢à¸¹à¹à¹à¸à¸à¸µà¸à¸µà¹à¸à¸¸à¸à¸à¸³à¸¥à¸±à¸à¹à¸à¹à¹à¸à¹à¹à¸",
- "tooltip-pt-mytalk": "หà¸à¹à¸²à¸à¸¹à¸à¸à¸¸à¸¢{{GENDER:|à¸à¸à¸à¸à¸¸à¸}}",
+ "tooltip-pt-mytalk": "หà¸à¹à¸²à¸à¸¸à¸¢{{GENDER:|à¸à¸à¸à¸à¸¸à¸}}",
"tooltip-pt-anontalk": "à¸à¸ ิà¸à¸£à¸²à¸¢à¹à¸à¸µà¹à¸¢à¸§à¸à¸±à¸à¸à¸²à¸£à¹à¸à¹à¹à¸à¸à¸²à¸à¹à¸¥à¸à¸à¸µà¹à¸à¸¢à¸¹à¹à¹à¸à¸à¸µà¸à¸µà¹",
"tooltip-pt-preferences": "à¸à¸²à¸£à¸à¸±à¹à¸à¸à¹à¸²{{GENDER:|à¸à¸à¸à¸à¸¸à¸}}",
"tooltip-pt-watchlist": "รายà¸à¸²à¸£à¸«à¸à¹à¸²à¸à¸µà¹à¸à¸¸à¸à¸à¸³à¸¥à¸±à¸à¹à¸à¹à¸²à¸à¸¹à¸à¸²à¸£à¹à¸à¸¥à¸µà¹à¸¢à¸à¹à¸à¸¥à¸",
@@ -2544,7 +2542,7 @@
"tooltip-ca-unprotect": "à¹à¸à¸¥à¸µà¹à¸¢à¸à¸à¸²à¸£à¸à¹à¸à¸à¸à¸±à¸à¸«à¸à¹à¸²à¸à¸µà¹",
"tooltip-ca-delete": "ลà¸à¸«à¸à¹à¸²à¸à¸µà¹",
"tooltip-ca-undelete": "à¸à¸¹à¹à¸à¸·à¸à¸à¸²à¸£à¹à¸à¹à¹à¸à¸«à¸à¹à¸²à¸à¸µà¹à¸à¸¥à¸±à¸à¸¡à¸²à¹à¸à¹à¸à¸£à¸¸à¹à¸à¸à¹à¸à¸à¸à¸µà¹à¸à¸¹à¸à¸¥à¸",
- "tooltip-ca-move": "à¹à¸à¸¥à¸µà¹à¸¢à¸à¸à¸·à¹à¸à¸«à¸à¹à¸²à¸à¸µà¹",
+ "tooltip-ca-move": "ยà¹à¸²à¸¢à¸«à¸à¹à¸²à¸à¸µà¹",
"tooltip-ca-watch": "à¹à¸à¸´à¹à¸¡à¸«à¸à¹à¸²à¸à¸µà¹à¹à¸à¹à¸²à¸£à¸²à¸¢à¸à¸²à¸£à¹à¸à¹à¸²à¸à¸¹",
"tooltip-ca-unwatch": "à¸à¸³à¸«à¸à¹à¸²à¸à¸µà¹à¸à¸à¸à¸à¸²à¸à¸£à¸²à¸¢à¸à¸²à¸£à¹à¸à¹à¸²à¸à¸¹",
"tooltip-search": "à¸à¹à¸à¸«à¸² {{SITENAME}}",
@@ -3037,8 +3035,8 @@
"scarytranscludefailed": "[à¹à¸¡à¹à¸ªà¸²à¸¡à¸²à¸£à¸à¸à¸¶à¸à¹à¸¡à¹à¹à¸à¸à¸¡à¸²à¹à¸à¹à¸ªà¸³à¸«à¸£à¸±à¸ $1]",
"scarytranscludetoolong": "[ยูà¸à¸²à¸£à¹à¹à¸à¸¥à¸¢à¸²à¸§à¹à¸à¸´à¸à¹à¸]",
"deletedwhileediting": "à¸à¸³à¹à¸à¸·à¸à¸: หà¸à¹à¸²à¸à¸µà¹à¸à¸¹à¸à¸¥à¸à¸«à¸¥à¸±à¸à¸à¸¸à¸à¹à¸£à¸´à¹à¸¡à¹à¸à¹à¹à¸!",
- "confirmrecreate": "à¸à¸¹à¹à¹à¸à¹ [[User:$1|$1]] ([[User talk:$1|à¸à¸¹à¸à¸à¸¸à¸¢]]) ลà¸à¸«à¸à¹à¸²à¸à¸µà¹à¸«à¸¥à¸±à¸à¸à¸¸à¸à¹à¸£à¸´à¹à¸¡à¹à¸à¹à¹à¸ à¸à¹à¸§à¸¢à¹à¸«à¸à¸¸à¸à¸¥à¸§à¹à¸²:\n: $2\nà¸à¸£à¸¸à¸à¸²à¸¢à¸·à¸à¸¢à¸±à¸à¸§à¹à¸² à¸à¸¸à¸à¸à¹à¸à¸à¸à¸²à¸£à¸ªà¸£à¹à¸²à¸à¸«à¸à¹à¸²à¸à¸µà¹à¹à¸«à¸¡à¹à¸à¸£à¸´à¸ à¹",
- "confirmrecreate-noreason": "à¸à¸¹à¹à¹à¸à¹ [[User:$1|$1]] ([[User talk:$1|à¸à¸¹à¸à¸à¸¸à¸¢]]) ลà¸à¸«à¸à¹à¸²à¸à¸µà¹à¸«à¸¥à¸±à¸à¸à¸¸à¸à¹à¸£à¸´à¹à¸¡à¹à¸à¹à¹à¸ à¹à¸à¸£à¸à¸¢à¸·à¸à¸¢à¸±à¸à¸§à¹à¸²à¸à¸¸à¸à¸à¹à¸à¸à¸à¸²à¸£à¸ªà¸£à¹à¸²à¸à¸«à¸à¹à¸²à¸à¸µà¹à¹à¸«à¸¡à¹à¸à¸£à¸´à¸ à¹",
+ "confirmrecreate": "à¸à¸¹à¹à¹à¸à¹ [[User:$1|$1]] ([[User talk:$1|à¸à¸¸à¸¢]]) ลà¸à¸«à¸à¹à¸²à¸à¸µà¹à¸«à¸¥à¸±à¸à¸à¸¸à¸à¹à¸£à¸´à¹à¸¡à¹à¸à¹à¹à¸à¸à¹à¸§à¸¢à¹à¸«à¸à¸¸à¸à¸¥:\n: $2\nà¸à¸£à¸¸à¸à¸²à¸¢à¸·à¸à¸¢à¸±à¸à¸§à¹à¸² à¸à¸¸à¸à¸à¹à¸à¸à¸à¸²à¸£à¸ªà¸£à¹à¸²à¸à¸«à¸à¹à¸²à¸à¸µà¹à¹à¸«à¸¡à¹à¸à¸£à¸´à¸ à¹",
+ "confirmrecreate-noreason": "à¸à¸¹à¹à¹à¸à¹ [[User:$1|$1]] ([[User talk:$1|à¸à¸¸à¸¢]]) ลà¸à¸«à¸à¹à¸²à¸à¸µà¹à¸«à¸¥à¸±à¸à¸à¸¸à¸à¹à¸£à¸´à¹à¸¡à¹à¸à¹à¹à¸ à¹à¸à¸£à¸à¸¢à¸·à¸à¸¢à¸±à¸à¸§à¹à¸²à¸à¸¸à¸à¸à¹à¸à¸à¸à¸²à¸£à¸ªà¸£à¹à¸²à¸à¸«à¸à¹à¸²à¸à¸µà¹à¹à¸«à¸¡à¹à¸à¸£à¸´à¸ à¹",
"recreate": "สรà¹à¸²à¸à¹à¸«à¸¡à¹",
"confirm-purge-title": "à¸à¸°à¸¥à¹à¸²à¸à¸«à¸à¹à¸²à¸à¸µà¹",
"confirm_purge_button": "à¸à¸à¸¥à¸",
@@ -3120,7 +3118,7 @@
"watchlisttools-view": "à¸à¸¹à¸à¸²à¸£à¹à¸à¸¥à¸µà¹à¸¢à¸à¹à¸à¸¥à¸à¸à¸µà¹à¹à¸à¸µà¹à¸¢à¸§à¸à¹à¸à¸",
"watchlisttools-edit": "à¸à¸¹à¹à¸¥à¸°à¹à¸à¹à¹à¸à¸£à¸²à¸¢à¸à¸²à¸£à¹à¸à¹à¸²à¸à¸¹",
"watchlisttools-raw": "à¹à¸à¹à¹à¸à¸£à¸²à¸¢à¸à¸²à¸£à¹à¸à¹à¸²à¸à¸¹à¸à¸´à¸",
- "signature": "[[{{ns:user}}:$1|$2]] ([[{{ns:user_talk}}:$1|à¸à¸¹à¸à¸à¸¸à¸¢]])",
+ "signature": "[[{{ns:user}}:$1|$2]] ([[{{ns:user_talk}}:$1|à¸à¸¸à¸¢]])",
"timezone-local": "à¸à¹à¸à¸à¸à¸´à¹à¸",
"duplicate-defaultsort": "à¸à¸³à¹à¸à¸·à¸à¸: หลัà¸à¹à¸£à¸µà¸¢à¸à¸¥à¸³à¸à¸±à¸à¸à¸£à¸´à¸¢à¸²à¸¢ \"$2\" à¹à¸à¹à¸¥à¸à¸¥à¹à¸²à¸à¸«à¸¥à¸±à¸à¹à¸£à¸µà¸¢à¸à¸¥à¸³à¸à¸±à¸à¸à¸£à¸´à¸¢à¸²à¸¢ \"$1\" à¸à¸µà¹à¸¡à¸µà¸à¸¢à¸¹à¹à¸à¹à¸à¸à¸«à¸à¹à¸²",
"version": "รุà¹à¸",
diff --git a/languages/i18n/tk.json b/languages/i18n/tk.json
index 40d36a6119..0c765184b3 100644
--- a/languages/i18n/tk.json
+++ b/languages/i18n/tk.json
@@ -421,7 +421,7 @@
"userjsyoucanpreview": "'''Ãmleme:''' Täze JavaScriptiÅizi ýazdyrmankaÅyz, synap görmek üçin \"{{int:showpreview}}\" düwmesine basyÅ.",
"usercsspreview": "'''Bu ulanyjy CSS faýlyÅyzyŠýöne bir deslapky syny.'''\n'''Ol heniz ýazdyrylan däldir!'''",
"userjspreview": "'''Bu ulanyjy JavaScriptiÅiziŠýöne bir barlagy/deslapky syny.'''\n'''Ol heniz ýazdyrylan däldir!'''",
- "userinvalidcssjstitle": "''DuýduryÅ:''' \"$1\" atly bezeg ýok.\nHususy .css we .js sahypalarynyÅ setir harp bilen ýazylýandygyny ýatda saklaÅ, ýagny {{ns:user}}:Ulanyjy/Vector.css däl-de, eýsem {{ns:user}}:Ulanyjy/vector.css.",
+ "userinvalidconfigtitle": "''DuýduryÅ:''' \"$1\" atly bezeg ýok.\nHususy .css we .js sahypalarynyÅ setir harp bilen ýazylýandygyny ýatda saklaÅ, ýagny {{ns:user}}:Ulanyjy/Vector.css däl-de, eýsem {{ns:user}}:Ulanyjy/vector.css.",
"updated": "(Täzelenen)",
"note": "'''Bellik:'''",
"previewnote": "'''Ãatda saklaÅ, bu bir ýöne deslapky syn.''' ÃýtgeÅmeleriÅiz heniz ýazdyrylan däldir!",
@@ -696,7 +696,7 @@
"prefs-files": "Faýllar",
"prefs-custom-css": "Hususy CSS",
"prefs-custom-js": "Hususy JS",
- "prefs-common-css-js": "Ãhli bezegler üçin paýlaÅylýan CSS/JavaScript:",
+ "prefs-common-config": "Ãhli bezegler üçin paýlaÅylýan CSS/JavaScript:",
"prefs-reset-intro": "Bu sahypada öz ileri tutmalaryÅyzy saýtyÅ gaýybana ýagdaýyna getirip bilersiÅiz. Yzyna dikeldip bolmaýar.",
"prefs-emailconfirm-label": "E-poçta tassyklamasy:",
"youremail": "E-poçta:",
@@ -887,8 +887,6 @@
"newpageletter": "T",
"boteditletter": "b",
"number_of_watching_users_pageview": "[$1 {{PLURAL:$1|ulanyjy|ulanyjy}} gözegçilik edýär]",
- "rc_categories": "Kategoriýalar bilen çäklendir (\"|\" bilen aýyr)",
- "rc_categories_any": "Islendik",
"newsectionsummary": "/* $1 */ täze bölüm",
"rc-enhanced-expand": "Jikme-jikligi görkez",
"rc-enhanced-hide": "Jikme-jiklikleri gizle",
diff --git a/languages/i18n/tl.json b/languages/i18n/tl.json
index 2e8b8e99e5..bbaa12551c 100644
--- a/languages/i18n/tl.json
+++ b/languages/i18n/tl.json
@@ -623,7 +623,7 @@
"userjspreview": "'''Tandaang pagsubok/paunang tingin mo pa lang ito ng iyong JavaScript.'''\n'''Hindi pa ito nasasagip!'''",
"sitecsspreview": "'''Tandaan mong paunang tingin pa lamang ito ng nasabing CSS.'''\n'''Hindi pa ito nasasagip!'''",
"sitejspreview": "'''Tandaan mong paunang tingin pa lamang ito ng nasabing kodigong JavaScript.'''\n'''Hindi pa ito nasasagip!'''",
- "userinvalidcssjstitle": "'''Babala:''' Walang pabalat na \"$1\".\nTandaang gumagamit ang pinasadyang mga pahinang .css at .js ng mga pamagat na may maliliit na mga titik, halimbawa na ang {{ns:user}}:Foo/vector.css na taliwas sa {{ns:user}}:Foo/Vector.css.",
+ "userinvalidconfigtitle": "'''Babala:''' Walang pabalat na \"$1\".\nTandaang gumagamit ang pinasadyang mga pahinang .css at .js ng mga pamagat na may maliliit na mga titik, halimbawa na ang {{ns:user}}:Foo/vector.css na taliwas sa {{ns:user}}:Foo/Vector.css.",
"updated": "(Naisapanahon na)",
"note": "'''Paunawa:'''",
"previewnote": "'''Tandaan na isa lamang itong paunang tingin.'''\nHindi pa nasasagip ang mga binago mo!",
@@ -920,7 +920,7 @@
"prefs-files": "Mga file",
"prefs-custom-css": "Pasadyang CSS",
"prefs-custom-js": "Pasadyang JS",
- "prefs-common-css-js": "Naibahaging CSS/JS para sa lahat ng pabalat:",
+ "prefs-common-config": "Naibahaging CSS/JS para sa lahat ng pabalat:",
"prefs-reset-intro": "Magagamit mo ang pahinang ito upang muling maitakda ang mga kagustuhan mo sa likas na pagtatakda ng sityo.\nHindi ito maibabalik sa dating gawi.",
"prefs-emailconfirm-label": "Kumpirmasyon ng e-liham:",
"youremail": "E-liham:",
@@ -1155,8 +1155,6 @@
"boteditletter": "b",
"unpatrolledletter": "!",
"number_of_watching_users_pageview": "[$1 binabantayang {{PLURAL:$1|tagagamit|mga tagagamit}}]",
- "rc_categories": "Itakda lang sa mga kaurian (ihiwalay sa pamamagitan ng \"|\")",
- "rc_categories_any": "Kahit ano",
"rc-change-size": "$1",
"rc-change-size-new": "$1 {{PLURAL:$1|byte}} pagkaraan ng pagbabago",
"newsectionsummary": "/* $1 */ bagong seksyon",
diff --git a/languages/i18n/tly.json b/languages/i18n/tly.json
index 3bed975b8a..02f50c0cf7 100644
--- a/languages/i18n/tly.json
+++ b/languages/i18n/tly.json
@@ -395,7 +395,6 @@
"minoreditletter": "г",
"newpageletter": "Т",
"boteditletter": "б",
- "rc_categories_any": "ÒºÐ°Ñ Ð³ÑлÓ",
"newsectionsummary": "/* $1 */ нÑÑÓ Ð¼ÑвзÑ",
"rc-enhanced-expand": "ТÓÑÑилоÑон ниÑо Ð´Ð¾Ñ (JavaScript иÑÑиÑÐ¾Ð´Ó Ð±ÐµÐ´Ó)",
"rc-enhanced-hide": "ТÓÑÑилоÑон ниÑо каÑдеÑ",
diff --git a/languages/i18n/to.json b/languages/i18n/to.json
index ed2838bd56..422b90565a 100644
--- a/languages/i18n/to.json
+++ b/languages/i18n/to.json
@@ -5,7 +5,8 @@
"Tauʻolunga",
"××¢×¨× ×¨××× ××ר×",
"ìë¼",
- "Macofe"
+ "Macofe",
+ "Fanjiayi"
]
},
"tog-underline": "Ngaahi fehokotaki ʻoku laineʻi ʻi lalo:",
@@ -181,6 +182,7 @@
"nstab-template": "SÄ«pinga",
"nstab-help": "Tokoni",
"nstab-category": "Faʻahinga",
+ "mainpage-nstab": "Peesi tali fiefia",
"nosuchaction": "Hala ha ngÄue pehÄ",
"nosuchspecialpage": "Hala ha peesi makehe pehÄ",
"error": "Halaʻi",
@@ -341,7 +343,7 @@
"showingresults": "ʻOku ʻasi ʻi lalo ʻa e ngaahi fua ʻoku kamata mo e #'''$2''' (aʻu ki he '''$1''').",
"powersearch-legend": "Kumi lakasi",
"preferences": "Faʻiteliha",
- "mypreferences": "faʻiteliha ʻaʻaku",
+ "mypreferences": "Faʻiteliha",
"prefs-skin": "Kili",
"skin-preview": "Vakai pÄ",
"datedefault": "ʻIkai ha faʻiteliha",
@@ -389,10 +391,19 @@
"rcnotefrom": "ʻOku ʻasi ʻi lalo ʻa e liliu talu mei '''$2''' (aʻu ki he '''$1''').",
"rclistfrom": "ʻAsi mai ha ngaahi liliu foʻou ʻo kamata mei he $3 $2",
"rcshowhideminor": "$1 fatu siʻi",
+ "rcshowhideminor-show": "ʻAsi mai",
+ "rcshowhideminor-hide": "Toi",
"rcshowhidebots": "$1 fatu fakamīsini",
+ "rcshowhidebots-show": "ʻAsi mai",
+ "rcshowhidebots-hide": "Toi",
"rcshowhideliu": "$1 kau ʻetita ʻoku kau-ki-ai",
+ "rcshowhideliu-show": "ʻAsi mai",
"rcshowhideanons": "$1 kau ʻetita taʻehingoa",
+ "rcshowhideanons-show": "ʻAsi mai",
+ "rcshowhideanons-hide": "Toi",
"rcshowhidemine": "$1 fatu ʻaʻaku",
+ "rcshowhidemine-show": "ʻAsi mai",
+ "rcshowhidemine-hide": "Toi",
"rclinks": "ʻAsi mai ha liliu ʻe $1 lolotonga ha ʻaho ʻe $2 fakamuimui",
"diff": "kehe",
"hist": "hisi",
@@ -401,8 +412,6 @@
"minoreditletter": "s",
"newpageletter": "F",
"boteditletter": "m",
- "rc_categories": "Fakangatangata ki he faʻahinga (vaheʻi he \"|\")",
- "rc_categories_any": "FaÊ»ahinga noa pÄ",
"rc-enhanced-expand": "ʻAsi ngaahi ʻeu (fiemaʻu ʻa e ''Javascript'')",
"rc-enhanced-hide": "Toi ngaahi ʻeu",
"recentchangeslinked": "Ngaahi liliu fekauʻaki",
@@ -627,6 +636,7 @@
"sp-contributions-deleted": "Ngaahi foaki Ê»o ha Ê»etita kuo tÄmateÊ»i",
"sp-contributions-talk": "Alea",
"whatlinkshere": "Ngaahi fehokotaki ki heni",
+ "whatlinkshere-page": "Peesi:",
"linkshere": "ʻOku fehokotaki ki heni ʻa e ngaahi peesi:",
"nolinkshere": "ʻOku ʻikai ha ngaahi kupu fehokotaki ki heni.",
"isredirect": "Peesi leʻei",
@@ -737,6 +747,8 @@
"siteusers": "Kau ʻetita {{SITENAME}} $1",
"creditspage": "Peesi fakangeiaʻi",
"spamprotectionmatch": "Naʻe kamosi ʻemau meʻasivi tohila ʻe he ngaahi mataʻitohi koʻeni: $1",
+ "pageinfo-article-id": "Peesi ID",
+ "pageinfo-toolboxlink": "Peesi information",
"rcpatroldisabled": "ʻOku fakataʻeʻaʻongaʻi ʻa e leʻo ʻo e ngaahi toki liliu",
"deletedrevision": "Kuo tÄmateÊ»i he paaki motuÊ»a $1.",
"previousdiff": "â Faikehe ki muÊ»a",
@@ -876,6 +888,7 @@
"watchlisttools-edit": "Sio pea fatu ʻete hokohoko leʻo",
"watchlisttools-raw": "Fatu ʻa e hokohoko leʻo taʻengaohi",
"version": "Paaki",
+ "redirect-page": "Peesi ID",
"specialpages": "Ngaahi peesi makehe",
"rightsnone": "(hala)",
"expandtemplates": "Fakalahiange ʻa e ngaahi sīpinga"
diff --git a/languages/i18n/tpi.json b/languages/i18n/tpi.json
index 324ac59489..82afb38c8b 100644
--- a/languages/i18n/tpi.json
+++ b/languages/i18n/tpi.json
@@ -348,8 +348,6 @@
"minoreditletter": "m",
"newpageletter": "N",
"boteditletter": "b",
- "rc_categories": "Soim ol senis insait long ol dispela grup tasol (raitim wantaim \"|\" namel long wanwan)",
- "rc_categories_any": "Olgeta",
"recentchangeslinked": "Ol senis klostu",
"recentchangeslinked-feed": "Ol senis klostu",
"recentchangeslinked-toolbox": "Ol senis klostu",
diff --git a/languages/i18n/tr.json b/languages/i18n/tr.json
index d0d8ceb5d4..bb4834c6c6 100644
--- a/languages/i18n/tr.json
+++ b/languages/i18n/tr.json
@@ -736,7 +736,7 @@
"userjspreview": "'''Sadece test ediyorsun ya da önizleme görüyorsun - kullanıcı JavaScript'i henüz kaydolmadı.'''",
"sitecsspreview": "'''Sadece kullanıcı CSS dosyanızın önizlemesini görüyorsunuz.''' \n'''Henüz kaydedilmedi!'''",
"sitejspreview": "'''Sadece kullanıcı JavaScript kod dosyanızın önizlemesini görüyorsunuz.''' \n'''Henüz kaydedilmedi!'''",
- "userinvalidcssjstitle": "'''Uyarı:''' \"$1\" adında bir tema yoktur. Ãzel .css ve .js sayfalarının adlarını küçük harf ile yazın, örneÄin; \"{{ns:user}}:Ãrnek/Vector.css\" yerine \"{{ns:user}}:Ãrnek/vector.css\" yazın.",
+ "userinvalidconfigtitle": "'''Uyarı:''' \"$1\" adında bir tema yoktur. Ãzel .css ve .js sayfalarının adlarını küçük harf ile yazın, örneÄin; \"{{ns:user}}:Ãrnek/Vector.css\" yerine \"{{ns:user}}:Ãrnek/vector.css\" yazın.",
"updated": "(Güncellendi)",
"note": "'''Not: '''",
"previewnote": "'''Bunun yalnızca bir ön izleme olduÄunu unutmayın.'''\nYaptıÄınız deÄiÅiklikler henüz kaydedilmedi!",
@@ -1090,7 +1090,7 @@
"prefs-files": "Dosyalar",
"prefs-custom-css": "Ãzel CSS",
"prefs-custom-js": "Ãzel JS",
- "prefs-common-css-js": "Tüm temalar için paylaÅılan CSS/JS:",
+ "prefs-common-config": "Tüm temalar için paylaÅılan CSS/JS:",
"prefs-reset-intro": "Bu sayfayı tercihlerinizi site varsayılanına döndürmek için kullanabilirsiniz. Bu geri alınamaz.",
"prefs-emailconfirm-label": "E-posta doÄrulaması:",
"youremail": "E-posta:",
@@ -1339,12 +1339,14 @@
"recentchanges-legend-heading": "Gösterge:",
"recentchanges-legend-newpage": "{{int:recentchanges-label-newpage}} (ayrıca [[Special:NewPages|yeni sayfalar listesine]] bakınız)",
"recentchanges-submit": "Göster",
+ "rcfilters-legend-heading": "Kısaltmalar listesi:",
"rcfilters-other-review-tools": "DiÄer inceleme araçları",
"rcfilters-group-results-by-page": "SayfalandırılmıŠgrup sonuçları",
"rcfilters-activefilters": "Etkin süzgeçler",
"rcfilters-advancedfilters": "GeliÅmiÅ süzgeçler",
"rcfilters-limit-title": "Gösterilecek sonuçlar",
"rcfilters-limit-and-date-label": "$1 deÄiÅiklik, $2",
+ "rcfilters-date-popup-title": "Aranacak zaman dilimi",
"rcfilters-days-title": "Son günler",
"rcfilters-hours-title": "Son saatler",
"rcfilters-days-show-days": "$1 gün",
@@ -1455,8 +1457,6 @@
"newpageletter": "Y",
"boteditletter": "b",
"number_of_watching_users_pageview": "[$1 izlenilen {{PLURAL:$1|kullanıcı|kullanıcı}}]",
- "rc_categories": "Kategorileri sınırla (\"|\" ile ayır)",
- "rc_categories_any": "Seçilen herhangi bir",
"rc-change-size-new": "DeÄiÅiklikten sonraki boyut: $1 {{PLURAL:$1|bayt|bayt}}",
"newsectionsummary": "/* $1 */ yeni baÅlık",
"rc-enhanced-expand": "Ayrıntıları göster",
@@ -1466,7 +1466,7 @@
"recentchangeslinked-feed": "Ä°lgili deÄiÅiklikler",
"recentchangeslinked-toolbox": "Ä°lgili deÄiÅiklikler",
"recentchangeslinked-title": "\"$1\" ile iliÅkili deÄiÅiklikler",
- "recentchangeslinked-summary": "AÅaÄıdaki liste, belirtilen sayfaya (ya da belirtilen kategorinin üyelerine) baÄlantı veren sayfalarda yapılan son deÄiÅikliklerin listesidir.\n[[Special:Watchlist|Ä°zleme listenizdeki]] sayfalar kalın olarak belirtilmiÅtir.",
+ "recentchangeslinked-summary": "AÅaÄıdaki liste, belirtilen sayfaya (ya da belirtilen kategorinin üyelerine) baÄlantı veren sayfalarda yapılan son deÄiÅikliklerin listesidir.\n[[Special:Watchlist|Ä°zleme listenizdeki]] sayfalar kalın olarak belirtilmiÅtir.",
"recentchangeslinked-page": "Sayfa adı:",
"recentchangeslinked-to": "Belirtilen sayfadan verilenler yerine, sayfaya verilen baÄlantıları göster.",
"recentchanges-page-added-to-category": "[[:$1]] kategoriye eklendi",
diff --git a/languages/i18n/tt-cyrl.json b/languages/i18n/tt-cyrl.json
index 56b6f9e4d2..70ebecbf6a 100644
--- a/languages/i18n/tt-cyrl.json
+++ b/languages/i18n/tt-cyrl.json
@@ -582,7 +582,7 @@
"userjspreview": "'''ÐÑ Ð±Ð°ÑÑ Ñик JavaScript ÑайлÑн алдан каÑÐ°Ñ Ð³Ñна, Ñл Óле Ñакланмаган!'''",
"sitecsspreview": "'''онÑÑмагÑз, Ð±Ñ Ð±Ð°ÑÑ Ñик CSS-ÑÐ°Ð¹Ð»Ð½Ñ Ð°Ð»Ð´Ð°Ð½ каÑÐ°Ñ Ð³Ñна.'''\n'''Ул Óле Ñакланмаган!'''",
"sitejspreview": "'''ÐÑ Ð±Ð°ÑÑ Ñик JavaScript ÑайлÑн алдан каÑÐ°Ñ Ð³Ñна.'''\n'''Ул Óле Ñакланмаган!'''",
- "userinvalidcssjstitle": "'''ÐгÑÑибаÑ:''' \"$1\" бизÓÒ¯ ÑемаÑÑ ÑабÑлмадÑ. ÐÑлланÑÑÑнÑÒ£ .css Ò»Óм .js биÑлÓÑе иÑемнÓÑе баÑÑ Ñик кеÑÐºÐµÐ½Ó (Ñл) Ñ
ÓÑеÑлÓÑдÓн Ð³ÐµÐ½Ó ÑоÑÑÑга ÑÐ¸ÐµÑ Ð¸ÐºÓнен онÑÑмагÑз. ÐиÑалга: {{ns:user}}:Foo/vector.css, Ó {{ns:user}}:Foo/Vector.css Ñүгел!",
+ "userinvalidconfigtitle": "'''ÐгÑÑибаÑ:''' \"$1\" бизÓÒ¯ ÑемаÑÑ ÑабÑлмадÑ. ÐÑлланÑÑÑнÑÒ£ .css Ò»Óм .js биÑлÓÑе иÑемнÓÑе баÑÑ Ñик кеÑÐºÐµÐ½Ó (Ñл) Ñ
ÓÑеÑлÓÑдÓн Ð³ÐµÐ½Ó ÑоÑÑÑга ÑÐ¸ÐµÑ Ð¸ÐºÓнен онÑÑмагÑз. ÐиÑалга: {{ns:user}}:Foo/vector.css, Ó {{ns:user}}:Foo/Vector.css Ñүгел!",
"updated": "(ЯңаÑÑÑлдÑ)",
"note": "'''ÐÑкÓÑмÓ:'''",
"previewnote": "ÐÑÐµÐ³ÐµÐ·Ð´Ó ÑоÑÑгÑз, Ð±Ñ Ð°Ð»Ð´Ð°Ð½ каÑÐ°Ñ Ð³Ñна.\nТÓзÓÑмÓлÓÑегез ÓÐ»ÐµÐ³Ó Ñакланмаган!",
@@ -861,7 +861,7 @@
"prefs-files": "ФайллаÑ",
"prefs-custom-css": "ШÓÑ
Ñи CSS",
"prefs-custom-js": "ШÓÑ
Ñи JS",
- "prefs-common-css-js": "ÐаÑлÑк бизÓлеÑлÓÑ Ó©Ñен гомÑми CSS/JS:",
+ "prefs-common-config": "ÐаÑлÑк бизÓлеÑлÓÑ Ó©Ñен гомÑми CSS/JS:",
"prefs-reset-intro": "ÐÑ Ð±Ð¸Ñ Ñезнең көйлÓнмÓлÓÑегезне беÑеÑÒ¯ Ó©Ñен кÑлланÑла. ÐÑ ÑÑне баÑкаÑÑ Ð½ÓÑиÒÓÑÐµÐ½Ð´Ó Ñез Ñңадан үз көйлÓнмÓлÓÑне Ñңадан кайÑаÑа алмÑйÑÑз.",
"prefs-emailconfirm-label": "E-mail ÑаÑлаÑ",
"youremail": "ÐлекÑÑон поÑÑа:",
@@ -1062,8 +1062,6 @@
"newpageletter": "Я",
"boteditletter": "б",
"number_of_watching_users_pageview": "[$1 {{PLURAL:$1|күзÓÑÒ¯Ñе кÑлланÑÑÑ}}]",
- "rc_categories": "ТөÑкемнÓÑдÓн Ð³ÐµÐ½Ó («|» бүлүÑе):",
- "rc_categories_any": "СайланганнÑÒ£ Ò»ÓÑбеÑÑе",
"rc-change-size-new": "ÐеÑÑелгÓн үзгÓÑеÑлÓÑ Ð±ÐµÐ»Óн беÑÐ³Ó Ð·ÑÑлÑк: $1 {{PLURAL:$1|байÑ}}",
"newsectionsummary": "/* $1 */ Ñңа бүлек",
"rc-enhanced-expand": "ÐаклÑклаÑÐ½Ñ ÐºÒ¯ÑÑÓÑÒ¯",
diff --git a/languages/i18n/tt-latn.json b/languages/i18n/tt-latn.json
index 7bb64cf73a..8b774ed3c3 100644
--- a/languages/i18n/tt-latn.json
+++ b/languages/i18n/tt-latn.json
@@ -453,7 +453,7 @@
"userjsyoucanpreview": "'''Yärdäm:''' \"{{int:showpreview}}\" töymäsenä basıp, yaña JS-faylnı tikÅerep bula.",
"usercsspreview": "'''Bu barı tik CSS-faylnı aldan qaraw Äına, ul äle saqlanmaÄan!'''",
"userjspreview": "'''Bu barı tik JavaScript faylın aldan qaraw Äına, ul äle saqlanmaÄan!'''",
- "userinvalidcssjstitle": "'''Ä°Ätibar:''' \"$1\" bizäw teması tabılmadı. Qullanuçınıñ .css häm .js bitläre isemnäre barı tik keçkenä (yul) xäreflärdän genä torırÄa tieÅ ikänen onıtmaÄız. MisalÄa: {{ns:user}}:Foo/vector.css, ä {{ns:user}}:Foo/Vector.css tügel!",
+ "userinvalidconfigtitle": "'''Ä°Ätibar:''' \"$1\" bizäw teması tabılmadı. Qullanuçınıñ .css häm .js bitläre isemnäre barı tik keçkenä (yul) xäreflärdän genä torırÄa tieÅ ikänen onıtmaÄız. MisalÄa: {{ns:user}}:Foo/vector.css, ä {{ns:user}}:Foo/Vector.css tügel!",
"updated": "(Yañartıldı)",
"note": "'''İskärmä:'''",
"previewnote": "'''Bu fäqät aldan qaraw Äına, üzgärtüläregez äle saqlanmaÄan!'''",
@@ -670,7 +670,7 @@
"prefs-files": "Fayllar",
"prefs-custom-css": "Ãzemneñ CSS",
"prefs-custom-js": "Ãzemneñ JS",
- "prefs-common-css-js": "Barlıq bizäleÅlär öçen Äomumi CSS/JS:",
+ "prefs-common-config": "Barlıq bizäleÅlär öçen Äomumi CSS/JS:",
"prefs-reset-intro": "Bu bit sezneñ köylänmäläregezne beterü öçen qullanıla. Bu eÅne baÅqaru näticäsendä sez yañadan üz köylänmälärne yañadan qaytara almıysız.",
"prefs-emailconfirm-label": "E-mail raslaw",
"youremail": "Elektron poçta:",
@@ -800,8 +800,6 @@
"newpageletter": "Y",
"boteditletter": "b",
"number_of_watching_users_pageview": "[$1 {{PLURAL:$1|küzätep tora qullanuçı}}]",
- "rc_categories": "Törkemnärdä genä tora («|» bülüçe)",
- "rc_categories_any": "Härber",
"rc-change-size-new": "üzgäreÅtän soñ $1 {{PLURAL:$1|bayt}}",
"newsectionsummary": "/* $1 */ yaña bülek",
"rc-enhanced-expand": "Waqlıqlarnı kürsätü (JavaScript kiräk)",
diff --git a/languages/i18n/tzm.json b/languages/i18n/tzm.json
index a1c22fbeed..dc4821da9f 100644
--- a/languages/i18n/tzm.json
+++ b/languages/i18n/tzm.json
@@ -335,7 +335,6 @@
"newpageletter": "âµ",
"boteditletter": "â´±",
"unpatrolledletter": "!",
- "rc_categories_any": "âµâ´°âµ",
"recentchangeslinked-toolbox": "âµâ´±â´·â´·â´»âµâµ âµâµâµ âµâ´°âµ£â´·â´°âµ¢âµ",
"recentchangeslinked-page": "â´°âµâµâ´°âµ âµ âµâ´°âµâµâ´°:",
"upload": "ⵣⴷⴻⵠⴰâµâ´·â´°âµ¡",
diff --git a/languages/i18n/ug-arab.json b/languages/i18n/ug-arab.json
index 82eefc5920..0a48ddc48f 100644
--- a/languages/i18n/ug-arab.json
+++ b/languages/i18n/ug-arab.json
@@ -632,7 +632,7 @@
"userjspreview": "'''دÙÙÙÛت سÙز Ù¾ÛÙÛت ئÛزÙÚÙزÙÙÚ Ø´ÛخسÙÙ JavaScript Ù٠ئاÙدÙÙ ÙÛزÙتÙÛاتÙسÙز/سÙÙاÛاتÙسÙز.'''\n'''Ø¦Û ØªÛخ٠ساÙÙاÙÙ
ÙدÙ!'''",
"sitecsspreview": "'''دÙÙÙÛت سÙز Ù¾ÛÙÛت Ø¨Û CSS Ù٠ئاÙدÙÙ ÙÛزÙتÙÛاتÙسÙز.'''\n'''Ø¦Û ØªÛخ٠ساÙÙاÙÙ
ÙدÙ!'''",
"sitejspreview": "'''دÙÙÙÛت سÙز Ù¾ÛÙÛت Ø¨Û JavaScript ÙÙدÙ٠ئاÙدÙÙ ÙÛزÙتÙÛاتÙسÙز.'''\n'''Ø¦Û ØªÛخ٠ساÙÙاÙÙ
ÙدÙ!'''",
- "userinvalidcssjstitle": "'''ئاگاھÙاÙدÛرÛØ´:''' تÛرÛ\\\"$1\" Ù
ÛÛجÛد ئÛÙ
Ûس.\nئادÛتÙÛÙÚ¯ÛÙ .css ÛÛ .js تÙر بÛت Ù
اÛزÛسÙغا ÙÙÚÙÙ ÙÛزÙÙÙشتÙÙÙ Ú¾Ûرپ ئÙØ´ÙÙتÙÙÙدÛØ Ù
ÛسÙÙÛÙØ {{ns:user}}:Foo/vector.css بÙÙÛÙ {{ns:user}}:Foo/Vector.css ئÙخشاش ئÛÙ
Ûس.",
+ "userinvalidconfigtitle": "'''ئاگاھÙاÙدÛرÛØ´:''' تÛرÛ\\\"$1\" Ù
ÛÛجÛد ئÛÙ
Ûس.\nئادÛتÙÛÙÚ¯ÛÙ .css ÛÛ .js تÙر بÛت Ù
اÛزÛسÙغا ÙÙÚÙÙ ÙÛزÙÙÙشتÙÙÙ Ú¾Ûرپ ئÙØ´ÙÙتÙÙÙدÛØ Ù
ÛسÙÙÛÙØ {{ns:user}}:Foo/vector.css بÙÙÛÙ {{ns:user}}:Foo/Vector.css ئÙخشاش ئÛÙ
Ûس.",
"updated": "(ÙÛÚÙÙاÙدÙ)",
"note": "'''ئÙزاھات:'''",
"previewnote": "'''ئÛسÙÚÙØ²Ø¯Û Ø¨ÙÙسÛÙÙÙ Ø¨Û Ù¾ÛÙÛتÙا ئاÙدÙÙ ÙÛزÙتÙØ´.'''\nئÛزگÛرتÙÛÙ Ù
ÛزÙ
ÛÙÙÚÙز تÛخ٠ساÙÙاÙÙ
ÙدÙ!",
@@ -958,7 +958,7 @@
"prefs-files": "Ú¾ÛججÛتÙÛر",
"prefs-custom-css": "ئÙختÙÙار٠CSS",
"prefs-custom-js": "ئÙختÙÙار٠JS",
- "prefs-common-css-js": "Ú¾ÛÙ
Ù
Û ØªÛرÙØ¯Û Ú¾ÛÙ
بÛÚ¾ÙرÙÛÙÚ¯ÛÙ CSS/JS:",
+ "prefs-common-config": "Ú¾ÛÙ
Ù
Û ØªÛرÙØ¯Û Ú¾ÛÙ
بÛÚ¾ÙرÙÛÙÚ¯ÛÙ CSS/JS:",
"prefs-reset-intro": "سÙز Ø¨Û Ø¨ÛتÙ٠ئÙØ´ÙÙتÙÙ¾ تÛÚØ´ÛÙÙÙرÙÚÙزÙ٠تÙر بÛÙÛتÙÙÚ ÙÛÚÛÙدÙÙÙ ÙÙÙ
Ù
ÙتÙÚ¯Û ØªÛÚØ´ÙÙÛÙÛÙسÙز.\nØ¨Û Ù
ÛشغÛÙاتتÙÙ ÙاÙغÙÙ٠بÙÙÙ
اÙدÛ.",
"prefs-emailconfirm-label": "ئÛÙØ®Ûت جÛزÙ
ÙÛØ´:",
"youremail": "ئÛÙØ®Ûت:",
@@ -1239,8 +1239,6 @@
"boteditletter": "Ù
اشÙÙا ئادÛÙ
",
"unpatrolledletter": "!",
"number_of_watching_users_pageview": "[$1 {{PLURAL:$1|ئÙØ´ÙÛتÙÛÚÙ|ئÙØ´ÙÛتÙÛÚÙ}}ÙÛزÙتÙÛاتÙدÛ]",
- "rc_categories": "تÛر ÚÛگرÙس٠(\"|\" بÙÙÛ٠ئاÙرÙÙÙØ¯Û )",
- "rc_categories_any": "خاÙÙغاÙÚÛ ØªØ§ÙÙاش",
"rc-change-size": "$1",
"rc-change-size-new": "ئÛزگÛرتÙÛÙدÙÙ ÙÛÙÙÙ $1 {{PLURAL:$1|باÙت}}",
"newsectionsummary": "* $1 * ÙÛÚ٠ئابزاس",
diff --git a/languages/i18n/uk.json b/languages/i18n/uk.json
index d40a8d82c4..703fa0d707 100644
--- a/languages/i18n/uk.json
+++ b/languages/i18n/uk.json
@@ -370,7 +370,7 @@
"databaseerror-function": "ФÑнкÑÑÑ: $1",
"databaseerror-error": "Ðомилка: $1",
"transaction-duration-limit-exceeded": "Щоб ÑникнÑÑи великого Ð»Ð°Ð³Ñ Ð¿Ñи ÑеплÑкаÑÑÑ, ÑÑ ÑÑанзакÑÑÑ Ð±Ñла пеÑеÑвана, оÑкÑлÑки ÑÑивалÑÑÑÑ Ð·Ð°Ð¿Ð¸ÑÑ ($1) пеÑевиÑила Ð¾Ð±Ð¼ÐµÐ¶ÐµÐ½Ð½Ñ Ð² $2 {{PLURAL:$2|ÑекÑндÑ|ÑекÑнд|ÑекÑнди}}.\n\nЯкÑо ви змÑнÑÑÑе декÑлÑка елеменÑÑв за один Ñаз, поÑÑаÑайÑеÑÑ Ð·Ð°Ð¼ÑÑÑÑ ÑÑого зÑобиÑи декÑлÑка невеликиÑ
опеÑаÑÑй.",
- "laggedslavemode": "Увага: ÑÑоÑÑнка може не мÑÑÑиÑи оÑÑаннÑÑ
ÑедагÑванÑ.",
+ "laggedslavemode": "Увага: ÑÑоÑÑнка може не мÑÑÑиÑи оÑÑаннÑÑ
ÑедагÑванÑ.",
"readonly": "ÐÐ°Ð¿Ð¸Ñ Ð´Ð¾ бази даниÑ
заблокований",
"enterlockreason": "ÐазнаÑÑе пÑиÑÐ¸Ð½Ñ Ñ Ð¿Ñиблизний ÑеÑмÑн блокÑваннÑ",
"readonlytext": "ÐÐ¾Ð´Ð°Ð²Ð°Ð½Ð½Ñ Ð½Ð¾Ð²Ð¸Ñ
ÑÑаÑей Ñа ÑнÑÑ Ð·Ð¼Ñни бази даниÑ
Ñ Ð´Ð°Ð½Ð¸Ð¹ Ð¼Ð¾Ð¼ÐµÐ½Ñ Ð·Ð°Ð±Ð»Ð¾ÐºÐ¾Ð²Ð°Ð½Ñ: ймовÑÑно, ÑеÑез планове ÑеÑвÑÑне обÑлÑговÑÐ²Ð°Ð½Ð½Ñ Ð±Ð°Ð·Ð¸ даниÑ
, пÑÑÐ»Ñ Ð·Ð°ÐºÑнÑÐµÐ½Ð½Ñ Ñкого бÑде вÑдновлено ноÑмалÑний ÑÑан.\n\nÐдмÑнÑÑÑÑаÑоÑ, Ñо заблокÑвав базÑ, дав Ñаке поÑÑненнÑ: $1",
@@ -719,7 +719,7 @@
"userjspreview": "'''Ðам'ÑÑайÑе, Ñо Ñе ÑÑлÑки попеÑеднÑй пеÑеглÑд ваÑого JavaScript-ÑÐ°Ð¹Ð»Ñ Ñ Ð²Ñн поки-Ñо не збеÑежений!'''",
"sitecsspreview": "'''Ðам'ÑÑайÑе, Ñо Ñе ÑÑлÑки попеÑеднÑй пеÑеглÑд ÑÑого CSS.'''\n'''Ðого Ñе не збеÑежено!'''",
"sitejspreview": "'''Ðам'ÑÑайÑе, Ñо Ñе лиÑе попеÑеднÑй пеÑеглÑд ваÑого JavaScript-кодÑ.'''\n'''Ðого Ñе не збеÑежено!'''",
- "userinvalidcssjstitle": "'''Увага:''' Ñема оÑоÑÐ¼Ð»ÐµÐ½Ð½Ñ Â«$1» не знайдена.\nÐам'ÑÑайÑе, Ñо коÑиÑÑÑваÑÑÐºÑ .css Ñа .js ÑÑоÑÑнки Ð¿Ð¾Ð²Ð¸Ð½Ð½Ñ Ð¼Ð°Ñи назвÑ, Ñо ÑкладаÑÑÑÑÑ Ð»Ð¸Ñе з малиÑ
лÑÑеÑ, напÑиклад «{{ns:user}}:Ð¥ÑоÑÑ/vector.css», а не «{{ns:user}}:Ð¥ÑоÑÑ/Vector.css».",
+ "userinvalidconfigtitle": "'''Увага:''' Ñема оÑоÑÐ¼Ð»ÐµÐ½Ð½Ñ Â«$1» не знайдена.\nÐам'ÑÑайÑе, Ñо коÑиÑÑÑваÑÑÐºÑ .css Ñа .js ÑÑоÑÑнки Ð¿Ð¾Ð²Ð¸Ð½Ð½Ñ Ð¼Ð°Ñи назвÑ, Ñо ÑкладаÑÑÑÑÑ Ð»Ð¸Ñе з малиÑ
лÑÑеÑ, напÑиклад «{{ns:user}}:Ð¥ÑоÑÑ/vector.css», а не «{{ns:user}}:Ð¥ÑоÑÑ/Vector.css».",
"updated": "(Ðновлена)",
"note": "'''ÐаÑваженнÑ:'''",
"previewnote": "'''Це лиÑе попеÑеднÑй пеÑеглÑд.'''\nÐаÑÑ Ð·Ð¼Ñни Ñе не збеÑежено!",
@@ -776,6 +776,7 @@
"postedit-confirmation-created": "СÑвоÑено ÑÑоÑÑнкÑ.",
"postedit-confirmation-restored": "СÑоÑÑнка бÑла вÑдновлена.",
"postedit-confirmation-saved": "ÐаÑе ÑедагÑÐ²Ð°Ð½Ð½Ñ Ð·Ð±ÐµÑежено",
+ "postedit-confirmation-published": "ÐаÑе ÑедагÑÐ²Ð°Ð½Ð½Ñ Ð¾Ð¿ÑблÑковано.",
"edit-already-exists": "Ðеможливо ÑÑвоÑиÑи Ð½Ð¾Ð²Ñ ÑÑоÑÑнкÑ.\nÐона вже ÑÑнÑÑ.",
"defaultmessagetext": "СÑандаÑÑний ÑекÑÑ Ð¿Ð¾Ð²ÑдомленнÑ",
"content-failed-to-parse": "Ðе вдалоÑÑ ÑденÑиÑÑкÑваÑи $2 Ñк Ñип $1 ÑеÑез: $3",
@@ -1086,7 +1087,7 @@
"prefs-files": "Файли",
"prefs-custom-css": "ÐлаÑний CSS",
"prefs-custom-js": "ÐлаÑний JS",
- "prefs-common-css-js": "CSS/JS ÑпÑлÑÐ½Ñ Ð´Ð»Ñ Ð²ÑÑÑ
Ñем оÑоÑмленнÑ:",
+ "prefs-common-config": "CSS/JS ÑпÑлÑÐ½Ñ Ð´Ð»Ñ Ð²ÑÑÑ
Ñем оÑоÑмленнÑ:",
"prefs-reset-intro": "Ð¦Ñ ÑÑоÑÑнка може бÑÑи викоÑиÑÑана Ð´Ð»Ñ Ð·Ð¼Ñни ваÑиÑ
налаÑÑÑÐ²Ð°Ð½Ñ Ð½Ð° ÑÑандаÑÑнÑ.\nÐÑÑÐ»Ñ Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ ÑÑÑÑ Ð´ÑÑ Ð²Ð¸ не зможеÑе вÑдкоÑиÑи змÑни.",
"prefs-emailconfirm-label": "ÐÑдÑвеÑÐ´Ð¶ÐµÐ½Ð½Ñ Ð°Ð´ÑеÑи:",
"youremail": "ÐдÑеÑа елекÑÑÐ¾Ð½Ð½Ð¾Ñ Ð¿Ð¾ÑÑи:",
@@ -1524,8 +1525,6 @@
"boteditletter": "б",
"unpatrolledletter": "!",
"number_of_watching_users_pageview": "[$1 {{PLURAL:$1|коÑиÑÑÑÐ²Ð°Ñ ÑпоÑÑеÑÑгаÑ|коÑиÑÑÑваÑÑ ÑпоÑÑеÑÑгаÑÑÑ|коÑиÑÑÑваÑÑв ÑпоÑÑеÑÑгаÑÑÑ}}]",
- "rc_categories": "ТÑлÑки з каÑегоÑÑй (ÑоздÑлÑÐ²Ð°Ñ Â«|»):",
- "rc_categories_any": "ÐÑдÑ-Ñка з обÑаниÑ
",
"rc-change-size": "$1",
"rc-change-size-new": "РозмÑÑ Ð¿ÑÑÐ»Ñ Ð·Ð¼Ñни: $1 {{PLURAL:$1|байÑ|байÑи|байÑÑв}}",
"newsectionsummary": "/* $1 */ нова Ñема",
@@ -3556,7 +3555,7 @@
"signature": "[[{{ns:user}}:$1|$2]] ([[{{ns:user_talk}}:$1|обговоÑеннÑ]])",
"timezone-utc": "UTC",
"timezone-local": "ÐÑÑÑевÑ",
- "duplicate-defaultsort": "Увага. ÐлÑÑ ÑоÑÑÑÐ²Ð°Ð½Ð½Ñ Â«$2» пеÑекÑÐ¸Ð²Ð°Ñ Ð¿Ð¾Ð¿ÐµÑеднÑй клÑÑ ÑоÑÑÑÐ²Ð°Ð½Ð½Ñ Â«$1».",
+ "duplicate-defaultsort": "{{#if:{{REVISIONID}}| }}",
"duplicate-displaytitle": "Увага: ÐÑдобÑажений заголовок \"$2\" замÑÑÑÑ ÑанÑÑе вÑдобÑажений заголовок \"$1\".",
"restricted-displaytitle": "Увага: ÐÑдобÑажÑÐ²Ð°Ð½Ñ Ð½Ð°Ð·Ð²Ñ Â«$1» бÑло пÑоÑгноÑовано, оÑкÑлÑки вона не вÑдповÑÐ´Ð°Ñ ÑиннÑй Ð½Ð°Ð·Ð²Ñ ÑÑоÑÑнки.",
"invalid-indicator-name": "Ðомилка: СÑоÑÑнка ÑндикаÑоÑа ÑÑÐ°Ð½Ñ name
аÑÑибÑÑа не може бÑÑи пÑÑÑа.",
diff --git a/languages/i18n/ur.json b/languages/i18n/ur.json
index d363408dad..d10cba2273 100644
--- a/languages/i18n/ur.json
+++ b/languages/i18n/ur.json
@@ -677,7 +677,7 @@
"userjspreview": "Ûاد رÛÛ Ú©Û Ø§Ø³ ÙÙت آپ اپÙÛ Ø¬Ø§Ùا اسکرپٹ Ú©Û Ù
Øض ÙÙ
ائش دÛÚ©Ú¾/جاÙÚ Ø±ÛÛ ÛÛÚºØ ÛÛ Ø§Ø¨ تک Ù
ØÙÙظ ÙÛÛÚº ÛÙØ¦Û ÛÛ!",
"sitecsspreview": "Ûاد رÛÛ Ú©Û Ø§Ø³ ÙÙت آپ اس Ø³Û Ø§Ûس Ú©Û Ù
Øض ÙÙ
ائش دÛÚ©Ú¾ رÛÛ ÛÛÚºØ ÛÛ Ø§Ø¨ تک Ù
ØÙÙظ ÙÛÛÚº ÛÙØ¦Û ÛÛ!",
"sitejspreview": "Ûاد رÛÛ Ú©Û Ø§Ø³ ÙÙت آپ اس جاÙا اسکرپٹ Ú©ÙÚ Ú©Û Ù
Øض ÙÙ
ائش دÛÚ©Ú¾ رÛÛ ÛÛÚºØ ÛÛ Ø§Ø¨ تک Ù
ØÙÙظ ÙÛÛÚº ÛÙØ¦Û ÛÛ!",
- "userinvalidcssjstitle": "اÙتباÛ: ÛÛاں «$1» ÙاÙ
Ø³Û Ú©ÙØ¦Û Ù¾Ùشاک Ù
ÙجÙد ÙÛÛÚºÛ Ø´Ø®ØµÛ .css اÙر .js Ú©Û ØµÙØات اپÙÛ Ø¹ÙÙا٠Ù
ÛÚº ÚÚ¾ÙÙ¹Û ØرÙ٠استعÙ
Ø§Ù Ú©Ø±ØªÛ ÛÛÚºØ Ù
Ø«Ùا٠{{ns:user}}:Foo/Vector.css Ú©Û Ø¨Ø¬Ø§Ø¦Û {{ns:user}}:Foo/vector.css",
+ "userinvalidconfigtitle": "اÙتباÛ: ÛÛاں «$1» ÙاÙ
Ø³Û Ú©ÙØ¦Û Ù¾Ùشاک Ù
ÙجÙد ÙÛÛÚºÛ Ø´Ø®ØµÛ .css اÙر .js Ú©Û ØµÙØات اپÙÛ Ø¹ÙÙا٠Ù
ÛÚº ÚÚ¾ÙÙ¹Û ØرÙ٠استعÙ
Ø§Ù Ú©Ø±ØªÛ ÛÛÚºØ Ù
Ø«Ùا٠{{ns:user}}:Foo/Vector.css Ú©Û Ø¨Ø¬Ø§Ø¦Û {{ns:user}}:Foo/vector.css",
"updated": "(اپ ÚÛÙ¹Ú)",
"note": "'''ÙÙÙ¹:'''",
"previewnote": "'''Ûاد رکھÛÚºØ ÛÛ ØµØ±Ù ÙÙ
ائش ÛÛ Ûآپ Ú©Û ØªØ±Ø§Ù
ÛÙ
Ø§Ø¨Ú¾Û Ù
ØÙÙظ ÙÛÛÚº Ú©Û Ú¯Ø¦ÛÚºÛ'''",
@@ -712,7 +712,7 @@
"templatesusedsection": "اÙس ÙØ·Ø¹Û Ù
ÛÚº Ù
ستعÙ
Ù {{PLURAL:$1|ساÙÚÛ|ساÙÚÛ}}:",
"template-protected": "(Ù
ØÙÙظ شدÛ)",
"template-semiprotected": "(ÙÛÙ
Ù
ØÙÙظ)",
- "hiddencategories": "ÛÛ ØµÙØÛ {{PLURAL:$1|1 ÚÙÚ¾Ù¾Û Ø²Ù
رÛ|$1 ÚÙÚ¾Ù¾Û Ø²Ù
Ø±Û Ø¬Ø§Øª}} Ù
ÛÚº شاÙ
Ù ÛÛ:",
+ "hiddencategories": "اس صÙØÛ Ù
ÛÚº {{PLURAL:$1|1 Ù¾ÙØ´ÛØ¯Û Ø²Ù
رÛ|$1 Ù¾ÙØ´ÛØ¯Û Ø²Ù
Ø±Û Ø¬Ø§Øª}} شاÙ
Ù ÛÛÚº:",
"nocreatetext": "{{SITENAME}} ÙÛ ÙØ¦Û ØµÙØات تخÙÛ٠کرÙÛ Ù¾Ø± پابÙØ¯Û Ùگا Ø±Ú©Ú¾Û ÛÛÛ\nتاÛÙ
آپ Ù¾ÛÙÛ Ø³Û Ù
ÙجÙد صÙØات Ù
ÛÚº ترÙ
ÛÙ
کر Ø³Ú©ØªÛ ÛÛÚº Ûا [[Special:UserLogin|اپÙÛ Ú©Ú¾Ø§ØªÛ Ù
ÙÚº داخ٠ÛÙÚº Ûا Ú©Ú¾Ø§ØªÛ Ø¨ÙائÛÚº]]Û",
"nocreate-loggedin": "آپ Ú©Ù ÙØ¦Û ØµÙØات تخÙÛ٠کرÙÛ Ú©Û Ø§Ø¬Ø§Ø²Øª ÙÛÛÚº ÛÛ.",
"sectioneditnotsupported-title": "ÙØ·Ø¹Û Ú©Û ØªØ¯ÙÛÙ ØÙ
اÛت Ø´Ø¯Û ÙÛÛÚº ÛÛ",
@@ -1043,7 +1043,7 @@
"prefs-files": "ÙائÙÛÚº",
"prefs-custom-css": "Ø´Ø®ØµÛ Ø³Û Ø§Ûس اÛس",
"prefs-custom-js": "Ø´Ø®ØµÛ Ø¬Ø§Ùا اسکرپٹ",
- "prefs-common-css-js": "جÙ
ÙÛ Ù¾ÙشاکÙÚº Ú©Û ÙÛÛ Ù
Ø´ØªØ±Ú©Û Ø³Û Ø§Ûس اÛس/جاÙا اسکرپٹ:",
+ "prefs-common-config": "جÙ
ÙÛ Ù¾ÙشاکÙÚº Ú©Û ÙÛÛ Ù
Ø´ØªØ±Ú©Û Ø³Û Ø§Ûس اÛس/جاÙا اسکرپٹ:",
"prefs-reset-intro": "آپ اس صÙØÛ Ú©Û Ø°Ø±ÛØ¹Û Ø§Ù¾ÙÛ Ù
ÙجÙØ¯Û ØªØ±Ø¬ÛØات ک٠سائٹ Ú©Û Ø§Ø¨ØªØ¯Ø§Ø¦Û ØªØ±ØªÛبات Ú©Û Ù
طاب٠ÚÚ¾Ø§Ù Ø³Ú©ØªÛ ÛÛÚºÛ\nÙÛÚ©Ù Ø§Ø³Û Ùاپس ÙÛÛÚº Ù¾Ú¾Ûرا جا سکتاÛ",
"prefs-emailconfirm-label": "برÙÛ Ø®Ø· Ú©Û ØªØµØ¯ÛÙ:",
"youremail": "برÙÛ Ø®Ø·:",
@@ -1476,8 +1476,6 @@
"newpageletter": "ÙÛا ..",
"boteditletter": " Ø®Ùدکار",
"number_of_watching_users_pageview": "[$1 Ù
شاÛد {{PLURAL:$1|صارÙ|صارÙÛÙ}}]",
- "rc_categories": "ا٠زÙ
رÙÚº تک Ù
ØدÙد رکھÛÚº («|» Ø³Û Ø¹ÙاØØ¯Û Ú©Ø±ÛÚº):",
- "rc_categories_any": "Ú©ÙØ¦Û Ø¨Ú¾Û Ù
Ùتخب",
"rc-change-size-new": "تبدÛÙÛ Ú©Û Ø¨Ø¹Ø¯ $1 {{PLURAL:$1|بائٹ}}",
"newsectionsummary": "/* $1 */ ÙÛا ÙطعÛ",
"rc-enhanced-expand": "تÙصÛÙات دکھائÛÚº",
@@ -3608,7 +3606,7 @@
"logentry-move-move": "$1 ÙÛ ØµÙØÛ $3 Ú©Ù $4 Ú©Û Ø¬Ø§Ùب Ù
ÙتÙÙ Ú©Ûا",
"logentry-move-move-noredirect": "$1 ÙÛ ØµÙØÛ $3 Ú©Ù $4 Ú©Û Ø¬Ø§Ùب بدÙ٠رجÙع Ù
کرر {{GENDER:$2|Ù
ÙتÙÙ Ú©Ûا}}",
"logentry-move-move_redir": "$1 ÙÛ Ø±Ø¬Ùع Ù
کرر Ûٹا کر صÙØÛ $3 Ú©Ù $4 Ú©Û Ø¬Ø§Ùب {{GENDER:$2|Ù
ÙتÙÙ Ú©Ûا}}",
- "logentry-move-move_redir-noredirect": "$1 ÙÛ ØµÙØÛ $3 ک٠رجÙع Ù
کرر ÚÚ¾ÙÚÛ Ø¨ØºÛر $4 Ú©Û Ø¬Ø§Ùب ج٠رجÙع Ù
کر تھا {{GENDER:$2|Ù
ÙتÙÙ Ú©Ûا}}",
+ "logentry-move-move_redir-noredirect": "$1 ÙÛ ØµÙØÛ $3 ک٠رجÙع Ù
کرر ÚÚ¾ÙÚÛ Ø¨ØºÛر $4 Ú©Û Ø¬Ø§Ùب ج٠رجÙع Ù
کرر تھا {{GENDER:$2|Ù
ÙتÙÙ Ú©Ûا}}",
"logentry-patrol-patrol": "$1 ÙÛ ØµÙØÛ $3 Ú©Û ÙØ³Ø®Û $4 Ú©Ù Ù
راجعت Ø´Ø¯Û {{GENDER:$2|Ùشا٠زد Ú©Ûا}}",
"logentry-patrol-patrol-auto": "$1 ÙÛ ØµÙØÛ $3 Ú©Û ÙØ³Ø®Û $4 Ú©Ù Ø®Ùدکار Ø·Ùر پر Ù
راجعت Ø´Ø¯Û {{GENDER:$2|Ùشا٠زد Ú©Ûا}}",
"logentry-newusers-newusers": "ØµØ§Ø±Ù Ú©Ú¾Ø§ØªÛ $1 {{GENDER:$2|تخÙÛÙ ÛÙ Úکا ÛÛ}}",
diff --git a/languages/i18n/uz.json b/languages/i18n/uz.json
index 7481a98ad0..a5f3d41623 100644
--- a/languages/i18n/uz.json
+++ b/languages/i18n/uz.json
@@ -672,7 +672,7 @@
"prefs-files": "Fayllar",
"prefs-custom-css": "Shaxsiy CSS",
"prefs-custom-js": "Shaxsiy JavaScript",
- "prefs-common-css-js": "Umumiy CSS/JavaScript (barcha tashqi koʻrinishlar uchun):",
+ "prefs-common-config": "Umumiy CSS/JavaScript (barcha tashqi koʻrinishlar uchun):",
"prefs-emailconfirm-label": "Elektron pochta manzilini tasdiqlash:",
"youremail": "E-mail:",
"username": "Foydalanuvchi nomi",
diff --git a/languages/i18n/vec.json b/languages/i18n/vec.json
index 4c45461074..f18227ecff 100644
--- a/languages/i18n/vec.json
+++ b/languages/i18n/vec.json
@@ -538,7 +538,7 @@
"userjspreview": "'''Sta qua la xe solo n'anteprima par proar el proprio JavaScript personal; le modifiche no le xe gnancora stà salvà !'''",
"sitecsspreview": "'''Sta qua la xe solo n'anteprima del proprio CSS personal. Le modifiche no le xe gnancora stà salvà !'''",
"sitejspreview": "'''Sta qua la xe solo n'anteprima par proar el proprio JavaScript personal; le modifiche no le xe gnancora stà salvà !'''",
- "userinvalidcssjstitle": "'''Ocio:''' No ghe xe nissuna skin con nome \"$1\". Nota che le pagine par i .css e .js personalizà le gà l'iniziale del titolo minuscola, par esenpio {{ns:user}}:Esenpio/vector.css e no {{ns:user}}:Esenpio/Vector.css.",
+ "userinvalidconfigtitle": "'''Ocio:''' No ghe xe nissuna skin con nome \"$1\". Nota che le pagine par i .css e .js personalizà le gà l'iniziale del titolo minuscola, par esenpio {{ns:user}}:Esenpio/vector.css e no {{ns:user}}:Esenpio/Vector.css.",
"updated": "(Agiornà )",
"note": "'''Nota:'''",
"previewnote": "'''Tiente in mente che sta qua la xe solo n'anteprima.'''\nI to canbiamenti NO i xe gnancora stà salvà i!",
@@ -839,7 +839,7 @@
"prefs-files": "File",
"prefs-custom-css": "CSS personalixà ",
"prefs-custom-js": "JS personalixà ",
- "prefs-common-css-js": "CSS/JS condiviso par tute Åe skin:",
+ "prefs-common-config": "CSS/JS condiviso par tute Åe skin:",
"prefs-reset-intro": "Te pol doparar sta pagina par riportar le to preferense a quele predefinìe.\nSta operassion no la pol èssar anulà .",
"prefs-emailconfirm-label": "Conferma de l'e-mail:",
"youremail": "La to e-mail",
@@ -1055,8 +1055,6 @@
"newpageletter": "N",
"boteditletter": "b",
"number_of_watching_users_pageview": "[osservà da {{PLURAL:$1|un utente|$1 utenti}}]",
- "rc_categories": "Limita a le categorie (separà da \"|\")",
- "rc_categories_any": "Qualsiasi",
"rc-change-size-new": "$1 {{PLURAL:$1|byte}} dopo Åa modifega",
"newsectionsummary": "/* $1 */ sezion nova",
"rc-enhanced-expand": "Mostra detaji",
diff --git a/languages/i18n/vep.json b/languages/i18n/vep.json
index 33e5953f7c..bcb21b1cac 100644
--- a/languages/i18n/vep.json
+++ b/languages/i18n/vep.json
@@ -735,7 +735,7 @@
"prefs-files": "Failad",
"prefs-custom-css": "IÄeze CSS",
"prefs-custom-js": "IÄeze JS",
- "prefs-common-css-js": "Ãhthižed CSS/JavaScript kaikiden temiden täht:",
+ "prefs-common-config": "Ãhthižed CSS/JavaScript kaikiden temiden täht:",
"prefs-reset-intro": "Tö sat kävutada nece lehtpol', miše pördutada teiden järgendused saitan ezijärgendusidennoks.\nNecidä tegendad ei sa toižetada.",
"prefs-emailconfirm-label": "E-poÄtan vahviÅ¡tand:",
"youremail": "E-poÄt:",
@@ -934,8 +934,6 @@
"newpageletter": "U",
"boteditletter": "b",
"number_of_watching_users_pageview": "[$1 {{PLURAL:$1|kaclii kävutai|kaclijad kävutajad}}]",
- "rc_categories": "Vaiše kategorijoišpäi (erigoitkat znamaižel \"|\")",
- "rc_categories_any": "Eraz",
"rc-change-size": "$1",
"rc-change-size-new": "$1 {{PLURAL:$1|bait|baitad}} jäl'ges toižetamišt",
"newsectionsummary": "/* $1 */ uz' jaguz",
diff --git a/languages/i18n/vi.json b/languages/i18n/vi.json
index ab931ffb70..bb064d8405 100644
--- a/languages/i18n/vi.json
+++ b/languages/i18n/vi.json
@@ -645,7 +645,7 @@
"anonpreviewwarning": "''Bạn chÆ°a ÄÄng nháºp. Khi lÆ°u trang nà y, Äá»a chá» IP của bạn sẽ Äược ghi và o lá»ch sá» trang.''",
"missingsummary": "'''Nhắc nhá»:''' Bạn Äã không ghi lại tóm lược sá»a Äá»i. Nếu bạn nhấn LÆ°u trang má»t lần nữa, sá»a Äá»i của bạn sẽ Äược lÆ°u mà không có tóm lược.",
"selfredirect": "Cảnh báo: Bạn sắp Äá»i hÆ°á»ng trang nà y Äến chÃnh trang nà y.\nCó lẽ bạn Äã Äá»nh rõ mục tiêu sai hoặc bạn Äang sá»a trang sai.\nNếu bạn bấm â$1â lần nữa, trang Äá»i hÆ°á»ng sẽ Äược tạo ra.",
- "missingcommenttext": "Xin hãy gõ và o lá»i bà n luáºn á» dÆ°á»i.",
+ "missingcommenttext": "Xin hãy nháºp bình luáºn và o Äây.",
"missingcommentheader": "Nhắc nhá»: Bạn chÆ°a ghi chủ Äá»/tiêu Äá» cho bà n luáºn nà y.\nNếu bạn nhấn nút â$1â lần nữa, sá»a Äá»i của bạn sẽ Äược lÆ°u mà không có Äá» mục.",
"summary-preview": "Xem trÆ°á»c dòng tóm lược sá»a Äá»i:",
"subject-preview": "Xem trÆ°á»c Äá» mục:",
@@ -680,7 +680,7 @@
"userjspreview": "'''Nhá» rằng bạn chá» Äang kiá»m thá»/xem trÆ°á»c trang JavaScript, nó chÆ°a Äược lÆ°u!'''",
"sitecsspreview": "'''Nhá» rằng bạn chá» Äang xem trÆ°á»c bản CSS nà y.'''\n'''Nó chÆ°a Äược lÆ°u!'''",
"sitejspreview": "'''Nhá» rằng bạn chá» Äang xem trÆ°á»c bản JavaScript nà y.\n'''Nó chÆ°a Äược lÆ°u!'''",
- "userinvalidcssjstitle": "'''Cảnh báo:''' Không có skin â$1â. Hãy nhá» rằng các trang .css và .js tùy chá»nh sá» dụng tiêu Äá» chữ thÆ°á»ng, nhÆ° {{ns:user}}:Và dụ/vector.css chứ không phải {{ns:user}}:Và dụ/Vector.css.",
+ "userinvalidconfigtitle": "'''Cảnh báo:''' Không có skin â$1â. Hãy nhá» rằng các trang .css và .js tùy chá»nh sá» dụng tiêu Äá» chữ thÆ°á»ng, nhÆ° {{ns:user}}:Và dụ/vector.css chứ không phải {{ns:user}}:Và dụ/Vector.css.",
"updated": "(Cáºp nháºt)",
"note": "'''Ghi chú:'''",
"previewnote": "'''Äây chá» má»i là bản xem trÆ°á»c.'''\nCác thay Äá»i của bạn vẫn chÆ°a Äược lÆ°u!",
@@ -699,6 +699,7 @@
"yourtext": "Ná»i dung bạn nháºp",
"storedversion": "Phiên bản lưu",
"editingold": "'''Chú ý: bạn Äang sá»a má»t phiên bản cÅ©. Nếu bạn lÆ°u, các sá»a Äá»i trên các phiên bản má»i hÆ¡n sẽ bá» mất.'''",
+ "unicode-support-fail": "Trình duyá»t của bạn không há» trợ Unicode. Äây là yêu cầu bắt buá»c nếu bạn muá»n sá»a Äá»i trang tại Äây, do Äó thay Äá»i của bạn không Äược lÆ°u.",
"yourdiff": "Khác",
"copyrightwarning": "Xin chú ý rằng tất cả các Äóng góp của bạn tại {{SITENAME}} Äược xem là sẽ phát hà nh theo giấy phép $2 (xem $1 Äá» biết thêm chi tiết). Nếu bạn không muá»n những gì mình viết ra bá» sá»a Äá»i không thÆ°Æ¡ng tiếc và không sẵn lòng cho phép phát hà nh lại, xin Äừng nhấn nút \"LÆ°u trang\".
\nBạn phải Äảm bảo vá»i chúng tôi rằng chÃnh bạn là tác giả của những gì mình viết ra, hoặc chép nó từ má»t nguá»n thuá»c phạm vi công cá»ng hoặc tá»± do tÆ°Æ¡ng ÄÆ°Æ¡ng.
\nÄỪNG ÄÄNG Ná»I DUNG Cà BẢN QUYá»N Mà CHƯA XIN PHÃP!",
"copyrightwarning2": "Xin chú ý rằng tất cả các Äóng góp của bạn tại {{SITENAME}} có thá» Äược sá»a Äá»i, thay thế, hoặc xóa bá» bá»i các thà nh viên khác. Nếu bạn không muá»n trang của bạn bá» sá»a Äá»i không thÆ°Æ¡ng tiếc, Äừng ÄÄng trang á» Äây.
\nBạn phải Äảm bảo vá»i chúng tôi rằng chÃnh bạn là ngÆ°á»i viết nên, hoặc chép nó từ má»t nguá»n thuá»c phạm vi công cá»ng hoặc tá»± do tÆ°Æ¡ng ÄÆ°Æ¡ng (xem $1 Äá» biết thêm chi tiết).\n'''Äừng ÄÄng ná»i dung có bản quyá»n mà không xin phép!'''",
@@ -735,6 +736,7 @@
"postedit-confirmation-created": "Trang Äã Äược tạo ra.",
"postedit-confirmation-restored": "Trang Äã Äược phục há»i.",
"postedit-confirmation-saved": "Sá»a Äá»i của bạn Äã Äược lÆ°u.",
+ "postedit-confirmation-published": "Thay Äá»i của bạn Äã Äược xuất bản.",
"edit-already-exists": "Không thá» tạo trang má»i.\nNó Äã tá»n tại.",
"defaultmessagetext": "Ná»i dung mặc Äá»nh",
"content-failed-to-parse": "Thất bại phân tÃch ná»i dung $2 cho kiá»u $1: $3",
@@ -765,6 +767,7 @@
"parser-template-loop-warning": "Phát hiá»n bản mẫu lặp vòng: [[$1]]",
"template-loop-category": "Trang có bản mẫu lặp vòng",
"template-loop-category-desc": "Trang chứa má»t hoặc nhiá»u bản mẫu lặp vòng, tức là những bản mẫu tá»± gá»i Äá» quy chÃnh nó.",
+ "template-loop-warning": "Cảnh báo: Trang nà y gá»i [[:$1]] tạo ra vòng lặp bản mẫu (vòng gá»i Äá» quy vô hạn).",
"parser-template-recursion-depth-warning": "Bản mẫu Äã vượt quá giá»i hạn vá» Äá» sâu Äá» quy ($1)",
"language-converter-depth-warning": "Äã vượt quá giá»i hạn Äá» sâu của bá» chuyá»n Äá»i ngôn ngữ ($1)",
"node-count-exceeded-category": "Trang có sá» ná»t vượt quá giá»i hạn cho phép",
@@ -1014,7 +1017,7 @@
"recentchangesdays-max": "(tá»i Äa $1 ngà y)",
"recentchangescount": "Sá» sá»a Äá»i hiá»n thá» mặc Äá»nh:",
"prefs-help-recentchangescount": "Sá» nà y bao gá»m các thay Äá»i gần Äây, lá»ch sá» trang, và nháºt trình.",
- "prefs-help-watchlist-token2": "Äây là chìa khóa bà máºt cho nguá»n cấp dữ liá»u danh sách theo dõi của bạn.\nBất cứ ai biết nó sẽ có thá» Äá» Äá»c danh sách theo dõi của bạn, vì váºy Äừng chia sẻ nó.\n[[Special:ResetTokens|Nhấn chuá»t và o Äây nếu bạn cần phải thiết láºp lại nó]].",
+ "prefs-help-watchlist-token2": "Äây là chìa khóa bà máºt cho nguá»n cấp dữ liá»u danh sách theo dõi của bạn.\nBất cứ ai biết nó sẽ có thá» Äá» Äá»c danh sách theo dõi của bạn, vì váºy Äừng chia sẻ nó.\nNếu cần, [[Special:ResetTokens|bạn có thá» thiết láºp lại nó]].",
"savedprefs": "Äã lÆ°u các tùy chá»n cá nhân.",
"savedrights": "Äã lÆ°u các nhóm ngÆ°á»i dùng của {{GENDER:$1}}$1.",
"timezonelegend": "Múi giá»:",
@@ -1033,14 +1036,16 @@
"timezoneregion-europe": "Châu Ãu",
"timezoneregion-indian": "Ấn Äá» DÆ°Æ¡ng",
"timezoneregion-pacific": "Thái Bình Dương",
- "allowemail": "Nháºn thÆ° Äiá»n tá» từ các thà nh viên khác",
+ "allowemail": "Cho phép các thà nh viên khác gá»i thÆ° Äiá»n tá» cho tôi",
+ "email-allow-new-users-label": "Nháºn thÆ° Äiá»n tá» từ các thà nh viên má»i",
+ "email-blacklist-label": "Cấm các thà nh viên sau gá»i thÆ° Äiá»n tá» cho tôi:",
"prefs-searchoptions": "Tìm kiếm",
"prefs-namespaces": "Không gian tên",
"default": "mặc Äá»nh",
"prefs-files": "Táºp tin",
"prefs-custom-css": "sá»a CSS",
"prefs-custom-js": "sá»a JS",
- "prefs-common-css-js": "CSS/JavaScript chung cho má»i giao diá»n:",
+ "prefs-common-config": "CSS/JavaScript chung cho má»i giao diá»n:",
"prefs-reset-intro": "Có thá» mặc Äá»nh lại toà n bá» tùy chá»n dùng trang nà y. Äiá»u nà y không thá» hoà n tác.",
"prefs-emailconfirm-label": "Xác nháºn thÆ° Äiá»n tá»:",
"youremail": "ThÆ° Äiá»n tá»:",
@@ -1300,6 +1305,9 @@
"recentchanges-legend": "Tùy chá»n thay Äá»i gần Äây",
"recentchanges-summary": "Xem các thay Äá»i gần Äây nhất trên wiki nà y tại Äây.",
"recentchanges-noresult": "Không có thay Äá»i trong khoảng thá»i gian phù hợp vá»i các tiêu chà nà y.",
+ "recentchanges-timeout": "Yêu cầu tìm kiếm nà y Äã bá» quá hạn. Bạn có thá» thá» sá» dụng các tham sá» tìm kiếm khác.",
+ "recentchanges-network": "Không thá» tải kết quả do lá»i kÄ© thuáºt. Xin hãy là m má»i lại trang.",
+ "recentchanges-notargetpage": "Nháºp tên trang và o ô trên Äá» xem các thay Äá»i có liên quan tá»i trang Äó.",
"recentchanges-feed-description": "Theo dõi các thay Äá»i gần Äây nhất của wiki dùng nguá»n cấp dữ liá»u nà y.",
"recentchanges-label-newpage": "Bản sá»a nà y tạo ra trang má»i",
"recentchanges-label-minor": "Äây là má»t sá»a Äá»i nhá»",
@@ -1316,14 +1324,15 @@
"rcfilters-group-results-by-page": "Nhóm kết quả theo trang",
"rcfilters-activefilters": "Bá» lá»c hiá»n hà nh",
"rcfilters-advancedfilters": "Bá» lá»c nâng cao",
- "rcfilters-limit-title": "Sá» kết quả Äá» hiá»n thá»",
+ "rcfilters-limit-title": "Sá» kết quả hiá»n thá»",
+ "rcfilters-limit-and-date-label": "$1 thay Äá»i, $2",
"rcfilters-days-title": "Những ngà y gần Äây",
"rcfilters-hours-title": "Sá» giá» gần Äây",
"rcfilters-days-show-days": "$1 ngà y",
"rcfilters-days-show-hours": "$1 giá»",
"rcfilters-highlighted-filters-list": "Tô mà u: $1",
"rcfilters-quickfilters": "Bá» lá»c Äã lÆ°u",
- "rcfilters-quickfilters-placeholder-title": "Chưa lưu liên kết",
+ "rcfilters-quickfilters-placeholder-title": "ChÆ°a lÆ°u các bá» lá»c",
"rcfilters-quickfilters-placeholder-description": "Äá» lÆ°u thiết láºp bá» lá»c Äá» dùng lại sau, bấm hình dấu trang trong há»p âBá» lá»c hiá»n hà nhâ bên dÆ°á»i.",
"rcfilters-savedqueries-defaultlabel": "Bá» lá»c Äã lÆ°u",
"rcfilters-savedqueries-rename": "Äá»i tên",
@@ -1420,12 +1429,15 @@
"rcfilters-view-namespaces-tooltip": "Lá»c kết quả theo không gian tên",
"rcfilters-view-tags-tooltip": "Lá»c kết quả theo thẻ Äánh dấu",
"rcfilters-view-return-to-default-tooltip": "Quay lại trình ÄÆ¡n bá» lá»c chÃnh",
+ "rcfilters-view-tags-help-icon-tooltip": "Tìm hiá»u thêm vá» các sá»a Äá»i bá» Äánh dấu",
"rcfilters-liveupdates-button": "Cáºp nháºt trá»±c tiếp",
"rcfilters-liveupdates-button-title-on": "Tắt cáºp nháºt trá»±c tiếp",
"rcfilters-liveupdates-button-title-off": "Hiá»n thá» các thay Äá»i má»i lúc khi xảy ra",
"rcfilters-watchlist-markseen-button": "Äánh dấu tất cả thay Äá»i là Äã xem",
"rcfilters-watchlist-edit-watchlist-button": "Sá»a danh sách trang theo dõi",
"rcfilters-watchlist-showupdated": "Thay Äá»i má»i trên các trang ká» lần cuá»i bạn xem trang Äược in Äáºm và có dấu tô mà u.",
+ "rcfilters-preference-label": "Ẩn phiên bản cải tiến của trang Thay Äá»i Gần Äây",
+ "rcfilters-target-page-placeholder": "Nháºp tên trang (hoặc thá» loại)",
"rcnotefrom": "DÆ°á»i Äây là {{PLURAL:$5|thay Äá»i duy nhất|các thay Äá»i}} từ $3 $4 (hiá»n thá» tá»i Äa $1 thay Äá»i).",
"rclistfromreset": "Äặt lại lá»±a chá»n ngà y",
"rclistfrom": "Xem các thay Äá»i từ $2 $3 trá» vá» sau",
@@ -1459,8 +1471,6 @@
"newpageletter": "M",
"boteditletter": "b",
"number_of_watching_users_pageview": "[$1 ngÆ°á»i Äang xem]",
- "rc_categories": "Hạn chế theo thá» loại (phân cách bằng â|â):",
- "rc_categories_any": "Bất kỳ Äược chá»n",
"rc-change-size-new": "$1 byte sau thay Äá»i",
"newsectionsummary": "Äá» mục má»i: /* $1 */",
"rc-enhanced-expand": "Xem chi tiết",
@@ -1470,7 +1480,7 @@
"recentchangeslinked-feed": "Thay Äá»i liên quan",
"recentchangeslinked-toolbox": "Thay Äá»i liên quan",
"recentchangeslinked-title": "Thay Äá»i liên quan tá»i â$1â",
- "recentchangeslinked-summary": "Äây là danh sách các thay Äá»i Äược thá»±c hiá»n gần Äây tại những trang Äược liên kết Äến từ má»t trang nà o Äó (hoặc tại các trang thuá»c má»t thá» loại nà o Äó).\nCác trang trong [[Special:Watchlist|danh sách bạn theo dõi]] Äược '''tô Äáºm'''.",
+ "recentchangeslinked-summary": "Nháºp tên trang Äá» xem các thay Äá»i Äược thá»±c hiá»n tại những trang Äược liên kết vá»i trang Äó. (Äá» xem các trang Äược xếp và o má»t thá» loại nà o Äó, nháºp Thá» loại:Tên thá» loại). Các thay Äá»i Äược thá»±c hiá»n tại trang trong [[Special:Watchlist|danh sách bạn theo dõi]] Äược '''tô Äáºm'''.",
"recentchangeslinked-page": "Tên trang:",
"recentchangeslinked-to": "Hiá»n thay Äá»i tại những trang có liên kết Äến trang nà y thay thế",
"recentchanges-page-added-to-category": "[[:$1]] Äược xếp và o thá» loại",
@@ -1541,6 +1551,7 @@
"file-deleted-duplicate-notitle": "Má»t táºp tin giá»ng há»t nhÆ° táºp tin nà y Äã từng bá» xóa và tên bá» xóa hẳn trÆ°á»c Äây.\nBạn nên xin má»t ngÆ°á»i có quyá»n xem dữ liá»u táºp tin bá» xóa hẳn xem lại trÆ°á»ng hợp nà y trÆ°á»c khi tiếp tục tải nó lên lại.",
"uploadwarning": "Cảnh báo!",
"uploadwarning-text": "Xin hãy chá»nh sá»a miêu tả táºp tin á» dÆ°á»i và thá» lại.",
+ "uploadwarning-text-nostash": "Xin hãy tải lại táºp tin lên, sá»a Äá»i phần mô tả và thá» lại.",
"savefile": "LÆ°u táºp tin",
"uploaddisabled": "Chức nÄng tải lên Äã bá» khóa.",
"copyuploaddisabled": "Chức nÄng tải lên từ Äá»a chá» URL Äã bá» tắt.",
@@ -1661,6 +1672,16 @@
"uploadstash-refresh": "Là m má»i danh sách táºp tin",
"uploadstash-thumbnail": "xem hình thu nhá»",
"uploadstash-exception": "Không thá» lÆ°u táºp tin và o hà ng Äợi tải lên ($1): â$2â.",
+ "uploadstash-bad-path": "ÄÆ°á»ng dẫn không tá»n tại.",
+ "uploadstash-bad-path-invalid": "ÄÆ°á»ng dẫn không hợp lá».",
+ "uploadstash-bad-path-unknown-type": "Loại không xác Äá»nh \"$1\".",
+ "uploadstash-bad-path-unrecognized-thumb-name": "Tên hình thu nhá» không nháºn dạng Äược.",
+ "uploadstash-file-not-found-no-thumb": "Không thá» tải hình thu nhá».",
+ "uploadstash-file-not-found-no-object": "Không tạo Äược Äá»i tượng táºp tin cục bá» cho hình thu nhá».",
+ "uploadstash-file-not-found-no-remote-thumb": "Nạp hình thu nhỠthất bại: $1\nURL = $2",
+ "uploadstash-not-logged-in": "NgÆ°á»i dùng chÆ°a ÄÄng nháºp, các táºp tin phải do ngÆ°á»i dùng Äã ÄÄng nháºp tải lên.",
+ "uploadstash-no-such-key": "Khoá không tá»n tại ($1), không thá» xoá.",
+ "uploadstash-zero-length": "Táºp tin có dung lượng bằng không.",
"invalid-chunk-offset": "Khúc lá»ch (chunk offset) không hợp lá»",
"img-auth-accessdenied": "Không cho phép truy cáºp",
"img-auth-nopathinfo": "Thiếu PATH_INFO.\nMáy chủ của bạn không Äược thiết láºp Äá» truyá»n thông tin nà y.\nCó thá» do nó dá»±a trên CGI và không há» trợ img_auth.\nXem [https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:Image_Authorization hÆ°á»ng dẫn Äiá»u khiá»n truy cáºp hình ảnh].",
@@ -2591,6 +2612,7 @@
"thumbnail_dest_directory": "Không thá» tạo thÆ° mục ÄÃch",
"thumbnail_image-type": "Không há» trợ kiá»u hình nà y",
"thumbnail_gd-library": "Cấu hình thÆ° viá»n GD chÆ°a hoà n thà nh: thiếu hà m $1",
+ "thumbnail_image-size-zero": "Dung lượng táºp tin ảnh bằng không.",
"thumbnail_image-missing": "Hình nhÆ° táºp tin mất tÃch: $1",
"thumbnail_image-failure-limit": "Viá»c tạo ra hình thu nhá» nà y Äã bá» thất bại nhiá»u lần quá gần Äây ($1 lần trá» lên). Xin vui lòng thá» lại sau.",
"import": "Nháºp các trang",
@@ -2605,6 +2627,8 @@
"import-mapping-namespace": "Nháºp và o má»t không gian tên:",
"import-mapping-subpage": "Nháºp thà nh các trang con của trang sau:",
"import-upload-filename": "Tên táºp tin:",
+ "import-upload-username-prefix": "Tiá»n tá» liên wiki:",
+ "import-assign-known-users": "Gán sá»a Äá»i cho thà nh viên cục bá» nếu tá»n tại thà nh viên có tên tÆ°Æ¡ng tá»±",
"import-comment": "Lý do:",
"importtext": "Xin hãy xuất táºp tin từ wiki nguá»n dùng [[Special:Export|công cụ xuất]].\nLÆ°u nó và o máy tÃnh của bạn rá»i tải nó lên Äây.",
"importstart": "Äang nháºp các trangâ¦",
@@ -2613,6 +2637,7 @@
"imported-log-entries": "Äã nháºp {{PLURAL:$1|mục nháºt trình|$1 mục nháºt trình}}.",
"importfailed": "Không nháºp Äược: $1",
"importunknownsource": "Không hiá»u nguá»n trang Äá» nháºp và o",
+ "importnoprefix": "ChÆ°a Äiá»n tiá»n tá» liên wiki",
"importcantopen": "Không thá» má» táºp tin Äá» nháºp và o",
"importbadinterwiki": "Liên kết liên wiki sai",
"importsuccess": "Nháºp thà nh công!",
@@ -2800,6 +2825,7 @@
"pageinfo-category-subcats": "SỠthỠloại con",
"pageinfo-category-files": "Sá» táºp tin",
"pageinfo-user-id": "ID ngÆ°á»i dùng",
+ "pageinfo-file-hash": "Giá trá» bÄm",
"markaspatrolleddiff": "Äánh dấu tuần tra",
"markaspatrolledtext": "Äánh dấu tuần tra trang nà y",
"markaspatrolledtext-file": "Äánh dấu Äã tuần tra phiên bản file nà y",
@@ -3339,6 +3365,8 @@
"autosumm-blank": "Äã tẩy trá»ng trang",
"autosumm-replace": "Äã thay thế cả ná»i dung bằng â$1â",
"autoredircomment": "Äá»i hÆ°á»ng Äến [[$1]]",
+ "autosumm-removed-redirect": "Xoá Äá»i hÆ°á»ng Äến trang [[$1]]",
+ "autosumm-changed-redirect-target": "Thay Äá»i trang ÄÃch của Äá»i hÆ°á»ng từ [[$1]] sang [[S2]]",
"autosumm-new": "Tạo trang má»i vá»i ná»i dung â$1â",
"autosumm-newblank": "Äã tạo trang trá»ng",
"size-bytes": "$1 byte",
@@ -3375,6 +3403,7 @@
"watchlistedit-clear-titles": "Các tiêu Äá»:",
"watchlistedit-clear-submit": "Xóa sạch danh sách theo dõi (không thỠlùi lại!)",
"watchlistedit-clear-done": "Äã xóa sạch danh sách theo dõi của bạn.",
+ "watchlistedit-clear-jobqueue": "Danh sách theo dõi của bạn Äang bá» xoá. Quá trình nà y có thá» tá»n má»t khoảng thá»i gian!",
"watchlistedit-clear-removed": "$1 tá»±a Äá» Äã Äược xóa khá»i danh sách:",
"watchlistedit-too-many": "Danh sách có quá nhiá»u trang Äá» hiá»n thá».",
"watchlisttools-clear": "Xóa sạch danh sách theo dõi",
@@ -3516,6 +3545,20 @@
"tag-list-wrapper": "([[Special:Tags|{{PLURAL:$1}}Thẻ]]: $2)",
"tag-mw-contentmodelchange": "thay Äá»i kiá»u ná»i dung",
"tag-mw-contentmodelchange-description": "Sá»a Äá»i [https://www.mediawiki.org/wiki/Special:MyLanguage/Help:ChangeContentModel thay Äá»i kiá»u ná»i dung] của trang",
+ "tag-mw-new-redirect": "Trang Äá»i hÆ°á»ng má»i",
+ "tag-mw-new-redirect-description": "Các sá»a Äá»i tạo ra trang Äá»i hÆ°á»ng má»i hoặc biến má»t trang thà nh trang Äá»i hÆ°á»ng.",
+ "tag-mw-removed-redirect": "Xoá Äá»i hÆ°á»ng",
+ "tag-mw-removed-redirect-description": "Các thay Äá»i biến má»t trang Äá»i hÆ°á»ng thà nh trang không Äá»i hÆ°á»ng",
+ "tag-mw-changed-redirect-target": "Thay Äá»i trang ÄÃch của Äá»i hÆ°á»ng",
+ "tag-mw-changed-redirect-target-description": "Các thay Äá»i là m thay Äá»i trang ÄÃch của má»t trang Äá»i hÆ°á»ng",
+ "tag-mw-blank": "Tẩy trá»ng trang",
+ "tag-mw-blank-description": "Các sá»a Äá»i tẩy trá»ng (xoá trắng) má»t trang",
+ "tag-mw-replace": "Thay thế ná»i dung",
+ "tag-mw-replace-description": "Các sá»a Äá»i thay Äá»i trên 90% ná»i dung của má»t trang",
+ "tag-mw-rollback": "Lùi tất cả",
+ "tag-mw-rollback-description": "Các thay Äá»i cho phép lùi hà ng loạt thay Äá»i của má»t ngÆ°á»i dùng trÆ°á»c Äó thông qua liên kết lùi tất cả",
+ "tag-mw-undo": "Lùi sá»a",
+ "tag-mw-undo-description": "Các thay Äá»i lùi sá»a (hoà n tác) những thay Äá»i trÆ°á»c Äó thông qua liên kết lùi lại",
"tags-title": "Thẻ Äánh dấu",
"tags-intro": "Trang nà y liá»t kê các thẻ Äánh dấu mà phần má»m dùng nó Äá» Äánh dấu má»t sá»a Äá»i, và ý nghÄ©a của nó.",
"tags-tag": "Tên thẻ",
diff --git a/languages/i18n/vo.json b/languages/i18n/vo.json
index 0162941a58..33ec285bbd 100644
--- a/languages/i18n/vo.json
+++ b/languages/i18n/vo.json
@@ -463,7 +463,7 @@
"userjsyoucanpreview": "'''Mob:''' Välolös eli â{{int:showpreview}}â ad blufön eli JS nulik olik bü dakip.",
"usercsspreview": "'''Memolös, das anu te büologol eli CSS olik.'''\n'''No nog pedakipon!'''",
"userjspreview": "'''Memolös, das anu te blufol/büologol eli JavaScript olik, no nog pedakipon!'''",
- "userinvalidcssjstitle": "'''Nuned:''' No dabinon fomät: \"$1\".\nMemolös, das pads: .css e .js mutons labön tiädi minudik: {{ns:user}}:Foo/vector.css, no {{ns:user}}:Foo/Vector.css.",
+ "userinvalidconfigtitle": "'''Nuned:''' No dabinon fomät: \"$1\".\nMemolös, das pads: .css e .js mutons labön tiädi minudik: {{ns:user}}:Foo/vector.css, no {{ns:user}}:Foo/Vector.css.",
"updated": "(peatimükon)",
"note": "'''Penet:'''",
"previewnote": "'''Memolös, das is pajonon te büologed.'''\nVotükams olik no nog pedakipons!",
@@ -900,8 +900,6 @@
"newpageletter": "N",
"boteditletter": "b",
"number_of_watching_users_pageview": "[{{PLURAL:$1|geban|gebans}} galädöl $1]",
- "rc_categories": "Te klads fovik (ditolös me el \"|\")",
- "rc_categories_any": "Alseimik",
"rc-change-size-new": "{{PLURAL:$1|jölät|jöläts}} $1 po votükam",
"newsectionsummary": "/* $1 */ diläd nulik",
"rc-enhanced-expand": "Jonön patis",
diff --git a/languages/i18n/vro.json b/languages/i18n/vro.json
index d77bff24e0..4e53f27d95 100644
--- a/languages/i18n/vro.json
+++ b/languages/i18n/vro.json
@@ -509,7 +509,7 @@
"userjsyoucanpreview": "'''Nõvvoannõq:''' Pruugiq nuppi 'Näütäq proovikaehust' uma vahtsõ CCS-i vai JavaScripti ülekaemisõs, inne ku taa ärq pästät.",
"usercsspreview": "'''Seo um CSS-i proovikaehus. Määntsitki muutuisi olõ-i viil pästet.'''",
"userjspreview": "'''Unõhtagu-i, et seo kujo su umast javascriptist om viil pästmäldäq!'''",
- "userinvalidcssjstitle": "'''Miildetulõtus:''' Olõ-i stiili nimega \"$1\". Piäq meelen, et pruukja säedüq .css- and .js-leheq piät nakkama väiku algustähega.",
+ "userinvalidconfigtitle": "'''Miildetulõtus:''' Olõ-i stiili nimega \"$1\". Piäq meelen, et pruukja säedüq .css- and .js-leheq piät nakkama väiku algustähega.",
"updated": "(Värskis tett)",
"note": "'''Miildetulõtus:'''",
"previewnote": "'''Seo om õnnõ proovikaehus!''' \nSuq tettüq muutmisõq olõ-õi viil pästedüq!",
@@ -818,8 +818,6 @@
"newpageletter": "V",
"boteditletter": "rb",
"number_of_watching_users_pageview": "[{{PLURAL:$1|$1 perräkaejat|üts perräkaeja}}]",
- "rc_categories": "Ãnnõ katõgoorijist (eräldedäs märgiga \"|\")",
- "rc_categories_any": "Miä taht",
"rc-change-size-new": "$1 {{PLURAL:$1|bait|baiti}} peräst muutmist",
"rc-enhanced-expand": "Näütäq ütsikasjo",
"rc-enhanced-hide": "Käkiq ütsikas'aq ärq",
diff --git a/languages/i18n/wa.json b/languages/i18n/wa.json
index 3b13ff3041..501d375d8f 100644
--- a/languages/i18n/wa.json
+++ b/languages/i18n/wa.json
@@ -426,7 +426,7 @@
"userjsyoucanpreview": "'''Racsegne:''' eployîz l' boton «{{int:showpreview}}» po sayî vosse novea JavaScript divant del schaper.",
"usercsspreview": "Ãn rovyîz nén ki c' est djusse on prévoeyaedje di vosse stîle CSS d' uzeu.'''\n'''I n' a nén co stî schapé!'''",
"userjspreview": "'''Ãn rovyîz nén ki c' est djusse on prévoeyaedje/saye di vosse JavaScript d' uzeu, i n' a nén co stî schapé!'''",
- "userinvalidcssjstitle": "'''Asteme:''' I n' a pont d' pea lomêye «$1». Tuzez ki les pådjes .css eyet .js des uzeus eployèt des tite e ptitès letes, metans {{ns:user}}:Toto/vector.css et nén {{ns:user}}:Toto/Vector.css.",
+ "userinvalidconfigtitle": "'''Asteme:''' I n' a pont d' pea lomêye «$1». Tuzez ki les pådjes .css eyet .js des uzeus eployèt des tite e ptitès letes, metans {{ns:user}}:Toto/vector.css et nén {{ns:user}}:Toto/Vector.css.",
"updated": "(Ramidré)",
"note": "'''Note :'''",
"previewnote": "'''Ãn rovyîz nén ki c' est djusse on prévoeyaedje.'''\n'''Les candmints n' ont nén co stî schapés!'''",
@@ -620,7 +620,7 @@
"prefs-files": "Fitchîs",
"prefs-custom-css": "CSS a vosse môde",
"prefs-custom-js": "JavaScript a vosse môde",
- "prefs-common-css-js": "CSS/JavaScript pårtaedjî po totes les peas:",
+ "prefs-common-config": "CSS/JavaScript pårtaedjî po totes les peas:",
"prefs-reset-intro": "Vos ploz eployî ç' boton chal po rmete totes vos preferinces Ã¥zès prémetowès valixhances del waibe.\nÃoul n' pôrè nén esse disfwait.",
"prefs-emailconfirm-label": "Acertinaedje di l' emile:",
"youremail": "Vost emile:",
@@ -804,8 +804,6 @@
"newpageletter": "N",
"boteditletter": "b",
"number_of_watching_users_pageview": "[shuvou pa $1 {{PLURAL:$1|uzeu|uzeus}}]",
- "rc_categories": "Limiter åzès categoreyes (separer avou des «|»)",
- "rc_categories_any": "Totes",
"rc-change-size-new": "$1 {{PLURAL:$1|octet|octets}} après l' candjmint",
"newsectionsummary": "/* $1 */ novele seccion",
"rc-enhanced-expand": "Mostrer les detays",
diff --git a/languages/i18n/war.json b/languages/i18n/war.json
index d99800e25d..0cf205543f 100644
--- a/languages/i18n/war.json
+++ b/languages/i18n/war.json
@@ -849,7 +849,7 @@
"prefs-files": "Mga paypay",
"prefs-custom-css": "Custom CSS",
"prefs-custom-js": "Custom JavaScript",
- "prefs-common-css-js": "Saro nga CSS/JavaScript para han ngatanan nga mga panit:",
+ "prefs-common-config": "Saro nga CSS/JavaScript para han ngatanan nga mga panit:",
"prefs-reset-intro": "Puydi nimo ini gamiton nga pakli para makareset han imo mga preperensya nga ginbutang nga daan han sityo. Diri ini puydi mapawaray-buhat.",
"prefs-emailconfirm-label": "Kompirmasyon han email:",
"youremail": "E-mail:",
@@ -1086,7 +1086,6 @@
"newpageletter": "B",
"boteditletter": "b",
"number_of_watching_users_pageview": "[$1 nagbabatay hin {{PLURAL:$1|gumaramit|mga gumaramit}}]",
- "rc_categories_any": "Bisan ano nga pinili",
"rc-change-size-new": "$1 {{PLURAL:$1|nga byte|nga mga byte}} kahuman han pagbag-o",
"newsectionsummary": "/* $1 */ bag-o nga bahin",
"rc-enhanced-expand": "Igpakita an detalye",
diff --git a/languages/i18n/wo.json b/languages/i18n/wo.json
index 5f96e7e261..9724fa7feb 100644
--- a/languages/i18n/wo.json
+++ b/languages/i18n/wo.json
@@ -8,7 +8,8 @@
"SF-Language",
"Urhixidur",
"ìë¼",
- "Macofe"
+ "Macofe",
+ "Fanjiayi"
]
},
"tog-underline": "Rëddaatu lëkkalekaay yi :",
@@ -426,7 +427,7 @@
"userjsyoucanpreview": "'''Xelal :''' di la digël nga cuq ci «Wonendi» ngir gis say xobi CSS walla JavaScript yu bees laata nga leen di denc.",
"usercsspreview": "Bul fatte ne lii wonendib sa CSS rekk la; dencagoo say coppite!'''",
"userjspreview": "'''Bul fatte ne lii ab wonendib sa yoonu javaScript rekk la; dencagoo say coppite!'''",
- "userinvalidcssjstitle": "'''Moytul :''' amul genn col gu tudd « $1 ». Bul fatte ne xët yiy jeexee .css ak .js seeni koj ay araf yu tuut ñoo ciy tegu/.
ci misaal, {{ns:user}}:Foo/'''v'''ector.css moo baax, waaye bii du baax {{ns:user}}:Foo/'''V'''ector.css .",
+ "userinvalidconfigtitle": "'''Moytul :''' amul genn col gu tudd « $1 ». Bul fatte ne xët yiy jeexee .css ak .js seeni koj ay araf yu tuut ñoo ciy tegu/.
ci misaal, {{ns:user}}:Foo/'''v'''ector.css moo baax, waaye bii du baax {{ns:user}}:Foo/'''V'''ector.css .",
"updated": "(bees na)",
"note": "'''Karmat :'''",
"previewnote": "'''Lii ab wonendi rekk la; coppite yi ci xët wi dencagoo leen!'''",
@@ -857,8 +858,6 @@
"newpageletter": "N",
"boteditletter": "b",
"number_of_watching_users_pageview": "[{{PLURAL:$1|jëfandikukat moo koy topp|$1 jëfandikukat ñoo koy topp}}]",
- "rc_categories": "Digalub wà ll yi (xaajale leen ak « \"|\" »)",
- "rc_categories_any": "Yépp",
"rc-change-size": "$1",
"rc-change-size-new": "$1 {{PLURAL:$1|byte|bytes}} ginnaaw coppite gi",
"newsectionsummary": "/* $1 */ xaaj bu bees",
@@ -1277,6 +1276,7 @@
"contributions": "Cëruy bii {{GENDER:$1|jëfandikukat}}",
"contributions-title": "Cëru yu jëfandikukat bii di $1",
"mycontris": "Cëru",
+ "anoncontribs": "Cëru",
"contribsub2": "Ngir $1 ($2)",
"nocontribs": "Amul benn coppite bu melokaanoo nii bu ñu gis.",
"uctop": "(bi mujj)",
@@ -1519,6 +1519,7 @@
"spam_blanking": "Setal nañ wecc sumb yi amoon lëkkalekaay buy jëme $1",
"simpleantispam-label": "Caytu là nk-spam.\nBu fi yokk lenn!",
"pageinfo-toolboxlink": "Xibaar ci xët wi",
+ "pageinfo-contentpage-yes": "Waaw",
"previousdiff": "â Coppite yi gën a yà gg",
"nextdiff": "Coppite yi mujj â",
"file-info": "Réyaayu file bi : $1, type MIME : $2",
diff --git a/languages/i18n/wuu.json b/languages/i18n/wuu.json
index b1040c4e38..a7f88441a3 100644
--- a/languages/i18n/wuu.json
+++ b/languages/i18n/wuu.json
@@ -581,7 +581,7 @@
"userjspreview": "'''注æ侬åªæ¯å许æµè¯ï¼é¢è§ä¾¬ä¸ª JavaScriptã'''\n'''è¿å¼æ¾ä¿åï¼'''",
"sitecsspreview": "注æ侬ç°å¨åªæ¯æ¥ä¸é¢è§è¯¥CSSï¼è¿å¼æ¾ä¿åï¼",
"sitejspreview": "注æ侬ç°å¨åªæ¯æ¥ä¸é¢è§è¯¥JavaScript代ç ï¼è¿å¼æ¾ä¿åï¼",
- "userinvalidcssjstitle": "'''è¦åï¼''' å¼åå¨ç®è¤\"$1\"ã注æèªå®ä¹ä¸ª .css æ .js 页è¦ä½¿ç¨å°åæ é¢ï¼è¬å¦ï¼{{ns:user}}:Foo/vector.css å¼åäº {{ns:user}}:Foo/Vector.cssã",
+ "userinvalidconfigtitle": "'''è¦åï¼''' å¼åå¨ç®è¤\"$1\"ã注æèªå®ä¹ä¸ª .css æ .js 页è¦ä½¿ç¨å°åæ é¢ï¼è¬å¦ï¼{{ns:user}}:Foo/vector.css å¼åäº {{ns:user}}:Foo/Vector.cssã",
"updated": "ï¼å·²æ´æ°ï¼",
"note": "'''注æï¼'''",
"previewnote": "该个è¿åªæ¯é¢è§ãå·ä¸ªä¿®æ¹è¿æä¿åï¼",
@@ -896,7 +896,7 @@
"prefs-files": "æ件",
"prefs-custom-css": "èªå®ä¹CSS",
"prefs-custom-js": "èªå®ä¹JavaScript",
- "prefs-common-css-js": "ææç®è¤ä¸éç¨ä¸ªCSS/JavaScriptï¼",
+ "prefs-common-config": "ææç®è¤ä¸éç¨ä¸ªCSS/JavaScriptï¼",
"prefs-emailconfirm-label": "çµåé®ä»¶ç¡®è®¤ï¼",
"youremail": "çµåä¿¡ç®±ï¼",
"username": "{{GENDER:$1|ç¨æ·å}}ï¼",
diff --git a/languages/i18n/xal.json b/languages/i18n/xal.json
index 47bb2a718a..59410a691a 100644
--- a/languages/i18n/xal.json
+++ b/languages/i18n/xal.json
@@ -331,7 +331,7 @@
"userjsyoucanpreview": "'''Селвг:''' Ñана Ñин JS боомг ÑÒ¯Ò¯Ò Ñ
адһлаÑ, «{{int:showpreview}}» ÑÐ¾Ð²Ñ Ð¾Ð»Ð·Ð»Ñн.",
"usercsspreview": "'''Тана CSS боомгин мел Ñ
ÓлÓÐ²Ñ Ð±ÓÓдг ÑÑÑÐºÐ°Ñ ÑодлÑн, ÑÐµÑ Ð¾Ð´Ð° Ñигн Ñ
адһлÑн Ñга!'''",
"userjspreview": "'''Тана JavaScript боомгин мел Ñ
ÓлÓÐ²Ñ Ð±ÓÓдг ÑÑÑÐºÐ°Ñ ÑодлÑн. Тана ÑолÑлһн ода Ñигн Ñ
адһлÑн Ñга!'''",
- "userinvalidcssjstitle": "'''ÐнÑг өгÑн:''' «$1» гидг неÑÓдлһÑÓ Ñ
ÑвÑÐ½Ñ Ð¾Ð»Ò Ð±Ð¸Ñ. ÐÒ¯Ò¯Ð½Ó .css болн .js Ñ
алÑ
Ñ Ò»Ð°Ð½ÑÑ
н биÑкн үзгүдÑÓ Ð±Ð¸ÑÑн кеÑгÑÓ, үлгүÑÐ½Ñ Â«{{ns:user}}:ÐолвÑн/vector.css»; «{{ns:user}}:ÐолвÑн/Vector.css» - бÑÑÑ.",
+ "userinvalidconfigtitle": "'''ÐнÑг өгÑн:''' «$1» гидг неÑÓдлһÑÓ Ñ
ÑвÑÐ½Ñ Ð¾Ð»Ò Ð±Ð¸Ñ. ÐÒ¯Ò¯Ð½Ó .css болн .js Ñ
алÑ
Ñ Ò»Ð°Ð½ÑÑ
н биÑкн үзгүдÑÓ Ð±Ð¸ÑÑн кеÑгÑÓ, үлгүÑÐ½Ñ Â«{{ns:user}}:ÐолвÑн/vector.css»; «{{ns:user}}:ÐолвÑн/Vector.css» - бÑÑÑ.",
"updated": "(ШинÑүлÑн)",
"note": "'''ÐÒгллһн:'''",
"previewnote": "'''Ðн мел Ñ
ÓлÓÐ²Ñ Ð±ÓÓдг ÑÑÑÐºÐ°Ñ ÑодлÑн.'''\nТана ÑолÑлһн ода Ñигн Ñ
адһлÑн Ñга!",
diff --git a/languages/i18n/xmf.json b/languages/i18n/xmf.json
index 5aeadb03c6..b296c6cdb3 100644
--- a/languages/i18n/xmf.json
+++ b/languages/i18n/xmf.json
@@ -883,7 +883,7 @@
"prefs-files": "á¤áááááá",
"prefs-custom-css": "áááá®ááá ááááá¡ CSS",
"prefs-custom-js": "áááá®ááá ááááá¡ JS",
- "prefs-common-css-js": "áááááá CSS/JS á§áááá ááááá¡áááá¡:",
+ "prefs-common-config": "áááááá CSS/JS á§áááá ááááá¡áááá¡:",
"prefs-reset-intro": "áá¡ áááá áá á¨ááá«áááá ááááá§ááááá£áá áá¥ááá¡ áá¥áááá áááá¤ááá£á ááªááá¡ á¨áá¡ááªáááááá á¡áá¬á§áá¡ áááá¤ááá£á ááªáááá. áá ááá¥ááááááá¡ ááááá¡á¢á£á áááá¡ á¨áááá®ááááá¨á, áá¥ááá ááá¦áá á¨áá«áááá ááá¡ ááá£á¥ááááá¡.",
"prefs-emailconfirm-label": "áá-á¤áá¡á¢áá¡ ááááá¡á¢á£á ááá:",
"youremail": "áá-á¤áá¨á¢á:",
@@ -1129,8 +1129,6 @@
"newpageletter": "áá®.",
"boteditletter": "á",
"number_of_watching_users_pageview": "[$1 {{PLURAL:$1|áááá®ááá ááááá¡|áááá®ááá ááááá¡}} áááá¢á ááá]",
- "rc_categories": "á®áááá ááá¢áááá ááá¤á¨á (áááá¨áá ááá \"|\"-áᨠááá¯áááá)",
- "rc_categories_any": "áá á«áááá á",
"rc-change-size-new": "áá·áá ááá á£áᨠá£áá£áá á á: {{PLURAL:$1|áááá¢á|áááá¢á}}",
"newsectionsummary": "/* $1 */ áá®ááá á¡áá¥áªáá",
"rc-enhanced-expand": "ááá¢áááááá¡ á©áááááá",
diff --git a/languages/i18n/yi.json b/languages/i18n/yi.json
index c4c61e2571..429bd9ad1b 100644
--- a/languages/i18n/yi.json
+++ b/languages/i18n/yi.json
@@ -647,7 +647,7 @@
"userjspreview": "'''××¢××¢× ×§× ×Ö·× ××ר ××× ××××× ×××ספר×××××\\פֿ×ר×××ס××¢× ×××ער ××Ö·× ×צער JavaScript.'''\n'''עס ××× ×ער×××²Ö·× × ××× ××©× ×ָפ××¢××××!'''",
"sitecsspreview": "'''××¢××¢× ×§× ×Ö·× ××ר ××× ××××× ×¤Ö¿×ר×××ס××¢× ××¢× ××Ö¸×××§× CSS ק××.'''\n'''ער ××× ×ער×××²Ö·× × ××× ××©× ×××פֿ××¢××××!'''",
"sitejspreview": "'''××¢××¢× ×§× ×Ö·× ××ר ××× ××××× ×¤Ö¿×ר×××ס××¢× ××¢× ××Ö¸×××§× JavaScript ק××.'''\n'''ער ××× ×ער×××²Ö·× × ××× ××©× ×××פֿ××¢××××!'''",
- "userinvalidcssjstitle": "'''××××¨×¢× ×× ×:''' ס××× × ×ש×× ×§××× ×¡×§×× \"$1\". ×××¢× ×§× ×× ×§×ס××¢× .css ××× .js ×××¢×ער × ××¦×¢× ×××ער קע×ס ×××××, e.g. {{ns:user}}:Foo/vector.css ××× ×× ××¢×¨×©× ×¦× {{ns:user}}:Foo/Vector.css.",
+ "userinvalidconfigtitle": "'''××××¨×¢× ×× ×:''' ס××× × ×ש×× ×§××× ×¡×§×× \"$1\". ×××¢× ×§× ×× ×§×ס××¢× .css ××× .js ×××¢×ער × ××¦×¢× ×××ער קע×ס ×××××, e.g. {{ns:user}}:Foo/vector.css ××× ×× ××¢×¨×©× ×¦× {{ns:user}}:Foo/Vector.css.",
"updated": "(×ער×××× ××××)",
"note": "'''×××ערק×× ×:'''",
"previewnote": "'''××¢××¢× ×§× ×Ö·× ××ָס ××× × ×ָר ×Ö· פ×ָר××סק×ק.'''\n×××ערע ×¢× ×ער×× ××¢× ××¢× ×¢× × ×Ö¸× × ××©× ××¢×××!",
@@ -999,7 +999,7 @@
"prefs-files": "×עקעס",
"prefs-custom-css": "××Ö·× ×צער ×עפֿ×× ××¨× CSS",
"prefs-custom-js": "××Ö·× ×צער ×עפֿ×× ××¨× JS",
- "prefs-common-css-js": "ש×תפֿ×ת××קער CSS/JS פֿ×ַר ×Ö·××¢ ×××ספֿ×ר××ר×× ××¢×:",
+ "prefs-common-config": "ש×תפֿ×ת××קער CSS/JS פֿ×ַר ×Ö·××¢ ×××ספֿ×ר××ר×× ××¢×:",
"prefs-reset-intro": "××ר ×§×¢× × × ××¦× ××¢× ×××Ö·× ×¦×ר×קצ×ש××¢×× ×ײַערע ×¤×¨×¢×¤Ö¿×¢×¨×¢× ×¦× ×ר×× ×××¢× ×¤Ö¿×Ö·×¨× ×ר×.\n××¢× ×§×¢× ××ָס × ××©× ×Ö·× ×××ר×.",
"prefs-emailconfirm-label": "×¢-פ××¡× ××ַש××¢××ק×× ×:",
"youremail": "×¢-פ×ס×:",
@@ -1345,8 +1345,6 @@
"newpageletter": "× ",
"boteditletter": "×",
"number_of_watching_users_pageview": "[{{PLURAL:$1|×××× ××Ö·× ×צער פ×ַס×|$1 ××Ö·× ×צערס פ×ַס×}} ××××£]",
- "rc_categories": "××¨×¢× ×¢×¥ פֿ×ַר ק×Ö·××¢××ר×עס (×ָפש×××× ××× \"|\")",
- "rc_categories_any": "×××× ×¢×¨ פ×× ×× ×עק××××¢× ×¢",
"rc-change-size-new": "$1 {{PLURAL:$1|××××|×××××}} × ×× ×ער ×¢× ×ער×× ×",
"newsectionsummary": "/* $1 */ × ×××¢ ×פ×××××× ×",
"rc-enhanced-expand": "צ×××× ××¢××××",
diff --git a/languages/i18n/yo.json b/languages/i18n/yo.json
index ed42790015..7dc88b68ad 100644
--- a/languages/i18n/yo.json
+++ b/languages/i18n/yo.json
@@ -552,7 +552,7 @@
"userjspreview": "''''Ẹ má»Ì gbà gbé pé à dánwò/à ká»ÌyẹÌwò JavaScript onÃá¹£e yÃn nìyÃ.'''\n'''Kò tÃì jáº¹Ì mÃmúpamá»Ì!'''",
"sitecsspreview": "'''Ẹ rántà pé à ká»ÌyẹÌwò CSS nìyÃ.'''\n'''Kò tÃì jáº¹Ì mÃmúpamá»!'''",
"sitejspreview": "'''Ẹ rántà pé à ká»ÌyẹÌwò à mìá»Ìrá»Ì JavaScript nìyÃ.'''\n'''Kò tÃì jáº¹Ì mÃmúpamá»!'''",
- "userinvalidcssjstitle": "'''Ãkìlá»Ì:''' Kò sà awá»-ìbojú \"$1\".\nẸ rántà pé à wá»n ojúewé à kà ná¹£e .css à ti .js únlo à ká»lé onÃlẹÌtà kékeré, f.a. {{ns:user}}:Foo/vector.css yà tò sà {{ns:user}}:Foo/Vector.css.",
+ "userinvalidconfigtitle": "'''Ãkìlá»Ì:''' Kò sà awá»-ìbojú \"$1\".\nẸ rántà pé à wá»n ojúewé à kà ná¹£e .css à ti .js únlo à ká»lé onÃlẹÌtà kékeré, f.a. {{ns:user}}:Foo/vector.css yà tò sà {{ns:user}}:Foo/Vector.css.",
"updated": "(SÃsá»dá»Ìtun)",
"note": "'''ÃkÃyèsÃ:'''",
"previewnote": "'''Ẹ rántà pé à yẹÌwò lásán nì yÃ.'''\nÃwá»n à túná¹£e yÃn kò tÃì jáº¹Ì kìkópamá»Ì!",
@@ -862,7 +862,7 @@
"prefs-files": "Ãwá»n faili",
"prefs-custom-css": "CSS à kà nṣe",
"prefs-custom-js": "JavaScript à kà nṣe",
- "prefs-common-css-js": "CSS/JavaScript à pÃnlò fún gbogbo à wá»n awá»:",
+ "prefs-common-config": "CSS/JavaScript à pÃnlò fún gbogbo à wá»n awá»:",
"prefs-reset-intro": "Ẹ le lo ojúewé yìà láti ṣà tùntò à wá»n ìfẹÌrà n yÃn sà à ká»Ìká»Ìá¹£e ibiìtakùn yìÃ.\nKò nà ṣeé dápadà má»Ì.",
"prefs-emailconfirm-label": "E-mail ìmúdájú:",
"youremail": "E-mail:",
@@ -1105,8 +1105,6 @@
"newpageletter": "T",
"boteditletter": "b",
"number_of_watching_users_pageview": "[{{PLURAL:$1|OnÃá¹£e $1|Ãwá»n onÃá¹£e $1}} ún á¹£e ìmójútó]",
- "rc_categories": "Ãpin sà à wá»n ẹÌka (pÃnsá»Ìtá»Ì pẹÌlú \"|\")",
- "rc_categories_any": "ÃyÃkéyìÃ",
"rc-change-size-new": "$1 {{PLURAL:$1|byte|bytes}} lẹÌyìn à túná¹£e",
"newsectionsummary": "/* $1 */ abala tuntun",
"rc-enhanced-expand": "Ãfihà n ẹÌkúnrẹÌrẹÌ",
diff --git a/languages/i18n/yue.json b/languages/i18n/yue.json
index b303cf70d7..0201c42428 100644
--- a/languages/i18n/yue.json
+++ b/languages/i18n/yue.json
@@ -231,7 +231,7 @@
"lastmodifiedat": "å¢ä¸é å
æå¾ä¿®æ¹ä¿é¿$1 $2ã",
"viewcount": "å¢ä¸é å·²ç¶æ$1人次çéã",
"protectedpage": "åä¿è·é ",
- "jumpto": "è·³å»:",
+ "jumpto": "è·³å»ï¼",
"jumptonavigation": "å®å",
"jumptosearch": "æµå¢",
"view-pool-error": "å°åä½ï¼å伺æå¨é¿å¢æ®µæéè¶
åºåè² è·ã\n太å¤ç¨æ¶è©¦éå»çå¢ä¸çã\né¿åçå¢ä¸çä¹åè«çå¤ä¸é£ã\n\n$1",
@@ -655,7 +655,7 @@
"userjspreview": "'''è¨ä½ä½ è家åªä¿æ¸¬è©¦ï¼é 覽ç·ä½ å®ç¾©å
JavaScriptã'''\n'''ä½¢å
å
§å®¹éæªå²åï¼'''",
"sitecsspreview": "'''è¨ä½ä½ è家åªä¿é 覽å¢æ®µ CSSã'''\n'''ä½¢å
å
§å®¹éæªå²åï¼'''",
"sitejspreview": "'''è¨ä½ä½ è家åªä¿é 覽å¢æ®µ JavaScript 代碼ã'''\n'''ä½¢å
å
§å®¹éæªå²åï¼'''",
- "userinvalidcssjstitle": "'''è¦åï¼''' ç¡å«å \"$1\" å
ç«é¢ãè«è¨ä½èªè¨ä»é¢ç .css å .js é é¢ææ使ç¨ç´°æ¥·ï¼ä¾å¦ï¼{{ns:user}}:Foo/vector.css èåä¿ {{ns:user}}:Foo/Vector.css ã",
+ "userinvalidconfigtitle": "'''è¦åï¼''' ç¡å«å \"$1\" å
ç«é¢ãè«è¨ä½èªè¨ä»é¢ç .css å .js é é¢ææ使ç¨ç´°æ¥·ï¼ä¾å¦ï¼{{ns:user}}:Foo/vector.css èåä¿ {{ns:user}}:Foo/Vector.css ã",
"updated": "(å·±æ´æ°)",
"note": "'''çæï¼'''",
"previewnote": "'''è«è¨ä½å¢ååªä¿é 覽ã'''\næ´æ¹å
å
容éæªå²åï¼",
@@ -1007,7 +1007,7 @@
"prefs-files": "æªæ¡",
"prefs-custom-css": "èªå® CSS",
"prefs-custom-js": "èªå® JavaScript",
- "prefs-common-css-js": "å
±æå
CSSååJavaScriptçææç«é¢ç¨ï¼",
+ "prefs-common-config": "å
±æå
CSSååJavaScriptçææç«é¢ç¨ï¼",
"prefs-reset-intro": "ä½ å¯ä»¥ç¨å¢çå»éè¨ä½ å
å好è¨å®å°ç¶²ç«é è¨å¼ãå¢ååä½ç¡å¾çªè½é ã",
"prefs-emailconfirm-label": "é»éµç¢ºèª:",
"youremail": "é»éµ:",
@@ -1259,6 +1259,7 @@
"rcfilters-activefilters": "ç¨ç·å
篩é¸æ¢ä»¶",
"rcfilters-advancedfilters": "é²éå
篩é¸æ¢ä»¶",
"rcfilters-limit-title": "顯示幾å¤çµæ",
+ "rcfilters-limit-and-date-label": "$1次{{PLURAL:$1|æ¹å}}ï¼$2",
"rcfilters-days-title": "æè¿å¹¾å¤æ¥",
"rcfilters-hours-title": "æè¿å¹¾å¤åéé ",
"rcfilters-days-show-days": "$1 {{PLURAL:$1|æ¥}}",
@@ -1403,8 +1404,6 @@
"newpageletter": "N",
"boteditletter": "b",
"number_of_watching_users_pageview": "[$1ä½ç¨æ¶ç£è¦]",
- "rc_categories": "éå®å°åé¡ï¼ä»¥\"|\"ä½åéï¼ï¼",
- "rc_categories_any": "ä»»ä½æåå
",
"rc-change-size-new": "æ¹å®å¾ä¿$1ä½å
çµ",
"newsectionsummary": "/* $1 */ æ°å°ç¯",
"rc-enhanced-expand": "顯示細ç¯",
@@ -1414,7 +1413,7 @@
"recentchangeslinked-feed": "é£çµé å
æ´æ¹",
"recentchangeslinked-toolbox": "é£çµé å
æ´æ¹",
"recentchangeslinked-title": "å°ã$1ãæéå
æ´æ¹",
- "recentchangeslinked-summary": "å¢ä¸åç¹å¥é å示å''ç±''æçå°å
ä¸çé£çµå°é å
æè¿æ´æ¹ï¼æè
ä¿æå®åé¡å
æå¡ï¼ã\né¿[[Special:Watchlist|ä½ å¼µç£è¦æ¸
å®]]å
çæ以'''ç²é«'''顯示ã",
+ "recentchangeslinked-summary": "輸å
¥ä¸åé åä¾çä¸å°çé£åºå»æè
é£å
¥å»å°çå
é é¢å
ç¸éæ´æ¹ï¼æ³çä¸åé¡å
¥é¢å
çï¼è«è¼¸å
¥Category:åé¡åï¼ãåº[[Special:Watchlist|ä½ å¼µç£è¦æ¸
å®]]å
çæ以ç²é«é¡¯ç¤ºã",
"recentchangeslinked-page": "é å:",
"recentchangeslinked-to": "顯示é£å°æçå°å
ç",
"recentchanges-page-added-to-category": "[[:$1]] å åè½åé¡",
diff --git a/languages/i18n/zea.json b/languages/i18n/zea.json
index 2eb2b61bf1..f8c6f24eed 100644
--- a/languages/i18n/zea.json
+++ b/languages/i18n/zea.json
@@ -392,7 +392,7 @@
"userjsyoucanpreview": "'''Tip:''' Gebruuk de knoppe 'Naekieken' om je nieuwe JS te tessen voe da je opsli.",
"usercsspreview": "'''Dit is alleên een voeôvertonieng van je persoônlijke CSS, dezen is nog nie opeslogen!'''",
"userjspreview": "'''Let op: je test noe je persoônlijke JavaScript. De pagina is nie opeslogen!'''",
- "userinvalidcssjstitle": "'''Waerschuwieng:''' der is hin skin \"$1\". Let op: jen eihen .css- en .js-pagina's behunnen mie een kleine letter, buvobbeld {{ns:user}}:Naem/vector.css in plekke van {{ns:user}}:Naem/Vector.css.",
+ "userinvalidconfigtitle": "'''Waerschuwieng:''' der is hin skin \"$1\". Let op: jen eihen .css- en .js-pagina's behunnen mie een kleine letter, buvobbeld {{ns:user}}:Naem/vector.css in plekke van {{ns:user}}:Naem/Vector.css.",
"updated": "(Biehewerkt)",
"note": "'''Opmerkieng:'''",
"previewnote": "'''Let op: dit is een controlepagina; je tekst is nie opeslogen!'''",
@@ -650,8 +650,6 @@
"newpageletter": "N",
"boteditletter": "b",
"number_of_watching_users_pageview": "[$1 {{PLURAL:$1|keêr|keêr}} op een volglieste]",
- "rc_categories": "Beperk'n tot categorieën (scheien mie een \"|\")",
- "rc_categories_any": "Elk'n",
"newsectionsummary": "/* $1 */ nieuwe subkop",
"rc-enhanced-expand": "Details weerheven (JavaScript vereist)",
"rc-enhanced-hide": "Verbarg details",
diff --git a/languages/i18n/zgh.json b/languages/i18n/zgh.json
new file mode 100644
index 0000000000..4285563355
--- /dev/null
+++ b/languages/i18n/zgh.json
@@ -0,0 +1,533 @@
+{
+ "@metadata": {
+ "authors": [
+ "Amara-Amaziɣ",
+ "Aslmad mohamed belarhzali",
+ "Gagnabil",
+ "Mdb897",
+ "YesIn",
+ "âµâ´°âµâµ"
+ ]
+ },
+ "sunday": "â´°âµâ´°âµâ´°âµ",
+ "monday": "â´°âµ¢âµâ´°âµ",
+ "tuesday": "â´°âµâµâµâ´°âµ",
+ "wednesday": "â´°â´½âµâ´°âµ",
+ "thursday": "ⴰⴽⵡⴰâµ",
+ "friday": "â´°âµâµâµâµ¡â´°âµ",
+ "saturday": "â´°âµâµâ´¹âµ¢â´°âµ",
+ "sun": "â´°âµâ´°",
+ "mon": "â´°âµ¢âµ",
+ "tue": "â´°âµâµ",
+ "wed": "â´°â´½âµ",
+ "thu": "ⴰⴽⵡ",
+ "fri": "â´°âµâµ",
+ "sat": "â´°âµâ´¹",
+ "january": "âµâµâµâ´°âµ¢âµ",
+ "february": "â´±âµâ´°âµ¢âµ",
+ "march": "âµâ´°âµâµ",
+ "april": "âµâ´±âµâµâµ",
+ "may_long": "âµâ´°âµ¢âµ¢âµ",
+ "june": "âµ¢âµâµâµ¢âµ",
+ "july": "âµ¢âµâµâµ¢âµâµ£",
+ "august": "âµâµâµâµ",
+ "september": "âµâµâµâ´°âµâ´±âµâµ",
+ "october": "â´½âµâµâ´±âµ",
+ "november": "âµâµâµ¡â´°âµâ´±âµâµ",
+ "december": "â´·âµâµâ´°âµâ´±âµâµ",
+ "january-gen": "âµâµâµâ´°âµ¢âµ",
+ "february-gen": "â´±âµâ´°âµ¢âµ",
+ "march-gen": "âµâ´°âµâµ",
+ "april-gen": "âµâ´±âµâµâµ",
+ "may-gen": "âµâ´°âµ¢âµ¢âµ",
+ "june-gen": "âµ¢âµâµâµ¢âµ",
+ "july-gen": "âµ¢âµâµâµ¢âµâµ£",
+ "august-gen": "âµâµâµâµ",
+ "september-gen": "âµâµâµâ´°âµâ´±âµâµ",
+ "october-gen": "â´½âµâµâ´±âµ",
+ "november-gen": "âµâµâµ¡â´°âµâ´±âµâµ",
+ "december-gen": "â´·âµâµâ´°âµâ´±âµâµ",
+ "jan": "âµâµâµ",
+ "feb": "â´±âµâ´°",
+ "mar": "âµâ´°âµ",
+ "apr": "âµâ´±âµ",
+ "may": "âµâ´°âµ¢",
+ "jun": "âµ¢âµâµ",
+ "jul": "âµ¢âµâµ",
+ "aug": "âµâµâµ",
+ "sep": "âµâµâµ",
+ "oct": "â´½âµâµ",
+ "nov": "âµâµâµ¡",
+ "dec": "â´·âµâµ",
+ "january-date": "$1 âµâµâµâ´°âµ¢âµ",
+ "february-date": "$1 â´±âµâ´°âµ¢âµ",
+ "march-date": "$1 âµâ´°âµâµ",
+ "april-date": "$1 âµâ´±âµâµâµ",
+ "may-date": "$1 âµâ´°âµ¢âµ¢âµ",
+ "june-date": "$1 âµ¢âµâµâµ¢âµ",
+ "july-date": "$1 âµ¢âµâµâµ¢âµâµ£",
+ "august-date": "$1 âµâµâµâµ",
+ "september-date": "$1 âµâµâµâ´°âµâ´±âµâµ",
+ "november-date": "$1 âµâµâµ¡â´°âµâ´±âµâµ",
+ "december-date": "$1 â´·âµâµâ´°âµâ´±âµâµ",
+ "period-am": "ⴼⵡ",
+ "period-pm": "ⵣⵡ",
+ "pagecategories": "{{PLURAL:$1|â´°âµâµâµâµ|âµâµâµâµâµâµ}}",
+ "category_header": "Tasniwin g usmil \"$1\"",
+ "subcategories": "âµâ´·âµâµâµâµâµâµ",
+ "category-media-header": "âµâµâ´·âµ¢â´° â´³ âµâµâµâµâµ \"$1\"",
+ "hidden-categories": "{{PLURAL:$1|â´°âµâµâµâµ âµâµâµâµâµâµâµ|âµâµâµâµâµâµ âµâµâµâµâµâµâµâµ}}",
+ "about": "âµ
â´¼",
+ "article": "âµâ´°âµâµâ´° âµ âµâµâµâ´°âµ¢âµ",
+ "newwindow": "(â´°â´· âµâµâµâµâµâµ¥âµ â´³ âµâµâ´½âµâµ â´°âµâ´°âµ¢âµâµ)",
+ "cancel": "âµâµ",
+ "moredotdotdot": "âµâ´³â´³â´°âµ...",
+ "mypage": "âµâ´°âµâµâ´°",
+ "mytalk": "âµâµâ´³â´·â´°âµ",
+ "anontalk": "âµâµâ´°âµ¡â´°âµ",
+ "navigation": "â´°âµâµâ´°âµâ´°",
+ "and": " â´·",
+ "namespaces": "âµâµâµâµâµ¡âµâµ âµ âµâµâµâ´°âµ¡âµ",
+ "variants": "âµâµâµâµ£â´°âµâ´°âµ¢âµâµ",
+ "navigation-heading": "âµâµâµâµ âµ âµâµâµâ´°âµâ´°",
+ "errorpagetitle": "âµâ´°âµ£â´³âµâµ",
+ "returnto": "â´°âµâµâµ âµâµ $1.",
+ "tagline": "âµâ´³ {{SITENAME}}",
+ "help": "âµâµâµ¡âµâµâµ",
+ "search": "âµâµ£âµ",
+ "searchbutton": "âµâµ£âµ",
+ "go": "âµâµ£âµ",
+ "searcharticle": "â´·â´·âµ",
+ "history": "â´°âµâµ£âµâ´°âµ¢ âµ âµâ´°âµâµâ´°",
+ "history_short": "â´°âµâµ£âµâµâµ¢",
+ "history_small": "â´°âµâµ£âµâµâµ¢",
+ "printableversion": "âµâµâµâµâµâµâµ âµâµâµâµ¡â´°âµâµâ´³â´³âµ£âµ",
+ "permalink": "â´°âµâµâµ â´°âµâµâµâ´°âµ",
+ "view": "âµâ´½âµ",
+ "view-foreign": "âµâ´½âµ â´³ $1",
+ "edit": "âµâµâ´¼âµ",
+ "create": "âµâµâµâµâ´¼âµ",
+ "delete": "ⴽⴽâµ",
+ "protect_change": "âµâµâ´¼âµ",
+ "newpage": "âµâ´°âµâµâ´° âµâ´°âµâ´°âµ¢âµâµâµ",
+ "talkpagelinktext": "âµâµâ´°âµ¡â´°âµ",
+ "specialpage": "âµâ´°âµâµâµâµ¡âµâµ âµ¥âµâµâµâµâµ",
+ "personaltools": "âµâµâ´°âµâµâµ âµâ´·âµâ´°âµ¡â´°âµâµ",
+ "talk": "â´°âµâµâ´°âµ¡â´°âµ",
+ "views": "âµâ´°âµâµâ´°âµ¢âµâµ",
+ "toolbox": "âµâµâ´°âµâµâµ",
+ "imagepage": "ⵥⵠâµâ´°âµâµâ´° âµ âµâ´¼â´°âµ¢âµâµ",
+ "mediawikipage": "ⵥⵠâµâ´°âµâµâ´° âµ âµâµâµ£âµâµâµ",
+ "viewhelppage": "ⵥⵠâµâ´°âµâµâ´° âµ âµâµ¡âµâµâµ",
+ "otherlanguages": "âµ âµâµâµâµâ´°âµ¢âµâµ ⵢⴰⴹâµâµâµ",
+ "redirectedfrom": "(âµâµâµâµ âµâ´³ $1)",
+ "redirectto": "âµâµâµâµ âµâµ:",
+ "lastmodifiedat": "âµâµâµâ´¼âµ âµâ´°âµâµâ´° â´° âµ âµâµâ´½â´½âµâµ âµâ´°âµâ´³â´³â´°âµâµâµ â´³ $1, â´³ $2.",
+ "jumpto": "âµâ´¹âµ âµâµ:",
+ "jumptonavigation": "â´°âµâµâ´°âµâ´°",
+ "jumptosearch": "âµâµ£âµ",
+ "aboutsite": "âµâ´¼ {{SITENAME}}",
+ "aboutpage": "Project:âµ
â´¼",
+ "copyrightpage": "{{ns:project}}:âµâµ£âµâ´¼â´°âµ âµ âµâµâµâµâµ",
+ "currentevents": "âµâµâµâµâ´°âµâµâµ âµâµâµâµâµâ´°âµâµâµ",
+ "currentevents-url": "Project:âµâµâµâµâ´°âµâµâµ âµâµâµâµâµâ´°âµâµâµ",
+ "disclaimers": "â´°âµâµâµâ´³âµ",
+ "disclaimerpage": "Project:â´°âµâµâµâ´³âµ â´°âµâ´°âµâ´°âµ¢",
+ "edithelp": "âµâµâµ¡âµâµâµ âµ âµâµâµâ´¼âµ",
+ "helppage-top-gethelp": "âµâµâµ¡âµâµâµ",
+ "mainpage": "âµâ´°âµâµâ´° âµ âµâµâµâµâ´±â´³",
+ "mainpage-description": "âµâ´°âµâµâ´° âµ âµâµâµâµâ´±â´³",
+ "policy-url": "Project:âµâ´°âµâµâµâµâµ",
+ "portal": "ⴰⵡⵡâµâµ âµ âµâ´³âµâ´°âµ¡âµ",
+ "portal-url": "Project:ⴰⵡⵡâµâµ âµ âµâ´³âµâ´°âµ¡âµ",
+ "privacy": "âµâ´°âµâµâµâµâµ âµ âµâµâµâµâµâµâµâ´°",
+ "privacypage": "Project:âµâ´°âµâµâµâµâµ âµ âµâµâµâµâµâµâµâ´°",
+ "ok": "ⵡⴰâµ
âµ
â´°",
+ "retrievedfrom": "âµâµâµâµâµâ´°âµâµâµ âµâ´³ $1",
+ "newmessageslinkplural": "{{PLURAL:$1|âµâµâµ£âµâµâµ âµâ´°âµâ´°âµ¢âµâµâµ|999=âµâµâµ£âµâµâµâµ âµâµâµâ´°âµ¢âµâµâµâµâµ}}",
+ "youhavenewmessagesmulti": "âµâµâ´°âµ âµâµâµâ´½ âµâµâµ£âµâµâµâµ âµâµâµâ´°âµ¢âµâµâµâµâµ â´³ $1",
+ "editsection": "âµâµâ´¼âµ",
+ "editold": "âµâµâ´¼âµ",
+ "viewsourceold": "âµâ´½âµ â´°âµâ´°â´³âµ",
+ "editlink": "âµâµâ´¼âµ",
+ "viewsourcelink": "âµâ´½âµ â´°âµâ´°â´³âµ",
+ "editsectionhint": "âµâµâ´¼âµ âµâµâ´³âµ£âµâµ: $1",
+ "toc": "âµâµâµâ´°âµ¢âµâµ",
+ "showtoc": "âµâ´½âµ",
+ "hidetoc": "âµâµâµâµâµ",
+ "confirmable-yes": "ⵢⴰâµ",
+ "confirmable-no": "âµâµâµ",
+ "viewdeleted": "ⵥⵠ$1?",
+ "site-atom-feed": "â´°âµâ´³âµ âµ â´°âµâµâµ âµ $1",
+ "red-link-title": "$1 (âµâ´°âµâµâ´° âµâµ âµâµâµâµ)",
+ "nstab-main": "âµâ´°âµâµâ´°",
+ "nstab-user": "âµâ´°âµâµâ´° âµ âµâµâµâµâ´°âµ",
+ "nstab-special": "âµâ´°âµâµâ´° âµâµ¥âµâµâµ",
+ "nstab-project": "âµâ´°âµâµâ´° âµ âµâµâµâµâµ",
+ "nstab-image": "ⴰⴼⴰⵢâµâµ",
+ "nstab-mediawiki": "âµâµâµ£âµâµâµ",
+ "nstab-template": "âµâ´°âµâ´½â´½â´°",
+ "nstab-help": "âµâ´°âµâµâ´° âµ âµâµ¡âµâµâµ",
+ "nstab-category": "â´°âµâµâµâµ",
+ "mainpage-nstab": "âµâ´°âµâµâ´° âµ âµâµâµâµâ´±â´³",
+ "error": "âµâ´°âµ£â´³âµâµ",
+ "databaseerror-error": "âµâ´°âµ£â´³âµâµ: $1",
+ "viewsource": "âµâ´½âµ â´°âµâ´°â´³âµ",
+ "userlogin-yourname": "âµâµâµ âµ âµâµâµâµâ´°âµ",
+ "userlogin-yourname-ph": "âµâµâ´½âµâµ âµâµâµ âµ âµâµâµâµâµâµâµ âµâµâµ/â´½",
+ "yourpassword": "âµâ´°â´³âµâµâµ âµ âµâµ£âµâ´°âµ¢",
+ "userlogin-yourpassword": "âµâ´°â´³âµâµâµ âµ âµâµ£âµâ´°âµ¢",
+ "userlogin-yourpassword-ph": "âµâµâ´½âµâµ âµâ´°â´³âµâµâµ âµ âµâµ£âµâ´°âµ¢ âµâµâ´½",
+ "createacct-yourpassword-ph": "âµâµâ´½âµâµ â´½âµâ´° âµ âµâ´³âµâµâµ âµ âµâµ£â´°âµâµ¢",
+ "createacct-yourpasswordagain": "âµâµâµâ´½âµ âµâ´°â´³âµâµâµ âµ âµâµ£âµâ´°âµ¢",
+ "createacct-yourpasswordagain-ph": "âµâµâ´½âµâµ â´·â´°âµ âµâ´°â´³âµâµâµ âµ âµâµ£âµâ´°âµ¢",
+ "login": "â´½âµâµ",
+ "login-security": "âµâµâµâ´·â´»â´· âµâ´°âµâ´°â´³âµâµ âµâµâ´½",
+ "logout": "ⴼⴼâµ",
+ "userlogout": "ⴼⴼâµ",
+ "userlogin-noaccount": "âµâµ âµâµâµâ´½ âµâµâµâµ âµâµâµâ´¹â´°âµ?",
+ "createaccount": "âµâµ¥âµ â´½âµâ´° âµ âµâµâµâ´¹â´°âµ",
+ "userlogin-resetpassword-link": "âµâ´»âµâµâµâ´· âµâ´°â´³âµâµâµ âµ âµâµ£âµâ´°âµ¢ âµâµâµ/â´½?",
+ "createacct-emailoptional": "âµâµâ´°âµ¢âµ (â´°âµâµâµâµâµâµ)",
+ "createacct-email-ph": "âµâµâ´½âµâµ â´°âµâµâ´° âµâµâ´°âµ¢âµ âµâµâ´½",
+ "createacct-reason": "âµâ´°âµâµâµâµâµâµ",
+ "createacct-submit": "âµâµ¥âµ â´°âµâµâ´¹â´°âµ {{GENDER:|âµâµâ´½|âµâµâµ}}",
+ "createacct-benefit-heading": "{{SITENAME}} âµâ´»âµâµâµâ´½ âµâ´³ âµâµâ´·â´·âµ ⴰⵠⴽⵢⵢâµâµ",
+ "createacct-benefit-body1": "{{PLURAL:$1|â´°âµâµâ´¼âµ|âµâµâµâ´¼â´°âµ}}",
+ "createacct-benefit-body2": "{{PLURAL:$1|âµâ´°âµâµâ´°|âµâ´°âµâµâµâµ¡âµâµ}}",
+ "createacct-benefit-body3": "{{PLURAL:$1|â´°âµâ´°âµâµ|âµâµâ´°âµâµâµâµ}} {{PLURAL:$1|â´°âµâ´³â´³â´°âµâµ|âµâµâ´³â´³âµâµâ´°}}",
+ "loginlanguagelabel": "âµâµâµâµâ´°âµ¢âµ: $1",
+ "pt-login": "â´½âµâµ",
+ "pt-login-button": "â´½âµâµ",
+ "pt-createaccount": "âµâµâ´¼âµâµâµ â´°âµâµâ´¹â´°âµ",
+ "pt-userlogout": "ⴼⴼâµ",
+ "botpasswords-label-create": "âµâµâµâµâ´¼âµ",
+ "botpasswords-label-delete": "ⴽⴽâµ",
+ "passwordreset": "âµâ´°âµ â´· âµâ´°â´³âµâµâµ âµ âµâµ£âµâ´°âµ¢",
+ "bold_sample": "â´°â´¹âµâµâµ â´°âµ£âµâµâ´°âµ",
+ "bold_tip": "â´°â´¹âµâµâµ â´°âµ£âµâµâ´°âµ",
+ "italic_sample": "â´°â´¹âµâµâµ âµâµ£âµâµâ´³",
+ "italic_tip": "â´°â´¹âµâµâµ âµâµ£âµâµâ´³",
+ "link_sample": "ⴰⵣⵡⵠⵠâµâµâµâµâµ",
+ "link_tip": "â´°âµâµâµâµ ⴰⴳⵯâµâµâ´°âµ",
+ "extlink_sample": "http://www.example.com ⴰⵣⵡⵠⵠâµâµâµâµâµ",
+ "extlink_tip": "â´°âµâµâµâµ â´°â´±âµâµâ´°âµâµ (â´½âµâµ¢ ⴰⵣⵡâµâµ http://)",
+ "image_tip": "ⴰⴼⴰⵢâµâµ âµâµâµâµâµâµâ´·â´¼âµ",
+ "media_tip": "â´°âµâµâµâµ âµ âµâ´¼â´°âµ¢âµâµ",
+ "hr_tip": "âµâµ£âµâµâµâµ â´°â´³âµâ´°âµ¡â´°âµ (âµâµ âµâµâµ¢âµ¢âµ)",
+ "summary": "â´°âµâ´³âµ£âµ:",
+ "minoredit": "ⵡⴰ â´· â´°âµâµâ´¼âµ âµâµâµ¥âµâµ¢",
+ "watchthis": "âµâµâ´°âµâµ âµâ´°âµâµâ´° â´°â´·",
+ "savearticle": "âµâ´¹âµ âµâ´°âµâµâ´°",
+ "showdiff": "âµâµâ´°âµ âµâµâµâ´¼âµâµ",
+ "loginreqlink": "â´½âµâµ",
+ "newarticle": "(â´°âµâ´°âµ¢âµâµ)",
+ "continue-editing": "â´·â´·âµ âµ â´°âµâµâ´° âµ âµâµâµâ´¼âµ",
+ "editing": "â´°âµâµâ´¼âµ âµ $1",
+ "creating": "â´°âµâµâµâµâ´¼âµ âµ $1",
+ "editingsection": "âµâµâ´¼âµ ⴰⴳⵣⵣâµâµ $1",
+ "templatesused": "{{PLURAL:$1|âµâ´°âµâ´½â´½â´°|âµâ´°âµâ´½â´½âµâµ¡âµâµ}} {{PLURAL:$1|âµâµâµâµâµâµâµâµâµ|âµâµâµâµâµâµâµâµâµâµ}} â´³ âµâ´°âµâµâ´° â´°â´·:",
+ "template-protected": "(âµâµâµâµ¢â´°âµâ´°âµ¢)",
+ "hiddencategories": "âµâ´°âµâµâ´° â´° â´· â´°â´³âµâ´°âµ âµ {{PLURAL:$1|1 âµâµâµ â´°âµâµâµâµ|$1 âµâµâµ âµâµâµâµâµâµ}}:",
+ "content-model-wikitext": "wikitext",
+ "revisionasof": "âµâµâµâµâµâµâµ âµ $1",
+ "previousrevision": "âµâµâµâµâµâµâµ âµâ´°âµâ´±âµâµâµ",
+ "cur": "âµâµâµ",
+ "histfirst": "â´°âµâ´±âµâµ",
+ "histlast": "â´°âµâ´°âµ¢âµâµ",
+ "revdelete-show-file-submit": "ⵢⴰâµ",
+ "revdelete-log": "âµâ´°âµâµâµâµâµâµ:",
+ "mergehistory-reason": "âµâ´°âµâµâµâµâµâµ:",
+ "lineno": "âµâµ£âµâµâµâµ $1:",
+ "editundo": "âµâµ",
+ "searchresults": "âµâµâµ¢â´°â´¼âµâµâµâµ âµ âµâµâµ£âµ£âµ",
+ "searchresults-title": "âµâµâµ¢â´°â´¼âµâµâµâµ âµ âµâµâµ£âµ£âµ âµâ´¼ \"$1\"",
+ "nextn": "{{PLURAL:$1|$1}} â´°âµâ´¹â´¼âµâµ",
+ "shown-title": "âµâµâ´°âµ $1 {{PLURAL:$1|âµâµ¢â´°â´¼âµâµ|âµâµ¢â´°â´¼âµâµâµâµ}} âµ âµâ´°âµâµâ´°",
+ "viewprevnext": "ⵥⵠ($1 {{int:pipe-separator}} $2) ($3)",
+ "searchprofile-articles": "âµâ´°âµâµâµâµ¡âµâµ âµ âµâµâµâ´°âµ¢âµ",
+ "searchprofile-images": "âµâµâµâµâµâµâµâ´·âµ¢â´°",
+ "searchprofile-everything": "ⴽⵠâµâ´°âµâ´°âµ¡âµâ´°",
+ "searchprofile-advanced": "âµâµâµ£âµâµ¢",
+ "searchprofile-articles-tooltip": "âµâµ£âµ â´³ $1",
+ "searchprofile-images-tooltip": "âµâµ£âµ âµâ´¼ âµâ´¼âµâµ¢âµâ´°",
+ "searchprofile-everything-tooltip": "âµâµ£âµ â´³ âµâµâµâ´°âµ¢âµ ⴰⴽⴽⵯ (âµâµâ´° â´³ âµâ´°âµâµâµâµ¡âµâµ âµ âµâµâµâ´°âµ¡â´°âµ)",
+ "searchprofile-advanced-tooltip": "âµâµ£âµ â´³ âµâµâµâµâµ¡âµâµ âµ âµâµâµâ´°âµ¡âµ âµâµâµ¡â´°âµâµâµâ´°âµ",
+ "search-result-size": "$1 ({{PLURAL:$2|1 âµâ´³âµâµâµ|$2 âµâ´³âµâµâµâµ¡âµâµ}})",
+ "search-suggest": "âµâµ âµâµ
âµâ´· â´°â´· âµâµâµâµâ´·: $1",
+ "search-interwiki-more": "(âµâ´³â´³â´°âµ)",
+ "searchall": "ⴰⴽⴽ",
+ "mypreferences": "âµâµâµâµâµ¢âµâ´¼âµ",
+ "prefs-files": "âµâ´¼â´°âµ¢âµâµâµâµ",
+ "youremail": "âµâµâ´°âµ¢âµ:",
+ "yourlanguage": "âµâµâµâµâ´°âµ¢âµ:",
+ "yournick": "â´°âµâ´³âµâ´¹ â´°âµâ´°âµ¢âµâµ:",
+ "email": "âµâµâ´°âµ¢âµ",
+ "prefs-signature": "â´°âµâ´³âµâ´¹",
+ "userrights-reason": "âµâ´°âµâµâµâµâµâµ:",
+ "right-upload": "âµâ´½âµâµ âµâ´¼â´°âµ¢âµâµâµâµ",
+ "right-upload_by_url": "âµâ´½âµâµ ⴰⴼⴰⵢâµâµ âµâ´³ URL",
+ "right-writeapi": "â´°âµâµâµâµâµ âµ API âµ âµâµâµâµâ´°",
+ "right-delete": "ⴽⴽⵠâµâ´°âµâµâµâµ¡âµâµ",
+ "newuserlogpage": "â´°âµâµâ´° âµ âµâµâµâ´¼â´°âµâµ âµ âµâµâµâ´¹â´°âµâ´»âµ âµ âµâµâµâµâµâ´°âµâµ",
+ "action-edit": "âµâµâ´¼âµ âµâ´°âµâµâ´° â´°",
+ "action-createpage": "âµâµâµâµâ´¼âµ âµâ´°âµâµâ´° â´°",
+ "enhancedrc-history": "â´°âµâµ£âµâ´°âµ¢",
+ "recentchanges": "âµâµâµâ´¼âµâµ âµâµâ´³â´³âµâµâ´°",
+ "recentchanges-legend": "âµâµâ´·âµâµâµâµ âµ âµâµâµâ´¼âµâµ âµâµâ´³â´³âµâµâ´°",
+ "recentchanges-label-newpage": "âµâµâµâ´¼âµâµâµ âµâµâµâ´¼âµ â´° ⵢⴰⵠâµâ´°âµâµâ´° âµâ´°âµâ´°âµ¢âµâµâµ",
+ "recentchanges-label-minor": "ⵡⴰ â´· â´°âµâµâ´¼âµ âµâµâµ¥âµâµ¢",
+ "recentchanges-label-bot": "â´°âµâµâ´¼âµ â´°â´· âµâµâµ¡â´°âµâ´½â´°âµ âµ âµâ´±âµâµ",
+ "rclistfrom": "âµâ´½âµ âµâµâµâ´¼âµâµ âµâµâ´°âµ¢âµâµâµâµ âµâ´³ $2,$3",
+ "rcshowhideminor": "$1 âµâµâµâ´¼â´°âµ âµâµâµ¥âµâµ¢âµ",
+ "rcshowhideminor-show": "âµâ´½âµ",
+ "rcshowhideminor-hide": "âµâµâµâµâµ",
+ "rcshowhidebots": "$1 {{PLURAL:$1|â´±âµâµ|âµâ´· â´±âµâµ}}",
+ "rcshowhidebots-show": "âµâµâ´°âµ",
+ "rcshowhidebots-hide": "âµâµâµâµâµ",
+ "rcshowhideliu-show": "âµâ´½âµ",
+ "rcshowhideliu-hide": "âµâµâµâµâµ",
+ "rcshowhideanons": "$1 âµâµâµâµâµâµâµâµ âµâµâµâµâµâµâµâµ",
+ "rcshowhideanons-show": "âµâ´½âµ",
+ "rcshowhideanons-hide": "âµâµâµâµâµ",
+ "rcshowhidemine": "$1 âµâµâµâ´¼â´°âµ âµâµâµ",
+ "rcshowhidemine-show": "âµâ´½âµ",
+ "rcshowhidemine-hide": "âµâµâµâµâµ",
+ "rclinks": "âµâ´½âµ âµâµâµâ´¼âµâµâµ $1 âµâµâ´³â´³âµâµâ´° â´³ âµâµâµâ´°âµ $2 âµâµâ´³â´³âµâµâ´°",
+ "diff": "âµâµ£âµâµ¢",
+ "hist": "âµâµ£âµâµ¢",
+ "hide": "âµâµâµâµâµ",
+ "show": "âµâ´½âµ",
+ "minoreditletter": "âµ",
+ "newpageletter": "âµâµ¢âµ",
+ "boteditletter": "â´±âµâµ",
+ "rc-change-size-new": "$1 {{PLURAL:$1|ⴱⴰⵢâµ|âµâ´· ⴱⴰⵢâµ}} ⴷⴼⴼâµâµ âµ âµâµâµâ´¼âµ",
+ "recentchangeslinked": "âµâµâµâ´¼â´°âµ âµâµâ´° âµâµâµ â´°âµâµâ´°âµ",
+ "recentchangeslinked-toolbox": "âµâµâµâ´¼âµâµ âµâµâµâµâµâµ",
+ "recentchangeslinked-title": "âµâµâµâ´¼âµâµ âµâµâµâµâµâµ âµ $1",
+ "recentchangeslinked-summary": "âµâ´½âµâµ âµâµâµ âµ âµâ´°âµâµâ´° âµâµâ´° â´°â´· âµâµ£âµâ´· âµâµâµâ´¼â´°âµâµ âµâµâ´°âµ¢âµâµâµâµ â´³ âµâ´°âµâµâµâµ¡âµâµ âµâ´³ âµâµ âµâµ âµâ´°âµâµâ´° â´°â´· (âµâµâ´° â´°â´· âµâµ£âµâ´· âµâ´³âµâ´°âµâµ âµ â´½âµâ´° âµ âµâµâµâµâµ, âµâ´½âµâµ â´°âµâµâµâµ: âµâµâµ âµ âµâµâµâµâµ). âµâµâµâ´¼âµâµ âµ âµâ´°âµâµâµâµ¡âµâµ âµâµâµâ´°âµ â´³ [[Special:Watchlist|âµâ´°âµâ´³â´°âµâµ âµ âµâ´¹â´¼â´¼âµâµ âµâ´½]] âµâ´°â´· âµâµ¢â´°âµâ´°âµ âµ âµâµ£âµâµâ´°âµ",
+ "recentchangeslinked-page": "âµâµâµ âµ âµâ´°âµâµâ´°:",
+ "upload": "âµâ´½âµâµ ⴰⴼⴰⵢâµâµ",
+ "uploadbtn": "âµâ´½âµâµ ⴰⴼⴰⵢâµâµ",
+ "filedesc": "â´°âµâ´³âµ£âµ",
+ "upload-form-label-infoform-name": "âµâµâµ",
+ "upload-form-label-usage-filename": "âµâµâµ âµ âµâ´¼â´°âµ¢âµâµ",
+ "upload-form-label-infoform-date": "â´°âµâ´°â´½âµâ´·",
+ "license-header": "âµâµâµâ´°â´³âµ",
+ "listfiles-delete": "ⴽⴽâµ",
+ "imgfile": "ⴰⴼⴰⵢâµâµ",
+ "listfiles": "âµâ´°âµâ´³â´°âµâµ âµ âµâ´¼â´°âµ¢âµâµ",
+ "listfiles_date": "â´°âµâ´°â´½âµâ´·",
+ "listfiles_name": "âµâµâµ",
+ "listfiles-latestversion-yes": "ⵢⴰâµ",
+ "listfiles-latestversion-no": "âµâµâµ",
+ "file-anchor-link": "ⴰⴼⴰⵢâµâµ",
+ "filehist": "â´°âµâµ£âµâµâµ¢ âµ âµâ´¼â´°âµ¢âµâµ",
+ "filehist-help": "â´°â´·âµ âµâ´¼ âµâµâ´°â´½âµâ´·/â´°â´½âµâ´· âµâµâ´° â´°â´· âµâµ¥âµâ´· â´°âµâ´·â´°âµ¡ âµâ´°âµâ´½ ⵢⴰⴷâµâµâµ âµâ´³â´° â´°âµâµâ´· â´°âµ.",
+ "filehist-deleteone": "ⴽⴽâµ",
+ "filehist-current": "â´°âµâµâµâ´°âµ",
+ "filehist-datetime": "â´°âµâ´°â´½âµâ´·/â´°â´½âµâ´·",
+ "filehist-thumb": "âµâ´°âµâµâµ¢â´°âµâµ",
+ "filehist-thumbtext": "âµâ´°âµâµâµ¢â´°âµâµ âµ âµâµâµâµâµâµâµ â´³ $1",
+ "filehist-user": "â´°âµâµâµâ´°âµ",
+ "filehist-dimensions": "âµâµâµâ´°â´·âµ",
+ "filehist-comment": "â´°âµâ´¼â´°âµ¡â´°âµ",
+ "imagelinks": "â´°âµâµâµâµ âµ âµâ´¼â´°âµ¢âµâµ",
+ "linkstoimage": "{{PLURAL:$1|âµâµ£â´·â´°âµ¢âµ âµ âµâµâµâ´°|$1 ⴰⵣⴷⴰⵢ âµ âµâµâµâ´°}} âµâµ âµâ´¼â´°âµ¢âµâµ â´°â´·:",
+ "sharedupload-desc-here": "â´°âµâ´·â´°âµ¡ â´°â´· âµâ´³ $1 âµâµ¥â´¹â´°âµ â´° âµâµâµâµ¡â´°âµâµâµâµ â´³ âµâµâµâµâ´°âµ¢âµ ⵢⴰⴹâµ.\nâ´°âµâµâµâµâµâµ âµâµ â´³ [$2 âµâ´°âµâµâ´° âµâµ âµ âµâµâµâµâµâµâµ] âµâµ¡â´°âµâµâ´°âµ âµâ´°â´·âµ.",
+ "filepage-nofile": "âµâµ âµâ´¼â´°âµ¢âµâµ âµ âµ¢âµâµâµ â´°.",
+ "filerevert-comment": "âµâ´°âµâµâµâµâµâµ:",
+ "filedelete": "ⴽⴽⵠ$1",
+ "filedelete-legend": "ⴽⴽⵠⴰⴼⴰⵢâµâµ",
+ "filedelete-comment": "âµâ´°âµâµâµâµâµâµ:",
+ "filedelete-submit": "ⴽⴽâµ",
+ "download": "â´°â´³âµ",
+ "randompage": "âµâ´°âµâµâ´° âµâ´°â´·âµâµâ´°âµâµ",
+ "statistics": "â´°âµâµâµâ´½âµâ´°",
+ "statistics-pages": "âµâ´°âµâµâµâµ¡âµâµ",
+ "brokenredirects-delete": "ⴽⴽâµ",
+ "withoutinterwiki-legend": "ⴰⵣⵡâµâµ",
+ "nbytes": "$1 {{PLURAL:$1|ⴱⴰⵢâµ|âµâ´· ⴱⴰⵢâµ}}",
+ "nmembers": "$1 {{PLURAL:$1|âµâ´³âµâ´°âµ|âµâ´³âµâ´°âµâµ}}",
+ "prefixindex": "âµâ´°âµâµâ´° âµâ´°âµâµâµâµ¡âµâµ â´· âµâµ£âµ¡âµâµ",
+ "protectedpages-page": "âµâ´°âµâµâ´°",
+ "protectedpages-reason": "âµâ´°âµâµâµâµâµâµ",
+ "listusers": "âµâµâµâµ âµ âµâµâµâµâµâµâµ",
+ "newpages": "âµâ´°âµâµâµâµ¡âµâµ âµâµâµâ´°âµ¢âµâµâµâµâµ",
+ "move": "âµâµâµâµâµâµ",
+ "apisandbox-examples": "âµâµâ´·âµ¢â´°âµâµ",
+ "booksources": "âµâµâµâ´³â´°âµ âµ âµâ´·âµâµâµ",
+ "booksources-search-legend": "âµâµ£âµ âµ
â´¼ âµâ´·âµâµâµâµ âµ âµâµâ´°â´³âµ",
+ "booksources-search": "âµâµ£âµ",
+ "allpages": "âµâ´°âµâµâ´° âµâ´°âµâµâµâµ¡âµâµ",
+ "allarticles": "âµâ´°âµâµâµâµ¡âµâµ ⴰⴽⴽ",
+ "allpagessubmit": "â´·â´·âµ",
+ "categories": "âµâµâµâµâµâµ",
+ "sp-deletedcontributions-contribs": "âµâµâµâµâµâµâµ",
+ "listgrouprights-members": "âµâ´°âµâ´³â´°âµâµ âµ âµâ´³âµâ´°âµâµ",
+ "watchlist": "âµâ´°âµâ´³â´°âµâµ âµ âµâ´¹â´¼â´¼âµâµ",
+ "mywatchlist": "âµâ´°âµâ´³â´°âµâµ âµ âµâ´¹â´¼â´¼âµâµ",
+ "watchlistfor2": "âµ $1 $2",
+ "watch": "âµ¥âµ",
+ "wlshowlast": "âµâ´½âµ $1 âµâ´°âµâµâ´°â´³âµâµ $2 âµâµâµâ´°âµ âµâµâ´³â´³âµâµâ´°",
+ "watchlist-options": "âµâµâ´·âµâµâµâµ âµ âµâµâ´³â´°âµâµ âµ âµâ´¹â´¼â´¼âµâµ",
+ "deletepage": "ⴽⴽⵠâµâ´°âµâµâ´°",
+ "delete-confirm": "ⴽⴽⵠ\"$1\"",
+ "delete-legend": "ⴽⴽâµ",
+ "deletecomment": "âµâ´°âµâµâµâµâµâµ:",
+ "rollbacklink": "âµâ´°âµ",
+ "changecontentmodel-reason-label": "âµâ´°âµâµâµâµâµâµ:",
+ "protectedarticle": "âµâµâµâ´¹âµ \"[[$1]]\"",
+ "protectcomment": "âµâ´°âµâµâµâµâµâµ:",
+ "restriction-edit": "âµâµâ´¼âµ",
+ "restriction-move": "âµâµâµâµâµâµ",
+ "undeletecomment": "âµâ´°âµâµâµâµâµâµ:",
+ "undelete-show-file-submit": "ⵢⴰâµ",
+ "namespace": "âµâµâµâµâµ¡âµâµ âµ âµâµâµâ´°âµ¡âµ:",
+ "invert": "âµâµâµ
â´°âµâ´¼ â´°âµâµâµ",
+ "blanknamespace": "(â´°â´·âµâµâ´°âµ)",
+ "contributions": "âµâµâµâµâµâµâµ âµ {{GENDER:$1|âµâµâµâµâµâµâµ}}",
+ "mycontris": "âµâµâµâµâµâµâµ",
+ "anoncontribs": "âµâµâµâµâµâµâµ",
+ "contribsub2": "âµ {{GENDER:$3|$1}} ($2)",
+ "sp-contributions-talk": "âµâµâ´°âµ¡â´°âµ",
+ "sp-contributions-submit": "âµâµ£âµ",
+ "whatlinkshere": "âµâ´° ⴰⵢⴷ âµâµâµâµâµ âµ â´·â´°",
+ "whatlinkshere-title": "âµâ´°âµâµâµâµ¡âµâµ âµâµ£â´·âµâµ âµâµ $1",
+ "whatlinkshere-page": "âµâ´°âµâµâ´°:",
+ "linkshere": "âµâ´°âµâµâµâµ¡âµâµ â´°â´· ⵣⴷâµâµ âµâµ [[:$1]]:",
+ "nolinkshere": "âµâµ âµâµâµâµ âµâ´°âµâµâµâµ¡âµâµ âµâµ£â´·âµâµ âµâµ [[:$1]]",
+ "isimage": "â´°âµâµâµâµ âµ âµâ´¼â´°âµ¢âµâµ",
+ "whatlinkshere-links": "â âµâµâµâµâµâ´»âµ",
+ "whatlinkshere-hidelinks": "$1 âµâµâµâµâµâ´»âµ",
+ "whatlinkshere-hideimages": "$1 âµâµ£â´·â´°âµ¢âµ âµâµ âµâ´¼âµâµâµ¢âµ",
+ "whatlinkshere-filters": "âµâµâµâµâµâ´°âµ¢âµâµ",
+ "ipbreason": "âµâ´°âµâµâµâµâµâµ:",
+ "blocklist-reason": "âµâ´°âµâµâµâµâµâµ",
+ "blocklink": "ⴳⴷâµ",
+ "contribslink": "âµâµâµâµâµâµâµ",
+ "movereason": "âµâ´°âµâµâµâµâµâµ:",
+ "delete_and_move_confirm": "ⵢⴰâµ, ⴽⴽⵠâµâ´°âµâµâ´°",
+ "allmessagesname": "âµâµâµ",
+ "allmessages-language": "âµâµâµâµâ´°âµ¢âµ:",
+ "allmessages-filter-translate": "âµâµâµâµâµ",
+ "thumbnail-more": "âµâµâµâµâµâµâµ",
+ "tooltip-pt-userpage": "âµâ´°âµâµâ´° âµ âµâµâµâµâ´°âµ {{GENDER:|âµâµâ´½|âµâµâµ}}",
+ "tooltip-pt-mytalk": "âµâ´°âµâµâ´° {{GENDER:|âµâµâ´½|âµâµâµ}} âµ âµâµâµâ´°âµ¡â´°âµ",
+ "tooltip-pt-preferences": "âµâµâµâµâµ¢âµâ´¼âµ {{GENDER:|âµâµâ´½|âµâµâµ}}",
+ "tooltip-pt-mycontris": "ⵢⴰⵠâµâµâ´³â´°âµâµ âµ âµâµâµâµâµâµâµ {{GENDER:|âµâµâ´½|âµâµâµ}}",
+ "tooltip-pt-login": "â´°âµâ´½ âµâµâµâµâµâ´°â´± â´°âµâ´½âµâµâµ; âµâ´°âµ âµâµ âµâ´³âµ âµâµ£âµâµâµâµ",
+ "tooltip-pt-logout": "ⴼⴼâµ",
+ "tooltip-pt-createaccount": "â´°âµâ´½ âµâµâµâµâµâ´°â´± â´° âµâµ£âµâµ£âµ£âµâµ â´°âµâµâ´¹â´°âµ â´· â´° âµâ´½âµâµâµ; âµâ´°âµ âµâµ âµâ´³âµ âµâµ£âµâµâµâµ",
+ "tooltip-ca-talk": "â´°âµâµâ´°âµ¡â´°âµ âµâ´¼ âµâµâµâ´°âµ¢âµ âµ âµâ´°âµâµâ´°",
+ "tooltip-ca-edit": "âµâµâ´¼âµ âµâ´°âµâµâ´° â´°",
+ "tooltip-ca-addsection": "âµâµâµâµ ⵢⴰⵠâµâ´³âµ£âµâµ âµâ´°âµâ´°âµ¢âµâµâµ",
+ "tooltip-ca-viewsource": "âµâ´°âµâµâ´° â´° âµâ´»âµâµâµ¢â´°âµâ´°âµ¢.\nâµâµ£âµâµâ´· â´° âµâµ¥âµâ´· â´°âµâ´°â´³â´°âµ",
+ "tooltip-ca-history": "â´°âµâµ£âµâ´°âµ¢ âµ âµâµâµâµâ´°âµ âµ âµâ´°âµâµâ´° â´°â´·",
+ "tooltip-ca-protect": "ⵢⴰâµâ´°âµ¢ âµâ´°âµâµâ´° â´°",
+ "tooltip-ca-delete": "ⴽⴽⵠâµâ´°âµâµâ´° â´°â´·",
+ "tooltip-ca-move": "âµâµâµâµâµâµ âµâ´°âµâµâ´° â´°",
+ "tooltip-ca-watch": "âµâµâµ âµâ´°âµâµâ´° â´° âµ âµâµâ´³â´°âµâµ âµ âµâ´¹â´¼â´¼âµâµ {{GENDER:|âµâµâ´½|âµâµâµ}}",
+ "tooltip-ca-unwatch": "ⴽⴽⵠâµâ´°âµâµâ´° â´° âµâ´³ âµâµâµâµ âµ âµâµâµâµâµâµâµ {{GENDER:|âµâµâ´½|âµâµâµ}}",
+ "tooltip-search": "âµâµ£âµ â´³ {{SITENAME}}",
+ "tooltip-search-go": "â´·â´·âµ âµ âµâ´°âµâµâ´° âµâµ âµ¢âµâµâµ â´° âµâ´½ âµâµâµâ´°",
+ "tooltip-search-fulltext": "âµâµ£âµ âµâ´°âµâµâµâµ¡âµâµ â´³ âµâµâµâ´° âµâ´¹âµâµâµ â´°",
+ "tooltip-p-logo": "â´·â´·âµ âµâµ âµâµâµâµâ´±â´³",
+ "tooltip-n-mainpage": "ⴽⴽ â´· âµâ´°âµâµâ´° âµ âµâµâµâµâ´±â´³",
+ "tooltip-n-mainpage-description": "ⴽⴽ â´· âµâ´°âµâµâ´° âµ âµâµâµâµâ´±â´³",
+ "tooltip-n-portal": "âµâ´¼ âµâµâµâ´¼â´°âµ, âµâ´° ⴰⵢⴷ âµâµ£âµâµâ´· â´°â´· âµ âµâ´³â´·, âµâ´°âµâµ â´³ âµâ´°â´· âµâ´°â´¼â´· âµâµâµâ´°âµ¡âµâµâµ¡âµâµ",
+ "tooltip-n-currentevents": "â´°â´¼ âµâ´³â´³â´°âµ âµ âµâµâµâµâµâµâµ âµâ´¼ âµâµâµâµâ´°âµâµâµ âµâµâµâµâµâ´°âµâµâµ",
+ "tooltip-n-recentchanges": "ⵢⴰⵠâµâµâ´³â´°âµâµ âµ âµâµâµâ´¼âµâµ âµâµâ´³â´³âµâµâ´° â´³ ⵡâµâ´½âµ",
+ "tooltip-n-randompage": "ⵣⴷⵠâµâ´°âµâµâ´° âµâ´°â´·âµâµâ´°âµâµ",
+ "tooltip-n-help": "The place to find out",
+ "tooltip-t-whatlinkshere": "âµâµâµâµ âµ âµâ´°âµâµ âµâ´°âµâµâµâµ¡âµâµ ⵠⵡâµâ´½âµ âµâµ£â´·âµâµ âµ â´·â´°",
+ "tooltip-t-recentchangeslinked": "âµâµâµâ´¼âµâµ âµâµâ´³â´³âµâµâ´° â´³ âµâ´°âµâµâµâµ¡âµâµ âµâµ£â´·âµâµ âµâµ âµâ´°âµâµâ´° â´°",
+ "tooltip-t-contributions": "ⵢⴰⵠâµâµâ´³â´°âµâµ âµ âµâµâµâµâµâµâµ âµ {{GENDER:$1|âµâµâµâµâ´°âµ â´°}}",
+ "tooltip-t-emailuser": "ⴰⵣⵠⵢⴰⵠâµâµâ´°âµ¢âµ âµ {{GENDER:$1|â´°âµâµâµâµâµâµ â´°|âµâ´°âµâµâµâµâµâµâµ â´°}}",
+ "tooltip-t-upload": "âµâ´½âµâµ âµâ´¼âµâµ¢âµâ´°",
+ "tooltip-t-specialpages": "ⵢⴰⵠâµâµâ´³â´°âµâµ âµ âµâ´°âµâµâµâµ¡âµâµ ⴰⴽⴽ âµ¥âµâµâµâµâµ",
+ "tooltip-t-print": "âµâµâµâµâµâµâµ âµâµâµâµ¡â´°âµâµâ´³â´³âµ£âµ âµ âµâ´°âµâµâ´° â´°â´·",
+ "tooltip-t-permalink": "â´°âµâµâµâµ â´°âµâµâµâ´°âµ âµ âµâµâµâµâµâµâµ â´°â´· âµ âµâ´°âµâµâ´°",
+ "tooltip-ca-nstab-main": "âµâ´½âµ âµâµâµâ´°âµ¢âµ âµ âµâ´°âµâµâ´°",
+ "tooltip-ca-nstab-user": "ⵥⵠâµâ´°âµâµâ´° âµ âµâµâµâµâ´°âµ",
+ "tooltip-ca-nstab-special": "âµâ´°â´· âµâ´³â´° ⵢⴰⵠâµâ´°âµâµâ´° âµâµ£âµâµâµ, âµâµ ⵢⴰâµâµâ´¼âµâµ â´°â´· âµâ´»âµâµâµâµâµâ´¼âµ",
+ "tooltip-ca-nstab-project": "ⵥⵠâµâ´°âµâµâ´° âµ âµâµâµâµâµ",
+ "tooltip-ca-nstab-image": "âµâ´½âµ âµâ´°âµâµâ´° âµ âµâ´¼â´°âµ¢âµâµ",
+ "tooltip-ca-nstab-template": "ⵥⵠâµâ´°âµâ´½â´½â´°",
+ "tooltip-ca-nstab-category": "âµâ´½âµ â´°âµâ´°âµ¡ âµ âµâ´°âµâµâ´°",
+ "tooltip-save": "âµâ´¹âµ âµâµâµâ´¼â´°âµ âµâµâ´½",
+ "tooltip-diff": "âµâ´½âµ âµâ´°âµ âµâµâµâ´¼â´°âµ âµâ´³â´³âµâ´· âµ âµâ´¹âµâµâµ",
+ "tooltip-watch": "âµâµâµ âµâ´°âµâµâ´° â´° âµ âµâµâ´³â´°âµâµ âµ âµâ´¹â´¼â´¼âµâµ {{GENDER:|âµâµâ´½|âµâµâµ}}",
+ "tooltip-rollback": "\"âµâ´°âµ\" âµâµâµ â´°âµâµâ´¼âµ âµâµ âµâµâµâ´¼â´°âµâµ âµ âµâµâ´°â´·âµâ´°âµ¡ â´°âµâ´³â´³â´°âµâµ â´³ âµâ´°âµâµâ´° â´· ⵠⵢⴰⵠâµâ´½âµâµâ´½",
+ "pageinfo-header-edits": "âµâµâ´¼âµ â´°âµâµ£âµâµâµ¢",
+ "pageinfo-display-title": "âµâ´½âµ ⴰⵣⵡâµ",
+ "pageinfo-language": "âµâµâµâµâ´°âµ¢âµ âµ âµâµâµâ´°",
+ "pageinfo-watchers": "âµâµâµâµâµ âµ âµâµâµ¥âµâ´°âµ¢âµ âµ âµâ´°âµâµâ´°",
+ "pageinfo-firsttime": "â´°âµâ´°â´½âµâ´· âµ âµâµâµâ´¼âµâµâµ âµ âµâ´°âµâµâ´°",
+ "pageinfo-lastuser": "â´°âµâµâµâ´¼âµ â´°âµâ´³â´³â´°âµâµ",
+ "pageinfo-lasttime": "â´°âµâ´°â´½âµâ´· âµ âµâµâµâ´¼âµ â´°âµâ´³â´³â´°âµâµ",
+ "pageinfo-edits": "âµâ´°âµâµâ´° âµâµâµâµâµ âµ âµâµâµâ´¼â´°âµâµ",
+ "pageinfo-hidden-categories": "âµâµâµ {{PLURAL:$1|â´°âµâµâµâµ|âµâµâµâµâµâµ}}($1)",
+ "pageinfo-toolboxlink": "â´°âµâµâµâµâµ âµâ´¼ âµâ´°âµâµâ´°",
+ "pageinfo-contentpage-yes": "ⵢⴰâµ",
+ "pageinfo-protect-cascading-yes": "ⵢⴰâµ",
+ "previousdiff": "â´°âµâµâ´¼âµ â´°âµâ´³â´³â´°âµâµ",
+ "nextdiff": "â´°âµâµâ´¼âµ â´°âµâ´°âµ¢âµâµ",
+ "file-info-size": "$1 à $2 âµâ´· â´±âµâ´½âµâµ, âµâµâ´·â´·âµ âµ âµâ´¼â´°âµ¢âµâµ: $3, â´°âµâ´°âµ¡ MIME: $4",
+ "svg-long-desc": "ⴰⴼⴰⵢâµâµ SVG, âµ $1 à $2 âµâ´· â´±âµâ´½âµâµ, âµâµâ´·â´·âµ âµ âµâ´¼â´°âµ¢âµâµ: $3",
+ "show-big-image": "ⴰⴼⴰⵢâµâµ â´°âµâ´°âµâ´°âµ",
+ "show-big-image-preview": "âµâ´°âµâµâ´½âµâ´° âµ âµâµ£âµâµâµ£âµ¡â´°âµ â´°â´·: $1.",
+ "show-big-image-size": "$1 à $2 âµâ´· â´±âµâ´½âµâµ",
+ "metadata": "âµâµâµâ´°â´·â´°âµâ´°",
+ "metadata-fields": "âµâ´³âµâ´°âµ âµ âµâµâµâ´°âµâµâ´¼â´½â´° âµ âµâµâµ¡âµâ´°â´¼âµâµ âµâµâ´° âµâ´¼âµâµâµ â´³ âµâ´±âµâ´°âµ â´°â´· âµâ´°â´· âµâµâµâµ â´³ âµâ´°âµâµâ´° âµ âµâµâµâµâµâµâµ âµ âµâ´°âµ¡âµâ´°â´¼âµ â´°â´½âµâ´· âµâµâ´° âµâµâµâµ âµâµâ´½âµâµâµ. âµâ´³âµâ´°âµ ⵢⴰⴹⵠâµâ´°â´· ⴼⴼâµâµ âµ âµâµâµâ´°â´¹.\n* make\n* model\n* datetimeoriginal\n* exposuretime\n* fnumber\n* isospeedratings\n* focallength\n* artist\n* copyright\n* imagedescription\n* gpslatitude\n* gpslongitude\n* gpsaltitude",
+ "exif-orientation": "â´°âµâµ¡â´°âµâ´°",
+ "exif-datetime": "â´°âµâ´°â´½âµâ´· â´· ⵡⴰⴽâµâ´· âµ âµâµâµâ´¼âµ âµ âµâ´¼â´°âµ¢âµâµ",
+ "exif-languagecode": "âµâµâµâµâ´°âµ¢âµ",
+ "exif-dc-contributor": "âµâµâ´°âµâµâµâµ",
+ "exif-iimcategory-edu": "â´°âµâ´³âµâµ",
+ "exif-iimcategory-hth": "âµâ´°â´·âµâµâµ",
+ "namespacesall": "ⴰⴽⴽⵯ",
+ "monthsall": "âµâ´°âµâµâ´°",
+ "confirm_purge_button": "ⵡⴰâµ
âµ
â´°",
+ "confirm-watch-button": "ⵡⴰâµ
âµ
â´°",
+ "confirm-unwatch-button": "ⵡⴰâµ
âµ
â´°",
+ "confirm-rollback-button": "ⵡⴰâµ
âµ
â´°",
+ "imgmultigo": "â´·â´·âµ!",
+ "imgmultigoto": "â´·â´·âµ âµâµ âµâ´°âµâµâ´° â´°â´· $1",
+ "img-lang-default": "(âµâµâµâµâ´°âµ¢âµ âµ âµâµ¡âµâµâµ)",
+ "watchlisttools-clear": "âµâ´¼â´¹ âµâ´°âµâ´³â´°âµâµ âµ âµâ´¹â´¼â´¼âµâµ",
+ "watchlisttools-edit": "ⵥⵠⴷ âµâµâµâ´¼âµâ´· âµâ´°âµâ´³â´°âµâµ âµ âµâ´¹â´¼â´¼âµâµ",
+ "redirect-submit": "â´·â´·âµ",
+ "redirect-file": "âµâµâµ âµ âµâ´¼â´°âµâµ¢âµ",
+ "specialpages": "âµâ´°âµâµâµâµ¡âµâµ âµ¥âµâµâµâµâµ",
+ "specialpages-group-pagetools": "âµâµâ´°âµâµâµ âµ âµâ´°âµâµâ´°",
+ "tag-filter": "âµâµâµ [[Special:Tags|âµâµâµâµâµâµ]]:",
+ "tag-list-wrapper": "([[Special:Tags|{{PLURAL:$1|â´°âµâµâµâµ|âµâµâµâµâµâµ}}]]: $2)",
+ "tags-active-yes": "ⵢⴰâµ",
+ "tags-active-no": "âµâµâµ",
+ "tags-delete": "ⴽⴽâµ",
+ "tags-create-reason": "âµâ´°âµâµâµâµâµâµ:",
+ "tags-delete-reason": "âµâ´°âµâµâµâµâµâµ:",
+ "tags-activate-reason": "âµâ´°âµâµâµâµâµâµ:",
+ "tags-deactivate-reason": "âµâ´°âµâµâµâµâµâµ:",
+ "tags-edit-reason": "âµâ´°âµâµâµâµâµâµ:",
+ "compare-page1": "âµâ´°âµâµâ´° 1",
+ "compare-page2": "âµâ´°âµâµâ´° 2",
+ "htmlform-no": "âµâµâµ",
+ "htmlform-yes": "ⵢⴰâµ",
+ "logentry-delete-delete": "$1 {{GENDER:$2|âµâ´½â´½âµ|âµâ´½â´½âµ}} âµâ´°âµâµâ´° $3",
+ "logentry-move-move": "$1 {{GENDER:$2|âµâµâµâµâµâµâµ|âµâµâµâµâµâµâµ}} âµâ´°âµâµâ´° âµâ´³ $3 âµâµ $4",
+ "logentry-newusers-create": "{{GENDER:$2|âµâµâµâ´¼âµ âµâµâµâµâµâµâµ|âµâµâµâ´¼âµ âµâµâµâµâµâµâµâµ}} $1 â´°âµâµâ´¹â´°âµ âµâµ",
+ "logentry-upload-upload": "{{GENDER:$2|âµâµâ´½âµâµ|âµâµâ´½âµâµ}} $1 $3",
+ "feedback-thanks-title": "âµâ´°âµâµâµâµâµâµ!",
+ "searchsuggest-search": "âµâµ£âµ â´³ {{SITENAME}}",
+ "expand_templates_ok": "ⵡⴰâµ
âµ
â´°",
+ "pagelanguage": "âµâµâ´¼âµ âµâµâµâµâ´°âµ¢âµ âµ âµâ´°âµâµâ´°",
+ "pagelang-name": "âµâ´°âµâµâ´°",
+ "pagelang-language": "âµâµâµâµâ´°âµ¢âµ",
+ "right-pagelang": "âµâµâ´¼âµ âµâµâµâµâ´°âµ¢âµ âµ âµâ´°âµâµâ´°",
+ "authmanager-email-label": "âµâµâ´°âµ¢âµ",
+ "authmanager-realname-label": "âµâµâµ â´°âµâ´·â´·â´°âµ",
+ "authmanager-realname-help": "âµâµâµ â´°âµâ´·â´·â´°âµ âµ âµâµâµâµâµâµâµ",
+ "credentialsform-account": "âµâµâµ âµ âµâµâµâ´¹â´°âµ:"
+}
diff --git a/languages/i18n/zh-hans.json b/languages/i18n/zh-hans.json
index 298d6b3fa3..96b9d91586 100644
--- a/languages/i18n/zh-hans.json
+++ b/languages/i18n/zh-hans.json
@@ -740,7 +740,7 @@
"userjspreview": "请记ä½æ¨ç°å¨åªæ¯å¨æµè¯/é¢è§æ¨çç¨æ·JavaScriptãå®å°æªä¿åï¼",
"sitecsspreview": "请记ä½æ¨ç°å¨åªæ¯å¨é¢è§è¯¥CSSãå®å°æªä¿åï¼",
"sitejspreview": "请记ä½æ¨ç°å¨åªæ¯å¨é¢è§è¯¥JavaScript代ç ãå®å°æªä¿åï¼",
- "userinvalidcssjstitle": "è¦åï¼ä¸åå¨ç®è¤â$1âã注æèªå®ä¹ç .css å .js 页è¦ä½¿ç¨å°åæ é¢ï¼ä¾å¦ï¼{{ns:user}}:Foo/vector.css ä¸åäº {{ns:user}}:Foo/Vector.cssã",
+ "userinvalidconfigtitle": "è¦åï¼ä¸åå¨ç®è¤â$1âã注æèªå®ä¹ç .css å .js 页è¦ä½¿ç¨å°åæ é¢ï¼ä¾å¦ï¼{{ns:user}}:Foo/vector.css ä¸åäº {{ns:user}}:Foo/Vector.cssã",
"updated": "ï¼å·²æ´æ°ï¼",
"note": "注æï¼",
"previewnote": "请记ä½è¿åªæ¯é¢è§ãæ¨çæ´æ¹å°æªä¿åï¼",
@@ -1107,7 +1107,7 @@
"prefs-files": "æ件",
"prefs-custom-css": "èªå®ä¹CSS",
"prefs-custom-js": "èªå®ä¹JavaScript",
- "prefs-common-css-js": "ææç®è¤å
±ç¨çCSS/JavaScriptï¼",
+ "prefs-common-config": "ææç®è¤å
±ç¨çCSS/JavaScriptï¼",
"prefs-reset-intro": "å¯ä»¥éè¿æ¬é¡µé¢å°ç³»ç»è®¾ç½®é置为ç½ç«é»è®¤å¼ã该æä½æ æ³æ¤éã",
"prefs-emailconfirm-label": "çµåé®ä»¶ç¡®è®¤ï¼",
"youremail": "çµåé®ä»¶ï¼",
@@ -1541,8 +1541,6 @@
"newpageletter": "æ°",
"boteditletter": "æº",
"number_of_watching_users_pageview": "[$1个å
³æ³¨ç¨æ·]",
- "rc_categories": "åç±»éå¶ï¼ç¨â|âåéï¼ï¼",
- "rc_categories_any": "ä»»ä½éæ©ç",
"rc-change-size-new": "æ´æ¹åæ$1åè",
"newsectionsummary": "/* $1 */ æ°ç« è",
"rc-enhanced-expand": "æ¾ç¤ºç»è",
@@ -2700,6 +2698,7 @@
"thumbnail_dest_directory": "æ æ³å»ºç«ç®æ ç®å½",
"thumbnail_image-type": "å¾åç±»åä¸æ¯æ",
"thumbnail_gd-library": "æªå®æçGD设置ï¼åè½é失 $1",
+ "thumbnail_image-size-zero": "å¾çæ件大å°ç似为0ã",
"thumbnail_image-missing": "æ件å¯è½ä¸¢å¤±ï¼$1",
"thumbnail_image-failure-limit": "è¿æå°è¯çææ¤ç¼©ç¥å¾å¤±è´¥å¤ªå¤æ¬¡ï¼$1次ææ´å¤ï¼ã请ç¨ååè¯ã",
"import": "导å
¥é¡µé¢",
diff --git a/languages/i18n/zh-hant.json b/languages/i18n/zh-hant.json
index 0387142a06..0010afba33 100644
--- a/languages/i18n/zh-hant.json
+++ b/languages/i18n/zh-hant.json
@@ -161,7 +161,7 @@
"thu": "å",
"fri": "äº",
"sat": "å
",
- "january": "ä¸æ",
+ "january": "1æ",
"february": "äºæ",
"march": "ä¸æ",
"april": "åæ",
@@ -172,7 +172,7 @@
"september": "ä¹æ",
"october": "åæ",
"november": "åä¸æ",
- "december": "åäºæ",
+ "december": "12æ",
"january-gen": "ä¸æ",
"february-gen": "äºæ",
"march-gen": "ä¸æ",
@@ -185,18 +185,18 @@
"october-gen": "åæ",
"november-gen": "åä¸æ",
"december-gen": "åäºæ",
- "jan": "1 æ",
- "feb": "2 æ",
- "mar": "3 æ",
- "apr": "4 æ",
- "may": "5 æ",
- "jun": "6 æ",
- "jul": "7 æ",
- "aug": "8 æ",
- "sep": "9 æ",
- "oct": "10 æ",
- "nov": "11 æ",
- "dec": "12 æ",
+ "jan": "1æ",
+ "feb": "2æ",
+ "mar": "3æ",
+ "apr": "4æ",
+ "may": "5æ",
+ "jun": "6æ",
+ "jul": "7æ",
+ "aug": "8æ",
+ "sep": "9æ",
+ "oct": "10æ",
+ "nov": "11æ",
+ "dec": "12æ",
"january-date": "1æ$1æ¥",
"february-date": "2æ$1æ¥",
"march-date": "3æ$1æ¥",
@@ -305,7 +305,7 @@
"pool-errorunknown": "ä¸æé¯èª¤",
"pool-servererror": "ç¡æ³ä½¿ç¨ç¨åºè¨æ¸æå ($1)ã",
"poolcounter-usage-error": "ç¨æ³é¯èª¤ï¼$1",
- "aboutsite": "éæ¼ {{SITENAME}}",
+ "aboutsite": "éæ¼{{SITENAME}}",
"aboutpage": "Project:éæ¼",
"copyright": "é¤éå¦æ註æï¼å¦åææå
§å®¹ç以 $1 æ¢æ¬¾ææ¬ã",
"copyrightpage": "{{ns:project}}:çæ¬",
@@ -359,7 +359,7 @@
"site-atom-feed": "$1 ç Atom ä¾æº",
"page-rss-feed": "\"$1\" ç RSS ä¾æº",
"page-atom-feed": "\"$1\" ç Atom ä¾æº",
- "red-link-title": "$1 (é é¢ä¸åå¨)",
+ "red-link-title": "$1ï¼é é¢ä¸åå¨ï¼",
"sort-descending": "éåªæåº",
"sort-ascending": "æåªæåº",
"nstab-main": "é é¢",
@@ -376,7 +376,7 @@
"nosuchaction": "ç¡æ¤åä½",
"nosuchactiontext": "URL ææå®çåä½ç¡æã\næ¨ç URL å¯è½è¼¸å
¥é¯èª¤ï¼æé»é¸äºé¯èª¤çé£çµã\néä¹å¯è½æ¯ {{SITENAME}} 使ç¨ç系統åºç¾åé¡ã",
"nosuchspecialpage": "ç¡æ¤ç¹æ®é é¢",
- "nospecialpagetext": "æ¨è«æ±çç¹æ®é é¢ç¡æã\n\n欲åå¾ææçç¹æ®é é¢æ¸
å®å¯è³ [[Special:SpecialPages|{{int:specialpages}}]]ã",
+ "nospecialpagetext": "æ¨è«æ±çç¹å®é é¢ç¡æã\n\n欲åå¾ææçç¹å®é é¢æ¸
å®å¯è³ [[Special:SpecialPages|{{int:specialpages}}]]ã",
"error": "é¯èª¤",
"databaseerror": "è³æ庫é¯èª¤",
"databaseerror-text": "åºç¾è³æ庫æ¥è©¢é¯èª¤ã\néå¯è½è¡¨ç¤ºç³»çµ±æåé¡åå¨ã",
@@ -733,7 +733,7 @@
"userjspreview": "æ¨ç®åæ£é 覽æ¨ç使ç¨è
JavaScriptï¼JavaScript éå°æªå²åï¼",
"sitecsspreview": "æ¨ç®åæ£é è¦½æ¤ CSSï¼CSS éå°æªå²åï¼",
"sitejspreview": "æ¨ç®åæ£é è¦½æ¤ JavaScriptï¼JavaScript éå°æªå²åï¼",
- "userinvalidcssjstitle": "è¦åï¼ ç¡æ¤å¤è§æ¨£å¼ \"$1\"ã\nèªè¨ç .css å .js é é¢è¦ä½¿ç¨å°å¯«æ¨é¡ï¼ä¾å¦ï¼{{ns:user}}:Foo/vector.css è {{ns:user}}:Foo/Vector.css æ¯ä¸åçã",
+ "userinvalidconfigtitle": "è¦åï¼ ç¡æ¤å¤è§æ¨£å¼ \"$1\"ã\nèªè¨ç .css å .js é é¢è¦ä½¿ç¨å°å¯«æ¨é¡ï¼ä¾å¦ï¼{{ns:user}}:Foo/vector.css è {{ns:user}}:Foo/Vector.css æ¯ä¸åçã",
"updated": "(å·²æ´æ°)",
"note": "注æï¼",
"previewnote": "æ¨ç®åæ£å¨é 覽ï¼æ¨çè®æ´éå°æªå²åï¼",
@@ -992,7 +992,7 @@
"prevn-title": "å $1 ççµæ",
"nextn-title": "å¾ $1 ççµæ",
"shown-title": "æ¯é 顯示 $1 ççµæ",
- "viewprevnext": "æª¢è¦ ($1 {{int:pipe-separator}} $2) ($3)",
+ "viewprevnext": "檢è¦ï¼$1{{int:pipe-separator}} $2ï¼ï¼$3ï¼",
"searchmenu-exists": "æ¤ Wiki å·²æåç¨±çº \"[[:$1]]\" çé é¢ã {{PLURAL:$2|0=|æè«åèå
¶ä»æå°çµæã}}",
"searchmenu-new": "æ¼æ¤ Wiki 建ç«é é¢ \"[[:$1]]\"ï¼{{PLURAL:$2|0=|æè«åèæ¨è¼¸å
¥çæ¢ä»¶æ¾å°çæå°çµæã|æè«åèå
¶ä»æå°çµæã}}",
"searchprofile-articles": "å
§å®¹é é¢",
@@ -1100,7 +1100,7 @@
"prefs-files": "æªæ¡",
"prefs-custom-css": "èªè¨ CSS",
"prefs-custom-js": "èªè¨ JavaScript",
- "prefs-common-css-js": "ææå¤è§å
±ç¨ç CSS/JavaScriptï¼",
+ "prefs-common-config": "ææå¤è§å
±ç¨ç CSS/JavaScriptï¼",
"prefs-reset-intro": "æ¨å¯ä»¥ä½¿ç¨æ¤é é¢éè¨æ¨çå好è¨å®çºç¶²ç«é è¨å¼ã\néååä½å°ç¡æ³å¾©åã",
"prefs-emailconfirm-label": "é»åéµä»¶ç¢ºèªï¼",
"youremail": "Emailï¼",
@@ -1534,9 +1534,7 @@
"newpageletter": "æ°",
"boteditletter": "æ©",
"number_of_watching_users_pageview": "[$1 ä½æ£å¨ç£è¦ç使ç¨è
]",
- "rc_categories": "åé¡éå¶ (以 \"|\" åé)ï¼",
- "rc_categories_any": "ä»»ä½é¸æç",
- "rc-change-size-new": "è®æ´å¾çº $1 ä½å
çµ",
+ "rc-change-size-new": "è®æ´å¾çº$1ä½å
çµ",
"newsectionsummary": "/* $1 */ æ°ç« ç¯",
"rc-enhanced-expand": "顯示詳細è³æ",
"rc-enhanced-hide": "é±è詳細è³æ",
@@ -2691,6 +2689,7 @@
"thumbnail_dest_directory": "ç¡æ³å»ºç«ç®æ¨ç®é",
"thumbnail_image-type": "ä¸æ¯æ´çåçé¡å",
"thumbnail_gd-library": "æªå®æ GD è¨å®ï¼ç¼ºå°å½æ¸ $1",
+ "thumbnail_image-size-zero": "åçæªæ¡å¤§å°ä¼¼ä¹çºé¶ã",
"thumbnail_image-missing": "æªæ¡éºå¤±ï¼$1",
"thumbnail_image-failure-limit": "æè¿é¡¯ç¤ºæ¤ç¸®åå·²ç¼ç太å¤æ¬¡å¤±æ ($1 次ææ´å¤)ï¼è«ç¨å¾å試ã",
"import": "å¯å
¥é é¢",
@@ -2840,7 +2839,7 @@
"creditspage": "é é¢è£½ä½ç¾¤",
"nocredits": "æ¤é é¢æ²æ製ä½ç¾¤è³è¨ã",
"spamprotectiontitle": "åå¾è¨æ¯é濾ç¨å¼",
- "spamprotectiontext": "æ¨è¼¸å
¥æåå
§å®¹å·²è¢«åå¾è¨æ¯é濾ç¨å¼ç¦æ¢å²åï¼\nå¯è½å æ¨çå
§å®¹å
å«äºå·²å°éçå¤é¨é£çµã",
+ "spamprotectiontext": "æ¨è¼¸å
¥æåå
§å®¹å·²è¢«åå¾è¨æ¯é濾ç¨å¼ç¦æ¢å²åï¼å¯è½å æ¨çå
§å®¹å
å«äºå·²å°éçå¤é¨é£çµã",
"spamprotectionmatch": "以ä¸æåå
§å®¹è§¸ç¼åå¾è¨æ¯é濾ç¨å¼ï¼$1",
"spambot_username": "MediaWiki åå¾è¨æ¯æ¸
ç",
"spam_reverting": "éåè³æªå
å« $1 é£çµçææ°ä¿®è¨",
@@ -3387,7 +3386,7 @@
"colon-separator": "ï¼",
"word-separator": "",
"ellipsis": "â¦",
- "parentheses": " ($1)",
+ "parentheses": "ï¼$1ï¼",
"quotation-marks": "\"$1\"",
"imgmultipageprev": "â ä¸ä¸é ",
"imgmultipagenext": "ä¸ä¸é â",
@@ -3746,7 +3745,7 @@
"logentry-protect-protect-cascade": "$1 {{GENDER:$2|å·²ä¿è·}} $3 $4 [é£é]",
"logentry-protect-modify": "$1 {{GENDER:$2|å·²æ´æ¹}} $3 çä¿è·å±¤ç´ $4",
"logentry-protect-modify-cascade": "$1 {{GENDER:$2|å·²æ´æ¹}} $3 çä¿è·å±¤ç´ $4 [é£é]",
- "logentry-rights-rights": "$1 {{GENDER:$2|å·²æ´æ¹}} {{GENDER:$6|$3}} ç群çµæå¡è³æ ¼ç± $4 æçº $5",
+ "logentry-rights-rights": "$1å·²å°{{GENDER:$6|$3}}ç使ç¨è
群çµå¾$4{{GENDER:$2|æ´æ¹}}è³$5",
"logentry-rights-rights-legacy": "$1 {{GENDER:$2|å·²æ´æ¹}} $3 ç群çµæå¡è³æ ¼",
"logentry-rights-autopromote": "$1 å·²èªå{{GENDER:$2|æå}}å¾ $4 æçº $5",
"logentry-upload-upload": "$1 {{GENDER:$2|å·²ä¸å³}} $3",
@@ -3766,7 +3765,7 @@
"logentry-tag-update-remove-logentry": "$1 {{GENDER:$2|已移é¤}}{{PLURAL:$9|æ¨ç±¤|æ¨ç±¤}} $8 èªæ¥èªé
ç® $3 çä¿®è¨ $5ã",
"logentry-tag-update-revision": "$1 {{GENDER:$2|å·²æ´æ°}}æ¨ç±¤æ¼é é¢ $3 çä¿®è¨ $4 ({{PLURAL:$7|å å
¥}} $6; {{PLURAL:$9|移é¤}} $8)ã",
"logentry-tag-update-logentry": "$1 {{GENDER:$2|å·²æ´æ°}}æ¨ç±¤æ¼é é¢ $3 çæ¥èªé
ç® $5 ({{PLURAL:$7|å å
¥}} $6; {{PLURAL:$9|移é¤}} $8)ã",
- "rightsnone": "(ç¡)",
+ "rightsnone": "ï¼ç¡ï¼",
"rightslogentry-temporary-group": "$1 (è¨æï¼ç´å° $2)",
"feedback-adding": "æ£å¨æ°å¢æè¦åé¥è³é é¢...",
"feedback-back": "è¿å",
diff --git a/languages/messages/MessagesCs.php b/languages/messages/MessagesCs.php
index 94b0a348a1..affcc8358a 100644
--- a/languages/messages/MessagesCs.php
+++ b/languages/messages/MessagesCs.php
@@ -160,6 +160,7 @@ $specialPageAliases = [
'Withoutinterwiki' => [ 'Bez_interwiki', 'Stránky_bez_interwiki_odkazů' ],
];
+// TODO: unify "Strana" with "Stránka"
$magicWords = [
'redirect' => [ '0', '#PÅESMÄRUJ', '#REDIRECT' ],
'notoc' => [ '0', '__BEZOBSAHU__', '__NOTOC__' ],
@@ -199,6 +200,7 @@ $magicWords = [
'pagenamee' => [ '1', 'NÃZEVSTRANYE', 'PAGENAMEE' ],
'namespace' => [ '1', 'JMENNÃPROSTOR', 'NAMESPACE' ],
'namespacee' => [ '1', 'JMENNÃPROSTORE', 'NAMESPACEE' ],
+ 'namespacenumber' => [ '1', 'ÄÃSLOJMENNÃHOPROSTORU', 'NAMESPACENUMBER' ],
'talkspace' => [ '1', 'DISKUSNÃPROSTOR', 'TALKSPACE' ],
'talkspacee' => [ '1', 'DISKUSNÃPROSTORE', 'TALKSPACEE' ],
'subjectspace' => [ '1', 'ÄLÃNEKPROSTOR', 'SUBJECTSPACE', 'ARTICLESPACE' ],
@@ -207,6 +209,8 @@ $magicWords = [
'fullpagenamee' => [ '1', 'PLNÃNÃZEVSTRANYE', 'FULLPAGENAMEE' ],
'subpagename' => [ '1', 'NÃZEVPODSTRANY', 'SUBPAGENAME' ],
'subpagenamee' => [ '1', 'NÃZEVPODSTRANYE', 'SUBPAGENAMEE' ],
+ 'rootpagename' => [ '1', 'NÃZEVKOÅENOVÃSTRANY', 'ROOTPAGENAME' ],
+ 'rootpagenamee' => [ '1', 'NÃZEVKOÅENOVÃSTRANYE', 'ROOTPAGENAMEE' ],
'basepagename' => [ '1', 'NÃZEVNADSTRANY', 'BASEPAGENAME' ],
'basepagenamee' => [ '1', 'NÃZEVNADSTRANYE', 'BASEPAGENAMEE' ],
'talkpagename' => [ '1', 'NÃZEVDISKUSE', 'TALKPAGENAME' ],
@@ -227,12 +231,22 @@ $magicWords = [
'img_lang' => [ '1', 'jazyk=$1', 'lang=$1' ],
'img_page' => [ '1', 'strana=$1', 'strana_$1', 'page=$1', 'page $1' ],
'img_border' => [ '1', 'okraj', 'border' ],
+ 'img_link' => [ '1', 'odkaz=$1', 'link=$1' ],
+ 'img_class' => [ '1', 'tÅÃda=$1', 'class=$1' ],
+ 'int' => [ '0', 'HLÃÅ ENÃ:', 'INT:' ],
'sitename' => [ '1', 'NÃZEVWEBU', 'SITENAME' ],
'ns' => [ '0', 'JMENNÃPROSTOR:', 'NS:' ],
+ 'nse' => [ '0', 'JMENNÃPROSTORE:', 'NSE:' ],
'localurl' => [ '0', 'MÃSTNÃURL:', 'LOCALURL:' ],
'localurle' => [ '0', 'MÃSTNÃURLE:', 'LOCALURLE:' ],
+ 'articlepath' => [ '0', 'CESTAKÄLÃNKU', 'ARTICLEPATH' ],
+ 'pageid' => [ '0', 'IDSTRÃNKY', 'PAGEID' ],
'servername' => [ '0', 'NÃZEVSERVERU', 'SERVERNAME' ],
+ 'scriptpath' => [ '0', 'CESTAKESKRIPTŮM', 'SCRIPTPATH' ],
+ 'stylepath' => [ '0', 'CESTAKESTYLŮM', 'STYLEPATH' ],
'grammar' => [ '0', 'SKLOÅUJ:', 'GRAMMAR:' ],
+ 'gender' => [ '0', 'POHLAVÃ:', 'GENDER:' ],
+ 'bidi' => [ '0', 'OBASMÄRY:', 'BIDI:' ],
'notitleconvert' => [ '0', '__BEZKONVERZENADPISU__', '__NOTITLECONVERT__', '__NOTC__' ],
'nocontentconvert' => [ '0', '__BEZKONVERZEOBSAHU__', '__NOCONTENTCONVERT__', '__NOCC__' ],
'currentweek' => [ '1', 'AKTUÃLNÃTÃDEN', 'CURRENTWEEK' ],
@@ -243,24 +257,32 @@ $magicWords = [
'revisionday' => [ '1', 'DENREVIZE', 'REVISIONDAY' ],
'revisionday2' => [ '1', 'DENREVIZE2', 'REVISIONDAY2' ],
'revisionmonth' => [ '1', 'MÄSÃCREVIZE', 'REVISIONMONTH' ],
+ 'revisionmonth1' => [ '1', 'MÄSÃCREVIZE1', 'REVISIONMONTH1' ],
'revisionyear' => [ '1', 'ROKREVIZE', 'REVISIONYEAR' ],
'revisiontimestamp' => [ '1', 'KÃDÄASUREVIZE', 'REVISIONTIMESTAMP' ],
+ 'revisionuser' => [ '1', 'AUTORREVIZE', 'REVISIONUSER' ],
+ 'revisionsize' => [ '1', 'VELIKOSTREVIZE', 'REVISIONSIZE' ],
'plural' => [ '0', 'PLURÃL:', 'PLURAL:' ],
'fullurl' => [ '0', 'PLNÃURL:', 'FULLURL:' ],
'fullurle' => [ '0', 'PLNÃURLE:', 'FULLURLE:' ],
+ 'canonicalurl' => [ '0', 'KANONICKÃURL:', 'CANONICALURL:' ],
+ 'canonicalurle' => [ '0', 'KANONICKÃURLE:', 'CANONICALURLE:' ],
'lcfirst' => [ '0', 'PRVNÃMALÃ:', 'LCFIRST:' ],
'ucfirst' => [ '0', 'PRVNÃVELKÃ:', 'UCFIRST:' ],
'lc' => [ '0', 'MALÃ:', 'LC:' ],
'uc' => [ '0', 'VELKÃ:', 'UC:' ],
'displaytitle' => [ '1', 'ZOBRAZOVANÃNADPIS', 'DISPLAYTITLE' ],
'newsectionlink' => [ '1', '__LINKPÅIDATKOMENTÃÅ__', '__NEWSECTIONLINK__' ],
+ 'nonewsectionlink' => [ '1', '__BEZLINKUPÅIDATKOMENTÃÅ__', '__NONEWSECTIONLINK__' ],
'currentversion' => [ '1', 'VERZESOFTWARE', 'CURRENTVERSION' ],
'urlencode' => [ '0', 'ENKÃDOVATURL:', 'URLENCODE:' ],
'anchorencode' => [ '0', 'ENKÃDOVATNADPIS', 'ANCHORENCODE' ],
'currenttimestamp' => [ '1', 'AKTUÃLNÃKÃDÄASU', 'CURRENTTIMESTAMP' ],
'localtimestamp' => [ '1', 'MÃSTNÃKÃDÄASU', 'LOCALTIMESTAMP' ],
+ 'directionmark' => [ '1', 'ZNAKSMÄRU', 'DIRECTIONMARK', 'DIRMARK' ],
'language' => [ '0', '#JAZYK:', '#LANGUAGE:' ],
'contentlanguage' => [ '1', 'JAZYKOBSAHU', 'CONTENTLANGUAGE', 'CONTENTLANG' ],
+ 'pagelanguage' => [ '1', 'JAZYKSTRÃNKY', 'PAGELANGUAGE' ],
'pagesinnamespace' => [ '1', 'STRÃNEKVEJMENNÃMPROSTORU:', 'PAGESINNAMESPACE:', 'PAGESINNS:' ],
'numberofadmins' => [ '1', 'POÄETSPRÃVCÅ®', 'NUMBEROFADMINS' ],
'formatnum' => [ '0', 'FORMÃTUJÄÃSLO', 'FORMATNUM' ],
@@ -268,7 +290,7 @@ $magicWords = [
'padright' => [ '0', 'ZAROVNATVPRAVO', 'PADRIGHT' ],
'special' => [ '0', 'speciálnÃ', 'special' ],
'defaultsort' => [ '1', 'KLÃÄÅAZENÃ:', 'DEFAULTSORT:', 'DEFAULTSORTKEY:', 'DEFAULTCATEGORYSORT:' ],
- 'filepath' => [ '0', 'CESTAKSOUBORU', 'FILEPATH:' ],
+ 'filepath' => [ '0', 'CESTAKSOUBORU:', 'FILEPATH:' ],
'tag' => [ '0', 'znaÄka', 'tag' ],
'hiddencat' => [ '1', '__SKRÃTKAT__', '__HIDDENCAT__' ],
'pagesincategory' => [ '1', 'STRÃNEKVKATEGORII', 'STRÃNEKVKAT', 'PAGESINCATEGORY', 'PAGESINCAT' ],
@@ -276,7 +298,13 @@ $magicWords = [
'index' => [ '1', '__INDEXOVAT__', '__INDEX__' ],
'noindex' => [ '1', '__NEINDEXOVAT__', '__NOINDEX__' ],
'staticredirect' => [ '1', '__STATICKÃPÅESMÄROVÃNÃ__', '__STATICREDIRECT__' ],
+ 'numberingroup' => [ '1', 'POÄETVESKUPINÄ', 'NUMBERINGROUP', 'NUMINGROUP' ],
'protectionlevel' => [ '1', 'ÃROVEÅZAMÄENÃ', 'PROTECTIONLEVEL' ],
+ 'protectionexpiry' => [ '1', 'VYPRÅ ENÃZAMÄENÃ', 'PROTECTIONEXPIRY' ],
+ 'formatdate' => [ '0', 'formátujdatum', 'formatdate', 'dateformat' ],
+ 'pagesincategory_all' => [ '0', 'vše', 'all' ],
+ 'pagesincategory_pages' => [ '0', 'stránky', 'pages' ],
+ 'pagesincategory_subcats' => [ '0', 'kategorie', 'subcats' ],
'pagesincategory_files' => [ '0', 'soubory', 'files' ],
];
diff --git a/languages/messages/MessagesEs_formal.php b/languages/messages/MessagesEs_formal.php
new file mode 100644
index 0000000000..2c5d727c0e
--- /dev/null
+++ b/languages/messages/MessagesEs_formal.php
@@ -0,0 +1,11 @@
+addOption( 'profiler', 'Profiler output format (usually "text")', false, true );
+ // This is named --mwdebug, because --debug would conflict in the phpunit.php CLI script.
+ $this->addOption( 'mwdebug', 'Enable built-in MediaWiki development settings', false, true );
# Save generic options to display them separately in help
$this->mGenericParameters = $this->mParams;
@@ -1009,7 +1011,7 @@ abstract class Maintenance {
// ... append parameters ...
if ( $this->mParams ) {
- $output .= " [--" . implode( array_keys( $this->mParams ), "|--" ) . "]";
+ $output .= " [--" . implode( "|--", array_keys( $this->mParams ) ) . "]";
}
// ... and append arguments.
@@ -1149,6 +1151,11 @@ abstract class Maintenance {
MediaWikiServices::getInstance()->getDBLoadBalancerFactory()->destroy();
}
+ # Apply debug settings
+ if ( $this->hasOption( 'mwdebug' ) ) {
+ require __DIR__ . '/../includes/DevelopmentSettings.php';
+ }
+
// Per-script profiling; useful for debugging
$this->activateProfiler();
@@ -1287,7 +1294,7 @@ abstract class Maintenance {
* This function has the same parameters as wfGetDB()
*
* @param int $db DB index (DB_REPLICA/DB_MASTER)
- * @param array $groups default: empty array
+ * @param string|string[] $groups default: empty array
* @param string|bool $wiki default: current wiki
* @return IMaintainableDatabase
*/
diff --git a/maintenance/archives/patch-actor-table.sql b/maintenance/archives/patch-actor-table.sql
new file mode 100644
index 0000000000..fdd95e8014
--- /dev/null
+++ b/maintenance/archives/patch-actor-table.sql
@@ -0,0 +1,57 @@
+--
+-- patch-actor-table.sql
+--
+-- T167246. Add an `actor` table and various columns (and temporary tables) to reference it.
+
+CREATE TABLE /*_*/actor (
+ actor_id bigint unsigned NOT NULL PRIMARY KEY AUTO_INCREMENT,
+ actor_user int unsigned,
+ actor_name varchar(255) binary NOT NULL
+) /*$wgDBTableOptions*/;
+CREATE UNIQUE INDEX /*i*/actor_user ON /*_*/actor (actor_user);
+CREATE UNIQUE INDEX /*i*/actor_name ON /*_*/actor (actor_name);
+
+CREATE TABLE /*_*/revision_actor_temp (
+ revactor_rev int unsigned NOT NULL,
+ revactor_actor bigint unsigned NOT NULL,
+ revactor_timestamp binary(14) NOT NULL default '',
+ revactor_page int unsigned NOT NULL,
+ PRIMARY KEY (revactor_rev, revactor_actor)
+) /*$wgDBTableOptions*/;
+CREATE UNIQUE INDEX /*i*/revactor_rev ON /*_*/revision_actor_temp (revactor_rev);
+CREATE INDEX /*i*/actor_timestamp ON /*_*/revision_actor_temp (revactor_actor,revactor_timestamp);
+CREATE INDEX /*i*/page_actor_timestamp ON /*_*/revision_actor_temp (revactor_page,revactor_actor,revactor_timestamp);
+
+ALTER TABLE /*_*/archive
+ ALTER COLUMN ar_user_text SET DEFAULT '',
+ ADD COLUMN ar_actor bigint unsigned NOT NULL DEFAULT 0 AFTER ar_user_text;
+CREATE INDEX /*i*/ar_actor_timestamp ON /*_*/archive (ar_actor,ar_timestamp);
+
+ALTER TABLE /*_*/ipblocks
+ ADD COLUMN ipb_by_actor bigint unsigned NOT NULL DEFAULT 0 AFTER ipb_by_text;
+
+ALTER TABLE /*_*/image
+ ALTER COLUMN img_user_text SET DEFAULT '',
+ ADD COLUMN img_actor bigint unsigned NOT NULL DEFAULT 0 AFTER img_user_text;
+CREATE INDEX /*i*/img_actor_timestamp ON /*_*/image (img_actor, img_timestamp);
+
+ALTER TABLE /*_*/oldimage
+ ALTER COLUMN oi_user_text SET DEFAULT '',
+ ADD COLUMN oi_actor bigint unsigned NOT NULL DEFAULT 0 AFTER oi_user_text;
+CREATE INDEX /*i*/oi_actor_timestamp ON /*_*/oldimage (oi_actor,oi_timestamp);
+
+ALTER TABLE /*_*/filearchive
+ ALTER COLUMN fa_user_text SET DEFAULT '',
+ ADD COLUMN fa_actor bigint unsigned NOT NULL DEFAULT 0 AFTER fa_user_text;
+CREATE INDEX /*i*/fa_actor_timestamp ON /*_*/filearchive (fa_actor,fa_timestamp);
+
+ALTER TABLE /*_*/recentchanges
+ ALTER COLUMN rc_user_text SET DEFAULT '',
+ ADD COLUMN rc_actor bigint unsigned NOT NULL DEFAULT 0 AFTER rc_user_text;
+CREATE INDEX /*i*/rc_ns_actor ON /*_*/recentchanges (rc_namespace, rc_actor);
+CREATE INDEX /*i*/rc_actor ON /*_*/recentchanges (rc_actor, rc_timestamp);
+
+ALTER TABLE /*_*/logging
+ ADD COLUMN log_actor bigint unsigned NOT NULL DEFAULT 0 AFTER log_user_text;
+CREATE INDEX /*i*/actor_time ON /*_*/logging (log_actor, log_timestamp);
+CREATE INDEX /*i*/log_actor_type_time ON /*_*/logging (log_actor, log_type, log_timestamp);
diff --git a/maintenance/checkLess.php b/maintenance/checkLess.php
index f001236a58..55ffcb838f 100644
--- a/maintenance/checkLess.php
+++ b/maintenance/checkLess.php
@@ -43,7 +43,7 @@ class CheckLess extends Maintenance {
self::requireTestsAutoloader();
// If phpunit isn't available by autoloader try pulling it in
- if ( !class_exists( 'PHPUnit_Framework_TestCase' ) ) {
+ if ( !class_exists( 'PHPUnit\\Framework\\TestCase' ) ) {
require_once 'PHPUnit/Autoload.php';
}
diff --git a/maintenance/cleanupUsersWithNoId.php b/maintenance/cleanupUsersWithNoId.php
index 3763d3b1c1..b2fdf2f9c7 100644
--- a/maintenance/cleanupUsersWithNoId.php
+++ b/maintenance/cleanupUsersWithNoId.php
@@ -110,7 +110,7 @@ class CleanupUsersWithNoId extends LoggedUpdateMaintenance {
$next = "$field > $value OR $field = $value AND ($next)";
}
}
- $display = join( ' ', array_reverse( $display ) );
+ $display = implode( ' ', array_reverse( $display ) );
return [ $next, $display ];
}
diff --git a/maintenance/deleteDefaultMessages.php b/maintenance/deleteDefaultMessages.php
index c52013b95e..326073f1a2 100644
--- a/maintenance/deleteDefaultMessages.php
+++ b/maintenance/deleteDefaultMessages.php
@@ -43,13 +43,19 @@ class DeleteDefaultMessages extends Maintenance {
$this->output( "Checking existence of old default messages..." );
$dbr = $this->getDB( DB_REPLICA );
- $res = $dbr->select( [ 'page', 'revision' ],
+
+ $actorQuery = ActorMigration::newMigration()
+ ->getWhere( $dbr, 'rev_user', User::newFromName( 'MediaWiki default' ) );
+ $res = $dbr->select(
+ [ 'page', 'revision' ] + $actorQuery['tables'],
[ 'page_namespace', 'page_title' ],
[
'page_namespace' => NS_MEDIAWIKI,
- 'page_latest=rev_id',
- 'rev_user_text' => 'MediaWiki default',
- ]
+ $actorQuery['conds'],
+ ],
+ __METHOD__,
+ [],
+ [ 'revision' => [ 'JOIN', 'page_latest=rev_id' ] ] + $actorQuery['joins']
);
if ( $dbr->numRows( $res ) == 0 ) {
diff --git a/maintenance/findHooks.php b/maintenance/findHooks.php
index 04c00e27f1..9903c9efd3 100644
--- a/maintenance/findHooks.php
+++ b/maintenance/findHooks.php
@@ -245,7 +245,7 @@ class FindHooks extends Maintenance {
$m = [];
preg_match_all(
// All functions which runs hooks
- '/(?:wfRunHooks|Hooks\:\:run)\s*\(\s*' .
+ '/(?:wfRunHooks|Hooks\:\:run|Hooks\:\:runWithoutAbort)\s*\(\s*' .
// First argument is the hook name as string
'([\'"])(.*?)\1' .
// Comma for second argument
diff --git a/maintenance/fixUserRegistration.php b/maintenance/fixUserRegistration.php
index 57fd91bc9b..e1b1682989 100644
--- a/maintenance/fixUserRegistration.php
+++ b/maintenance/fixUserRegistration.php
@@ -59,11 +59,15 @@ class FixUserRegistration extends Maintenance {
$id = $row->user_id;
$lastId = $id;
// Get first edit time
+ $actorQuery = ActorMigration::newMigration()
+ ->getWhere( $dbw, 'rev_user', User::newFromId( $id ) );
$timestamp = $dbw->selectField(
- 'revision',
+ [ 'revision' ] + $actorQuery['tables'],
'MIN(rev_timestamp)',
- [ 'rev_user' => $id ],
- __METHOD__
+ $actorQuery['conds'],
+ __METHOD__,
+ [],
+ $actorQuery['joins']
);
// Update
if ( $timestamp !== null ) {
diff --git a/maintenance/initEditCount.php b/maintenance/initEditCount.php
index 3c4336ff28..f7ef7a28a2 100644
--- a/maintenance/initEditCount.php
+++ b/maintenance/initEditCount.php
@@ -38,9 +38,9 @@ in the load balancer, usually indicating a replication environment.' );
}
public function execute() {
+ global $wgActorTableSchemaMigrationStage;
+
$dbw = $this->getDB( DB_MASTER );
- $user = $dbw->tableName( 'user' );
- $revision = $dbw->tableName( 'revision' );
// Autodetect mode...
if ( $this->hasOption( 'background' ) ) {
@@ -51,6 +51,17 @@ in the load balancer, usually indicating a replication environment.' );
$backgroundMode = wfGetLB()->getServerCount() > 1;
}
+ $actorQuery = ActorMigration::newMigration()->getJoin( 'rev_user' );
+
+ $needSpecialQuery = ( $wgActorTableSchemaMigrationStage !== MIGRATION_OLD &&
+ $wgActorTableSchemaMigrationStage !== MIGRATION_NEW );
+ if ( $needSpecialQuery ) {
+ foreach ( $actorQuery['joins'] as &$j ) {
+ $j[0] = 'JOIN'; // replace LEFT JOIN
+ }
+ unset( $j );
+ }
+
if ( $backgroundMode ) {
$this->output( "Using replication-friendly background mode...\n" );
@@ -62,15 +73,55 @@ in the load balancer, usually indicating a replication environment.' );
$migrated = 0;
for ( $min = 0; $min <= $lastUser; $min += $chunkSize ) {
$max = $min + $chunkSize;
- $result = $dbr->query(
- "SELECT
- user_id,
- COUNT(rev_user) AS user_editcount
- FROM $user
- LEFT OUTER JOIN $revision ON user_id=rev_user
- WHERE user_id > $min AND user_id <= $max
- GROUP BY user_id",
- __METHOD__ );
+
+ if ( $needSpecialQuery ) {
+ // Use separate subqueries to collect counts with the old
+ // and new schemas, to avoid having to do whole-table scans.
+ $result = $dbr->select(
+ [
+ 'user',
+ 'rev1' => '('
+ . $dbr->selectSQLText(
+ [ 'revision', 'revision_actor_temp' ],
+ [ 'rev_user', 'ct' => 'COUNT(*)' ],
+ [
+ "rev_user > $min AND rev_user <= $max",
+ 'revactor_rev' => null,
+ ],
+ __METHOD__,
+ [ 'GROUP BY' => 'rev_user' ],
+ [ 'revision_actor_temp' => [ 'LEFT JOIN', 'revactor_rev = rev_id' ] ]
+ ) . ')',
+ 'rev2' => '('
+ . $dbr->selectSQLText(
+ [ 'revision' ] + $actorQuery['tables'],
+ [ 'actor_user', 'ct' => 'COUNT(*)' ],
+ "actor_user > $min AND actor_user <= $max",
+ __METHOD__,
+ [ 'GROUP BY' => 'actor_user' ],
+ $actorQuery['joins']
+ ) . ')',
+ ],
+ [ 'user_id', 'user_editcount' => 'COALESCE(rev1.ct,0) + COALESCE(rev2.ct,0)' ],
+ "user_id > $min AND user_id <= $max",
+ __METHOD__,
+ [],
+ [
+ 'rev1' => [ 'LEFT JOIN', 'user_id = rev_user' ],
+ 'rev2' => [ 'LEFT JOIN', 'user_id = actor_user' ],
+ ]
+ );
+ } else {
+ $revUser = $actorQuery['fields']['rev_user'];
+ $result = $dbr->select(
+ [ 'user', 'rev' => [ 'revision' ] + $actorQuery['tables'] ],
+ [ 'user_id', 'user_editcount' => "COUNT($revUser)" ],
+ "user_id > $min AND user_id <= $max",
+ __METHOD__,
+ [ 'GROUP BY' => 'user_id' ],
+ [ 'rev' => [ 'LEFT JOIN', "user_id = $revUser" ] ] + $actorQuery['joins']
+ );
+ }
foreach ( $result as $row ) {
$dbw->update( 'user',
@@ -93,8 +144,43 @@ in the load balancer, usually indicating a replication environment.' );
}
} else {
$this->output( "Using single-query mode...\n" );
- $sql = "UPDATE $user SET user_editcount=(SELECT COUNT(*) FROM $revision WHERE rev_user=user_id)";
- $dbw->query( $sql );
+
+ $user = $dbw->tableName( 'user' );
+ if ( $needSpecialQuery ) {
+ $subquery1 = $dbw->selectSQLText(
+ [ 'revision', 'revision_actor_temp' ],
+ [ 'COUNT(*)' ],
+ [
+ 'user_id = rev_user',
+ 'revactor_rev' => null,
+ ],
+ __METHOD__,
+ [],
+ [ 'revision_actor_temp' => [ 'LEFT JOIN', 'revactor_rev = rev_id' ] ]
+ );
+ $subquery2 = $dbw->selectSQLText(
+ [ 'revision' ] + $actorQuery['tables'],
+ [ 'COUNT(*)' ],
+ 'user_id = actor_user',
+ __METHOD__,
+ [],
+ $actorQuery['joins']
+ );
+ $dbw->query(
+ "UPDATE $user SET user_editcount=($subquery1) + ($subquery2)",
+ __METHOD__
+ );
+ } else {
+ $subquery = $dbw->selectSQLText(
+ [ 'revision' ] + $actorQuery['tables'],
+ [ 'COUNT(*)' ],
+ [ 'user_id = ' . $actorQuery['fields']['rev_user'] ],
+ __METHOD__,
+ [],
+ $actorQuery['joins']
+ );
+ $dbw->query( "UPDATE $user SET user_editcount=($subquery)", __METHOD__ );
+ }
}
$this->output( "Done!\n" );
diff --git a/maintenance/jsduck/categories.json b/maintenance/jsduck/categories.json
index 66e8d01fcb..bebee85f3f 100644
--- a/maintenance/jsduck/categories.json
+++ b/maintenance/jsduck/categories.json
@@ -23,6 +23,7 @@
"mw.Title",
"mw.Uri",
"mw.RegExp",
+ "mw.String",
"mw.messagePoster.*",
"mw.notification",
"mw.Notification_",
diff --git a/maintenance/language/languages.inc b/maintenance/language/languages.inc
index ad80af5330..c8fb629e77 100644
--- a/maintenance/language/languages.inc
+++ b/maintenance/language/languages.inc
@@ -558,7 +558,7 @@ class Languages {
}
if ( isset( $messages[$key] ) ) {
- $messages[$key] = implode( $messages[$key], ", " );
+ $messages[$key] = implode( ", ", $messages[$key] );
}
}
diff --git a/maintenance/language/zhtable/simp2trad.manual b/maintenance/language/zhtable/simp2trad.manual
index e762494769..e81eec0b97 100644
--- a/maintenance/language/zhtable/simp2trad.manual
+++ b/maintenance/language/zhtable/simp2trad.manual
@@ -1,3 +1,5 @@
+U+04724ä¤|U+09FC1é¿|
+U+04CA4䲤|U+09FD0é¿|
U+04E07ä¸|U+0842Cè¬|U+04E07ä¸|
U+04E0Eä¸|U+08207è|U+04E0Eä¸|
U+04E11ä¸|U+04E11ä¸|U+0919Cé|
@@ -139,8 +141,8 @@ U+06E16æ¸|U+0700Bç|
U+06E38游|U+06E38游|U+0904Aé|
U+06EAF溯|U+06EAF溯|U+06CDDæ³|
U+06F13æ¼|U+06F13æ¼|U+07055ç|
-U+070BCç¼|U+07149ç
|U+0934Aé|
U+07096ç|U+071C9ç|
+U+070BCç¼|U+07149ç
|U+0934Aé|
U+0753Bç»|U+0756Bç«|U+07575çµ|
U+075C7ç|U+075C7ç|U+07665ç¥|
U+07618ç|U+0763Açº|U+0763Bç»|
@@ -166,6 +168,7 @@ U+07EFF绿|U+07DA0ç¶ |U+07DD1ç·|
U+07F10ç¼|U+07DDAç·|
U+07F30ç¼°|U+097C1é|U+07E6Eç¹®|
U+07FA1羡|U+07FA8羨|
+U+080C4è|U+080C4è|U+05191å|
U+080DCè|U+052DDå|U+080DCè|
U+080E1è¡|U+080E1è¡|U+09B0Dé¬|U+0885Aè¡|
U+0810Fè|U+09AD2é«|U+081DFè|
@@ -213,10 +216,10 @@ U+09528é¨|U+06774æ´|U+09341é|
U+0954Bé|U+09482é|U+093B2é²|
U+0954Cé|U+0942Bé«|U+093B8é¸|
U+09562é¢|U+09481é|U+0941Dé|
+U+095F2é²|U+09592é|U+09591é|
U+09605é
|U+095B1é±|U+095B2é²|
U+096C7é|U+096C7é|U+050F1å±|
U+096D5é|U+096D5é|U+09D70éµ°|
-U+095F2é²|U+09592é|U+09591é|
U+09709é|U+09709é|U+09EF4é»´|
U+09762é¢|U+09762é¢|U+09EB5麵|U+09EAA麪|U+09EAB麫|
U+0987Bé¡»|U+09808é |U+09B1Aé¬|
@@ -226,11 +229,185 @@ U+09965饥|U+098E2飢|U+09951é¥|
U+09980é¦|U+09918é¤|
U+09986é¦|U+09928館|U+08218è|
U+09A82éª|U+07F75ç½µ|U+099E1駡|
-U+09CC1é³|U+09C2Eé°®|
U+09C87é²|U+09BF0鯰|U+09B8Eé®|
U+09C9Eé²|U+09BD7é¯|U+09B9Dé®|
+U+09CC1é³|U+09C2Eé°®|
U+09CC4é³|U+09C77é±·|U+09C10é°|
U+09E21鸡|U+096DEé|U+09DC4é·|
U+09E5Aé¹|U+09DBF鶿|U+09DC0é·|
U+09EB9麹|U+09EB4麴|
-U+080C4è|U+080C4è|U+05191å|
+U+09FCEé¿|U+040EEä®|
+U+09FCFé¿|U+04951ä¥|
+U+09FD2é¿|U+09FD3é¿|
+U+09FD4é¿|U+093B6é¶|
+U+235CBð£|U+06B13æ¬|
+U+23C97ð£²|U+06E4Bæ¹|
+U+23C98ð£²|U+06F55æ½|
+U+23E23𣸣|U+06FC6æ¿|
+U+24A7D𤩽|U+074DBç|
+U+26221ð¦¡|U+07E7Bç¹»|
+U+2677Cð¦¼|U+081A2è¢|
+U+28408ð¨|U+08F04è¼|
+U+28C47ð¨±|U+092B6é¶|
+U+28C4Fð¨±|U+0939Dé|
+U+28C51ð¨±|U+09404é|
+U+28C54ð¨±|U+0940Fé|
+U+29F7E𩽾|U+09B9Fé®|
+U+29F83ð©¾|U+09BB8鮸|
+U+29F8Cð©¾|U+09C47é±|
+U+2A7DDðª|U+052E3å£|
+U+2A8FB𪣻|U+0587F塿|
+U+2AA36𪨶|U+08F0Bè¼|
+U+2AA58ðª©|U+05DD8å·|
+U+2AFA2𪾢|U+0774Dç|
+U+2B127ð«§|U+07D96ç¶|
+U+2B128ð«¨|U+07D7A絺|
+U+2B137ð«·|U+07E76繶|
+U+2B138ð«¸|U+07E81çº|
+U+2B1EDð«|U+0853Fè¿|
+U+2B300ð«|U+08940è¥|
+U+2B363ð«£|U+08A77è©·|
+U+2B36Fð«¯|U+08AF4è«´|
+U+2B372ð«²|U+08B0Fè¬|
+U+2B37Dð«½|U+08B5Eè|
+U+2B404ð«|U+08ECFè»|
+U+2B410ð«|U+08F17è¼|
+U+2B413ð«|U+08F2Eè¼®|
+U+2B461ð«¡|U+09133é³|
+U+2B4E7ð«§|U+09207é|
+U+2B4EFð«¯|U+09288é|
+U+2B4F6ð«¶|U+092D7é|
+U+2B4F9ð«¹|U+09324é¤|
+U+2B50Dð«|U+09407é|
+U+2B50Eð«|U+0940Dé|
+U+2B536ð«¶|U+095D1é|
+U+2B5AEð«®|U+09857é¡|
+U+2B5AFð«¯|U+0982Bé «|
+U+2B5B3ð«³|U+09835é µ|
+U+2B5E7ð«§|U+09917é¤|
+U+2B5F4ð«´|U+09958é¥|
+U+2B61Cð«|U+099BC馼|
+U+2B61Dð«|U+099C3é§|
+U+2B626ð«¦|U+09A0Aé¨|
+U+2B627ð«§|U+09A04é¨|
+U+2B628ð«¨|U+09A20é¨ |
+U+2B62Að«ª|U+09A35騵|
+U+2B62Cð«¬|U+09A31騱|
+U+2B695ð«|U+09C24é°¤|
+U+2B696ð«|U+09B86é®|
+U+2B6ADð«|U+09C72é±²|
+U+2B6EDð«|U+09D5Féµ|
+U+2B7A9ð«©|U+0748Aç|
+U+2B7C5ð«
|U+07DA1綡|
+U+2B7E6ð«¦|U+04875䡵|
+U+2B7F9ð«¹|U+09277é·|
+U+2B7FCð«¼|U+0943Dé½|
+U+2B806ð« |U+0980Dé |
+U+2B80Að« |U+04B84ä®|
+U+2B81Cð« |U+09F6F齯|
+U+2B8B8𫢸|U+050E4å¤|
+U+2BAC7ð««|U+05641å|
+U+2BB5Fð«|U+05878塸|
+U+2BB62ð«¢|U+057E8å¨|
+U+2BB7Cð«¼|U+2144Dð¡|
+U+2BB83ð«®|U+058A0å¢ |
+U+2BC1Bð«°|U+05A19å¨|
+U+2BD77𫵷|U+03823㠣|
+U+2BD87ð«¶|U+05D7Dåµ½|
+U+2BDF7ð«··|U+05EDEå»|
+U+2BE29𫸩|U+05F44å½|
+U+2C029ð¬©|U+06690æ|
+U+2C02Að¬ª|U+0665Bæ|
+U+2C0A9ð¬©|U+0689Cæ¢|
+U+2C0CAð¬|U+06ACDæ«|
+U+2C1D5ð¬|U+06FAB澫|
+U+2C1D9ð¬|U+06D7F浿|
+U+2C1F9ð¬¹|U+06F0Dæ¼|
+U+2C27Cð¬¼|U+071B0ç°|
+U+2C288ð¬|U+071D6ç|
+U+2C2A4ð¬¤|U+071C0ç|
+U+2C35Bð¬|U+074C5ç
|
+U+2C361ð¬¡|U+07497ç|
+U+2C364ð¬¤|U+07495ç|
+U+2C488ð¬|U+07910ç¤|
+U+2C497ð¬|U+255FDð¥½|
+U+2C542ð¬|U+07BE2篢|
+U+2C613ð¬|U+07D03ç´|
+U+2C618ð¬|U+07D1Eç´|
+U+2C621ð¬¡|U+07D6A絪|
+U+2C629ð¬©|U+07D8Eç¶|
+U+2C62Bð¬«|U+07D84ç¶|
+U+2C62Cð¬¬|U+07DAA綪|
+U+2C62Dð¬|U+07D9Dç¶|
+U+2C62Fð¬¯|U+07DA7綧|
+U+2C642ð¬|U+07E2F縯|
+U+2C64Að¬|U+07E86çº|
+U+2C64Bð¬|U+07E95çº|
+U+2C72Cð¬¬|U+08504è|
+U+2C72Fð¬¯|U+044E3ä£|
+U+2C79Fð¬|U+0860Bè|
+U+2C7C1ð¬|U+08649è|
+U+2C7FDð¬½|U+08740è|
+U+2C8D9ð¬£|U+08A0Fè¨|
+U+2C8DEð¬£|U+08A5Dè©|
+U+2C8E1𬣡|U+08AD3è«|
+U+2C8F3𬣳|U+08A6A詪|
+U+2C907ð¬¤|U+08AF2諲|
+U+2C90Að¬¤|U+08ADFè«|
+U+2C91Dð¬¤|U+08B53è|
+U+2CA02ð¬¨|U+08EDDè»|
+U+2CA0Eð¬¨|U+08F36輶|
+U+2CA7D𬩽|U+09129é©|
+U+2CAA9𬪩|U+091B2é²|
+U+2CB29𬬩|U+091F4é´|
+U+2CB2Dð¬¬|U+09300é|
+U+2CB2E𬬮|U+092F9é¹|
+U+2CB31𬬱|U+091FFé¿|
+U+2CB38𬬸|U+09265é¥|
+U+2CB39𬬹|U+0926Eé®|
+U+2CB3B𬬻|U+0946Aéª|
+U+2CB3F𬬿|U+0924Aé|
+U+2CB41ð¬|U+09267é§|
+U+2CB4Að¬|U+289C0ð¨§|
+U+2CB4Eð¬|U+092D0é|
+U+2CB5Að¬|U+0931Eé|
+U+2CB5Bð¬|U+28A0Fð¨¨|
+U+2CB64ð¬¤|U+0936Dé|
+U+2CB69ð¬©|U+09393é|
+U+2CB6Cð¬¬|U+093CFé|
+U+2CB6Fð¬¯|U+04955ä¥|
+U+2CB73ð¬³|U+28B4Eð¨|
+U+2CB76ð¬¶|U+28B46ð¨|
+U+2CB78ð¬¸|U+093FBé»|
+U+2CB7Cð¬¼|U+09429é©|
+U+2CBB1𬮱|U+095C9é|
+U+2CBBF𬮿|U+09691é|
+U+2CBC0ð¬¯|U+096AEé®|
+U+2CBCEð¬¯|U+096A4é¤|
+U+2CC56ð¬±|U+09814é |
+U+2CC5Fð¬±|U+09820é |
+U+2CCF5𬳵|U+099D3é§|
+U+2CCF6𬳶|U+099C9é§|
+U+2CCFD𬳽|U+099EA駪|
+U+2CCFF𬳿|U+099FC駼|
+U+2CD02ð¬´|U+09A11é¨|
+U+2CD03ð¬´|U+09A1Eé¨|
+U+2CD0Að¬´|U+09A4Eé©|
+U+2CD8Bð¬¶|U+09B88é®|
+U+2CD8Dð¬¶|U+09B80é®|
+U+2CD8Fð¬¶|U+09BA0é® |
+U+2CD90ð¬¶|U+09BA1鮡|
+U+2CD9Fð¬¶|U+09BFB鯻|
+U+2CDA0𬶠|U+09C0Aé°|
+U+2CDA8𬶨|U+09C40é±|
+U+2CDADð¬¶|U+09C36é°¶|
+U+2CDAE𬶮|U+09C5Aé±|
+U+2CDD5ð¬·|U+09D4Féµ|
+U+2CE18ð¬¸|U+09DA0é¶ |
+U+2CE1Að¬¸|U+09E11é¸|
+U+2CE23𬸣|U+09DB1鶱|
+U+2CE26𬸦|U+09DDFé·|
+U+2CE2A𬸪|U+09DEDé·|
+U+2CE7C𬹼|U+09F58é½|
+U+2CE88ð¬º|U+09F6Eé½®|
+U+2CE93ð¬º|U+09F7Cé½¼|
diff --git a/maintenance/language/zhtable/toCN.manual b/maintenance/language/zhtable/toCN.manual
index b0aa131140..2453123533 100644
--- a/maintenance/language/zhtable/toCN.manual
+++ b/maintenance/language/zhtable/toCN.manual
@@ -75,6 +75,7 @@
éå¯ å¾å¯
éå å¾å¯
éè¿ å¾è¿
+éæµ å¾æµ
å¾µç çç¶
å ±å¸³ æ¥è´¦
æ¬å¸³ æ¬è´¦
@@ -2190,6 +2191,10 @@
ä¿è ä¿ç
å¬è å¬ç
åè åç
+æè åç
+æèå åèå
+æèä½ åèä½
+æèè
åèè
ä¸åå
è ä¸åå
ç
èµ°çºä¸è 走为ä¸ç
è¨æ¶é« å
å
@@ -2673,6 +2678,8 @@ Aåèç ç²åèç
庫德人 åºå°å¾·äºº
å¸æè å¸æé
å¸æè å¸æé
+æç¿ ç ç¹è¾è·æ¢
+å¾·è¾è·æ¢
ä¼ ç¹è¾è·æ¢
麻è©è«¸å¡ 马è¨è¯¸å¡
æ±åäºå家åæ ä¸åäºå½å®¶èç
ç¨ç«åå ç¬èä½
diff --git a/maintenance/language/zhtable/toHK.manual b/maintenance/language/zhtable/toHK.manual
index 59f8c9e530..e85a51205f 100644
--- a/maintenance/language/zhtable/toHK.manual
+++ b/maintenance/language/zhtable/toHK.manual
@@ -2594,6 +2594,10 @@
æ¶éè æ¶éç
å¬è å¬ç
åè åç
+æè æç
+æèå æèå
+æèä½ æèä½
+æèè
æèè
ä¸åå
è ä¸åå
ç
èµ°çºä¸è èµ°çºä¸ç
鬧è 鬧ç
@@ -3030,6 +3034,8 @@ IPå°å IPä½å
ç¨åºå ç¨å¼è¨è¨å¸«
æå±±ç´ å£ æå±±ç´ å§¬
ç¿å±±è姬 æå±±ç´ å§¬
+å¾·è¾è·æ¢
ä¼ æç¿ ç
+ç¹è¾è·æ¢
æç¿ ç
西æ´æ£ åé象æ£
éç§ ç§é±
é±ç§ ç§é±
diff --git a/maintenance/language/zhtable/toSimp.manual b/maintenance/language/zhtable/toSimp.manual
index 2124ebaac9..2a7f0acbe6 100644
--- a/maintenance/language/zhtable/toSimp.manual
+++ b/maintenance/language/zhtable/toSimp.manual
@@ -104,10 +104,12 @@
éµé éé¾
éé éé¾
éé é¶é¾
+éªé éªé¾
éé é¾é¤
æ´é æ´ç»
æé æé¾
é表 é¾è¡¨
+éç é¾ç¶
åè¦ åå¤
åè¦ åå¤
çè¦ çå¤
diff --git a/maintenance/language/zhtable/toTW.manual b/maintenance/language/zhtable/toTW.manual
index c907640e15..1798437bea 100644
--- a/maintenance/language/zhtable/toTW.manual
+++ b/maintenance/language/zhtable/toTW.manual
@@ -776,6 +776,8 @@ IPå°å IPä½å
é£çµä» é£çµä»
æå±±ç´ å£ ç¿å±±è姬
æå±±ç´ å§¬ ç¿å±±è姬
+ç¹è¾è·æ¢
å¾·è¾è·æ¢
ä¼
+æç¿ ç å¾·è¾è·æ¢
ä¼
å½é
è±¡æ£ è¥¿æ´æ£
åéè±¡æ£ è¥¿æ´æ£
ç§é± é±ç§
diff --git a/maintenance/language/zhtable/toTrad.manual b/maintenance/language/zhtable/toTrad.manual
index d4e621d128..c2fcb16239 100644
--- a/maintenance/language/zhtable/toTrad.manual
+++ b/maintenance/language/zhtable/toTrad.manual
@@ -19,6 +19,7 @@
é³æ° é³æ°
é»æ° é»æ°
è¬æ° è¬æ°
+åæ°æ®ç¾ åæ°æ®ç¾
寶æ 寶æ
æ¶è¬¹ç³ æ¶è¬¹ç³
æ¶é´»æ¬½ æ¶é´»æ¬½
@@ -154,6 +155,12 @@
èé½å èé½å
ååº ååº
å¾åº å¾åº
+é¾å±±åº é¾å±±åº
+å¯¶å±±åº å¯¶å±±åº
+å¡å±±åº å¡å±±åº
+èåº èåº
+åºå
§ åºå
§
+åºå
å°æ¹ åºå
§å°æ¹
åè¼ åè¼
é¦¬æ ¼éå¸ é¦¬æ ¼éå¸
ä½³éé® ä½³éé®
@@ -192,9 +199,6 @@
è¹æ èæ
è¹æå¹² èæä¹¾
è¹å© èå©
-é¾å±±åº é¾å±±åº
-å¯¶å±±åº å¯¶å±±åº
-å¡å±±åº å¡å±±åº
æµç§° æ±ç¨±
å®äº å®äº
é®®äº é®®äº
@@ -294,7 +298,6 @@
éå é³æ
å°å¬å ç¾å¬é
åå®®é åå®®é
-èåº èåº
æ¿ç ´ä» æ¿ç ´å´
åä½ åé¤
è¯¾ä½ èª²é¤
diff --git a/maintenance/language/zhtable/trad2simp.manual b/maintenance/language/zhtable/trad2simp.manual
index 89719ff0e1..9a57047b42 100644
--- a/maintenance/language/zhtable/trad2simp.manual
+++ b/maintenance/language/zhtable/trad2simp.manual
@@ -8,6 +8,7 @@ U+0362Dã|U+05773å³|
U+0375Bã|U+05BBF宿|
U+03760ã |U+051A5å¥|
U+03800ã |U+05C9Bå²|
+U+03823㠣|U+2BD77𫵷|
U+0382F㠯|U+04EE5以|
U+03836ã ¶|U+05E06å¸|
U+0384Cã¡|U+05E3D帽|
@@ -31,8 +32,10 @@ U+03F1Dã¼|U+07897ç¢|
U+03F5Eã½|U+07559ç|
U+03FDCã¿|U+0762Açª|
U+04039ä¹|U+25174ð¥
´|
+U+040EEä®|U+09FCEé¿|
U+04230ä°|U+07B72ç²|
U+04280ä|U+07CCAç³|
+U+044E3ä£|U+2C72Fð¬¯|
U+045ECä¬|U+08702è|
U+0460Fä|U+06064æ¤|
U+04611ä|U+08109è|
@@ -42,9 +45,13 @@ U+046E1ä¡|U+08BDDè¯|
U+04754ä|U+0737Eç¾|
U+04800ä |U+08E5Aè¹|
U+04836ä ¶|U+05C04å°|
+U+04875䡵|U+2B7E6ð«¦|
+U+04951ä¥|U+09FCFé¿|
+U+04955ä¥|U+2CB6Fð¬¯|
U+04965䥥|U+09570é°|
U+04B03ä¬|U+098D2é£|
U+04B7Eä¾|U+09A6Eé©®|
+U+04B84ä®|U+2B80Að« |
U+04C1Fä°|U+09B42é|
U+04CD8ä³|U+09E45é¹
|
U+04D8Aä¶|U+08844è¡|
@@ -68,6 +75,7 @@ U+0509Aå|U+06548æ|
U+050A2å¢|U+05BB6家|
U+050CAå|U+04ED9ä»|
U+050CDå|U+052A8å¨|
+U+050E4å¤|U+2B8B8𫢸|
U+050F1å±|U+096C7é|
U+0510Cå|U+04FA5ä¾¥|
U+05138å¸|U+03469ã©|U+07F57ç½|
@@ -95,6 +103,7 @@ U+052B9å¹|U+06548æ|
U+052C5å
|U+06555æ|
U+052CCå|U+05026å¦|
U+052D1å|U+06555æ|
+U+052E3å£|U+2A7DDðª|
U+052E6å¦|U+0527Få¿|
U+052F3å³|U+052CBå|
U+0531Få|U+07095ç|
@@ -125,6 +134,7 @@ U+05605å
|U+06168æ
¨|
U+05611å|U+0547Cå¼|
U+05620å |U+0560Eå|
U+05637å·|U+055E5å¥|
+U+05641å|U+2BAC7ð««|
U+05649å|U+05556å|
U+05690å|U+05C1Då°|
U+056A5å¥|U+054BDå½|
@@ -136,10 +146,14 @@ U+05705å
|U+051FDå½|
U+0577Få¿|U+09644é|
U+0579Cå|U+0579Bå|
U+057BBå»|U+0575Då|
+U+057E8å¨|U+2BB62ð«¢|
U+0585Aå¡|U+051A2å¢|
U+0585Få¡|U+0846Cè¬|
U+05872塲|U+0573Aåº|
+U+05878塸|U+2BB5Fð«|
+U+0587F塿|U+2A8FB𪣻|
U+05896å¢|U+05854å¡|
+U+058A0å¢ |U+2BB83ð«®|
U+058B0墰|U+0575Bå|
U+058BB墻|U+05899å¢|
U+058CEå£|U+057D9å|
@@ -155,6 +169,7 @@ U+059C9å§|U+059CAå§|
U+059D9å§|U+0598Aå¦|
U+059EA姪|U+04F84ä¾|
U+059F8姸|U+0598Då¦|
+U+05A19å¨|U+2BC1Bð«°|
U+05A63婣|U+059FB姻|
U+05A6C婬|U+06DEB淫|
U+05A8Dåª|U+05987å¦|
@@ -185,10 +200,12 @@ U+05CDDå³|U+05CD2å³|
U+05D11å´|U+06606æ|
U+05D19å´|U+04ED1ä»|
U+05D57åµ|U+05C81å²|
+U+05D7Dåµ½|U+2BD87ð«¶|
U+05D83å¶|U+05D2Då´|
U+05DBD嶽|U+05CB3岳|
U+05DD6å·|U+05CA9岩|
U+05DD7å·|U+05CA9岩|
+U+05DD8å·|U+2AA58ðª©|
U+05DF5å·µ|U+0536Eå®|
U+05E00å¸|U+0531Då|
U+05E0Bå¸|U+07EB8纸|
@@ -201,10 +218,12 @@ U+05EBB庻|U+05EB6庶|
U+05EBD庽|U+05BD3å¯|
U+05ED0å»|U+053A9å©|
U+05ED5å»|U+0836Bè«|
+U+05EDEå»|U+2BDF7ð«··|
U+05EF5廵|U+05DE1巡|
U+05EF9廹|U+08FEB迫|
U+05EFBå»»|U+056DEå|
U+05F14å¼|U+0540Aå|
+U+05F44å½|U+2BE29𫸩|
U+05F46å½|U+0522Bå«|
U+05F6B彫|U+096D5é|
U+05F83å¾|U+05F80å¾|
@@ -268,6 +287,8 @@ U+065F9æ¹|U+065F6æ¶|
U+065FEæ¾|U+06625æ¥|
U+06607æ|U+06607æ|U+05347å|
U+0662Cæ¬|U+0660Fæ|
+U+0665Bæ|U+2C02Að¬ª|
+U+06690æ|U+2C029ð¬©|
U+066B1æ±|U+06635æµ|
U+066E1æ¡|U+053E0å |
U+0671Eæ|U+0671Fæ|
@@ -284,6 +305,7 @@ U+06830æ °|U+07B4Fç|
U+06852æ¡|U+06851æ¡|
U+0686Eæ¡®|U+0676Fæ¯|
U+0687A桺|U+067F3æ³|
+U+0689Cæ¢|U+2C0A9ð¬©|
U+068CAæ£|U+068CBæ£|
U+06917æ¤|U+07887ç¢|
U+06936椶|U+068D5æ£|
@@ -296,7 +318,9 @@ U+069D5æ§|U+0684Cæ¡|
U+06A11æ¨|U+06881æ¢|
U+06A5Cæ©|U+06A5Bæ©|
U+06AC8æ«|U+051F3å³|
+U+06ACDæ«|U+2C0CAð¬|
U+06B05æ¬
|U+06989æ¦|
+U+06B13æ¬|U+235CBð£|
U+06B1Dæ¬|U+090C1é|
U+06B35欵|U+06B3E款|
U+06B4Eæ|U+053F9å¹|
@@ -314,23 +338,29 @@ U+06C5Aæ±|U+06C61污|
U+06C88ç|U+06C88æ²|U+0700Bæ¸|
U+06CDDæ³|U+06EAF溯|
U+06D29æ´©|U+06CC4æ³|
+U+06D7F浿|U+2C1D9ð¬|
U+06D96æ¶|U+08385è
|
U+06DD2æ·|U+051C4å|
U+06DDBæ·|U+06D59æµ|
U+06DE8æ·¨|U+051C0å|
U+06DE9æ·©|U+051CCå|
+U+06E4Bæ¹|U+23C97ð£²|
U+06E67湧|U+06D8Cæ¶|
U+06E7Cæ¹¼|U+06D85æ¶
|
U+06EBC溼|U+06E7F湿|
U+06ED9æ»|U+06C47æ±|
U+06EDBæ»|U+06DEBæ·«|
U+06EF7æ»·|U+05364å¤|
+U+06F0Dæ¼|U+2C1F9ð¬¹|
U+06F44æ½|U+06F31æ¼±|
U+06F55æ½|U+23C98ð£²|
+U+06F55æ½|U+23C98ð£²|
U+06F59æ½|U+06CA9沩|
U+06F81æ¾|U+06DA9涩|
U+06F90æ¾|U+06C84æ²|
+U+06FAB澫|U+2C1D5ð¬|
U+06FBEæ¾¾|U+03CE0ã³ |
+U+06FC6æ¿|U+23E23𣸣|
U+06FC7æ¿|U+06DA9涩|
U+06FDBæ¿|U+06FDBæ¿|U+08499è|
U+06FF6濶|U+09614é|
@@ -340,8 +370,11 @@ U+070D6ç|U+0707Eç¾|
U+07151ç
|U+0716Eç
®|
U+07157ç
|U+06696æ|
U+07188ç|U+07199ç|
+U+071B0ç°|U+2C27Cð¬¼|
+U+071C0ç|U+2C2A4ð¬¤|
U+071C4ç|U+07130ç°|
U+071C9ç|U+07096ç|U+071C9ç|
+U+071D6ç|U+2C288ð¬|
U+071ECç¬|U+06BC1æ¯|
U+071FBç»|U+0718Fç|
U+07217ç|U+070E8ç¨|
@@ -365,7 +398,12 @@ U+07416ç|U+076CFç|
U+07431ç±|U+096D5é|
U+07447ç|U+073B3ç³|
U+0746Fç¯|U+07405ç
|
+U+0748Aç|U+2B7A9ð«©|
+U+07495ç|U+2C364ð¬¤|
+U+07497ç|U+2C361ð¬¡|
U+074A2ç¢|U+07460ç |
+U+074C5ç
|U+2C35Bð¬|
+U+074DBç|U+24A7D𤩽|
U+0750Eç|U+07816ç |
U+07515ç|U+074EEç®|
U+07516ç|U+07F42ç½|
@@ -404,6 +442,7 @@ U+076CCç|U+07897ç¢|
U+0770Eç|U+089C6è§|
U+0771Eç|U+0771Fç|
U+07721ç¡|U+089C6è§|
+U+0774Dç|U+2AFA2𪾢|
U+07760ç |U+07737ç·|
U+0776Açª|U+0777Eç¾|
U+07787ç|U+0772Fç¯|
@@ -417,6 +456,7 @@ U+07881ç¢|U+068CBæ£|
U+078AA碪|U+07827ç §|
U+078DFç£|U+0788Cç¢|
U+07906ç¤|U+078B1碱|
+U+07910ç¤|U+2C488ð¬|
U+0792E礮|U+070AEç®|
U+07955ç¥|U+079D8ç§|
U+07958ç¥|U+07B97ç®|
@@ -446,6 +486,7 @@ U+07B87ç®|U+04E2A个|
U+07B92ç®|U+05E1Aå¸|
U+07BA0ç® |U+068F0棰|
U+07BDBç¯|U+07BAC箬|
+U+07BE2篢|U+2C542ð¬|
U+07C11ç°|U+084D1è|
U+07C12ç°|U+07BE1篡|
U+07C2Eç°®|U+07C2Aç°ª|
@@ -457,13 +498,24 @@ U+07C83ç²|U+079D5ç§|
U+07CA7粧|U+05986å¦|
U+07CC9ç³|U+07CBDç²½|
U+07CF0ç³°|U+056E2å¢|
+U+07D03ç´|U+2C613ð¬|
+U+07D1Eç´|U+2C618ð¬|
U+07D25ç´¥|U+0624Eæ|
U+07D2Eç´®|U+0624Eæ|
U+07D43çµ|U+05F26弦|
U+07D4Fçµ|U+07EC1ç»|
+U+07D6A絪|U+2C621ð¬¡|
U+07D76絶|U+07EDDç»|
+U+07D7A絺|U+2B128ð«¨|
+U+07D84ç¶|U+2C62Bð¬«|
U+07D89ç¶|U+07EE3绣|
+U+07D8Eç¶|U+2C629ð¬©|
U+07D91ç¶|U+06346æ|
+U+07D96ç¶|U+2B127ð«§|
+U+07D9Dç¶|U+2C62Dð¬|
+U+07DA1綡|U+2B7C5ð«
|
+U+07DA7綧|U+2C62Fð¬¯|
+U+07DAA綪|U+2C62Cð¬¬|
U+07DAB綫|U+07EBF线|
U+07DB5綵|U+05F69彩|U+0433Dä½|
U+07DD0ç·|U+07E41ç¹|
@@ -474,13 +526,19 @@ U+07DDCç·|U+07EF5绵|
U+07DE5ç·¥|U+08913è¤|
U+07DFCç·¼|U+07F0Aç¼|
U+07E27縧|U+07EE6绦|
+U+07E2F縯|U+2C642ð¬|
U+07E34縴|U+07EA4纤|
U+07E50ç¹|U+07A57ç©|
U+07E56ç¹|U+04F1Eä¼|
U+07E59ç¹|U+07FFBç¿»|
U+07E66繦|U+08941è¥|
U+07E6Eç¹®|U+07F30ç¼°|
+U+07E76繶|U+2B137ð«·|
+U+07E7Bç¹»|U+26221ð¦¡|
+U+07E81çº|U+2B138ð«¸|
+U+07E86çº|U+2C64Að¬|
U+07E94çº|U+0624Dæ|
+U+07E95çº|U+2C64Bð¬|
U+07F47ç½|U+06A3D樽|
U+07F4Bç½|U+074EEç®|
U+07F4Eç½|U+0575Bå|
@@ -504,6 +562,7 @@ U+08117è|U+0543Bå»|
U+08123è£|U+05507å|
U+08141è
|U+080FCè¼|
U+08193è|U+080A0è |
+U+081A2è¢|U+2677Cð¦¼|
U+081C8è|U+0814Aè
|
U+081CBè|U+081C0è|
U+081D5è|U+08198è|
@@ -529,9 +588,11 @@ U+08493è|U+083BCè¼|
U+084C6è|U+05E2Då¸|
U+084E1è¡|U+053C2å|
U+084F4è´|U+083BCè¼|
+U+08504è|U+2C72Cð¬¬|
U+08514è|U+0535Cå|
U+08515è|U+08482è|
U+08518è|U+053C2å|
+U+0853Fè¿|U+2B1EDð«|
U+0855Aè|U+0843Cè¼|
U+0857Fè¿|U+08431è±|
U+08591è|U+059DCå§|
@@ -539,14 +600,17 @@ U+085C9è|U+085C9è|U+0501Få|
U+085F4è´|U+08574è´|
U+085F7è·|U+085AFè¯|
U+085FCè¼|U+08431è±|
+U+0860Bè|U+2C79Fð¬|
U+08610è|U+08431è±|
U+08613è|U+082CFè|
U+08624è¤|U+082B1è±|
+U+08649è|U+2C7C1ð¬|
U+08698è|U+086D4è|
U+086D5è|U+086D4è|
U+0870Bè|U+08782è|
U+08716è|U+086D4è|
U+08728è¨|U+08776è¶|
+U+08740è|U+2C7FDð¬½|
U+08768è¨|U+08671è±|
U+0876Fè¯|U+0733Fç¿|
U+08771è±|U+0867Bè»|
@@ -571,6 +635,7 @@ U+088CCè£|U+088B7袷|
U+088CFè£|U+091CCé|
U+088E0è£ |U+088D9è£|
U+0892Dè¤|U+08885è¢
|
+U+08940è¥|U+2B300ð«|
U+08943è¥|U+08912è¤|
U+0894Dè¥|U+06742æ|
U+08986è¦|U+08986è¦|U+0590Då¤|
@@ -580,19 +645,30 @@ U+0898Aè¦|U+07F81ç¾|
U+08994è¦|U+089C5è§
|
U+089A9覩|U+07779ç¹|
U+089DDè§|U+062B5æµ|
+U+08A0Fè¨|U+2C8D9ð¬£|
U+08A17è¨|U+06258æ|U+08BAC讬|
U+08A3C証|U+08BC1è¯|
+U+08A5Dè©|U+2C8DEð¬£|
+U+08A6A詪|U+2C8F3𬣳|
U+08A76詶|U+0916Cé
¬|
+U+08A77è©·|U+2B363ð«£|
U+08A96èª|U+06096æ|
U+08AAC説|U+08BF4说|
+U+08AD3è«|U+2C8E1𬣡|
+U+08ADFè«|U+2C90Að¬¤|
U+08AEEè«®|U+08C18è°|U+054A8å¨|
+U+08AF2諲|U+2C907ð¬¤|
+U+08AF4è«´|U+2B36Fð«¯|
U+08B0Cè¬|U+06B4Cæ|
+U+08B0Fè¬|U+2B372ð«²|
U+08B21謡|U+08C23谣|
U+08B2Dè¬|U+08C2Bè°«|
U+08B41è|U+054D7å|
U+08B46è|U+0563Bå»|
U+08B4Cè|U+08BB9讹|
+U+08B53è|U+2C91Dð¬¤|
U+08B54è|U+064B0æ°|
+U+08B5Eè|U+2B37Dð«½|
U+08B5Fè|U+0566Aåª|
U+08B6Dè|U+06BC1æ¯|
U+08B81è®|U+08C2Aè°ª|
@@ -626,8 +702,15 @@ U+08E98èº|U+28001ð¨|
U+08EADèº|U+0803Dè½|
U+08EB3躳|U+08EAC躬|
U+08EB6躶|U+088F8裸|
+U+08ECFè»|U+2B404ð«|
+U+08EDDè»|U+2CA02ð¬¨|
+U+08F04è¼|U+28408ð¨|
+U+08F0Bè¼|U+2AA36𪨶|
+U+08F17è¼|U+2B410ð«|
U+08F19è¼|U+08F84è¾|
U+08F2Dè¼|U+08F6F软|
+U+08F2Eè¼®|U+2B413ð«|
+U+08F36輶|U+2CA0Eð¬¨|
U+08F3Cè¼¼|U+08F92è¾|
U+08FA0è¾ |U+07F6A罪|
U+08FA2è¾¢|U+08FA3è¾£|
@@ -644,6 +727,8 @@ U+09049é|U+04FA6侦|
U+0904Aé|U+06E38游|
U+09061é¡|U+06EAF溯|
U+0906Fé¯|U+09041é|
+U+09129é©|U+2CA7D𬩽|
+U+09133é³|U+2B461ð«¡|
U+09156é
|U+09E29鸩|
U+09167é
§|U+0916Cé
¬|
U+09183é|U+0814Cè
|
@@ -651,36 +736,66 @@ U+09186é|U+076CFç|
U+09195é|U+09187é|
U+091A3é£|U+07CD6ç³|
U+091AFé¯|U+09170é
°|
+U+091B2é²|U+2CAA9𬪩|
U+091BBé»|U+0916Cé
¬|
U+091BCé¼|U+05BB4å®´|
U+091E6é¦|U+06263æ£|
U+091ECé¬|U+0710Aç|
+U+091F4é´|U+2CB29𬬩|
+U+091FFé¿|U+2CB31𬬱|
U+09205é
|U+094A5é¥|
+U+09207é|U+2B4E7ð«§|
U+0920Eé|U+094A9é©|
U+09244é|U+094C1é|
U+09246é|U+094BBé»|
+U+0924Aé|U+2CB3F𬬿|
U+09262é¢|U+094B5éµ|
+U+09265é¥|U+2CB38𬬸|
+U+09267é§|U+2CB41ð¬|
+U+0926Eé®|U+2CB39𬬹|
+U+09277é·|U+2B7F9ð«¹|
+U+09288é|U+2B4EFð«¯|
U+092B2é²|U+0710Aç|
+U+092B6é¶|U+28C47ð¨±|
+U+092D0é|U+2CB4Eð¬|
+U+092D7é|U+2B4F6ð«¶|
U+092EDé|U+09510é|
+U+092F9é¹|U+2CB2E𬬮|
+U+09300é|U+2CB2Dð¬¬|
+U+0931Eé|U+2CB5Að¬|
+U+09324é¤|U+2B4F9ð«¹|
U+09332é²|U+05F55å½|
U+09341é|U+09528é¨|
U+0934Aé|U+070BCç¼|U+094FEé¾|
U+0936Bé«|U+09539é¹|
+U+0936Dé|U+2CB64ð¬¤|
U+09373é³|U+09274é´|
U+0937Eé¾|U+0953Aéº|U+0949Fé|
U+0938Cé|U+09570é°|
+U+09393é|U+2CB69ð¬©|
U+09397é|U+067AAæª|
U+0939Aé|U+09524é¤|
+U+0939Dé|U+28C4Fð¨±|
U+093ADé|U+093AEé|
U+093ADé|U+09547é|
+U+093B6é¶|U+09FD4é¿|
U+093B8é¸|U+0954Cé|
U+093BBé»|U+09501é|
+U+093CFé|U+2CB6Cð¬¬|
U+093DAé|U+0621Aæ|
+U+093FBé»|U+2CB78ð¬¸|
+U+09404é|U+28C51ð¨±|
+U+09407é|U+2B50Dð«|
+U+0940Dé|U+2B50Eð«|
+U+0940Fé|U+28C54ð¨±|
U+0941Dé|U+09562é¢|
+U+09429é©|U+2CB7Cð¬¼|
+U+0943Dé½|U+2B7FCð«¼|
U+09451é|U+09274é´|
U+0945Aé|U+094BBé»|
U+0945Bé|U+077FFç¿|
U+09464é¤|U+05228å¨|
+U+0946Aéª|U+2CB3B𬬻|
U+09475éµ|U+07F50ç½|
U+09482é|U+0954Bé|
U+09592é|U+095F2é²|
@@ -689,6 +804,8 @@ U+095A4é¤|U+09601é|U+05408å|
U+095A7é§|U+054C4å|
U+095B2é²|U+09605é
|
U+095C7é|U+06697æ|
+U+095C9é|U+2CBB1𬮱|
+U+095D1é|U+2B536ð«¶|
U+095DAé|U+07AA5窥|
U+095E2é¢|U+08F9Fè¾|
U+09628é¨|U+05384å|
@@ -701,8 +818,11 @@ U+0967Bé»|U+05819å |
U+0967Fé¿|U+072EDç|
U+09682é|U+09634é´|
U+09684é|U+05824å ¤|
+U+09691é|U+2CBBF𬮿|
U+09696é|U+0575Eå|
U+096A3é£|U+090BBé»|
+U+096A4é¤|U+2CBCEð¬¯|
+U+096AEé®|U+2CBC0ð¬¯|
U+096B7é·|U+096B6é¶|
U+0976Dé|U+097E7é§|
U+09771é±|U+097E7é§|
@@ -713,12 +833,18 @@ U+097C6é|U+05343å|
U+097C8é|U+0889Cè¢|
U+097E4é¤|U+0889Cè¢|
U+097EEé®|U+097EDé|
+U+0980Dé |U+2B806ð« |
+U+09814é |U+2CC56ð¬±|
U+0981Fé |U+0989Dé¢|
+U+09820é |U+2CC5Fð¬±|
+U+0982Bé «|U+2B5AFð«¯|
+U+09835é µ|U+2B5B3ð«³|
U+0983Cé ¼|U+08D56èµ|
U+0983Dé ½|U+09893é¢|
U+09847é¡|U+060B4æ´|
U+0984Bé¡|U+0816Eè
®|
U+09854é¡|U+0989Cé¢|
+U+09857é¡|U+2B5AEð«®|
U+09858é¡|U+0613Fæ¿|
U+09866顦|U+06194æ|
U+098C3é£|U+098D8é£|
@@ -727,6 +853,7 @@ U+098E4飤|U+09972饲|
U+098F1飱|U+098E7飧|
U+09901é¤|U+0996A饪|
U+09908é¤|U+07CCDç³|
+U+09917é¤|U+2B5E7ð«§|
U+09918é¤|U+09980é¦|U+04F59ä½|
U+09935餵|U+05582å|
U+09939餹|U+07CD6ç³|
@@ -734,11 +861,26 @@ U+0993B餻|U+07CD5ç³|
U+0993D餽|U+09988é¦|
U+0994Dé¥|U+081B3è³|
U+09951é¥|U+09965饥|
+U+09958é¥|U+2B5F4ð«´|
U+0995Dé¥|U+0998Dé¦|
+U+099BC馼|U+2B61Cð«|
+U+099C3é§|U+2B61Dð«|
U+099C8é§|U+09A71驱|
+U+099C9é§|U+2CCF6𬳶|
+U+099D3é§|U+2CCF5𬳵|
U+099E1駡|U+09A82éª|
+U+099EA駪|U+2CCFD𬳽|
+U+099FC駼|U+2CCFF𬳿|
+U+09A04é¨|U+2B627ð«§|
+U+09A0Aé¨|U+2B626ð«¦|
U+09A10é¨|U+09A8Céª|
+U+09A11é¨|U+2CD02ð¬´|
+U+09A1Eé¨|U+2CD03ð¬´|
+U+09A20é¨ |U+2B628ð«¨|
U+09A23騣|U+09B03é¬|
+U+09A31騱|U+2B62Cð«¬|
+U+09A35騵|U+2B62Að«ª|
+U+09A4Eé©|U+2CD0Að¬´|
U+09A58é©|U+09AA1骡|
U+09ABD骽|U+0817Fè
¿|
U+09ABE骾|U+09CA0é² |
@@ -750,22 +892,44 @@ U+09B26鬦|U+06597æ|
U+09B28鬨|U+054C4å|
U+09B2A鬪|U+06597æ|
U+09B30鬰|U+090C1é|
+U+09B80é®|U+2CD8Dð¬¶|
+U+09B86é®|U+2B696ð«|
+U+09B88é®|U+2CD8Bð¬¶|
U+09B8Eé®|U+09C87é²|
U+09B9Dé®|U+09C9Eé²|
+U+09B9Fé®|U+29F7E𩽾|
+U+09BA0é® |U+2CD8Fð¬¶|
+U+09BA1鮡|U+2CD90ð¬¶|
+U+09BB8鮸|U+29F83ð©¾|
U+09BF0鯰|U+09CB6鲶|U+09C87é²|
+U+09BFB鯻|U+2CD9Fð¬¶|
+U+09C0Aé°|U+2CDA0𬶠|
U+09C10é°|U+09CC4é³|
U+09C1Bé°|U+09CC1é³|
+U+09C24é°¤|U+2B695ð«|
U+09C2Eé°®|U+09CC1é³|
+U+09C36é°¶|U+2CDADð¬¶|
+U+09C40é±|U+2CDA8𬶨|
+U+09C47é±|U+29F8Cð©¾|
+U+09C5Aé±|U+2CDAE𬶮|
+U+09C72é±²|U+2B6ADð«|
U+09CEC鳬|U+051EBå«|
U+09D08é´|U+096C1é|
+U+09D4Féµ|U+2CDD5ð¬·|
U+09D5Eéµ|U+09E45é¹
|
+U+09D5Féµ|U+2B6EDð«|
U+09D70éµ°|U+096D5é|U+05F6B彫|
U+09D76鵶|U+09E26鸦|
+U+09DA0é¶ |U+2CE18ð¬¸|
+U+09DB1鶱|U+2CE23𬸣|
U+09DC0é·|U+09E5Aé¹|
U+09DC4é·|U+09E21鸡|
+U+09DDFé·|U+2CE26𬸦|
+U+09DEDé·|U+2CE2A𬸪|
U+09DF0é·°|U+071D5ç|
U+09DF4é·´|U+09E47é¹|
U+09E0Eé¸|U+083BAèº|
+U+09E11é¸|U+2CE1Að¬¸|
U+09E7B鹻|U+078B1碱|
U+09E7C鹼|U+078B1碱|U+07877硷|
U+09EAA麪|U+09762é¢|
@@ -778,12 +942,20 @@ U+09F03é¼|U+086D9è|
U+09F07é¼|U+09CCCé³|
U+09F08é¼|U+09CD6é³|
U+09F15é¼|U+0549Aå|
+U+09F58é½|U+2CE7C𬹼|
U+09F63é½£|U+051FAåº|
U+09F67齧|U+0556Eå®|
U+09F69齩|U+054ACå¬|
+U+09F6Eé½®|U+2CE88ð¬º|
+U+09F6F齯|U+2B81Cð« |
+U+09F7Cé½¼|U+2CE93ð¬º|
+U+09FC1é¿|U+04724ä¤|
+U+09FD0é¿|U+04CA4䲤|
+U+09FD3é¿|U+09FD2é¿|
U+20542ð |U+0518Då|
U+20545ð
|U+0518Då|
U+207B0ð °|U+0527Få¿|
+U+2144Dð¡|U+2BB7Cð«¼|
U+21681ð¡|U+05F0Aå¼|
U+21A25𡨥|U+05BC7å¯|
U+21ED5ð¡»|U+05C81å²|
@@ -792,10 +964,15 @@ U+242EEð¤®|U+07199ç|
U+24A0Fð¤¨|U+07410ç|
U+24C48ð¤±|U+04EA9亩|
U+24EA5𤺥|U+07629ç©|
+U+255FDð¥½|U+2C497ð¬|
U+262B1ð¦±|U+06302æ|
U+26351ð¦|U+07F8Cç¾|
U+26548ð¦|U+07707ç|
U+26D4Fð¦µ|U+0846Cè¬|
+U+289C0ð¨§|U+2CB4Að¬|
+U+28A0Fð¨¨|U+2CB5Bð¬|
+U+28B46ð¨|U+2CB76ð¬¶|
+U+28B4Eð¨|U+2CB73ð¬³|
U+28F7B𨽻|U+096B6é¶|
U+294D0ð©|U+08116è|
U+295D7ð©|U+098D3é£|
diff --git a/maintenance/language/zhtable/tradphrases.manual b/maintenance/language/zhtable/tradphrases.manual
index 3e0ef0e83d..d153930a7c 100644
--- a/maintenance/language/zhtable/tradphrases.manual
+++ b/maintenance/language/zhtable/tradphrases.manual
@@ -250,10 +250,8 @@
ä¹¾å
ä¹¾å¦
ä¹¾å½
-ä¹¾å
å¹¹å
ä¹¾è
-乾颱
ä¹¾å¦
ä¹¾åå
ä¹¾å»ç
@@ -292,11 +290,13 @@
髮絲
æ·é«®
ä¸æ·ç¼
+ä¸æ·ç¼
å¤æ·ç¼
è©æ·ç¼
è²·æ·ç¼
è³£æ·ç¼
ææ·ç¼
+åç¼ç¥¨
æ«é æ£é«®
é«®ç¦
ä¸çç
@@ -1187,6 +1187,7 @@
è¬é¬é¬
è¼é¬é¬
é¬é¬å°
+é¬è¦å
åååå
åå
骨ç½
@@ -1289,6 +1290,7 @@
ç°åºè±é
æ¬åº
åºå¸
+è¡åº
åé¨
è¡é
è¡è»
@@ -1415,6 +1417,10 @@
è¬æ°
æ£æ°
æ³ææ°
+ä¿®æ°æ¥·
+ä¿®æ°éº
+çæ°
+åæ°æ®ç¾
ç¨é¡
ç¨è§
ç¨å°
@@ -2887,8 +2893,6 @@
注é
æé¢
è·¯é¢
-ä¿®æ°æ¥·
-ä¿®æ°éº
å¸è£¡
ç裡
館裡
@@ -3241,7 +3245,6 @@
äºæ¥
äºçç
é±äºåº
-çæ°
åäºå
é»åé²
代表
diff --git a/maintenance/migrateActors.php b/maintenance/migrateActors.php
new file mode 100644
index 0000000000..1657f142b0
--- /dev/null
+++ b/maintenance/migrateActors.php
@@ -0,0 +1,551 @@
+addDescription( 'Migrates actors from pre-1.31 columns to the \'actor\' table' );
+ $this->setBatchSize( 100 );
+ }
+
+ protected function getUpdateKey() {
+ return __CLASS__;
+ }
+
+ protected function doDBUpdates() {
+ global $wgActorTableSchemaMigrationStage;
+
+ if ( $wgActorTableSchemaMigrationStage < MIGRATION_WRITE_NEW ) {
+ $this->output(
+ "...cannot update while \$wgActorTableSchemaMigrationStage < MIGRATION_WRITE_NEW\n"
+ );
+ return false;
+ }
+
+ $this->output( "Creating actor entries for all registered users\n" );
+ $end = 0;
+ $dbw = $this->getDB( DB_MASTER );
+ $max = $dbw->selectField( 'user', 'MAX(user_id)', false, __METHOD__ );
+ $count = 0;
+ while ( $end < $max ) {
+ $start = $end + 1;
+ $end = min( $start + $this->mBatchSize, $max );
+ $this->output( "... $start - $end\n" );
+ $dbw->insertSelect(
+ 'actor',
+ 'user',
+ [ 'actor_user' => 'user_id', 'actor_name' => 'user_name' ],
+ [ "user_id >= $start", "user_id <= $end" ],
+ __METHOD__,
+ [ 'IGNORE' ],
+ [ 'ORDER BY' => [ 'user_id' ] ]
+ );
+ $count += $dbw->affectedRows();
+ wfWaitForSlaves();
+ }
+ $this->output( "Completed actor creation, added $count new actor(s)\n" );
+
+ $errors = 0;
+ $errors += $this->migrateToTemp(
+ 'revision', 'rev_id', [ 'revactor_timestamp' => 'rev_timestamp', 'revactor_page' => 'rev_page' ],
+ 'rev_user', 'rev_user_text', 'revactor_rev', 'revactor_actor'
+ );
+ $errors += $this->migrate( 'archive', 'ar_id', 'ar_user', 'ar_user_text', 'ar_actor' );
+ $errors += $this->migrate( 'ipblocks', 'ipb_id', 'ipb_by', 'ipb_by_text', 'ipb_by_actor' );
+ $errors += $this->migrate( 'image', 'img_name', 'img_user', 'img_user_text', 'img_actor' );
+ $errors += $this->migrate(
+ 'oldimage', [ 'oi_name', 'oi_timestamp' ], 'oi_user', 'oi_user_text', 'oi_actor'
+ );
+ $errors += $this->migrate( 'filearchive', 'fa_id', 'fa_user', 'fa_user_text', 'fa_actor' );
+ $errors += $this->migrate( 'recentchanges', 'rc_id', 'rc_user', 'rc_user_text', 'rc_actor' );
+ $errors += $this->migrate( 'logging', 'log_id', 'log_user', 'log_user_text', 'log_actor' );
+
+ $errors += $this->migrateLogSearch();
+
+ return $errors === 0;
+ }
+
+ /**
+ * Calculate a "next" condition and a display string
+ * @param IDatabase $dbw
+ * @param string[] $primaryKey Primary key of the table.
+ * @param object $row Database row
+ * @return array [ string $next, string $display ]
+ */
+ private function makeNextCond( $dbw, $primaryKey, $row ) {
+ $next = '';
+ $display = [];
+ for ( $i = count( $primaryKey ) - 1; $i >= 0; $i-- ) {
+ $field = $primaryKey[$i];
+ $display[] = $field . '=' . $row->$field;
+ $value = $dbw->addQuotes( $row->$field );
+ if ( $next === '' ) {
+ $next = "$field > $value";
+ } else {
+ $next = "$field > $value OR $field = $value AND ($next)";
+ }
+ }
+ $display = implode( ' ', array_reverse( $display ) );
+ return [ $next, $display ];
+ }
+
+ /**
+ * Add actors for anons in a set of rows
+ * @param IDatabase $dbw
+ * @param string $nameField
+ * @param object[] &$rows
+ * @param array &$complainedAboutUsers
+ * @param int &$countErrors
+ * @return int Count of actors inserted
+ */
+ private function addActorsForRows(
+ IDatabase $dbw, $nameField, array &$rows, array &$complainedAboutUsers, &$countErrors
+ ) {
+ $needActors = [];
+ $countActors = 0;
+
+ $keep = [];
+ foreach ( $rows as $index => $row ) {
+ $keep[$index] = true;
+ if ( $row->actor_id === null ) {
+ // All registered users should have an actor_id already. So
+ // if we have a usable name here, it means they didn't run
+ // maintenance/cleanupUsersWithNoId.php
+ $name = $row->$nameField;
+ if ( User::isUsableName( $name ) ) {
+ if ( !isset( $complainedAboutUsers[$name] ) ) {
+ $complainedAboutUsers[$name] = true;
+ $this->error(
+ "User name \"$name\" is usable, cannot create an anonymous actor for it."
+ . " Run maintenance/cleanupUsersWithNoId.php to fix this situation.\n"
+ );
+ }
+ unset( $keep[$index] );
+ $countErrors++;
+ } else {
+ $needActors[$name] = 0;
+ }
+ }
+ }
+ $rows = array_intersect_key( $rows, $keep );
+
+ if ( $needActors ) {
+ $dbw->insert(
+ 'actor',
+ array_map( function ( $v ) {
+ return [
+ 'actor_name' => $v,
+ ];
+ }, array_keys( $needActors ) ),
+ __METHOD__
+ );
+ $countActors += $dbw->affectedRows();
+
+ $res = $dbw->select(
+ 'actor',
+ [ 'actor_id', 'actor_name' ],
+ [ 'actor_name' => array_keys( $needActors ) ],
+ __METHOD__
+ );
+ foreach ( $res as $row ) {
+ $needActors[$row->actor_name] = $row->actor_id;
+ }
+ foreach ( $rows as $row ) {
+ if ( $row->actor_id === null ) {
+ $row->actor_id = $needActors[$row->$nameField];
+ }
+ }
+ }
+
+ return $countActors;
+ }
+
+ /**
+ * Migrate actors in a table.
+ *
+ * Assumes any row with the actor field non-zero have already been migrated.
+ * Blanks the name field when migrating.
+ *
+ * @param string $table Table to migrate
+ * @param string|string[] $primaryKey Primary key of the table.
+ * @param string $userField User ID field name
+ * @param string $nameField User name field name
+ * @param string $actorField Actor field name
+ * @return int Number of errors
+ */
+ protected function migrate( $table, $primaryKey, $userField, $nameField, $actorField ) {
+ $complainedAboutUsers = [];
+
+ $primaryKey = (array)$primaryKey;
+ $pkFilter = array_flip( $primaryKey );
+ $this->output(
+ "Beginning migration of $table.$userField and $table.$nameField to $table.$actorField\n"
+ );
+ wfWaitForSlaves();
+
+ $dbw = $this->getDB( DB_MASTER );
+ $next = '1=1';
+ $countUpdated = 0;
+ $countActors = 0;
+ $countErrors = 0;
+ while ( true ) {
+ // Fetch the rows needing update
+ $res = $dbw->select(
+ [ $table, 'actor' ],
+ array_merge( $primaryKey, [ $userField, $nameField, 'actor_id' ] ),
+ [
+ $actorField => 0,
+ $next,
+ ],
+ __METHOD__,
+ [
+ 'ORDER BY' => $primaryKey,
+ 'LIMIT' => $this->mBatchSize,
+ ],
+ [
+ 'actor' => [
+ 'LEFT JOIN',
+ "$userField != 0 AND actor_user = $userField OR "
+ . "($userField = 0 OR $userField IS NULL) AND actor_name = $nameField"
+ ]
+ ]
+ );
+ if ( !$res->numRows() ) {
+ break;
+ }
+
+ // Insert new actors for rows that need one
+ $rows = iterator_to_array( $res );
+ $lastRow = end( $rows );
+ $countActors += $this->addActorsForRows(
+ $dbw, $nameField, $rows, $complainedAboutUsers, $countErrors
+ );
+
+ // Update the existing rows
+ foreach ( $rows as $row ) {
+ if ( !$row->actor_id ) {
+ list( , $display ) = $this->makeNextCond( $dbw, $primaryKey, $row );
+ $this->error(
+ "Could not make actor for row with $display "
+ . "$userField={$row->$userField} $nameField={$row->$nameField}\n"
+ );
+ $countErrors++;
+ continue;
+ }
+ $dbw->update(
+ $table,
+ [
+ $actorField => $row->actor_id,
+ $nameField => '',
+ ],
+ array_intersect_key( (array)$row, $pkFilter ) + [
+ $actorField => 0
+ ],
+ __METHOD__
+ );
+ $countUpdated += $dbw->affectedRows();
+ }
+
+ list( $next, $display ) = $this->makeNextCond( $dbw, $primaryKey, $lastRow );
+ $this->output( "... $display\n" );
+ wfWaitForSlaves();
+ }
+
+ $this->output(
+ "Completed migration, updated $countUpdated row(s) with $countActors new actor(s), "
+ . "$countErrors error(s)\n"
+ );
+ return $countErrors;
+ }
+
+ /**
+ * Migrate actors in a table to a temporary table.
+ *
+ * Assumes the new table is named "{$table}_actor_temp", and it has two
+ * columns, in order, being the primary key of the original table and the
+ * actor ID field.
+ * Blanks the name field when migrating.
+ *
+ * @param string $table Table to migrate
+ * @param string $primaryKey Primary key of the table.
+ * @param array $extra Extra fields to copy
+ * @param string $userField User ID field name
+ * @param string $nameField User name field name
+ * @param string $newPrimaryKey Primary key of the new table.
+ * @param string $actorField Actor field name
+ */
+ protected function migrateToTemp(
+ $table, $primaryKey, $extra, $userField, $nameField, $newPrimaryKey, $actorField
+ ) {
+ $complainedAboutUsers = [];
+
+ $newTable = $table . '_actor_temp';
+ $this->output(
+ "Beginning migration of $table.$userField and $table.$nameField to $newTable.$actorField\n"
+ );
+ wfWaitForSlaves();
+
+ $dbw = $this->getDB( DB_MASTER );
+ $next = [];
+ $countUpdated = 0;
+ $countActors = 0;
+ $countErrors = 0;
+ while ( true ) {
+ // Fetch the rows needing update
+ $res = $dbw->select(
+ [ $table, $newTable, 'actor' ],
+ [ $primaryKey, $userField, $nameField, 'actor_id' ] + $extra,
+ [ $newPrimaryKey => null ] + $next,
+ __METHOD__,
+ [
+ 'ORDER BY' => $primaryKey,
+ 'LIMIT' => $this->mBatchSize,
+ ],
+ [
+ $newTable => [ 'LEFT JOIN', "{$primaryKey}={$newPrimaryKey}" ],
+ 'actor' => [
+ 'LEFT JOIN',
+ "$userField != 0 AND actor_user = $userField OR "
+ . "($userField = 0 OR $userField IS NULL) AND actor_name = $nameField"
+ ]
+ ]
+ );
+ if ( !$res->numRows() ) {
+ break;
+ }
+
+ // Insert new actors for rows that need one
+ $rows = iterator_to_array( $res );
+ $lastRow = end( $rows );
+ $countActors += $this->addActorsForRows(
+ $dbw, $nameField, $rows, $complainedAboutUsers, $countErrors
+ );
+
+ // Update rows
+ if ( $rows ) {
+ $inserts = [];
+ $updates = [];
+ foreach ( $rows as $row ) {
+ if ( !$row->actor_id ) {
+ list( , $display ) = $this->makeNextCond( $dbw, [ $primaryKey ], $row );
+ $this->error(
+ "Could not make actor for row with $display "
+ . "$userField={$row->$userField} $nameField={$row->$nameField}\n"
+ );
+ $countErrors++;
+ continue;
+ }
+ $ins = [
+ $newPrimaryKey => $row->$primaryKey,
+ $actorField => $row->actor_id,
+ ];
+ foreach ( $extra as $to => $from ) {
+ $ins[$to] = $row->$to; // It's aliased
+ }
+ $inserts[] = $ins;
+ $updates[] = $row->$primaryKey;
+ }
+ $this->beginTransaction( $dbw, __METHOD__ );
+ $dbw->insert( $newTable, $inserts, __METHOD__ );
+ $dbw->update( $table, [ $nameField => '' ], [ $primaryKey => $updates ], __METHOD__ );
+ $countUpdated += $dbw->affectedRows();
+ $this->commitTransaction( $dbw, __METHOD__ );
+ }
+
+ // Calculate the "next" condition
+ list( $n, $display ) = $this->makeNextCond( $dbw, [ $primaryKey ], $lastRow );
+ $next = [ $n ];
+ $this->output( "... $display\n" );
+ wfWaitForSlaves();
+ }
+
+ $this->output(
+ "Completed migration, updated $countUpdated row(s) with $countActors new actor(s), "
+ . "$countErrors error(s)\n"
+ );
+ return $countErrors;
+ }
+
+ /**
+ * Migrate actors in the log_search table.
+ * @return int Number of errors
+ */
+ protected function migrateLogSearch() {
+ $complainedAboutUsers = [];
+
+ $primaryKey = [ 'ls_field', 'ls_value' ];
+ $pkFilter = array_flip( $primaryKey );
+ $this->output( "Beginning migration of log_search\n" );
+ wfWaitForSlaves();
+
+ $dbw = $this->getDB( DB_MASTER );
+ $countUpdated = 0;
+ $countActors = 0;
+ $countErrors = 0;
+
+ $next = '1=1';
+ while ( true ) {
+ // Fetch the rows needing update
+ $res = $dbw->select(
+ [ 'log_search', 'actor' ],
+ [ 'ls_field', 'ls_value', 'actor_id' ],
+ [
+ 'ls_field' => 'target_author_id',
+ $next,
+ ],
+ __METHOD__,
+ [
+ 'DISTINCT',
+ 'ORDER BY' => [ 'ls_value' ],
+ 'LIMIT' => $this->mBatchSize,
+ ],
+ [ 'actor' => [ 'LEFT JOIN', 'ls_value = ' . $dbw->buildStringCast( 'actor_user' ) ] ]
+ );
+ if ( !$res->numRows() ) {
+ break;
+ }
+
+ // Update the rows
+ $del = [];
+ foreach ( $res as $row ) {
+ $lastRow = $row;
+ if ( !$row->actor_id ) {
+ list( , $display ) = $this->makeNextCond( $dbw, $primaryKey, $row );
+ $this->error( "No actor for row with $display\n" );
+ $countErrors++;
+ continue;
+ }
+ $dbw->update(
+ 'log_search',
+ [
+ 'ls_field' => 'target_author_actor',
+ 'ls_value' => $row->actor_id,
+ ],
+ [
+ 'ls_field' => $row->ls_field,
+ 'ls_value' => $row->ls_value,
+ ],
+ __METHOD__,
+ [ 'IGNORE' ]
+ );
+ $countUpdated += $dbw->affectedRows();
+ $del[] = $row->ls_value;
+ }
+ if ( $del ) {
+ $dbw->delete(
+ 'log_search', [ 'ls_field' => 'target_author_id', 'ls_value' => $del ], __METHOD__
+ );
+ $countUpdated += $dbw->affectedRows();
+ }
+
+ list( $next, $display ) = $this->makeNextCond( $dbw, $primaryKey, $lastRow );
+ $this->output( "... $display\n" );
+ wfWaitForSlaves();
+ }
+
+ $next = '1=1';
+ while ( true ) {
+ // Fetch the rows needing update
+ $res = $dbw->select(
+ [ 'log_search', 'actor' ],
+ [ 'ls_field', 'ls_value', 'actor_id' ],
+ [
+ 'ls_field' => 'target_author_ip',
+ $next,
+ ],
+ __METHOD__,
+ [
+ 'DISTINCT',
+ 'ORDER BY' => [ 'ls_value' ],
+ 'LIMIT' => $this->mBatchSize,
+ ],
+ [ 'actor' => [ 'LEFT JOIN', 'ls_value = actor_name' ] ]
+ );
+ if ( !$res->numRows() ) {
+ break;
+ }
+
+ // Insert new actors for rows that need one
+ $rows = iterator_to_array( $res );
+ $lastRow = end( $rows );
+ $countActors += $this->addActorsForRows(
+ $dbw, 'ls_value', $rows, $complainedAboutUsers, $countErrors
+ );
+
+ // Update the rows
+ $del = [];
+ foreach ( $rows as $row ) {
+ if ( !$row->actor_id ) {
+ list( , $display ) = $this->makeNextCond( $dbw, $primaryKey, $row );
+ $this->error( "Could not make actor for row with $display\n" );
+ $countErrors++;
+ continue;
+ }
+ $dbw->update(
+ 'log_search',
+ [
+ 'ls_field' => 'target_author_actor',
+ 'ls_value' => $row->actor_id,
+ ],
+ [
+ 'ls_field' => $row->ls_field,
+ 'ls_value' => $row->ls_value,
+ ],
+ __METHOD__,
+ [ 'IGNORE' ]
+ );
+ $countUpdated += $dbw->affectedRows();
+ $del[] = $row->ls_value;
+ }
+ if ( $del ) {
+ $dbw->delete(
+ 'log_search', [ 'ls_field' => 'target_author_ip', 'ls_value' => $del ], __METHOD__
+ );
+ $countUpdated += $dbw->affectedRows();
+ }
+
+ list( $next, $display ) = $this->makeNextCond( $dbw, $primaryKey, $lastRow );
+ $this->output( "... $display\n" );
+ wfWaitForSlaves();
+ }
+
+ $this->output(
+ "Completed migration, updated $countUpdated row(s) with $countActors new actor(s), "
+ . "$countErrors error(s)\n"
+ );
+ return $countErrors;
+ }
+}
+
+$maintClass = "MigrateActors";
+require_once RUN_MAINTENANCE_IF_MAIN;
diff --git a/maintenance/migrateComments.php b/maintenance/migrateComments.php
index c35315d71b..cb72c1ec2f 100644
--- a/maintenance/migrateComments.php
+++ b/maintenance/migrateComments.php
@@ -205,7 +205,7 @@ class MigrateComments extends LoggedUpdateMaintenance {
$next = "$field > $value OR $field = $value AND ($next)";
}
}
- $prompt = join( ' ', array_reverse( $prompt ) );
+ $prompt = implode( ' ', array_reverse( $prompt ) );
$this->output( "... $prompt\n" );
wfWaitForSlaves();
}
diff --git a/maintenance/mssql/archives/patch-actor-table.sql b/maintenance/mssql/archives/patch-actor-table.sql
new file mode 100644
index 0000000000..b26ad44a37
--- /dev/null
+++ b/maintenance/mssql/archives/patch-actor-table.sql
@@ -0,0 +1,53 @@
+--
+-- patch-actor-table.sql
+--
+-- T167246. Add an `actor` table and various columns (and temporary tables) to reference it.
+
+CREATE TABLE /*_*/actor (
+ actor_id bigint unsigned NOT NULL CONSTRAINT PK_actor PRIMARY KEY IDENTITY(0,1),
+ actor_user int unsigned,
+ actor_name nvarchar(255) NOT NULL
+);
+CREATE UNIQUE INDEX /*i*/actor_user ON /*_*/actor (actor_user);
+CREATE UNIQUE INDEX /*i*/actor_name ON /*_*/actor (actor_name);
+
+-- Dummy
+INSERT INTO /*_*/actor (actor_name) VALUES ('##Anonymous##');
+
+CREATE TABLE /*_*/revision_actor_temp (
+ revactor_rev int unsigned NOT NULL CONSTRAINT FK_revactor_rev FOREIGN KEY REFERENCES /*_*/revision(rev_id) ON DELETE CASCADE,
+ revactor_actor bigint unsigned NOT NULL,
+ revactor_timestamp varchar(14) NOT NULL CONSTRAINT DF_revactor_timestamp DEFAULT '',
+ revactor_page int unsigned NOT NULL,
+ CONSTRAINT PK_revision_actor_temp PRIMARY KEY (revactor_rev, revactor_actor)
+);
+CREATE UNIQUE INDEX /*i*/revactor_rev ON /*_*/revision_actor_temp (revactor_rev);
+CREATE INDEX /*i*/actor_timestamp ON /*_*/revision_actor_temp (revactor_actor,revactor_timestamp);
+CREATE INDEX /*i*/page_actor_timestamp ON /*_*/revision_actor_temp (revactor_page,revactor_actor,revactor_timestamp);
+
+ALTER TABLE /*_*/archive ADD CONSTRAINT DF_ar_user_text DEFAULT '' FOR ar_user_text;
+ALTER TABLE /*_*/archive ADD ar_actor bigint unsigned NOT NULL CONSTRAINT DF_ar_actor DEFAULT 0;
+CREATE INDEX /*i*/ar_actor_timestamp ON /*_*/archive (ar_actor,ar_timestamp);
+
+ALTER TABLE /*_*/ipblocks ADD ipb_by_actor bigint unsigned NOT NULL CONSTRAINT DF_ipb_by_actor DEFAULT 0;
+
+ALTER TABLE /*_*/image ADD CONSTRAINT DF_img_user_text DEFAULT '' FOR img_user_text;
+ALTER TABLE /*_*/image ADD img_actor bigint unsigned NOT NULL CONSTRAINT DF_img_actor DEFAULT 0;
+CREATE INDEX /*i*/img_actor_timestamp ON /*_*/image (img_actor, img_timestamp);
+
+ALTER TABLE /*_*/oldimage ADD CONSTRAINT DF_oi_user_text DEFAULT '' FOR oi_user_text;
+ALTER TABLE /*_*/oldimage ADD oi_actor bigint unsigned NOT NULL CONSTRAINT DF_oi_actor DEFAULT 0;
+CREATE INDEX /*i*/oi_actor_timestamp ON /*_*/oldimage (oi_actor,oi_timestamp);
+
+ALTER TABLE /*_*/filearchive ADD CONSTRAINT DF_fa_user_text DEFAULT '' FOR fa_user_text;
+ALTER TABLE /*_*/filearchive ADD fa_actor bigint unsigned NOT NULL CONSTRAINT DF_fa_actor DEFAULT 0;
+CREATE INDEX /*i*/fa_actor_timestamp ON /*_*/filearchive (fa_actor,fa_timestamp);
+
+ALTER TABLE /*_*/recentchanges ADD CONSTRAINT DF_rc_user_text DEFAULT '' FOR rc_user_text;
+ALTER TABLE /*_*/recentchanges ADD rc_actor bigint unsigned NOT NULL CONSTRAINT DF_rc_actor DEFAULT 0;
+CREATE INDEX /*i*/rc_ns_actor ON /*_*/recentchanges (rc_namespace, rc_actor);
+CREATE INDEX /*i*/rc_actor ON /*_*/recentchanges (rc_actor, rc_timestamp);
+
+ALTER TABLE /*_*/logging ADD log_actor bigint unsigned NOT NULL CONSTRAINT DF_log_actor DEFAULT 0;
+CREATE INDEX /*i*/actor_time ON /*_*/logging (log_actor, log_timestamp);
+CREATE INDEX /*i*/log_actor_type_time ON /*_*/logging (log_actor, log_type, log_timestamp);
diff --git a/maintenance/mssql/tables.sql b/maintenance/mssql/tables.sql
index 467326403e..5348c47d9b 100644
--- a/maintenance/mssql/tables.sql
+++ b/maintenance/mssql/tables.sql
@@ -54,6 +54,23 @@ CREATE INDEX /*i*/user_email ON /*_*/mwuser (user_email);
-- Insert a dummy user to represent anons
INSERT INTO /*_*/mwuser (user_name) VALUES ('##Anonymous##');
+--
+-- The "actor" table associates user names or IP addresses with integers for
+-- the benefit of other tables that need to refer to either logged-in or
+-- logged-out users. If something can only ever be done by logged-in users, it
+-- can refer to the user table directly.
+--
+CREATE TABLE /*_*/actor (
+ actor_id bigint unsigned NOT NULL CONSTRAINT PK_actor PRIMARY KEY IDENTITY(0,1),
+ actor_user int unsigned,
+ actor_name nvarchar(255) NOT NULL
+);
+CREATE UNIQUE INDEX /*i*/actor_user ON /*_*/actor (actor_user);
+CREATE UNIQUE INDEX /*i*/actor_name ON /*_*/actor (actor_name);
+
+-- Insert a dummy actor to represent no actor
+INSERT INTO /*_*/actor (actor_name) VALUES ('##Anonymous##');
+
--
-- User permissions have been broken out to a separate table;
-- this allows sites with a shared user table to have different
@@ -200,7 +217,7 @@ INSERT INTO /*_*/revision (rev_page,rev_text_id,rev_comment,rev_user,rev_len) VA
ALTER TABLE /*_*/page ADD CONSTRAINT FK_page_latest_page_id FOREIGN KEY (page_latest) REFERENCES /*_*/revision(rev_id);
--
--- Temporary table to avoid blocking on an alter of revision.
+-- Temporary tables to avoid blocking on an alter of revision.
--
-- On large wikis like the English Wikipedia, altering the revision table is a
-- months-long process. This table is being created to avoid such an alter, and
@@ -213,6 +230,17 @@ CREATE TABLE /*_*/revision_comment_temp (
);
CREATE UNIQUE INDEX /*i*/revcomment_rev ON /*_*/revision_comment_temp (revcomment_rev);
+CREATE TABLE /*_*/revision_actor_temp (
+ revactor_rev int unsigned NOT NULL CONSTRAINT FK_revactor_rev FOREIGN KEY REFERENCES /*_*/revision(rev_id) ON DELETE CASCADE,
+ revactor_actor bigint unsigned NOT NULL,
+ revactor_timestamp varchar(14) NOT NULL CONSTRAINT DF_revactor_timestamp DEFAULT '',
+ revactor_page int unsigned NOT NULL,
+ CONSTRAINT PK_revision_actor_temp PRIMARY KEY (revactor_rev, revactor_actor)
+);
+CREATE UNIQUE INDEX /*i*/revactor_rev ON /*_*/revision_actor_temp (revactor_rev);
+CREATE INDEX /*i*/actor_timestamp ON /*_*/revision_actor_temp (revactor_actor,revactor_timestamp);
+CREATE INDEX /*i*/page_actor_timestamp ON /*_*/revision_actor_temp (revactor_page,revactor_actor,revactor_timestamp);
+
--
-- Holds TEXT of individual page revisions.
--
@@ -246,7 +274,8 @@ CREATE TABLE /*_*/archive (
ar_comment NVARCHAR(255) NOT NULL CONSTRAINT DF_ar_comment DEFAULT '',
ar_comment_id bigint unsigned NOT NULL CONSTRAINT DF_ar_comment_id DEFAULT 0 CONSTRAINT FK_ar_comment_id FOREIGN KEY REFERENCES /*_*/comment(comment_id),
ar_user INT CONSTRAINT ar_user__user_id__fk FOREIGN KEY REFERENCES /*_*/mwuser(user_id),
- ar_user_text NVARCHAR(255) NOT NULL,
+ ar_user_text NVARCHAR(255) NOT NULL CONSTRAINT DF_ar_user_text DEFAULT '',
+ ar_actor bigint unsigned NOT NULL CONSTRAINT DF_ar_actor DEFAULT 0,
ar_timestamp varchar(14) NOT NULL default '',
ar_minor_edit BIT NOT NULL DEFAULT 0,
ar_flags NVARCHAR(255) NOT NULL,
@@ -262,6 +291,7 @@ CREATE TABLE /*_*/archive (
);
CREATE INDEX /*i*/name_title_timestamp ON /*_*/archive (ar_namespace,ar_title,ar_timestamp);
CREATE INDEX /*i*/ar_usertext_timestamp ON /*_*/archive (ar_user_text,ar_timestamp);
+CREATE INDEX /*i*/ar_actor_timestamp ON /*_*/archive (ar_actor,ar_timestamp);
CREATE INDEX /*i*/ar_revid ON /*_*/archive (ar_rev_id);
@@ -600,6 +630,9 @@ CREATE TABLE /*_*/ipblocks (
-- User ID who made the block.
ipb_by int REFERENCES /*_*/mwuser(user_id) ON DELETE CASCADE,
+ -- Actor ID who made the block.
+ ipb_by_actor bigint unsigned NOT NULL CONSTRAINT DF_ipb_by_actor DEFAULT 0,
+
-- User name of blocker
ipb_by_text nvarchar(255) NOT NULL default '',
@@ -709,7 +742,8 @@ CREATE TABLE /*_*/image (
-- user_id and user_name of uploader.
img_user int REFERENCES /*_*/mwuser(user_id) ON DELETE SET NULL,
- img_user_text nvarchar(255) NOT NULL,
+ img_user_text nvarchar(255) NOT NULL CONSTRAINT DF_img_user_text DEFAULT '',
+ img_actor bigint unsigned NOT NULL CONSTRAINT DF_img_actor DEFAULT 0,
-- Time of the upload.
img_timestamp nvarchar(14) NOT NULL default '',
@@ -722,6 +756,7 @@ CREATE TABLE /*_*/image (
);
CREATE INDEX /*i*/img_usertext_timestamp ON /*_*/image (img_user_text,img_timestamp);
+CREATE INDEX /*i*/img_actor_timestamp ON /*_*/image (img_actor, img_timestamp);
-- Used by Special:ListFiles for sort-by-size
CREATE INDEX /*i*/img_size ON /*_*/image (img_size);
-- Used by Special:Newimages and Special:ListFiles
@@ -768,7 +803,8 @@ CREATE TABLE /*_*/oldimage (
oi_description nvarchar(255) NOT NULL CONSTRAINT DF_oi_description DEFAULT '',
oi_description_id bigint unsigned NOT NULL CONSTRAINT DF_oi_description_id DEFAULT 0 CONSTRAINT FK_oi_description_id FOREIGN KEY REFERENCES /*_*/comment(comment_id),
oi_user int REFERENCES /*_*/mwuser(user_id),
- oi_user_text nvarchar(255) NOT NULL,
+ oi_user_text nvarchar(255) NOT NULL CONSTRAINT DF_oi_user_text DEFAULT '',
+ oi_actor bigint unsigned NOT NULL CONSTRAINT DF_oi_actor DEFAULT 0,
oi_timestamp varchar(14) NOT NULL default '',
oi_metadata varbinary(max) NOT NULL,
@@ -783,6 +819,7 @@ CREATE TABLE /*_*/oldimage (
);
CREATE INDEX /*i*/oi_usertext_timestamp ON /*_*/oldimage (oi_user_text,oi_timestamp);
+CREATE INDEX /*i*/oi_actor_timestamp ON /*_*/oldimage (oi_actor,oi_timestamp);
CREATE INDEX /*i*/oi_name_timestamp ON /*_*/oldimage (oi_name,oi_timestamp);
CREATE INDEX /*i*/oi_sha1 ON /*_*/oldimage (oi_sha1);
@@ -830,7 +867,8 @@ CREATE TABLE /*_*/filearchive (
fa_description nvarchar(255) CONSTRAINT DF_fa_description DEFAULT '',
fa_description_id bigint unsigned NOT NULL CONSTRAINT DF_fa_description DEFAULT 0 CONSTRAINT FK_fa_description FOREIGN KEY REFERENCES /*_*/comment(comment_id),
fa_user int default 0 REFERENCES /*_*/mwuser(user_id) ON DELETE SET NULL,
- fa_user_text nvarchar(255),
+ fa_user_text nvarchar(255) CONSTRAINT DF_fa_user_text DEFAULT '',
+ fa_actor bigint unsigned NOT NULL CONSTRAINT DF_fa_actor DEFAULT 0,
fa_timestamp varchar(14) default '',
-- Visibility of deleted revisions, bitfield
@@ -851,6 +889,7 @@ CREATE INDEX /*i*/fa_storage_group ON /*_*/filearchive (fa_storage_group, fa_sto
CREATE INDEX /*i*/fa_deleted_timestamp ON /*_*/filearchive (fa_deleted_timestamp);
-- sort by uploader
CREATE INDEX /*i*/fa_user_timestamp ON /*_*/filearchive (fa_user_text,fa_timestamp);
+CREATE INDEX /*i*/fa_actor_timestamp ON /*_*/filearchive (fa_actor,fa_timestamp);
-- find file by sha1, 10 bytes will be enough for hashes to be indexed
CREATE INDEX /*i*/fa_sha1 ON /*_*/filearchive (fa_sha1);
@@ -923,7 +962,8 @@ CREATE TABLE /*_*/recentchanges (
-- As in revision
rc_user int NOT NULL default 0 CONSTRAINT rc_user__user_id__fk FOREIGN KEY REFERENCES /*_*/mwuser(user_id),
- rc_user_text nvarchar(255) NOT NULL,
+ rc_user_text nvarchar(255) NOT NULL CONSTRAINT DF_rc_user_text DEFAULT '',
+ rc_actor bigint unsigned NOT NULL CONSTRAINT DF_rc_actor DEFAULT 0,
-- When pages are renamed, their RC entries do _not_ change.
rc_namespace int NOT NULL default 0,
@@ -995,6 +1035,8 @@ CREATE INDEX /*i*/new_name_timestamp ON /*_*/recentchanges (rc_new,rc_namespace,
CREATE INDEX /*i*/rc_ip ON /*_*/recentchanges (rc_ip);
CREATE INDEX /*i*/rc_ns_usertext ON /*_*/recentchanges (rc_namespace, rc_user_text);
CREATE INDEX /*i*/rc_user_text ON /*_*/recentchanges (rc_user_text, rc_timestamp);
+CREATE INDEX /*i*/rc_ns_actor ON /*_*/recentchanges (rc_namespace, rc_actor);
+CREATE INDEX /*i*/rc_actor ON /*_*/recentchanges (rc_actor, rc_timestamp);
CREATE INDEX /*i*/rc_name_type_patrolled_timestamp ON /*_*/recentchanges (rc_namespace, rc_type, rc_patrolled, rc_timestamp);
@@ -1126,6 +1168,9 @@ CREATE TABLE /*_*/logging (
-- Name of the user who performed this action
log_user_text nvarchar(255) NOT NULL default '',
+ -- The actor who performed this action
+ log_actor bigint unsigned NOT NULL CONSTRAINT DF_log_actor DEFAULT 0,
+
-- Key to the page affected. Where a user is the target,
-- this will point to the user page.
log_namespace int NOT NULL default 0,
@@ -1156,6 +1201,8 @@ CREATE INDEX /*i*/log_page_id_time ON /*_*/logging (log_page,log_timestamp);
CREATE INDEX /*i*/type_action ON /*_*/logging (log_type, log_action, log_timestamp);
CREATE INDEX /*i*/log_user_text_type_time ON /*_*/logging (log_user_text, log_type, log_timestamp);
CREATE INDEX /*i*/log_user_text_time ON /*_*/logging (log_user_text, log_timestamp);
+CREATE INDEX /*i*/actor_time ON /*_*/logging (log_actor, log_timestamp);
+CREATE INDEX /*i*/log_actor_type_time ON /*_*/logging (log_actor, log_type, log_timestamp);
INSERT INTO /*_*/logging (log_user,log_page,log_params) VALUES(0,0,'');
diff --git a/maintenance/oracle/archives/patch-actor-table.sql b/maintenance/oracle/archives/patch-actor-table.sql
new file mode 100644
index 0000000000..93c7531b88
--- /dev/null
+++ b/maintenance/oracle/archives/patch-actor-table.sql
@@ -0,0 +1,64 @@
+--
+-- patch-actor-table.sql
+--
+-- T167246. Add an `actor` table and various columns (and temporary tables) to reference it.
+
+define mw_prefix='{$wgDBprefix}';
+
+CREATE SEQUENCE actor_actor_id_seq;
+CREATE TABLE &mw_prefix.actor (
+ actor_id NUMBER NOT NULL,
+ actor_user NUMBER,
+ actor_name VARCHAR2(255) NOT NULL
+);
+
+ALTER TABLE &mw_prefix.actor ADD CONSTRAINT &mw_prefix.actor_pk PRIMARY KEY (actor_id);
+
+/*$mw$*/
+CREATE TRIGGER &mw_prefix.actor_seq_trg BEFORE INSERT ON &mw_prefix.actor
+ FOR EACH ROW WHEN (new.actor_id IS NULL)
+BEGIN
+ &mw_prefix.lastval_pkg.setLastval(actor_actor_id_seq.nextval, :new.actor_id);
+END;
+/*$mw$*/
+
+-- Create a dummy actor to satisfy fk contraints
+INSERT INTO &mw_prefix.actor (actor_id, actor_name) VALUES (0,'##Anonymous##');
+
+CREATE TABLE &mw_prefix.revision_actor_temp (
+ revactor_rev NUMBER NOT NULL,
+ revactor_actor NUMBER NOT NULL,
+ revactor_timestamp TIMESTAMP(6) WITH TIME ZONE NOT NULL,
+ revactor_page NUMBER NOT NULL
+);
+ALTER TABLE &mw_prefix.revision_actor_temp ADD CONSTRAINT &mw_prefix.revision_actor_temp_pk PRIMARY KEY (revactor_rev, revactor_actor);
+CREATE UNIQUE INDEX &mw_prefix.revactor_rev ON &mw_prefix.revision_actor_temp (revactor_rev);
+CREATE INDEX &mw_prefix.actor_timestamp ON &mw_prefix.revision_actor_temp (revactor_actor,revactor_timestamp);
+CREATE INDEX &mw_prefix.page_actor_timestamp ON &mw_prefix.revision_actor_temp (revactor_page,revactor_actor,revactor_timestamp);
+
+ALTER TABLE &mw_prefix.archive ALTER COLUMN ar_user_text VARCHAR2(255) NULL;
+ALTER TABLE &mw_prefix.archive ADD COLUMN ar_actor NUMBER DEFAULT 0 NOT NULL;
+CREATE INDEX &mw_prefix.ar_actor_timestamp ON &mw_prefix.archive (ar_actor,ar_timestamp);
+
+ALTER TABLE &mw_prefix.ipblocks ADD COLUMN ipb_by_actor NUMBER DEFUALT 0 NOT NULL;
+
+ALTER TABLE &mw_prefix.image ALTER COLUMN img_user_text VARCHAR2(255) NULL;
+ALTER TABLE &mw_prefix.image ADD COLUMN img_actor NUMBER DEFAULT 0 NOT NULL;
+CREATE INDEX &mw_prefix.img_actor_timestamp ON &mw_prefix.image (img_actor, img_timestamp);
+
+ALTER TABLE &mw_prefix.oldimage ALTER COLUMN oi_user_text VARCHAR2(255) NULL;
+ALTER TABLE &mw_prefix.oldimage ADD COLUMN oi_actor NUMBER DEFAULT 0 NOT NULL;
+CREATE INDEX &mw_prefix.oi_actor_timestamp ON &mw_prefix.oldimage (oi_actor,oi_timestamp);
+
+ALTER TABLE &mw_prefix.filearchive ALTER COLUMN fa_user_text VARCHAR2(255) NULL;
+ALTER TABLE &mw_prefix.filearchive ADD COLUMN fa_actor NUMBER DEFAULT 0 NOT NULL;
+CREATE INDEX &mw_prefix.fa_actor_timestamp ON &mw_prefix.filearchive (fa_actor,fa_timestamp);
+
+ALTER TABLE &mw_prefix.recentchanges ALTER COLUMN rc_user_text VARCHAR2(255) NULL;
+ALTER TABLE &mw_prefix.recentchanges ADD COLUMN rc_actor NUMBER DEFAULT 0 NOT NULL;
+CREATE INDEX &mw_prefix.rc_ns_actor ON &mw_prefix.recentchanges (rc_namespace, rc_actor);
+CREATE INDEX &mw_prefix.rc_actor ON &mw_prefix.recentchanges (rc_actor, rc_timestamp);
+
+ALTER TABLE &mw_prefix.logging ADD COLUMN log_actor NUMBER DEFAULT 0 NOT NULL;
+CREATE INDEX &mw_prefix.actor_time ON &mw_prefix.logging (log_actor, log_timestamp);
+CREATE INDEX &mw_prefix.log_actor_type_time ON &mw_prefix.logging (log_actor, log_type, log_timestamp);
diff --git a/maintenance/oracle/tables.sql b/maintenance/oracle/tables.sql
index 7195a5e388..110188d300 100644
--- a/maintenance/oracle/tables.sql
+++ b/maintenance/oracle/tables.sql
@@ -60,6 +60,26 @@ INSERT INTO &mw_prefix.mwuser
(user_id, user_name, user_options, user_touched, user_registration, user_editcount)
VALUES (0,'Anonymous','', current_timestamp, current_timestamp,0);
+CREATE SEQUENCE actor_actor_id_seq;
+CREATE TABLE &mw_prefix.actor (
+ actor_id NUMBER NOT NULL,
+ actor_user NUMBER,
+ actor_name VARCHAR2(255) NOT NULL
+);
+
+ALTER TABLE &mw_prefix.actor ADD CONSTRAINT &mw_prefix.actor_pk PRIMARY KEY (actor_id);
+
+/*$mw$*/
+CREATE TRIGGER &mw_prefix.actor_seq_trg BEFORE INSERT ON &mw_prefix.actor
+ FOR EACH ROW WHEN (new.actor_id IS NULL)
+BEGIN
+ &mw_prefix.lastval_pkg.setLastval(actor_actor_id_seq.nextval, :new.actor_id);
+END;
+/*$mw$*/
+
+-- Create a dummy actor to satisfy fk contraints
+INSERT INTO &mw_prefix.actor (actor_id, actor_name) VALUES (0,'##Anonymous##');
+
CREATE TABLE &mw_prefix.user_groups (
ug_user NUMBER DEFAULT 0 NOT NULL,
ug_group VARCHAR2(255) NOT NULL,
@@ -197,6 +217,17 @@ ALTER TABLE &mw_prefix.revision_comment_temp ADD CONSTRAINT &mw_prefix.revision_
ALTER TABLE &mw_prefix.revision_comment_temp ADD CONSTRAINT &mw_prefix.revision_comment_temp_fk2 FOREIGN KEY (revcomment_comment_id) REFERENCES &mw_prefix."COMMENT"(comment_id) ON DELETE CASCADE DEFERRABLE INITIALLY DEFERRED;
CREATE UNIQUE INDEX &mw_prefix.revcomment_rev ON &mw_prefix.revision_comment_temp (revcomment_rev);
+CREATE TABLE &mw_prefix.revision_actor_temp (
+ revactor_rev NUMBER NOT NULL,
+ revactor_actor NUMBER NOT NULL,
+ revactor_timestamp TIMESTAMP(6) WITH TIME ZONE NOT NULL,
+ revactor_page NUMBER NOT NULL
+);
+ALTER TABLE &mw_prefix.revision_actor_temp ADD CONSTRAINT &mw_prefix.revision_actor_temp_pk PRIMARY KEY (revactor_rev, revactor_actor);
+CREATE UNIQUE INDEX &mw_prefix.revactor_rev ON &mw_prefix.revision_actor_temp (revactor_rev);
+CREATE INDEX &mw_prefix.actor_timestamp ON &mw_prefix.revision_actor_temp (revactor_actor,revactor_timestamp);
+CREATE INDEX &mw_prefix.page_actor_timestamp ON &mw_prefix.revision_actor_temp (revactor_page,revactor_actor,revactor_timestamp);
+
CREATE SEQUENCE text_old_id_seq;
CREATE TABLE &mw_prefix.pagecontent ( -- replaces reserved word 'text'
old_id NUMBER NOT NULL,
@@ -221,7 +252,8 @@ CREATE TABLE &mw_prefix.archive (
ar_comment VARCHAR2(255),
ar_comment_id NUMBER DEFAULT 0 NOT NULL,
ar_user NUMBER DEFAULT 0 NOT NULL,
- ar_user_text VARCHAR2(255) NOT NULL,
+ ar_user_text VARCHAR2(255) NULL,
+ ar_actor NUMBER DEFAULT 0 NOT NULL,
ar_timestamp TIMESTAMP(6) WITH TIME ZONE NOT NULL,
ar_minor_edit CHAR(1) DEFAULT '0' NOT NULL,
ar_flags VARCHAR2(255),
@@ -240,6 +272,7 @@ ALTER TABLE &mw_prefix.archive ADD CONSTRAINT &mw_prefix.archive_fk1 FOREIGN KEY
ALTER TABLE &mw_prefix.archive ADD CONSTRAINT &mw_prefix.archive_fk2 FOREIGN KEY (ar_comment_id) REFERENCES &mw_prefix."COMMENT"(comment_id) ON DELETE CASCADE DEFERRABLE INITIALLY DEFERRED;
CREATE INDEX &mw_prefix.archive_i01 ON &mw_prefix.archive (ar_namespace,ar_title,ar_timestamp);
CREATE INDEX &mw_prefix.archive_i02 ON &mw_prefix.archive (ar_user_text,ar_timestamp);
+CREATE INDEX &mw_prefix.ar_actor_timestamp ON &mw_prefix.archive (ar_actor,ar_timestamp);
CREATE INDEX &mw_prefix.archive_i03 ON &mw_prefix.archive (ar_rev_id);
/*$mw$*/
CREATE TRIGGER &mw_prefix.archive_seq_trg BEFORE INSERT ON &mw_prefix.archive
@@ -439,6 +472,7 @@ CREATE TABLE &mw_prefix.ipblocks (
ipb_user NUMBER DEFAULT 0 NOT NULL,
ipb_by NUMBER DEFAULT 0 NOT NULL,
ipb_by_text VARCHAR2(255) NULL,
+ ipb_by_actor NUMBER DEFUALT 0 NOT NULL,
ipb_reason VARCHAR2(255) NULL,
ipb_reason_id NUMBER DEFAULT 0 NOT NULL,
ipb_timestamp TIMESTAMP(6) WITH TIME ZONE NOT NULL,
@@ -484,7 +518,8 @@ CREATE TABLE &mw_prefix.image (
img_minor_mime VARCHAR2(100) DEFAULT 'unknown',
img_description VARCHAR2(255),
img_user NUMBER DEFAULT 0 NOT NULL,
- img_user_text VARCHAR2(255) NOT NULL,
+ img_user_text VARCHAR2(255) NULL,
+ img_actor NUMBER DEFAULT 0 NOT NULL,
img_timestamp TIMESTAMP(6) WITH TIME ZONE,
img_sha1 VARCHAR2(32)
);
@@ -494,6 +529,7 @@ CREATE INDEX &mw_prefix.image_i01 ON &mw_prefix.image (img_user_text,img_timesta
CREATE INDEX &mw_prefix.image_i02 ON &mw_prefix.image (img_size);
CREATE INDEX &mw_prefix.image_i03 ON &mw_prefix.image (img_timestamp);
CREATE INDEX &mw_prefix.image_i04 ON &mw_prefix.image (img_sha1);
+CREATE INDEX &mw_prefix.img_actor_timestamp ON &mw_prefix.image (img_actor, img_timestamp);
CREATE TABLE &mw_prefix.image_comment_temp (
imgcomment_name VARCHAR2(255) NOT NULL,
@@ -515,7 +551,8 @@ CREATE TABLE &mw_prefix.oldimage (
oi_description VARCHAR2(255),
oi_description_id NUMBER DEFAULT 0 NOT NULL,
oi_user NUMBER DEFAULT 0 NOT NULL,
- oi_user_text VARCHAR2(255) NOT NULL,
+ oi_user_text VARCHAR2(255) NULL,
+ oi_actor NUMBER DEFAULT 0 NOT NULL,
oi_timestamp TIMESTAMP(6) WITH TIME ZONE NOT NULL,
oi_metadata CLOB,
oi_media_type VARCHAR2(32) DEFAULT NULL,
@@ -528,6 +565,7 @@ ALTER TABLE &mw_prefix.oldimage ADD CONSTRAINT &mw_prefix.oldimage_fk1 FOREIGN K
ALTER TABLE &mw_prefix.oldimage ADD CONSTRAINT &mw_prefix.oldimage_fk2 FOREIGN KEY (oi_user) REFERENCES &mw_prefix.mwuser(user_id) ON DELETE SET NULL DEFERRABLE INITIALLY DEFERRED;
ALTER TABLE &mw_prefix.oldimage ADD CONSTRAINT &mw_prefix.oldimage_fk3 FOREIGN KEY (oi_description_id) REFERENCES &mw_prefix."COMMENT"(comment_id) ON DELETE CASCADE DEFERRABLE INITIALLY DEFERRED;
CREATE INDEX &mw_prefix.oldimage_i01 ON &mw_prefix.oldimage (oi_user_text,oi_timestamp);
+CREATE INDEX &mw_prefix.oi_actor_timestamp ON &mw_prefix.oldimage (oi_actor,oi_timestamp);
CREATE INDEX &mw_prefix.oldimage_i02 ON &mw_prefix.oldimage (oi_name,oi_timestamp);
CREATE INDEX &mw_prefix.oldimage_i03 ON &mw_prefix.oldimage (oi_name,oi_archive_name);
CREATE INDEX &mw_prefix.oldimage_i04 ON &mw_prefix.oldimage (oi_sha1);
@@ -555,7 +593,8 @@ CREATE TABLE &mw_prefix.filearchive (
fa_description VARCHAR2(255),
fa_description_id NUMBER DEFAULT 0 NOT NULL,
fa_user NUMBER DEFAULT 0 NOT NULL,
- fa_user_text VARCHAR2(255) NOT NULL,
+ fa_user_text VARCHAR2(255) NULL,
+ fa_actor NUMBER DEFAULT 0 NOT NULL,
fa_timestamp TIMESTAMP(6) WITH TIME ZONE,
fa_deleted NUMBER DEFAULT 0 NOT NULL,
fa_sha1 VARCHAR2(32)
@@ -569,6 +608,7 @@ CREATE INDEX &mw_prefix.filearchive_i01 ON &mw_prefix.filearchive (fa_name, fa_t
CREATE INDEX &mw_prefix.filearchive_i02 ON &mw_prefix.filearchive (fa_storage_group, fa_storage_key);
CREATE INDEX &mw_prefix.filearchive_i03 ON &mw_prefix.filearchive (fa_deleted_timestamp);
CREATE INDEX &mw_prefix.filearchive_i04 ON &mw_prefix.filearchive (fa_user_text,fa_timestamp);
+CREATE INDEX &mw_prefix.fa_actor_timestamp ON &mw_prefix.filearchive (fa_actor,fa_timestamp);
CREATE INDEX &mw_prefix.filearchive_i05 ON &mw_prefix.filearchive (fa_sha1);
/*$mw$*/
CREATE TRIGGER &mw_prefix.filearchive_seq_trg BEFORE INSERT ON &mw_prefix.filearchive
@@ -617,7 +657,8 @@ CREATE TABLE &mw_prefix.recentchanges (
rc_timestamp TIMESTAMP(6) WITH TIME ZONE NOT NULL,
rc_cur_time TIMESTAMP(6) WITH TIME ZONE,
rc_user NUMBER DEFAULT 0 NOT NULL,
- rc_user_text VARCHAR2(255) NOT NULL,
+ rc_user_text VARCHAR2(255) NULL,
+ rc_actor NUMBER DEFAULT 0 NOT NULL,
rc_namespace NUMBER DEFAULT 0 NOT NULL,
rc_title VARCHAR2(255) NOT NULL,
rc_comment VARCHAR2(255),
@@ -651,6 +692,8 @@ CREATE INDEX &mw_prefix.recentchanges_i04 ON &mw_prefix.recentchanges (rc_new,rc
CREATE INDEX &mw_prefix.recentchanges_i05 ON &mw_prefix.recentchanges (rc_ip);
CREATE INDEX &mw_prefix.recentchanges_i06 ON &mw_prefix.recentchanges (rc_namespace, rc_user_text);
CREATE INDEX &mw_prefix.recentchanges_i07 ON &mw_prefix.recentchanges (rc_user_text, rc_timestamp);
+CREATE INDEX &mw_prefix.rc_ns_actor ON &mw_prefix.recentchanges (rc_namespace, rc_actor);
+CREATE INDEX &mw_prefix.rc_actor ON &mw_prefix.recentchanges (rc_actor, rc_timestamp);
CREATE INDEX &mw_prefix.recentchanges_i08 ON &mw_prefix.recentchanges (rc_namespace, rc_type, rc_patrolled, rc_timestamp);
/*$mw$*/
CREATE TRIGGER &mw_prefix.recentchanges_seq_trg BEFORE INSERT ON &mw_prefix.recentchanges
@@ -721,6 +764,7 @@ CREATE TABLE &mw_prefix.logging (
log_timestamp TIMESTAMP(6) WITH TIME ZONE NOT NULL,
log_user NUMBER DEFAULT 0 NOT NULL,
log_user_text VARCHAR2(255),
+ log_actor NUMBER DEFAULT 0 NOT NULL,
log_namespace NUMBER DEFAULT 0 NOT NULL,
log_title VARCHAR2(255) NOT NULL,
log_page NUMBER,
@@ -739,6 +783,8 @@ CREATE INDEX &mw_prefix.logging_i04 ON &mw_prefix.logging (log_timestamp);
CREATE INDEX &mw_prefix.logging_i05 ON &mw_prefix.logging (log_type, log_action, log_timestamp);
CREATE INDEX &mw_prefix.logging_i06 ON &mw_prefix.logging (log_user_text, log_type, log_timestamp);
CREATE INDEX &mw_prefix.logging_i07 ON &mw_prefix.logging (log_user_text, log_timestamp);
+CREATE INDEX &mw_prefix.actor_time ON &mw_prefix.logging (log_actor, log_timestamp);
+CREATE INDEX &mw_prefix.log_actor_type_time ON &mw_prefix.logging (log_actor, log_type, log_timestamp);
/*$mw$*/
CREATE TRIGGER &mw_prefix.logging_seq_trg BEFORE INSERT ON &mw_prefix.logging
FOR EACH ROW WHEN (new.log_id IS NULL)
diff --git a/maintenance/orphans.php b/maintenance/orphans.php
index 945df32560..7acf6d8279 100644
--- a/maintenance/orphans.php
+++ b/maintenance/orphans.php
@@ -82,16 +82,18 @@ class Orphans extends Maintenance {
}
$commentQuery = $commentStore->getJoin( 'rev_comment' );
+ $actorQuery = ActorMigration::newMigration()->getJoin( 'rev_user' );
$this->output( "Checking for orphan revision table entries... "
. "(this may take a while on a large wiki)\n" );
$result = $dbw->select(
- [ 'revision', 'page' ] + $commentQuery['tables'],
- [ 'rev_id', 'rev_page', 'rev_timestamp', 'rev_user_text' ] + $commentQuery['fields'],
+ [ 'revision', 'page' ] + $commentQuery['tables'] + $actorQuery['tables'],
+ [ 'rev_id', 'rev_page', 'rev_timestamp' ] + $commentQuery['fields'] + $actorQuery['fields'],
[ 'page_id' => null ],
__METHOD__,
[],
[ 'page' => [ 'LEFT JOIN', [ 'rev_page=page_id' ] ] ] + $commentQuery['joins']
+ + $actorQuery['joins']
);
$orphans = $result->numRows();
if ( $orphans > 0 ) {
diff --git a/maintenance/populateIpChanges.php b/maintenance/populateIpChanges.php
index fbe16de541..7bb1605cc0 100644
--- a/maintenance/populateIpChanges.php
+++ b/maintenance/populateIpChanges.php
@@ -76,19 +76,31 @@ TEXT
$end = $maxRevId > 0
? $maxRevId
: $dbw->selectField( 'revision', 'MAX(rev_id)', false, __METHOD__ );
+
+ if ( empty( $end ) ) {
+ $this->output( "No revisions found, aborting.\n" );
+ return true;
+ }
+
$blockStart = $start;
$attempted = 0;
$inserted = 0;
$this->output( "Copying IP revisions to ip_changes, from rev_id $start to rev_id $end\n" );
+ $actorMigration = ActorMigration::newMigration();
+ $actorQuery = $actorMigration->getJoin( 'rev_user' );
+ $revUserIsAnon = $actorMigration->isAnon( $actorQuery['fields']['rev_user'] );
+
while ( $blockStart <= $end ) {
$blockEnd = min( $blockStart + $this->getBatchSize(), $end );
$rows = $dbr->select(
- 'revision',
- [ 'rev_id', 'rev_timestamp', 'rev_user_text' ],
- [ "rev_id BETWEEN " . (int)$blockStart . " AND " . (int)$blockEnd, 'rev_user' => 0 ],
- __METHOD__
+ [ 'revision' ] + $actorQuery['tables'],
+ [ 'rev_id', 'rev_timestamp', 'rev_user_text' => $actorQuery['fields']['rev_user_text'] ],
+ [ "rev_id BETWEEN " . (int)$blockStart . " AND " . (int)$blockEnd, $revUserIsAnon ],
+ __METHOD__,
+ [],
+ $actorQuery['joins']
);
$numRows = $rows->numRows();
diff --git a/maintenance/populateLogSearch.php b/maintenance/populateLogSearch.php
index f960753bda..332d7c5a33 100644
--- a/maintenance/populateLogSearch.php
+++ b/maintenance/populateLogSearch.php
@@ -53,6 +53,8 @@ class PopulateLogSearch extends LoggedUpdateMaintenance {
}
protected function doDBUpdates() {
+ global $wgActorTableSchemaMigrationStage;
+
$batchSize = $this->getBatchSize();
$db = $this->getDB( DB_MASTER );
if ( !$db->tableExists( 'log_search' ) ) {
@@ -81,8 +83,8 @@ class PopulateLogSearch extends LoggedUpdateMaintenance {
'logging', [ 'log_id', 'log_type', 'log_action', 'log_params' ], $cond, __FUNCTION__
);
foreach ( $res as $row ) {
- // RevisionDelete logs - revisions
if ( LogEventsList::typeAction( $row, $delTypes, 'revision' ) ) {
+ // RevisionDelete logs - revisions
$params = LogPage::extractParams( $row->log_params );
// Param format: Contents
-
-Section 1[edit]
-Section 2[edit]
-Section 2.1[edit]
-Section 3[edit]
-Section 1[edit]
-Section 2[edit]
-Section 2.1[edit]
-Section 3[edit]
-Contents
-
-Section 1
-Section 2
-Section 2.1
-Section 3
-Contents
Contents
Test document.
Test document.
Test document.
' ], 'Style deduplication' => [ - [], [], $dedupText, <<