Merge "Follow-up Ia0cc9612d: Fix unexpected leading whitespace in Skin HTML"
authorjenkins-bot <jenkins-bot@gerrit.wikimedia.org>
Mon, 28 Apr 2014 21:44:05 +0000 (21:44 +0000)
committerGerrit Code Review <gerrit@wikimedia.org>
Mon, 28 Apr 2014 21:44:05 +0000 (21:44 +0000)
59 files changed:
includes/Revision.php
includes/Title.php
includes/Wiki.php
includes/WikiPage.php
includes/api/ApiUpload.php
includes/db/DatabasePostgres.php
includes/filerepo/file/LocalFile.php
includes/installer/i18n/cs.json
includes/installer/i18n/ko.json
includes/installer/i18n/pt.json
includes/installer/i18n/zh-hant.json
includes/jobqueue/Job.php
includes/jobqueue/JobQueue.php
includes/jobqueue/JobQueueDB.php
includes/jobqueue/JobQueueFederated.php
includes/jobqueue/JobQueueGroup.php
includes/jobqueue/JobQueueRedis.php
includes/profiler/Profiler.php
includes/specials/SpecialImport.php
languages/i18n/as.json
languages/i18n/be-tarask.json
languages/i18n/ce.json
languages/i18n/ckb.json
languages/i18n/cs.json
languages/i18n/cy.json
languages/i18n/de.json
languages/i18n/diq.json
languages/i18n/egl.json
languages/i18n/gu.json
languages/i18n/hr.json
languages/i18n/kk-cyrl.json
languages/i18n/ko.json
languages/i18n/lb.json
languages/i18n/lmo.json
languages/i18n/lt.json
languages/i18n/mg.json
languages/i18n/mhr.json
languages/i18n/mn.json
languages/i18n/pa.json
languages/i18n/pl.json
languages/i18n/pms.json
languages/i18n/qqq.json
languages/i18n/sr-ec.json
languages/i18n/sr-el.json
languages/i18n/zh-hant.json
maintenance/jsduck/categories.json
maintenance/jsduck/config.json
resources/Resources.php
resources/lib/oojs-ui/i18n/sco.json
resources/lib/oojs-ui/i18n/yi.json
resources/lib/oojs-ui/i18n/zh-hant.json
resources/lib/oojs-ui/oojs-ui.js
resources/lib/oojs-ui/oojs-ui.svg.css
resources/src/jquery/jquery.client.js
resources/src/jquery/jquery.colorUtil.js
resources/src/jquery/jquery.makeCollapsible.js
resources/src/mediawiki.language/mediawiki.language.init.js
tests/phpunit/includes/TitleTest.php
tests/qunit/suites/resources/mediawiki/mediawiki.Title.test.js

index 7b30540..afbd3ac 100644 (file)
@@ -1566,9 +1566,10 @@ class Revision implements IDBAccessObject {
         * @param int $pageId: ID number of the page to read from
         * @param string $summary Revision's summary
         * @param bool $minor Whether the revision should be considered as minor
+        * @param User|null $user User object to use or null for $wgUser
         * @return Revision|null Revision or null on error
         */
-       public static function newNullRevision( $dbw, $pageId, $summary, $minor ) {
+       public static function newNullRevision( $dbw, $pageId, $summary, $minor, $user = null ) {
                global $wgContentHandlerUseDB;
 
                wfProfileIn( __METHOD__ );
@@ -1591,8 +1592,15 @@ class Revision implements IDBAccessObject {
                        __METHOD__ );
 
                if ( $current ) {
+                       if ( !$user ) {
+                               global $wgUser;
+                               $user = $wgUser;
+                       }
+
                        $row = array(
                                'page'       => $pageId,
+                               'user_text'  => $user->getName(),
+                               'user'       => $user->getId(),
                                'comment'    => $summary,
                                'minor_edit' => $minor,
                                'text_id'    => $current->rev_text_id,
index 4dc0372..70d2baa 100644 (file)
@@ -3859,7 +3859,7 @@ class Title {
                }
 
                # Save a null revision in the page's history notifying of the move
-               $nullRevision = Revision::newNullRevision( $dbw, $oldid, $comment, true );
+               $nullRevision = Revision::newNullRevision( $dbw, $oldid, $comment, true, $wgUser );
                if ( !is_object( $nullRevision ) ) {
                        throw new MWException( 'No valid null revision produced in ' . __METHOD__ );
                }
@@ -3906,6 +3906,8 @@ class Title {
                                $redirectRevision = new Revision( array(
                                        'title' => $this, // for determining the default content model
                                        'page' => $newid,
+                                       'user_text' => $wgUser->getName(),
+                                       'user' => $wgUser->getId(),
                                        'comment' => $comment,
                                        'content' => $redirectContent ) );
                                $redirectRevision->insertOn( $dbw );
index 2ef1382..aed1f65 100644 (file)
@@ -542,7 +542,7 @@ class MediaWiki {
                        $request->getProtocol() == 'http'
                ) {
                        $oldUrl = $request->getFullRequestURL();
-                       $redirUrl = str_replace( 'http://', 'https://', $oldUrl );
+                       $redirUrl = preg_replace( '#^http://#', 'https://', $oldUrl );
 
                        if ( $request->wasPosted() ) {
                                // This is weird and we'd hope it almost never happens. This
index 8e15ac9..128fd82 100644 (file)
@@ -2274,6 +2274,8 @@ class WikiPage implements Page, IDBAccessObject {
                $revision = new Revision( array(
                        'title'      => $this->getTitle(), // for determining the default content model
                        'page'       => $this->getId(),
+                       'user_text'  => $user->getName(),
+                       'user'       => $user->getId(),
                        'text'       => $serialized,
                        'length'     => $content->getSize(),
                        'comment'    => $comment,
@@ -2407,7 +2409,7 @@ class WikiPage implements Page, IDBAccessObject {
 
                        // insert null revision to identify the page protection change as edit summary
                        $latest = $this->getLatest();
-                       $nullRevision = $this->insertProtectNullRevision( $revCommentMsg, $limit, $expiry, $cascade, $reason );
+                       $nullRevision = $this->insertProtectNullRevision( $revCommentMsg, $limit, $expiry, $cascade, $reason, $user );
                        if ( $nullRevision === null ) {
                                return Status::newFatal( 'no-null-revision', $this->mTitle->getPrefixedText() );
                        }
@@ -2506,9 +2508,10 @@ class WikiPage implements Page, IDBAccessObject {
         * @param array $expiry Per restriction type expiration
         * @param int $cascade Set to false if cascading protection isn't allowed.
         * @param string $reason
+        * @param User|null $user
         * @return Revision|null Null on error
         */
-       public function insertProtectNullRevision( $revCommentMsg, array $limit, array $expiry, $cascade, $reason ) {
+       public function insertProtectNullRevision( $revCommentMsg, array $limit, array $expiry, $cascade, $reason, $user = null ) {
                global $wgContLang;
                $dbw = wfGetDB( DB_MASTER );
 
@@ -2534,7 +2537,7 @@ class WikiPage implements Page, IDBAccessObject {
                        )->inContentLanguage()->text();
                }
 
-               $nullRev = Revision::newNullRevision( $dbw, $this->getId(), $editComment, true );
+               $nullRev = Revision::newNullRevision( $dbw, $this->getId(), $editComment, true, $user );
                if ( $nullRev ) {
                        $nullRev->insertOn( $dbw );
 
index 3ef2bbe..49306d7 100644 (file)
@@ -234,7 +234,7 @@ class ApiUpload extends ApiBase {
                                        array( 'result' => 'Poll',
                                                'stage' => 'queued', 'status' => Status::newGood() )
                                );
-                               $ok = JobQueueGroup::singleton()->push( new AssembleUploadChunksJob(
+                               JobQueueGroup::singleton()->push( new AssembleUploadChunksJob(
                                        Title::makeTitle( NS_FILE, $filekey ),
                                        array(
                                                'filename' => $this->mParams['filename'],
@@ -242,13 +242,7 @@ class ApiUpload extends ApiBase {
                                                'session' => $this->getContext()->exportSession()
                                        )
                                ) );
-                               if ( $ok ) {
-                                       $result['result'] = 'Poll';
-                               } else {
-                                       UploadBase::setSessionStatus( $filekey, false );
-                                       $this->dieUsage(
-                                               "Failed to start AssembleUploadChunks.php", 'stashfailed' );
-                               }
+                               $result['result'] = 'Poll';
                        } else {
                                $status = $this->mUpload->concatenateChunks();
                                if ( !$status->isGood() ) {
@@ -625,7 +619,7 @@ class ApiUpload extends ApiBase {
                                $this->mParams['filekey'],
                                array( 'result' => 'Poll', 'stage' => 'queued', 'status' => Status::newGood() )
                        );
-                       $ok = JobQueueGroup::singleton()->push( new PublishStashedFileJob(
+                       JobQueueGroup::singleton()->push( new PublishStashedFileJob(
                                Title::makeTitle( NS_FILE, $this->mParams['filename'] ),
                                array(
                                        'filename' => $this->mParams['filename'],
@@ -636,13 +630,7 @@ class ApiUpload extends ApiBase {
                                        'session' => $this->getContext()->exportSession()
                                )
                        ) );
-                       if ( $ok ) {
-                               $result['result'] = 'Poll';
-                       } else {
-                               UploadBase::setSessionStatus( $this->mParams['filekey'], false );
-                               $this->dieUsage(
-                                       "Failed to start PublishStashedFile.php", 'publishfailed' );
-                       }
+                       $result['result'] = 'Poll';
                } else {
                        /** @var $status Status */
                        $status = $this->mUpload->performUpload( $this->mParams['comment'],
index 3433199..131b758 100644 (file)
@@ -831,7 +831,7 @@ __INDEXATTR__;
                $options = array(), $join_conds = array()
        ) {
                if ( is_array( $options ) ) {
-                       $forUpdateKey = array_search( 'FOR UPDATE', $options );
+                       $forUpdateKey = array_search( 'FOR UPDATE', $options, true );
                        if ( $forUpdateKey !== false && $join_conds ) {
                                unset( $options[$forUpdateKey] );
 
index e3b73e3..5bc7b5e 100644 (file)
@@ -1424,7 +1424,8 @@ class LocalFile extends File {
                                $dbw,
                                $descTitle->getArticleID(),
                                $editSummary,
-                               false
+                               false,
+                               $user
                        );
                        if ( !is_null( $nullRevision ) ) {
                                $nullRevision->insertOn( $dbw );
index 2307b76..d413933 100644 (file)
@@ -6,7 +6,8 @@
                        "Mormegil",
                        "아라",
                        "Matěj Grabovský",
-                       "Paxt"
+                       "Paxt",
+                       "Matěj Suchánek"
                ]
        },
        "config-desc": "Instalační program pro MediaWiki",
        "config-db-username": "Databázové uživatelské jméno:",
        "config-db-password": "Databázové heslo:",
        "config-db-password-empty": "Zadejte heslo pro nového databázového uživatele: $1.\nPřestože může jít zakládat nové uživatele i bez hesel, není to bezpečné.",
-       "config-db-username-empty": "Musíte zadat hodnotu pro „{{int:config-db-username}}“",
+       "config-db-username-empty": "Musíte zadat hodnotu pro „{{int:config-db-username}}“.",
        "config-db-install-username": "Zadejte uživatelské jméno, které se použije pro připojení k databázi v průběhu instalace.\nToto není jméno uživatelského účtu MediaWiki; toto je uživatelské jméno k vaší databázi.",
        "config-db-install-password": "Zadejte heslo, které se použije pro připojení k databázi v průběhu instalace.\nToto není heslo uživatelského účtu MediaWiki; toto je heslo k vaší databázi.",
        "config-db-install-help": "Zadejte uživatelské jméno a heslo, které se použijí pro připojení k databázi v průběhu instalace.",
        "config-header-oracle": "Nastavení Oracle",
        "config-header-mssql": "Nastavení Microsoft SQL Serveru",
        "config-invalid-db-type": "Chybný typ databáze",
-       "config-missing-db-name": "Musíte zadat hodnotu pro „{{int:config-db-name}}“",
-       "config-missing-db-host": "Musíte zadat hodnotu pro „{{int:config-db-host}}“",
-       "config-missing-db-server-oracle": "Musíte zadat hodnotu pro „{{int:config-db-host-oracle}}“",
+       "config-missing-db-name": "Musíte zadat hodnotu pro „{{int:config-db-name}}“.",
+       "config-missing-db-host": "Musíte zadat hodnotu pro „{{int:config-db-host}}“.",
+       "config-missing-db-server-oracle": "Musíte zadat hodnotu pro „{{int:config-db-host-oracle}}“.",
        "config-invalid-db-server-oracle": "Chybné databázové TNS „$1“.\nPoužívejte buď „TNS Name“ nebo „Easy Connect“ (vizte [http://docs.oracle.com/cd/E11882_01/network.112/e10836/naming.htm Oracle Naming Methods]).",
        "config-invalid-db-name": "Chybné jméno databáze „$1“.\nPoužívejte pouze ASCII písmena (a-z, A-Z), čísla (0-9), podtržítko (_) a spojovník (-).",
        "config-invalid-db-prefix": "Chybný databázový prefix „$1“.\nPoužívejte pouze ASCII písmena (a-z, A-Z), čísla (0-9), podtržítko (_) a spojovník (-).",
        "config-download-localsettings": "Stáhnout <code>LocalSettings.php</code>",
        "config-help": "nápověda",
        "config-nofile": "Soubor „$1“ nelze nalézt. Byl smazán?",
-       "config-extension-link": "Věděli jste, že vaše wiki podporuje [//www.mediawiki.org/wiki/Manual:Extensions rozšíření]?\n\nMůžete procházet [//www.mediawiki.org/wiki/Category:Extensions_by_category rozšíření po kategoriích] nebo si prohlédnout [//www.mediawiki.org/wiki/Extension_Matrix Matici rozšíření] obsahující úplný seznam.",
+       "config-extension-link": "Věděli jste, že vaše wiki podporuje [//www.mediawiki.org/wiki/Manual:Extensions rozšíření]?\n\nMůžete si prohlédnout [//www.mediawiki.org/wiki/Category:Extensions_by_category seznam rozšíření po kategoriích].",
        "mainpagetext": "'''MediaWiki byla úspěšně nainstalována.'''",
        "mainpagedocfooter": "[//meta.wikimedia.org/wiki/Help:Contents Uživatelská příručka] vám napoví, jak MediaWiki používat.\n\n== Začínáme ==\n\n* [//www.mediawiki.org/wiki/Manual:Configuration_settings Nastavení konfigurace]\n* [//www.mediawiki.org/wiki/Manual:FAQ Často kladené otázky o MediaWiki]\n* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce E-mailová konference oznámení MediaWiki]\n* [//www.mediawiki.org/wiki/Localisation#Translation_resources Překlad MediaWiki do vašeho jazyka]"
 }
index 4bb0c68..7a9bc32 100644 (file)
@@ -4,7 +4,8 @@
                        "Kwj2772",
                        "아라",
                        "Hym411",
-                       "Priviet"
+                       "Priviet",
+                       "Namoroka"
                ]
        },
        "config-desc": "미디어위키 설치 프로그램",
        "config-download-localsettings": "<code>LocalSettings.php</code> 다운로드",
        "config-help": "도움말",
        "config-nofile": "\"$1\" 파일을 찾을 수 없습니다. 이미 삭제되었나요?",
-       "config-extension-link": "당신의 위키가 [//www.mediawiki.org/wiki/Manual:Extensions 확장 기능]을 지원한다는 것을 알고 계십니까?\n\n전체 확장 기능의 목록을 확인하려면 [//www.mediawiki.org/wiki/Category:Extensions_by_category 분류별 확장 기능]이나 [//www.mediawiki.org/wiki/Extension_Matrix 확장 기능 표]를 찾아보실 수 있습니다.",
+       "config-extension-link": "당신의 위키가 [//www.mediawiki.org/wiki/Manual:Extensions 확장 기능]을 지원한다는 것을 알고 계십니까?\n\n[//www.mediawiki.org/wiki/Category:Extensions_by_category 분류 별 확장 기능]을 찾아보실 수 있습니다.",
        "mainpagetext": "'''미디어위키가 성공적으로 설치되었습니다.'''",
        "mainpagedocfooter": "[//meta.wikimedia.org/wiki/Help:Contents 이곳]에서 위키 소프트웨어에 대한 정보를 얻을 수 있습니다.\n\n== 시작하기 ==\n\n* [//www.mediawiki.org/wiki/Manual:Configuration_settings 설정하기 목록]\n* [//www.mediawiki.org/wiki/Manual:FAQ 미디어위키 FAQ]\n* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce 미디어위키 릴리스 메일링 리스트]\n* [//www.mediawiki.org/wiki/Localisation#Translation_resources 내 언어로 미디어위키 지역화]"
 }
index 312343e..cfe4b8e 100644 (file)
        "config-download-localsettings": "Download do <code>LocalSettings.php</code>",
        "config-help": "ajuda",
        "config-nofile": "Não foi possível encontrar o ficheiro \"$1\". Terá sido apagado?",
-       "config-extension-link": "Sabia que a sua wiki suporta [//www.mediawiki.org/wiki/Manual:Extensions extensões]?\n\nPode navegar as [//www.mediawiki.org/wiki/Category:Extensions_by_category extensões por categoria] ou a [//www.mediawiki.org/wiki/Extension_Matrix Matriz de Extensões] para ver a lista completa.",
+       "config-extension-link": "Sabia que a sua wiki suporta [//www.mediawiki.org/wiki/Manual:Extensions extensões]?\n\nPode procurar [//www.mediawiki.org/wiki/Category:Extensions_by_category extensões por categoria].",
        "mainpagetext": "'''MediaWiki instalado com sucesso.'''",
        "mainpagedocfooter": "Consulte o [//meta.wikimedia.org/wiki/Help:Contents Guia de Utilizadores] para informações sobre o uso do software wiki.\n\n== Onde começar ==\n\n* [//www.mediawiki.org/wiki/Manual:Configuration_settings Lista de opções de configuração]\n* [//www.mediawiki.org/wiki/Manual:FAQ Perguntas e respostas frequentes sobre o MediaWiki]\n* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Subscreva a lista de divulgação de novas versões do MediaWiki]\n* [//www.mediawiki.org/wiki/Localisation#Translation_resources Regionalize MediaWiki para seu idioma]"
 }
index 5891ddc..ae3e9f8 100644 (file)
@@ -50,8 +50,8 @@
        "config-help-restart": "是否要清除所有已輸入且儲存的資料,並重新開始安裝程序嗎?",
        "config-restart": "是的,重新開始",
        "config-welcome": "=== 環境檢查 ===\n現在會做基本的檢查,檢查環境是否符合 MediaWiki 安裝所需。\n若您要尋求如何完成安裝的協助,請記得提供以下訊息。",
-       "config-copyright": "=== 版權聲明與授權條款 ===\n\n$1\n\n本程式為自由軟體;您可依據自由軟體基金會所發表的 GNU 通用公共授權條款規定,將本程式重新發佈與/或修改;無論您依據的是本授權條款的第二版或 (您可自行選擇) 之後的任何版本。\n\n本程式發佈的目的是希望可以提供幫助,但 <strong>不負任何擔保責任</strong>;亦無隱含對<strong>適售性</strong> 或 <strong>特定用途的適用性</strong> 的情形擔保。詳情請參照GNU 通用公共授權。\n\n您應已隨本程式收到 <doclink href=\"Copying\">GNU 通用公共授權條款</doclink>;如果沒有,請信件通知自由軟體基金會,51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA,或 [http://www.gnu.org/copyleft/gpl.html 線上閱讀]。",
-       "config-sidebar": "* [www.mediawiki.org/wiki/MediaWiki/zh-hant MediaWiki 首頁]\n* [www.mediawiki.org/wiki/Help:Contents/zh 使用者指南]\n* [//www.mediawiki.org/wiki/Manual:Contents/zh 管理者指南]\n* [//www.mediawiki.org/wiki/Manual:FAQ/zh-hant 常見問題]\n----\n* <doclink href=Readme>讀我說明</doclink>\n* <doclink href=ReleaseNotes>發行說明</doclink>\n* <doclink href=Copying>協議副本</doclink>\n* <doclink href=UpgradeDoc>升級</doclink>",
+       "config-copyright": "=== 版權聲明與授權條款 ===\n\n$1\n\n本程式為自由軟體;您可依據自由軟體基金會所發表的 GNU 通用公共授權條款規定,將本程式重新發佈與/或修改;無論您依據的是本授權條款的第二版或 (您可自行選擇) 之後的任何版本。\n\n本程式發佈的目的是希望可以提供幫助,但 <strong>不負任何擔保責任</strong>;亦無隱含對 <strong>適售性</strong> 或 <strong>特定用途的適用性</strong> 的情形擔保。詳情請參照GNU 通用公共授權。\n\n您應已隨本程式收到 <doclink href=\"Copying\">GNU 通用公共授權條款</doclink>;如果沒有,請信件通知自由軟體基金會,51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA,或 [http://www.gnu.org/copyleft/gpl.html 線上閱讀]。",
+       "config-sidebar": "* [www.mediawiki.org/wiki/MediaWiki/zh-hant MediaWiki 首頁]\n* [www.mediawiki.org/wiki/Help:Contents/zh 使用者指南]\n* [//www.mediawiki.org/wiki/Manual:Contents/zh 管理者指南]\n* [//www.mediawiki.org/wiki/Manual:FAQ/zh-hant 常見問題集]\n----\n* <doclink href=Readme>讀我說明</doclink>\n* <doclink href=ReleaseNotes>發行說明</doclink>\n* <doclink href=Copying>版權聲明</doclink>\n* <doclink href=UpgradeDoc>升級</doclink>",
        "config-env-good": "環境檢查已完成。\n您可以安裝 MediaWiki。",
        "config-env-bad": "環境檢查已完成。\n您無法安裝 MediaWiki。",
        "config-env-php": "PHP $1 已安裝。",
@@ -78,7 +78,7 @@
        "config-xcache": "[http://xcache.lighttpd.net/ XCache] 已安裝",
        "config-apc": "[http://www.php.net/apc APC] 已安裝",
        "config-wincache": "[http://www.iis.net/download/WinCacheForPhp WinCache] 已安裝",
-       "config-no-cache": "<strong>警告:</strong> 找不到 [http://www.php.net/apc APC]、[http://xcache.lighttpd.net/ XCache] 或[http://www.iis.net/download/WinCacheForPhp WinCache]。\n無法開啟物件快取功能。",
+       "config-no-cache": "<strong>警告:</strong> 找不到 [http://www.php.net/apc APC]、[http://xcache.lighttpd.net/ XCache] 或 [http://www.iis.net/download/WinCacheForPhp WinCache]。\n無法開啟物件快取功能。",
        "config-mod-security": "<strong>警告:</strong>您的網頁伺服器已開啟 [http://modsecurity.org/ mod_security] 模組,如果設定不恰當會導致使用者可在 MediaWiki 或其他應用程式發佈任意的內容。\n若您遇到任何問題,請參考 [http://modsecurity.org/documentation/ mod_security 文件] 或聯繫您的伺服器技術支援人員。",
        "config-diff3-bad": "找不到 GNU diff3。",
        "config-git": "找到 Git 版本控制軟體:<code>$1</code>。",
        "config-db-prefix": "資料庫資料表名稱的字首:",
        "config-db-prefix-help": "如果您需要讓多個 Wiki 共用同一個資料庫,或者與其他網頁應用程式共用一個資料庫,您也許會需要在所有資料表的名稱前面加上字首,可以避免資料表名稱的衝突。\n請勿使用空格。\n\n此欄位可不填。",
        "config-db-charset": "資料庫字元集",
-       "config-charset-mysql5-binary": "MySQL 4.1/5.0 的二進制型態",
-       "config-charset-mysql5": "MySQL 4.1/5.0 的 UTF-8",
-       "config-charset-mysql4": "å\8f¯å\90\91ä¸\8bç\9b¸å®¹ MySQL 4.0 ç\9a\84 UTF-8",
-       "config-charset-help": "<strong>警告:</strong>如果您在 MySQL 4.1+ 使用了<strong>可向下相容的 UTF-8</strong>,並且透過 <code>mysqldump</code> 指令備份資料庫,可能會破壞所有非 ASCII 字元集的文字,這會導致不可還原的資料破壞!\n\n在 <strong>二進制模式</strong> 下,MediaWiki 將 UTF-8 的文字儲存在二進位型態的欄位。\n這個模式比 MySQL 的 UTF-8 模式還要更有效,並且可以讓您使用完整的 Unicode 字元集。\n在 <storng>UTF-8 模式</strong> 下,MySQL 可以知道您的資料使用何種編碼儲存,您可以正常的取得與轉換內容,但這個模式並不支援  [//en.wikipedia.org/wiki/Mapping_of_Unicode_character_planes Basic Multilingual Plane] 文件上的所有字元。",
+       "config-charset-mysql5-binary": "MySQL 4.1/5.0 可用的二進制",
+       "config-charset-mysql5": "MySQL 4.1/5.0 可用的 UTF-8",
+       "config-charset-mysql4": "向下相容 MySQL 4.0 的 UTF-8",
+       "config-charset-help": "<strong>警告:</strong>如果您在 MySQL 4.1+ 使用了<strong>可向下相容的 UTF-8</strong>,並且透過 <code>mysqldump</code> 指令備份資料庫,可能會破壞所有非 ASCII 字元集的文字,這會導致不可還原的資料破壞!\n\n在 <strong>二進制模式</strong> 下,MediaWiki 將 UTF-8 的文字儲存在二進位型態的欄位。\n這個模式比 MySQL 的 UTF-8 模式還要更有效,並且可以讓您使用完整的 Unicode 字元集。\n在 <storng>UTF-8 模式</strong> 下,MySQL 可以知道您的資料使用何種編碼儲存,您可以正常的取得與轉換內容,但此個模式只支援到 Unicode 中的  [//en.wikipedia.org/wiki/Mapping_of_Unicode_character_planes 基本多文種平面] 字元。",
        "config-mysql-old": "需要使用 MySQL $1 或更新的版本,您的版本為 $2。",
        "config-db-port": "資料庫埠號:",
        "config-db-schema": "MediaWiki 的 Schema:",
        "config-db-web-account-same": "使用與安裝程序相同的帳號",
        "config-db-web-create": "如果帳號不存在則建立新帳號",
        "config-db-web-no-create-privs": "您指定給安裝程序使用的帳號沒有足夠的權限建立新帳號。\n在此處必須指定已經存在的帳號。",
-       "config-mysql-engine": "å­\98å\84²引擎:",
+       "config-mysql-engine": "å\84²å­\98引擎:",
        "config-mysql-innodb": "InnoDB",
        "config-mysql-myisam": "MyISAM",
        "config-mysql-myisam-dep": "<strong>警告:</strong>您選擇用來做為 MySQL 的儲存引撆 MyISAM 並不建議使用在 MediaWiki,主要原因為:\n* MyISAM 使用的資料表鎖定較無法承受多人同時連線\n* 比起其他儲存引擎相,它較容易損壞\n* MediaWiki 程式碼並沒有針對 MyISAM 做特別的處理\n\n若您安裝的 MySQL 支援 InnoDB,我們強烈建議您改用 InnoDB。\n若您安裝的 MySQL 不支援 InnoDB,則應考慮升級 MySQL。",
        "config-mysql-charset": "資料庫字元集:",
        "config-mysql-binary": "二進制",
        "config-mysql-utf8": "UTF-8",
-       "config-mysql-charset-help": "在 <strong>二進制模式</strong> 下,MediaWiki 將 UTF-8 的文字儲存在二進位型態的欄位。\n這個模式比 MySQL 的 UTF-8 模式還要更有效,並且可以讓您使用完整的 Unicode 字元集。\n\n在 <storng>UTF-8 模式</strong> 下,MySQL 可以知道您的資料使用何種編碼儲存,您可以正常的取得與轉換內容,但這個模式並不支援  [//en.wikipedia.org/wiki/Mapping_of_Unicode_character_planes Basic Multilingual Plane] 文件上的所有字元。",
+       "config-mysql-charset-help": "在 <strong>二進制模式</strong> 下,MediaWiki 將 UTF-8 的文字儲存在二進位型態的欄位。\n這個模式比 MySQL 的 UTF-8 模式還要更有效,並且可以讓您使用完整的 Unicode 字元集。\n\n在 <storng>UTF-8 模式</strong> 下,MySQL 可以知道您的資料使用何種編碼儲存,您可以正常的取得與轉換內容,但此個模式只支援到 Unicode 中的  [//en.wikipedia.org/wiki/Mapping_of_Unicode_character_planes 基本多文種平面] 字元。",
        "config-mssql-auth": "身份驗證類型:",
+       "config-mssql-install-auth": "請選擇安裝程序中要用來連線資料庫使用的身份驗證類型。\n若您選擇 \"{{int:config-mssql-windowsauth}}\",不論網頁伺服器是使用何種身份執行都會使用這組驗證資料。",
+       "config-mssql-web-auth": "請選擇一般操作中要用來連線資料庫使用的身份驗證類型。\n若您選擇 \"{{int:config-mssql-windowsauth}}\",不論網頁伺服器是使用何種身份執行都會使用這組驗證資料。",
        "config-mssql-sqlauth": "SQL Server 身份驗證",
        "config-mssql-windowsauth": "Windows 身份驗證",
        "config-site-name": "Wiki 的名稱:",
        "config-ns-site-name": "同 Wiki 名稱:$1",
        "config-ns-other": "其他 (請註明)",
        "config-ns-other-default": "我的 Wiki",
-       "config-project-namespace-help": "依循維基百科形成的慣例,許多wiki將他們的方針頁面存放在與內容頁面不同的“'''項目名字空間'''”中。所有位於該名字空間下的頁面標題都會被冠以固定的前綴,您可以在此處指定這一前綴。傳統上,這一前綴應與wiki的命名保持一致,但請勿在其中使用標點符號,如“#”或“:”。",
-       "config-ns-invalid": "æ\8c\87å®\9aç\9a\84å\90\8då­\97空é\96\93â\80\9c<nowiki>$1</nowiki>â\80\9dç\84¡æ\95\88ï¼\8cè«\8bç\82ºé \85ç\9b®å\90\8då­\97空é\96\93æ\8c\87å®\9aå\85¶ä»\96å\90\8d稱。",
-       "config-ns-conflict": "æ\8c\87å®\9aç\9a\84å\90\8då­\97空é\96\93â\80\9c<nowiki>$1</nowiki>â\80\9dè\88\87é»\98èª\8dç\9a\84MediaWikiå\90\8då­\97空é\96\93è¡\9dçª\81ã\80\82è«\8bæ\8c\87å®\9aä¸\80å\80\8bä¸\8då\90\8cç\9a\84é \85ç\9b®å\90\8då­\97空間。",
+       "config-project-namespace-help": "許多 Wiki 以維基百科(Wikipedia)做為範例將政策頁面從內容頁面抽離,放置在 \"'''專案命名空間'''\" 中。\n所有在此命名空間裡的頁面都會有特定的字首,您可以在此處設定。\n通常這些字首是由該 Wiki 的名稱所衍伸出來,但無法使用標點符號,如 \"#\" 或 \":\"。",
+       "config-ns-invalid": "æ\82¨æ\8c\87å®\9aç\9a\84å\91½å\90\8d空é\96\93 \"<nowiki>$1</nowiki>\" ç\84¡æ\95\88ï¼\8c\nè«\8bæ\8c\87å®\9aå\8f¦ä¸\80å\80\8bå°\88æ¡\88å\91½å\90\8d空é\96\93。",
+       "config-ns-conflict": "æ\82¨æ\8c\87å®\9aç\9a\84å\91½å\90\8d空é\96\93 \"<nowiki>$1</nowiki>\" è\88\87 MediaWiki é \90設ç\9a\84å\91½å\90\8d空é\96\93è¡\9dçª\81ã\80\82\nè«\8bæ\8c\87å®\9aå\8f¦ä¸\80å\80\8bå°\88æ¡\88å\91½å\90\8d空間。",
        "config-admin-box": "管理員帳號",
        "config-admin-name": "您的使用者名稱:",
        "config-admin-password": "密碼:",
        "config-profile-no-anon": "需要註冊帳號",
        "config-profile-fishbowl": "僅授權的編輯者",
        "config-profile-private": "封閉式 Wiki",
-       "config-profile-help": "如果您允許盡量多的人編寫維基,網站上的內容會更加豐富。在MediaWiki中,您可以輕鬆地審查最近更改,並輕易回退掉新手或破壞者造成的損害。\n\n然而,許多人覺得讓MediaWiki存在多種角色將更加好用;同時,要說服所有人都願以維基方式作貢獻並非一件易事。因此,您有以下選擇:\n\n'''{{int:config-profile-wiki}}'''允許包括未登錄用戶在內的所有人編輯。'''{{int:config-profile-no-anon}}'''的維基需要額外的註冊流程,這有可能會阻礙隨意貢獻者。\n\n'''{{int:config-profile-fishbowl}}'''模式只允許獲批准的用戶編輯,但對公眾開放頁面瀏覽(包括歷史記錄)。'''{{int:config-profile-private}}'''則只允許獲批准的用戶瀏覽、編輯頁面。\n\n安裝完成後,您還可以對用戶權限進行更多、更複雜的配置,參見[//www.mediawiki.org/wiki/Manual:User_rights 相關的使用手冊]。",
+       "config-profile-help": "Wiki 最佳的運作方式是盡可能讓大家都可以編輯文件。\n在 MediaWiki,可以很輕易的審查最近做的所有變更動作,並且可以還原由新手或惡意使用者造成的損害。\n\n不論如何,很多人發現 MediaWiki 可以廣泛的運用在各種地方,但並不是很容易可以說服每個人都遵守對 Wiki 有益的方式。\n所以您必須做出以下選擇。\n\n使用 <strong>{{int:config-profile-wiki}}</strong> 模式,允許所有人編輯文章,包含未匿名使用者。\n使用 <strong>{{int:config-profile-no-anon}}</strong> 模式,允許所有人編輯文章,不包含未登入的使用者。此模式較能管理所有使用者的言論,但會扼殺臨時使用者的貢獻機會。\n\n使用 <strong>{{int:config-profile-fishbowl}}</strong> 模式,僅經核准的使用者可以編輯,所有人可以檢視頁面,包含修訂的記錄。\n使用 <strong>{{int:config-profile-private}}</strong> 模式,僅經核准的使用者可以編輯、檢視頁面。\n\n有關更多複雜的使用者權限設定可在安裝程序結束後設定,請參考 [//www.mediawiki.org/wiki/Manual:User_rights 相關文件說明]。",
        "config-license": "版權聲明與授權條款:",
        "config-license-none": "無授權條款頁腳",
        "config-license-cc-by-sa": "創作共用 Attribution-ShareAlike",
        "config-license-gfdl": "GNU 自由文件授權條款 1.3 或更高版本",
        "config-license-pd": "公共領域",
        "config-license-cc-choose": "請選擇一個自訂的創作共用授權條款",
-       "config-license-help": "許多開放式 Wiki 會以 [http://freedomdefined.org/Definition 自由授權條款] 的方式釋放出編者的所有貢獻,這有助於構建社群的所有權,並且能鼓勵長期貢獻。對於封閉式的 Wiki 或公司 Wiki,則是非必要的。\n\n如果您希望使用來自維基百科̽(Wikipedia)的內容,並希望維基百科能接受您的 Wiki 內容,請應選擇 <strong>創作共用 Attribution Share Alike</strong> 授權條款。\n\n維基百科̽(Wikipedia)先前是使用 GNU 自由文件授權條款,\n但該授權條款的內容較難理解,因此較難再利用在該條款底下的內容。",
+       "config-license-help": "許多開放式 Wiki 會以 [http://freedomdefined.org/Definition 自由授權條款] 的方式釋放出編者的所有貢獻,這有助於構建社群的所有權,並且能鼓勵長期貢獻。對於封閉式的 Wiki 或公司 Wiki,則是非必要的。\n\n如果您希望使用來自維基百科(Wikipedia)的內容,並希望維基百科能接受您的 Wiki 內容,請應選擇 <strong>創作共用 Attribution Share Alike</strong> 授權條款。\n\n維基百科̽(Wikipedia)先前是使用 GNU 自由文件授權條款,\n但該授權條款的內容較難理解,因此較難再利用在該條款底下的內容。",
        "config-email-settings": "E-mail 設定",
        "config-enable-email": "開啟外寄電子郵件",
        "config-enable-email-help": "如果您要使用電子郵件功能,請正確設定 [http://www.php.net/manual/en/mail.configuration.php PHP 的郵件設定]。\n如果您不需要使用電子郵件功能,請在此處關閉。",
        "config-email-watchlist": "開啟監視列表通知",
        "config-email-watchlist-help": "若使用者在個人偏好開啟了此功能,允許使用者收到與其監視列表有關的通知。",
        "config-email-auth": "開啟電子郵件身份認證",
-       "config-email-auth-help": "如果啟用此選項,在用戶設置或修改電子郵件地址時,就會收到一封郵件,內含確認電子地址的鏈接。只有經過身份驗證的電子郵件地址,才能收到來自其他用戶的電子郵件,或任何修改通知的郵件。'''建議'''公開wiki啟用本選項,以防對電子郵件功能的濫用。",
-       "config-email-sender": "返回電子郵件地址:",
-       "config-email-sender-help": "輸å\85¥è¦\81ç\94¨ä¾\86ç\99¼é\80\81å\87ºç«\99é\9b»å­\90é\83µä»¶ç\9a\84å\9c°å\9d\80ï¼\8c該å\9c°å\9d\80å°\87æ\9c\83æ\94¶å\88°è¢«æ\8b\92æ\94¶ç\9a\84é\83µä»¶ã\80\82許å¤\9aé\83µä»¶æ\9c\8då\8b\99å\99¨è¦\81æ±\82å\9f\9få\90\8dé\83¨å\88\86å¿\85é \88æ\9c\89æ\95\88。",
+       "config-email-auth-help": "若開啟此選項,使用者不論設定或者更改電子郵件地址,都必須透過收信的方式確認沒有問題。\n只有驗證過的電子郵件地址可以收到來自其他使用者或修改通知的信件。\n公開的 Wiki 會 <strong>建議</strong> 設定此選項,以防使用者濫用電子郵件功能。",
+       "config-email-sender": "電子郵件回覆地址:",
+       "config-email-sender-help": "è«\8b輸å\85¥è¦\81ç\94¨ä¾\86å\81\9aç\82ºå¤\96å¯\84é\83µä»¶ç\9a\84é\9b»å­\90é\83µä»¶å\9b\9eè¦\86å\9c°å\9d\80ã\80\82\n該é\83µä»¶å\9c°å\9d\80æ\9c\83æ\94¶å\88°è¢«æ\8b\92æ\94¶ç\9a\84信件ã\80\82\n許å¤\9aé\83µä»¶ä¼ºæ\9c\8då\99¨æ\9c\83è¦\81æ±\82使ç\94¨æ\9c\89æ\95\88ç\9a\84網å\9f\9få\90\8d稱。",
        "config-upload-settings": "圖片和檔案上傳",
-       "config-upload-enable": "啟用檔案上傳",
-       "config-upload-help": "æ\96\87件ä¸\8aå\82³å\8f¯è\83½æ\9c\83å°\87æ\82¨ç\9a\84æ\9c\8då\8b\99å\99¨æ\9a´é\9c²å\9c¨å®\89å\85¨é¢¨é\9aªä¸\8bã\80\82æ\9c\89é\97\9cæ\9b´å¤\9aç\9a\84ä¿¡æ\81¯ï¼\8cè«\8bå\8f\83é\96±æ\89\8bå\86\8aç\9a\84[//www.mediawiki.org/wiki/Manual:Security å®\89å\85¨é\83¨å\88\86\80\82\n\nè¦\81å\95\9fç\94¨æ\96\87件ä¸\8aå\82³ï¼\8cè«\8bå\85\88å°\87MediaWikiæ ¹ç\9b®é\8c\84ä¸\8bç\9a\84<code>images</code>å­\90ç\9b®é\8c\84æ\9b´æ\94¹ç\82ºå°\8dwebæ\9c\8då\8b\99å\99¨å\8f¯å¯«ï¼\8cç\84¶å¾\8cå\86\8då\95\9fç\94¨æ­¤選項。",
-       "config-upload-deleted": "å·²å\88ªé\99¤æ\96\87件的目錄:",
-       "config-upload-deleted-help": "指定用於存放被刪除文件的目錄。理想情況下,該目錄不應能通過web訪問。",
-       "config-logo": "標誌URL:",
-       "config-logo-help": "在MediaWiki的默認外觀中,左側欄菜單之上有一塊135x160像素的標誌區。請上傳一幅相應大小的圖像,並在此輸入URL。\n\n你可以用<code>$wgStylePath</code>或<code>$wgScriptPath</code>來表示相對於這些位置的路徑。\n\n如果您不希望使用標誌,請將本處留空。",
-       "config-instantcommons": "啟用即時共享資源",
-       "config-instantcommons-help": "[//www.mediawiki.org/wiki/InstantCommons 即時共享資源]可以讓wiki使用來自[//commons.wikimedia.org/ 維基共享資源]網站的圖像、音頻和其他媒體文件。要啟用該功能,MediaWiki必須能夠訪問互聯網。\n\n有關此功能的詳細信息,包括如何將其他wiki網站設為具有類似共享功能的方法,請參考[//mediawiki.org/wiki/Manual:$wgForeignFileRepos 手冊]。",
-       "config-cc-error": "知識共享許可證挑選器無法找到結果,請手動輸入許可證的名稱。",
-       "config-cc-again": "重新選取......",
-       "config-cc-not-chosen": "選擇您希望使用的知識共享許可證,並點擊“繼續”。",
+       "config-upload-enable": "開啟檔案上傳",
+       "config-upload-help": "æª\94æ¡\88ä¸\8aå\82³å\8a\9fè\83½æ\9c\83è®\93æ\82¨ç\9a\84伺æ\9c\8då\99¨æ\9a´é\9c²å\9c¨æ½\9bè\97\8fç\9a\84å®\89å\85¨æ\80§é¢¨é\9aªä¹\8bä¸\8bã\80\82\nè¦\81å\8f\96å¾\97æ\9b´å¤\9aç\9b¸é\97\9cç\9a\84è³\87è¨\8aï¼\8cè«\8bå\8f\83è\80\83 [//www.mediawiki.org/wiki/Manual:Security å®\89å\85¨æ\80§ç« ç¯\80\80\82\n\nè¦\81é\96\8bå\95\9fæª\94æ¡\88ä¸\8aå\82³é\9c\80è¦\81å°\87 MediaWiki æ ¹ç\9b®é\8c\84åº\95ä¸\8bç\9a\84 <code>images</code> ç\9b®é\8c\84é\96\8bå\95\9f網é \81伺æ\9c\8då\99¨ç\9a\84寫å\85¥æ¬\8aï¼\8c\nç\84¶å¾\8cå\86\8då\95\9få\8b\95選項。",
+       "config-upload-deleted": "å·²å\88ªé\99¤æª\94æ¡\88的目錄:",
+       "config-upload-deleted-help": "請選擇用來存放已刪除檔案的目錄。\n理想情況下,此目錄不可被網頁直接存取。",
+       "config-logo": "標誌 URL 位置:",
+       "config-logo-help": "在 MediaWiki 的預設介面,側欄選單上方有一塊 135x160 像素用來放置標誌的區域。\n請上傳合適大小的圖片並在此輸入 URL 網址。\n\n您可以透過 <code>$wgStylePath</code> 或者 <code>$wgScriptPath</code> 來表示您的圖片與這些路徑的相對位置。\n\n如果您不想使用標誌,可略過此欄位。",
+       "config-instantcommons": "開啟即時共享資源",
+       "config-instantcommons-help": "[//www.mediawiki.org/wiki/InstantCommons 即時共享資源] 是允許 Wiki 使用來自 [//commons.wikimedia.org/ Wikimedia Commons] 網站上的圖片、聲音以及其他媒體的一項功能。\n若要開啟此功能,您的 MediaWiki 必須能夠連線網際網路。\n更多有關此功能的訊息,包含如何存除了 Wikimedia Commons 之外其他網站的說明,請參考 \n[//mediawiki.org/wiki/Manual:$wgForeignFileRepos 操作手冊]。",
+       "config-cc-error": "查無該創作共用授權條款,\n請手動輸入您的授權條款名稱。",
+       "config-cc-again": "請重新選取...",
+       "config-cc-not-chosen": "請選擇您要使用的創作共享授權條款,然後點選 \"繼續\"。",
        "config-advanced-settings": "進階設定",
-       "config-cache-options": "對象緩存設置:",
-       "config-cache-help": "對象緩存可通過緩存頻繁使用的數據來提高MediaWiki的速度。高度推薦中到大型的網站啟用該功能,小型網站亦能從其中受益。",
-       "config-cache-none": "無緩存(不影響功能,但對較大型的wiki網站會有速度影響)",
-       "config-cache-accel": "PHP對象緩存(APC、XCache或WinCache)",
-       "config-cache-memcached": "使用Memcached(需要另外安裝並配置)",
-       "config-memcached-servers": "Memcached服務器:",
-       "config-memcached-help": "用於Memcached的IP地址列表。請保持每行一條,並指定要使用的端口。例如:\n127.0.0.1:11211\n192.168.1.25:1234",
-       "config-memcache-needservers": "您選擇了Memcached作為您的緩存,但並未指定任何服務器。",
-       "config-memcache-badip": "您為Memcached輸入了無效的IP地址:$1。",
-       "config-memcache-noport": "您沒有指定Memcached服務器的端口:$1。如果您不清楚端口是多少,默認值為11211。",
-       "config-memcache-badport": "Memcached的端口號應該在$1到$2之間。",
+       "config-cache-options": "物件快取設定:",
+       "config-cache-help": "物件快取是用來增進 MediaWiki 速度的一項功能,透過快取經常使用的資料。\n中型到大型的網站我們會建議開啟這個選項,對小型的網站也有一定程度的效果。",
+       "config-cache-none": "不快取 (不會影響功能,但在大型 Wiki 網站可能會有處理速度的問題)",
+       "config-cache-accel": "使用 PHP 物件快取 (APC、XCache 或 WinCache)",
+       "config-cache-memcached": "使用 Memcached (需要額外安裝與設定)",
+       "config-memcached-servers": "Memcached 伺服器:",
+       "config-memcached-help": "請列出 Memcached 伺服器的 IP 位址。\n每一行只指定一個位置並且要註明使用的埠號,例如:\n 127.0.0.1:11211\n 192.168.1.25:1234",
+       "config-memcache-needservers": "您的快取類型選擇使用 Memcached,但並未設定任何的伺服器。",
+       "config-memcache-badip": "您輸入了一筆無效的 Memcached IP 位置:$1。",
+       "config-memcache-noport": "您沒有輸入 Memcached 伺服器的埠號:$1。\n如果您不曉得埠號為多少,預設為 11211。",
+       "config-memcache-badport": "Memcached 埠號應介於 $1 到 $2 之間。",
        "config-extensions": "擴充套件",
-       "config-extensions-help": "已在您的<code>./extensions</code>目錄中發現下列擴展。\n\n您可能要對它們進行額外的配置,但您現在可以啟用它們。",
-       "config-install-alreadydone": "'''警告:'''您似乎已經安裝了MediaWiki,並試圖重新安裝它。請前往下一個頁面。",
-       "config-install-begin": "點擊「{{int:config-continue}}」後,您將開始安裝MediaWiki。如果您還想對配置作一些修改,請點擊「{{int:config-back}}」。",
+       "config-extensions-help": "已在您的 <code>./extensions</code> 目錄中發現下列擴充套件。\n\n這些擴充套件可能需要做額外的設定,但您可以現在先開啟功能。",
+       "config-install-alreadydone": "<strong>警告:</strong>您已經安裝 MediaWiki,並且試圖重新安裝。\n請點繼續前往下一個頁面。",
+       "config-install-begin": "請點選 \"{{int:config-continue}}\" 開始安裝 MediaWiki。\n若您還想要修改設定,請點選 \"{{int:config-back}}\"。",
        "config-install-step-done": "完成",
        "config-install-step-failed": "失敗",
-       "config-install-extensions": "正在使用擴充套件",
+       "config-install-extensions": "正在開啟擴充套件",
        "config-install-database": "正在設定資料庫",
        "config-install-schema": "建立 Schema",
-       "config-install-pg-schema-not-exist": "PostgreSQL 架構不存在",
-       "config-install-pg-schema-failed": "創建數據表失敗。請確保用戶“$1”擁有寫入模式“$2”的權限。",
+       "config-install-pg-schema-not-exist": "PostgreSQL Schema 不存在",
+       "config-install-pg-schema-failed": "資料表建立失敗。\n請確認使用者 \"$1\" 可以寫入 Schema \"$2\"。",
        "config-install-pg-commit": "提交更改",
-       "config-install-pg-plpgsql": "正在檢查PL/pgSQL語言",
+       "config-install-pg-plpgsql": "正在檢查 PL/pgSQL 語言",
        "config-pg-no-plpgsql": "您需要安裝 PL/pgSQL 到資料庫 $1",
-       "config-pg-no-create-privs": "為安裝程序指定的帳號缺少創建帳號的權限。",
-       "config-pg-not-in-role": "æ\82¨æ\8c\87å®\9aç\82ºwebç\94¨æ\88¶ç\9a\84帳æ\88¶å·²ç¶\93å­\98å\9c¨ã\80\82\næ\82¨çµ¦æ\9c¬ç¨\8båº\8fæ\8c\87å®\9aç\9a\84帳æ\88¶ä¸\8dæ\98¯è¶\85ç´\9aç\94¨æ\88¶ï¼\8cä¹\9fä¸\8dæ\98¯webç\94¨æ\88¶è§\92è\89²ç\9a\84æ\88\90å\93¡ï¼\8cæ\89\80以å®\83ä¸\8dè\83½å\89µå»ºwebç\94¨æ\88¶æ\89\80æ\93\81æ\9c\89ç\9a\84å°\8d象ã\80\82\n\nMediaWikiç\95¶å\89\8dé\9c\80è¦\81使ç\94¨ç\94±webç\94¨æ\88¶æ\89\80æ\9c\89ç\9a\84表ã\80\82è«\8bæ\8c\87å®\9aå\8f¦ä¸\80å\80\8bweb帳æ\88¶å\90\8d稱ï¼\8cæ\88\96é»\9eæ\93\8aâ\80\9cå¾\8cé\80\80â\80\9d並æ\8c\87å®\9aå\85·æ\9c\89é\81©ç\95¶æ¬\8aé\99\90ç\9a\84å®\89è£\9dç\94¨æ\88。",
+       "config-pg-no-create-privs": "您所指定用來給安裝程序使用的帳號沒有足夠的權限可以建立新帳號。",
+       "config-pg-not-in-role": "æ\82¨æ\8c\87å®\9aç\94¨ä¾\86給網é \81å­\98å\8f\96ç\9a\84帳è\99\9få·²å­\98å\9c¨ã\80\82\næ\82¨æ\8c\87å®\9aç\94¨ä¾\86給å®\89è£\9dç¨\8båº\8f使ç\94¨ç\9a\84ç\9a\84帳è\99\9fæ\97¢ä¸\8dæ\98¯ç®¡ç\90\86è\80\85ï¼\8cä¹\9fä¸\8dæ\98¯çµ¦ç¶²é \81å­\98å\8f\96使ç\94¨è\80\85ï¼\8cå\9b æ­¤ç\84¡æ³\95使ç\94¨ç¶²é \81å­\98å\8f\96使ç\94¨è\80\85ç\9a\84æ¬\8aé\99\90建ç«\8bç\89©ä»¶ã\80\82\n\nMediaWiki ç\9b®å\89\8dé\9c\80è¦\81使ç\94¨ç\94±ç¶²é \81使ç\94¨è\80\85æ\89\80建ç«\8bç\9a\84è³\87æ\96\99表ã\80\82è«\8bæ\8c\87å®\9aå\8f¦ä¸\80å\80\8b網é \81使ç\94¨è\80\85ç\9a\84帳è\99\9få\90\8d稱ï¼\8cæ\88\96é»\9eé\81¸ \"è¿\94å\9b\9e\" æ\8c\87å®\9aå\85·æ\9c\89é\81©ç\95¶æ¬\8aé\99\90使ç\94¨è\80\85給å®\89è£\9dç¨\8båº\8f使ç\94¨。",
        "config-install-user": "正在建立資料庫使用者",
        "config-install-user-alreadyexists": "使用者 \"$1\" 已存在",
        "config-install-user-create-failed": "建立使用者 \"$1\" 失敗:$2",
        "config-install-interwiki-exists": "<strong>警告:</strong> interwiki 資料表內已有資料,略過建立預設資料。",
        "config-install-stats": "初始化統計資訊",
        "config-install-keys": "產生秘密金鑰中",
-       "config-insecure-keys": "'''警告''':在安裝過程中生成的$2個安全密鑰($1)不一定安全。請考慮手動更改之。",
+       "config-insecure-keys": "<strong>警告:</strong>在安裝過程中所產生的 $2 組安全金鑰($1)並不完全安全。請考慮手動更改。",
        "config-install-sysop": "正在建立管理員使用者帳號",
        "config-install-subscribe-fail": "無法訂閱 mediawiki-announce:$1",
        "config-install-subscribe-notpossible": "未安裝 cURL,因此無法使用 <code>allow_url_fopen</code> 設定項目。",
        "config-nofile": "查無檔案 \"$1\",是否已被刪除?",
        "config-extension-link": "您是否了解您的 Wiki 支援 [//www.mediawiki.org/wiki/Manual:Extensions 擴充套件]?\n\n\n您可以瀏覽 [//www.mediawiki.org/wiki/Category:Extensions_by_category 擴充套件分類] 或 [//www.mediawiki.org/wiki/Extension_Matrix 擴充套件資料表] 以取得相關的資訊。",
        "mainpagetext": "<strong>已成功安裝 MediaWiki。</strong>",
-       "mainpagedocfooter": "請參閱[//meta.wikimedia.org/wiki/Help:Contents 用戶手冊]以獲得使用此wiki軟體的訊息!\n\n== 入門 ==\n* [//www.mediawiki.org/wiki/Manual:Configuration_settings MediaWiki配置設定清單]\n* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki常見問題解答]\n* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki發佈郵件清單]\n* [//www.mediawiki.org/wiki/Localisation#Translation_resources MediaWiki界面本地化]"
+       "mainpagedocfooter": "請參閱 [//meta.wikimedia.org/wiki/Help:Contents 使用者手冊] 以取得使用 Wiki 的相關訊息!\n\n== 新手入門 ==\n* [//www.mediawiki.org/wiki/Manual:Configuration_settings MediaWiki 系統設定]\n* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki 常見問答集]\n* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki 發佈郵寄清單]\n* [//www.mediawiki.org/wiki/Localisation#Translation_resources MediaWiki 介面在地化]"
 }
index 3456373..4ee370e 100644 (file)
@@ -92,7 +92,8 @@ abstract class Job implements IJobSpecification {
         * @deprecated since 1.21
         */
        public static function batchInsert( $jobs ) {
-               return JobQueueGroup::singleton()->push( $jobs );
+               JobQueueGroup::singleton()->push( $jobs );
+               return true;
        }
 
        /**
@@ -107,7 +108,8 @@ abstract class Job implements IJobSpecification {
         * @deprecated since 1.21
         */
        public static function safeBatchInsert( $jobs ) {
-               return JobQueueGroup::singleton()->push( $jobs, JobQueue::QOS_ATOMIC );
+               JobQueueGroup::singleton()->push( $jobs, JobQueue::QOS_ATOMIC );
+               return true;
        }
 
        /**
@@ -281,7 +283,8 @@ abstract class Job implements IJobSpecification {
         * @deprecated since 1.21
         */
        public function insert() {
-               return JobQueueGroup::singleton()->push( $this );
+               JobQueueGroup::singleton()->push( $this );
+               return true;
        }
 
        /**
index c858e42..c00d22e 100644 (file)
@@ -323,7 +323,7 @@ abstract class JobQueue {
         */
        final public function batchPush( array $jobs, $flags = 0 ) {
                if ( !count( $jobs ) ) {
-                       return true; // nothing to do
+                       return; // nothing to do
                }
 
                foreach ( $jobs as $job ) {
@@ -344,7 +344,7 @@ abstract class JobQueue {
        /**
         * @see JobQueue::batchPush()
         * @param array $jobs
-        * @param array $flags
+        * @param int $flags
         */
        abstract protected function doBatchPush( array $jobs, $flags );
 
index 1991bb4..08873cc 100644 (file)
@@ -189,9 +189,9 @@ class JobQueueDB extends JobQueue {
        /**
         * @see JobQueue::doBatchPush()
         * @param array $jobs
-        * @param array $flags
+        * @param int $flags
         * @throws DBError|Exception
-        * @return bool
+        * @return void
         */
        protected function doBatchPush( array $jobs, $flags ) {
                $dbw = $this->getMasterDB();
@@ -203,8 +203,6 @@ class JobQueueDB extends JobQueue {
                                $that->doBatchPushInternal( $dbw, $jobs, $flags, $method );
                        }
                );
-
-               return true;
        }
 
        /**
@@ -215,11 +213,11 @@ class JobQueueDB extends JobQueue {
         * @param int $flags
         * @param string $method
         * @throws DBError
-        * @return bool
+        * @return void
         */
        public function doBatchPushInternal( IDatabase $dbw, array $jobs, $flags, $method ) {
                if ( !count( $jobs ) ) {
-                       return true;
+                       return;
                }
 
                $rowSet = array(); // (sha1 => job) map for jobs that are de-duplicated
@@ -277,7 +275,7 @@ class JobQueueDB extends JobQueue {
 
                $this->cache->set( $this->getCacheKey( 'empty' ), 'false', JobQueueDB::CACHE_TTL_LONG );
 
-               return true;
+               return;
        }
 
        /**
index 9b4c315..58d5c67 100644 (file)
@@ -235,8 +235,6 @@ class JobQueueFederated extends JobQueue {
                        throw new JobQueueError(
                                "Could not insert job(s), {$this->maxPartitionsTry} partitions tried." );
                }
-
-               return true;
        }
 
        /**
index 948baa0..16908a7 100644 (file)
@@ -106,13 +106,12 @@ class JobQueueGroup {
         *
         * @param Job|array $jobs A single Job or a list of Jobs
         * @throws MWException
-        * @return bool
-        * @todo Return value here is not useful
+        * @return void
         */
        public function push( $jobs ) {
                $jobs = is_array( $jobs ) ? $jobs : array( $jobs );
                if ( !count( $jobs ) ) {
-                       return true;
+                       return;
                }
 
                $jobsByType = array(); // (job type => list of jobs)
@@ -135,8 +134,6 @@ class JobQueueGroup {
                                $this->cache->clear( 'queues-ready' );
                        }
                }
-
-               return true;
        }
 
        /**
index d81a292..6739a84 100644 (file)
@@ -182,8 +182,8 @@ class JobQueueRedis extends JobQueue {
        /**
         * @see JobQueue::doBatchPush()
         * @param array $jobs
-        * @param array $flags
-        * @return bool
+        * @param int $flags
+        * @return void
         * @throws JobQueueError
         */
        protected function doBatchPush( array $jobs, $flags ) {
@@ -199,7 +199,7 @@ class JobQueueRedis extends JobQueue {
                }
 
                if ( !count( $items ) ) {
-                       return true; // nothing to do
+                       return; // nothing to do
                }
 
                $conn = $this->getConnection();
@@ -223,7 +223,7 @@ class JobQueueRedis extends JobQueue {
                        if ( $failed > 0 ) {
                                wfDebugLog( 'JobQueueRedis', "Could not insert {$failed} {$this->type} job(s)." );
 
-                               return false;
+                               throw new RedisException( "Could not insert {$failed} {$this->type} job(s)." );
                        }
                        JobQueue::incrStats( 'job-insert', $this->type, count( $items ), $this->wiki );
                        JobQueue::incrStats( 'job-insert-duplicate', $this->type,
@@ -231,8 +231,6 @@ class JobQueueRedis extends JobQueue {
                } catch ( RedisException $e ) {
                        $this->throwRedisException( $conn, $e );
                }
-
-               return true;
        }
 
        /**
index 7f63bb2..b709498 100644 (file)
@@ -431,7 +431,7 @@ class TransactionProfiler {
                                        list( $method, $realtime ) = $info;
                                        $msg .= sprintf( "%d\t%.6f\t%s\n", $i, $realtime, $method );
                                }
-                               $this->debugGroup( 'DBPerformance', $msg );
+                               wfDebugLog( 'DBPerformance', $msg );
                        }
                        unset( $this->mDBTrxHoldingLocks[$name] );
                        unset( $this->mDBTrxMethodTimes[$name] );
index aca8c96..891962b 100644 (file)
@@ -492,7 +492,7 @@ class ImportReporter extends ContextSource {
                        $comment = $detail; // quick
                        $dbw = wfGetDB( DB_MASTER );
                        $latest = $title->getLatestRevID();
-                       $nullRevision = Revision::newNullRevision( $dbw, $title->getArticleID(), $comment, true );
+                       $nullRevision = Revision::newNullRevision( $dbw, $title->getArticleID(), $comment, true, $this->getUser() );
                        if ( !is_null( $nullRevision ) ) {
                                $nullRevision->insertOn( $dbw );
                                $page = WikiPage::factory( $title );
index 4c2a247..a65a93a 100644 (file)
        "table_pager_empty": "ফলাফল নাই",
        "autosumm-blank": "পৃষ্ঠাটো খালী কৰা হ'ল",
        "autosumm-replace": "পৄষ্ঠাখনক \"$1\"ৰে সলনি কৰা হ'ল",
-       "autoredircomment": "[[$1]]-à¦\95 পুনৰ্নিৰ্দেশ কৰা হ'ল",
+       "autoredircomment": "[[$1]]-লà§\88 পুনৰ্নিৰ্দেশ কৰা হ'ল",
        "autosumm-new": "\"$1\" দি পৃষ্ঠা সৃষ্টি কৰা হ'ল",
        "lag-warn-normal": "$1 {{PLURAL:$1|ছেকেণ্ড|ছেকেণ্ড}} তকৈ নতুন পৰিৱৰ্তনসমূহ এই তালিকাত দেখুওৱা নহবও পাৰে।",
        "lag-warn-high": "উচ্চ ডাটাবেইচ চাৰ্ভাৰ পলমৰ বাবে, $1 {{PLURAL:$1|ছেকেণ্ড|ছেকেণ্ড}} তকৈ নতুন পৰিৱৰ্তনসমূহ এই তালিকাত দেখুওৱা নহবও পাৰে।",
index a5d27a4..8087b6a 100644 (file)
        "trackingcategories": "Катэгорыі, якія патрабуюць увагі",
        "trackingcategories-summary": "На гэтай старонцы пералічаныя катэгорыя, які патрабуюць увагі і якія аўтаматычна запаўняюцца праграмным забесьяпчэньнем MediaWiki. Іх назвы могуць быць зьмененыя рэдагаваньнем сыстэмных паведамленьняў у прасторы назваў {{ns:8}}.",
        "trackingcategories-msg": "Катэгорыя, якая патрабуе ўвагі",
+       "trackingcategories-name": "Назва паведамленьня",
+       "trackingcategories-desc": "Крытэр уключэньня ў катэгорыю",
+       "noindex-category-desc": "Гэтая старонка не індэксуецца пошукавымі робатамі, таму што на ёй маецца магічнае слова <code><nowiki>__NOINDEX__</nowiki></code>, а старонка знаходзіцца ў прасторы назваў, дзе дазволны гэты сьцяг.",
        "mailnologin": "Няма адрасу атрымальніка",
        "mailnologintext": "Вам неабходна [[Special:UserLogin|ўвайсьці ў сыстэму]] і мець пацьверджаны адрас электроннай пошты ў Вашых [[Special:Preferences|наладах]], каб дасылаць лісты іншым удзельнікам.",
        "emailuser": "Даслаць ліст",
index d1458cc..c021b74 100644 (file)
        "jumpto": "Дехьа гӀо:",
        "jumptonavigation": "Навигаци",
        "jumptosearch": "лаха",
-       "view-pool-error": "Бехк цабиллар доьха, хӀинц гӀулкхдириг йоьттина ю.\nКаьчна дуккха дехарш хӀокху агӀонтӀе хьажарца.\nДехар до, собардеш а юха хьажа хӀокху агӀонтӀе жим тӀаьхьо.\n\n$1",
+       "view-pool-error": "Бехк цабиллар доьха, хӀинц сервераш йоьттина ю.\nКаьчна дуккха дехарш хӀокху агӀонтӀе хьажарца.\nДехар до, собардеш а юха хьажа хӀокху агӀонтӀе жим тӀаьхьо.\n\n$1",
+       "generic-pool-error": "Бехк цабиллар доьха, хӀинц сервер йоьттина ю.\nКаьчна дуккха дехарш хӀокху агӀонтӀе хьажарца.\nДехар до, собардеш а юха хьажа хӀокху агӀонтӀе жим тӀаьхьо.",
        "pool-timeout": "Блоктоха еза хан тӀех йаьлла",
        "pool-queuefull": "Дехаршан чоь юьззина ю",
        "pool-errorunknown": "Дойзаш доцу гlалат",
        "allpagessubmit": "Кхочушдé",
        "allpagesprefix": "Лаха агlонаш, дlайуьлалуш йолу:",
        "allpagesbadtitle": "Цамагош йолу агӀон цӀе. Коьрта могӀан юкъах ю юкъарвики меттанашан юкъе тӀечӀагӀйина йолу хьаьрк йа магийна доцу оцу коьрта моӀанца символаш йа кхин.",
-       "allpages-bad-ns": "{{SITENAME}} кху чохь ана цlераш яц «$1».",
+       "allpages-bad-ns": "{{SITENAME}} кху чохь ана цӀераш яц «$1».",
        "allpages-hide-redirects": "Къайлаяха дӀасахьажийнарш",
        "cachedspecial-refresh-now": "Хьажа тӀехьарчу версега.",
        "categories": "Категореш",
        "move-talk-subpages": "ЦӀе хийца бухара агӀонаши а агӀонашан дийцаре а ($1  кхаччалц)",
        "movepage-page-exists": "Агӏо $1 йолуш ю цундела и ша юху дӏаязъян йиш яц.",
        "movepage-page-moved": "АгӀона $1 цӀе хийцина → $2.",
-       "movelogpage": "Цlераш хийцаран тептар",
+       "movelogpage": "ЦӀераш хийцаран тептар",
        "movelogpagetext": "Лахахьа гойтуш ю цӀе хийцина агӀонаш.",
        "movesubpage": "{{PLURAL:$1|1=Бухара агӀо|Бухара агӀонаш}}",
        "movesubpagetext": "ХӀокху агӀона $1 {{PLURAL:$1|1=бухара агӀо ю|бухара агӀонаш ю}}.",
index 2c3bf61..244ffbb 100644 (file)
        "vector-action-move": "بیگوازەوە",
        "vector-action-protect": "بیپارێزە",
        "vector-action-undelete": "سڕینەوە بگەڕێنەوە",
-       "vector-action-unprotect": "پاراستنی بگۆڕە",
+       "vector-action-unprotect": "پاراستن بگۆڕە",
        "vector-view-create": "دروستکردن",
        "vector-view-edit": "دەستکاریی بکە",
        "vector-view-history": "مێژووەکەی ببینە",
        "views": "بینینەکان",
        "toolbox": "ئامرازەکان",
        "userpage": "بینینی پەڕەی بەکارھێنەر",
-       "projectpage": "په‌ڕه‌ی پرۆژه‌ نیشانبده‌",
+       "projectpage": "پەڕەی پرۆژە نیشان بدە",
        "imagepage": "پەڕەی پەڕگە نیشان بدە",
-       "mediawikipage": "په‌ڕه‌ی په‌یام نیشانبده‌",
+       "mediawikipage": "پەڕەی پەیام نیشان بدە",
        "templatepage": "په‌ڕه‌ی داڕێژە ببینە‌",
        "viewhelppage": "په‌ڕه‌ی یارمه‌تی نیشانبده‌",
        "categorypage": "په‌ڕه‌ی هاوپۆل نیشانبده‌",
        "viewsourceold": "سەرچاوەکەی ببینە",
        "editlink": "دەستکاری",
        "viewsourcelink": "سەرچاوەکەی ببینە",
-       "editsectionhint": "دەستکاری کردنی بەشی: $1",
+       "editsectionhint": "دەستکاریکردنی بەش: $1",
        "toc": "پێرست",
        "showtoc": "نیشانیبدە",
        "hidetoc": "بیشارەوە",
-       "collapsible-collapse": "کۆیبکەوە",
-       "collapsible-expand": "بڵاویبکەوە",
+       "collapsible-collapse": "کۆی بکەوە",
+       "collapsible-expand": "بڵاوی بکەوە",
        "thisisdeleted": "$1 نیشان بدە یا بھێنەوە؟",
        "viewdeleted": "$1 نیشان بده‌؟",
        "restorelink": "{{PLURAL:$1|یەک گۆڕانکاریی سڕاو|$1 گۆڕانکاریی سڕاو}}",
        "nstab-category": "پۆل",
        "nosuchaction": "کردارێک بەم شێوە نییە",
        "nosuchactiontext": "ئەو چالاکییەی لە لایەن بەستەرەوە دیاریکراوە ناتەواوە.\nلەوانەیە بە هەڵە بەستەرەکەت نووسیبێت، یان بەستەرێکی هەڵەی بە دواوە بێت.\nلەوانەیە ئەمە نیشانەی هەڵەیەک بێت لەو نەرمەکاڵایەی کە بەکاردێت لە لایەن {{SITENAME}}.",
-       "nosuchspecialpage": "په‌ڕه‌ی تایبه‌تی له‌و شێوه‌یه‌ نییه‌",
+       "nosuchspecialpage": "پەڕەی تایبەتی ئاوا بوونی نییە",
        "nospecialpagetext": "<strong>پەڕەیەکی تایبەت دەخوازیت کە بوونی نیە.</strong>\n\nلیستێکی پەڕە تایبەتە دروستەکان لە [[Special:SpecialPages|{{int:specialpages}}]] لە بەردەست‌دایە.",
        "error": "هه‌ڵه‌",
        "databaseerror": "ھەڵەی بنکەدراوه",
        "enterlockreason": "هۆیەک بۆ قوفڵ‌کردنەکە بنووسە کە  تێیدا کاتی کردنەوەی قۆفڵەکە باس کرابێت",
        "readonlytext": "بنکەدراوەکە لەم کاتەدا  لەبەر چاکسازی ئاسایی بۆ نوسینی نوێ و دەستکاری قوفڵ کراوه. دوای ئەوە ئەگرێتەوە بۆ ئاستی خۆی.\n\nئەو بەڕێوبەرەی کە قوفڵی کردووه ئەم ڕوون‌کردنەوەی نووسیوە : $1",
        "missing-article": "داتابەیسەکە نەیتوانی دەقی پەڕەیەک بەناوی «$1» $2  بدۆزێتەوە کە دەبوا بیدۆزیبایەتەوە.\n\nئەمە زیاتر لە بەدواچوونی بەستەری جیاوازی یان مێژووی کۆنی پەڕەیەکی سڕدراو ڕوودەدات.\n\nئەگەر وا نەبێت، ئەوا ڕەنگە گرفتێکت لەم نەرمامێرەدا دۆزیبێتەوە.\nتکایە ئەمە بە ئاماژەدان بە ناونیشانی URLـەکەیەوە بە [[Special:ListUsers/sysop|بەڕێوبەرێک]] ڕاپۆرت بدە.",
-       "missingarticle-rev": "(Ù¾Û\8cاچوونەوە#: $1)",
+       "missingarticle-rev": "(Ù¾Û\8eداچوونەوە#: $1)",
        "missingarticle-diff": "(جیاوازی: $1، $2)",
        "readonly_lag": "بنكه‌دراوه‌كه‌ به‌شێوه‌ی خۆكار به‌ندكراوه‌، له‌كاتێكدا بنكه‌دراوه‌ی ڕاژه‌كاره‌كه‌ ڕۆڵی له‌خۆگرتن ده‌گێڕێت",
        "internalerror": "ھەڵەی ناوخۆیی",
        "cannotdelete-title": "ناکرێ پەڕەی «$1» بسڕدرێتەوە",
        "delete-hook-aborted": "سڕینەوە لە لایەن قولاپەوە ھەڵوەشێنرایەوە.\nھۆکارەکەی لەبەر دەست نییە.",
        "no-null-revision": "نەتوانرا پێداچوونەوەی خاڵیی بۆ پەڕەی \"$1\" درووست بکرێت",
-       "badtitle": "ناونیشانی خراپ",
+       "badtitle": "سەردێڕی خراپ",
        "badtitletext": "سەرناوی پەڕەی داواکراو بەتاڵە، واڵایە یان سەرناوێکی نێوان-زمانی یان نێوانی-ویکییە کە بە شێوەیەکی ھەڵە بەستەری بۆ دراوە.\nڕەنگە یەک یان چەند کاراکتەری تێدا بێت کە ناکرێت لە سەرناوەکاندا بەکار بھێنرێت.",
        "perfcached": "داتای خوارەوە پاشەکەوتکراوەیە و لەوانەیە بەڕۆژنەکرابێتەوە. لانی زۆر {{PLURAL:$1|یەک ئەنجام|$1 ئەنجام}} لە cacheدا لەبەردەستدایە.",
        "perfcachedts": "داتای خوارەوە cacheکراوە و دوایین جار لە $1 نوێ کراوەتەوە. لە cacheدا لانی زۆر {{PLURAL:$4|یەک ئەنجام|$4 ئەنجام}} لەبەردەستە.",
        "passwordreset-username": "ناوی بەکارھێنەری:",
        "passwordreset-domain": "پاوان:",
        "passwordreset-capture": "بینینی ئیمەیڵی ئەنجام؟",
-       "passwordreset-email": "ئەدرەسی ئیمەیڵ:",
+       "passwordreset-email": "ناونیشانی ئیمەیل:",
        "passwordreset-emailtitle": "وردەکارییەکانی ھەژمار لە {{SITENAME}}",
        "passwordreset-emailtext-ip": "‫کەسێک (لەوانەیە خۆت، بە ناونیشانی ئایپیی $1) داوای ڕیسێتکردنەوەی تێپەڕوشەکەت لە {{SITENAME}}دا ($4) کردووە. {{PLURAL:$3|ھەژماری بەکارھێنەریی ژێرەوە پەیوەندیی ھەیە|ھەژمارە بەکارھێنەرییەکانی ژێرەوە پەیوەندییان ھەیە}} بەم ناونیشانەی ئیمەیلەوە:\n\n$2\n\n{{PLURAL:$3|ئەم تێپەڕوشە کاتییە|ئەم تێپەڕوشە کاتییانە}} لە {{PLURAL:$5|ڕۆژێک|$5 ڕۆژ}}دا بەسەردەچێت.\nدەبێ بچیتە ژوورەوە و ھەر ئێستا تێپەڕوشەیەکی نوێ ھەڵبژێریت. ئەگەر کەسێکی تر ئەم داواکارییەی کردووە،\nیان ئەگەر تێپەڕوشە سەرەتاییەکەت ھاتووەتەوە بیرت و ئیتر ناتەوێ بیگۆڕی، دەتوانی گوێ بەم پەیامە نەدەیت و ھەر لە تێپەڕوشە کۆنەکەت کەڵک وەربگریت.",
        "passwordreset-emailtext-user": "‫بەکارھێنەر $1 لە {{SITENAME}} ڕیسێتکردنەوەی تێپەڕوشەکەت لە {{SITENAME}}دا ($4) کردووە. {{PLURAL:$3|ھەژماری بەکارھێنەریی ژێرەوە پەیوەندیی ھەیە|ھەژمارە بەکارھێنەرییەکانی ژێرەوە پەیوەندییان ھەیە}} بەم ناونیشانەی ئیمەیلەوە:\n\n$2\n\n{{PLURAL:$3|ئەم تێپەڕوشە کاتییە|ئەم تێپەڕوشە کاتییانە}} لە {{PLURAL:$5|ڕۆژێک|$5 ڕۆژ}}دا بەسەردەچێت.\nدەبێ بچیتە ژوورەوە و ھەر ئێستا تێپەڕوشەیەکی نوێ ھەڵبژێریت. ئەگەر کەسێکی تر ئەم داواکارییەی کردووە، یان ئەگەر تێپەڕوشە سەرەتاییەکەت ھاتووەتەوە بیرت و ئیتر ناتەوێ بیگۆڕی، \nدەتوانی گوێ بەم پەیامە نەدەیت و ھەر لە تێپەڕوشە کۆنەکەت کەڵک وەربگریت.",
        "passwordreset-emailsent": "ئیمەیلێکی ڕیسێتکردنەوەی تێپەڕوشە نێردرا.",
        "passwordreset-emailsent-capture": "ئیمەیلێکی ڕیسێتکردنەوەی تێپەڕوشە نێردرا، کە لە ژێرەوە نیشان دراوە.",
        "passwordreset-emailerror-capture": "ئیمەیلێکی ڕیسێتکردنەوەی تێپەڕوشە نێردرا، کە لە ژێرەوە نیشان دراوە، بەڵام ناردنەکەی بۆ {{GENDER:$2|بەکارھێنەر}} سەرکەوتوو نەبوو: $1",
-       "changeemail": "ئەدرەسی ئیمەیڵ بگۆڕە",
-       "changeemail-header": "ئەدرەسی ئیمەیلی ھەژمار بگۆڕە",
+       "changeemail": "ناونیشانی ئیمەیل بگۆڕە",
+       "changeemail-header": "ناونیشانی ئیمەیلی ھەژمار بگۆڕە",
        "changeemail-no-info": "بۆ گەیشتنی راستەوخۆ بەم پەڕە دەبێت بچیتە ژوورەوە.",
        "changeemail-oldemail": "ئەدرەسی ئیمەیڵی ئێستا:",
-       "changeemail-newemail": "ئەدرەسی ئیمەیڵی نوێ:",
+       "changeemail-newemail": "ناونیشانی ئیمەیلی نوێ:",
        "changeemail-none": "(ھیچ)",
        "changeemail-password": "تێپەڕوشەکەت لە {{SITENAME}}:",
-       "changeemail-submit": "ئەمەیڵ بگۆڕە",
+       "changeemail-submit": "ئەمەیل بگۆڕە",
        "changeemail-cancel": "ھەڵیوەشێنەوە",
        "bold_sample": "دەقی ئەستوور",
        "bold_tip": "دەقی ئەستوور",
        "cantcreateaccount-text": "درووست‌کردنی هەژمارە بۆ ناونیشانی ئای‌پی ('''$1''') لە لایەن [[User:$3|$3]] داخراوە.<br /><br />\n$3 هۆکاری \"$2\" خستوەتەڕوو",
        "viewpagelogs": "لۆگەکانی ئەم پەڕەیە ببینە",
        "nohistory": "هیچ مێژوویەکی دەستکاری نییە بۆ ئەم پەڕەیە.",
-       "currentrev": "دÙ\88اÛ\8cÛ\8cÙ\86 Ù¾Û\8cاچوونەوە",
+       "currentrev": "دÙ\88اÛ\8cÛ\8cÙ\86 Ù¾Û\8eداچوونەوە",
        "currentrev-asof": "دوایین پێداچوونەوەی $1",
-       "revisionasof": "Ù\88Û\95Ú© Ù¾Û\8cاچوونەوەی $1",
+       "revisionasof": "Ù\88Û\95Ú© Ù¾Û\8eداچوونەوەی $1",
        "revision-info": "پێداچوونەوی $1 لە لایەن $2",
        "previousrevision": "→پیاچوونەوەی کۆنتر",
-       "nextrevision": "Ù¾Û\8cاچوونەوەی نوێتر←",
-       "currentrevisionlink": "Ù¾Û\8cاچوونەوەی ئێستا",
+       "nextrevision": "Ù¾Û\8eداچوونەوەی نوێتر←",
+       "currentrevisionlink": "Ù¾Û\8eداچوونەوەی ئێستا",
        "cur": "ئێستا",
        "next": "پاش",
        "last": "پێشوو",
        "mypreferences": "ھەڵبژاردەکان",
        "prefs-edits": "ژمارەی گۆڕانکارییەکان:",
        "prefs-skin": "پێستە",
-       "skin-preview": "پێش بینین",
+       "skin-preview": "پێشبینین",
        "datedefault": "ھەڵنەبژێردراو",
        "prefs-labs": "کەرەسەکانی تاقیگەکان",
        "prefs-user-pages": "پەڕە بەکارھێنەرییەکان",
        "prefs-personal": "پرۆفایلی بەکارھێنەر",
        "prefs-rc": "دوایین گۆڕانکارییەکان",
-       "prefs-watchlist": "Ù\84Û\8cستی چاودێری",
+       "prefs-watchlist": "Ù¾Û\8eرستی چاودێری",
        "prefs-watchlist-days": "ژمارەی ڕۆژەکان بۆ نیشاندان لە لیستی چاودێری:",
        "prefs-watchlist-days-max": "ئەوپەڕی $1 {{PLURAL:$1|ڕۆژە|ڕۆژە}}",
        "prefs-watchlist-edits": "ئەوپەڕی ژمارەی گۆڕانکارییەکان بۆ نیشاندان لە لیستی چاودێریی پەرەپێدراو:",
        "timezoneuseoffset": "دیکە (ناتەواویەکان دیاری بکە)",
        "servertime": "کاتی ڕاژەکار:",
        "guesstimezone": "لە وێبگەڕەکە بیگرە",
-       "timezoneregion-africa": "ئافریقا",
+       "timezoneregion-africa": "ئەفریقا",
        "timezoneregion-america": "ئەمریکا",
        "timezoneregion-antarctica": "ئانتارکتیکا",
        "timezoneregion-arctic": "ئارکتیک",
        "timezoneregion-pacific": "ئۆقیانووسی ئارام",
        "allowemail": "ڕێگە بدە بە بەکارھێنەرانی تر کە ئیمەیلم بۆ بنێرن",
        "prefs-searchoptions": "گەڕان",
-       "prefs-namespaces": "بۆشاییناوەکان",
+       "prefs-namespaces": "بۆشایی ناوەکان",
        "defaultns": "دەنا لەم بۆشاییی ناوانەدا بگەڕێ:",
        "default": "بنچینەیی",
        "prefs-files": "پەڕگەکان",
        "userrights-changeable-col": "ئەو گرووپانەی دەتوانی بیگۆڕی",
        "userrights-unchangeable-col": "ئەو گرووپانەی ناتوانی بیگۆڕی",
        "group": "گرووپ:",
-       "group-user": "بەکارهێنەران",
+       "group-user": "بەکارھێنەران",
        "group-autoconfirmed": "بەکارھێنەرانی پەسندکراوی خۆگەڕ",
        "group-bot": "بۆتەکان",
        "group-sysop": "بەڕێوەبەران",
        "right-siteadmin": "داخستن و کردنەوەی بنکەدراو",
        "right-override-export-depth": "هەناردنی لاپەڕەکان کە لاپەڕەکانی بەستەر پێ‌دراو تا قووڵایی 5 لەخۆ بگرێت",
        "right-sendemail": "ناردنی ئیمەیل بۆ بەکارھێنەرانی تر",
+       "right-passwordreset": "دیتنی ئیمەیلەکانی ڕێکخستنەوەی تێپەڕوشە",
        "newuserlogpage": "لۆگی دروستکردنی بەکارھێنەر",
        "newuserlogpagetext": "ئەمە لۆگێکی دروستکردنی بەکارھێنەرە.",
        "rightslog": "لۆگی مافەکانی بەکارھێنەر",
        "rightslogtext": "ئەمە لۆگی دەستکاری مافەکانی بەکار‌هێنەرە.",
        "action-read": "خوێندنەوەی ئەم پەڕە",
        "action-edit": "دەستکاریی ئەم پەڕەیە",
-       "action-createpage": "درووست‌کردنی لاپەڕە",
-       "action-createtalk": "درووست‌کردنی لەپەڕەکانی وتووێژ",
+       "action-createpage": "دروستکردنی پەڕەکان",
+       "action-createtalk": "دروستکردنی پەڕەکانی وتووێژ",
        "action-createaccount": "درووست‌کردنی هەژمارەی ئەم بەکارهێنەرە",
        "action-minoredit": "نیشان‌کردنی ئەم دەستکاریە وەک بچووک",
-       "action-move": "گواستنەوەی ئەم پەڕە",
+       "action-move": "گواستنەوەی ئەم پەڕەیە",
        "action-move-subpages": "گواستنەوەی ئەم پەڕەیە و ژێرپەڕەکانی",
-       "action-move-rootuserpages": "Ú¯Ù\88استÙ\86Û\95Ù\88Û\95Û\8c Ø¨Ù\86Û\95رÛ\95تÛ\8c Ù\84اپÛ\95Ú\95Û\95کاÙ\86Û\8c Ø¨Û\95کارÙ\87ێنەر",
+       "action-move-rootuserpages": "Ú¯Ù\88استÙ\86Û\95Ù\88Û\95Û\8c Ø¨Ù\86Û\95رÛ\95تÛ\8c Ù¾Û\95Ú\95Û\95کاÙ\86Û\8c Ø¨Û\95کارھێنەر",
        "action-movefile": "ئەم پەڕگەیە بگوازەوە",
        "action-upload": "ئەم پەڕەیە بار بکە",
        "action-reupload": "سەرنووسینی ئەم پەڕگە وا هەیە",
        "action-upload_by_url": "ئەم پەرگەیە لە ناونیشانێکی ئینتەرنێتی بار بکە",
        "action-writeapi": "کەڵک وەر گرتن لە نووسینی API",
        "action-delete": "ئەم پەڕەیە بسڕەوە",
-       "action-deleterevision": "سÚ\95Û\8cÙ\86Û\8c Ø¦Û\95Ù\85 Ù¾Û\8eداÚ\86Ù\88Ù\88Ù\86Û\95Ù\88ە",
-       "action-deletedhistory": "دÛ\8cتÙ\86Û\8c Ù\85Û\8eÚ\98Ù\88Ù\88Û\8c Ø³Ú\95اÙ\88Û\95Û\8c Ø¦Û\95Ù\85 Ù\84اپÛ\95Ú\95ە",
+       "action-deleterevision": "سÚ\95Û\8cÙ\86Û\95Ù\88Û\95Û\8c Ø¦Û\95Ù\85 Ù¾Û\8eداÚ\86Ù\88Ù\88Ù\86Û\95Ù\88Û\95Û\8cە",
+       "action-deletedhistory": "دÛ\8cتÙ\86Û\8c Ù\85Û\8eÚ\98Ù\88Ù\88Û\8c Ø³Ú\95اÙ\88Û\95Û\8c Ø¦Û\95Ù\85 Ù¾Û\95Ú\95Û\95Û\8cە",
        "action-browsearchive": "گەران لە نێو لاپەڕە سڕاوەکان",
        "action-undelete": "گەڕانەوەی ئەم لاپەڕە",
        "action-suppressrevision": "چاوپێداخشان و هاردنوەی ئەم لاپەڕە شاراوە",
        "action-suppressionlog": "دیتنی ئەم لۆگە ئەهلیە",
        "action-block": "بەربەست کردنی ئەم بەکارهێنەرە بۆ دەستکاری‌کردن",
-       "action-protect": "گۆڕانی ئاستی پارێزراوی بۆ ئەم لاپەڕە",
+       "action-protect": "گۆڕینی ئاستی پاراستن بۆ ئەم پەڕەیە",
        "action-rollback": "گەڕاندنەوەی خێرای دەستکاریەکانی دوایین بەکارھێنەر کە پەڕەیەکی دیاریکراوی دەستکاری کردووە",
        "action-import": "ھاوردنی پەڕەکان لە ویکییەکی ترەوە",
        "action-importupload": "ھاوردنی پەڕەکان لە پەڕگەیەکی بارکراو",
        "action-sendemail": "ناردنی ئیمەیلەکان",
        "action-viewmywatchlist": "دیتنی پێرستی چاودێریت",
        "nchanges": "$1 {{PLURAL:$1|گۆڕانکاری}}",
+       "enhancedrc-history": "مێژوو",
        "recentchanges": "دوایین گۆڕانکارییەکان",
        "recentchanges-legend": "ھەڵبژاردەکانی دوایین گۆڕانکارییەکان",
        "recentchanges-summary": "لەم پەڕەیەدا شوێنی دوایین گۆڕانکارییەکانی ویکی بکەوە.",
        "rcshowhideanons-show": "نیشان بدە",
        "rcshowhideanons-hide": "بشارەوە",
        "rcshowhidepatr": "گۆرانکارییە پاس دراوەکان $1",
+       "rcshowhidepatr-show": "نیشان بدە",
        "rcshowhidemine": "دەستکارییەکانم $1",
        "rcshowhidemine-show": "نیشان بدە",
        "rcshowhidemine-hide": "بشارەوە",
        "filedesc": "کورتە",
        "fileuploadsummary": "کورتە:",
        "filereuploadsummary": "گۆرانکارییەکانی پەڕگە:",
-       "filestatus": "بارودۆخی مافی لەبەرگرتنەوە:",
+       "filestatus": "ڕەوشی مافی لەبەرگرتنەوە:",
        "filesource": "سەرچاوە:",
        "ignorewarning": "چاوپۆشان لە ئاگادارییەکان و پاشەکەوت کردن بە هەر شێوەیەک",
        "ignorewarnings": "گوێ مەدە بە ئاگادارییەکان",
        "unusedtemplateswlh": "بەستەرەکانی تر",
        "randompage": "پەڕەیەک بە هەڵکەوت",
        "randompage-nopages": "هیچ لاپەڕەیەک لەم {{PLURAL:$2|ناوبۆشاییەدا|ناوبۆشاییانەدا}} نیە: $1.",
+       "randomincategory-selectcategory-submit": "بڕۆ",
        "randomredirect": "ڕەوانەکەری ھەرمەکی",
        "randomredirect-nopages": "لە ناوبۆشایی \"$1\" هیچ ڕەوانکەرێک نییە.",
        "statistics": "ئامارەکان",
        "protectedpages-indef": "تەنیا پاراستنە بێسنوورەکان",
        "protectedpages-cascade": "تەنیا پاراستنە زنجیرییەکان",
        "protectedpagesempty": "هیچ لاپەڕەیک ئێستا بەم دیاریکراوانە نەپارێزراوە.",
+       "protectedpages-page": "پەڕە",
        "protectedtitles": "سەرناوە پارێزراوەکان",
        "protectedtitlesempty": "ھیچ سەرناوێک بەم سنوورانەوە ئێستا نەپارێزراوە.",
        "listusers": "پێرستی بەکارھێنەران",
        "listusers-editsonly": "تەنیا ئەو بەکارھێنەرانە نیشان بدە کە دەستکارییان کردووە",
        "listusers-creationsort": "ڕیزکردن بە پێی ڕێکەوتی دروستکردن",
+       "listusers-desc": "ڕیزکردنی بەرەوە ژێر",
        "usereditcount": "$1 {{PLURAL:$1|دەستکاری|دەستکاری}}",
        "usercreated": "لە $1، $2 {{GENDER:$3|دروست کراوە}}",
        "newpages": "پەڕە نوێکان",
        "listgrouprights-removegroup-self": "لابردنی {{PLURAL:$2|گرووپ|گرووپەکان}} لە سەر ھەژماری خۆی: $1",
        "listgrouprights-addgroup-self-all": "زیادکردنی ھەموو گرووپەکان بۆ سەر ھەژماری خۆی",
        "listgrouprights-removegroup-self-all": "لابردنی هەموو گرووپەکان له‌ سه‌ر هه‌ژماری خۆ",
-       "listgrouprights-namespaceprotection-namespace": "بۆشاییی ناو",
+       "listgrouprights-namespaceprotection-header": "سنوورداریی بۆشایی ناو",
+       "listgrouprights-namespaceprotection-namespace": "بۆشایی ناو",
+       "listgrouprights-namespaceprotection-restrictedto": "مافی رێ‌پێدراوی بەکارھێنەر بۆ دەستکاری",
        "trackingcategories-name": "ناوی پەیام",
        "mailnologin": "ناونیشان بۆ ناردن نییه‌",
        "mailnologintext": "ده‌بێ له‌ [[Special:UserLogin|ژووره‌وه‌]] بیت و ناونیشانێکی بڕواپێ‌کراوی ئی‌مه‌یلت له‌ ناو [[Special:Preferences|هه‌ڵبژارده‌کان]] دیاری کردبێت تا بتوانی ئی‌مه‌یل بنێریت بۆ به‌کارهێنه‌رانی دیکه‌.",
index 56422a5..06ba0e4 100644 (file)
        "jumptonavigation": "navigace",
        "jumptosearch": "hledání",
        "view-pool-error": "Promiňte, servery jsou momentálně přetíženy.\nTuto stránku si právě prohlíží příliš mnoho uživatelů.\nPřed tím, než ji zkusíte načíst znovu, chvíli počkejte.\n\n$1",
-       "generic-pool-error": "Promiňte, servery jsou momentálně přetíženy.\nTento zdroj si právě prohlíží příliš mnoho uživatelů.\nPřed tím, než se k němu pokusíte přistoupit znovu, chvíli počkejte.",
+       "generic-pool-error": "Promiňte, servery jsou momentálně přetíženy.\nTento zdroj si právě prohlíží příliš mnoho uživatelů.\nProsím, před dalším pokusem o přístup chvíli počkejte.",
        "pool-timeout": "Při čekání na zámek vypršel časový limit",
        "pool-queuefull": "Fronta ve fondu je plná",
        "pool-errorunknown": "Neznámá chyba",
        "rollbacklinkcount-morethan": "vrácení více než $1 {{PLURAL:$1|editace|editací}} zpět",
        "rollbackfailed": "Nešlo vrátit zpět",
        "cantrollback": "Nelze vrátit zpět poslední editaci, neboť poslední přispěvatel je jediným autorem této stránky.",
-       "alreadyrolled": "Nelze vrátit zpět poslední editaci [[:$1]] od uživatele [[User:$2|$2]] ([[User talk:$2|diskuse]]{{int:pipe-separator}}[[Special:Contributions/$2|{{int:contribslink}}]]), protože někdo jiný již stránku editoval nebo vrátil tuto změnu zpět.\n\nPoslední editaci této stránky {{PLURAL:$3|provedl|provedla|provedl uživatel}} [[User:$3|$3]] ([[User talk:$3|diskuse]]{{int:pipe-separator}}[[Special:Contributions/$3|{{int:contribslink}}]]).",
+       "alreadyrolled": "Nelze vrátit zpět poslední editaci [[:$1]] od uživatele [[User:$2|$2]] ([[User talk:$2|diskuse]]{{int:pipe-separator}}[[Special:Contributions/$2|{{int:contribslink}}]]), protože někdo jiný již stránku editoval nebo vrátil tuto změnu zpět.\n\nPoslední editaci této stránky {{GENDER:$3|provedl|provedla|provedl uživatel}} [[User:$3|$3]] ([[User talk:$3|diskuse]]{{int:pipe-separator}}[[Special:Contributions/$3|{{int:contribslink}}]]).",
        "editcomment": "Shrnutí editace bylo: ''„$1“''.",
        "revertpage": "Editace uživatele „[[Special:Contributions/$2|$2]]“ ([[User talk:$2|diskuse]]) vráceny do předchozího stavu, jehož autorem je „[[User:$1|$1]]“",
        "revertpage-nouser": "Editace skrytého uživatele vráceny do předchozího stavu, jehož {{GENDER:$1|autorem|autorkou}} je „[[User:$1|$1]]“",
        "unblockiptext": "Tímto formulářem je možno obnovit právo blokované IP adresy či uživatele opět přispívat do {{grammar:2sg|{{SITENAME}}}}.",
        "ipusubmit": "Odblokovat",
        "unblocked": "{{GENDER:$1|||Uživatel}} [[User:$1|$1]] {{GENDER:$1|byl odblokován|byla odblokována|byl odblokován}}.",
-       "unblocked-range": "$1 bylo odblokováno",
-       "unblocked-id": "Blok $1 byl zrušen",
+       "unblocked-range": "Rozsah $1 byl odblokován.",
+       "unblocked-id": "Blok $1 byl zrušen.",
        "blocklist": "Zablokovaní uživatelé",
        "ipblocklist": "Zablokovaní uživatelé",
        "ipblocklist-legend": "Hledat zablokovaného uživatele",
        "change-blocklink": "změnit blok",
        "contribslink": "příspěvky",
        "emaillink": "poslat e-mail",
-       "autoblocker": "{{GENDER:|Byl jste automaticky zablokován|Byla jste automaticky zablokována|Byli jste automaticky zablokováni}}, protože vaši IP adresu nedávno {{GENDER:$1|používal uživatel|používala uživatelka}} „[[User:$1|$1]]“.\nDůvod zablokování {{GENDER:$1|uživatele $1|uživatelky $1}}: „$2“",
+       "autoblocker": "Automatické zablokování kvůli tomu, že vaši IP adresu nedávno {{GENDER:$1|používal uživatel|používala uživatelka}} „[[User:$1|$1]]“.\nDůvod zablokování {{GENDER:$1|uživatele $1|uživatelky $1}}: „$2“",
        "blocklogpage": "Kniha zablokování",
        "blocklog-showlog": "{{GENDER:$1|Tento uživatel byl dříve blokován.|Tato uživatelka byla dříve blokována.|Tento uživatel byl dříve blokován.}}\nZde je pro přehled zobrazen výpis z knihy zablokování:",
        "blocklog-showsuppresslog": "Tento uživatel byl zablokován a skryt. Zde je pro přehled zobrazen výpis záznamu utajení:",
        "ipb_expiry_temp": "Blokování skrytých uživatelských jmen by měla být trvalá.",
        "ipb_hide_invalid": "Tento účet nelze utajit; má více než $1 {{PLURAL:$1|editaci|editace|editací}}.",
        "ipb_already_blocked": "„$1“ již je zablokován.",
-       "ipb-needreblock": "$1 je již zablokován(a). Chcete změnit nastavení bloku?",
+       "ipb-needreblock": "$1 je již {{GENDER:zablokován|zablokována}}. Chcete změnit nastavení bloku?",
        "ipb-otherblocks-header": "{{PLURAL:$1|Jiné zablokování|Jiná zablokování}}",
        "unblock-hideuser": "Tohoto uživatele nemůžete odblokovat, protože jeho uživatelské jméno bylo skryto.",
        "ipb_cant_unblock": "Chyba: Blokování s ID $1 nebylo nalezeno. Uživatel již možná byl odblokován.",
        "sorbs_create_account_reason": "Vaše IP adresa je uvedena na seznamu DNSBL jako otevřený proxy server. Z této adresy si nemůžete založit účet",
        "xffblockreason": "IP adresa uvedená v hlavičce X-Forwarded-For, ať už vaše, nebo patřící proxy serveru, který používáte, byla zablokována. Zdůvodnění tohoto zablokování: $1",
        "cant-see-hidden-user": "Uživatel, kterého se snažíte blokovat, už byl zablokován a skryt. Jelikož nemáte oprávnění hideuser, nemůžete si nastavení bloku tohoto uživatele prohlédnout ani ho změnit.",
-       "ipbblocked": "Nemůžete blokovat nebo odblokovávat jiné uživatele, {{GENDER:|sám|sama|sám}} jste {{GENDER:|zablokován|zablokována|zablokován}}",
-       "ipbnounblockself": "Nemáte dovoleno odblokovat {{GENDER:|sám|sama|sám}} sebe",
+       "ipbblocked": "Nemůžete blokovat nebo odblokovávat jiné uživatele, {{GENDER:|sám|sama|sám}} jste {{GENDER:|zablokován|zablokována|zablokován}}.",
+       "ipbnounblockself": "Nemáte dovoleno odblokovat {{GENDER:|sám|sama|sám}} sebe.",
        "lockdb": "Zamknout databázi",
        "unlockdb": "Odemknout databázi",
        "lockdbtext": "Pokud zamknete databázi, znemožníte ostatním editovat, upravovat nastavení, sledované stránky apod. Potvrďte, že to opravdu chcete udělat a že odemknete databázi hned po opravách.",
        "lockedbyandtime": "({{gender:$1|zamkl|zamkla|zamkl}} $1 $2 v $3)",
        "move-page": "Přesunout „$1“",
        "move-page-legend": "Přesunout stránku",
-       "movepagetext": "Použitím tohoto formuláře změníte název stránky a přesunete i celou její historii na nový název.\nPůvodní název se stane přesměrováním na nový název.\nPřesměrování na původní název můžete nechat aktualizovat automaticky.\nPokud nenecháte, nezapomeňte poté zkontrolovat [[Special:DoubleRedirects|dvojitá]] nebo [[Special:BrokenRedirects|přerušená]] přesměrování.\nJe na vaší zodpovědnosti zajistit, aby odkazy stále vedly tam, kam mají.\n\nStránku '''není možno''' přejmenovat, pokud pod cílovým názvem již nějaká stránka existuje, s výjimkou situace, kdy je cílová stránka přesměrováním na tuto stránku a nemá žádnou historii editací.\nTo znamená, že stránku můžete přesunout zpět na původní název, pokud uděláte chybu, a že nemůžete přepsat existující stránku.\n\n'''Upozornění!'''\nPřejmenování oblíbené stránky může být drastická a nečekaná změna;\nujistěte se, že chápete důsledky svého kroku před tím, než změnu provedete.",
-       "movepagetext-noredirectfixer": "Použitím tohoto formuláře změníte název stránky a přesunete i celou její historii na nový název.\nPůvodní název se stane přesměrováním na nový název.\nNezapomeňte poté zkontrolovat [[Special:DoubleRedirects|dvojitá]] nebo [[Special:BrokenRedirects|přerušená]] přesměrování.\nJe na vaší zodpovědnosti zajistit, aby odkazy stále vedly tam, kam mají.\n\nStránku '''není možno''' přejmenovat, pokud pod cílovým názvem již nějaká stránka existuje, s výjimkou situace, kdy je cílová stránka prázdná nebo je přesměrováním na tuto stránku a nemá žádnou historii editací.\nTo znamená, že stránku můžete přesunout zpět na původní název, pokud uděláte chybu, a že nemůžete přepsat existující stránku.\n\n'''Upozornění!'''\nPřejmenování oblíbené stránky může být drastická a nečekaná změna; ujistěte se, prosím, že chápete důsledky svého kroku před tím, než změnu provedete.",
-       "movepagetalktext": "Přidružená diskusní stránka, pokud existuje, bude automaticky přesunuta společně se stránkou, '''pokud:'''\n* Dosud neexistuje neprázdná diskusní stránka pod novým jménem a\n* nezrušíte křížek ve formuláři.\n\nV těchto případech musíte přesunout nebo sloučit stránky manuálně, jestliže si to přejete.",
+       "movepagetext": "Použitím tohoto formuláře změníte název stránky a přesunete i celou její historii na nový název.\nPůvodní název se stane přesměrováním na nový název.\nPřesměrování na původní název můžete nechat aktualizovat automaticky.\nPokud nenecháte, nezapomeňte poté zkontrolovat [[Special:DoubleRedirects|dvojitá]] nebo [[Special:BrokenRedirects|přerušená]] přesměrování.\nJe vaší zodpovědností zajistit, aby odkazy stále vedly tam, kam mají.\n\nStránku '''není možno''' přejmenovat, pokud pod cílovým názvem již nějaká stránka existuje, s výjimkou situace, kdy je cílová stránka přesměrováním na tuto stránku a nemá žádnou historii editací.\nTo znamená, že stránku můžete přesunout zpět na původní název, pokud uděláte chybu, a že nemůžete přepsat existující stránku.\n\n'''Upozornění!'''\nPřejmenování oblíbené stránky může být drastická a nečekaná změna;\npředtím, než změnu provedete, se ujistěte, že chápete důsledky svého kroku.",
+       "movepagetext-noredirectfixer": "Použitím tohoto formuláře změníte název stránky a přesunete i celou její historii na nový název.\nPůvodní název se stane přesměrováním na nový název.\nNezapomeňte poté zkontrolovat [[Special:DoubleRedirects|dvojitá]] nebo [[Special:BrokenRedirects|přerušená]] přesměrování.\nJe vaší zodpovědností zajistit, aby odkazy stále vedly tam, kam mají.\n\nStránku '''není možno''' přejmenovat, pokud pod cílovým názvem již nějaká stránka existuje, s výjimkou situace, kdy je cílová stránka prázdná nebo je přesměrováním na tuto stránku a nemá žádnou historii editací.\nTo znamená, že stránku můžete přesunout zpět na původní název, pokud uděláte chybu, a že nemůžete přepsat existující stránku.\n\n'''Upozornění!'''\nPřejmenování oblíbené stránky může být drastická a nečekaná změna; předtím, než změnu provedete, se prosím ujistěte, že chápete důsledky svého kroku.",
+       "movepagetalktext": "Přidružená diskusní stránka, existuje-li, bude automaticky přesunuta společně se stránkou, '''pokud:'''\n* dosud neexistuje neprázdná diskusní stránka pod novým jménem a\n* nezrušíte křížek ve formuláři.\n\nV těchto případech musíte přesunout nebo sloučit stránky manuálně, přejete-li si to.",
        "movearticle": "Přesunout stránku:",
        "moveuserpage-warning": "'''Upozornění:''' Chystáte se přesunout uživatelskou stránku. Uvědomte si prosím, že bude přesunuta pouze tato stránka, ale uživatel ''nebude'' přejmenován.",
        "movenologintext": "Pro přesouvání stránek se musíte [[Special:UserLogin|přihlásit]].",
        "movenotallowed": "Nemáte oprávnění k přesunu stránek.",
-       "movenotallowedfile": "Nemáte právo přesouvat soubory",
+       "movenotallowedfile": "Nemáte právo přesouvat soubory.",
        "cant-move-user-page": "Nemáte oprávnění přesouvat uživatelské stránky.",
        "cant-move-to-user-page": "Nemáte oprávnění přesouvat na uživatelskou stránku (pouze na podstránku uživatelské stránky).",
        "newtitle": "Na nový název:",
        "export-submit": "Exportovat",
        "export-addcattext": "Přidat stránky z kategorie:",
        "export-addcat": "Přidat",
-       "export-addnstext": "Přidat stránky z jmenného prostoru:",
+       "export-addnstext": "Přidat stránky ze jmenného prostoru:",
        "export-addns": "Přidat",
        "export-download": "Nabídnout uložení jako soubor",
        "export-templates": "Zahrnout šablony",
        "tooltip-ca-history": "Starší verze této stránky.",
        "tooltip-ca-protect": "Zamknout tuto stránku.",
        "tooltip-ca-unprotect": "Změnit zámek této stránky.",
-       "tooltip-ca-delete": "Smazat tuto stránku.",
-       "tooltip-ca-undelete": "Obnovit editace této stránky provedené před jejím smazáním.",
+       "tooltip-ca-delete": "Smazat tuto stránku",
+       "tooltip-ca-undelete": "Obnovit editace této stránky provedené před jejím smazáním",
        "tooltip-ca-move": "Přesunout tuto stránku",
        "tooltip-ca-watch": "Přidat tuto stránku mezi sledované",
        "tooltip-ca-unwatch": "Vyjmout tuto stránku ze sledovaných",
        "tooltip-ca-nstab-user": "Zobrazit uživatelskou stránku",
        "tooltip-ca-nstab-media": "Zobrazit stránku souboru",
        "tooltip-ca-nstab-special": "Toto je speciální stránka, kterou nelze editovat.",
-       "tooltip-ca-nstab-project": "Zobrazit stránku o wiki.",
-       "tooltip-ca-nstab-image": "Zobrazit stránku obrázku.",
-       "tooltip-ca-nstab-mediawiki": "Zobrazit systémovou zprávu.",
-       "tooltip-ca-nstab-template": "Zobrazit šablonu.",
-       "tooltip-ca-nstab-help": "Zobrazit stránku nápovědy.",
-       "tooltip-ca-nstab-category": "Zobrazit kategorii.",
+       "tooltip-ca-nstab-project": "Zobrazit stránku o wiki",
+       "tooltip-ca-nstab-image": "Zobrazit stránku obrázku",
+       "tooltip-ca-nstab-mediawiki": "Zobrazit systémovou zprávu",
+       "tooltip-ca-nstab-template": "Zobrazit šablonu",
+       "tooltip-ca-nstab-help": "Zobrazit stránku nápovědy",
+       "tooltip-ca-nstab-category": "Zobrazit kategorii",
        "tooltip-minoredit": "Označit změnu jako malou editaci",
        "tooltip-save": "Uložit vaše změny",
        "tooltip-preview": "Zobrazit náhled vašich změn; prosíme, zobrazte si ho před uložením!",
        "metadata-help": "Tento soubor obsahuje dodatečné informace, poskytnuté zřejmě digitálním fotoaparátem nebo scannerem, kterým byl pořízen. Pokud byl soubor od té doby změněn, některé údaje mohou být neplatné.",
        "metadata-expand": "Zobrazit podrobnosti",
        "metadata-collapse": "Skrýt podrobnosti",
-       "metadata-fields": "Položky metadat obrázků uvedené v této zprávě budou na stránce s popisem vypsána vždy. Pro zobrazení ostatních bude třeba kliknout na „zobrazit podrobnosti“.\n* make\n* model\n* datetimeoriginal\n* exposuretime\n* fnumber\n* isospeedratings\n* focallength\n* artist\n* copyright\n* imagedescription\n* gpslatitude\n* gpslongitude\n* gpsaltitude",
+       "metadata-fields": "Položky metadat obrázků uvedené v této zprávě budou na stránce s popisem vypsány vždy. Pro zobrazení ostatních bude třeba kliknout na „zobrazit podrobnosti“.\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": "Šířka",
        "exif-imagelength": "Výška",
        "exif-bitspersample": "Bitů na složku",
        "exif-saturation": "Sytost",
        "exif-sharpness": "Ostrost",
        "exif-devicesettingdescription": "Popis nastavení zařízení",
-       "exif-subjectdistancerange": "Vzdálenost k předmětu",
+       "exif-subjectdistancerange": "Vzdálenost od předmětu",
        "exif-imageuniqueid": "Unikátní ID obrázku",
        "exif-gpsversionid": "Verze GPS tagu",
        "exif-gpslatituderef": "Severní/jižní zeměpisná šířka",
        "exif-gpsdestlongitude": "Zeměpisná délka předmětu",
        "exif-gpsdestbearingref": "Reference pro směr k předmětu",
        "exif-gpsdestbearing": "Směr k předmětu",
-       "exif-gpsdestdistanceref": "Jednotka vzdálenosti k předmětu",
-       "exif-gpsdestdistance": "Vzdálenost k předmětu",
+       "exif-gpsdestdistanceref": "Jednotka vzdálenosti od předmětu",
+       "exif-gpsdestdistance": "Vzdálenost od předmětu",
        "exif-gpsprocessingmethod": "Označení metody zpracování GPS dat",
        "exif-gpsareainformation": "Označení GPS oblasti",
        "exif-gpsdatestamp": "Datum podle GPS",
        "exif-licenseurl": "URL licence",
        "exif-morepermissionsurl": "Informace o jiném licencování",
        "exif-attributionurl": "Pokud užíváte toto dílo, uveďte odkaz",
-       "exif-preferredattributionname": "Pokud užíváte toto dílo, uveďte jako autora",
+       "exif-preferredattributionname": "Pokud užíváte toto dílo, uveďte autora",
        "exif-pngfilecomment": "Poznámky ze souboru PNG",
        "exif-disclaimer": "Vyloučení odpovědnosti",
        "exif-contentwarning": "Upozornění k obsahu",
        "exif-originalimageheight": "Výška obrázku před oříznutím",
        "exif-originalimagewidth": "Šířka obrázku před oříznutím",
        "exif-compression-1": "Nekomprimovaný",
-       "exif-compression-2": "1-rozměrné modifikované Huffmanovo kódování délky běhu CCITT Group 3",
+       "exif-compression-2": "1rozměrné modifikované Huffmanovo kódování délky běhu CCITT Group 3",
        "exif-compression-3": "Kódování faxů CCITT Group 3",
        "exif-compression-4": "Kódování faxů CCITT Group 4",
        "exif-compression-6": "JPEG (starý)",
index 1223dd8..28620ce 100644 (file)
        "permalink": "Dolen barhaol",
        "print": "Argraffu",
        "view": "Darllen",
+       "view-foreign": "Gweld ar $1",
        "edit": "Golygu",
+       "edit-local": "Golygu'r disgrifiad ar y wici hwn",
        "create": "Dechrau",
+       "create-local": "Ychwanegu disgrifiad ar y wici hwn",
        "editthispage": "Golygwch y dudalen hon",
        "create-this-page": "Creu'r dudalen",
        "delete": "Dileu",
        "search-result-score": "Perthnasedd: $1%",
        "search-redirect": "(ailgyfeiriad $1)",
        "search-section": "(adran $1)",
+       "search-file-match": "(yn cyfateb i gynnwys y ffeil)",
        "search-suggest": "Ai am hyn y chwiliwch: $1",
        "search-interwiki-caption": "Chwaer-brosiectau",
        "search-interwiki-default": "Y canlyniadau o $1:",
        "pageswithprop-prophidden-binary": "gwerth y briodwedd ddeuol, a guddiwyd ($1)",
        "doubleredirects": "Ailgyfeiriadau dwbl",
        "doubleredirectstext": "Mae pob rhes yn cynnwys cysylltiad i'r ddau ail-gyfeiriad cyntaf, ynghyd â chyrchfan yr ail ailgyfeiriad. Fel arfer bydd hyn yn rhoi'r gwir dudalen y dylai'r tudalennau cynt gyfeirio ati.\nGosodwyd <del>llinell</del> drwy'r eitemau sydd eisoes wedi eu datrys.",
-       "double-redirect-fixed-move": "Symudwyd [[$1]], a'i droi'n ailgyfeiriad at [[$2]]",
-       "double-redirect-fixed-maintenance": "Yn ailosod yr ailgyfeiriad dwbl o [[$1]] i [[$2]].",
+       "double-redirect-fixed-move": "Symudwyd [[$1]]. Cafodd ei diweddaru'n awtomatig, a'i droi'n ailgyfeiriad i [[$2]].",
+       "double-redirect-fixed-maintenance": "Yn ailosod yr ailgyfeiriad dwbl o [[$1]] i [[$2]], yn rhan o waith cynnal a chadw awtomatig.",
        "double-redirect-fixer": "Y bot ailgyfeirio",
        "brokenredirects": "Ailgyfeiriadau wedi'u torri",
        "brokenredirectstext": "Mae'r ailgyfeiriadau isod yn cysylltu â thudalennau nad ydynt ar gael:",
        "listgrouprights-removegroup-self": "Yn gallu tynnu {{PLURAL:$2|grŵp}} oddi ar eich cyfrif eich hunan: $1",
        "listgrouprights-addgroup-self-all": "Yn gallu ychwanegu'r holl grwpiau at eich cyfrif eich hunan",
        "listgrouprights-removegroup-self-all": "Yn gallu tynnu'r holl grwpiau oddi ar eich cyfrif eich hunan",
+       "trackingcategories-name": "Enw'r neges",
+       "trackingcategories-nodesc": "Dim disgrifiad ar gael.",
+       "trackingcategories-disabled": "Categorïau yr analluogwyd",
        "mailnologin": "Does dim cyfeiriad i'w anfon iddo",
        "mailnologintext": "Rhaid eich bod wedi [[Special:UserLogin|mewngofnodi]]\na bod cyfeiriad e-bost dilys yn eich [[Special:Preferences|dewisiadau]]\ner mwyn medru anfon e-bost at ddefnyddwyr eraill.",
        "emailuser": "Anfon e-bost at y defnyddiwr hwn",
        "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.",
+       "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.",
        "wlheader-enotif": "Galluogwyd hysbysiadau trwy e-bost.",
        "wlheader-showupdated": "Mae tudalennau sydd wedi newid ers i chi eu gweld ddiwethaf wedi'u '''hamlygu'''.",
        "wlnote2": "Isod, fe welwch y newidiadau yn ystod {{PLURAL:$1|yr awr|yr awr|y ddwyawr ddiwethaf|teirawr diwethaf|<strong>$1</strong> awr diwethaf}}, hyd at $2, $3.",
        "contributions-title": "Cyfraniadau'r defnyddiwr $1",
        "mycontris": "Cyfraniadau",
        "contribsub2": "Gan {{GENDER:$3|$1}} ($2)",
+       "contributions-userdoesnotexist": "Nid oes cyfrif o'r enw \"$1\" wedi ei gofrestru yma.",
        "nocontribs": "Heb ddod o hyd i newidiadau gyda'r meini prawf hyn.",
        "uctop": "(cyfredol)",
        "month": "Cyfraniadau hyd at fis (ac yn gynharach):",
index 4619e65..f7a0d29 100644 (file)
        "showhideselectedversions": "Gewählte Versionen zeigen/verstecken",
        "editundo": "rückgängig machen",
        "diff-empty": "(kein Unterschied)",
-       "diff-multi-sameuser": "({{PLURAL:$1|Eine dazwischenliegende Version|$1 dazwischenliegende Versionen}} des gleichen Benutzers werden nicht angezeigt)",
+       "diff-multi-sameuser": "({{PLURAL:$1|Eine dazwischenliegende Version des gleichen Benutzers wird|$1 dazwischenliegende Versionen des gleichen Benutzers werden}} nicht angezeigt)",
        "diff-multi-otherusers": "({{PLURAL:$1|Eine dazwischenliegende Version|$1 dazwischenliegende Versionen}} von {{PLURAL:$2|einem anderen Benutzer|$2 Benutzern}} werden nicht angezeigt)",
        "diff-multi-manyusers": "({{PLURAL:$1|$1 dazwischenliegende Versionen}} von mehr als {{PLURAL:$2|$2 Benutzern}}, die nicht angezeigt werden)",
        "difference-missing-revision": "{{PLURAL:$2|Eine Version|$2 Versionen}} dieser Unterschiedsanzeige ($1) {{PLURAL:$2|wurde|wurden}} nicht gefunden.\n\nDieser Fehler wird normalerweise von einem veralteten Link zur Versionsgeschichte einer Seite verursacht, die zwischenzeitlich gelöscht wurde.\nEinzelheiten sind im [{{fullurl:{{#Special:Log}}/delete|page={{FULLPAGENAMEE}}}} Lösch-Logbuch] vorhanden.",
index c6e8ee9..7d0fab7 100644 (file)
        "download": "bar ke",
        "unwatchedpages": "Pelanê seyrnibiyeyî",
        "listredirects": "Listeya Hetenayışan",
+       "listduplicatedfiles": "Lista dosyayê ke kopyay cı vinayeyan",
        "unusedtemplates": "Şablonê ke nê xebtênê",
        "unusedtemplatestext": "no pel, {{ns:template}} pelê ke pelê binan de nêaseni, ninan keno.",
        "unusedtemplateswlh": "linkanê binî",
        "pageswithprop-prophidden-binary": "Erca dıdıyına ($1) nımneyé",
        "doubleredirects": "Serşıkıtışê dıleti",
        "doubleredirectstext": "no pel pelê ray motışani liste keno.\ngıreyê her satıri de gıreyi; raş motışê yewın u dıyıni esto.\n<del>serê ey nuşteyi</del> safi biye.",
-       "double-redirect-fixed-move": "[[$1]] kırışiya, hıni ray dana [[$2]] no pel",
-       "double-redirect-fixed-maintenance": "raçarnayışo dıletê [[$1]] ra  pela da [[$2]] timarêno",
+       "double-redirect-fixed-move": "[[$1]] kırışiyê.\nHendana otomatikmen bena rocaniye u ray dana  pela da [[$2]].",
+       "double-redirect-fixed-maintenance": "Serkışışteno dıletê [[$1]] ra  pela da [[$2]] vuriyeno.",
        "double-redirect-fixer": "Fixerî redirek bike",
        "brokenredirects": "Hetenayışê vengi",
        "brokenredirectstext": "Redireksiyonê ey ki pelanê hama çiniyeno ra link dano:",
        "deadendpagestext": "Ena pelan ke {{SITENAME}} de zerrî ey de link çini yo.",
        "protectedpages": "Pelê pawıtiyey",
        "protectedpages-indef": "têna pawıteyê bêmuddeti",
-       "protectedpages-summary": "têna pawıteyê têdimî",
+       "protectedpages-summary": "Listeya ena peler newke pawıtiya.Sername de  ena lista rê pawıte vıraştışi rê [[{{#special:ProtectedTitles}}|{{int:protectedtitles}}]] bıvinê.",
        "protectedpages-cascade": "Kilit biyaye ke teyna cascadiye",
        "protectedpages-noredirect": "Hetenayışan bınımnê",
        "protectedpagesempty": "pê ney parametreyan pelê pawiteyi çinî",
        "listgrouprights-removegroup-self-all": "şıma hesabê xo ra eşkeni heme gruban bıveci",
        "listgrouprights-namespaceprotection-namespace": "Caynaman",
        "trackingcategories-name": "Namey mesaci",
+       "trackingcategories-desc": "Qritera kategoriya definayış",
        "trackingcategories-disabled": "Kategoriya feal niya",
        "mailnologin": "adresa erşawıtışi/ruşnayişi çina.",
        "mailnologintext": "qey karberanê binan re e-posta erşawıtış de gani şıma [[Special:UserLogin|hesab aker]]ê [[Special:Preferences|pelê tercihani]] de gani yew e-postayo meqbul bıbo.",
        "protect-locked-blocked": "seviyeya qedexe biyayeyan nevuriyeno.\n'''$1''' eyarê peli:",
        "protect-locked-dblock": "semedê kılidê database ya aktifi şıma neeşkeni seviyeya pawıtışi buvurni.\n'''$1''' eyarê no peli:",
        "protect-locked-access": "Karber hesabê şıma nêşeno  staryaye sewiyey ena peler bıvurno.\nHesıbyayê sazê pela da '''$1''' enêyê:",
-       "protect-cascadeon": "Ena pele nıka kılit biya. Çınki ena pele zerre listeyê {{PLURAL:$1|pele, ki|peleyan, which li}} bınê \"cascading protection\"iyo.\nTı eşkeno seviyeye kılit kerdışi bıvurno, feqat tı nıeşken \"cascading protection\"i bıvurno.",
+       "protect-cascadeon": "Ena pele nıka kılit biya. Çınki ena pele zerre listeyê {{PLURAL:$1|pele ke|peleyan ke}} bınê \"cascading protection\"iyo.\nTı şenê seviyeye kılit kerdışi bıvurnê, feqat tı nêşenê \"cascading protection\"i bıvurno.",
        "protect-default": "Destur bıde karberan pêrune",
        "protect-fallback": "Tenya karberanê be izna \"$1\" rê destur bıde",
        "protect-level-autoconfirmed": "Karberanê neweyan u qeyd-nêbiyaoğan kılit ke",
        "contributions-title": "Dekerdenê karber de $1",
        "mycontris": "İştıraqi",
        "contribsub2": "Qandê {{GENDER:$3|$1}} ($2)",
+       "contributions-userdoesnotexist": "Hesabê karberi \"$1\" qeyd nêbiyo.",
        "nocontribs": "Ena kriteriya de vurnayîş çini yo.",
        "uctop": "(weziyet)",
        "month": "Aşme:",
index fa44243..cad3b0f 100644 (file)
        "jumpto": "Và a:",
        "jumptonavigation": "Navigasiòun",
        "jumptosearch": "Sērca",
-       "view-pool-error": "In cól mumèint ché i terminêl în trôp câregh.\nTrôp utèint în drē serchêr ed vèder cla pàgina ché.\nSpèta soquânt minût préma ed pruvêr incòra a carghêr la pgina.\n\n$1",
+       "view-pool-error": "A s' în deşpiêş mó in cól mumèint ché i terminêl în trôp câregh.\nTrôp utèint în drē serchêr ed vèder cla pàgina ché.\nSpèta soquânt minût préma ed pruvêr incòra a carghêr la pàgina.\n\n$1",
+       "generic-pool-error": "A s' în deşpiêş mó in cól mumèint ché i terminêl în trôp câregh.\nTrôp utèint în drē serchêr ed vèder cla risōrsa ché.\nSpèta soquânt minût préma ed pruvêr incòra a carghêr la risōrsa.",
        "pool-timeout": "Tèimp che gh'é da spetêr préma dal sblôch.",
        "pool-queuefull": "A ghé la fîla, trôpa gînta a vōl vèder la pàgina, prōva tra soquânt minût",
        "pool-errorunknown": "Erōr mìa cgnusû",
index fcf7069..d12a211 100644 (file)
        "enotif_lastvisited": "તમારી પાછલી મુલાકાત પછી થયેલા બધા ફેરફારો માટે $1 જુઓ",
        "enotif_lastdiff": "આ ફેરફાર જોવા $1 જુઓ",
        "enotif_anon_editor": "અનામિ સભ્ય $1",
-       "enotif_body": "પ્રિય $WATCHINGUSERNAME,\n\n$PAGEINTRO $NEWPAGE\n\nફેરફારોનો સારાંશ: $PAGESUMMARY $PAGEMINOREDIT\n\nસંપાદકનો સંપર્ક:\nઇ-મેલ: $PAGEEDITOR_EMAIL\nવિકિ: $PAGEEDITOR_WIKI\n\nજ્યાં સુધી તમે પ્રવેશ કરીને આ પાનાની મુલાકાત નહી લો ત્યાં સુધી તેમાં ભવિષ્યમાં થનાર કોઇ પણ ફેરફારની સૂચના તમને મળશે નહિ. તમે તમારી ધ્યાન સૂચિમાં તમે જોયેલા પાના સંબંધી સૂચનાને લાગતા વિલપોમાં ફેરફાર કરી શકો છો.\n\n\nઆપની વિશ્વાસુ {{SITENAME}} સૂચના પ્રણાલી   \n\n--\nઇમેલ સૂચના પ્રણાલી બદલવા માટે મુલાકાત લો\n{{canonicalurl:{{#special:Preferences}}}}\n\nતમારી ધ્યાનસૂચિની વિક્લ્પ ગોઠવણી માટે મુલાકાત લો\n{{canonicalurl:{{#special:EditWatchlist}}}}\n\nધ્યાનસૂચિમાંથી પાનું હટાવવા માટે મુલાકાત લો\n$UNWATCHURL\n\nમંતવ્યો અને વધુ મદદ માટે\n{{canonicalurl:{{MediaWiki:Helppage}}}}",
+       "enotif_body": "પ્રિય $WATCHINGUSERNAME,\n\n$PAGEINTRO $NEWPAGE\n\nફેરફારોનો સારાંશ: $PAGESUMMARY $PAGEMINOREDIT\n\nસંપાદકનો સંપર્ક:\nઇમેલ: $PAGEEDITOR_EMAIL\nવિકિ: $PAGEEDITOR_WIKI\n\nજ્યાં સુધી તમે પ્રવેશ કરીને આ પાનાની મુલાકાત નહી લો ત્યાં સુધી તેમાં ભવિષ્યમાં થનાર કોઇ પણ ફેરફારની સૂચના તમને મળશે નહિ. તમે તમારી ધ્યાન સૂચિમાં તમે જોયેલા પાના સંબંધી સૂચનાને લાગતા વિકલ્પોમાં ફેરફાર કરી શકો છો.\n\n\nઆપની વિશ્વાસુ {{SITENAME}} સૂચના પ્રણાલી   \n\n--\nઇમેલ સૂચના પ્રણાલી બદલવા માટે, મુલાકાત લો\n{{canonicalurl:{{#special:Preferences}}}}\n\nતમારી ધ્યાનસૂચિની વિક્લ્પ ગોઠવણી માટે, મુલાકાત લો\n{{canonicalurl:{{#special:EditWatchlist}}}}\n\nધ્યાનસૂચિમાંથી પાનું હટાવવા માટે, મુલાકાત લો\n$UNWATCHURL\n\nમંતવ્યો અને વધુ મદદ માટે:\n{{canonicalurl:{{MediaWiki:Helppage}}}}",
        "created": "બનાવ્યું",
        "changed": "બદલ્યું",
        "deletepage": "પાનું હટાવો",
index 618e312..006655e 100644 (file)
        "rc_categories": "Ograniči na kategorije (odvojene znakom  \"|\")",
        "rc_categories_any": "Sve",
        "rc-change-size-new": "$1 {{PLURAL:$1|bajt|bajta|bajtova}} poslije uređivanja",
-       "newsectionsummary": "/* $1 */ Novi odlomak",
+       "newsectionsummary": "/* $1 */ novi odlomak",
        "rc-enhanced-expand": "Pokaži detalje (potreban JavaScript)",
        "rc-enhanced-hide": "Sakrij detalje",
        "rc-old-title": "izvorno ime bilo je \"$1\"",
index 033e091..93e61c0 100644 (file)
        "explainconflict": "Осы бетті сіз өңдей бастағанда басқа біреу бетті өзгерткен.\nЖоғарғы мәтін аумағында қазіргі уақытта бар бет мәтінінен тұрады.\nТөменгі мәтін аумағында сіздің өзгертулеріңіз көрсетіледі.\nӨзгертуіңізді бар мәтінге біріктіруге тура келеді.\n«{{int:savearticle}}» батырмасын басқанда </strong>тек</strong> жоғарғы мәтін аумағы сақталады.",
        "yourtext": "Мәтініңіз",
        "storedversion": "Сақталған нұсқасы",
-       "nonunicodebrowser": "'''ЕСКЕРТУ: Шолғышыңыз Unicode белгілеуіне үйлесімді емес, сондықтан латын емес әріптері бар беттерді өңдеу зіл болу мүмкін.\nЖұмыс істеуге ықтималдық беру үшін, төмендегі кірістіру орнында ASCII емес таңбалар оналтылық кодымен көрсетіледі'''.",
-       "editingold": "'''ЕСКЕТУ: Осы беттің ертерек түзетуін өңдеп жатырсыз.'''\nБұны сақтасаңыз, осы түзетуден кейінгі барлық өзгерістер жойылады.",
-       "yourdiff": "Айырмалар",
+       "nonunicodebrowser": "<strong>Ескерту: Шолғышыңыз Unicode белгілеуіне үйлесімді емес</strong>\nЖұмыс істеуге ықтималдық беру үшін, төмендегі кірістіру орнында ASCII емес таңбалар оналтылық кодымен көрсетіледі.",
+       "editingold": "<strong>Ескерту: Осы беттің ертерек түзетуін өңдеп жатырсыз.</strong>\nБұны сақтасаңыз осы түзетуден кейінгі барлық өзгерістер жоғалады.",
+       "yourdiff": "Айырмашылықтар",
        "copyrightwarning": "Аңғартпа: {{SITENAME}} жобасына берілген барлық үлестер $2 (көбірек ақпарат үшін: $1) құжатына сай деп саналады.\nЕгер жазуыңыздың еркін өңделуін және ақысыз көпшілікке таратуын қаламасаңыз, мында жарияламауыңыз жөн.<br />\nТағы да, бұл мағлұмат өзіңіз жазғаныңызға, не қоғам қазынасынан немесе сондай ашық қорлардан көшірілгеніне бізге уәде бересіз.\n'''АВТОРЛЫҚ ҚҰҚЫҚПЕН ҚОРҒАУҒАН МАҒЛҰМАТТЫ РҰҚСАТСЫЗ ЖАРИЯЛАМАҢЫЗ!'''",
        "copyrightwarning2": "Аңғартпа: {{SITENAME}} жобасына берілген барлық үлестерді басқа үлескерлер өңдеуге, өзгертуге, не аластауға мүмкін.\nЕгер жазуыңыздың еркін өңделуін қаламасаңыз, мында жарияламауыңыз жөн.<br />\nТағы да, бұл мағлұмат өзіңіз жазғаныңызға, не қоғам қазынасынан немесе сондай ашық қорлардан көшірілгеніне бізге уәде бересіз (көбірек ақпарат үшін $1 қужатын қараңыз).\n'''АВТОРЛЫҚ ҚҰҚЫҚПЕН ҚОРҒАУҒАН МАҒЛҰМАТТЫ РҰҚСАТСЫЗ ЖАРИЯЛАМАҢЫЗ!'''",
        "longpageerror": "<strong>ҚАТЕЛІК: Сақтамақшы болған мәтініңіздің көлемі {{PLURAL:$1|килобайт|$1 килобайт}}, ең көбі {{PLURAL:$2|килобайт|$2 килобайт}} рұқсат етілген көлемінен асқан.</strong>\nБұл сақталмайды.",
index 79d50be..44ef876 100644 (file)
        "jumpto": "이동:",
        "jumptonavigation": "둘러보기",
        "jumptosearch": "검색",
-       "view-pool-error": "현재 서버에 과부하가 걸렸습니다.\n너무 많은 사용자가 이 문서를 보려고 하고 있습니다.\n이 문서를 다시 열기 전에 잠시만 기다려주세요.\n\n$1",
+       "view-pool-error": "죄송하지만 서버에 순간 과부하가 걸렸습니다.\n너무 많은 사용자가 이 문서를 보려고 하고 있습니다.\n이 문서를 다시 접근하기 전에 잠시 기다려 주세요.\n\n$1",
+       "generic-pool-error": "죄송하지만 서버에 순간 과부하가 걸렸습니다.\n너무 많은 사용자가 이 자료를 보려고 하고 있습니다.\n이 자료를 다시 접근하기 전에 잠시 기다려 주세요.",
        "pool-timeout": "잠금 대기 중 타임아웃",
        "pool-queuefull": "풀 대기열이 가득 찼습니다",
        "pool-errorunknown": "알 수 없는 오류",
index 03c19dc..23e838d 100644 (file)
        "doubleredirects": "Duebel Viruleedungen",
        "doubleredirectstext": "Op dëser Säit stinn déi Säiten déi op aner Viruleedungssäite viruleeden.\nAn all Rei sti Linken zur éischter an zweeter Viruleedung, souwéi d'Zil vun der zweeter Viruleedung, déi normalerweis déi \"richteg\" Zilsäit ass, op déi déi éischt Viruleedung hilinke soll.\n<del>Duerchgestrachen</del> Linke goufe scho sou verännert datt déi duebel Viruleedung opgeléist ass.",
        "double-redirect-fixed-move": "[[$1]] gouf geréckelt.\nD'Säit gouf automatesch aktualiséiert an et ass elo eng Viruleedung op [[$2]].",
-       "double-redirect-fixed-maintenance": "Flécke vun der duebeler Viruleedung vu(n) [[$1]] op [[$2]].",
+       "double-redirect-fixed-maintenance": "Duebel Viruleedung vu(n) [[$1]] op [[$2]] gouf automatesch an engem 'maintenance job' gefléckt.",
        "double-redirect-fixer": "Verbesserung vu Viruleedungen",
        "brokenredirects": "Futtis Viruleedungen",
        "brokenredirectstext": "Dës Viruleedunge linken op Säiten déi et net gëtt.",
index 140fac1..7a6f496 100644 (file)
@@ -16,7 +16,8 @@
                        "SabineCretella",
                        "Snowdog",
                        "Sprüngli",
-                       "아라"
+                       "아라",
+                       "Ninonino"
                ]
        },
        "tog-underline": "Sutulinia i ligam",
@@ -39,7 +40,7 @@
        "tog-enotifusertalkpages": "Mandem un messagg e-mail quand che gh'è di mudifegh a la mè pàgina di ciaciarad",
        "tog-enotifminoredits": "Màndem un messagg e-mail anca per i mudifegh piscinín",
        "tog-enotifrevealaddr": "Lassa vedè 'l mè indirizz e-mail int i messagg d'avis",
-       "tog-oldsig": "Anteprima de la firma esistenta:",
+       "tog-oldsig": "Firma esistenta:",
        "tog-fancysig": "Trata la firma cume test wiki (senza nissön ligam utumatich)",
        "tog-watchlisthideown": "Sconda i me mudifich dai pagin che a ten d'ögg",
        "tog-watchlisthidebots": "Sconda i mudifich di bot da i pagin che a ten d'ögg",
@@ -49,7 +50,7 @@
        "tog-norollbackdiff": "Mustra mía i ''diffs'' dop che i henn staa ripristinaa cun un rollback",
        "underline-always": "Semper",
        "underline-never": "Mai",
-       "underline-default": "Mantegn i impustazión standard del browser",
+       "underline-default": "Mantegn i impustazión standard del browser o de l'interfàcia",
        "editfont-style": "Stil del font de l'area de mudifega:",
        "editfont-default": "Browser de default",
        "editfont-monospace": "Font mono-spaziaa",
        "vector-action-move": "Sposta",
        "vector-action-protect": "Prutegg",
        "vector-action-undelete": "Recüpera",
-       "vector-action-unprotect": "Desbloca",
+       "vector-action-unprotect": "Càmbia la protesiù",
        "vector-view-create": "Crea",
        "vector-view-edit": "Mudifega",
        "vector-view-history": "Varda la storia",
        "actions": "Azión",
        "namespaces": "Namespace",
        "variants": "Variant",
+       "navigation-heading": "Menù de navigasiù",
        "errorpagetitle": "Erur",
        "returnto": "Turna indré a $1.",
        "tagline": "De {{SITENAME}}",
        "searcharticle": "Và",
        "history": "Crunulugia de la pagina",
        "history_short": "Crunulugìa",
+       "updatedmarker": "mudificàda de l'öltema ólta che l'è stàda ésta",
        "printableversion": "Versión stampàbil",
        "permalink": "Culegament permanent",
        "print": "Stampa",
+       "view": "Varda",
+       "view-foreign": "Arda sö",
        "edit": "Mudifega",
+       "edit-local": "Mudìfica descrisiù locàla",
        "create": "Crea",
+       "create-local": "Zóntega 'na descrisiù locàla",
        "editthispage": "Mudifega quela pagina chi",
        "create-this-page": "Crea quela pagina chi",
        "delete": "Scancela",
        "deletethispage": "Scancela quela pagina chì",
+       "undeletethispage": "Recüpera chèsta pàgina",
        "undelete_short": "Rimet a post {{PLURAL:$1|1 mudifica|$1 mudifigh}}",
+       "viewdeleted_short": "Arda {{PLURAL:$1|'na mudìfica scancelàda|$1 mudìfiche scancelàde}}",
        "protect": "Bloca",
        "protect_change": "cambia",
        "protectthispage": "Prutegg quela pagina chì",
-       "unprotect": "Desbloca",
-       "unprotectthispage": "Tö via la pruteziun",
+       "unprotect": "Càmbia la protesiù",
+       "unprotectthispage": "Càmbia la protesiù de chèsta pàgina",
        "newpage": "Pagina növa",
        "talkpage": "Discüssión",
        "talkpagelinktext": "Ciciarada",
        "articlepage": "Varda l'articul",
        "talk": "Discüssión",
        "views": "Visid",
-       "toolbox": "Arnes",
+       "toolbox": "Arnés",
        "userpage": "Vidè la pàgina del dovrat",
        "projectpage": "Varda la pagina de servizzi",
        "imagepage": "Varda la pagina del file",
        "jumptonavigation": "Navigazión",
        "jumptosearch": "cerca",
        "view-pool-error": "Ne rincress, ma i server a hinn bej caregaa al mument.\nTrop drovat a hinn 'dree pruvà a vardà quela pagina chì.\nPer piasè, specia un mument prima de pruà a vardà anmò quela pagina chì.\n\n$1",
+       "pool-timeout": "Tép scadìt per l'operasiù de blocàgio",
+       "pool-queuefull": "La cùa del \"pool\" l'è piéna",
+       "pool-errorunknown": "Erùr mìa cunusìt",
        "aboutsite": "A prupòsit de {{SITENAME}}",
        "aboutpage": "Project:A pruposit",
        "copyright": "El cuntegnüü a l'è dispunibil sota a una licenza $1.",
index aaee5da..0df04e0 100644 (file)
@@ -38,7 +38,7 @@
        "tog-extendwatchlist": "Išplėsti stebimųjų sąrašą, kad rodytų visus tinkamus keitimus, ne tik pačius naujausius.",
        "tog-usenewrc": "Naudoti patobulintąjį paskutinių keitimų sąrašą (reikia JavaScript)",
        "tog-numberheadings": "Automatiškai numeruoti skyrelius",
-       "tog-showtoolbar": "Rodyti redagavimo įrankinę (JavaScript)",
+       "tog-showtoolbar": "Rodyti redagavimo įrankių juosta",
        "tog-editondblclick": "Puslapių redagavimas dvigubu spustelėjimu (JavaScript)",
        "tog-editsectiononrightclick": "Įjungti skyrelių redagavimą paspaudus skyrelio pavadinimą dešiniuoju pelės klavišu (JavaScript)",
        "tog-watchcreations": "Pridėti puslapius, kuriuos aš sukuriu, į stebimų sąrašą",
@@ -68,6 +68,7 @@
        "tog-showhiddencats": "Rodyti paslėptas kategorijas",
        "tog-norollbackdiff": "Nepaisyti skirtumo atlikus atmetimą",
        "tog-useeditwarning": "Perspėti mane, kai palieku redagavimo puslapį, o jame yra neišsaugotų pakeitimų",
+       "tog-prefershttps": "Prisiregistruojant visada naudokite saugų ryšį",
        "underline-always": "Visada",
        "underline-never": "Niekada",
        "underline-default": "Pagal naršyklės nustatymus",
        "newwindow": "(atsidaro naujame lange)",
        "cancel": "Atšaukti",
        "moredotdotdot": "Daugiau...",
-       "morenotlisted": "Daugiau nėra",
+       "morenotlisted": "Šis sąrašas nėra išsamus.",
        "mypage": "Naudotojo puslapis",
        "mytalk": "Mano aptarimas",
        "anontalk": "Šio IP aptarimas",
        "permalink": "Nuolatinė nuoroda",
        "print": "Spausdinti",
        "view": "Žiūrėti",
+       "view-foreign": "Rodyti $1",
        "edit": "Redaguoti",
+       "edit-local": "Redaguoti vietos aprašymą",
        "create": "Sukurti",
+       "create-local": "Pridėti vietos aprašymą",
        "editthispage": "Redaguoti šį puslapį",
        "create-this-page": "Sukurti šį puslapį",
        "delete": "Trinti",
        "pool-errorunknown": "Nežinoma klaida",
        "aboutsite": "Apie {{SITENAME}}",
        "aboutpage": "Project:Apie",
-       "copyright": "Turinys pateikiamas pagal $1 licenciją.",
+       "copyright": "Turinys pateikiamas pagal  $1  jei nenurodyta kitaip.",
        "copyrightpage": "{{ns:project}}:Autorystės teisės",
        "currentevents": "Naujienos",
        "currentevents-url": "Project:Naujienos",
        "youhavenewmessages": "Jūs turite $1 ($2).",
        "youhavenewmessagesfromusers": "Jūs gavote $1 nuo {{PLURAL:$3|kito vartotojo|$3 vartotojų}} ($2).",
        "youhavenewmessagesmanyusers": "Jūs turite $1 iš daugelio vartotojų ( $2 ) .",
-       "newmessageslinkplural": "{{PLURAL:$1|naują žinutę|naujų žinučių}}",
-       "newmessagesdifflinkplural": "paskutinis {{PLURAL:$1|pakeitimas|pakeitimai}}",
+       "newmessageslinkplural": "{{PLURAL:$1|nauja žinutė|999=naujos žinutės}}",
+       "newmessagesdifflinkplural": "paskutinis {{PLURAL:$1|pakeitimas|999=pakeitimai}}",
        "youhavenewmessagesmulti": "Turite naujų žinučių $1",
        "editsection": "redaguoti",
        "editold": "taisyti",
        "nospecialpagetext": "<strong>Toks specialusis puslapis neegzistuoja</strong>\n\nEgzistuojančių specialiųjų puslapių sąrašą galite rasti [[Special:SpecialPages|specialiųjų puslapių sąraše]].",
        "error": "Klaida",
        "databaseerror": "Duomenų bazės klaida",
+       "databaseerror-query": "Užklausa:$1",
+       "databaseerror-error": "Klaida: $1",
        "laggedslavemode": "Dėmesio: Puslapyje gali nesimatyti naujausių pakeitimų.",
        "readonly": "Duomenų bazė užrakinta",
        "enterlockreason": "Įveskite užrakinimo priežastį, taip pat datą, kada bus atrakinta",
        "gotaccount": "Jau turite paskyrą? '''$1'''.",
        "gotaccountlink": "Prisijunkite",
        "userlogin-resetlink": "Pamiršote savo prisijungimo duomenis?",
-       "userlogin-resetpassword-link": "Nustatykite slaptažodį iš naujo",
+       "userlogin-resetpassword-link": "Pamiršote savo slaptažodį?",
+       "userlogin-helplink2": "Padėti prisijungti",
        "userlogin-createanother": "Sukurti kitą paskyrą",
        "createacct-emailrequired": "Elektroninio pašto adresas",
        "createacct-emailoptional": "Elektroninio pašto adresas (neprivaloma)",
        "accountcreatedtext": "Naudotojo paskyra [[{{ns:User}}:$1|$1]] ([[{{ns:User talk}}:$1|talk]]) buvo sukurta.",
        "createaccount-title": "{{SITENAME}} paskyros kūrimas",
        "createaccount-text": "Projekte {{SITENAME}} ($4) kažkas sukūrė paskyrą „$2“ su slaptažodžiu „$3“ panaudodamas jūsų el. pašto adresą.\nJūs turėtumėte prisijungti ir pasikeisti savo slaptažodį.\n\nJūs galite nekreipti dėmesio į laišką, jei ši paskyra buvo sukurta per klaidą.",
-       "login-throttled": "Jūs pernelyg daug kartų bandėte prisijungti.\nPalaukite prieš bandant vėl.",
+       "login-throttled": "Jūs pernelyg daug kartų bandėte prisijungti.\nPalaukite $1 prieš bandant vėl.",
        "login-abort-generic": "Jūsų prisijungimas buvo nesėkmingas - Nutraukta",
        "loginlanguagelabel": "Kalba: $1",
        "suspicious-userlogout": "Jūsų prašymas atsijungti buvo atmestas, nes, atrodo, jį klaidingai išsiuntė naršyklė arba spartinantysis tarpinis serveris.",
        "newpassword": "Naujas slaptažodis:",
        "retypenew": "Pakartokite naują slaptažodį:",
        "resetpass_submit": "Nustatyti slaptažodį ir prisijungti",
-       "changepassword-success": "Jūsų slaptažodis pakeistas sėkmingai! Dabar prisijungiama...",
+       "changepassword-success": "Jūsų slaptažodis pakeistas sėkmingai!",
        "resetpass_forbidden": "Slaptažodžiai negali būti pakeisti",
        "resetpass-no-info": "Jūs turite būti prisijungęs, kad pasiektumėte puslapį tiesiogiai.",
        "resetpass-submit-loggedin": "Keisti slaptažodį",
        "invalid-content-data": "Neleistinas turinys.",
        "content-not-allowed-here": "Turinys \"$1\" puslapyje [[$2]] nėra leistinas.",
        "editwarning-warning": "Palikdamas šį puslapį jūs prarasite visus padarytus pakeitimus.",
+       "editpage-notsupportedcontentformat-title": "Turinio formatas nepalaikomas",
+       "editpage-notsupportedcontentformat-text": "Turinio formatas $1 nepalaiko turinio modelio $2.",
        "content-model-wikitext": "wikitekstas",
        "content-model-text": "paprastasis tekstas",
        "content-model-javascript": "JavaScript",
        "badsig": "Neteisingas parašas; patikrinkite HTML žymes.",
        "badsiglength": "Jūsų parašas per ilgas.\nJį turi sudaryti ne daugiau kaip $1 {{PLURAL:$1|simbolis|simboliai|simbolių}}.",
        "yourgender": "Lytis:",
-       "gender-unknown": "Nenurodyta",
-       "gender-male": "Vyras",
-       "gender-female": "Moteris",
+       "gender-unknown": "Aš nenoriu pasakyti",
+       "gender-male": "Jis redaguoja wiki puslapius",
+       "gender-female": "Ji redaguoja wiki puslapius",
        "prefs-help-gender": "Pasirinktinai: naudojama teisingam sistemos kreipimuisi į jus.\nŠi informacija yra vieša.",
        "email": "El. paštas",
        "prefs-help-realname": "Tikrasis vardas yra neprivalomas.\nJei jūs jį įvesite, jis bus naudojamas pažymėti jūsų darbą.",
        "prefs-signature": "Parašas",
        "prefs-dateformat": "Datos formatas",
        "prefs-timeoffset": "Laiko skirtumas",
-       "prefs-advancedediting": "Bendras",
+       "prefs-advancedediting": "Bendrosios parinktys",
        "prefs-editor": "Redaktorius",
        "prefs-preview": "Peržiūra",
        "prefs-advancedrc": "Papildomi nustatymai",
        "userrights-no-interwiki": "Jūs neturite leidimo keisti naudotojų teises kituose projektuose.",
        "userrights-nodatabase": "Duomenų bazė $1 neegzistuoja arba yra ne vietinė.",
        "userrights-nologin": "Jūs privalote [[Special:UserLogin|prisijungti]] kaip administratorius, kad galėtumėte priskirti naudotojų teises.",
-       "userrights-notallowed": "Jūsų paskyra neturi teisių priskirti ar panaikinti naudotojų teises.",
+       "userrights-notallowed": "Jūs neturite leidimo įtraukti arba pašalinti vartotojo teisių.",
        "userrights-changeable-col": "Grupės, kurias galite keisti",
        "userrights-unchangeable-col": "Grupės, kurių negalite keisti",
        "userrights-conflict": "Naudotojo teisių konfliktas! Prašome dar kartą taikyti savo keitimus.",
        "right-reupload-shared": "Perrašyti failus bendrojoje failų saugykloje lokaliai",
        "right-upload_by_url": "Įkelti failą iš URL adreso",
        "right-purge": "Išvalyti svetainės podėlį puslapiui be patvirtinimo",
-       "right-autoconfirmed": "Redaguoti pusiau užrakintus puslapius",
+       "right-autoconfirmed": "Netaikyti greičio apribojimų",
        "right-bot": "Laikyti automatiniu procesu",
        "right-nominornewtalk": "Atlikus smulkių keitimų aptarimų puslapiuose įjungia pranešimą apie naujas žinutes",
        "right-apihighlimits": "Mažesni apribojimai API užklausoms",
        "action-viewmyprivateinfo": "peržiūrėti jūsų privačią informaciją",
        "action-editmyprivateinfo": "redaguoti savo privačią informaciją",
        "nchanges": "$1 {{PLURAL:$1|pakeitimas|pakeitimai|pakeitimų}}",
+       "enhancedrc-history": "istorija",
        "recentchanges": "Naujausi keitimai",
        "recentchanges-legend": "Naujausių keitimų parinktys",
        "recentchanges-summary": "Šiame puslapyje yra patys naujausi pakeitimai šiame projekte.",
        "unusedtemplateswlh": "kitos nuorodos",
        "randompage": "Atsitiktinis puslapis",
        "randompage-nopages": "{{PLURAL:$2|Šioje vardų srityje|Šiose vardų srityse}} nėra jokių puslapių: $1.",
+       "randomincategory-selectcategory-submit": "Pirmyn",
        "randomredirect": "Atsitiktinis peradresavimas",
        "randomredirect-nopages": "Vardų srityje „$1“ nėra jokių peradresavimų.",
        "statistics": "Statistika",
        "protectedpages": "Užrakinti puslapiai",
        "protectedpages-indef": "Tik neapibrėžtos apsaugos",
        "protectedpages-cascade": "Tik pakopinė apsauga",
+       "protectedpages-noredirect": "Slėpti peradresavimus",
        "protectedpagesempty": "Šiuo metu nėra apsaugotas joks failas su šiais parametrais.",
+       "protectedpages-timestamp": "Laiko žyma",
        "protectedpages-page": "Puslapis",
        "protectedpages-expiry": "Galioja iki",
        "protectedpages-reason": "Priežastis",
+       "protectedpages-unknown-timestamp": "Nežinomas",
+       "protectedpages-unknown-performer": "Nežinomas vartotojas",
        "protectedtitles": "Apsaugoti pavadinimai",
        "protectedtitlesempty": "Šiuo metu nėra jokių pavadinimų apsaugotų šiais parametrais.",
        "listusers": "Naudotojų sąrašas",
        "undeletedrevisions": "{{PLURAL:$1|atkurta $1 versija|atkurtos $1 versijos|atkurta $1 versijų}}",
        "undeletedrevisions-files": "{{PLURAL:$1|atkurta $1 versija|atkurtos $1 versijos|atkurta $1 versijų}} ir $2 {{PLURAL:$2|failas|failai|failų}}",
        "undeletedfiles": "{{PLURAL:$1|atkurtas $1 failas|atkurti $1 failai|atkurta $1 failų}}",
-       "cannotundelete": "Atkūrimas nepavyko; kažkas kitas pirmas galėjo atkurti puslapį.",
+       "cannotundelete": "Atkūrimas nepavyko:\n$1",
        "undeletedpage": "'''$1 buvo atkurtas'''\n\nPeržiūrėkite [[Special:Log/delete|trynimų sąrašą]], norėdami rasti paskutinių trynimų ir atkūrimų sąrašą.",
        "undelete-header": "Kad sužinotumėte, kurie puslapiai paskiausiai ištrinti, žiūrėkite [[Special:Log/delete|šalinimų sąrašą]].",
        "undelete-search-title": "Panaikintų puslapių paieška",
index 603a483..e7e3fdf 100644 (file)
        "permalink": "Rohy maharitra",
        "print": "Avoaka an-taratasy",
        "view": "Hamaky",
+       "view-foreign": "Jerena eo amin'i $1",
        "edit": "Ovaina",
+       "edit-local": "Hanova ny famisavisana eo an-toerana",
        "create": "Amboarina",
+       "create-local": "Hanampy famisavisana eo an-toerana",
        "editthispage": "Hanova ity pejy ity",
        "create-this-page": "Forony ity pejy ity",
        "delete": "Hamafa",
        "jumptonavigation": "Fikarohana",
        "jumptosearch": "karohy",
        "view-pool-error": "Azafady, be asa ny lohamilina ankehitriny.\nBetsaka loatra ny mpikambana mitady hijery ity pejy ity.\nMiandrasa kely, dia avereno.\n\n$1",
+       "generic-pool-error": "Azafady fa tototry ny asa ny lohamilina amin'izao fotoana izao.\nBetsaka loatra ny mpampiasa manandrana mijery io loharano io.\nAndraso kely dia andramo fanindroany.",
        "pool-timeout": "Fe-potoana voahoatra ho an'ny hidy.",
        "pool-queuefull": "Feno ny lisitry ny asa hatao",
        "pool-errorunknown": "Tsi-fetezana tsy fantatra",
        "gotaccountlink": "Midira",
        "userlogin-resetlink": "Adinonavo ve ny antsipihan'ny fidiranao ?",
        "userlogin-resetpassword-link": "Hadino ny tenimiafina?",
+       "userlogin-helplink2": "Fanampiana amin'ny fidirana",
        "userlogin-loggedin": "Efa tafiditra amin'ny anaran'i {{GENDER:$1|$1}} ianao. Ampiasao ny fôrmiolera eo ambany raha hiditra amin'ny anaran'ny mpikambana hafa.",
        "userlogin-createanother": "Hamorona kaonty hafa",
        "createacct-emailrequired": "Adiresy mailaka :",
        "suspicious-userlogout": "Ny fangataham-pialanao dia tsy nekena satria ohatry ny nalfan'ny mpizahan-tsehatra simba izy na kasy ny proxy.",
        "createacct-another-realname-tip": "Azo tsy atsofoka ny tena anarana.\nRaha misafidy ny hanome azy ianao, ho ampiasaina amin'ny fanehoana ny anjara asan'ilay mpikambana ilay izy.",
        "pt-login": "Hiditra",
+       "pt-login-button": "Hiditra",
        "pt-createaccount": "Hamorona kaonty",
        "pt-userlogout": "Hivoaka",
        "php-mail-error-unknown": "Hadisoana tsy fantatra tao amin'ny tao mial() an'i PHP.",
        "resetpass-temp-password": "Tenimiafina miserana :",
        "resetpass-abort-generic": "Nosakanan'ny itatra (extension) iray ny fanovana tenimiafina.",
        "resetpass-expired": "Efa nitsahatra ny tenimiafinao. Mampidira tenimiafina vaovao hahafahanao miditra.",
-       "resetpass-expired-soft": "Efa nitsahatra ny tenimiafinao, ary tsy maintsy averina ilay izy. Safidio avy hatrany ny tenimiafina, na tsindrio \"Aoka aloha\" raha tsy hanao izany androany",
+       "resetpass-expired-soft": "Efa nitsahatra ny tenimiafinao, ary tsy maintsy averina ilay izy. Safidio avy hatrany ny tenimiafina, na tsindrio \"{{int:resetpass-submit-cancel}}\" raha tsy hanao izany androany",
+       "resetpass-validity-soft": "Tsy ekena ny tenimiafinao : $1\n\nTenimiafina vaovao fidiana, na tsindrio \"{{int:resetpass-submit-cancel}}\" raha hamerina azy amin'ny fotoana hafa.",
        "passwordreset": "Famafana ary famerenana ny tenimiafina",
        "passwordreset-text-one": "Fenoy ity fôrmiolera ity mba hamerenana ny tenimiafinao",
        "passwordreset-text-many": "{{PLURAL:$1|Fenoy ny saha mba hahazoanao tenimiafina vonjimaika.}}",
        "content-not-allowed-here": "Votoatiny ''$1'' voarara eo amin'ny pejy [[$2]]",
        "editwarning-warning": "Mety hahavery ny fanovana nataonao ny fialanao amin'ity pejy ity.\nRaha tafiditra ianao dia azonao esorina ity fampitandremana ity ao amin'ny fizarana \"{{int:prefs-editing}}\" ao amin'ny safidinao.",
        "editpage-notsupportedcontentformat-title": "Tsy zaka io andrefim-botoatiny io",
+       "editpage-notsupportedcontentformat-text": "Tsy zakan'ny maodelim-botoatiny $1 ny firafi-botoatiny $1",
        "content-model-wikitext": "wiki-soratra",
        "content-model-text": "soratra tsotra",
        "content-model-javascript": "JavaScript",
        "listgrouprights-removegroup-self": "Afaka manala ny tenany amin'ny vondrona{{PLURAL:$2}} : $1",
        "listgrouprights-addgroup-self-all": "Manampy ny vondrom-pikambana rehetra amin'ny kaontiny",
        "listgrouprights-removegroup-self-all": "Manala ny vondrom-pikambana rehetra amin'ny kaontiny",
+       "listgrouprights-namespaceprotection-header": "Fifehezana amin'ny valan'anarana",
+       "listgrouprights-namespaceprotection-namespace": "Valan'anarana",
+       "listgrouprights-namespaceprotection-restrictedto": "Zo ahafahan'ny mpikambana manova",
+       "trackingcategories": "Sokajy fanarahana",
+       "trackingcategories-msg": "Sokajy fanarahana",
+       "trackingcategories-name": "Anaran-kafatra",
+       "trackingcategories-nodesc": "Tsy ahitana famaritana.",
+       "trackingcategories-disabled": "Tsy nalefa ho ampiasaina ilay sokajy",
        "mailnologin": "Tsy misy adiresy handefasana ny tenimiafina",
        "mailnologintext": "Mila [[Special:UserLogin|miditra]] ianao sady manana imailaka mandeha sy voamarina ao amin'ny [[Special:Preferences|mombamomba anao]] vao afaka mandefa imailaka amin'ny mpikambana hafa.",
        "emailuser": "Andefaso imailaka io mpikambana io",
index 082a2c1..e991760 100644 (file)
@@ -9,7 +9,8 @@
                        "Shirayuki",
                        "Сай",
                        "Санюн Вадик",
-                       "아라"
+                       "아라",
+                       "Sergey Ivanov"
                ]
        },
        "tog-underline": "Кузе кылвер-влакым ӱлычын удыралаш?",
        "faq": "ЧӱВаЙо (Чӱчкыдын вашлиялтше йодыш-влак)",
        "vector-action-addsection": "У ӱжашым тӱҥалаш",
        "vector-action-delete": "Шӧраш",
-       "vector-action-move": "Ð\9aÑ\83Ñ\81аÑ\80аш",
+       "vector-action-move": "Ð\9bӱмÑ\8bм Ð²Ð°Ñ\88Ñ\82алÑ\82аш",
        "vector-action-protect": "Тӧрлатымаш деч аралаш",
        "vector-action-undelete": "Шӧрымым пӧртылаш",
        "vector-action-unprotect": "Оролым вашталташ",
        "grouppage-bot": "{{ns:project}}:Бот-влак",
        "grouppage-sysop": "{{ns:project}}:Сайтвиктарыше-влак",
        "newuserlogpage": "У пайдаланыше регистрацийым эртарыме журнал",
-       "rightslog": "Ð\9fайдаланÑ\8bÑ\88Ñ\8bн ÐºÐµÑ\80Ñ\82Ñ\8bж Ð½ÐµÑ\80ген журнал",
+       "rightslog": "УÑ\87аÑ\81Ñ\82никÑ\8bн Ð¿Ñ\80аваже-влакÑ\8bм Ð¾Ð½Ñ\87Ñ\8bкÑ\82Ñ\8bÑ\88о журнал",
        "action-edit": "тиде лаштыкым тӧрлаташ",
        "nchanges": "$1 {{PLURAL:$1|тӧрлатымаш}}",
        "recentchanges": "Пытартыш тӧрлатымаш-влак",
        "usercreated": "$1, $2 шагатлан {{GENDER:$3|регистрацийым эртен|регистрацийым эртен}}",
        "newpages": "У лаштык-влак",
        "newpages-username": "Пайдаланышын лӱмжӧ:",
-       "move": "Ð\9aÑ\83Ñ\81аÑ\80аш",
-       "movethispage": "Тиде Ð»Ð°Ñ\88Ñ\82Ñ\8bкÑ\8bм ÐºÑ\83Ñ\81аÑ\80аш",
+       "move": "Ð\9bӱмÑ\8bм Ð²Ð°Ñ\88Ñ\82алÑ\82аш",
+       "movethispage": "Тиде Ð»Ð°Ñ\88Ñ\82Ñ\8bкÑ\8bн Ð»Ó±Ð¼Ð¶Ñ\8bм Ð²Ð°Ñ\88Ñ\82алÑ\82аш",
        "pager-newer-n": "{{PLURAL:$1|1=вес|вес}}",
        "pager-older-n": "{{PLURAL:$1|1=ончычсо|ончычсо}}",
        "booksources": "Негызым пыштыше кнага-влак",
        "blocklogentry": "[[$1]] лан йӧным петрен $2 $3 мучашлалтеш",
        "unblocklogentry": "$1лан йӧным почмо",
        "block-log-flags-nocreate": "у пайдаланыше-влаклан регистрацийым чактарыме",
-       "move-page-legend": "Ð\9bаÑ\88Ñ\82Ñ\8bкÑ\8bм ÐºÑ\83Ñ\81аÑ\80аш",
+       "move-page-legend": "Ð\9bаÑ\88Ñ\82Ñ\8bкÑ\8bн Ð»Ó±Ð¼Ð¶Ñ\8bм Ð²Ð°Ñ\88Ñ\82алÑ\82Ñ\8bмаш",
        "movepagetext": "Ӱлыл формо дене пайдаланен, тый лаштыкын лӱмым вашталтен кертат, тудын вашталтыме эртымгорныже у верыш кусарыме.\nТошто лӱмыштӧ у лӱмыш колтымо лаштык кодеш.\nТый тошто лӱмыш колтымо лаштык-влакым шке семын вашталтке кертат.\nТый тидым ынет ыште гын, [[Special:DoubleRedirects|кокытан]] да [[Special:BrokenRedirects|пудыргышо вес вере колтымашым]] терге.\nТый палемдыме верыш кылвер-влаклан шуйнымылан да тушко ончыктымылан вуйын шогет.\n\nШотыш нал: кунам у лӱман лаштык уло, тудо '''ок''' кусаралт. Тыге огыл, кунам лаштык вес вере кусаралтеш але тудо яра да вашталтымаш эртымгорныже уке.\nТый лаштыкым йонгылыш кусаренат гын менгешла тудым тошто лӱмыш кусарен кертат, но тый уже улшо лаштыкым ӱштын от керт, манын ончыкта.\n\n'''Тӱтко лий!'''\nЧӱчкыдын кучылтмо лаштыклан тиде кугу вашталтышым ыштен кертеш;\nУмбаке кайыме деч ончыч шоналте, тый тидын деч вара лиймым умылет.",
        "movepagetalktext": "Тиде лаштыкын каҥашымаш лаштык шке семын огеш кусно, '''тидлан амалже:'''\n*Тыгай лӱман яра огыл каҥашымаш лаштык уло ала\n*Ӱлыч кайыкым от корангде.\n\nТыгай годым тылат лаштыкым шке кидет дене кусараш але иктеш ушнаш кӱлеш.",
-       "movearticle": "Тиде Ð»Ð°Ñ\88Ñ\82Ñ\8bкÑ\8bм ÐºÑ\83Ñ\81аÑ\80аш:",
+       "movearticle": "Тиде Ð»Ð°Ñ\88Ñ\82Ñ\8bкÑ\8bн Ð»Ó±Ð¼Ð¶Ñ\8bм Ð²Ð°Ñ\88Ñ\82алÑ\82аш:",
        "newtitle": "У лӱм:",
        "move-watch": "Тиде лаштыкым эскераш",
-       "movepagebtn": "Ð\9bаÑ\88Ñ\82Ñ\8bкÑ\8bм ÐºÑ\83Ñ\81аÑ\80аш",
+       "movepagebtn": "Ð\9bаÑ\88Ñ\82Ñ\8bкÑ\8bн Ð»Ó±Ð¼Ð¶Ñ\8bм Ð²Ð°Ñ\88Ñ\82алÑ\82аш",
        "pagemovedsub": "Кусарымаш сайын эртен",
        "movepage-moved": "'''\"$1\" лаштыкым \"$2\" лаштыкыш кусарыме'''",
        "movepage-moved-redirect": "Вес вере колтымаш ыштыме.",
        "movepage-moved-noredirect": "Вес вере колтымаш ыштыме огыл.",
        "articleexists": "Тыгай лӱман лаштык уло але тиде лӱмым кучылташ огеш лий. Вес лӱмым ойыро.",
-       "movetalk": "Ð\9aаҥаÑ\88Ñ\8bмаÑ\88 Ð»Ð°Ñ\88Ñ\82Ñ\8bкÑ\8bм ÐºÑ\83Ñ\81аÑ\80аш",
+       "movetalk": "Ð\9aаҥаÑ\88Ñ\8bмаÑ\88 Ð»Ð°Ñ\88Ñ\82Ñ\8bкÑ\8bн Ð»Ó±Ð¼Ð¶Ñ\8bм Ð²Ð°Ñ\88Ñ\82алÑ\82аш",
        "movelogpage": "Кусарыме нерген журнал",
        "movereason": "Амал:",
        "revertmove": "мӧҥгешла пӧртылаш",
        "tooltip-ca-history": "Лаштыкын ондаксе тӧрлатымаш",
        "tooltip-ca-protect": "Тиде лаштыкым тӧрлатымаш деч аралаш",
        "tooltip-ca-delete": "Тиде лаштыкым шӧраш",
-       "tooltip-ca-move": "Тиде Ð»Ð°Ñ\88Ñ\82Ñ\8bкÑ\8bм ÐºÑ\83Ñ\81аÑ\80аш",
+       "tooltip-ca-move": "Тиде Ð»Ð°Ñ\88Ñ\82Ñ\8bкÑ\8bн Ð»Ó±Ð¼Ð¶Ñ\8bм Ð²Ð°Ñ\88Ñ\82алÑ\82аш",
        "tooltip-ca-watch": "Тиде лаштыкым тыйын эскерыме лӱмерыш ешараш",
        "tooltip-ca-unwatch": "Тиде лаштыкым тыйын эскерымашет гыч кораҥдаш",
        "tooltip-search": "{{SITENAME}} лаштыкыште кычалаш",
index 6a61571..745d0c8 100644 (file)
        "rcnotefrom": "Доорх нь '''$2'''-с хойших өөрчлөлтүүд ('''$1''' хүртэлхийг харуулав) юм.",
        "rclistfrom": "$3 $2-с хойших шинэ засваруудыг үзүүлэх",
        "rcshowhideminor": "Бага зэргийн засваруудыг $1",
+       "rcshowhideminor-show": "үзүүлэх",
+       "rcshowhideminor-hide": "нуух",
        "rcshowhidebots": "Роботуудыг $1",
        "rcshowhideliu": "Нийт $1 бүртгэгдсэн хэрэглэгчид",
        "rcshowhideliu-show": "үзүүлэх",
        "rc-enhanced-expand": "Дэлгэрэнгүй мэдээллийг үзүүлэх (ЖаваСкрипт хэрэглэгдэнэ)",
        "rc-enhanced-hide": "Дэлгэрэнгүй мэдээллийг нуух (ЖаваСкрипт хэрэглэгдэнэ)",
        "rc-old-title": "Анх өгсөн гарчиг нь \"$1\"",
-       "recentchangeslinked": "Холбогдох өөрчлөлтүүд",
-       "recentchangeslinked-feed": "Холбогдох өөрчлөлтүүд",
-       "recentchangeslinked-toolbox": "Холбогдох өөрчлөлтүүд",
+       "recentchangeslinked": "Өөрчлөгдчихсөн эсэх",
+       "recentchangeslinked-feed": "Өөрчлөгдчихсөн эсэх",
+       "recentchangeslinked-toolbox": "Өөрчлөгдчихсөн эсэх",
        "recentchangeslinked-title": "\"$1\"-тай холбоотой засварууд",
        "recentchangeslinked-summary": "Энэ хуудас бол тодорхой хуудаснаас (эсвэл тодорхой ангиллын доторх хуудсууд) холбогдсон хуудсуудад хийгдсэн өөрчлөлтийн жагсаалт юм.\nТаны [[Special:Watchlist|хянах жагсаалтанд]] буй хуудсууд '''тодруулагдсан''' байгаа.",
        "recentchangeslinked-page": "Хуудасны нэр:",
        "undelete-error-long": "Дараах файлыг сэргээхэд алдаа гарлаа:\n\n$1",
        "undelete-show-file-confirm": "$2-ий $3 дахь \"<nowiki>$1</nowiki>\" файлын устгагдсан засварыг үзмээр байгаадаа итгэлтэй байна уу?",
        "undelete-show-file-submit": "Тийм",
-       "namespace": "Ð\9dÑ\8dÑ\80ний Ð·Ð°Ð¹:",
+       "namespace": "Ð¥Ñ\83Ñ\83даÑ\81нÑ\8b Ñ\82Ó©Ñ\80өл:",
        "invert": "Зааснаас бусад",
        "namespace_association": "Заасантай холбоотой",
        "blanknamespace": "(Гол)",
        "import-interwiki-history": "Энэ хуудсын бүх хувилбаруудын түүхийг хуулах",
        "import-interwiki-templates": "Бүх загварыг оруулах",
        "import-interwiki-submit": "Импортлох",
-       "import-interwiki-namespace": "Зорьсон нэрний зай:",
+       "import-interwiki-namespace": "Зорьсон хуудсын төрөл:",
        "import-upload-filename": "Файлын нэр:",
        "import-comment": "Тайлбар:",
        "importtext": "[[Special:Export|экспорт багажийг]]  ашиглан файлыг эх үүсвэр викигээс татаад, өөрийн дискэнд хадгалж, энд оруулна уу.",
index 38ce832..a4a4cdd 100644 (file)
        "loginlanguagelabel": "ਭਾਸ਼ਾ: $1",
        "suspicious-userlogout": "ਤੁਹਾਡੀ ਵਿਦਾਇਗੀ ਦੀ ਬੇਨਤੀ ਨਕਾਰ ਦਿੱਤੀ ਗਈ ਕਿਉਂਕਿ ਲੱਗਦਾ ਹੈ ਕਿ ਇਹ ਕਿਸੇ ਟੁੱਟੇ ਹੋਏ ਬਰਾਊਜ਼ਰ ਜਾਂ ਕੈਸ਼ ਹੋਈ ਪ੍ਰਾਕਸੀ ਤੋਂ ਭੇਜੀ ਗਈ ਸੀ।",
        "createacct-another-realname-tip": "ਅਸਲੀ ਨਾਂ ਚੋਣਵਾਂ ਹੈ।\nਜੇਕਰ ਤੁਸੀਂ ਇਹ ਦਿੱਤਾ ਹੈ ਤਾਂ ਤੁਹਾਡੇ ਕੰਮ ਵਾਸਤੇ ਗੁਣ ਦੇ ਤੌਰ ਉੱਤੇ ਵਰਤਿਆ ਜਾਵੇਗਾ।",
+       "pt-login": "ਲਾਗ ਇਨ",
        "pt-login-button": "ਲਾਗ ਇਨ",
+       "pt-createaccount": "ਖਾਤਾ ਬਣਾਓ",
+       "pt-userlogout": "ਲਾਗ ਆਉਟ",
        "php-mail-error-unknown": "PHP ਦੇ ਮੇਲ() ਕਰਜ ਵਿੱਚ ਅਣਜਾਣ ਦੋਸ਼",
        "user-mail-no-addy": "ਬਿਨਾਂ ਈ-ਮੇਲ ਪਤਾ ਦਿੱਤੇ ਈ-ਮੇਲ ਭੇਜਣ ਦੀ ਕੋਸ਼ਿਸ਼ ਕੀਤੀ।",
        "user-mail-no-body": "ਖ਼ਾਲੀ ਜਾਂ ਬਹੁਤੀ ਛੋਟੀ ਸਮੱਗਰੀ ਨਾਲ਼ ਈਮੇਲ ਭੇਜਣ ਦੀ ਕੋਸ਼ਿਸ਼ ਕੀਤੀ ਗਈ",
index 144227e..f25121d 100644 (file)
        "doubleredirects": "Podwójne przekierowania",
        "doubleredirectstext": "Lista zawiera strony z przekierowaniami do stron, które przekierowują do innej strony.\nKażdy wiersz zawiera linki do pierwszego i drugiego przekierowania oraz link, do którego prowadzi drugie przekierowanie. Ostatni link prowadzi zazwyczaj do strony, do której powinna w rzeczywistości przekierowywać pierwsza strona.\n<del>Skreślenie</del> oznacza naprawienie przekierowania.",
        "double-redirect-fixed-move": "Naprawa podwójnego przekierowania [[$1]] → [[$2]]",
-       "double-redirect-fixed-maintenance": "Naprawiono podwójne przekierowanie z [[$1]] do [[$2]].",
+       "double-redirect-fixed-maintenance": "Automatyczna naprawa podwójnego przekierowania podczas prac konserwacyjnych z [[$1]] na [[$2]].",
        "double-redirect-fixer": "Naprawiacz przekierowań",
        "brokenredirects": "Zerwane przekierowania",
        "brokenredirectstext": "Poniższe przekierowania wskazują na nieistniejące strony.",
index 6f1e82b..26fffc5 100644 (file)
        "cantrollback": "As peul pa tornesse a na version pì veja: l'ùltima modìfica a l'ha fala l'ùnich utent che a l'abia travajà a cost artìcol-sì.",
        "alreadyrolled": "As peulo pa anulé j'ultime modìfiche ëd [[:$1]] fàite da [[User:$2|$2]] ([[User talk:$2|Talk]]{{int:pipe-separator}}[[Special:Contributions/$2|{{int:contribslink}}]]);\ncheidun d'àutr a l'ha già modificà ò pura anulà le modìfiche a sta pàgina-sì.\n\nL'ùltima modìfica a la pàgina a l'é stàita fàita da [[User:$3|$3]] ([[User talk:$3|Talk]]{{int:pipe-separator}}[[Special:Contributions/$3|{{int:contribslink}}]]).",
        "editcomment": "Ël coment dla modìfica a l'era: \"''$1''\".",
-       "revertpage": "Gavà via le modìfiche Ã«d [[Special:Contributions/$2|$2]] ([[User talk:$2|ciaciarade]]), Ã«l contnù a l'é stàit tirà andarè a l'ùltima version dl'utent [[User:$1|$1]]",
+       "revertpage": "Gavà via le modìfiche Ã«d [[Special:Contributions/$2|$2]] ([[User talk:$2|ciaciarade]]), Ã«l contnù a l'é stàit tirà andaré a l'ùltima version dl'utent [[User:$1|$1]]",
        "revertpage-nouser": "Révoca dle modìfiche da part ëd n'utent ëstërmà a l'ùltima version ëd {{GENDER:$1|[[User:$1|$1]]}}",
        "rollback-success": "Modìfiche anulà da $1; tirà andré a l'ùltima version da $2.",
        "sessionfailure-title": "Eror ëd session",
index 86737f4..1a4e7f5 100644 (file)
        "invalid-content-data": "Error message indicating that the page's content can not be saved because it is invalid. This may occurr for content types with internal consistency constraints.",
        "content-not-allowed-here": "Error message indicating that the desired content model is not supported in given localtion.\n* $1 - the human readable name of the content model: {{msg-mw|Content-model-wikitext}}, {{msg-mw|Content-model-javascript}}, {{msg-mw|Content-model-css}} or {{msg-mw|Content-model-text}}\n* $2 - the title of the page in question",
        "editwarning-warning": "Uses {{msg-mw|Prefs-editing}}",
-       "editpage-notsupportedcontentformat-title": "Title of error page shown when using an incompatible format on EditPage",
-       "editpage-notsupportedcontentformat-text": "Error message shown when using an incompatible format on EditPage. Parameters:\n* $1 - the format id\n* $2 - the content model name",
+       "editpage-notsupportedcontentformat-title": "Title of error page shown when using an incompatible format on EditPage.\n\nUsed as title for the following error message:\n* {{msg-mw|Editpage-notsupportedcontentformat-text}}.",
+       "editpage-notsupportedcontentformat-text": "Error message shown when using an incompatible format on EditPage.\n\nThe title for this error is {{msg-mw|Editpage-notsupportedcontentformat-title}}.\n\nParameters:\n* $1 - the format id\n* $2 - the content model name",
        "content-model-wikitext": "Name for the wikitext content model, used when decribing what type of content a page contains.\n\nThis message is substituted in:\n*{{msg-mw|Bad-target-model}}\n*{{msg-mw|Content-not-allowed-here}}",
        "content-model-text": "Name for the plain text content model, used when decribing what type of content a page contains.\n\nThis message is substituted in:\n*{{msg-mw|Bad-target-model}}\n*{{msg-mw|Content-not-allowed-here}}\n{{Identical|Plain text}}",
        "content-model-javascript": "Name for the JavaScript content model, used when decribing what type of content a page contains.\n\nThis message is substituted in:\n*{{msg-mw|Bad-target-model}}\n*{{msg-mw|Content-not-allowed-here}}",
        "pageinfo-templates": "The list of templates transcluded within the page. Parameters:\n* $1 is the number of templates transcluded within the current page.\nSee also:\n* {{msg-mw|Pageinfo-transclusions}}",
        "pageinfo-transclusions": "The list of pages on which this page is transcluded. Parameters:\n* $1 is the number of pages the current page is transcluded on.\nSee also:\n* {{msg-mw|Pageinfo-templates}}",
        "pageinfo-footer": "{{ignored}}Custom text for the bottom of the info page (action=info).",
-       "pageinfo-toolboxlink": "Information link for the page (like 'What links here', but to action=info for the current page instead)",
+       "pageinfo-toolboxlink": "Information link for the page (like \"What links here\", but to action=info for the current page instead).\n{{Identical|Page information}}",
        "pageinfo-redirectsto": "Key for the row shown if this page is a redirect. Verb. See [{{canonicalurl:w:Main_page|action=info}} example].",
        "pageinfo-redirectsto-info": "Text to put in parentheses for the link to the action=info of the redirect target.\n{{Identical|Info}}",
        "pageinfo-contentpage": "Key for the row shown on [{{fullurl:News|action=info}} action=info] if this page is [[mw:Manual:Article count|counted as a content page]]",
        "metadata-help": "This message is followed by a table with metadata.",
        "metadata-expand": "On an image description page, there is mostly a table containing data (metadata) about the image. The most important data are shown, but if you click on this link, you can see more data and information. For the link to hide back the less important data, see {{msg-mw|Metadata-collapse}}.",
        "metadata-collapse": "On an image description page, there is mostly a table containing data (metadata) about the image. The most important data are shown, but if you click on the link {{msg-mw|Metadata-expand}}, you can see more data and information. This message is for the link to hide back the less important data.",
-       "metadata-fields": "{{doc-important|覅翻译列表项,只翻译上头个文本!畀 \"<code>* make</code>\" 搭别个列表项正确保留。}}\nThe sentences are for explanation only and are not shown to the user.",
+       "metadata-fields": "{{doc-important|Do not translate list items, only translate the text! So leave \"<code>* make</code>\" and the other items exactly as they are.}}\nThe sentences are for explanation only and are not shown to the user.",
        "metadata-langitem": "{{optional}}\nThis is used for constructing the list of translations when a metadata property is translated into multiple languages.\n\nParameters:\n* $1 - the value of the property (in one language)\n* $2 - the language name that this translation is for (or language code if language name cannot be determined)\n* $3 - (Unused) the language code",
        "metadata-langitem-default": "{{optional}}\nSimilar to \"metadata-langitem\" but for the case where a multilingual property has a default specified that does not specify what language the default is in. $1 is the value of the property.",
        "exif-imagewidth": "Exif is a format for storing metadata in image files. See this [[w:Exchangeable_image_file_format|Wikipedia article]] and the example at the bottom of [[commons:File:Phalacrocorax-auritus-020.jpg|this page on Commons]]. The tags are explained [http://www.awaresystems.be/imaging/tiff/tifftags/privateifd/exif.html briefly] and [http://www.kodak.com/global/plugins/acrobat/en/service/digCam/exifStandard2.pdf in further detail].\n{{Identical|Width}}",
        "exif-componentsconfiguration": "Exif is a format for storing metadata in image files. See this [[w:Exchangeable_image_file_format|Wikipedia article]] and the example at the bottom of [[commons:File:Phalacrocorax-auritus-020.jpg|this page on Commons]]. The tags are explained [http://www.awaresystems.be/imaging/tiff/tifftags/privateifd/exif.html briefly] and [http://www.kodak.com/global/plugins/acrobat/en/service/digCam/exifStandard2.pdf in further detail].\n\nThis contains how the information in the picture is stored. This is most commonly Y, Cr, Cb to specify luma, red, blue. RGB is also possible to specify Red, Green, Blue.\n{{Related|Exif-componentsconfiguration}}",
        "exif-compressedbitsperpixel": "Exif is a format for storing metadata in image files. See this [[w:Exchangeable_image_file_format|Wikipedia article]] and the example at the bottom of [[commons:File:Phalacrocorax-auritus-020.jpg|this page on Commons]]. The tags are explained [http://www.awaresystems.be/imaging/tiff/tifftags/privateifd/exif.html briefly] and [http://www.kodak.com/global/plugins/acrobat/en/service/digCam/exifStandard2.pdf in further detail].",
        "exif-pixelydimension": "Exif is a format for storing metadata in image files. See this [[w:Exchangeable_image_file_format|Wikipedia article]] and the example at the bottom of [[commons:File:Phalacrocorax-auritus-020.jpg|this page on Commons]]. The tags are explained [http://www.awaresystems.be/imaging/tiff/tifftags/privateifd/exif.html briefly] and [http://www.kodak.com/global/plugins/acrobat/en/service/digCam/exifStandard2.pdf in further detail].\n{{Identical|Image width}}",
-       "exif-pixelxdimension": "Exif is a format for storing metadata in image files. See this [[w:Exchangeable_image_file_format|Wikipedia article]] and the example at the bottom of [[commons:File:Phalacrocorax-auritus-020.jpg|this page on Commons]]. The tags are explained [http://www.awaresystems.be/imaging/tiff/tifftags/privateifd/exif.html briefly] and [http://www.kodak.com/global/plugins/acrobat/en/service/digCam/exifStandard2.pdf in further detail].",
+       "exif-pixelxdimension": "Exif is a format for storing metadata in image files. See this [[w:Exchangeable_image_file_format|Wikipedia article]] and the example at the bottom of [[commons:File:Phalacrocorax-auritus-020.jpg|this page on Commons]]. The tags are explained [http://www.awaresystems.be/imaging/tiff/tifftags/privateifd/exif.html briefly] and [http://www.kodak.com/global/plugins/acrobat/en/service/digCam/exifStandard2.pdf in further detail].\n{{Identical|Image height}}",
        "exif-usercomment": "Exif is a format for storing metadata in image files. See this [[w:Exchangeable_image_file_format|Wikipedia article]] and the example at the bottom of [[commons:File:Phalacrocorax-auritus-020.jpg|this page on Commons]]. The tags are explained [http://www.awaresystems.be/imaging/tiff/tifftags/privateifd/exif.html briefly] and [http://www.kodak.com/global/plugins/acrobat/en/service/digCam/exifStandard2.pdf in further detail].\n\nComments by user. Sometimes used like ImageDescription when the ImageDescription contained non-ascii characters. (Technically ImageDescription is supposed to contain ascii characters. In practise utf-8 is used in ImageDescription, so this field isn't used too much.)",
        "exif-relatedsoundfile": "Exif is a format for storing metadata in image files. See this [[w:Exchangeable_image_file_format|Wikipedia article]] and the example at the bottom of [[commons:File:Phalacrocorax-auritus-020.jpg|this page on Commons]]. The tags are explained [http://www.awaresystems.be/imaging/tiff/tifftags/privateifd/exif.html briefly] and [http://www.kodak.com/global/plugins/acrobat/en/service/digCam/exifStandard2.pdf in further detail].\n\nSome cameras offer the option to record an audio \"memo\" for the photo they just took. If the user did that, the name of the file is labelled with this message.",
        "exif-datetimeoriginal": "Exif is a format for storing metadata in image files. See this [[w:Exchangeable_image_file_format|Wikipedia article]] and the example at the bottom of [[commons:File:Phalacrocorax-auritus-020.jpg|this page on Commons]]. The tags are explained [http://www.awaresystems.be/imaging/tiff/tifftags/privateifd/exif.html briefly] and [http://www.kodak.com/global/plugins/acrobat/en/service/digCam/exifStandard2.pdf in further detail].\n\nThe date and time when the original image data was generated. For example if it was a painting from 1773, scanned in to a computer in 2007, the datetimeoriginal would be 1773 and {{msg-mw|exif-datetimedigitized}} would have the 2007 date.",
index 1f07d52..5a26e27 100644 (file)
        "recentchanges-label-newpage": "Нова страница",
        "recentchanges-label-minor": "Мања измена",
        "recentchanges-label-bot": "Ову измену је направио бот",
-       "recentchanges-label-unpatrolled": "Ова измена још није прегледана",
-       "recentchanges-label-plusminus": "Промена величине странице (у бајтовима)",
+       "recentchanges-label-unpatrolled": "Ова измена још није патролирана",
+       "recentchanges-label-plusminus": "Промена величине странице у бајтовима",
        "recentchanges-legend-heading": "'''Легенда:'''",
        "recentchanges-legend-newpage": "([[Special:NewPages|списак нових страница]])",
        "rcnotefrom": "Испод су измене од <strong>$2</strong> (до <strong>$1</strong> измена).",
index 66c7f40..a0e1228 100644 (file)
        "recentchanges-label-newpage": "Nova stranica",
        "recentchanges-label-minor": "Manja izmena",
        "recentchanges-label-bot": "Ovu izmenu je napravio bot",
-       "recentchanges-label-unpatrolled": "Ova izmena još nije pregledana",
-       "recentchanges-label-plusminus": "Promena veličine stranice (u bajtovima)",
+       "recentchanges-label-unpatrolled": "Ova izmena još nije patrolirana",
+       "recentchanges-label-plusminus": "Promena veličine stranice u bajtovima",
        "recentchanges-legend-heading": "'''Legenda:'''",
        "recentchanges-legend-newpage": "([[Special:NewPages|spisak novih stranica]])",
        "rcnotefrom": "Ispod su izmene od <b>$2</b> (do <b>$1</b> izmena).",
index 71af36c..b32046a 100644 (file)
                        "아라"
                ]
        },
-       "tog-underline": "é\80£çµ\90å\8a åº\95ç·\9aï¼\9a",
+       "tog-underline": "連結底線:",
        "tog-hideminor": "隱藏最近更改中的小修改",
        "tog-hidepatrolled": "隱藏最近更改中巡查過的編輯",
        "tog-newpageshidepatrolled": "隱藏新頁面清單中巡查過的頁面",
        "tog-extendwatchlist": "展開監視列表以顯示所有更改,不只是最近的",
        "tog-usenewrc": "在最近更改和監視列表中整合同一頁的修改",
        "tog-numberheadings": "標題自動編號",
-       "tog-showtoolbar": "顯示編輯工具",
-       "tog-editondblclick": "雙擊編輯頁面",
-       "tog-editsectiononrightclick": "å\85\81許å\8f³æ\93\8aæ¨\99é¡\8c編輯段è\90½",
+       "tog-showtoolbar": "顯示編輯工具",
+       "tog-editondblclick": "啟用滑鼠雙擊編輯頁面",
+       "tog-editsectiononrightclick": "å\95\9fç\94¨æ»\91é¼ å\8f³é\8dµé»\9eé\81¸ç« ç¯\80æ¨\99é¡\8c編輯",
        "tog-watchcreations": "將我建立的頁面和上傳的檔案加入監視列表",
        "tog-watchdefault": "將我更改的頁面和檔案加入監視列表",
        "tog-watchmoves": "將我移動的頁面和檔案加入監視列表",
        "tog-watchdeletion": "將我刪除的頁面和檔案加入監視列表",
-       "tog-minordefault": "預設將所有編輯標記為小修改",
+       "tog-minordefault": "預設標記所有編輯為小修訂",
        "tog-previewontop": "在編輯框上方顯示預覽",
        "tog-previewonfirst": "第一次編輯時顯示預覽",
-       "tog-enotifwatchlistpages": "當我監視列表中的頁面或檔案有變更時,發送電子郵件通知我",
-       "tog-enotifusertalkpages": "我的對話頁有變更時,發送電子郵件通知我",
-       "tog-enotifminoredits": "頁面和檔案的小修改也發電子郵件給我",
+       "tog-enotifwatchlistpages": "ç\95¶æ\88\91ç\9a\84ç\9b£è¦\96å\88\97表中ç\9a\84é \81é\9d¢æ\88\96æª\94æ¡\88æ\9c\89è®\8aæ\9b´æ\99\82ï¼\8cç\99¼é\80\81é\9b»å­\90é\83µä»¶é\80\9aç\9f¥æ\88\91",
+       "tog-enotifusertalkpages": "當我的對話頁面有變更時,發送電子郵件通知我",
+       "tog-enotifminoredits": "當頁面與檔案有小修訂時,發送電子郵件通知我",
        "tog-enotifrevealaddr": "在通知信件中顯示我的電子郵件位址",
        "tog-shownumberswatching": "顯示正在監視的使用者數目",
-       "tog-oldsig": "有簽名:",
-       "tog-fancysig": "將簽名視為維基文字(Wikitext)(不會自動產生連結)",
+       "tog-oldsig": "有簽名:",
+       "tog-fancysig": "將簽名視為 Wikitext 語言 (不自動產生連結)",
        "tog-uselivepreview": "使用即時預覽(實驗性)",
-       "tog-forceeditsummary": "未輸入編輯摘要時提醒我",
+       "tog-forceeditsummary": "當我輸入空白的編輯摘要時,提示我",
        "tog-watchlisthideown": "監視列表中隱藏我的編輯",
        "tog-watchlisthidebots": "監視列表中隱藏機器人的編輯",
        "tog-watchlisthideminor": "監視列表中隱藏小修改",
        "tog-watchlisthideliu": "監視列表中隱藏已登入使用者的編輯",
        "tog-watchlisthideanons": "監視列表中隱藏匿名使用者的編輯",
        "tog-watchlisthidepatrolled": "監視清單中隱藏已巡查的編輯",
-       "tog-ccmeonemails": "ç\95¶æ\88\91å¯\84é\9b»å­\90é\83µä»¶çµ¦å\85¶ä»\96使ç\94¨è\80\85æ\99\82ï¼\8cä¹\9få¯\84ä¸\80份å\89¯æ\9c¬å\88°æ\88\91ç\9a\84信箱",
+       "tog-ccmeonemails": "ç\99¼é\80\81é\83µä»¶çµ¦ä»\96人æ\99\82ï¼\8cä¹\9fé\80\81ä¸\80份å\89¯æ\9c¬å\88°æ\88\91ç\9a\84é\9b»å­\90é\83µä»¶信箱",
        "tog-diffonly": "比對版本差異時下面不顯示頁面內容",
        "tog-showhiddencats": "顯示隱藏分類",
        "tog-norollbackdiff": "回退後不做差異比對",
-       "tog-useeditwarning": "當離開頁面時編輯仍未儲存,請提醒我",
+       "tog-useeditwarning": "當我未儲存離開編輯頁面時,警告我",
        "tog-prefershttps": "登入時始終使用安全連線",
        "underline-always": "總是使用",
        "underline-never": "從不使用",
-       "underline-default": "外觀或瀏覽器預設",
+       "underline-default": "外觀或瀏覽器預設",
        "editfont-style": "編輯區字型樣式:",
        "editfont-default": "瀏覽器預設",
        "editfont-monospace": "等距字型",
        "deletethispage": "刪除本頁",
        "undeletethispage": "取消刪除此頁",
        "undelete_short": "取消刪除 $1 項修訂",
-       "viewdeleted_short": "æ\9f¥ç\9c\8b $1 項已刪除的修訂",
+       "viewdeleted_short": "檢è¦\96 $1 項已刪除的修訂",
        "protect": "保護",
        "protect_change": "變更",
        "protectthispage": "保護本頁",
        "hidetoc": "隱藏",
        "collapsible-collapse": "摺叠",
        "collapsible-expand": "展開",
-       "thisisdeleted": "檢視或恢復$1?",
+       "thisisdeleted": "檢視或還原 $1 ?",
        "viewdeleted": "檢視 $1?",
        "restorelink": "$1個被刪除的版本",
        "feedlinks": "訂閱:",
        "nstab-image": "檔案",
        "nstab-mediawiki": "訊息",
        "nstab-template": "模板",
-       "nstab-help": "説明頁面",
+       "nstab-help": "幫助頁面",
        "nstab-category": "分類",
        "nosuchaction": "這個命令不存在",
        "nosuchactiontext": "該URL所指定的動作無效。\n您可能打錯URL,或點了錯誤連結。\n這也可能是{{SITENAME}}所使用的軟件出現了錯誤。",
        "mycustomcssprotected": "你沒有編輯這CSS頁面的權限。",
        "mycustomjsprotected": "你沒有編輯這JavaScript頁面的權限。",
        "myprivateinfoprotected": "您沒有權限來編輯您的個人信息。",
-       "mypreferencesprotected": "您沒有權限編輯您的設定。",
+       "mypreferencesprotected": "您沒有權限編輯您的偏好設定。",
        "ns-specialprotected": "特殊頁面是不可以編輯的。",
        "titleprotected": "此標題已經被 [[User:$1|$1]] 保護以防止建立,原因是 \"<em>$2</em>\"。",
        "filereadonlyerror": "無法修改文件「$1」因為文件庫「$2」處於唯讀模式。 !\n管理員鎖定它的解釋是:「$3」。",
        "virus-unknownscanner": "未知的防病毒:",
        "logouttext": "您已經登出。\n\n請注意,如果你再次登入,此頁或會繼續顯示,直到您清除瀏覽器緩存。",
        "welcomeuser": "歡迎,$1!",
-       "welcomecreation-msg": "您的帳號已建立。\n不要忘記變更您的[[Special:Preferences| {{SITENAME}} 的偏好設定]]。",
+       "welcomecreation-msg": "您的帳號已建立。\n不要忘記變更您的 {{SITENAME}} [[Special:Preferences|偏好設定]]。",
        "yourname": "使用者名稱:",
        "userlogin-yourname": "使用者名稱",
        "userlogin-yourname-ph": "輸入您的使用者名稱",
        "nosuchuser": "查無使用者 \"$1\"。\n使用者名稱有大小寫區分,\n請檢查您輸入的字母,或者 [[Special:UserLogin/signup|建立新帳號]]。",
        "nosuchusershort": "沒有一個名為「$1」的用戶。請檢查您輸入的文字是否有錯誤。",
        "nouserspecified": "您必須指定一個使用者名稱。",
-       "login-userblocked": "這位用戶已被封鎖。不容許登入。",
+       "login-userblocked": "這位使用者已被封鎖,不允許登入。",
        "wrongpassword": "您輸入的密碼錯誤,請再試一次。",
        "wrongpasswordempty": "沒有輸入密碼!請重試。",
        "passwordtooshort": "您的密碼不能少於$1個字元。",
        "noemail": "使用者 \"$1\" 未登記電子郵件地址。",
        "noemailcreate": "您需要提供一個有效的電子郵件地址",
        "passwordsent": "使用者 \"$1\" 的新密碼已寄出至當出登記的電子郵件地址,\n請稍後收到信件後再登入。",
-       "blocked-mailpassword": "您的IP地址處於查封狀態而不允許編輯,為了安全起見,密碼恢復功能已被禁用。",
+       "blocked-mailpassword": "您的 IP 位址已被封鎖不允編輯,密碼復原的功能也同樣被禁止使用以防止被濫用。",
        "eauthentsent": "一封確認信已遞送至您設定的電郵位址。\n在發送其它郵件到此賬戶前,您必須首先依照這封信中的指導確認這個電子郵件信箱真實有效。",
        "throttled-mailpassword": "密碼提醒已經在前$1小時內發送。\n為防止濫用,限定在$1小時內僅發送一次密碼提醒。",
        "mailerror": "發送郵件錯誤: $1",
        "acct_creation_throttle_hit": "在這個wiki上的訪客利用您的IP地址在昨天創建了$1個賬戶,是在這段時間中的上限。\n結果利用這個IP地址的訪客在這段時間中不能創建更多的賬戶。",
-       "emailauthenticated": "您的電子郵件位址已於$2在$3確認。",
+       "emailauthenticated": "您的電子郵件位址已確認於 $2 的 $3。",
        "emailnotauthenticated": "您的電郵位址尚未確認。\n將不會發送與以下功能相關的電郵。",
-       "noemailprefs": "å\9c¨æ\82¨ç\9a\84å\8f\83æ\95¸è¨­ç½®ä¸­æ\8c\87å®\9aä¸\80å\80\8bé\9b»å­\90é\83µä»¶å\9c°å\9d\80以使ç\94¨æ­¤功能。",
+       "noemailprefs": "å\9c¨æ\82¨ç\9a\84å\81\8f好設å®\9a中設å®\9aé\9b»å­\90é\83µä»¶å\9c°å\9d\80ï¼\8cè®\93æ\82¨å\8f¯ä»¥ä½¿ç\94¨é\80\99äº\9b功能。",
        "emailconfirmlink": "確認您的電子郵件位址",
        "invalidemailaddress": "郵箱地址格式不正確,請輸入正確的郵箱位址或清空該輸入框。",
        "cannotchangeemail": "此維基(Wiki)不允許對帳號的電子郵件位址進行變更。",
        "login-abort-generic": "登入錯誤 - 中止",
        "loginlanguagelabel": "語言:$1",
        "suspicious-userlogout": "您登出的要求已經被拒絕,因為它可能是由已損壞的瀏覽器或者快取代理傳送。",
-       "createacct-another-realname-tip": "真實姓名為選填。\n若您提供真實姓名,它會用於貢獻署名。",
+       "createacct-another-realname-tip": "真實姓名為選填欄位。\n若您提供真實姓名,它會用於使用者貢獻署名。",
        "pt-login": "登入",
        "pt-login-button": "登入",
        "pt-createaccount": "建立帳戶",
        "passwordreset-emaildisabled": "此維基(Wiki)已禁用電子郵件功能。",
        "passwordreset-username": "使用者名稱:",
        "passwordreset-domain": "域名:",
-       "passwordreset-capture": "檢視產生的電子郵件嗎?",
+       "passwordreset-capture": "檢視電子郵件內容?",
        "passwordreset-capture-help": "如果您勾選此方塊,電子郵件(包含臨時密碼)將顯示,並發送給使用者。",
        "passwordreset-email": "電子郵件位址:",
        "passwordreset-emailtitle": "在{{SITENAME}}上的詳細訊息",
        "summary-preview": "摘要預覽:",
        "subject-preview": "主題/標題預覽:",
        "blockedtitle": "使用者已被封鎖",
-       "blockedtext": "'''您的用戶名或IP地址已被封禁。'''\n\n此次封禁操作由$1完成,封禁原因爲''$2''。\n\n* 起始時間:$8\n* 終止時間:$6\n* 擬封禁對象:$7\n\n您可以聯繫$1或其他的[[{{MediaWiki:Grouppage-sysop}}|管理員]]討論此次封禁。若您已在[[Special:Preferences|帳號設置]]中配置了一個有效的電子郵件地址,且未被封禁電子郵件功能,則您可通過“發送電子郵件給這位用戶”功能來聯絡相關管理員。您當前的IP地址是$3,此次封禁的ID爲#$5。請在您的查詢中註明上述所有信息。",
-       "autoblockedtext": "{{GENDER:|你|妳|你}}的IP地址已經被自動查封,由於先前的另一位用戶被$1所查封。\n而查封的原因是:\n\n:''$2''\n\n* 這次查封的開始時間是:$8\n* 這次查封的到期時間是:$6\n* 對於被查封者:$7\n\n{{GENDER:|你|妳|你}}可以聯絡$1或者其他的[[{{MediaWiki:Grouppage-sysop}}|管理員]],討論這次查封。\n除非{{GENDER:|你|妳|你}}已經在{{GENDER:|你|妳|你}}的[[Special:Preferences|賬號參數設置]]中設定了一個有效的電子郵件地址,否則{{GENDER:|你|妳|你}}是不能使用「電郵這位用戶」的功能。當設定了一個有效的電子郵件地址後,這個功能是不會封鎖的。\n\n您現時正在使用的 IP 地址是 $3,查封ID是 #$5。 請在{{GENDER:|你|妳|你}}的查詢中註明以上所有的資料。",
+       "blockedtext": "<strong>您的使用者名稱或 IP 位址以被封鎖。</strong>\n\n您被 $1 封鎖,\n原因爲 <em>$2</em>。\n\n* 封鎖開始時間:$8\n* 封鎖結束時間:$6\n* 相關封鎖對象:$7\n\n您可以聯繫 $1 或其他的 [[{{MediaWiki:Grouppage-sysop}}|管理員]] 討論封鎖的相關問題。\n若您已在 [[Special:Preferences|偏好設定]] 中設定了一個有效的電子郵件地址,且尚未被封鎖郵件功能,則您可透過 \"發送電子郵件給這位使用者\" 的功能來聯絡相關管理員。\n您目刖的 IP 位址是 $3,此次封鎖的 ID 爲 #$5。\n請您在詢問時附註以上詳細訊息。",
+       "autoblockedtext": "因先前的另一位使用者被 $1 封鎖,您的 IP 位址已被自動封鎖。\n原因是:\n\n:<em>$2</em>\n\n* 封鎖開始時間:$8\n* 封鎖結束時間:$6\n* 相關封鎖對象:$7\n\n您可以聯繫 $1 或其他的 [[{{MediaWiki:Grouppage-sysop}}|管理員]] 討論封鎖的相關問題。\n若您已在 [[Special:Preferences|偏好設定]] 中設定了一個有效的電子郵件地址,且尚未被封鎖郵件功能,則您可透過 \"發送電子郵件給這位使用者\" 的功能來聯絡相關管理員。\n您目刖的 IP 位址是 $3,此次封鎖的 ID 爲 #$5。\n請您在詢問時附註以上詳細訊息。",
        "blockednoreason": "無給出原因",
        "whitelistedittext": "您必須先$1才可編輯頁面。",
-       "confirmedittext": "å\9c¨ç·¨è¼¯æ­¤é \81ä¹\8bå\89\8dæ\82¨å¿\85é \88確èª\8dæ\82¨ç\9a\84é\83µç®±ä½\8då\9d\80ã\80\82è«\8bé\80\8fé\81\8e[[Special:Preferences|å\81\8f好設å®\9a]]設å®\9a並é©\97è­\89æ\82¨ç\9a\84é\83µç®±å\9c°址。",
+       "confirmedittext": "å\9c¨ç·¨è¼¯æ­¤é \81ä¹\8bå\89\8dæ\82¨å¿\85é \88確èª\8dæ\82¨ç\9a\84é\9b»å­\90é\83µä»¶ä½\8då\9d\80ã\80\82\nè«\8bé\80\8fé\81\8e [[Special:Preferences|å\81\8f好設å®\9a]] è¨­å®\9a並é©\97è­\89æ\82¨ç\9a\84é\9b»å­\90é\83µä»¶ä½\8d址。",
        "nosuchsectiontitle": "找不到段落",
        "nosuchsectiontext": "您嘗試編輯的章節並不存在。\n可能在您查看頁面時已經移動或刪除。",
        "loginreqtitle": "需要登入",
        "loginreqlink": "登入",
-       "loginreqpagetext": "您必須$1才能檢視其它頁面。",
+       "loginreqpagetext": "您必須 $1 才能檢視其它頁面。",
        "accmailtitle": "密碼已寄出",
        "accmailtext": "[[User talk:$1|$1]]的隨機產生密碼已經寄到$2。其可於登入後予以'''[[Special:ChangePassword|更改]]'''。",
        "newarticle": "(新)",
        "missing-revision": "「{{FULLPAGENAME}}」的#$1修訂版本不存在。\n\n這通常是因為過時的頁面歷史鏈接被刪除。\n詳情請閱[{{fullurl:{{#Special:Log}}/delete|page={{FULLPAGENAMEE}}}} 刪除日誌]。",
        "userpage-userdoesnotexist": "使用者帳號 \"$1\" 尚未註冊。\n若您要建立/編輯此頁面,請先檢查是否正確。",
        "userpage-userdoesnotexist-view": "未曾建立用戶名「$1」。",
-       "blocked-notice-logextract": "這位用戶現正被封鎖。\n下面有最近的封鎖紀錄以供參考:",
-       "clearyourcache": "'''注意:'''在保存以後,您必須繞過瀏覽器緩存才能看到所作出的改變。\n* '''火狐(Firefox)/Safari:'''按住“Shift”鍵再點擊“刷新”,或按下“Ctrl-F5”或“Ctrl-R”(Mac上為“⌘-R”)\n* '''谷歌瀏覽器(Google Chrome):'''按下“Ctrl-Shift-R”(Mac上為“⌘-Shift-R”)\n* '''Internet Explorer:'''按住“Ctrl”鍵再點擊“刷新”,或按下“Ctrl-F5”\n* '''Opera:'''在“工具→首選項”中清除緩存",
+       "blocked-notice-logextract": "這位使用者目前已被封鎖。\n以下為最近的封鎖紀錄以供參考:",
+       "clearyourcache": "<strong>注意:</strong> 在您儲存之後您必須清除瀏覽器快取才可看到最新的變動。\n* <strong>Firefox / Safari:</strong> 按住 <em>Shift</em> 時點選 <em>重新整理</em>,或按 <em>Ctrl-F5</em> 或 <em>Ctrl-R</em> (Mac 為 <em>⌘-R</em>)\n* <strong>Google Chrome:</strong> 按 <em>Ctrl-Shift-R</em> (Mac 為 <em>⌘-Shift-R</em>)\n* <strong>Internet Explorer:</strong> 按住 <em>Ctrl</em> 時點選 <em>重新整理</em>,或按 <em>Ctrl-F5</em>\n* <strong>Opera:</strong> 進入 <em>工具 → 偏好設定</em> 中清除快取。",
        "usercssyoucanpreview": "'''提示:''' 在保存前請用「{{int:showpreview}}」按鈕來測試您新的 CSS 。",
        "userjsyoucanpreview": "'''提示:''' 在保存前請用「{{int:showpreview}}」按鈕來測試您新的 JavaScript 。",
        "usercsspreview": "'''記住您只是在預覽您的個人 CSS。'''\n'''還沒有儲存﹗'''",
        "sitejspreview": "'''記住你現在只是預覽此 JavaScript 代碼。'''\n'''還沒有儲存!'''",
        "userinvalidcssjstitle": "'''警告:''' 不存在面板「$1」。\n注意自訂的 .css 和 .js 頁要使用小寫標題,例如,{{ns:user}}:Foo/vector.css 不同於 {{ns:user}}:Foo/Vector.css。",
        "updated": "(已更新)",
-       "note": "'''注意:'''",
+       "note": "</strong>注意:</strong>",
        "previewnote": "'''請記住這只是預覽。'''\n您的變更尚未儲存!",
        "continue-editing": "往編輯框",
        "previewconflict": "這個預覽顯示了上面文字編輯區中的內容。它將在{{GENDER:|你|妳|你}}選擇保存後出現。",
        "edittools": "<!-- 此處的文字將被顯示在編輯和上傳表單以下。 -->",
        "nocreatetext": "{{SITENAME}}限制了創建新頁面的功能。{{GENDER:|你|妳|你}}可以返回並編輯已有的頁面,或者[[Special:UserLogin|登錄或創建新賬戶]]。",
        "nocreate-loggedin": "您並無許可權去創建新頁面。",
-       "sectioneditnotsupported-title": "ä¸\8dæ\94¯æ\8c\81段è\90½ç·¨è¼¯",
+       "sectioneditnotsupported-title": "ä¸\8dæ\94¯æ\8f´ç·¨è¼¯ç« ç¯\80",
        "sectioneditnotsupported-text": "此頁面不支持段落編輯。",
        "permissionserrors": "權限錯誤",
        "permissionserrorstext": "根據以下的{{PLURAL:$1|原因}},您並無權限去做以下的動作:",
        "content-failed-to-parse": "未能轉換$2 內容成為$1:$3",
        "invalid-content-data": "內容資料無效",
        "content-not-allowed-here": "[[$2]]頁面上不允許「$1」內容",
-       "editwarning-warning": "離開這個頁面可能會令您失去之前作出的所有更改。若您已經登入,您可在偏好設定的「{{int:prefs-editing}}」部份裡關閉此警告。",
+       "editwarning-warning": "離開此頁面可能會令您遺失之前所作的所有更改。\n若您已經登入,您可在偏好設定的 \"{{int:prefs-editing}}\" 關閉此警告。",
        "editpage-notsupportedcontentformat-title": "內容格式尚無法支援",
        "editpage-notsupportedcontentformat-text": "內容模型$2尚無法支援內容格式$1。",
        "content-model-wikitext": "維基文字",
        "undo-summary": "取消由[[Special:Contributions/$2|$2]] ([[User talk:$2|對話]])所作出的修訂 $1",
        "undo-summary-username-hidden": "隱藏的用戶撤銷$1的修訂",
        "cantcreateaccounttitle": "無法建立帳號",
-       "cantcreateaccount-text": "從這個 IP 位址 (<b>$1</b>) 建立帳號已經被 [[User:$3|$3]] 禁止。\n\n當中被 $3 封禁的原因是 ''$2''",
-       "cantcreateaccount-range-text": "於此IP位址段'''$1'''之賬戶註冊被[[User:$3|$3]]禁止,其亦包括您所使用之IP位址('''$4''')。\n$3所述禁止原因為“$2”。",
-       "viewpagelogs": "æ\9f¥è©¢é\80\99å\80\8b頁面的日誌",
+       "cantcreateaccount-text": "來自這個 IP 位址 (<strong>$1</strong>) 建立的帳號已經被 [[User:$3|$3]] 封鎖。\n\n $3 封鎖的原因是 <em>$2</em>",
+       "cantcreateaccount-range-text": "來自 IP 位址範圍 '''$1''',包含您的 IP 位置 ('''$4''') 所建立的帳號已經被 [[User:$3|$3]] 封鎖。\n\n $3 封鎖的原因是 ''$2''",
+       "viewpagelogs": "檢è¦\96æ­¤頁面的日誌",
        "nohistory": "沒有本頁的修訂記錄。",
        "currentrev": "最新修訂版本",
        "currentrev-asof": "$1的最新修訂版本",
        "search-interwiki-default": "來自$1之結果:",
        "search-interwiki-more": "(更多)",
        "search-relatedarticle": "相關",
-       "searcheverything-enable": "å\9c¨æ\89\80æ\9c\89å\90\8då­\97空é\96\93中搜尋",
+       "searcheverything-enable": "å\9c¨æ\89\80æ\9c\89å\91½å\90\8d空é\96\93搜尋",
        "searchrelated": "相關",
        "searchall": "所有",
        "showingresults": "下面顯示從第 <b>$2</b> 條開始的 <b>$1</b> 條結果:",
        "preferences": "偏好設定",
        "mypreferences": "偏好設定",
        "prefs-edits": "編輯次數:",
-       "prefsnologintext2": "請$1以進入用戶設定。",
+       "prefsnologintext2": "請 $1 以更改您的偏好設定。",
        "prefs-skin": "外觀",
        "skin-preview": "預覽",
        "datedefault": "預設值",
        "prefs-labs": "實驗中的功能",
        "prefs-user-pages": "使用者頁面",
        "prefs-personal": "使用者基本資料",
-       "prefs-rc": "近期變更",
+       "prefs-rc": "最近變更",
        "prefs-watchlist": "監視列表",
        "prefs-watchlist-days": "監視列表中顯示的天數:",
        "prefs-watchlist-days-max": "最多$1{{PLURAL:$1|天}}",
        "prefs-email": "電子郵件選項",
        "prefs-rendering": "外觀",
        "saveprefs": "儲存",
-       "restoreprefs": "還原所有預設設定(所有部分)",
+       "restoreprefs": "還原所有預設設定 (所有部分)",
        "prefs-editing": "編輯",
        "rows": "行數:",
        "columns": "列數:",
        "searchresultshead": "搜尋",
        "stub-threshold": "<a href=\"#\" class=\"stub\">短頁面連結</a>格式門檻值 (位元組):",
        "stub-threshold-disabled": "已停用",
-       "recentchangesdays": "近期變更的顯示日數:",
+       "recentchangesdays": "最近變更的顯示日數:",
        "recentchangesdays-max": "最多$1{{PLURAL:$1|天}}",
        "recentchangescount": "預設顯示的編輯數:",
-       "prefs-help-recentchangescount": "這個包括最近更改、頁面歷史以及日誌。",
+       "prefs-help-recentchangescount": "這個包括最近變更、頁面歷史以及日誌。",
        "prefs-help-watchlist-token2": "這是一個秘密的密鑰,用於訂源您的監視列表。\n知道它的人將能夠讀取您的監視列表,所以您不應該分享它。[[Special:ResetTokens|如有需要重設此密鑰,請點擊這裡]]。",
        "savedprefs": "您的偏好設定已儲存。",
        "timezonelegend": "時區:",
        "localtime": "當地時間:",
        "timezoneuseserverdefault": "使用預設($1)",
-       "timezoneuseoffset": "其他 (指定偏移)",
+       "timezoneuseoffset": "其他 (指定時差)",
        "servertime": "伺服器時間:",
-       "guesstimezone": "從瀏覽器填寫",
+       "guesstimezone": "使用瀏覽器設定值",
        "timezoneregion-africa": "非洲",
        "timezoneregion-america": "美洲",
        "timezoneregion-antarctica": "南極洲",
        "timezoneregion-europe": "歐洲",
        "timezoneregion-indian": "印度洋",
        "timezoneregion-pacific": "太平洋",
-       "allowemail": "接受來自其他使用者的信件",
+       "allowemail": "啟用來自其他使用者的郵件通知功能",
        "prefs-searchoptions": "搜尋",
        "prefs-namespaces": "頁面名稱空間",
-       "defaultns": "否則在這些名字空間搜尋:",
+       "defaultns": "或在這些命名空間搜尋:",
        "default": "預設",
        "prefs-files": "檔案",
-       "prefs-custom-css": "自CSS",
-       "prefs-custom-js": "自JavaScript",
-       "prefs-common-css-js": "共用 CSS/JavaScript 於所有的外觀中:",
-       "prefs-reset-intro": "您可以利用這個頁面去重設您的參數設置到網站預設值。這個動作無法復原。",
+       "prefs-custom-css": "自訂 CSS",
+       "prefs-custom-js": "自訂 JavaScript",
+       "prefs-common-css-js": "所有外觀共用的 CSS/JavaScript:",
+       "prefs-reset-intro": "您可以使用此頁面重設您的偏好設定為網站預設值。\n這個動作將無法復原。",
        "prefs-emailconfirm-label": "電子郵件確認:",
        "youremail": "電子郵件:",
        "username": "{{GENDER:$1|使用者名稱}}:",
        "uid": "{{GENDER:$1|使用者 ID}}:",
-       "prefs-memberingroups": "{{PLURAL:$1|群組}}{{GENDER:$2|成員}}:",
+       "prefs-memberingroups": "{{GENDER:$2|所屬}}{{PLURAL:$1|群組}}:",
        "prefs-registration": "註冊時間:",
        "yourrealname": "真實姓名:",
        "yourlanguage": "語言:",
        "yourvariant": "內容語言變體:",
        "prefs-help-variant": "您希望用於顯示本站內容的語種或拼寫語系。",
-       "yournick": "新簽名:",
-       "prefs-help-signature": "在討論頁面上的評論應該要用「<nowiki>~~~~</nowiki>」簽名,這樣便會轉換成{{GENDER:|你|妳|你}}的簽名以及一個時間截記。",
+       "yournick": "æ\96°ç\9a\84ç°½å\90\8dï¼\9a",
+       "prefs-help-signature": "在討論頁面上評論時應使用 \"<nowiki>~~~~</nowiki>\" 簽名,\n該符號會轉換成您的簽名與時間。",
        "badsig": "錯誤的原始簽名。請檢查HTML標籤。",
        "badsiglength": "您的簽名過長。\n它的長度不可超過$1個字元。",
-       "yourgender": "您希望如何顯示性别?",
-       "gender-unknown": "我不想指定",
-       "gender-male": "",
-       "gender-female": "女",
-       "prefs-help-gender": "此設定為可選。\n軟件將使用此設定顯示正確的稱呼。\n此項資料將會被公開。",
+       "yourgender": "您希望如何被描述?",
+       "gender-unknown": "我不想說明",
+       "gender-male": "他編輯了 Wiki 頁面",
+       "gender-female": "她編輯äº\86 Wiki é \81é\9d¢",
+       "prefs-help-gender": "此偏好設定為選填欄位。\n系統會使用您選擇的方式稱呼您,對他人提及您時也會使用適當語法稱呼。\n此項資訊會被公開。",
        "email": "電子郵件",
-       "prefs-help-realname": "真實姓名是可選的。\n如果您選擇提供它,它會用於貢獻署名。",
-       "prefs-help-email": "电子邮件是可选项,但是在您忘记密码时很有用。",
-       "prefs-help-email-others": "您亦可以選擇讓其他使用者透過您的電子郵件或使用者討論頁面與您聯繫。\n您的電子郵件位址不會告知給其他要聯絡您的使用者。",
+       "prefs-help-realname": "真實姓名為選填欄位。\n若您提供真實姓名,它會用於使用者貢獻署名。",
+       "prefs-help-email": "電子郵件地址為選填欄位。\n但在重設密碼時會使用,而您很有可能會忘記密。",
+       "prefs-help-email-others": "您亦可以選擇讓其他使用者用電子郵件與您聯繫,透過您的使用者或討論頁面上方的連結。\n您的電子郵件位址不會實際告知給其他要聯絡您的使用者。",
        "prefs-help-email-required": "電子郵件地址是必填項目。",
-       "prefs-info": "基本資",
+       "prefs-info": "基本資",
        "prefs-i18n": "國際化",
        "prefs-signature": "簽名",
        "prefs-dateformat": "日期格式",
-       "prefs-timeoffset": "時間偏移",
+       "prefs-timeoffset": "時",
        "prefs-advancedediting": "一般選項",
        "prefs-editor": "編輯器",
        "prefs-preview": "預覽",
        "prefs-displaywatchlist": "顯示選項",
        "prefs-tokenwatchlist": "密鑰",
        "prefs-diffs": "差異",
-       "prefs-help-prefershttps": "此選項將於您下次登入時生效。",
+       "prefs-help-prefershttps": "此偏好設定將於您下次登入時生效。",
        "prefs-tabs-navigation-hint": "提示:您可通過左、右鍵於選項卡之間切換。",
        "email-address-validity-valid": "電子郵件位址有效",
        "email-address-validity-invalid": "請提供一個有效的電子郵件位址",
        "right-undelete": "反刪除頁面",
        "right-suppressrevision": "檢視及恢復由操作員隱藏之修訂",
        "right-suppressionlog": "檢視非公開的日誌",
-       "right-block": "封鎖其他使用者防止編輯",
+       "right-block": "封鎖其他使用者的編輯權限",
        "right-blockemail": "封鎖用戶不可發電郵",
        "right-hideuser": "封鎖用戶名,對公眾隱藏",
        "right-ipblock-exempt": "繞過IP封鎖、自動封鎖以及範圍封鎖",
        "right-editmywatchlist": "編輯您的監視列表。請注意即使沒有這種權利,某些操作仍將添加頁面。",
        "right-viewmyprivateinfo": "檢視自己的私隱資料(如電郵地址及真實姓名)",
        "right-editmyprivateinfo": "編輯自己的私隱資料(如電郵地址及真實姓名)",
-       "right-editmyoptions": "編輯您的設定",
+       "right-editmyoptions": "編輯您的偏好設定",
        "right-rollback": "快速復原上位用戶對某一頁面之編輯",
        "right-markbotedits": "標示復原編輯作機械人編輯",
        "right-noratelimit": "沒有使用頻率限制",
        "enhancedrc-since-last-visit": "自上次訪問已有$1",
        "enhancedrc-history": "歷史",
        "recentchanges": "最近變更",
-       "recentchanges-legend": "近期變更選項",
+       "recentchanges-legend": "最近變更選項",
        "recentchanges-summary": "追蹤該維基(Wiki)的近期變更。",
        "recentchanges-noresult": "在所選擇的時間裡沒有任何更改與所給條件吻合。",
-       "recentchanges-feed-description": "訂閱該維基(Wiki)的近期變更。",
+       "recentchanges-feed-description": "訂閱該維基(Wiki)的最近變更。",
        "recentchanges-label-newpage": "這次編輯建立了一個新頁面",
        "recentchanges-label-minor": "這是一個小編輯",
        "recentchanges-label-bot": "這次編輯是由機器人進行",
        "trackingcategories-nodesc": "並無說明。",
        "trackingcategories-disabled": "分類被禁用",
        "mailnologin": "無電郵地址",
-       "mailnologintext": "您必須先 [[Special:UserLogin|登入]]\n並在 [[Special:Preferences|偏好設定]]\n中設定一個有效的 E-mail 地址才可以發送信件給其他使用者。",
+       "mailnologintext": "您必須先 [[Special:UserLogin|登入]]\n並在 [[Special:Preferences|偏好設定]]\n中設定一個有效的電子郵件地址才可以發送信件給其他使用者。",
        "emailuser": "E-mail該用戶",
        "emailuser-title-target": "電郵這位{{GENDER:$1|用戶}}",
        "emailuser-title-notarget": "E-mail 給使用者",
        "emailpage": "E-mail 給使用者",
-       "emailpagetext": "您可以ç\94¨ä¸\8bé\9d¢ç\9a\84表格å\8e»å¯\84ä¸\80å°\81é\9b»é\83µçµ¦é\80\99ä½\8d{{Gender:$1|ç\94¨æ\88¶}}ã\80\82\næ\82¨å\9c¨[[Special:Preferences|æ\82¨ç\9a\84å\8f\83æ\95¸è¨­ç½®]]中æ\89\80輸å\85¥ç\9a\84é\9b»å­\90é\83µä»¶å\9c°å\9d\80å°\87å\87ºç\8f¾å\9c¨é\83µä»¶ã\80\8cç\99¼ä»¶äººã\80\8dä¸\80æ¬\84中ï¼\8cé\80\99樣該ç\94¨æ\88¶å°±å\8f¯ä»¥å\9b\9eè¦\86æ\82¨ã\80\82",
+       "emailpagetext": "您可以使ç\94¨ä»¥ä¸\8b表格ç\99¼é\80\81é\9b»å­\90é\83µä»¶çµ¦é\80\99ä½\8d {{Gender:$1|使ç\94¨è\80\85}}ã\80\82\næ\82¨å\9c¨ [[Special:Preferences|å\81\8f好設å®\9a]] ä¸­æ\89\80輸å\85¥ç\9a\84é\9b»å­\90é\83µä»¶å\9c°å\9d\80å°\87æ\9c\83ä½\9cç\82ºé\83µä»¶ç\9a\84 \"å¯\84件人\"ï¼\8cå\9b æ­¤è©²ä½¿ç\94¨è\80\85å\8f¯ç\9b´æ\8e¥å\9b\9eè¦\86æ\82¨ã\80\82",
        "defemailsubject": "{{SITENAME}}來自用戶「$1」的電子郵件",
        "usermaildisabled": "使用者 E-mail 已停用",
        "usermaildisabledtext": "您不可發送信件到這個 Wiki 上的其他使用者",
        "enotif_lastvisited": "請參閱 $1 檢視你上次訪問後的所有更改。",
        "enotif_lastdiff": "請參閱 $1 檢視該更改。",
        "enotif_anon_editor": "匿名用戶$1",
-       "enotif_body": "$WATCHINGUSERNAME閣下,\n\n$PAGEINTRO $NEWPAGE\n\n編輯摘要:$PAGESUMMARY $PAGEMINOREDIT\n\n聯絡此編輯者:\n\n郵件:$PAGEEDITOR_EMAIL\n本站:$PAGEEDITOR_WIKI\n\n在您訪問此頁之前,將來的更改將不會向您發出通知。您也可以在監視列表中重設您所有監視頁面的通知標記。\n\n{{SITENAME}}通知系統啟\n\n--\n更改電郵通知設定:\n{{canonicalurl:{{#special:Preferences}}}}\n\n更改監視列表設定:\n{{canonicalurl:{{#special:EditWatchlist}}}}\n\n從監視列表中刪除此頁面:\n$UNWATCHURL\n\n回饋和其他幫助:\n{{canonicalurl:{{MediaWiki:Helppage}}}}",
+       "enotif_body": "$WATCHINGUSERNAME 您好,\n\n$PAGEINTRO $NEWPAGE\n\n編輯摘要:$PAGESUMMARY $PAGEMINOREDIT\n\n聯絡此編輯者:\n\n信箱:$PAGEEDITOR_EMAIL\n本站:$PAGEEDITOR_WIKI\n\n在您檢視該頁面之前,接下來的變更系統不會再向您發出通知。您也可以在監視列表中重設您所有監視頁面的通知狀態。\n\n{{SITENAME}} 通知系統啟\n\n--\n更改您的電子郵件通知設定,請至:\n{{canonicalurl:{{#special:Preferences}}}}\n\n更改您的監視列表設定,請至:\n{{canonicalurl:{{#special:EditWatchlist}}}}\n\n從監視列表中刪除此頁面,請至:\n$UNWATCHURL\n\n回函並取得更多協助:\n{{canonicalurl:{{MediaWiki:Helppage}}}}",
        "created": "建立了",
        "changed": "更改",
        "deletepage": "刪除頁面",
        "restriction-level-sysop": "全保護",
        "restriction-level-autoconfirmed": "半保護",
        "restriction-level-all": "任何級別",
-       "undelete": "æ\81¢å¾©è¢«å\88ª頁面",
+       "undelete": "檢è¦\96å·²å\88ªé\99¤ç\9a\84頁面",
        "undeletepage": "檢視與還原已刪除的頁面",
        "undeletepagetitle": "'''以下包含[[:$1]]的已刪除之修訂版本'''。",
        "viewdeletedpage": "檢視已刪除的頁面",
        "tooltip-invert": "選中此複選框以隱藏選定命名空間內頁面更改(以及相關的命名空間,如果選中)",
        "namespace_association": "關聯名字空間",
        "tooltip-namespace_association": "選中此框可包括與選定名字空間相關的討論或主題命名空間",
-       "blanknamespace": "(主)",
+       "blanknamespace": "(主要)",
        "contributions": "{{GENDER:$1|用戶}}貢獻",
        "contributions-title": "$1 的使用者貢獻",
        "mycontris": "我的貢獻",
        "tooltip-t-permalink": "這個頁面修訂版本的永久連結",
        "tooltip-ca-nstab-main": "檢視頁面內容",
        "tooltip-ca-nstab-user": "檢視使用者頁面",
-       "tooltip-ca-nstab-media": "檢è¦\96å¤\9aåª\92é«\94æª\94æ¡\88è³\87è¨\8a頁面",
+       "tooltip-ca-nstab-media": "檢è¦\96åª\92é«\94頁面",
        "tooltip-ca-nstab-special": "本頁面會隨著資料庫的數據即時更新,任何人均不能直接編輯",
        "tooltip-ca-nstab-project": "檢視專案頁面",
        "tooltip-ca-nstab-image": "檢視檔案頁面",
        "tooltip-ca-nstab-mediawiki": "檢視系統資訊",
        "tooltip-ca-nstab-template": "檢視模板",
-       "tooltip-ca-nstab-help": "檢視幫助頁面",
+       "tooltip-ca-nstab-help": "檢視說明頁面",
        "tooltip-ca-nstab-category": "檢視分類頁面",
        "tooltip-minoredit": "標記為小修改",
        "tooltip-save": "保存您的修改",
        "tooltip-upload": "開始上傳",
        "tooltip-rollback": "按「復原」恢復上一位貢獻者對本頁面的編輯",
        "tooltip-undo": "「復原」可以在編輯模式上開啟編輯表格以便恢復。它容許在摘要中加入原因。",
-       "tooltip-preferences-save": "儲存使用偏好",
+       "tooltip-preferences-save": "儲存偏好設定",
        "tooltip-summary": "輸入一個簡短的摘要",
        "interlanguage-link-title": "$1 – $2",
        "common.css": "/* 此處的 CSS 將應用於所有的面板 */",
        "simpleantispam-label": "反濫發電郵檢查。\n'''不要'''加入這個!",
        "pageinfo-title": "「$1」的信息",
        "pageinfo-not-current": "抱歉,無法提供之前修訂版本的資訊。",
-       "pageinfo-header-basic": "基本資",
+       "pageinfo-header-basic": "基本資",
        "pageinfo-header-edits": "編輯歷史",
        "pageinfo-header-restrictions": "保護頁面",
        "pageinfo-header-properties": "頁面屬性",
        "namespacesall": "全部",
        "monthsall": "全部",
        "confirmemail": "確認郵箱位址",
-       "confirmemail_noemail": "您沒有在您的[[Special:Preferences|用戶設定]]裡面輸入一個有效的 email 位址。",
+       "confirmemail_noemail": "您尚未於 [[Special:Preferences|偏好設定]] 輸入一個有效的電子郵件地址。",
        "confirmemail_text": "{{SITENAME}}要求您在使用郵件功能之前驗證您的郵箱位址。\n點擊以下按鈕可向您的郵箱發送一封確認郵件。該郵件包含有一行代碼連結;\n請在您的瀏覽器中加載此連結以確認您的郵箱位址是有效的。",
        "confirmemail_pending": "一個確認碼已經被發送到您的郵箱,您可能需要等幾分鐘才能收到。如果無法收到,請再申請一個新的確認碼。",
        "confirmemail_send": "郵發確認代碼",
        "watchlistedit-raw-done": "您的監視列表已經更新。",
        "watchlistedit-raw-added": "已經加入了$1個標題:",
        "watchlistedit-raw-removed": "已經移除了$1個標題:",
-       "watchlisttools-view": "檢視關更改",
+       "watchlisttools-view": "檢視關更改",
        "watchlisttools-edit": "檢視並編輯監視列表",
        "watchlisttools-raw": "編輯原始監視列表",
        "signature": "[[{{ns:user}}:$1|$2]]([[{{ns:user_talk}}:$1|討論]])",
index eaf0a38..2d45645 100644 (file)
                "groups": [
                        {
                                "name": "Plugins",
-                               "classes": ["jQuery.plugin.*"]
+                               "classes": [
+                                       "jQuery.client",
+                                       "jQuery.colorUtil",
+                                       "jQuery.plugin.*"
+                               ]
                        }
                ]
        },
index c473772..5d2e304 100644 (file)
                "../../resources/src/jquery/jquery.autoEllipsis.js",
                "../../resources/src/jquery/jquery.badge.js",
                "../../resources/src/jquery/jquery.byteLimit.js",
+               "../../resources/src/jquery/jquery.client.js",
+               "../../resources/src/jquery/jquery.colorUtil.js",
                "../../resources/src/jquery/jquery.localize.js",
+               "../../resources/src/jquery/jquery.makeCollapsible.js",
                "../../resources/src/jquery/jquery.spinner.js",
                "../../resources/lib/oojs",
                "../../resources/lib/oojs-ui"
index 3433a23..668dc14 100644 (file)
@@ -190,6 +190,7 @@ return array(
                'dependencies' => array(
                        'jquery.client',
                ),
+               'targets' => array( 'mobile', 'desktop' ),
        ),
        'jquery.appear' => array(
                'scripts' => 'resources/lib/jquery/jquery.appear.js',
index 2dcb198..085f908 100644 (file)
@@ -7,6 +7,6 @@
        "ooui-dialog-action-close": "Claise",
        "ooui-outline-control-move-down": "Muiv eetem doon",
        "ooui-outline-control-move-up": "Muiv eetem up",
-       "ooui-outline-control-remove": "Remuiv eitem",
+       "ooui-outline-control-remove": "Remuiv eetem",
        "ooui-toolbar-more": "Mair"
 }
index 0eec396..091dbaf 100644 (file)
@@ -9,5 +9,6 @@
        "ooui-dialog-action-close": "שליסן",
        "ooui-outline-control-move-down": "רוקן עלעמענט אראפ",
        "ooui-outline-control-move-up": "רוקן עלעמענט ארויף",
+       "ooui-outline-control-remove": "אַראָפנעמען איינס",
        "ooui-toolbar-more": "נאך"
 }
index da9bacc..56f5e6d 100644 (file)
                        "Shirayuki",
                        "Simon Shek",
                        "Spring Roll Conan",
-                       "Waihorace"
+                       "Waihorace",
+                       "Cwlin0416"
                ]
        },
        "ooui-dialog-action-close": "關閉",
-       "ooui-outline-control-move-down": "向下移項",
-       "ooui-outline-control-move-up": "向上移項",
-       "ooui-outline-control-remove": "移除項",
+       "ooui-outline-control-move-down": "項目下移",
+       "ooui-outline-control-move-up": "項目上移",
+       "ooui-outline-control-remove": "移除項",
        "ooui-toolbar-more": "更多"
 }
index ff11631..60476d5 100644 (file)
@@ -1,12 +1,12 @@
 /*!
- * OOjs UI v0.1.0-pre (0a7180f468)
+ * OOjs UI v0.1.0-pre (b91660e612)
  * https://www.mediawiki.org/wiki/OOjs_UI
  *
  * Copyright 2011–2014 OOjs Team and other contributors.
  * Released under the MIT license
  * http://oojs.mit-license.org
  *
- * Date: Wed Apr 23 2014 18:05:30 GMT-0700 (PDT)
+ * Date: Mon Apr 28 2014 12:57:47 GMT-0700 (PDT)
  */
 ( function ( OO ) {
 
@@ -173,7 +173,8 @@ OO.ui.resolveMsg = function ( msg ) {
  * @param {Object} [config] Configuration options
  * @cfg {Function} [$] jQuery for the frame the widget is in
  * @cfg {string[]} [classes] CSS class names
- * @cfg {jQuery} [$content] Content elements to append
+ * @cfg {string} [text] Text to insert
+ * @cfg {jQuery} [$content] Content elements to append (after text)
  */
 OO.ui.Element = function OoUiElement( config ) {
        // Configuration initialization
@@ -188,6 +189,9 @@ OO.ui.Element = function OoUiElement( config ) {
        if ( $.isArray( config.classes ) ) {
                this.$element.addClass( config.classes.join( ' ' ) );
        }
+       if ( config.text ) {
+               this.$element.text( config.text );
+       }
        if ( config.$content ) {
                this.$element.append( config.$content );
        }
@@ -612,32 +616,52 @@ OO.ui.Element.prototype.offDOMEvent = function ( event, callback ) {
 
 ( function () {
        // Static
-       var specialFocusin;
 
-       function handler( e ) {
-               jQuery.event.simulate( 'focusin', e.target, jQuery.event.fix( e ), /* bubble = */ true );
-       }
+       // jQuery 1.8.3 has a bug with handling focusin/focusout events inside iframes.
+       // Firefox doesn't support focusin/focusout at all, so we listen for 'focus'/'blur' on the
+       // document, and simulate a 'focusin'/'focusout' event on the target element and make
+       // it bubble from there.
+       //
+       // - http://jsfiddle.net/sw3hr/
+       // - http://bugs.jquery.com/ticket/14180
+       // - https://github.com/jquery/jquery/commit/1cecf64e5aa4153
+       function specialEvent( simulatedName, realName ) {
+               function handler( e ) {
+                       jQuery.event.simulate(
+                               simulatedName,
+                               e.target,
+                               jQuery.event.fix( e ),
+                               /* bubble = */ true
+                       );
+               }
 
-       specialFocusin = {
-               setup: function () {
-                       var doc = this.ownerDocument || this,
-                               attaches = $.data( doc, 'ooui-focusin-attaches' );
-                       if ( !attaches ) {
-                               doc.addEventListener( 'focus', handler, true );
-                       }
-                       $.data( doc, 'ooui-focusin-attaches', ( attaches || 0 ) + 1 );
-               },
-               teardown: function () {
-                       var doc = this.ownerDocument || this,
-                               attaches = $.data( doc, 'ooui-focusin-attaches' ) - 1;
-                       if ( !attaches ) {
-                               doc.removeEventListener( 'focus', handler, true );
-                               $.removeData( doc, 'ooui-focusin-attaches' );
-                       } else {
-                               $.data( doc, 'ooui-focusin-attaches', attaches );
+               return {
+                       setup: function () {
+                               var doc = this.ownerDocument || this,
+                                       attaches = $.data( doc, 'ooui-' + simulatedName + '-attaches' );
+                               if ( !attaches ) {
+                                       doc.addEventListener( realName, handler, true );
+                               }
+                               $.data( doc, 'ooui-' + simulatedName + '-attaches', ( attaches || 0 ) + 1 );
+                       },
+                       teardown: function () {
+                               var doc = this.ownerDocument || this,
+                                       attaches = $.data( doc, 'ooui-' + simulatedName + '-attaches' ) - 1;
+                               if ( !attaches ) {
+                                       doc.removeEventListener( realName, handler, true );
+                                       $.removeData( doc, 'ooui-' + simulatedName + '-attaches' );
+                               } else {
+                                       $.data( doc, 'ooui-' + simulatedName + '-attaches', attaches );
+                               }
                        }
-               }
-       };
+               };
+       }
+
+       var hasOwn = Object.prototype.hasOwnProperty,
+               specialEvents = {
+                       focusin: specialEvent( 'focusin', 'focus' ),
+                       focusout: specialEvent( 'focusout', 'blur' )
+               };
 
        /**
         * Bind a handler for an event on a DOM element.
@@ -654,25 +678,15 @@ OO.ui.Element.prototype.offDOMEvent = function ( event, callback ) {
        OO.ui.Element.onDOMEvent = function ( el, event, callback ) {
                var orig;
 
-               if ( event === 'focusin' ) {
-                       // jQuery 1.8.3 has a bug with handling focusin events inside iframes.
-                       // Firefox doesn't support focusin at all, so we listen for 'focus' on the
-                       // document, and simulate a 'focusin' event on the target element and make
-                       // it bubble from there.
-                       //
-                       // - http://jsfiddle.net/sw3hr/
-                       // - http://bugs.jquery.com/ticket/14180
-                       // - https://github.com/jquery/jquery/commit/1cecf64e5aa4153
-
+               if ( hasOwn.call( specialEvents, event ) ) {
                        // Replace jQuery's override with our own
-                       orig = $.event.special.focusin;
-                       $.event.special.focusin = specialFocusin;
+                       orig = $.event.special[event];
+                       $.event.special[event] = specialEvents[event];
 
                        $( el ).on( event, callback );
 
                        // Restore
-                       $.event.special.focusin = orig;
-
+                       $.event.special[event] = orig;
                } else {
                        $( el ).on( event, callback );
                }
@@ -688,11 +702,15 @@ OO.ui.Element.prototype.offDOMEvent = function ( event, callback ) {
         */
        OO.ui.Element.offDOMEvent = function ( el, event, callback ) {
                var orig;
-               if ( event === 'focusin' ) {
-                       orig = $.event.special.focusin;
-                       $.event.special.focusin = specialFocusin;
+               if ( hasOwn.call( specialEvents, event ) ) {
+                       // Replace jQuery's override with our own
+                       orig = $.event.special[event];
+                       $.event.special[event] = specialEvents[event];
+
                        $( el ).off( event, callback );
-                       $.event.special.focusin = orig;
+
+                       // Restore
+                       $.event.special[event] = orig;
                } else {
                        $( el ).off( event, callback );
                }
@@ -2206,7 +2224,6 @@ OO.ui.FlaggableElement.prototype.setFlags = function ( flags ) {
  * @constructor
  * @param {jQuery} $group Container node, assigned to #$group
  * @param {Object} [config] Configuration options
- * @cfg {Object.<string,string>} [aggregations] Events to aggregate, keyed by item event name
  */
 OO.ui.GroupElement = function OoUiGroupElement( $group, config ) {
        // Configuration
@@ -2216,8 +2233,7 @@ OO.ui.GroupElement = function OoUiGroupElement( $group, config ) {
        this.$group = $group;
        this.items = [];
        this.$items = this.$( [] );
-       this.aggregate = !$.isEmptyObject( config.aggregations );
-       this.aggregations = config.aggregations || {};
+       this.aggregateItemEvents = {};
 };
 
 /* Methods */
@@ -2231,6 +2247,59 @@ OO.ui.GroupElement.prototype.getItems = function () {
        return this.items.slice( 0 );
 };
 
+/**
+ * Add an aggregate item event.
+ *
+ * Aggregated events are listened to on each item and then emitted by the group under a new name,
+ * and with an additional leading parameter containing the item that emitted the original event.
+ * Other arguments that were emitted from the original event are passed through.
+ *
+ * @param {Object.<string,string|null>} events Aggregate events emitted by group, keyed by item
+ *   event, use null value to remove aggregation
+ * @throws {Error} If aggregation already exists
+ */
+OO.ui.GroupElement.prototype.aggregate = function ( events ) {
+       var i, len, item, add, remove, itemEvent, groupEvent;
+
+       for ( itemEvent in events ) {
+               groupEvent = events[itemEvent];
+
+               // Remove existing aggregated event
+               if ( itemEvent in this.aggregateItemEvents ) {
+                       // Don't allow duplicate aggregations
+                       if ( groupEvent ) {
+                               throw new Error( 'Duplicate item event aggregation for ' + itemEvent );
+                       }
+                       // Remove event aggregation from existing items
+                       for ( i = 0, len = this.items.length; i < len; i++ ) {
+                               item = this.items[i];
+                               if ( item.connect && item.disconnect ) {
+                                       remove = {};
+                                       remove[itemEvent] = [ 'emit', groupEvent, item ];
+                                       item.disconnect( this, remove );
+                               }
+                       }
+                       // Prevent future items from aggregating event
+                       delete this.aggregateItemEvents[itemEvent];
+               }
+
+               // Add new aggregate event
+               if ( groupEvent ) {
+                       // Make future items aggregate event
+                       this.aggregateItemEvents[itemEvent] = groupEvent;
+                       // Add event aggregation to existing items
+                       for ( i = 0, len = this.items.length; i < len; i++ ) {
+                               item = this.items[i];
+                               if ( item.connect && item.disconnect ) {
+                                       add = {};
+                                       add[itemEvent] = [ 'emit', groupEvent, item ];
+                                       item.connect( this, add );
+                               }
+                       }
+               }
+       }
+};
+
 /**
  * Add items.
  *
@@ -2255,10 +2324,10 @@ OO.ui.GroupElement.prototype.addItems = function ( items, index ) {
                        }
                }
                // Add the item
-               if ( this.aggregate ) {
+               if ( item.connect && item.disconnect && !$.isEmptyObject( this.aggregateItemEvents ) ) {
                        events = {};
-                       for ( event in this.aggregations ) {
-                               events[event] = [ 'emit', this.aggregations[event], item ];
+                       for ( event in this.aggregateItemEvents ) {
+                               events[event] = [ 'emit', this.aggregateItemEvents[event], item ];
                        }
                        item.connect( this, events );
                }
@@ -2291,15 +2360,22 @@ OO.ui.GroupElement.prototype.addItems = function ( items, index ) {
  * @chainable
  */
 OO.ui.GroupElement.prototype.removeItems = function ( items ) {
-       var i, len, item, index;
+       var i, len, item, index, remove, itemEvent;
 
        // Remove specific items
        for ( i = 0, len = items.length; i < len; i++ ) {
                item = items[i];
                index = $.inArray( item, this.items );
                if ( index !== -1 ) {
-                       if ( this.aggregate ) {
-                               item.disconnect( this );
+                       if (
+                               item.connect && item.disconnect &&
+                               !$.isEmptyObject( this.aggregateItemEvents )
+                       ) {
+                               remove = {};
+                               if ( itemEvent in this.aggregateItemEvents ) {
+                                       remove[itemEvent] = [ 'emit', this.aggregateItemEvents[itemEvent], item ];
+                               }
+                               item.disconnect( this, remove );
                        }
                        item.setElementGroup( null );
                        this.items.splice( index, 1 );
@@ -2319,13 +2395,20 @@ OO.ui.GroupElement.prototype.removeItems = function ( items ) {
  * @chainable
  */
 OO.ui.GroupElement.prototype.clearItems = function () {
-       var i, len, item;
+       var i, len, item, remove, itemEvent;
 
        // Remove all items
        for ( i = 0, len = this.items.length; i < len; i++ ) {
                item = this.items[i];
-               if ( this.aggregate ) {
-                       item.disconnect( this );
+               if (
+                       item.connect && item.disconnect &&
+                       !$.isEmptyObject( this.aggregateItemEvents )
+               ) {
+                       remove = {};
+                       if ( itemEvent in this.aggregateItemEvents ) {
+                               remove[itemEvent] = [ 'emit', this.aggregateItemEvents[itemEvent], item ];
+                       }
+                       item.disconnect( this, remove );
                }
                item.setElementGroup( null );
        }
@@ -3344,9 +3427,7 @@ OO.ui.ToolFactory.prototype.extract = function ( collection, used ) {
  */
 OO.ui.ToolGroup = function OoUiToolGroup( toolbar, config ) {
        // Configuration initialization
-       config = $.extend( true, {
-               'aggregations': { 'disable': 'itemDisable' }
-       }, config );
+       config = config || {};
 
        // Parent constructor
        OO.ui.ToolGroup.super.call( this, config );
@@ -3373,6 +3454,7 @@ OO.ui.ToolGroup = function OoUiToolGroup( toolbar, config ) {
                'mouseout': OO.ui.bind( this.onMouseOut, this )
        } );
        this.toolbar.getToolFactory().connect( this, { 'register': 'onToolFactoryRegister' } );
+       this.aggregate( { 'disable': 'itemDisable' } );
        this.connect( this, { 'itemDisable': 'updateDisabled' } );
 
        // Initialization
@@ -5464,7 +5546,7 @@ OO.ui.InputWidget.prototype.isReadOnly = function () {
  */
 OO.ui.InputWidget.prototype.setReadOnly = function ( state ) {
        this.readOnly = !!state;
-       this.$input.prop( 'readonly', this.readOnly );
+       this.$input.prop( 'readOnly', this.readOnly );
        return this;
 };
 
index 1dbb098..321f3f8 100644 (file)
@@ -1,12 +1,12 @@
 /*!
- * OOjs UI v0.1.0-pre (0a7180f468)
+ * OOjs UI v0.1.0-pre (b91660e612)
  * https://www.mediawiki.org/wiki/OOjs_UI
  *
  * Copyright 2011–2014 OOjs Team and other contributors.
  * Released under the MIT license
  * http://oojs.mit-license.org
  *
- * Date: Wed Apr 23 2014 18:05:30 GMT-0700 (PDT)
+ * Date: Mon Apr 28 2014 12:57:47 GMT-0700 (PDT)
  */
 
 /* Textures */
index 6689b7c..662a688 100644 (file)
@@ -1,35 +1,36 @@
 /**
  * User-agent detection
+ *
+ * @class jQuery.client
+ * @singleton
  */
 ( function ( $ ) {
 
-       /* Private Members */
-
        /**
-        * @var {Object} profileCache Keyed by userAgent string,
+        * @private
+        * @property {Object} profileCache Keyed by userAgent string,
         * value is the parsed $.client.profile object for that user agent.
         */
        var profileCache = {};
 
-       /* Public Methods */
-
        $.client = {
 
                /**
                 * Get an object containing information about the client.
                 *
-                * @param {Object} nav An object with atleast a 'userAgent' and 'platform' key.
-                * Defaults to the global Navigator object.
+                * @param {Object} [nav] An object with a 'userAgent' and 'platform' property.
+                *  Defaults to the global `navigator` object.
                 * @return {Object} The resulting client object will be in the following format:
-                *  {
-                *   'name': 'firefox',
-                *   'layout': 'gecko',
-                *   'layoutVersion': 20101026,
-                *   'platform': 'linux'
-                *   'version': '3.5.1',
-                *   'versionBase': '3',
-                *   'versionNumber': 3.5,
-                *  }
+                *
+                *     {
+                *         'name': 'firefox',
+                *         'layout': 'gecko',
+                *         'layoutVersion': 20101026,
+                *         'platform': 'linux'
+                *         'version': '3.5.1',
+                *         'versionBase': '3',
+                *         'versionNumber': 3.5,
+                *     }
                 */
                profile: function ( nav ) {
                        /*jshint boss: true */
@@ -47,7 +48,7 @@
                                versionNumber,
                                key = nav.userAgent + '|' + nav.platform,
 
-                               /* Configuration */
+                               // Configuration
 
                                // Name of browsers or layout engines we don't recognize
                                uk = 'unknown',
                                // Translations for conforming operating system names
                                platformTranslations = [ ['sunos', 'solaris'], ['wow64', 'win'] ],
 
-                               /* Methods */
-
                                /**
                                 * Performs multiple replacements on a string
+                                * @ignore
                                 */
                                translate = function ( source, translations ) {
                                        var i;
                                        return source;
                                },
 
-                               /* Pre-processing */
+                               // Pre-processing
 
                                ua = nav.userAgent,
                                match,
                        // Everything will be in lowercase from now on
                        ua = ua.toLowerCase();
 
-                       /* Extraction */
+                       // Extraction
 
                        if ( match = new RegExp( '(' + names.join( '|' ) + ')' ).exec( ua ) ) {
                                name = translate( match[1], nameTranslations );
                                version = match[3];
                        }
 
-                       /* Edge Cases -- did I mention about how user agent string lie? */
+                       // Edge Cases -- did I mention about how user agent string lie?
 
                        // Decode Safari's crazy 400+ version numbers
                        if ( name === 'safari' && version > 400 ) {
 
                        versionNumber = parseFloat( version, 10 ) || 0.0;
 
-                       /* Caching */
+                       // Caching
 
                        return profileCache[ key  ] = {
                                name: name,
                 * algorithm, similar to PHP's version_compare ('1.2' < '1.11').
                 *
                 * A browser map is in the following format:
-                * {
-                *   // Multiple rules with configurable operators
-                *   'msie': [['>=', 7], ['!=', 9]],
-                *    // Match no versions
-                *   'iphone': false,
-                *    // Match any version
-                *   'android': null
-                * }
+                *
+                *     {
+                *         // Multiple rules with configurable operators
+                *         'msie': [['>=', 7], ['!=', 9]],
+                *         // Match no versions
+                *         'iphone': false,
+                *         // Match any version
+                *         'android': null
+                *     }
                 *
                 * It can optionally be split into ltr/rtl sections:
-                * {
-                *   'ltr': {
-                *     'android': null,
-                *     'iphone': false
-                *   },
-                *   'rtl': {
-                *     'android': false,
-                *     // rules are not inherited from ltr
-                *     'iphone': false
-                *   }
-                * }
+                *
+                *     {
+                *         'ltr': {
+                *             'android': null,
+                *             'iphone': false
+                *         },
+                *         'rtl': {
+                *             'android': false,
+                *             // rules are not inherited from ltr
+                *             'iphone': false
+                *         }
+                *     }
                 *
                 * @param {Object} map Browser support map
                 * @param {Object} [profile] A client-profile object
index 37bf176..be770a9 100644 (file)
@@ -1,17 +1,27 @@
-/**
+/*!
  * jQuery Color Utilities
- * Written by Krinkle in 2011
+ *
  * Released under the MIT and GPL licenses.
+ *
  * Mostly based on other plugins and functions (linted and optimized a little).
  * Sources cited inline.
  */
 ( function ( $ ) {
+       /**
+        * @class jQuery.colorUtil
+        * @singleton
+        */
        $.colorUtil = {
 
-               // Color Conversion function from highlightFade
-               // By Blair Mitchelmore
-               // http://jquery.offput.ca/highlightFade/
-               // Parse strings looking for color tuples [255,255,255]
+               /**
+                * Parse CSS color strings looking for color tuples
+                *
+                * Based on highlightFade by Blair Mitchelmore
+                * <http://jquery.offput.ca/highlightFade/>
+                *
+                * @param {Array|string} color
+                * @return {Array}
+                */
                getRGB: function ( color ) {
                        /*jshint boss:true */
                        var result;
                        return $.colorUtil.colors[$.trim(color).toLowerCase()];
                },
 
-               // Some named colors to work with
-               // From Interface by Stefan Petre
-               // http://interface.eyecon.ro/
+               /**
+                * Named color map
+                *
+                * Based on Interface by Stefan Petre
+                * <http://interface.eyecon.ro/>
+                *
+                * @property {Object}
+                */
                colors: {
                        aqua: [0,255,255],
                        azure: [240,255,255],
                },
 
                /**
-                * http://mjijackson.com/2008/02/rgb-to-hsl-and-rgb-to-hsv-color-model-conversion-algorithms-in-javascript
-                * Converts an RGB color value to HSL. Conversion formula
-                * adapted from http://en.wikipedia.org/wiki/HSL_color_space.
-                * Assumes r, g, and b are contained in the set [0, 255] and
-                * returns h, s, and l in the set [0, 1].
+                * Convert an RGB color value to HSL.
                 *
-                * @param       Number  R               The red color value
-                * @param       Number  G               The green color value
-                * @param       Number  B               The blue color value
-                * @return      Array                   The HSL representation
+                * Conversion formula based on
+                * <http://mjijackson.com/2008/02/rgb-to-hsl-and-rgb-to-hsv-color-model-conversion-algorithms-in-javascript>
+                *
+                * Adapted from <https://en.wikipedia.org/wiki/HSL_color_space>.
+                *
+                * Assumes `r`, `g`, and `b` are contained in the set `[0, 255]` and
+                * returns `h`, `s`, and `l` in the set `[0, 1]`.
+                *
+                * @param {number} r The red color value
+                * @param {number} g The green color value
+                * @param {number} b The blue color value
+                * @return {number[]} The HSL representation
                 */
-               rgbToHsl: function ( R, G, B ) {
+               rgbToHsl: function ( r, g, b ) {
+                       r = r / 255;
+                       g = g / 255;
+                       b = b / 255;
+
                        var d,
-                               r = R / 255,
-                               g = G / 255,
-                               b = B / 255,
-                               max = Math.max( r, g, b ), min = Math.min( r, g, b ),
+                               max = Math.max( r, g, b ),
+                               min = Math.min( r, g, b ),
                                h,
                                s,
                                l = (max + min) / 2;
                },
 
                /**
-                * http://mjijackson.com/2008/02/rgb-to-hsl-and-rgb-to-hsv-color-model-conversion-algorithms-in-javascript
-                * Converts an HSL color value to RGB. Conversion formula
-                * adapted from http://en.wikipedia.org/wiki/HSL_color_space.
-                * Assumes h, s, and l are contained in the set [0, 1] and
-                * returns r, g, and b in the set [0, 255].
+                * Convert an HSL color value to RGB.
+                *
+                * Conversion formula based on
+                * <http://mjijackson.com/2008/02/rgb-to-hsl-and-rgb-to-hsv-color-model-conversion-algorithms-in-javascript>
+                *
+                * Adapted from <https://en.wikipedia.org/wiki/HSL_color_space>.
+                *
+                * Assumes `h`, `s`, and `l` are contained in the set `[0, 1]` and
+                * returns `r`, `g`, and `b` in the set `[0, 255]`.
                 *
-                * @param       Number  h               The hue
-                * @param       Number  s               The saturation
-                * @param       Number  l               The lightness
-                * @return      Array                   The RGB representation
+                * @param {number} h The hue
+                * @param {number} s The saturation
+                * @param {number} l The lightness
+                * @return {number[]} The RGB representation
                 */
                hslToRgb: function ( h, s, l ) {
                        var r, g, b, hue2rgb, q, p;
                },
 
                /**
-                * Get's a brighter or darker rgb() value string.
+                * Get a brighter or darker rgb() value string.
                 *
-                * @author Krinkle
+                * Usage:
                 *
-                * @example     getCSSColorMod( 'red', +0.1 )
-                * @example     getCSSColorMod( 'rgb(200,50,50)', -0.2 )
+                *     $.colorUtil.getColorBrightness( 'red', +0.1 );
+                *     // > "rgb(255,50,50)"
+                *     $.colorUtil.getColorBrightness( 'rgb(200,50,50)', -0.2 );
+                *     // > "rgb(118,29,29)"
                 *
-                * @param       Mixed   currentColor current value in css
-                * @param       Number  mod wanted brightness modification between -1 and 1
-                * @return      String 'rgb(r,g,b)'
+                * @param {Mixed} currentColor Current value in css
+                * @param {number} mod Wanted brightness modification between -1 and 1
+                * @return {string} Like `'rgb(r,g,b)'`
                 */
                getColorBrightness: function ( currentColor, mod ) {
                        var rgbArr = $.colorUtil.getRGB( currentColor ),
index 01fde4c..c3fd626 100644 (file)
@@ -1,27 +1,22 @@
 /**
  * jQuery makeCollapsible
  *
- * This will enable collapsible-functionality on all passed elements.
- * - Will prevent binding twice to the same element.
- * - Initial state is expanded by default, this can be overriden by adding class
- *   "mw-collapsed" to the "mw-collapsible" element.
- * - Elements made collapsible have jQuery data "mw-made-collapsible" set to true.
- * - The inner content is wrapped in a "div.mw-collapsible-content" (except for tables and lists).
+ * Dual licensed:
+ * - CC BY 3.0 <http://creativecommons.org/licenses/by/3.0>
+ * - GPL2 <http://www.gnu.org/licenses/old-licenses/gpl-2.0.html>
  *
- * @author Krinkle, 2011-2012
- *
- * Dual license:
- * @license CC BY 3.0 <http://creativecommons.org/licenses/by/3.0>
- * @license GPL2 <http://www.gnu.org/licenses/old-licenses/gpl-2.0.html>
+ * @class jQuery.plugin.makeCollapsible
  */
 ( function ( $, mw ) {
+
        /**
         * Handler for a click on a collapsible toggler.
         *
+        * @private
         * @param {jQuery} $collapsible
         * @param {string} action The action this function will take ('expand' or 'collapse').
-        * @param {jQuery|null} [optional] $defaultToggle
-        * @param {Object|undefined} options
+        * @param {jQuery|null} [$defaultToggle]
+        * @param {Object|undefined} [options]
         */
        function toggleElement( $collapsible, action, $defaultToggle, options ) {
                var $collapsibleContent, $containers, hookCallback;
        }
 
        /**
-        * Handles clicking/keypressing on the collapsible element toggle and other
+        * Handle clicking/keypressing on the collapsible element toggle and other
         * situations where a collapsible element is toggled (e.g. the initial
         * toggle for collapsed ones).
         *
+        * @private
         * @param {jQuery} $toggle the clickable toggle itself
         * @param {jQuery} $collapsible the collapsible element
         * @param {jQuery.Event|null} e either the event or null if unavailable
        }
 
        /**
-        * Make any element collapsible.
+        * Enable collapsible-functionality on all elements in the collection.
+        *
+        * - Will prevent binding twice to the same element.
+        * - Initial state is expanded by default, this can be overriden by adding class
+        *   "mw-collapsed" to the "mw-collapsible" element.
+        * - Elements made collapsible have jQuery data "mw-made-collapsible" set to true.
+        * - The inner content is wrapped in a "div.mw-collapsible-content" (except for tables and lists).
         *
-        * Supported options:
-        * - collapseText: text to be used for the toggler when clicking it would
-        *   collapse the element. Default: the 'data-collapsetext' attribute of
-        *   the collapsible element or the content of 'collapsible-collapse'
-        *   message.
-        * - expandText: text to be used for the toggler when clicking it would
-        *   expand the element. Default: the 'data-expandtext' attribute of
-        *   the collapsible element or the content of 'collapsible-expand'
-        *   message.
-        * - collapsed: boolean, whether to collapse immediately. By default
+        * @param {Object} [options]
+        * @param {string} [options.collapseText] Text used for the toggler, when clicking it would
+        *   collapse the element. Default: the 'data-collapsetext' attribute of the
+        *   collapsible element or the content of 'collapsible-collapse' message.
+        * @param {string} [options.expandText] Text used for the toggler, when clicking it would
+        *   expand the element. Default: the 'data-expandtext' attribute of the
+        *   collapsible element or the content of 'collapsible-expand' message.
+        * @param {boolean} [options.collapsed] Whether to collapse immediately. By default
         *   collapse only if the elements has the 'mw-collapsible' class.
-        * - $customTogglers: jQuerified list of elements to be used as togglers
+        * @param {jQuery} [options.$customTogglers] Elements to be used as togglers
         *   for this collapsible element. By default, if the collapsible element
         *   has an id attribute like 'mw-customcollapsible-XXX', elements with a
         *   *class* of 'mw-customtoggle-XXX' are made togglers for it.
-        * - plainMode: boolean, whether to use a "plain mode" when making the
+        * @param {boolean} [options.plainMode=false] Whether to use a "plain mode" when making the
         *   element collapsible - that is, hide entire tables and lists (instead
         *   of hiding only all rows but first of tables, and hiding each list
         *   item separately for lists) and don't wrap other elements in
         *   div.mw-collapsible-content. May only be used with custom togglers.
+        * @return {jQuery}
+        * @chainable
         */
        $.fn.makeCollapsible = function ( options ) {
                if ( options === undefined ) {
                        }
                } );
        };
+
+       /**
+        * @class jQuery
+        * @mixins jQuery.plugin.makeCollapsible
+        */
+
 }( jQuery, mediaWiki ) );
index fd77025..5b9afcf 100644 (file)
         */
        mw.language = {
                /**
-                * Language-related data (keyed by language, contains instances of mw.Map). Loaded dynamically
-                * (see ResourceLoaderLanguageDataModule in PHP docs, aka mediawiki.language.data module).
+                * Language-related data (keyed by language, contains instances of mw.Map).
+                * Loaded dynamically (see ResourceLoaderLanguageDataModule class in PHP, registered
+                * as mediawiki.language.data on the client).
                 *
                 * To set data:
                 *
                 *     // Override, extend or create the language data object of 'nl'
                 *     mw.language.setData( 'nl', 'myKey', 'My value' );
                 *
-                *     // Set multiple values at once
+                *     // Set multiple key/values pairs at once
                 *     mw.language.setData( 'nl', { foo: 'X', bar: 'Y' } );
                 *
                 * To get GrammarForms data for language 'nl':
@@ -47,8 +48,8 @@
                 *
                 * @param {string} langCode
                 * @param {string} dataKey
-                * @return {Mixed} Value stored in the mw.Map (or `undefined` if there is no map for the specified
-                *  langCode).
+                * @return {Mixed} Value stored in the mw.Map (or `undefined` if there is no map for the
+                *  specified langCode)
                 */
                getData: function ( langCode, dataKey ) {
                        var langData = mw.language.data;
@@ -64,8 +65,8 @@
                 * Creates the data mw.Map if there isn't one for the specified language already.
                 *
                 * @param {string} langCode
-                * @param {string|Object} dataKey Key or object of key/values.
-                * @param {Mixed} value Value for dataKey, ignored if dataKey is an object.
+                * @param {string|Object} dataKey Key or object of key/values
+                * @param {Mixed} [value] Value for dataKey, omit if dataKey is an object
                 */
                setData: function ( langCode, dataKey, value ) {
                        var langData = mw.language.data;
index 58d5eda..1c7b662 100644 (file)
@@ -81,6 +81,7 @@ class TitleTest extends MediaWikiTestCase {
                        'Foo/.../Sandbox',
                        'Sandbox/...',
                        'A~~',
+                       ':A',
                        // Length is 256 total, but only title part matters
                        'Category:' . str_repeat( 'x', 248 ),
                        str_repeat( 'x', 252 ),
index f5fd16d..61d662b 100644 (file)
@@ -74,6 +74,7 @@
                        'Foo/.../Sandbox',
                        'Sandbox/...',
                        'A~~',
+                       ':A',
                        // Length is 256 total, but only title part matters
                        'Category:' + repeat( 'x', 248 ),
                        repeat( 'x', 252 )