custom CSS or JavaScript enabled only for registered users.
* (bug 52005) Special pages RecentChanges, RecentChangesLinked and Watchlist
now include a legend describing the symbols used in lists of changes.
+* Improved the accessibility of the tabs in Special:Preferences.
=== Bug fixes in 1.23 ===
* (bug 41759) The "updated since last visit" markers (on history pages, recent
* User::getPageRenderingHash() was deprecated since 1.17 and has been removed.
* The ExpandTemplates extension has been moved into MediaWiki core.
* (bug 52812) Removed "Disable search suggestions" from Preference.
+* (bug 52809) Removed "Disable browser page caching" from Preference.
== Compatibility ==
my talk page, my contributions" etc).
&$personal_urls: Array of link specifiers (see SkinTemplate.php)
&$title: Title object representing the current page
-$skin: Skin object providing context (e.g. to check if the user is logged in, etc.)
+$skin: SkinTemplate object providing context (e.g. to check if the user is logged in, etc.)
'PingLimiter': Allows extensions to override the results of User::pingLimiter().
&$user : User performing the action
return false;
}
- if ( $wgUser->getOption( 'nocache' ) ) {
- wfDebug( "$fname: USER DISABLED CACHE\n", false );
- return false;
- }
-
$timestamp = wfTimestamp( TS_MW, $timestamp );
$lastmod = wfTimestamp( TS_RFC2822, max( $timestamp, $wgUser->getTouched(), $wgCacheEpoch ) );
'ChangeTags' => 'includes/ChangeTags.php',
'ChannelFeed' => 'includes/Feed.php',
'Collation' => 'includes/Collation.php',
+ 'CollationCkb' => 'includes/Collation.php',
'ConcatenatedGzipHistoryBlob' => 'includes/HistoryBlob.php',
'Cookie' => 'includes/Cookie.php',
'CookieJar' => 'includes/Cookie.php',
'FormlessAction' => 'includes/Action.php',
'FormAction' => 'includes/Action.php',
'FormOptions' => 'includes/FormOptions.php',
- 'FormSpecialPage' => 'includes/SpecialPage.php',
+ 'FormSpecialPage' => 'includes/specialpage/FormSpecialPage.php',
'GitInfo' => 'includes/GitInfo.php',
'HistoryBlob' => 'includes/HistoryBlob.php',
'HistoryBlobCurStub' => 'includes/HistoryBlob.php',
'Hooks' => 'includes/Hooks.php',
'Html' => 'includes/Html.php',
'HtmlFormatter' => 'includes/HtmlFormatter.php',
- 'HTMLApiField' => 'includes/HTMLForm.php',
- 'HTMLButtonField' => 'includes/HTMLForm.php',
- 'HTMLCheckField' => 'includes/HTMLForm.php',
- 'HTMLCheckMatrix' => 'includes/HTMLForm.php',
- 'HTMLEditTools' => 'includes/HTMLForm.php',
- 'HTMLFloatField' => 'includes/HTMLForm.php',
- 'HTMLForm' => 'includes/HTMLForm.php',
- 'HTMLFormField' => 'includes/HTMLForm.php',
- 'HTMLFormFieldRequiredOptionsException' => 'includes/HTMLForm.php',
- 'HTMLHiddenField' => 'includes/HTMLForm.php',
- 'HTMLInfoField' => 'includes/HTMLForm.php',
- 'HTMLIntField' => 'includes/HTMLForm.php',
- 'HTMLNestedFilterable' => 'includes/HTMLForm.php',
- 'HTMLMultiSelectField' => 'includes/HTMLForm.php',
- 'HTMLRadioField' => 'includes/HTMLForm.php',
- 'HTMLSelectAndOtherField' => 'includes/HTMLForm.php',
- 'HTMLSelectField' => 'includes/HTMLForm.php',
- 'HTMLSelectOrOtherField' => 'includes/HTMLForm.php',
- 'HTMLSubmitField' => 'includes/HTMLForm.php',
- 'HTMLTextAreaField' => 'includes/HTMLForm.php',
- 'HTMLTextField' => 'includes/HTMLForm.php',
+ 'HTMLApiField' => 'includes/htmlform/HTMLApiField.php',
+ 'HTMLButtonField' => 'includes/htmlform/HTMLButtonField.php',
+ 'HTMLCheckField' => 'includes/htmlform/HTMLCheckField.php',
+ 'HTMLCheckMatrix' => 'includes/htmlform/HTMLCheckMatrix.php',
+ 'HTMLEditTools' => 'includes/htmlform/HTMLEditTools.php',
+ 'HTMLFloatField' => 'includes/htmlform/HTMLFloatField.php',
+ 'HTMLForm' => 'includes/htmlform/HTMLForm.php',
+ 'HTMLFormField' => 'includes/htmlform/HTMLFormField.php',
+ 'HTMLFormFieldRequiredOptionsException' => 'includes/htmlform/HTMLFormFieldRequiredOptionsException.php',
+ 'HTMLHiddenField' => 'includes/htmlform/HTMLHiddenField.php',
+ 'HTMLInfoField' => 'includes/htmlform/HTMLInfoField.php',
+ 'HTMLIntField' => 'includes/htmlform/HTMLIntField.php',
+ 'HTMLNestedFilterable' => 'includes/htmlform/HTMLNestedFilterable.php',
+ 'HTMLMultiSelectField' => 'includes/htmlform/HTMLMultiSelectField.php',
+ 'HTMLRadioField' => 'includes/htmlform/HTMLRadioField.php',
+ 'HTMLSelectAndOtherField' => 'includes/htmlform/HTMLSelectAndOtherField.php',
+ 'HTMLSelectField' => 'includes/htmlform/HTMLSelectField.php',
+ 'HTMLSelectOrOtherField' => 'includes/htmlform/HTMLSelectOrOtherField.php',
+ 'HTMLSubmitField' => 'includes/htmlform/HTMLSubmitField.php',
+ 'HTMLTextAreaField' => 'includes/htmlform/HTMLTextAreaField.php',
+ 'HTMLTextField' => 'includes/htmlform/HTMLTextField.php',
'Http' => 'includes/HttpFunctions.php',
'HttpError' => 'includes/Exception.php',
'ICacheHelper' => 'includes/CacheHelper.php',
'ImageQueryPage' => 'includes/ImageQueryPage.php',
'ImportStreamSource' => 'includes/Import.php',
'ImportStringSource' => 'includes/Import.php',
- 'IncludableSpecialPage' => 'includes/SpecialPage.php',
+ 'IncludableSpecialPage' => 'includes/specialpage/IncludableSpecialPage.php',
'IndexPager' => 'includes/Pager.php',
'Interwiki' => 'includes/interwiki/Interwiki.php',
'LCStore' => 'includes/cache/LocalisationCache.php',
'RawMessage' => 'includes/Message.php',
'RdfMetaData' => 'includes/Metadata.php',
'ReadOnlyError' => 'includes/Exception.php',
- 'RedirectSpecialArticle' => 'includes/SpecialPage.php',
- 'RedirectSpecialPage' => 'includes/SpecialPage.php',
+ 'RedirectSpecialArticle' => 'includes/specialpage/RedirectSpecialPage.php',
+ 'RedirectSpecialPage' => 'includes/specialpage/RedirectSpecialPage.php',
'ReverseChronologicalPager' => 'includes/Pager.php',
'RevisionItem' => 'includes/RevisionList.php',
'RevisionItemBase' => 'includes/RevisionList.php',
'SiteStatsInit' => 'includes/SiteStats.php',
'Skin' => 'includes/Skin.php',
'SkinTemplate' => 'includes/SkinTemplate.php',
- 'SpecialCreateAccount' => 'includes/SpecialPage.php',
- 'SpecialListAdmins' => 'includes/SpecialPage.php',
- 'SpecialListBots' => 'includes/SpecialPage.php',
- 'SpecialMycontributions' => 'includes/SpecialPage.php',
- 'SpecialMypage' => 'includes/SpecialPage.php',
- 'SpecialMytalk' => 'includes/SpecialPage.php',
- 'SpecialMyuploads' => 'includes/SpecialPage.php',
- 'SpecialAllMyUploads' => 'includes/SpecialPage.php',
- 'SpecialPage' => 'includes/SpecialPage.php',
+ 'SpecialCreateAccount' => 'includes/specials/SpecialCreateAccount.php',
+ 'SpecialListAdmins' => 'includes/specials/SpecialListusers.php',
+ 'SpecialListBots' => 'includes/specials/SpecialListusers.php',
+ 'SpecialMycontributions' => 'includes/specials/SpecialMyRedirectPages.php',
+ 'SpecialMypage' => 'includes/specials/SpecialMyRedirectPages.php',
+ 'SpecialMytalk' => 'includes/specials/SpecialMyRedirectPages.php',
+ 'SpecialMyuploads' => 'includes/specials/SpecialMyRedirectPages.php',
+ 'SpecialAllMyUploads' => 'includes/specials/SpecialMyRedirectPages.php',
+ 'SpecialPage' => 'includes/specialpage/SpecialPage.php',
'SpecialPageFactory' => 'includes/SpecialPageFactory.php',
- 'SpecialRedirectToSpecial' => 'includes/SpecialPage.php',
+ 'SpecialRedirectToSpecial' => 'includes/specialpage/RedirectSpecialPage.php',
'SquidPurgeClient' => 'includes/SquidPurgeClient.php',
'SquidPurgeClientPool' => 'includes/SquidPurgeClient.php',
'StatCounter' => 'includes/StatCounter.php',
'TitleArray' => 'includes/TitleArray.php',
'TitleArrayFromResult' => 'includes/TitleArray.php',
'ThrottledError' => 'includes/Exception.php',
- 'UnlistedSpecialPage' => 'includes/SpecialPage.php',
+ 'UnlistedSpecialPage' => 'includes/specialpage/UnlistedSpecialPage.php',
'UploadSourceAdapter' => 'includes/Import.php',
'UppercaseCollation' => 'includes/Collation.php',
'User' => 'includes/User.php',
'SpecialNewpages' => 'includes/specials/SpecialNewpages.php',
'SpecialPasswordReset' => 'includes/specials/SpecialPasswordReset.php',
'SpecialPagesWithProp' => 'includes/specials/SpecialPagesWithProp.php',
- 'SpecialPermanentLink' => 'includes/SpecialPage.php',
+ 'SpecialPermanentLink' => 'includes/specials/SpecialPermanentLink.php',
'SpecialPreferences' => 'includes/specials/SpecialPreferences.php',
'SpecialPrefixindex' => 'includes/specials/SpecialPrefixindex.php',
'SpecialProtectedpages' => 'includes/specials/SpecialProtectedpages.php',
return new IdentityCollation;
case 'uca-default':
return new IcuCollation( 'root' );
+ case 'xx-uca-ckb':
+ return new CollationCkb;
default:
$match = array();
if ( preg_match( '/^uca-([a-z@=-]+)$/', $collationName, $match ) ) {
}
class IcuCollation extends Collation {
- const FIRST_LETTER_VERSION = 1;
+ const FIRST_LETTER_VERSION = 2;
- var $primaryCollator, $mainCollator, $locale;
+ var $primaryCollator, $mainCollator, $locale, $digitTransformLanguage;
var $firstLetterData;
/**
throw new MWException( 'An ICU collation was requested, ' .
'but the intl extension is not available.' );
}
+
$this->locale = $locale;
+ // Drop everything after the '@' in locale's name
+ $localeParts = explode( '@', $locale );
+ $this->digitTransformLanguage = Language::factory( $locale === 'root' ? 'en' : $localeParts[0] );
+
$this->mainCollator = Collator::create( $locale );
if ( !$this->mainCollator ) {
throw new MWException( "Invalid ICU locale specified for collation: $locale" );
}
$cache = wfGetCache( CACHE_ANYTHING );
- $cacheKey = wfMemcKey( 'first-letters', $this->locale );
+ $cacheKey = wfMemcKey( 'first-letters', $this->locale, $this->digitTransformLanguage->getCode() );
$cacheEntry = $cache->get( $cacheKey );
if ( $cacheEntry && isset( $cacheEntry['version'] )
if ( isset( self::$tailoringFirstLetters['-' . $this->locale] ) ) {
$letters = array_diff( $letters, self::$tailoringFirstLetters['-' . $this->locale] );
}
+ // Apply digit transforms
+ $digits = array( '0', '1', '2', '3', '4', '5', '6', '7', '8', '9' );
+ $letters = array_diff( $letters, $digits );
+ foreach ( $digits as $digit ) {
+ $letters[] = $this->digitTransformLanguage->formatNum( $digit, true );
+ }
} else {
$letters = wfGetPrecompiledData( "first-letters-{$this->locale}.ser" );
if ( $letters === false ) {
}
}
}
+
+/**
+ * Workaround for the lack of support of Sorani Kurdish / Central Kurdish language ('ckb') in ICU.
+ *
+ * Uses the same collation rules as Persian / Farsi ('fa'), but different characters for digits.
+ */
+class CollationCkb extends IcuCollation {
+ function __construct() {
+ // This will set $locale and collators, which affect the actual sorting order
+ parent::__construct( 'fa' );
+ // Override the 'fa' language set by parent constructor, which affects #getFirstLetterData()
+ $this->digitTransformLanguage = Language::factory( 'ckb' );
+ }
+}
'math' => 1,
'minordefault' => 0,
'newpageshidepatrolled' => 0,
- 'nocache' => 0,
'noconvertlink' => 0,
'norollbackdiff' => 0,
'numberheadings' => 0,
28 => 's', 29 => 't', 30 => 'u', 31 => 'v', 32 => 'w', 33 => 'x',
34 => 'y', 35 => 'z',
- '0' => 0, '1' => 1, '2' => 2, '3' => 3, '4' => 4, '5' => 5,
- '6' => 6, '7' => 7, '8' => 8, '9' => 9, 'a' => 10, 'b' => 11,
+ '0' => 0, '1' => 1, '2' => 2, '3' => 3, '4' => 4, '5' => 5,
+ '6' => 6, '7' => 7, '8' => 8, '9' => 9, 'a' => 10, 'b' => 11,
'c' => 12, 'd' => 13, 'e' => 14, 'f' => 15, 'g' => 16, 'h' => 17,
'i' => 18, 'j' => 19, 'k' => 20, 'l' => 21, 'm' => 22, 'n' => 23,
'o' => 24, 'p' => 25, 'q' => 26, 'r' => 27, 's' => 28, 't' => 29,
+++ /dev/null
-<?php
-/**
- * HTML form generation and submission handling.
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License along
- * with this program; if not, write to the Free Software Foundation, Inc.,
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- * http://www.gnu.org/copyleft/gpl.html
- *
- * @file
- */
-
-/**
- * Object handling generic submission, CSRF protection, layout and
- * other logic for UI forms. in a reusable manner.
- *
- * In order to generate the form, the HTMLForm object takes an array
- * structure detailing the form fields available. Each element of the
- * array is a basic property-list, including the type of field, the
- * label it is to be given in the form, callbacks for validation and
- * 'filtering', and other pertinent information.
- *
- * Field types are implemented as subclasses of the generic HTMLFormField
- * object, and typically implement at least getInputHTML, which generates
- * the HTML for the input field to be placed in the table.
- *
- * You can find extensive documentation on the www.mediawiki.org wiki:
- * - http://www.mediawiki.org/wiki/HTMLForm
- * - http://www.mediawiki.org/wiki/HTMLForm/tutorial
- *
- * The constructor input is an associative array of $fieldname => $info,
- * where $info is an Associative Array with any of the following:
- *
- * 'class' -- the subclass of HTMLFormField that will be used
- * to create the object. *NOT* the CSS class!
- * 'type' -- roughly translates into the <select> type attribute.
- * if 'class' is not specified, this is used as a map
- * through HTMLForm::$typeMappings to get the class name.
- * 'default' -- default value when the form is displayed
- * 'id' -- HTML id attribute
- * 'cssclass' -- CSS class
- * 'options' -- varies according to the specific object.
- * 'label-message' -- message key for a message to use as the label.
- * can be an array of msg key and then parameters to
- * the message.
- * 'label' -- alternatively, a raw text message. Overridden by
- * label-message
- * 'help' -- message text for a message to use as a help text.
- * 'help-message' -- message key for a message to use as a help text.
- * can be an array of msg key and then parameters to
- * the message.
- * Overwrites 'help-messages' and 'help'.
- * 'help-messages' -- array of message key. As above, each item can
- * be an array of msg key and then parameters.
- * Overwrites 'help'.
- * 'required' -- passed through to the object, indicating that it
- * is a required field.
- * 'size' -- the length of text fields
- * 'filter-callback -- a function name to give you the chance to
- * massage the inputted value before it's processed.
- * @see HTMLForm::filter()
- * 'validation-callback' -- a function name to give you the chance
- * to impose extra validation on the field input.
- * @see HTMLForm::validate()
- * 'name' -- By default, the 'name' attribute of the input field
- * is "wp{$fieldname}". If you want a different name
- * (eg one without the "wp" prefix), specify it here and
- * it will be used without modification.
- *
- * Since 1.20, you can chain mutators to ease the form generation:
- * @par Example:
- * @code
- * $form = new HTMLForm( $someFields );
- * $form->setMethod( 'get' )
- * ->setWrapperLegendMsg( 'message-key' )
- * ->prepareForm()
- * ->displayForm( '' );
- * @endcode
- * Note that you will have prepareForm and displayForm at the end. Other
- * methods call done after that would simply not be part of the form :(
- *
- * TODO: Document 'section' / 'subsection' stuff
- */
-class HTMLForm extends ContextSource {
-
- // A mapping of 'type' inputs onto standard HTMLFormField subclasses
- public static $typeMappings = array(
- 'api' => 'HTMLApiField',
- 'text' => 'HTMLTextField',
- 'textarea' => 'HTMLTextAreaField',
- 'select' => 'HTMLSelectField',
- 'radio' => 'HTMLRadioField',
- 'multiselect' => 'HTMLMultiSelectField',
- 'check' => 'HTMLCheckField',
- 'toggle' => 'HTMLCheckField',
- 'int' => 'HTMLIntField',
- 'float' => 'HTMLFloatField',
- 'info' => 'HTMLInfoField',
- 'selectorother' => 'HTMLSelectOrOtherField',
- 'selectandother' => 'HTMLSelectAndOtherField',
- 'submit' => 'HTMLSubmitField',
- 'hidden' => 'HTMLHiddenField',
- 'edittools' => 'HTMLEditTools',
- 'checkmatrix' => 'HTMLCheckMatrix',
-
- // HTMLTextField will output the correct type="" attribute automagically.
- // There are about four zillion other HTML5 input types, like url, but
- // we don't use those at the moment, so no point in adding all of them.
- 'email' => 'HTMLTextField',
- 'password' => 'HTMLTextField',
- );
-
- protected $mMessagePrefix;
-
- /** @var HTMLFormField[] */
- protected $mFlatFields;
-
- protected $mFieldTree;
- protected $mShowReset = false;
- protected $mShowSubmit = true;
- public $mFieldData;
-
- protected $mSubmitCallback;
- protected $mValidationErrorMessage;
-
- protected $mPre = '';
- protected $mHeader = '';
- protected $mFooter = '';
- protected $mSectionHeaders = array();
- protected $mSectionFooters = array();
- protected $mPost = '';
- protected $mId;
- protected $mTableId = '';
-
- protected $mSubmitID;
- protected $mSubmitName;
- protected $mSubmitText;
- protected $mSubmitTooltip;
-
- protected $mTitle;
- protected $mMethod = 'post';
-
- /**
- * Form action URL. false means we will use the URL to set Title
- * @since 1.19
- * @var bool|string
- */
- protected $mAction = false;
-
- protected $mUseMultipart = false;
- protected $mHiddenFields = array();
- protected $mButtons = array();
-
- protected $mWrapperLegend = false;
-
- /**
- * If true, sections that contain both fields and subsections will
- * render their subsections before their fields.
- *
- * Subclasses may set this to false to render subsections after fields
- * instead.
- */
- protected $mSubSectionBeforeFields = true;
-
- /**
- * Format in which to display form. For viable options,
- * @see $availableDisplayFormats
- * @var String
- */
- protected $displayFormat = 'table';
-
- /**
- * Available formats in which to display the form
- * @var Array
- */
- protected $availableDisplayFormats = array(
- 'table',
- 'div',
- 'raw',
- 'vform',
- );
-
- /**
- * Build a new HTMLForm from an array of field attributes
- * @param array $descriptor of Field constructs, as described above
- * @param $context IContextSource available since 1.18, will become compulsory in 1.18.
- * Obviates the need to call $form->setTitle()
- * @param string $messagePrefix a prefix to go in front of default messages
- */
- public function __construct( $descriptor, /*IContextSource*/ $context = null, $messagePrefix = '' ) {
- if ( $context instanceof IContextSource ) {
- $this->setContext( $context );
- $this->mTitle = false; // We don't need them to set a title
- $this->mMessagePrefix = $messagePrefix;
- } elseif ( is_null( $context ) && $messagePrefix !== '' ) {
- $this->mMessagePrefix = $messagePrefix;
- } elseif ( is_string( $context ) && $messagePrefix === '' ) {
- // B/C since 1.18
- // it's actually $messagePrefix
- $this->mMessagePrefix = $context;
- }
-
- // Expand out into a tree.
- $loadedDescriptor = array();
- $this->mFlatFields = array();
-
- foreach ( $descriptor as $fieldname => $info ) {
- $section = isset( $info['section'] )
- ? $info['section']
- : '';
-
- if ( isset( $info['type'] ) && $info['type'] == 'file' ) {
- $this->mUseMultipart = true;
- }
-
- $field = self::loadInputFromParameters( $fieldname, $info );
- // FIXME During field's construct, the parent form isn't available!
- // could add a 'parent' name-value to $info, could add a third parameter.
- $field->mParent = $this;
-
- // vform gets too much space if empty labels generate HTML.
- if ( $this->isVForm() ) {
- $field->setShowEmptyLabel( false );
- }
-
- $setSection =& $loadedDescriptor;
- if ( $section ) {
- $sectionParts = explode( '/', $section );
-
- while ( count( $sectionParts ) ) {
- $newName = array_shift( $sectionParts );
-
- if ( !isset( $setSection[$newName] ) ) {
- $setSection[$newName] = array();
- }
-
- $setSection =& $setSection[$newName];
- }
- }
-
- $setSection[$fieldname] = $field;
- $this->mFlatFields[$fieldname] = $field;
- }
-
- $this->mFieldTree = $loadedDescriptor;
- }
-
- /**
- * Set format in which to display the form
- * @param string $format the name of the format to use, must be one of
- * $this->availableDisplayFormats
- * @throws MWException
- * @since 1.20
- * @return HTMLForm $this for chaining calls (since 1.20)
- */
- public function setDisplayFormat( $format ) {
- if ( !in_array( $format, $this->availableDisplayFormats ) ) {
- throw new MWException( 'Display format must be one of ' . print_r( $this->availableDisplayFormats, true ) );
- }
- $this->displayFormat = $format;
- return $this;
- }
-
- /**
- * Getter for displayFormat
- * @since 1.20
- * @return String
- */
- public function getDisplayFormat() {
- return $this->displayFormat;
- }
-
- /**
- * Test if displayFormat is 'vform'
- * @since 1.22
- * @return Bool
- */
- public function isVForm() {
- return $this->displayFormat === 'vform';
- }
-
- /**
- * Add the HTMLForm-specific JavaScript, if it hasn't been
- * done already.
- * @deprecated since 1.18 load modules with ResourceLoader instead
- */
- static function addJS() {
- wfDeprecated( __METHOD__, '1.18' );
- }
-
- /**
- * Initialise a new Object for the field
- * @param $fieldname string
- * @param string $descriptor input Descriptor, as described above
- * @throws MWException
- * @return HTMLFormField subclass
- */
- static function loadInputFromParameters( $fieldname, $descriptor ) {
- if ( isset( $descriptor['class'] ) ) {
- $class = $descriptor['class'];
- } elseif ( isset( $descriptor['type'] ) ) {
- $class = self::$typeMappings[$descriptor['type']];
- $descriptor['class'] = $class;
- } else {
- $class = null;
- }
-
- if ( !$class ) {
- throw new MWException( "Descriptor with no class: " . print_r( $descriptor, true ) );
- }
-
- $descriptor['fieldname'] = $fieldname;
-
- # TODO
- # This will throw a fatal error whenever someone try to use
- # 'class' to feed a CSS class instead of 'cssclass'. Would be
- # great to avoid the fatal error and show a nice error.
- $obj = new $class( $descriptor );
-
- return $obj;
- }
-
- /**
- * Prepare form for submission.
- *
- * @attention When doing method chaining, that should be the very last
- * method call before displayForm().
- *
- * @throws MWException
- * @return HTMLForm $this for chaining calls (since 1.20)
- */
- function prepareForm() {
- # Check if we have the info we need
- if ( !$this->mTitle instanceof Title && $this->mTitle !== false ) {
- throw new MWException( "You must call setTitle() on an HTMLForm" );
- }
-
- # Load data from the request.
- $this->loadData();
- return $this;
- }
-
- /**
- * Try submitting, with edit token check first
- * @return Status|boolean
- */
- function tryAuthorizedSubmit() {
- $result = false;
-
- $submit = false;
- if ( $this->getMethod() != 'post' ) {
- $submit = true; // no session check needed
- } elseif ( $this->getRequest()->wasPosted() ) {
- $editToken = $this->getRequest()->getVal( 'wpEditToken' );
- if ( $this->getUser()->isLoggedIn() || $editToken != null ) {
- // Session tokens for logged-out users have no security value.
- // However, if the user gave one, check it in order to give a nice
- // "session expired" error instead of "permission denied" or such.
- $submit = $this->getUser()->matchEditToken( $editToken );
- } else {
- $submit = true;
- }
- }
-
- if ( $submit ) {
- $result = $this->trySubmit();
- }
-
- return $result;
- }
-
- /**
- * The here's-one-I-made-earlier option: do the submission if
- * posted, or display the form with or without funky validation
- * errors
- * @return Bool or Status whether submission was successful.
- */
- function show() {
- $this->prepareForm();
-
- $result = $this->tryAuthorizedSubmit();
- if ( $result === true || ( $result instanceof Status && $result->isGood() ) ) {
- return $result;
- }
-
- $this->displayForm( $result );
- return false;
- }
-
- /**
- * Validate all the fields, and call the submission callback
- * function if everything is kosher.
- * @throws MWException
- * @return Mixed Bool true == Successful submission, Bool false
- * == No submission attempted, anything else == Error to
- * display.
- */
- function trySubmit() {
- # Check for validation
- foreach ( $this->mFlatFields as $fieldname => $field ) {
- if ( !empty( $field->mParams['nodata'] ) ) {
- continue;
- }
- if ( $field->validate(
- $this->mFieldData[$fieldname],
- $this->mFieldData )
- !== true
- ) {
- return isset( $this->mValidationErrorMessage )
- ? $this->mValidationErrorMessage
- : array( 'htmlform-invalid-input' );
- }
- }
-
- $callback = $this->mSubmitCallback;
- if ( !is_callable( $callback ) ) {
- throw new MWException( 'HTMLForm: no submit callback provided. Use setSubmitCallback() to set one.' );
- }
-
- $data = $this->filterDataForSubmit( $this->mFieldData );
-
- $res = call_user_func( $callback, $data, $this );
-
- return $res;
- }
-
- /**
- * Set a callback to a function to do something with the form
- * once it's been successfully validated.
- * @param string $cb function name. The function will be passed
- * the output from HTMLForm::filterDataForSubmit, and must
- * return Bool true on success, Bool false if no submission
- * was attempted, or String HTML output to display on error.
- * @return HTMLForm $this for chaining calls (since 1.20)
- */
- function setSubmitCallback( $cb ) {
- $this->mSubmitCallback = $cb;
- return $this;
- }
-
- /**
- * Set a message to display on a validation error.
- * @param $msg Mixed String or Array of valid inputs to wfMessage()
- * (so each entry can be either a String or Array)
- * @return HTMLForm $this for chaining calls (since 1.20)
- */
- function setValidationErrorMessage( $msg ) {
- $this->mValidationErrorMessage = $msg;
- return $this;
- }
-
- /**
- * Set the introductory message, overwriting any existing message.
- * @param string $msg complete text of message to display
- * @return HTMLForm $this for chaining calls (since 1.20)
- */
- function setIntro( $msg ) {
- $this->setPreText( $msg );
- return $this;
- }
-
- /**
- * Set the introductory message, overwriting any existing message.
- * @since 1.19
- * @param string $msg complete text of message to display
- * @return HTMLForm $this for chaining calls (since 1.20)
- */
- function setPreText( $msg ) {
- $this->mPre = $msg;
- return $this;
- }
-
- /**
- * Add introductory text.
- * @param string $msg complete text of message to display
- * @return HTMLForm $this for chaining calls (since 1.20)
- */
- function addPreText( $msg ) {
- $this->mPre .= $msg;
- return $this;
- }
-
- /**
- * Add header text, inside the form.
- * @param string $msg complete text of message to display
- * @param string $section The section to add the header to
- * @return HTMLForm $this for chaining calls (since 1.20)
- */
- function addHeaderText( $msg, $section = null ) {
- if ( is_null( $section ) ) {
- $this->mHeader .= $msg;
- } else {
- if ( !isset( $this->mSectionHeaders[$section] ) ) {
- $this->mSectionHeaders[$section] = '';
- }
- $this->mSectionHeaders[$section] .= $msg;
- }
- return $this;
- }
-
- /**
- * Set header text, inside the form.
- * @since 1.19
- * @param string $msg complete text of message to display
- * @param $section The section to add the header to
- * @return HTMLForm $this for chaining calls (since 1.20)
- */
- function setHeaderText( $msg, $section = null ) {
- if ( is_null( $section ) ) {
- $this->mHeader = $msg;
- } else {
- $this->mSectionHeaders[$section] = $msg;
- }
- return $this;
- }
-
- /**
- * Add footer text, inside the form.
- * @param string $msg complete text of message to display
- * @param string $section The section to add the footer text to
- * @return HTMLForm $this for chaining calls (since 1.20)
- */
- function addFooterText( $msg, $section = null ) {
- if ( is_null( $section ) ) {
- $this->mFooter .= $msg;
- } else {
- if ( !isset( $this->mSectionFooters[$section] ) ) {
- $this->mSectionFooters[$section] = '';
- }
- $this->mSectionFooters[$section] .= $msg;
- }
- return $this;
- }
-
- /**
- * Set footer text, inside the form.
- * @since 1.19
- * @param string $msg complete text of message to display
- * @param string $section The section to add the footer text to
- * @return HTMLForm $this for chaining calls (since 1.20)
- */
- function setFooterText( $msg, $section = null ) {
- if ( is_null( $section ) ) {
- $this->mFooter = $msg;
- } else {
- $this->mSectionFooters[$section] = $msg;
- }
- return $this;
- }
-
- /**
- * Add text to the end of the display.
- * @param string $msg complete text of message to display
- * @return HTMLForm $this for chaining calls (since 1.20)
- */
- function addPostText( $msg ) {
- $this->mPost .= $msg;
- return $this;
- }
-
- /**
- * Set text at the end of the display.
- * @param string $msg complete text of message to display
- * @return HTMLForm $this for chaining calls (since 1.20)
- */
- function setPostText( $msg ) {
- $this->mPost = $msg;
- return $this;
- }
-
- /**
- * Add a hidden field to the output
- * @param string $name field name. This will be used exactly as entered
- * @param string $value field value
- * @param $attribs Array
- * @return HTMLForm $this for chaining calls (since 1.20)
- */
- public function addHiddenField( $name, $value, $attribs = array() ) {
- $attribs += array( 'name' => $name );
- $this->mHiddenFields[] = array( $value, $attribs );
- return $this;
- }
-
- /**
- * Add an array of hidden fields to the output
- *
- * @since 1.22
- * @param array $fields Associative array of fields to add;
- * mapping names to their values
- * @return HTMLForm $this for chaining calls
- */
- public function addHiddenFields( array $fields ) {
- foreach ( $fields as $name => $value ) {
- $this->mHiddenFields[] = array( $value, array( 'name' => $name ) );
- }
- return $this;
- }
-
- /**
- * Add a button to the form
- * @param string $name field name.
- * @param string $value field value
- * @param string $id DOM id for the button (default: null)
- * @param $attribs Array
- * @return HTMLForm $this for chaining calls (since 1.20)
- */
- public function addButton( $name, $value, $id = null, $attribs = null ) {
- $this->mButtons[] = compact( 'name', 'value', 'id', 'attribs' );
- return $this;
- }
-
- /**
- * Display the form (sending to the context's OutputPage object), with an
- * appropriate error message or stack of messages, and any validation errors, etc.
- *
- * @attention You should call prepareForm() before calling this function.
- * Moreover, when doing method chaining this should be the very last method
- * call just after prepareForm().
- *
- * @param $submitResult Mixed output from HTMLForm::trySubmit()
- * @return Nothing, should be last call
- */
- function displayForm( $submitResult ) {
- $this->getOutput()->addHTML( $this->getHTML( $submitResult ) );
- }
-
- /**
- * Returns the raw HTML generated by the form
- * @param $submitResult Mixed output from HTMLForm::trySubmit()
- * @return string
- */
- function getHTML( $submitResult ) {
- # For good measure (it is the default)
- $this->getOutput()->preventClickjacking();
- $this->getOutput()->addModules( 'mediawiki.htmlform' );
- if ( $this->isVForm() ) {
- $this->getOutput()->addModuleStyles( 'mediawiki.ui' );
- // TODO should vertical form set setWrapperLegend( false )
- // to hide ugly fieldsets?
- }
-
- $html = ''
- . $this->getErrors( $submitResult )
- . $this->mHeader
- . $this->getBody()
- . $this->getHiddenFields()
- . $this->getButtons()
- . $this->mFooter;
-
- $html = $this->wrapForm( $html );
-
- return '' . $this->mPre . $html . $this->mPost;
- }
-
- /**
- * Wrap the form innards in an actual "<form>" element
- * @param string $html HTML contents to wrap.
- * @return String wrapped HTML.
- */
- function wrapForm( $html ) {
-
- # Include a <fieldset> wrapper for style, if requested.
- if ( $this->mWrapperLegend !== false ) {
- $html = Xml::fieldset( $this->mWrapperLegend, $html );
- }
- # Use multipart/form-data
- $encType = $this->mUseMultipart
- ? 'multipart/form-data'
- : 'application/x-www-form-urlencoded';
- # Attributes
- $attribs = array(
- 'action' => $this->getAction(),
- 'method' => $this->getMethod(),
- 'class' => array( 'visualClear' ),
- 'enctype' => $encType,
- );
- if ( !empty( $this->mId ) ) {
- $attribs['id'] = $this->mId;
- }
-
- if ( $this->isVForm() ) {
- array_push( $attribs['class'], 'mw-ui-vform', 'mw-ui-container' );
- }
- return Html::rawElement( 'form', $attribs, $html );
- }
-
- /**
- * Get the hidden fields that should go inside the form.
- * @return String HTML.
- */
- function getHiddenFields() {
- global $wgArticlePath;
-
- $html = '';
- if ( $this->getMethod() == 'post' ) {
- $html .= Html::hidden( 'wpEditToken', $this->getUser()->getEditToken(), array( 'id' => 'wpEditToken' ) ) . "\n";
- $html .= Html::hidden( 'title', $this->getTitle()->getPrefixedText() ) . "\n";
- }
-
- if ( strpos( $wgArticlePath, '?' ) !== false && $this->getMethod() == 'get' ) {
- $html .= Html::hidden( 'title', $this->getTitle()->getPrefixedText() ) . "\n";
- }
-
- foreach ( $this->mHiddenFields as $data ) {
- list( $value, $attribs ) = $data;
- $html .= Html::hidden( $attribs['name'], $value, $attribs ) . "\n";
- }
-
- return $html;
- }
-
- /**
- * Get the submit and (potentially) reset buttons.
- * @return String HTML.
- */
- function getButtons() {
- $html = '<span class="mw-htmlform-submit-buttons">';
-
- if ( $this->mShowSubmit ) {
- $attribs = array();
-
- if ( isset( $this->mSubmitID ) ) {
- $attribs['id'] = $this->mSubmitID;
- }
-
- if ( isset( $this->mSubmitName ) ) {
- $attribs['name'] = $this->mSubmitName;
- }
-
- if ( isset( $this->mSubmitTooltip ) ) {
- $attribs += Linker::tooltipAndAccesskeyAttribs( $this->mSubmitTooltip );
- }
-
- $attribs['class'] = array( 'mw-htmlform-submit' );
-
- if ( $this->isVForm() ) {
- // mw-ui-block is necessary because the buttons aren't necessarily in an
- // immediate child div of the vform.
- array_push( $attribs['class'], 'mw-ui-button', 'mw-ui-big', 'mw-ui-primary', 'mw-ui-block' );
- }
-
- $html .= Xml::submitButton( $this->getSubmitText(), $attribs ) . "\n";
-
- // Buttons are top-level form elements in table and div layouts,
- // but vform wants all elements inside divs to get spaced-out block
- // styling.
- if ( $this->isVForm() ) {
- $html = Html::rawElement( 'div', null, "\n$html\n" );
- }
- }
-
- if ( $this->mShowReset ) {
- $html .= Html::element(
- 'input',
- array(
- 'type' => 'reset',
- 'value' => $this->msg( 'htmlform-reset' )->text()
- )
- ) . "\n";
- }
-
- foreach ( $this->mButtons as $button ) {
- $attrs = array(
- 'type' => 'submit',
- 'name' => $button['name'],
- 'value' => $button['value']
- );
-
- if ( $button['attribs'] ) {
- $attrs += $button['attribs'];
- }
-
- if ( isset( $button['id'] ) ) {
- $attrs['id'] = $button['id'];
- }
-
- $html .= Html::element( 'input', $attrs );
- }
-
- $html .= '</span>';
-
- return $html;
- }
-
- /**
- * Get the whole body of the form.
- * @return String
- */
- function getBody() {
- return $this->displaySection( $this->mFieldTree, $this->mTableId );
- }
-
- /**
- * Format and display an error message stack.
- * @param $errors String|Array|Status
- * @return String
- */
- function getErrors( $errors ) {
- if ( $errors instanceof Status ) {
- if ( $errors->isOK() ) {
- $errorstr = '';
- } else {
- $errorstr = $this->getOutput()->parse( $errors->getWikiText() );
- }
- } elseif ( is_array( $errors ) ) {
- $errorstr = $this->formatErrors( $errors );
- } else {
- $errorstr = $errors;
- }
-
- return $errorstr
- ? Html::rawElement( 'div', array( 'class' => 'error' ), $errorstr )
- : '';
- }
-
- /**
- * Format a stack of error messages into a single HTML string
- * @param array $errors of message keys/values
- * @return String HTML, a "<ul>" list of errors
- */
- public static function formatErrors( $errors ) {
- $errorstr = '';
-
- foreach ( $errors as $error ) {
- if ( is_array( $error ) ) {
- $msg = array_shift( $error );
- } else {
- $msg = $error;
- $error = array();
- }
-
- $errorstr .= Html::rawElement(
- 'li',
- array(),
- wfMessage( $msg, $error )->parse()
- );
- }
-
- $errorstr = Html::rawElement( 'ul', array(), $errorstr );
-
- return $errorstr;
- }
-
- /**
- * Set the text for the submit button
- * @param string $t plaintext.
- * @return HTMLForm $this for chaining calls (since 1.20)
- */
- function setSubmitText( $t ) {
- $this->mSubmitText = $t;
- return $this;
- }
-
- /**
- * Set the text for the submit button to a message
- * @since 1.19
- * @param string $msg message key
- * @return HTMLForm $this for chaining calls (since 1.20)
- */
- public function setSubmitTextMsg( $msg ) {
- $this->setSubmitText( $this->msg( $msg )->text() );
- return $this;
- }
-
- /**
- * Get the text for the submit button, either customised or a default.
- * @return string
- */
- function getSubmitText() {
- return $this->mSubmitText
- ? $this->mSubmitText
- : $this->msg( 'htmlform-submit' )->text();
- }
-
- /**
- * @param string $name Submit button name
- * @return HTMLForm $this for chaining calls (since 1.20)
- */
- public function setSubmitName( $name ) {
- $this->mSubmitName = $name;
- return $this;
- }
-
- /**
- * @param string $name Tooltip for the submit button
- * @return HTMLForm $this for chaining calls (since 1.20)
- */
- public function setSubmitTooltip( $name ) {
- $this->mSubmitTooltip = $name;
- return $this;
- }
-
- /**
- * Set the id for the submit button.
- * @param $t String.
- * @todo FIXME: Integrity of $t is *not* validated
- * @return HTMLForm $this for chaining calls (since 1.20)
- */
- function setSubmitID( $t ) {
- $this->mSubmitID = $t;
- return $this;
- }
-
- /**
- * Stop a default submit button being shown for this form. This implies that an
- * alternate submit method must be provided manually.
- *
- * @since 1.22
- *
- * @param bool $suppressSubmit Set to false to re-enable the button again
- *
- * @return HTMLForm $this for chaining calls
- */
- function suppressDefaultSubmit( $suppressSubmit = true ) {
- $this->mShowSubmit = !$suppressSubmit;
- return $this;
- }
-
- /**
- * Set the id of the \<table\> or outermost \<div\> element.
- *
- * @since 1.22
- * @param string $id new value of the id attribute, or "" to remove
- * @return HTMLForm $this for chaining calls
- */
- public function setTableId( $id ) {
- $this->mTableId = $id;
- return $this;
- }
-
- /**
- * @param string $id DOM id for the form
- * @return HTMLForm $this for chaining calls (since 1.20)
- */
- public function setId( $id ) {
- $this->mId = $id;
- return $this;
- }
-
- /**
- * Prompt the whole form to be wrapped in a "<fieldset>", with
- * this text as its "<legend>" element.
- * @param string|false $legend HTML to go inside the "<legend>" element, or
- * false for no <legend>
- * Will be escaped
- * @return HTMLForm $this for chaining calls (since 1.20)
- */
- public function setWrapperLegend( $legend ) {
- $this->mWrapperLegend = $legend;
- return $this;
- }
-
- /**
- * Prompt the whole form to be wrapped in a "<fieldset>", with
- * this message as its "<legend>" element.
- * @since 1.19
- * @param string $msg message key
- * @return HTMLForm $this for chaining calls (since 1.20)
- */
- public function setWrapperLegendMsg( $msg ) {
- $this->setWrapperLegend( $this->msg( $msg )->text() );
- return $this;
- }
-
- /**
- * Set the prefix for various default messages
- * @todo currently only used for the "<fieldset>" legend on forms
- * with multiple sections; should be used elsewhere?
- * @param $p String
- * @return HTMLForm $this for chaining calls (since 1.20)
- */
- function setMessagePrefix( $p ) {
- $this->mMessagePrefix = $p;
- return $this;
- }
-
- /**
- * Set the title for form submission
- * @param $t Title of page the form is on/should be posted to
- * @return HTMLForm $this for chaining calls (since 1.20)
- */
- function setTitle( $t ) {
- $this->mTitle = $t;
- return $this;
- }
-
- /**
- * Get the title
- * @return Title
- */
- function getTitle() {
- return $this->mTitle === false
- ? $this->getContext()->getTitle()
- : $this->mTitle;
- }
-
- /**
- * Set the method used to submit the form
- * @param $method String
- * @return HTMLForm $this for chaining calls (since 1.20)
- */
- public function setMethod( $method = 'post' ) {
- $this->mMethod = $method;
- return $this;
- }
-
- public function getMethod() {
- return $this->mMethod;
- }
-
- /**
- * @todo Document
- * @param array[]|HTMLFormField[] $fields array of fields (either arrays or objects)
- * @param string $sectionName ID attribute of the "<table>" tag for this section, ignored if empty
- * @param string $fieldsetIDPrefix ID prefix for the "<fieldset>" tag of each subsection, ignored if empty
- * @param boolean &$hasUserVisibleFields Whether the section had user-visible fields
- * @return String
- */
- public function displaySection( $fields, $sectionName = '', $fieldsetIDPrefix = '', &$hasUserVisibleFields = false ) {
- $displayFormat = $this->getDisplayFormat();
-
- $html = '';
- $subsectionHtml = '';
- $hasLabel = false;
-
- switch ( $displayFormat ) {
- case 'table':
- $getFieldHtmlMethod = 'getTableRow';
- break;
- case 'vform':
- // Close enough to a div.
- $getFieldHtmlMethod = 'getDiv';
- break;
- default:
- $getFieldHtmlMethod = 'get' . ucfirst( $displayFormat );
- }
-
- foreach ( $fields as $key => $value ) {
- if ( $value instanceof HTMLFormField ) {
- $v = empty( $value->mParams['nodata'] )
- ? $this->mFieldData[$key]
- : $value->getDefault();
- $html .= $value->$getFieldHtmlMethod( $v );
-
- $labelValue = trim( $value->getLabel() );
- if ( $labelValue != ' ' && $labelValue !== '' ) {
- $hasLabel = true;
- }
-
- if ( get_class( $value ) !== 'HTMLHiddenField' &&
- get_class( $value ) !== 'HTMLApiField' ) {
- $hasUserVisibleFields = true;
- }
- } elseif ( is_array( $value ) ) {
- $subsectionHasVisibleFields = false;
- $section = $this->displaySection( $value, "mw-htmlform-$key", "$fieldsetIDPrefix$key-", $subsectionHasVisibleFields );
- $legend = null;
-
- if ( $subsectionHasVisibleFields === true ) {
- // Display the section with various niceties.
- $hasUserVisibleFields = true;
-
- $legend = $this->getLegend( $key );
-
- if ( isset( $this->mSectionHeaders[$key] ) ) {
- $section = $this->mSectionHeaders[$key] . $section;
- }
- if ( isset( $this->mSectionFooters[$key] ) ) {
- $section .= $this->mSectionFooters[$key];
- }
-
- $attributes = array();
- if ( $fieldsetIDPrefix ) {
- $attributes['id'] = Sanitizer::escapeId( "$fieldsetIDPrefix$key" );
- }
- $subsectionHtml .= Xml::fieldset( $legend, $section, $attributes ) . "\n";
- } else {
- // Just return the inputs, nothing fancy.
- $subsectionHtml .= $section;
- }
- }
- }
-
- if ( $displayFormat !== 'raw' ) {
- $classes = array();
-
- if ( !$hasLabel ) { // Avoid strange spacing when no labels exist
- $classes[] = 'mw-htmlform-nolabel';
- }
-
- $attribs = array(
- 'class' => implode( ' ', $classes ),
- );
-
- if ( $sectionName ) {
- $attribs['id'] = Sanitizer::escapeId( $sectionName );
- }
-
- if ( $displayFormat === 'table' ) {
- $html = Html::rawElement( 'table', $attribs,
- Html::rawElement( 'tbody', array(), "\n$html\n" ) ) . "\n";
- } elseif ( $displayFormat === 'div' || $displayFormat === 'vform' ) {
- $html = Html::rawElement( 'div', $attribs, "\n$html\n" );
- }
- }
-
- if ( $this->mSubSectionBeforeFields ) {
- return $subsectionHtml . "\n" . $html;
- } else {
- return $html . "\n" . $subsectionHtml;
- }
- }
-
- /**
- * Construct the form fields from the Descriptor array
- */
- function loadData() {
- $fieldData = array();
-
- foreach ( $this->mFlatFields as $fieldname => $field ) {
- if ( !empty( $field->mParams['nodata'] ) ) {
- continue;
- } elseif ( !empty( $field->mParams['disabled'] ) ) {
- $fieldData[$fieldname] = $field->getDefault();
- } else {
- $fieldData[$fieldname] = $field->loadDataFromRequest( $this->getRequest() );
- }
- }
-
- # Filter data.
- foreach ( $fieldData as $name => &$value ) {
- $field = $this->mFlatFields[$name];
- $value = $field->filter( $value, $this->mFlatFields );
- }
-
- $this->mFieldData = $fieldData;
- }
-
- /**
- * Stop a reset button being shown for this form
- * @param bool $suppressReset set to false to re-enable the
- * button again
- * @return HTMLForm $this for chaining calls (since 1.20)
- */
- function suppressReset( $suppressReset = true ) {
- $this->mShowReset = !$suppressReset;
- return $this;
- }
-
- /**
- * Overload this if you want to apply special filtration routines
- * to the form as a whole, after it's submitted but before it's
- * processed.
- * @param $data
- * @return
- */
- function filterDataForSubmit( $data ) {
- return $data;
- }
-
- /**
- * Get a string to go in the "<legend>" of a section fieldset.
- * Override this if you want something more complicated.
- * @param $key String
- * @return String
- */
- public function getLegend( $key ) {
- return $this->msg( "{$this->mMessagePrefix}-$key" )->text();
- }
-
- /**
- * Set the value for the action attribute of the form.
- * When set to false (which is the default state), the set title is used.
- *
- * @since 1.19
- *
- * @param string|bool $action
- * @return HTMLForm $this for chaining calls (since 1.20)
- */
- public function setAction( $action ) {
- $this->mAction = $action;
- return $this;
- }
-
- /**
- * Get the value for the action attribute of the form.
- *
- * @since 1.22
- *
- * @return string
- */
- public function getAction() {
- global $wgScript, $wgArticlePath;
-
- // If an action is alredy provided, return it
- if ( $this->mAction !== false ) {
- return $this->mAction;
- }
-
- // Check whether we are in GET mode and $wgArticlePath contains a "?"
- // meaning that getLocalURL() would return something like "index.php?title=...".
- // As browser remove the query string before submitting GET forms,
- // it means that the title would be lost. In such case use $wgScript instead
- // and put title in an hidden field (see getHiddenFields()).
- if ( strpos( $wgArticlePath, '?' ) !== false && $this->getMethod() === 'get' ) {
- return $wgScript;
- }
-
- return $this->getTitle()->getLocalURL();
- }
-}
-
-/**
- * The parent class to generate form fields. Any field type should
- * be a subclass of this.
- */
-abstract class HTMLFormField {
-
- protected $mValidationCallback;
- protected $mFilterCallback;
- protected $mName;
- public $mParams;
- protected $mLabel; # String label. Set on construction
- protected $mID;
- protected $mClass = '';
- protected $mDefault;
-
- /**
- * @var bool If true will generate an empty div element with no label
- * @since 1.22
- */
- protected $mShowEmptyLabels = true;
-
- /**
- * @var HTMLForm
- */
- public $mParent;
-
- /**
- * This function must be implemented to return the HTML to generate
- * the input object itself. It should not implement the surrounding
- * table cells/rows, or labels/help messages.
- * @param string $value the value to set the input to; eg a default
- * text for a text input.
- * @return String valid HTML.
- */
- abstract function getInputHTML( $value );
-
- /**
- * Get a translated interface message
- *
- * This is a wrapper around $this->mParent->msg() if $this->mParent is set
- * and wfMessage() otherwise.
- *
- * Parameters are the same as wfMessage().
- *
- * @return Message object
- */
- function msg() {
- $args = func_get_args();
-
- if ( $this->mParent ) {
- $callback = array( $this->mParent, 'msg' );
- } else {
- $callback = 'wfMessage';
- }
-
- return call_user_func_array( $callback, $args );
- }
-
- /**
- * Override this function to add specific validation checks on the
- * field input. Don't forget to call parent::validate() to ensure
- * that the user-defined callback mValidationCallback is still run
- * @param string $value the value the field was submitted with
- * @param array $alldata the data collected from the form
- * @return Mixed Bool true on success, or String error to display.
- */
- function validate( $value, $alldata ) {
- if ( isset( $this->mParams['required'] ) && $this->mParams['required'] !== false && $value === '' ) {
- return $this->msg( 'htmlform-required' )->parse();
- }
-
- if ( isset( $this->mValidationCallback ) ) {
- return call_user_func( $this->mValidationCallback, $value, $alldata, $this->mParent );
- }
-
- return true;
- }
-
- function filter( $value, $alldata ) {
- if ( isset( $this->mFilterCallback ) ) {
- $value = call_user_func( $this->mFilterCallback, $value, $alldata, $this->mParent );
- }
-
- return $value;
- }
-
- /**
- * Should this field have a label, or is there no input element with the
- * appropriate id for the label to point to?
- *
- * @return bool True to output a label, false to suppress
- */
- protected function needsLabel() {
- return true;
- }
-
- /**
- * Tell the field whether to generate a separate label element if its label
- * is blank.
- *
- * @since 1.22
- * @param bool $show Set to false to not generate a label.
- * @return void
- */
- public function setShowEmptyLabel( $show ) {
- $this->mShowEmptyLabels = $show;
- }
-
- /**
- * Get the value that this input has been set to from a posted form,
- * or the input's default value if it has not been set.
- * @param $request WebRequest
- * @return String the value
- */
- function loadDataFromRequest( $request ) {
- if ( $request->getCheck( $this->mName ) ) {
- return $request->getText( $this->mName );
- } else {
- return $this->getDefault();
- }
- }
-
- /**
- * Initialise the object
- * @param array $params Associative Array. See HTMLForm doc for syntax.
- *
- * @since 1.22 The 'label' attribute no longer accepts raw HTML, use 'label-raw' instead
- * @throws MWException
- */
- function __construct( $params ) {
- $this->mParams = $params;
-
- # Generate the label from a message, if possible
- if ( isset( $params['label-message'] ) ) {
- $msgInfo = $params['label-message'];
-
- if ( is_array( $msgInfo ) ) {
- $msg = array_shift( $msgInfo );
- } else {
- $msg = $msgInfo;
- $msgInfo = array();
- }
-
- $this->mLabel = wfMessage( $msg, $msgInfo )->parse();
- } elseif ( isset( $params['label'] ) ) {
- if ( $params['label'] === ' ' ) {
- // Apparently some things set   directly and in an odd format
- $this->mLabel = ' ';
- } else {
- $this->mLabel = htmlspecialchars( $params['label'] );
- }
- } elseif ( isset( $params['label-raw'] ) ) {
- $this->mLabel = $params['label-raw'];
- }
-
- $this->mName = "wp{$params['fieldname']}";
- if ( isset( $params['name'] ) ) {
- $this->mName = $params['name'];
- }
-
- $validName = Sanitizer::escapeId( $this->mName );
- if ( $this->mName != $validName && !isset( $params['nodata'] ) ) {
- throw new MWException( "Invalid name '{$this->mName}' passed to " . __METHOD__ );
- }
-
- $this->mID = "mw-input-{$this->mName}";
-
- if ( isset( $params['default'] ) ) {
- $this->mDefault = $params['default'];
- }
-
- if ( isset( $params['id'] ) ) {
- $id = $params['id'];
- $validId = Sanitizer::escapeId( $id );
-
- if ( $id != $validId ) {
- throw new MWException( "Invalid id '$id' passed to " . __METHOD__ );
- }
-
- $this->mID = $id;
- }
-
- if ( isset( $params['cssclass'] ) ) {
- $this->mClass = $params['cssclass'];
- }
-
- if ( isset( $params['validation-callback'] ) ) {
- $this->mValidationCallback = $params['validation-callback'];
- }
-
- if ( isset( $params['filter-callback'] ) ) {
- $this->mFilterCallback = $params['filter-callback'];
- }
-
- if ( isset( $params['flatlist'] ) ) {
- $this->mClass .= ' mw-htmlform-flatlist';
- }
-
- if ( isset( $params['hidelabel'] ) ) {
- $this->mShowEmptyLabels = false;
- }
- }
-
- /**
- * Get the complete table row for the input, including help text,
- * labels, and whatever.
- * @param string $value the value to set the input to.
- * @return String complete HTML table row.
- */
- function getTableRow( $value ) {
- list( $errors, $errorClass ) = $this->getErrorsAndErrorClass( $value );
- $inputHtml = $this->getInputHTML( $value );
- $fieldType = get_class( $this );
- $helptext = $this->getHelpTextHtmlTable( $this->getHelpText() );
- $cellAttributes = array();
-
- if ( !empty( $this->mParams['vertical-label'] ) ) {
- $cellAttributes['colspan'] = 2;
- $verticalLabel = true;
- } else {
- $verticalLabel = false;
- }
-
- $label = $this->getLabelHtml( $cellAttributes );
-
- $field = Html::rawElement(
- 'td',
- array( 'class' => 'mw-input' ) + $cellAttributes,
- $inputHtml . "\n$errors"
- );
-
- if ( $verticalLabel ) {
- $html = Html::rawElement( 'tr',
- array( 'class' => 'mw-htmlform-vertical-label' ), $label );
- $html .= Html::rawElement( 'tr',
- array( 'class' => "mw-htmlform-field-$fieldType {$this->mClass} $errorClass" ),
- $field );
- } else {
- $html = Html::rawElement( 'tr',
- array( 'class' => "mw-htmlform-field-$fieldType {$this->mClass} $errorClass" ),
- $label . $field );
- }
-
- return $html . $helptext;
- }
-
- /**
- * Get the complete div for the input, including help text,
- * labels, and whatever.
- * @since 1.20
- * @param string $value the value to set the input to.
- * @return String complete HTML table row.
- */
- public function getDiv( $value ) {
- list( $errors, $errorClass ) = $this->getErrorsAndErrorClass( $value );
- $inputHtml = $this->getInputHTML( $value );
- $fieldType = get_class( $this );
- $helptext = $this->getHelpTextHtmlDiv( $this->getHelpText() );
- $cellAttributes = array();
- $label = $this->getLabelHtml( $cellAttributes );
-
- $outerDivClass = array(
- 'mw-input',
- 'mw-htmlform-nolabel' => ( $label === '' )
- );
-
- $field = Html::rawElement(
- 'div',
- array( 'class' => $outerDivClass ) + $cellAttributes,
- $inputHtml . "\n$errors"
- );
- $divCssClasses = array( "mw-htmlform-field-$fieldType", $this->mClass, $errorClass );
- if ( $this->mParent->isVForm() ) {
- $divCssClasses[] = 'mw-ui-vform-div';
- }
- $html = Html::rawElement( 'div',
- array( 'class' => $divCssClasses ),
- $label . $field );
- $html .= $helptext;
- return $html;
- }
-
- /**
- * Get the complete raw fields for the input, including help text,
- * labels, and whatever.
- * @since 1.20
- * @param string $value the value to set the input to.
- * @return String complete HTML table row.
- */
- public function getRaw( $value ) {
- list( $errors, ) = $this->getErrorsAndErrorClass( $value );
- $inputHtml = $this->getInputHTML( $value );
- $helptext = $this->getHelpTextHtmlRaw( $this->getHelpText() );
- $cellAttributes = array();
- $label = $this->getLabelHtml( $cellAttributes );
-
- $html = "\n$errors";
- $html .= $label;
- $html .= $inputHtml;
- $html .= $helptext;
- return $html;
- }
-
- /**
- * Generate help text HTML in table format
- * @since 1.20
- * @param $helptext String|null
- * @return String
- */
- public function getHelpTextHtmlTable( $helptext ) {
- if ( is_null( $helptext ) ) {
- return '';
- }
-
- $row = Html::rawElement(
- 'td',
- array( 'colspan' => 2, 'class' => 'htmlform-tip' ),
- $helptext
- );
- $row = Html::rawElement( 'tr', array(), $row );
- return $row;
- }
-
- /**
- * Generate help text HTML in div format
- * @since 1.20
- * @param $helptext String|null
- * @return String
- */
- public function getHelpTextHtmlDiv( $helptext ) {
- if ( is_null( $helptext ) ) {
- return '';
- }
-
- $div = Html::rawElement( 'div', array( 'class' => 'htmlform-tip' ), $helptext );
- return $div;
- }
-
- /**
- * Generate help text HTML formatted for raw output
- * @since 1.20
- * @param $helptext String|null
- * @return String
- */
- public function getHelpTextHtmlRaw( $helptext ) {
- return $this->getHelpTextHtmlDiv( $helptext );
- }
-
- /**
- * Determine the help text to display
- * @since 1.20
- * @return String
- */
- public function getHelpText() {
- $helptext = null;
-
- if ( isset( $this->mParams['help-message'] ) ) {
- $this->mParams['help-messages'] = array( $this->mParams['help-message'] );
- }
-
- if ( isset( $this->mParams['help-messages'] ) ) {
- foreach ( $this->mParams['help-messages'] as $name ) {
- $helpMessage = (array)$name;
- $msg = $this->msg( array_shift( $helpMessage ), $helpMessage );
-
- if ( $msg->exists() ) {
- if ( is_null( $helptext ) ) {
- $helptext = '';
- } else {
- $helptext .= $this->msg( 'word-separator' )->escaped(); // some space
- }
- $helptext .= $msg->parse(); // Append message
- }
- }
- }
- elseif ( isset( $this->mParams['help'] ) ) {
- $helptext = $this->mParams['help'];
- }
- return $helptext;
- }
-
- /**
- * Determine form errors to display and their classes
- * @since 1.20
- * @param string $value the value of the input
- * @return Array
- */
- public function getErrorsAndErrorClass( $value ) {
- $errors = $this->validate( $value, $this->mParent->mFieldData );
-
- if ( $errors === true || ( !$this->mParent->getRequest()->wasPosted() && ( $this->mParent->getMethod() == 'post' ) ) ) {
- $errors = '';
- $errorClass = '';
- } else {
- $errors = self::formatErrors( $errors );
- $errorClass = 'mw-htmlform-invalid-input';
- }
- return array( $errors, $errorClass );
- }
-
- function getLabel() {
- return is_null( $this->mLabel ) ? '' : $this->mLabel;
- }
-
- function getLabelHtml( $cellAttributes = array() ) {
- # Don't output a for= attribute for labels with no associated input.
- # Kind of hacky here, possibly we don't want these to be <label>s at all.
- $for = array();
-
- if ( $this->needsLabel() ) {
- $for['for'] = $this->mID;
- }
-
- $labelValue = trim( $this->getLabel() );
- $hasLabel = false;
- if ( $labelValue !== ' ' && $labelValue !== '' ) {
- $hasLabel = true;
- }
-
- $displayFormat = $this->mParent->getDisplayFormat();
- $html = '';
-
- if ( $displayFormat === 'table' ) {
- $html = Html::rawElement( 'td', array( 'class' => 'mw-label' ) + $cellAttributes,
- Html::rawElement( 'label', $for, $labelValue )
- );
- } elseif ( $hasLabel || $this->mShowEmptyLabels ) {
- if ( $displayFormat === 'div' ) {
- $html = Html::rawElement(
- 'div',
- array( 'class' => 'mw-label' ) + $cellAttributes,
- Html::rawElement( 'label', $for, $labelValue )
- );
- } else {
- $html = Html::rawElement( 'label', $for, $labelValue );
- }
- }
-
- return $html;
- }
-
- function getDefault() {
- if ( isset( $this->mDefault ) ) {
- return $this->mDefault;
- } else {
- return null;
- }
- }
-
- /**
- * Returns the attributes required for the tooltip and accesskey.
- *
- * @return array Attributes
- */
- public function getTooltipAndAccessKey() {
- if ( empty( $this->mParams['tooltip'] ) ) {
- return array();
- }
- return Linker::tooltipAndAccesskeyAttribs( $this->mParams['tooltip'] );
- }
-
- /**
- * flatten an array of options to a single array, for instance,
- * a set of "<options>" inside "<optgroups>".
- * @param array $options Associative Array with values either Strings
- * or Arrays
- * @return Array flattened input
- */
- public static function flattenOptions( $options ) {
- $flatOpts = array();
-
- foreach ( $options as $value ) {
- if ( is_array( $value ) ) {
- $flatOpts = array_merge( $flatOpts, self::flattenOptions( $value ) );
- } else {
- $flatOpts[] = $value;
- }
- }
-
- return $flatOpts;
- }
-
- /**
- * Formats one or more errors as accepted by field validation-callback.
- * @param $errors String|Message|Array of strings or Message instances
- * @return String html
- * @since 1.18
- */
- protected static function formatErrors( $errors ) {
- if ( is_array( $errors ) && count( $errors ) === 1 ) {
- $errors = array_shift( $errors );
- }
-
- if ( is_array( $errors ) ) {
- $lines = array();
- foreach ( $errors as $error ) {
- if ( $error instanceof Message ) {
- $lines[] = Html::rawElement( 'li', array(), $error->parse() );
- } else {
- $lines[] = Html::rawElement( 'li', array(), $error );
- }
- }
- return Html::rawElement( 'ul', array( 'class' => 'error' ), implode( "\n", $lines ) );
- } else {
- if ( $errors instanceof Message ) {
- $errors = $errors->parse();
- }
- return Html::rawElement( 'span', array( 'class' => 'error' ), $errors );
- }
- }
-}
-
-class HTMLTextField extends HTMLFormField {
- function getSize() {
- return isset( $this->mParams['size'] )
- ? $this->mParams['size']
- : 45;
- }
-
- function getInputHTML( $value ) {
- $attribs = array(
- 'id' => $this->mID,
- 'name' => $this->mName,
- 'size' => $this->getSize(),
- 'value' => $value,
- ) + $this->getTooltipAndAccessKey();
-
- if ( $this->mClass !== '' ) {
- $attribs['class'] = $this->mClass;
- }
-
- if ( !empty( $this->mParams['disabled'] ) ) {
- $attribs['disabled'] = 'disabled';
- }
-
- # TODO: Enforce pattern, step, required, readonly on the server side as
- # well
- $allowedParams = array( 'min', 'max', 'pattern', 'title', 'step',
- 'placeholder', 'list', 'maxlength' );
- foreach ( $allowedParams as $param ) {
- if ( isset( $this->mParams[$param] ) ) {
- $attribs[$param] = $this->mParams[$param];
- }
- }
-
- foreach ( array( 'required', 'autofocus', 'multiple', 'readonly' ) as $param ) {
- if ( isset( $this->mParams[$param] ) ) {
- $attribs[$param] = '';
- }
- }
-
- # Implement tiny differences between some field variants
- # here, rather than creating a new class for each one which
- # is essentially just a clone of this one.
- if ( isset( $this->mParams['type'] ) ) {
- switch ( $this->mParams['type'] ) {
- case 'email':
- $attribs['type'] = 'email';
- break;
- case 'int':
- $attribs['type'] = 'number';
- break;
- case 'float':
- $attribs['type'] = 'number';
- $attribs['step'] = 'any';
- break;
- # Pass through
- case 'password':
- case 'file':
- $attribs['type'] = $this->mParams['type'];
- break;
- }
- }
-
- return Html::element( 'input', $attribs );
- }
-}
-class HTMLTextAreaField extends HTMLFormField {
- const DEFAULT_COLS = 80;
- const DEFAULT_ROWS = 25;
-
- function getCols() {
- return isset( $this->mParams['cols'] )
- ? $this->mParams['cols']
- : static::DEFAULT_COLS;
- }
-
- function getRows() {
- return isset( $this->mParams['rows'] )
- ? $this->mParams['rows']
- : static::DEFAULT_ROWS;
- }
-
- function getInputHTML( $value ) {
- $attribs = array(
- 'id' => $this->mID,
- 'name' => $this->mName,
- 'cols' => $this->getCols(),
- 'rows' => $this->getRows(),
- ) + $this->getTooltipAndAccessKey();
-
- if ( $this->mClass !== '' ) {
- $attribs['class'] = $this->mClass;
- }
-
- if ( !empty( $this->mParams['disabled'] ) ) {
- $attribs['disabled'] = 'disabled';
- }
-
- if ( !empty( $this->mParams['readonly'] ) ) {
- $attribs['readonly'] = 'readonly';
- }
-
- if ( isset( $this->mParams['placeholder'] ) ) {
- $attribs['placeholder'] = $this->mParams['placeholder'];
- }
-
- foreach ( array( 'required', 'autofocus' ) as $param ) {
- if ( isset( $this->mParams[$param] ) ) {
- $attribs[$param] = '';
- }
- }
-
- return Html::element( 'textarea', $attribs, $value );
- }
-}
-
-/**
- * A field that will contain a numeric value
- */
-class HTMLFloatField extends HTMLTextField {
- function getSize() {
- return isset( $this->mParams['size'] )
- ? $this->mParams['size']
- : 20;
- }
-
- function validate( $value, $alldata ) {
- $p = parent::validate( $value, $alldata );
-
- if ( $p !== true ) {
- return $p;
- }
-
- $value = trim( $value );
-
- # http://dev.w3.org/html5/spec/common-microsyntaxes.html#real-numbers
- # with the addition that a leading '+' sign is ok.
- if ( !preg_match( '/^((\+|\-)?\d+(\.\d+)?(E(\+|\-)?\d+)?)?$/i', $value ) ) {
- return $this->msg( 'htmlform-float-invalid' )->parseAsBlock();
- }
-
- # The "int" part of these message names is rather confusing.
- # They make equal sense for all numbers.
- if ( isset( $this->mParams['min'] ) ) {
- $min = $this->mParams['min'];
-
- if ( $min > $value ) {
- return $this->msg( 'htmlform-int-toolow', $min )->parseAsBlock();
- }
- }
-
- if ( isset( $this->mParams['max'] ) ) {
- $max = $this->mParams['max'];
-
- if ( $max < $value ) {
- return $this->msg( 'htmlform-int-toohigh', $max )->parseAsBlock();
- }
- }
-
- return true;
- }
-}
-
-/**
- * A field that must contain a number
- */
-class HTMLIntField extends HTMLFloatField {
- function validate( $value, $alldata ) {
- $p = parent::validate( $value, $alldata );
-
- if ( $p !== true ) {
- return $p;
- }
-
- # http://dev.w3.org/html5/spec/common-microsyntaxes.html#signed-integers
- # with the addition that a leading '+' sign is ok. Note that leading zeros
- # are fine, and will be left in the input, which is useful for things like
- # phone numbers when you know that they are integers (the HTML5 type=tel
- # input does not require its value to be numeric). If you want a tidier
- # value to, eg, save in the DB, clean it up with intval().
- if ( !preg_match( '/^((\+|\-)?\d+)?$/', trim( $value ) )
- ) {
- return $this->msg( 'htmlform-int-invalid' )->parseAsBlock();
- }
-
- return true;
- }
-}
-
-/**
- * A checkbox field
- */
-class HTMLCheckField extends HTMLFormField {
- function getInputHTML( $value ) {
- if ( !empty( $this->mParams['invert'] ) ) {
- $value = !$value;
- }
-
- $attr = $this->getTooltipAndAccessKey();
- $attr['id'] = $this->mID;
-
- if ( !empty( $this->mParams['disabled'] ) ) {
- $attr['disabled'] = 'disabled';
- }
-
- if ( $this->mClass !== '' ) {
- $attr['class'] = $this->mClass;
- }
-
- if ( $this->mParent->isVForm() ) {
- // Nest checkbox inside label.
- return Html::rawElement(
- 'label',
- array(
- 'class' => 'mw-ui-checkbox-label'
- ),
- Xml::check(
- $this->mName,
- $value,
- $attr
- ) .
- // Html:rawElement doesn't escape contents.
- htmlspecialchars( $this->mLabel )
- );
- } else {
- return Xml::check( $this->mName, $value, $attr ) . ' ' .
- Html::rawElement( 'label', array( 'for' => $this->mID ), $this->mLabel );
- }
- }
-
- /**
- * For a checkbox, the label goes on the right hand side, and is
- * added in getInputHTML(), rather than HTMLFormField::getRow()
- * @return String
- */
- function getLabel() {
- return ' ';
- }
-
- /**
- * checkboxes don't need a label.
- */
- protected function needsLabel() {
- return false;
- }
-
- /**
- * @param $request WebRequest
- * @return String
- */
- function loadDataFromRequest( $request ) {
- $invert = false;
- if ( isset( $this->mParams['invert'] ) && $this->mParams['invert'] ) {
- $invert = true;
- }
-
- // GetCheck won't work like we want for checks.
- // Fetch the value in either one of the two following case:
- // - we have a valid token (form got posted or GET forged by the user)
- // - checkbox name has a value (false or true), ie is not null
- if ( $request->getCheck( 'wpEditToken' ) || $request->getVal( $this->mName ) !== null ) {
- // XOR has the following truth table, which is what we want
- // INVERT VALUE | OUTPUT
- // true true | false
- // false true | true
- // false false | false
- // true false | true
- return $request->getBool( $this->mName ) xor $invert;
- } else {
- return $this->getDefault();
- }
- }
-}
-
-/**
- * A checkbox matrix
- * Operates similarly to HTMLMultiSelectField, but instead of using an array of
- * options, uses an array of rows and an array of columns to dynamically
- * construct a matrix of options. The tags used to identify a particular cell
- * are of the form "columnName-rowName"
- *
- * Options:
- * - columns
- * - Required list of columns in the matrix.
- * - rows
- * - Required list of rows in the matrix.
- * - force-options-on
- * - Accepts array of column-row tags to be displayed as enabled but unavailable to change
- * - force-options-off
- * - Accepts array of column-row tags to be displayed as disabled but unavailable to change.
- * - tooltips
- * - Optional array mapping row label to tooltip content
- * - tooltip-class
- * - Optional CSS class used on tooltip container span. Defaults to mw-icon-question.
- */
-class HTMLCheckMatrix extends HTMLFormField implements HTMLNestedFilterable {
-
- static private $requiredParams = array(
- // Required by underlying HTMLFormField
- 'fieldname',
- // Required by HTMLCheckMatrix
- 'rows', 'columns'
- );
-
- public function __construct( $params ) {
- $missing = array_diff( self::$requiredParams, array_keys( $params ) );
- if ( $missing ) {
- throw new HTMLFormFieldRequiredOptionsException( $this, $missing );
- }
- parent::__construct( $params );
- }
-
- function validate( $value, $alldata ) {
- $rows = $this->mParams['rows'];
- $columns = $this->mParams['columns'];
-
- // Make sure user-defined validation callback is run
- $p = parent::validate( $value, $alldata );
- if ( $p !== true ) {
- return $p;
- }
-
- // Make sure submitted value is an array
- if ( !is_array( $value ) ) {
- return false;
- }
-
- // If all options are valid, array_intersect of the valid options
- // and the provided options will return the provided options.
- $validOptions = array();
- foreach ( $rows as $rowTag ) {
- foreach ( $columns as $columnTag ) {
- $validOptions[] = $columnTag . '-' . $rowTag;
- }
- }
- $validValues = array_intersect( $value, $validOptions );
- if ( count( $validValues ) == count( $value ) ) {
- return true;
- } else {
- return $this->msg( 'htmlform-select-badoption' )->parse();
- }
- }
-
- /**
- * Build a table containing a matrix of checkbox options.
- * The value of each option is a combination of the row tag and column tag.
- * mParams['rows'] is an array with row labels as keys and row tags as values.
- * mParams['columns'] is an array with column labels as keys and column tags as values.
- * @param array $value of the options that should be checked
- * @return String
- */
- function getInputHTML( $value ) {
- $html = '';
- $tableContents = '';
- $attribs = array();
- $rows = $this->mParams['rows'];
- $columns = $this->mParams['columns'];
-
- // If the disabled param is set, disable all the options
- if ( !empty( $this->mParams['disabled'] ) ) {
- $attribs['disabled'] = 'disabled';
- }
-
- // Build the column headers
- $headerContents = Html::rawElement( 'td', array(), ' ' );
- foreach ( $columns as $columnLabel => $columnTag ) {
- $headerContents .= Html::rawElement( 'td', array(), $columnLabel );
- }
- $tableContents .= Html::rawElement( 'tr', array(), "\n$headerContents\n" );
-
- $tooltipClass = 'mw-icon-question';
- if ( isset( $this->mParams['tooltip-class'] ) ) {
- $tooltipClass = $this->mParams['tooltip-class'];
- }
-
- // Build the options matrix
- foreach ( $rows as $rowLabel => $rowTag ) {
- // Append tooltip if configured
- if ( isset( $this->mParams['tooltips'][$rowLabel] ) ) {
- $tooltipAttribs = array(
- 'class' => "mw-htmlform-tooltip $tooltipClass",
- 'title' => $this->mParams['tooltips'][$rowLabel],
- );
- $rowLabel .= ' ' . Html::element( 'span', $tooltipAttribs, '' );
- }
- $rowContents = Html::rawElement( 'td', array(), $rowLabel );
- foreach ( $columns as $columnTag ) {
- $thisTag = "$columnTag-$rowTag";
- // Construct the checkbox
- $thisAttribs = array(
- 'id' => "{$this->mID}-$thisTag",
- 'value' => $thisTag,
- );
- $checked = in_array( $thisTag, (array)$value, true );
- if ( $this->isTagForcedOff( $thisTag ) ) {
- $checked = false;
- $thisAttribs['disabled'] = 1;
- } elseif ( $this->isTagForcedOn( $thisTag ) ) {
- $checked = true;
- $thisAttribs['disabled'] = 1;
- }
- $rowContents .= Html::rawElement(
- 'td',
- array(),
- Xml::check( "{$this->mName}[]", $checked, $attribs + $thisAttribs )
- );
- }
- $tableContents .= Html::rawElement( 'tr', array(), "\n$rowContents\n" );
- }
-
- // Put it all in a table
- $html .= Html::rawElement( 'table', array( 'class' => 'mw-htmlform-matrix' ),
- Html::rawElement( 'tbody', array(), "\n$tableContents\n" ) ) . "\n";
-
- return $html;
- }
-
- protected function isTagForcedOff( $tag ) {
- return isset( $this->mParams['force-options-off'] )
- && in_array( $tag, $this->mParams['force-options-off'] );
- }
-
- protected function isTagForcedOn( $tag ) {
- return isset( $this->mParams['force-options-on'] )
- && in_array( $tag, $this->mParams['force-options-on'] );
- }
-
- /**
- * Get the complete table row for the input, including help text,
- * labels, and whatever.
- * We override this function since the label should always be on a separate
- * line above the options in the case of a checkbox matrix, i.e. it's always
- * a "vertical-label".
- * @param string $value the value to set the input to
- * @return String complete HTML table row
- */
- function getTableRow( $value ) {
- list( $errors, $errorClass ) = $this->getErrorsAndErrorClass( $value );
- $inputHtml = $this->getInputHTML( $value );
- $fieldType = get_class( $this );
- $helptext = $this->getHelpTextHtmlTable( $this->getHelpText() );
- $cellAttributes = array( 'colspan' => 2 );
-
- $label = $this->getLabelHtml( $cellAttributes );
-
- $field = Html::rawElement(
- 'td',
- array( 'class' => 'mw-input' ) + $cellAttributes,
- $inputHtml . "\n$errors"
- );
-
- $html = Html::rawElement( 'tr',
- array( 'class' => 'mw-htmlform-vertical-label' ), $label );
- $html .= Html::rawElement( 'tr',
- array( 'class' => "mw-htmlform-field-$fieldType {$this->mClass} $errorClass" ),
- $field );
-
- return $html . $helptext;
- }
-
- /**
- * @param $request WebRequest
- * @return Array
- */
- function loadDataFromRequest( $request ) {
- if ( $this->mParent->getMethod() == 'post' ) {
- if ( $request->wasPosted() ) {
- // Checkboxes are not added to the request arrays if they're not checked,
- // so it's perfectly possible for there not to be an entry at all
- return $request->getArray( $this->mName, array() );
- } else {
- // That's ok, the user has not yet submitted the form, so show the defaults
- return $this->getDefault();
- }
- } else {
- // This is the impossible case: if we look at $_GET and see no data for our
- // field, is it because the user has not yet submitted the form, or that they
- // have submitted it with all the options unchecked. We will have to assume the
- // latter, which basically means that you can't specify 'positive' defaults
- // for GET forms.
- return $request->getArray( $this->mName, array() );
- }
- }
-
- function getDefault() {
- if ( isset( $this->mDefault ) ) {
- return $this->mDefault;
- } else {
- return array();
- }
- }
-
- function filterDataForSubmit( $data ) {
- $columns = HTMLFormField::flattenOptions( $this->mParams['columns'] );
- $rows = HTMLFormField::flattenOptions( $this->mParams['rows'] );
- $res = array();
- foreach ( $columns as $column ) {
- foreach ( $rows as $row ) {
- // Make sure option hasn't been forced
- $thisTag = "$column-$row";
- if ( $this->isTagForcedOff( $thisTag ) ) {
- $res[$thisTag] = false;
- } elseif ( $this->isTagForcedOn( $thisTag ) ) {
- $res[$thisTag] = true;
- } else {
- $res[$thisTag] = in_array( $thisTag, $data );
- }
- }
- }
-
- return $res;
- }
-}
-
-/**
- * A select dropdown field. Basically a wrapper for Xmlselect class
- */
-class HTMLSelectField extends HTMLFormField {
- function validate( $value, $alldata ) {
- $p = parent::validate( $value, $alldata );
-
- if ( $p !== true ) {
- return $p;
- }
-
- $validOptions = HTMLFormField::flattenOptions( $this->mParams['options'] );
-
- if ( in_array( $value, $validOptions ) ) {
- return true;
- } else {
- return $this->msg( 'htmlform-select-badoption' )->parse();
- }
- }
-
- function getInputHTML( $value ) {
- $select = new XmlSelect( $this->mName, $this->mID, strval( $value ) );
-
- # If one of the options' 'name' is int(0), it is automatically selected.
- # because PHP sucks and thinks int(0) == 'some string'.
- # Working around this by forcing all of them to strings.
- foreach ( $this->mParams['options'] as &$opt ) {
- if ( is_int( $opt ) ) {
- $opt = strval( $opt );
- }
- }
- unset( $opt ); # PHP keeps $opt around as a reference, which is a bit scary
-
- if ( !empty( $this->mParams['disabled'] ) ) {
- $select->setAttribute( 'disabled', 'disabled' );
- }
-
- if ( $this->mClass !== '' ) {
- $select->setAttribute( 'class', $this->mClass );
- }
-
- $select->addOptions( $this->mParams['options'] );
-
- return $select->getHTML();
- }
-}
-
-/**
- * Select dropdown field, with an additional "other" textbox.
- */
-class HTMLSelectOrOtherField extends HTMLTextField {
-
- function __construct( $params ) {
- if ( !in_array( 'other', $params['options'], true ) ) {
- $msg = isset( $params['other'] ) ?
- $params['other'] :
- wfMessage( 'htmlform-selectorother-other' )->text();
- $params['options'][$msg] = 'other';
- }
-
- parent::__construct( $params );
- }
-
- static function forceToStringRecursive( $array ) {
- if ( is_array( $array ) ) {
- return array_map( array( __CLASS__, 'forceToStringRecursive' ), $array );
- } else {
- return strval( $array );
- }
- }
-
- function getInputHTML( $value ) {
- $valInSelect = false;
-
- if ( $value !== false ) {
- $valInSelect = in_array(
- $value,
- HTMLFormField::flattenOptions( $this->mParams['options'] )
- );
- }
-
- $selected = $valInSelect ? $value : 'other';
-
- $opts = self::forceToStringRecursive( $this->mParams['options'] );
-
- $select = new XmlSelect( $this->mName, $this->mID, $selected );
- $select->addOptions( $opts );
-
- $select->setAttribute( 'class', 'mw-htmlform-select-or-other' );
-
- $tbAttribs = array( 'id' => $this->mID . '-other', 'size' => $this->getSize() );
-
- if ( !empty( $this->mParams['disabled'] ) ) {
- $select->setAttribute( 'disabled', 'disabled' );
- $tbAttribs['disabled'] = 'disabled';
- }
-
- $select = $select->getHTML();
-
- if ( isset( $this->mParams['maxlength'] ) ) {
- $tbAttribs['maxlength'] = $this->mParams['maxlength'];
- }
-
- if ( $this->mClass !== '' ) {
- $tbAttribs['class'] = $this->mClass;
- }
-
- $textbox = Html::input(
- $this->mName . '-other',
- $valInSelect ? '' : $value,
- 'text',
- $tbAttribs
- );
-
- return "$select<br />\n$textbox";
- }
-
- /**
- * @param $request WebRequest
- * @return String
- */
- function loadDataFromRequest( $request ) {
- if ( $request->getCheck( $this->mName ) ) {
- $val = $request->getText( $this->mName );
-
- if ( $val == 'other' ) {
- $val = $request->getText( $this->mName . '-other' );
- }
-
- return $val;
- } else {
- return $this->getDefault();
- }
- }
-}
-
-/**
- * Multi-select field
- */
-class HTMLMultiSelectField extends HTMLFormField implements HTMLNestedFilterable {
-
- function validate( $value, $alldata ) {
- $p = parent::validate( $value, $alldata );
-
- if ( $p !== true ) {
- return $p;
- }
-
- if ( !is_array( $value ) ) {
- return false;
- }
-
- # If all options are valid, array_intersect of the valid options
- # and the provided options will return the provided options.
- $validOptions = HTMLFormField::flattenOptions( $this->mParams['options'] );
-
- $validValues = array_intersect( $value, $validOptions );
- if ( count( $validValues ) == count( $value ) ) {
- return true;
- } else {
- return $this->msg( 'htmlform-select-badoption' )->parse();
- }
- }
-
- function getInputHTML( $value ) {
- $html = $this->formatOptions( $this->mParams['options'], $value );
-
- return $html;
- }
-
- function formatOptions( $options, $value ) {
- $html = '';
-
- $attribs = array();
-
- if ( !empty( $this->mParams['disabled'] ) ) {
- $attribs['disabled'] = 'disabled';
- }
-
- foreach ( $options as $label => $info ) {
- if ( is_array( $info ) ) {
- $html .= Html::rawElement( 'h1', array(), $label ) . "\n";
- $html .= $this->formatOptions( $info, $value );
- } else {
- $thisAttribs = array( 'id' => "{$this->mID}-$info", 'value' => $info );
-
- $checkbox = Xml::check(
- $this->mName . '[]',
- in_array( $info, $value, true ),
- $attribs + $thisAttribs );
- $checkbox .= ' ' . Html::rawElement( 'label', array( 'for' => "{$this->mID}-$info" ), $label );
-
- $html .= ' ' . Html::rawElement( 'div', array( 'class' => 'mw-htmlform-flatlist-item' ), $checkbox );
- }
- }
-
- return $html;
- }
-
- /**
- * @param $request WebRequest
- * @return String
- */
- function loadDataFromRequest( $request ) {
- if ( $this->mParent->getMethod() == 'post' ) {
- if ( $request->wasPosted() ) {
- # Checkboxes are just not added to the request arrays if they're not checked,
- # so it's perfectly possible for there not to be an entry at all
- return $request->getArray( $this->mName, array() );
- } else {
- # That's ok, the user has not yet submitted the form, so show the defaults
- return $this->getDefault();
- }
- } else {
- # This is the impossible case: if we look at $_GET and see no data for our
- # field, is it because the user has not yet submitted the form, or that they
- # have submitted it with all the options unchecked? We will have to assume the
- # latter, which basically means that you can't specify 'positive' defaults
- # for GET forms.
- # @todo FIXME...
- return $request->getArray( $this->mName, array() );
- }
- }
-
- function getDefault() {
- if ( isset( $this->mDefault ) ) {
- return $this->mDefault;
- } else {
- return array();
- }
- }
-
- function filterDataForSubmit( $data ) {
- $options = HTMLFormField::flattenOptions( $this->mParams['options'] );
-
- $res = array();
- foreach ( $options as $opt ) {
- $res["$opt"] = in_array( $opt, $data );
- }
-
- return $res;
- }
-
- protected function needsLabel() {
- return false;
- }
-}
-
-/**
- * Double field with a dropdown list constructed from a system message in the format
- * * Optgroup header
- * ** <option value>
- * * New Optgroup header
- * Plus a text field underneath for an additional reason. The 'value' of the field is
- * "<select>: <extra reason>", or "<extra reason>" if nothing has been selected in the
- * select dropdown.
- * @todo FIXME: If made 'required', only the text field should be compulsory.
- */
-class HTMLSelectAndOtherField extends HTMLSelectField {
-
- function __construct( $params ) {
- if ( array_key_exists( 'other', $params ) ) {
- } elseif ( array_key_exists( 'other-message', $params ) ) {
- $params['other'] = wfMessage( $params['other-message'] )->plain();
- } else {
- $params['other'] = null;
- }
-
- if ( array_key_exists( 'options', $params ) ) {
- # Options array already specified
- } elseif ( array_key_exists( 'options-message', $params ) ) {
- # Generate options array from a system message
- $params['options'] = self::parseMessage(
- wfMessage( $params['options-message'] )->inContentLanguage()->plain(),
- $params['other']
- );
- } else {
- # Sulk
- throw new MWException( 'HTMLSelectAndOtherField called without any options' );
- }
- $this->mFlatOptions = self::flattenOptions( $params['options'] );
-
- parent::__construct( $params );
- }
-
- /**
- * Build a drop-down box from a textual list.
- * @param string $string message text
- * @param string $otherName name of "other reason" option
- * @return Array
- * TODO: this is copied from Xml::listDropDown(), deprecate/avoid duplication?
- */
- public static function parseMessage( $string, $otherName = null ) {
- if ( $otherName === null ) {
- $otherName = wfMessage( 'htmlform-selectorother-other' )->plain();
- }
-
- $optgroup = false;
- $options = array( $otherName => 'other' );
-
- foreach ( explode( "\n", $string ) as $option ) {
- $value = trim( $option );
- if ( $value == '' ) {
- continue;
- } elseif ( substr( $value, 0, 1 ) == '*' && substr( $value, 1, 1 ) != '*' ) {
- # A new group is starting...
- $value = trim( substr( $value, 1 ) );
- $optgroup = $value;
- } elseif ( substr( $value, 0, 2 ) == '**' ) {
- # groupmember
- $opt = trim( substr( $value, 2 ) );
- if ( $optgroup === false ) {
- $options[$opt] = $opt;
- } else {
- $options[$optgroup][$opt] = $opt;
- }
- } else {
- # groupless reason list
- $optgroup = false;
- $options[$option] = $option;
- }
- }
-
- return $options;
- }
-
- function getInputHTML( $value ) {
- $select = parent::getInputHTML( $value[1] );
-
- $textAttribs = array(
- 'id' => $this->mID . '-other',
- 'size' => $this->getSize(),
- );
-
- if ( $this->mClass !== '' ) {
- $textAttribs['class'] = $this->mClass;
- }
-
- foreach ( array( 'required', 'autofocus', 'multiple', 'disabled' ) as $param ) {
- if ( isset( $this->mParams[$param] ) ) {
- $textAttribs[$param] = '';
- }
- }
-
- $textbox = Html::input(
- $this->mName . '-other',
- $value[2],
- 'text',
- $textAttribs
- );
-
- return "$select<br />\n$textbox";
- }
-
- /**
- * @param $request WebRequest
- * @return Array("<overall message>","<select value>","<text field value>")
- */
- function loadDataFromRequest( $request ) {
- if ( $request->getCheck( $this->mName ) ) {
-
- $list = $request->getText( $this->mName );
- $text = $request->getText( $this->mName . '-other' );
-
- if ( $list == 'other' ) {
- $final = $text;
- } elseif ( !in_array( $list, $this->mFlatOptions ) ) {
- # User has spoofed the select form to give an option which wasn't
- # in the original offer. Sulk...
- $final = $text;
- } elseif ( $text == '' ) {
- $final = $list;
- } else {
- $final = $list . $this->msg( 'colon-separator' )->inContentLanguage()->text() . $text;
- }
-
- } else {
- $final = $this->getDefault();
-
- $list = 'other';
- $text = $final;
- foreach ( $this->mFlatOptions as $option ) {
- $match = $option . $this->msg( 'colon-separator' )->inContentLanguage()->text();
- if ( strpos( $text, $match ) === 0 ) {
- $list = $option;
- $text = substr( $text, strlen( $match ) );
- break;
- }
- }
- }
- return array( $final, $list, $text );
- }
-
- function getSize() {
- return isset( $this->mParams['size'] )
- ? $this->mParams['size']
- : 45;
- }
-
- function validate( $value, $alldata ) {
- # HTMLSelectField forces $value to be one of the options in the select
- # field, which is not useful here. But we do want the validation further up
- # the chain
- $p = parent::validate( $value[1], $alldata );
-
- if ( $p !== true ) {
- return $p;
- }
-
- if ( isset( $this->mParams['required'] ) && $this->mParams['required'] !== false && $value[1] === '' ) {
- return $this->msg( 'htmlform-required' )->parse();
- }
-
- return true;
- }
-}
-
-/**
- * Radio checkbox fields.
- */
-class HTMLRadioField extends HTMLFormField {
-
- function validate( $value, $alldata ) {
- $p = parent::validate( $value, $alldata );
-
- if ( $p !== true ) {
- return $p;
- }
-
- if ( !is_string( $value ) && !is_int( $value ) ) {
- return false;
- }
-
- $validOptions = HTMLFormField::flattenOptions( $this->mParams['options'] );
-
- if ( in_array( $value, $validOptions ) ) {
- return true;
- } else {
- return $this->msg( 'htmlform-select-badoption' )->parse();
- }
- }
-
- /**
- * This returns a block of all the radio options, in one cell.
- * @see includes/HTMLFormField#getInputHTML()
- * @param $value String
- * @return String
- */
- function getInputHTML( $value ) {
- $html = $this->formatOptions( $this->mParams['options'], $value );
-
- return $html;
- }
-
- function formatOptions( $options, $value ) {
- $html = '';
-
- $attribs = array();
- if ( !empty( $this->mParams['disabled'] ) ) {
- $attribs['disabled'] = 'disabled';
- }
-
- # TODO: should this produce an unordered list perhaps?
- foreach ( $options as $label => $info ) {
- if ( is_array( $info ) ) {
- $html .= Html::rawElement( 'h1', array(), $label ) . "\n";
- $html .= $this->formatOptions( $info, $value );
- } else {
- $id = Sanitizer::escapeId( $this->mID . "-$info" );
- $radio = Xml::radio(
- $this->mName,
- $info,
- $info == $value,
- $attribs + array( 'id' => $id )
- );
- $radio .= ' ' .
- Html::rawElement( 'label', array( 'for' => $id ), $label );
-
- $html .= ' ' . Html::rawElement( 'div', array( 'class' => 'mw-htmlform-flatlist-item' ), $radio );
- }
- }
-
- return $html;
- }
-
- protected function needsLabel() {
- return false;
- }
-}
-
-/**
- * An information field (text blob), not a proper input.
- */
-class HTMLInfoField extends HTMLFormField {
- public function __construct( $info ) {
- $info['nodata'] = true;
-
- parent::__construct( $info );
- }
-
- public function getInputHTML( $value ) {
- return !empty( $this->mParams['raw'] ) ? $value : htmlspecialchars( $value );
- }
-
- public function getTableRow( $value ) {
- if ( !empty( $this->mParams['rawrow'] ) ) {
- return $value;
- }
-
- return parent::getTableRow( $value );
- }
-
- /**
- * @since 1.20
- */
- public function getDiv( $value ) {
- if ( !empty( $this->mParams['rawrow'] ) ) {
- return $value;
- }
-
- return parent::getDiv( $value );
- }
-
- /**
- * @since 1.20
- */
- public function getRaw( $value ) {
- if ( !empty( $this->mParams['rawrow'] ) ) {
- return $value;
- }
-
- return parent::getRaw( $value );
- }
-
- protected function needsLabel() {
- return false;
- }
-}
-
-class HTMLHiddenField extends HTMLFormField {
- public function __construct( $params ) {
- parent::__construct( $params );
-
- # Per HTML5 spec, hidden fields cannot be 'required'
- # http://dev.w3.org/html5/spec/states-of-the-type-attribute.html#hidden-state
- unset( $this->mParams['required'] );
- }
-
- public function getTableRow( $value ) {
- $params = array();
- if ( $this->mID ) {
- $params['id'] = $this->mID;
- }
-
- $this->mParent->addHiddenField(
- $this->mName,
- $this->mDefault,
- $params
- );
-
- return '';
- }
-
- /**
- * @since 1.20
- */
- public function getDiv( $value ) {
- return $this->getTableRow( $value );
- }
-
- /**
- * @since 1.20
- */
- public function getRaw( $value ) {
- return $this->getTableRow( $value );
- }
-
- public function getInputHTML( $value ) {
- return '';
- }
-}
-
-/**
- * Add a submit button inline in the form (as opposed to
- * HTMLForm::addButton(), which will add it at the end).
- */
-class HTMLSubmitField extends HTMLButtonField {
- protected $buttonType = 'submit';
-}
-
-/**
- * Adds a generic button inline to the form. Does not do anything, you must add
- * click handling code in JavaScript. Use a HTMLSubmitField if you merely
- * wish to add a submit button to a form.
- *
- * @since 1.22
- */
-class HTMLButtonField extends HTMLFormField {
- protected $buttonType = 'button';
-
- public function __construct( $info ) {
- $info['nodata'] = true;
- parent::__construct( $info );
- }
-
- public function getInputHTML( $value ) {
- $attr = array(
- 'class' => 'mw-htmlform-submit ' . $this->mClass,
- 'id' => $this->mID,
- );
-
- if ( !empty( $this->mParams['disabled'] ) ) {
- $attr['disabled'] = 'disabled';
- }
-
- return Html::input(
- $this->mName,
- $value,
- $this->buttonType,
- $attr
- );
- }
-
- protected function needsLabel() {
- return false;
- }
-
- /**
- * Button cannot be invalid
- * @param $value String
- * @param $alldata Array
- * @return Bool
- */
- public function validate( $value, $alldata ) {
- return true;
- }
-}
-
-class HTMLEditTools extends HTMLFormField {
- public function getInputHTML( $value ) {
- return '';
- }
-
- public function getTableRow( $value ) {
- $msg = $this->formatMsg();
-
- return '<tr><td></td><td class="mw-input">'
- . '<div class="mw-editTools">'
- . $msg->parseAsBlock()
- . "</div></td></tr>\n";
- }
-
- /**
- * @since 1.20
- */
- public function getDiv( $value ) {
- $msg = $this->formatMsg();
- return '<div class="mw-editTools">' . $msg->parseAsBlock() . '</div>';
- }
-
- /**
- * @since 1.20
- */
- public function getRaw( $value ) {
- return $this->getDiv( $value );
- }
-
- protected function formatMsg() {
- if ( empty( $this->mParams['message'] ) ) {
- $msg = $this->msg( 'edittools' );
- } else {
- $msg = $this->msg( $this->mParams['message'] );
- if ( $msg->isDisabled() ) {
- $msg = $this->msg( 'edittools' );
- }
- }
- $msg->inContentLanguage();
- return $msg;
- }
-}
-
-class HTMLApiField extends HTMLFormField {
- public function getTableRow( $value ) {
- return '';
- }
-
- public function getDiv( $value ) {
- return $this->getTableRow( $value );
- }
-
- public function getRaw( $value ) {
- return $this->getTableRow( $value );
- }
-
- public function getInputHTML( $value ) {
- return '';
- }
-}
-
-interface HTMLNestedFilterable {
- /**
- * Support for seperating multi-option preferences into multiple preferences
- * Due to lack of array support.
- * @param $data array
- */
- function filterDataForSubmit( $data );
-}
-
-class HTMLFormFieldRequiredOptionsException extends MWException {
- public function __construct( HTMLFormField $field, array $missing ) {
- parent::__construct( sprintf(
- "Form type `%s` expected the following parameters to be set: %s",
- get_class( $field ),
- implode( ', ', $missing )
- ) );
- }
-}
$this->curlOptions[CURLOPT_PROXY] = $this->proxy;
$this->curlOptions[CURLOPT_TIMEOUT] = $this->timeout;
- $this->curlOptions[CURLOPT_CONNECTTIMEOUT_MS] = $this->connectTimeout * 1000;
+
+ // Only supported in curl >= 7.16.2
+ if ( defined( 'CURLOPT_CONNECTTIMEOUT_MS' ) ) {
+ $this->curlOptions[CURLOPT_CONNECTTIMEOUT_MS] = $this->connectTimeout * 1000;
+ }
+
$this->curlOptions[CURLOPT_HTTP_VERSION] = CURL_HTTP_VERSION_1_0;
$this->curlOptions[CURLOPT_WRITEFUNCTION] = $this->callback;
$this->curlOptions[CURLOPT_HEADERFUNCTION] = array( $this, "readHeader" );
} else {
$display = $curLang;
}
- $opts = XML::Option( $display, $curLang, true ) . $opts;
+ $opts = XML::Option( $display, $curLang, true ) . $opts;
}
$select = Html::rawElement( 'select', array( 'id' => 'mw-imglangselector', 'name' => 'lang' ), $opts );
$thumb15 = $file->transform( $hp15 );
$thumb20 = $file->transform( $hp20 );
- if ( $thumb15->getUrl() !== $thumb->getUrl() ) {
+ if ( $thumb15 && $thumb15->getUrl() !== $thumb->getUrl() ) {
$thumb->responsiveUrls['1.5'] = $thumb15->getUrl();
}
- if ( $thumb20->getUrl() !== $thumb->getUrl() ) {
+ if ( $thumb20 && $thumb20->getUrl() !== $thumb->getUrl() ) {
$thumb->responsiveUrls['2'] = $thumb20->getUrl();
}
}
return array( 'before', $this->language->formatBitrate( $param['bitrate'] ) );
} else {
trigger_error(
- "Invalid message parameter: " . htmlspecialchars( serialize( $param ) ),
+ 'Invalid parameter for message "' . $this->getKey() . '": ' .
+ htmlspecialchars( serialize( $param ) ),
E_USER_WARNING
);
return array( 'before', '[INVALID]' );
*/
protected function parseText( $string ) {
$out = MessageCache::singleton()->parse( $string, $this->title, /*linestart*/true, $this->interface, $this->language );
- return is_object( $out ) ? $out->getText() : $out;
+ return $out instanceof ParserOutput ? $out->getText() : $out;
}
/**
wfDebug( __METHOD__ . ": CACHE DISABLED\n", false );
return false;
}
- if ( $this->getUser()->getOption( 'nocache' ) ) {
- wfDebug( __METHOD__ . ": USER DISABLED CACHE\n", false );
- return false;
- }
$timestamp = wfTimestamp( TS_MW, $timestamp );
$modifiedTimes = array(
'label-message' => 'tog-showtoc',
);
}
- $defaultPreferences['nocache'] = array(
- 'type' => 'toggle',
- 'label-message' => 'tog-nocache',
- 'section' => 'rendering/advancedrendering',
- );
$defaultPreferences['showhiddencats'] = array(
'type' => 'toggle',
'section' => 'rendering/advancedrendering',
$fname = get_class( $this ) . '::recache';
$dbw = wfGetDB( DB_MASTER );
- $dbr = wfGetDB( DB_SLAVE, array( $this->getName(), __METHOD__, 'vslow' ) );
- if ( !$dbw || !$dbr ) {
+ if ( !$dbw ) {
return false;
}
try {
- # Clear out any old cached data
- $dbw->delete( 'querycache', array( 'qc_type' => $this->getName() ), $fname );
# Do query
$res = $this->reallyDoQuery( $limit, false );
$num = false;
$num = $res->numRows();
# Fetch results
$vals = array();
- while ( $res && $row = $dbr->fetchObject( $res ) ) {
+ foreach ( $res as $row ) {
if ( isset( $row->value ) ) {
if ( $this->usesTimestamps() ) {
$value = wfTimestamp( TS_UNIX,
'qc_value' => $value );
}
+ $dbw->begin( __METHOD__ );
+ # Clear out any old cached data
+ $dbw->delete( 'querycache', array( 'qc_type' => $this->getName() ), $fname );
# Save results into the querycache table on the master
if ( count( $vals ) ) {
$dbw->insert( 'querycache', $vals, __METHOD__ );
$dbw->insert( 'querycache_info',
array( 'qci_type' => $this->getName(), 'qci_timestamp' => $dbw->timestamp() ),
$fname );
+ $dbw->commit( __METHOD__ );
}
} catch ( DBError $e ) {
if ( !$ignoreErrors ) {
return $num;
}
+ /**
+ * Get a DB connection to be used for slow recache queries
+ */
+ function getRecacheDB() {
+ return wfGetDB( DB_SLAVE, array( $this->getName(), 'QueryPage::recache', 'vslow' ) );
+ }
+
/**
* Run the query and return the result
* @param int|bool $limit Numerical limit or false for no limit
*/
function reallyDoQuery( $limit, $offset = false ) {
$fname = get_class( $this ) . "::reallyDoQuery";
- $dbr = wfGetDB( DB_SLAVE );
+ $dbr = $this->getRecacheDB();
$query = $this->getQueryInfo();
$order = $this->getOrderFields();
+++ /dev/null
-<?php
-/**
- * Parent class for all special pages.
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License along
- * with this program; if not, write to the Free Software Foundation, Inc.,
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- * http://www.gnu.org/copyleft/gpl.html
- *
- * @file
- * @ingroup SpecialPage
- */
-
-/**
- * Parent special page class, also static functions for handling the special
- * page list.
- * @ingroup SpecialPage
- */
-class SpecialPage {
- // The canonical name of this special page
- // Also used for the default <h1> heading, @see getDescription()
- protected $mName;
-
- // The local name of this special page
- private $mLocalName;
-
- // Minimum user level required to access this page, or "" for anyone.
- // Also used to categorise the pages in Special:Specialpages
- private $mRestriction;
-
- // Listed in Special:Specialpages?
- private $mListed;
-
- // Function name called by the default execute()
- private $mFunction;
-
- // File which needs to be included before the function above can be called
- private $mFile;
-
- // Whether or not this special page is being included from an article
- protected $mIncluding;
-
- // Whether the special page can be included in an article
- protected $mIncludable;
-
- /**
- * Current request context
- * @var IContextSource
- */
- protected $mContext;
-
- /**
- * Initialise the special page list
- * This must be called before accessing SpecialPage::$mList
- * @deprecated since 1.18
- */
- static function initList() {
- wfDeprecated( __METHOD__, '1.18' );
- // Noop
- }
-
- /**
- * @deprecated since 1.18
- */
- static function initAliasList() {
- wfDeprecated( __METHOD__, '1.18' );
- // Noop
- }
-
- /**
- * Given a special page alias, return the special page name.
- * Returns false if there is no such alias.
- *
- * @param $alias String
- * @return String or false
- * @deprecated since 1.18 call SpecialPageFactory method directly
- */
- static function resolveAlias( $alias ) {
- wfDeprecated( __METHOD__, '1.18' );
- list( $name, /*...*/ ) = SpecialPageFactory::resolveAlias( $alias );
- return $name;
- }
-
- /**
- * Given a special page name with a possible subpage, return an array
- * where the first element is the special page name and the second is the
- * subpage.
- *
- * @param $alias String
- * @return Array
- * @deprecated since 1.18 call SpecialPageFactory method directly
- */
- static function resolveAliasWithSubpage( $alias ) {
- return SpecialPageFactory::resolveAlias( $alias );
- }
-
- /**
- * Add a page to a certain display group for Special:SpecialPages
- *
- * @param $page Mixed: SpecialPage or string
- * @param $group String
- * @deprecated since 1.18 call SpecialPageFactory method directly
- */
- static function setGroup( $page, $group ) {
- wfDeprecated( __METHOD__, '1.18' );
- SpecialPageFactory::setGroup( $page, $group );
- }
-
- /**
- * Get the group that the special page belongs in on Special:SpecialPage
- *
- * @param $page SpecialPage
- * @return string
- * @deprecated since 1.18 call SpecialPageFactory method directly
- */
- static function getGroup( &$page ) {
- wfDeprecated( __METHOD__, '1.18' );
- return SpecialPageFactory::getGroup( $page );
- }
-
- /**
- * Remove a special page from the list
- * Formerly used to disable expensive or dangerous special pages. The
- * preferred method is now to add a SpecialPage_initList hook.
- * @deprecated since 1.18
- *
- * @param string $name the page to remove
- */
- static function removePage( $name ) {
- wfDeprecated( __METHOD__, '1.18' );
- unset( SpecialPageFactory::getList()->$name );
- }
-
- /**
- * Check if a given name exist as a special page or as a special page alias
- *
- * @param string $name name of a special page
- * @return Boolean: true if a special page exists with this name
- * @deprecated since 1.18 call SpecialPageFactory method directly
- */
- static function exists( $name ) {
- wfDeprecated( __METHOD__, '1.18' );
- return SpecialPageFactory::exists( $name );
- }
-
- /**
- * Find the object with a given name and return it (or NULL)
- *
- * @param $name String
- * @return SpecialPage object or null if the page doesn't exist
- * @deprecated since 1.18 call SpecialPageFactory method directly
- */
- static function getPage( $name ) {
- wfDeprecated( __METHOD__, '1.18' );
- return SpecialPageFactory::getPage( $name );
- }
-
- /**
- * Get a special page with a given localised name, or NULL if there
- * is no such special page.
- *
- * @param $alias String
- * @return SpecialPage object or null if the page doesn't exist
- * @deprecated since 1.18 call SpecialPageFactory method directly
- */
- static function getPageByAlias( $alias ) {
- wfDeprecated( __METHOD__, '1.18' );
- return SpecialPageFactory::getPage( $alias );
- }
-
- /**
- * Return categorised listable special pages which are available
- * for the current user, and everyone.
- *
- * @param $user User object to check permissions, $wgUser will be used
- * if not provided
- * @return array Associative array mapping page's name to its SpecialPage object
- * @deprecated since 1.18 call SpecialPageFactory method directly
- */
- static function getUsablePages( User $user = null ) {
- wfDeprecated( __METHOD__, '1.18' );
- return SpecialPageFactory::getUsablePages( $user );
- }
-
- /**
- * Return categorised listable special pages for all users
- *
- * @return array Associative array mapping page's name to its SpecialPage object
- * @deprecated since 1.18 call SpecialPageFactory method directly
- */
- static function getRegularPages() {
- wfDeprecated( __METHOD__, '1.18' );
- return SpecialPageFactory::getRegularPages();
- }
-
- /**
- * Return categorised listable special pages which are available
- * for the current user, but not for everyone
- *
- * @return array Associative array mapping page's name to its SpecialPage object
- * @deprecated since 1.18 call SpecialPageFactory method directly
- */
- static function getRestrictedPages() {
- wfDeprecated( __METHOD__, '1.18' );
- return SpecialPageFactory::getRestrictedPages();
- }
-
- /**
- * Execute a special page path.
- * The path may contain parameters, e.g. Special:Name/Params
- * Extracts the special page name and call the execute method, passing the parameters
- *
- * Returns a title object if the page is redirected, false if there was no such special
- * page, and true if it was successful.
- *
- * @param $title Title object
- * @param $context IContextSource
- * @param $including Bool output is being captured for use in {{special:whatever}}
- * @return Bool
- * @deprecated since 1.18 call SpecialPageFactory method directly
- */
- public static function executePath( &$title, IContextSource &$context, $including = false ) {
- wfDeprecated( __METHOD__, '1.18' );
- return SpecialPageFactory::executePath( $title, $context, $including );
- }
-
- /**
- * Get the local name for a specified canonical name
- *
- * @param $name String
- * @param $subpage Mixed: boolean false, or string
- *
- * @return String
- * @deprecated since 1.18 call SpecialPageFactory method directly
- */
- static function getLocalNameFor( $name, $subpage = false ) {
- wfDeprecated( __METHOD__, '1.18' );
- return SpecialPageFactory::getLocalNameFor( $name, $subpage );
- }
-
- /**
- * Get a localised Title object for a specified special page name
- *
- * @param $name String
- * @param string|Bool $subpage subpage string, or false to not use a subpage
- * @param string $fragment the link fragment (after the "#")
- * @throws MWException
- * @return Title object
- */
- public static function getTitleFor( $name, $subpage = false, $fragment = '' ) {
- $name = SpecialPageFactory::getLocalNameFor( $name, $subpage );
- return Title::makeTitle( NS_SPECIAL, $name, $fragment );
- }
-
- /**
- * Get a localised Title object for a page name with a possibly unvalidated subpage
- *
- * @param $name String
- * @param string|Bool $subpage subpage string, or false to not use a subpage
- * @return Title object or null if the page doesn't exist
- */
- public static function getSafeTitleFor( $name, $subpage = false ) {
- $name = SpecialPageFactory::getLocalNameFor( $name, $subpage );
- if ( $name ) {
- return Title::makeTitleSafe( NS_SPECIAL, $name );
- } else {
- return null;
- }
- }
-
- /**
- * Get a title for a given alias
- *
- * @param $alias String
- * @return Title or null if there is no such alias
- * @deprecated since 1.18 call SpecialPageFactory method directly
- */
- static function getTitleForAlias( $alias ) {
- wfDeprecated( __METHOD__, '1.18' );
- return SpecialPageFactory::getTitleForAlias( $alias );
- }
-
- /**
- * Default constructor for special pages
- * Derivative classes should call this from their constructor
- * Note that if the user does not have the required level, an error message will
- * be displayed by the default execute() method, without the global function ever
- * being called.
- *
- * If you override execute(), you can recover the default behavior with userCanExecute()
- * and displayRestrictionError()
- *
- * @param string $name Name of the special page, as seen in links and URLs
- * @param string $restriction User right required, e.g. "block" or "delete"
- * @param bool $listed Whether the page is listed in Special:Specialpages
- * @param Callback|Bool $function Function called by execute(). By default
- * it is constructed from $name
- * @param string $file File which is included by execute(). It is also
- * constructed from $name by default
- * @param bool $includable Whether the page can be included in normal pages
- */
- public function __construct(
- $name = '', $restriction = '', $listed = true,
- $function = false, $file = 'default', $includable = false
- ) {
- $this->init( $name, $restriction, $listed, $function, $file, $includable );
- }
-
- /**
- * Do the real work for the constructor, mainly so __call() can intercept
- * calls to SpecialPage()
- * @param string $name Name of the special page, as seen in links and URLs
- * @param string $restriction User right required, e.g. "block" or "delete"
- * @param bool $listed Whether the page is listed in Special:Specialpages
- * @param Callback|Bool $function Function called by execute(). By default
- * it is constructed from $name
- * @param string $file File which is included by execute(). It is also
- * constructed from $name by default
- * @param bool $includable Whether the page can be included in normal pages
- */
- private function init( $name, $restriction, $listed, $function, $file, $includable ) {
- $this->mName = $name;
- $this->mRestriction = $restriction;
- $this->mListed = $listed;
- $this->mIncludable = $includable;
- if ( !$function ) {
- $this->mFunction = 'wfSpecial' . $name;
- } else {
- $this->mFunction = $function;
- }
- if ( $file === 'default' ) {
- $this->mFile = __DIR__ . "/specials/Special$name.php";
- } else {
- $this->mFile = $file;
- }
- }
-
- /**
- * Use PHP's magic __call handler to get calls to the old PHP4 constructor
- * because PHP E_STRICT yells at you for having __construct() and SpecialPage()
- *
- * @param string $fName Name of called method
- * @param array $a Arguments to the method
- * @throws MWException
- * @deprecated since 1.17, call parent::__construct()
- */
- public function __call( $fName, $a ) {
- // Deprecated messages now, remove in 1.19 or 1.20?
- wfDeprecated( __METHOD__, '1.17' );
-
- // Sometimes $fName is SpecialPage, sometimes it's specialpage. <3 PHP
- if ( strtolower( $fName ) == 'specialpage' ) {
- $name = isset( $a[0] ) ? $a[0] : '';
- $restriction = isset( $a[1] ) ? $a[1] : '';
- $listed = isset( $a[2] ) ? $a[2] : true;
- $function = isset( $a[3] ) ? $a[3] : false;
- $file = isset( $a[4] ) ? $a[4] : 'default';
- $includable = isset( $a[5] ) ? $a[5] : false;
- $this->init( $name, $restriction, $listed, $function, $file, $includable );
- } else {
- $className = get_class( $this );
- throw new MWException( "Call to undefined method $className::$fName" );
- }
- }
-
- /**
- * Get the name of this Special Page.
- * @return String
- */
- function getName() {
- return $this->mName;
- }
-
- /**
- * Get the permission that a user must have to execute this page
- * @return String
- */
- function getRestriction() {
- return $this->mRestriction;
- }
-
- /**
- * Get the file which will be included by SpecialPage::execute() if your extension is
- * still stuck in the past and hasn't overridden the execute() method. No modern code
- * should want or need to know this.
- * @return String
- * @deprecated since 1.18
- */
- function getFile() {
- wfDeprecated( __METHOD__, '1.18' );
- return $this->mFile;
- }
-
- // @todo FIXME: Decide which syntax to use for this, and stick to it
- /**
- * Whether this special page is listed in Special:SpecialPages
- * @since r3583 (v1.3)
- * @return Bool
- */
- function isListed() {
- return $this->mListed;
- }
- /**
- * Set whether this page is listed in Special:Specialpages, at run-time
- * @since r3583 (v1.3)
- * @param $listed Bool
- * @return Bool
- */
- function setListed( $listed ) {
- return wfSetVar( $this->mListed, $listed );
- }
- /**
- * Get or set whether this special page is listed in Special:SpecialPages
- * @since r11308 (v1.6)
- * @param $x Bool
- * @return Bool
- */
- function listed( $x = null ) {
- return wfSetVar( $this->mListed, $x );
- }
-
- /**
- * Whether it's allowed to transclude the special page via {{Special:Foo/params}}
- * @return Bool
- */
- public function isIncludable() {
- return $this->mIncludable;
- }
-
- /**
- * These mutators are very evil, as the relevant variables should not mutate. So
- * don't use them.
- * @param $x Mixed
- * @return Mixed
- * @deprecated since 1.18
- */
- function name( $x = null ) {
- wfDeprecated( __METHOD__, '1.18' );
- return wfSetVar( $this->mName, $x );
- }
-
- /**
- * These mutators are very evil, as the relevant variables should not mutate. So
- * don't use them.
- * @param $x Mixed
- * @return Mixed
- * @deprecated since 1.18
- */
- function restriction( $x = null ) {
- wfDeprecated( __METHOD__, '1.18' );
- return wfSetVar( $this->mRestriction, $x );
- }
-
- /**
- * These mutators are very evil, as the relevant variables should not mutate. So
- * don't use them.
- * @param $x Mixed
- * @return Mixed
- * @deprecated since 1.18
- */
- function func( $x = null ) {
- wfDeprecated( __METHOD__, '1.18' );
- return wfSetVar( $this->mFunction, $x );
- }
-
- /**
- * These mutators are very evil, as the relevant variables should not mutate. So
- * don't use them.
- * @param $x Mixed
- * @return Mixed
- * @deprecated since 1.18
- */
- function file( $x = null ) {
- wfDeprecated( __METHOD__, '1.18' );
- return wfSetVar( $this->mFile, $x );
- }
-
- /**
- * These mutators are very evil, as the relevant variables should not mutate. So
- * don't use them.
- * @param $x Mixed
- * @return Mixed
- * @deprecated since 1.18
- */
- function includable( $x = null ) {
- wfDeprecated( __METHOD__, '1.18' );
- return wfSetVar( $this->mIncludable, $x );
- }
-
- /**
- * Whether the special page is being evaluated via transclusion
- * @param $x Bool
- * @return Bool
- */
- function including( $x = null ) {
- return wfSetVar( $this->mIncluding, $x );
- }
-
- /**
- * Get the localised name of the special page
- */
- function getLocalName() {
- if ( !isset( $this->mLocalName ) ) {
- $this->mLocalName = SpecialPageFactory::getLocalNameFor( $this->mName );
- }
- return $this->mLocalName;
- }
-
- /**
- * Is this page expensive (for some definition of expensive)?
- * Expensive pages are disabled or cached in miser mode. Originally used
- * (and still overridden) by QueryPage and subclasses, moved here so that
- * Special:SpecialPages can safely call it for all special pages.
- *
- * @return Boolean
- */
- public function isExpensive() {
- return false;
- }
-
- /**
- * Is this page cached?
- * Expensive pages are cached or disabled in miser mode.
- * Used by QueryPage and subclasses, moved here so that
- * Special:SpecialPages can safely call it for all special pages.
- *
- * @return Boolean
- * @since 1.21
- */
- public function isCached() {
- return false;
- }
-
- /**
- * Can be overridden by subclasses with more complicated permissions
- * schemes.
- *
- * @return Boolean: should the page be displayed with the restricted-access
- * pages?
- */
- public function isRestricted() {
- // DWIM: If anons can do something, then it is not restricted
- return $this->mRestriction != '' && !User::groupHasPermission( '*', $this->mRestriction );
- }
-
- /**
- * Checks if the given user (identified by an object) can execute this
- * special page (as defined by $mRestriction). Can be overridden by sub-
- * classes with more complicated permissions schemes.
- *
- * @param $user User: the user to check
- * @return Boolean: does the user have permission to view the page?
- */
- public function userCanExecute( User $user ) {
- return $user->isAllowed( $this->mRestriction );
- }
-
- /**
- * Output an error message telling the user what access level they have to have
- */
- function displayRestrictionError() {
- throw new PermissionsError( $this->mRestriction );
- }
-
- /**
- * Checks if userCanExecute, and if not throws a PermissionsError
- *
- * @since 1.19
- */
- public function checkPermissions() {
- if ( !$this->userCanExecute( $this->getUser() ) ) {
- $this->displayRestrictionError();
- }
- }
-
- /**
- * If the wiki is currently in readonly mode, throws a ReadOnlyError
- *
- * @since 1.19
- * @throws ReadOnlyError
- */
- public function checkReadOnly() {
- if ( wfReadOnly() ) {
- throw new ReadOnlyError;
- }
- }
-
- /**
- * If the user is not logged in, throws UserNotLoggedIn error.
- *
- * Default error message includes a link to Special:Userlogin with properly set 'returnto' query
- * parameter.
- *
- * @since 1.23
- * @param string|Message $reasonMsg [optional] Passed on to UserNotLoggedIn constructor. Strings
- * will be used as message keys. If a string is given, the message will also receive a
- * formatted login link (generated using the 'loginreqlink' message) as first parameter. If a
- * Message is given, it will be passed on verbatim.
- * @param string|Message $titleMsg [optional] Passed on to UserNotLoggedIn constructor. Strings
- * will be used as message keys.
- * @throws UserNotLoggedIn
- */
- public function requireLogin( $reasonMsg = null, $titleMsg = null ) {
- if ( $this->getUser()->isAnon() ) {
- // Use default messages if not given or explicit null passed
- if ( !$reasonMsg ) {
- $reasonMsg = 'exception-nologin-text-manual';
- }
- if ( !$titleMsg ) {
- $titleMsg = 'exception-nologin';
- }
-
- // Convert to Messages with current context
- if ( is_string( $reasonMsg ) ) {
- $loginreqlink = Linker::linkKnown(
- SpecialPage::getTitleFor( 'Userlogin' ),
- $this->msg( 'loginreqlink' )->escaped(),
- array(),
- array( 'returnto' => $this->getTitle()->getPrefixedText() )
- );
- $reasonMsg = $this->msg( $reasonMsg )->rawParams( $loginreqlink );
- }
- if ( is_string( $titleMsg ) ) {
- $titleMsg = $this->msg( $titleMsg );
- }
-
- throw new UserNotLoggedIn( $reasonMsg, $titleMsg );
- }
- }
-
- /**
- * Sets headers - this should be called from the execute() method of all derived classes!
- */
- function setHeaders() {
- $out = $this->getOutput();
- $out->setArticleRelated( false );
- $out->setRobotPolicy( "noindex,nofollow" );
- $out->setPageTitle( $this->getDescription() );
- }
-
- /**
- * Entry point.
- *
- * @since 1.20
- *
- * @param $subPage string|null
- */
- final public function run( $subPage ) {
- /**
- * Gets called before @see SpecialPage::execute.
- *
- * @since 1.20
- *
- * @param $special SpecialPage
- * @param $subPage string|null
- */
- wfRunHooks( 'SpecialPageBeforeExecute', array( $this, $subPage ) );
-
- $this->beforeExecute( $subPage );
- $this->execute( $subPage );
- $this->afterExecute( $subPage );
-
- /**
- * Gets called after @see SpecialPage::execute.
- *
- * @since 1.20
- *
- * @param $special SpecialPage
- * @param $subPage string|null
- */
- wfRunHooks( 'SpecialPageAfterExecute', array( $this, $subPage ) );
- }
-
- /**
- * Gets called before @see SpecialPage::execute.
- *
- * @since 1.20
- *
- * @param $subPage string|null
- */
- protected function beforeExecute( $subPage ) {
- // No-op
- }
-
- /**
- * Gets called after @see SpecialPage::execute.
- *
- * @since 1.20
- *
- * @param $subPage string|null
- */
- protected function afterExecute( $subPage ) {
- // No-op
- }
-
- /**
- * Default execute method
- * Checks user permissions, calls the function given in mFunction
- *
- * This must be overridden by subclasses; it will be made abstract in a future version
- *
- * @param $subPage string|null
- */
- public function execute( $subPage ) {
- $this->setHeaders();
- $this->checkPermissions();
-
- $func = $this->mFunction;
- // only load file if the function does not exist
- if ( !is_callable( $func ) && $this->mFile ) {
- require_once $this->mFile;
- }
- $this->outputHeader();
- call_user_func( $func, $subPage, $this );
- }
-
- /**
- * Outputs a summary message on top of special pages
- * Per default the message key is the canonical name of the special page
- * May be overridden, i.e. by extensions to stick with the naming conventions
- * for message keys: 'extensionname-xxx'
- *
- * @param string $summaryMessageKey message key of the summary
- */
- function outputHeader( $summaryMessageKey = '' ) {
- global $wgContLang;
-
- if ( $summaryMessageKey == '' ) {
- $msg = $wgContLang->lc( $this->getName() ) . '-summary';
- } else {
- $msg = $summaryMessageKey;
- }
- if ( !$this->msg( $msg )->isDisabled() && !$this->including() ) {
- $this->getOutput()->wrapWikiMsg(
- "<div class='mw-specialpage-summary'>\n$1\n</div>", $msg );
- }
-
- }
-
- /**
- * Returns the name that goes in the \<h1\> in the special page itself, and
- * also the name that will be listed in Special:Specialpages
- *
- * Derived classes can override this, but usually it is easier to keep the
- * default behavior. Messages can be added at run-time, see
- * MessageCache.php.
- *
- * @return String
- */
- function getDescription() {
- return $this->msg( strtolower( $this->mName ) )->text();
- }
-
- /**
- * Get a self-referential title object
- *
- * @param $subpage String|Bool
- * @return Title object
- */
- function getTitle( $subpage = false ) {
- return self::getTitleFor( $this->mName, $subpage );
- }
-
- /**
- * Sets the context this SpecialPage is executed in
- *
- * @param $context IContextSource
- * @since 1.18
- */
- public function setContext( $context ) {
- $this->mContext = $context;
- }
-
- /**
- * Gets the context this SpecialPage is executed in
- *
- * @return IContextSource|RequestContext
- * @since 1.18
- */
- public function getContext() {
- if ( $this->mContext instanceof IContextSource ) {
- return $this->mContext;
- } else {
- wfDebug( __METHOD__ . " called and \$mContext is null. " .
- "Return RequestContext::getMain(); for sanity\n" );
- return RequestContext::getMain();
- }
- }
-
- /**
- * Get the WebRequest being used for this instance
- *
- * @return WebRequest
- * @since 1.18
- */
- public function getRequest() {
- return $this->getContext()->getRequest();
- }
-
- /**
- * Get the OutputPage being used for this instance
- *
- * @return OutputPage
- * @since 1.18
- */
- public function getOutput() {
- return $this->getContext()->getOutput();
- }
-
- /**
- * Shortcut to get the User executing this instance
- *
- * @return User
- * @since 1.18
- */
- public function getUser() {
- return $this->getContext()->getUser();
- }
-
- /**
- * Shortcut to get the skin being used for this instance
- *
- * @return Skin
- * @since 1.18
- */
- public function getSkin() {
- return $this->getContext()->getSkin();
- }
-
- /**
- * Shortcut to get user's language
- *
- * @deprecated since 1.19 Use getLanguage instead
- * @return Language
- * @since 1.18
- */
- public function getLang() {
- wfDeprecated( __METHOD__, '1.19' );
- return $this->getLanguage();
- }
-
- /**
- * Shortcut to get user's language
- *
- * @return Language
- * @since 1.19
- */
- public function getLanguage() {
- return $this->getContext()->getLanguage();
- }
-
- /**
- * Return the full title, including $par
- *
- * @return Title
- * @since 1.18
- */
- public function getFullTitle() {
- return $this->getContext()->getTitle();
- }
-
- /**
- * Wrapper around wfMessage that sets the current context.
- *
- * @return Message
- * @see wfMessage
- */
- public function msg( /* $args */ ) {
- $message = call_user_func_array(
- array( $this->getContext(), 'msg' ),
- func_get_args()
- );
- // RequestContext passes context to wfMessage, and the language is set from
- // the context, but setting the language for Message class removes the
- // interface message status, which breaks for example usernameless gender
- // invocations. Restore the flag when not including special page in content.
- if ( $this->including() ) {
- $message->setInterfaceMessageFlag( false );
- }
- return $message;
- }
-
- /**
- * Adds RSS/atom links
- *
- * @param $params array
- */
- protected function addFeedLinks( $params ) {
- global $wgFeedClasses;
-
- $feedTemplate = wfScript( 'api' );
-
- foreach ( $wgFeedClasses as $format => $class ) {
- $theseParams = $params + array( 'feedformat' => $format );
- $url = wfAppendQuery( $feedTemplate, $theseParams );
- $this->getOutput()->addFeedLink( $format, $url );
- }
- }
-
- /**
- * Get the group that the special page belongs in on Special:SpecialPage
- * Use this method, instead of getGroupName to allow customization
- * of the group name from the wiki side
- *
- * @return string Group of this special page
- * @since 1.21
- */
- public function getFinalGroupName() {
- global $wgSpecialPageGroups;
- $name = $this->getName();
-
- // Allow overbidding the group from the wiki side
- $msg = $this->msg( 'specialpages-specialpagegroup-' . strtolower( $name ) )->inContentLanguage();
- if ( !$msg->isBlank() ) {
- $group = $msg->text();
- } else {
- // Than use the group from this object
- $group = $this->getGroupName();
-
- // Group '-' is used as default to have the chance to determine,
- // if the special pages overrides this method,
- // if not overridden, $wgSpecialPageGroups is checked for b/c
- if ( $group === '-' && isset( $wgSpecialPageGroups[$name] ) ) {
- $group = $wgSpecialPageGroups[$name];
- }
- }
-
- // never give '-' back, change to 'other'
- if ( $group === '-' ) {
- $group = 'other';
- }
-
- return $group;
- }
-
- /**
- * Under which header this special page is listed in Special:SpecialPages
- * See messages 'specialpages-group-*' for valid names
- * This method defaults to group 'other'
- *
- * @return string
- * @since 1.21
- */
- protected function getGroupName() {
- // '-' used here to determine, if this group is overridden or has a hardcoded 'other'
- // Needed for b/c in getFinalGroupName
- return '-';
- }
-}
-
-/**
- * Special page which uses an HTMLForm to handle processing. This is mostly a
- * clone of FormAction. More special pages should be built this way; maybe this could be
- * a new structure for SpecialPages
- */
-abstract class FormSpecialPage extends SpecialPage {
- /**
- * The sub-page of the special page.
- * @var string
- */
- protected $par = null;
-
- /**
- * Get an HTMLForm descriptor array
- * @return Array
- */
- abstract protected function getFormFields();
-
- /**
- * Add pre-text to the form
- * @return String HTML which will be sent to $form->addPreText()
- */
- protected function preText() {
- return '';
- }
-
- /**
- * Add post-text to the form
- * @return String HTML which will be sent to $form->addPostText()
- */
- protected function postText() {
- return '';
- }
-
- /**
- * Play with the HTMLForm if you need to more substantially
- * @param $form HTMLForm
- */
- protected function alterForm( HTMLForm $form ) {
- }
-
- /**
- * Get message prefix for HTMLForm
- *
- * @since 1.21
- * @return string
- */
- protected function getMessagePrefix() {
- return strtolower( $this->getName() );
- }
-
- /**
- * Get the HTMLForm to control behavior
- * @return HTMLForm|null
- */
- protected function getForm() {
- $this->fields = $this->getFormFields();
-
- $form = new HTMLForm( $this->fields, $this->getContext(), $this->getMessagePrefix() );
- $form->setSubmitCallback( array( $this, 'onSubmit' ) );
- // If the form is a compact vertical form, then don't output this ugly
- // fieldset surrounding it.
- // XXX Special pages can setDisplayFormat to 'vform' in alterForm(), but that
- // is called after this.
- if ( !$form->isVForm() ) {
- $form->setWrapperLegendMsg( $this->getMessagePrefix() . '-legend' );
- }
-
- $headerMsg = $this->msg( $this->getMessagePrefix() . '-text' );
- if ( !$headerMsg->isDisabled() ) {
- $form->addHeaderText( $headerMsg->parseAsBlock() );
- }
-
- // Retain query parameters (uselang etc)
- $params = array_diff_key(
- $this->getRequest()->getQueryValues(), array( 'title' => null ) );
- $form->addHiddenField( 'redirectparams', wfArrayToCgi( $params ) );
-
- $form->addPreText( $this->preText() );
- $form->addPostText( $this->postText() );
- $this->alterForm( $form );
-
- // Give hooks a chance to alter the form, adding extra fields or text etc
- wfRunHooks( "Special{$this->getName()}BeforeFormDisplay", array( &$form ) );
-
- return $form;
- }
-
- /**
- * Process the form on POST submission.
- * @param $data Array
- * @return Bool|Array true for success, false for didn't-try, array of errors on failure
- */
- abstract public function onSubmit( array $data );
-
- /**
- * Do something exciting on successful processing of the form, most likely to show a
- * confirmation message
- * @since 1.22 Default is to do nothing
- */
- public function onSuccess() {
- }
-
- /**
- * Basic SpecialPage workflow: get a form, send it to the user; get some data back,
- *
- * @param string $par Subpage string if one was specified
- */
- public function execute( $par ) {
- $this->setParameter( $par );
- $this->setHeaders();
-
- // This will throw exceptions if there's a problem
- $this->checkExecutePermissions( $this->getUser() );
-
- $form = $this->getForm();
- if ( $form->show() ) {
- $this->onSuccess();
- }
- }
-
- /**
- * Maybe do something interesting with the subpage parameter
- * @param string $par
- */
- protected function setParameter( $par ) {
- $this->par = $par;
- }
-
- /**
- * Called from execute() to check if the given user can perform this action.
- * Failures here must throw subclasses of ErrorPageError.
- * @param $user User
- * @throws UserBlockedError
- * @return Bool true
- */
- protected function checkExecutePermissions( User $user ) {
- $this->checkPermissions();
-
- if ( $this->requiresUnblock() && $user->isBlocked() ) {
- $block = $user->getBlock();
- throw new UserBlockedError( $block );
- }
-
- if ( $this->requiresWrite() ) {
- $this->checkReadOnly();
- }
-
- return true;
- }
-
- /**
- * Whether this action requires the wiki not to be locked
- * @return Bool
- */
- public function requiresWrite() {
- return true;
- }
-
- /**
- * Whether this action cannot be executed by a blocked user
- * @return Bool
- */
- public function requiresUnblock() {
- return true;
- }
-}
-
-/**
- * Shortcut to construct a special page which is unlisted by default
- * @ingroup SpecialPage
- */
-class UnlistedSpecialPage extends SpecialPage {
- function __construct( $name, $restriction = '', $function = false, $file = 'default' ) {
- parent::__construct( $name, $restriction, false, $function, $file );
- }
-
- public function isListed() {
- return false;
- }
-}
-
-/**
- * Shortcut to construct an includable special page
- * @ingroup SpecialPage
- */
-class IncludableSpecialPage extends SpecialPage {
- function __construct(
- $name, $restriction = '', $listed = true, $function = false, $file = 'default'
- ) {
- parent::__construct( $name, $restriction, $listed, $function, $file, true );
- }
-
- public function isIncludable() {
- return true;
- }
-}
-
-/**
- * Shortcut to construct a special page alias.
- * @ingroup SpecialPage
- */
-abstract class RedirectSpecialPage extends UnlistedSpecialPage {
-
- // Query parameters that can be passed through redirects
- protected $mAllowedRedirectParams = array();
-
- // Query parameters added by redirects
- protected $mAddedRedirectParams = array();
-
- public function execute( $par ) {
- $redirect = $this->getRedirect( $par );
- $query = $this->getRedirectQuery();
- // Redirect to a page title with possible query parameters
- if ( $redirect instanceof Title ) {
- $url = $redirect->getFullURL( $query );
- $this->getOutput()->redirect( $url );
- return $redirect;
- } elseif ( $redirect === true ) {
- // Redirect to index.php with query parameters
- $url = wfAppendQuery( wfScript( 'index' ), $query );
- $this->getOutput()->redirect( $url );
- return $redirect;
- } else {
- $class = get_class( $this );
- throw new MWException( "RedirectSpecialPage $class doesn't redirect!" );
- }
- }
-
- /**
- * If the special page is a redirect, then get the Title object it redirects to.
- * False otherwise.
- *
- * @param string $par Subpage string
- * @return Title|bool
- */
- abstract public function getRedirect( $par );
-
- /**
- * Return part of the request string for a special redirect page
- * This allows passing, e.g. action=history to Special:Mypage, etc.
- *
- * @return String
- */
- public function getRedirectQuery() {
- $params = array();
-
- foreach ( $this->mAllowedRedirectParams as $arg ) {
- if ( $this->getRequest()->getVal( $arg, null ) !== null ) {
- $params[$arg] = $this->getRequest()->getVal( $arg );
- }
- }
-
- foreach ( $this->mAddedRedirectParams as $arg => $val ) {
- $params[$arg] = $val;
- }
-
- return count( $params )
- ? $params
- : false;
- }
-}
-
-abstract class SpecialRedirectToSpecial extends RedirectSpecialPage {
- // @todo FIXME: Visibility must be declared
- var $redirName, $redirSubpage;
-
- function __construct(
- $name, $redirName, $redirSubpage = false,
- $allowedRedirectParams = array(), $addedRedirectParams = array()
- ) {
- parent::__construct( $name );
- $this->redirName = $redirName;
- $this->redirSubpage = $redirSubpage;
- $this->mAllowedRedirectParams = $allowedRedirectParams;
- $this->mAddedRedirectParams = $addedRedirectParams;
- }
-
- public function getRedirect( $subpage ) {
- if ( $this->redirSubpage === false ) {
- return SpecialPage::getTitleFor( $this->redirName, $subpage );
- } else {
- return SpecialPage::getTitleFor( $this->redirName, $this->redirSubpage );
- }
- }
-}
-
-/**
- * ListAdmins --> ListUsers/sysop
- */
-class SpecialListAdmins extends SpecialRedirectToSpecial {
- function __construct() {
- parent::__construct( 'Listadmins', 'Listusers', 'sysop' );
- }
-}
-
-/**
- * ListBots --> ListUsers/bot
- */
-class SpecialListBots extends SpecialRedirectToSpecial {
- function __construct() {
- parent::__construct( 'Listbots', 'Listusers', 'bot' );
- }
-}
-
-/**
- * CreateAccount --> UserLogin/signup
- * @todo FIXME: This (and the rest of the login frontend) needs to die a horrible painful death
- */
-class SpecialCreateAccount extends SpecialRedirectToSpecial {
- function __construct() {
- parent::__construct( 'CreateAccount', 'Userlogin', 'signup', array( 'returnto', 'returntoquery', 'uselang' ) );
- }
-
- // No reason to hide this link on Special:Specialpages
- public function isListed() {
- return true;
- }
-
- protected function getGroupName() {
- return 'login';
- }
-}
-/**
- * SpecialMypage, SpecialMytalk and SpecialMycontributions special pages
- * are used to get user independent links pointing to the user page, talk
- * page and list of contributions.
- * This can let us cache a single copy of any generated content for all
- * users.
- */
-
-/**
- * Superclass for any RedirectSpecialPage which redirects the user
- * to a particular article (as opposed to user contributions, logs, etc.).
- *
- * For security reasons these special pages are restricted to pass on
- * the following subset of GET parameters to the target page while
- * removing all others:
- *
- * - useskin, uselang, printable: to alter the appearance of the resulting page
- *
- * - redirect: allows viewing one's user page or talk page even if it is a
- * redirect.
- *
- * - rdfrom: allows redirecting to one's user page or talk page from an
- * external wiki with the "Redirect from..." notice.
- *
- * - limit, offset: Useful for linking to history of one's own user page or
- * user talk page. For example, this would be a link to "the last edit to your
- * user talk page in the year 2010":
- * http://en.wikipedia.org/wiki/Special:MyPage?offset=20110000000000&limit=1&action=history
- *
- * - feed: would allow linking to the current user's RSS feed for their user
- * talk page:
- * http://en.wikipedia.org/w/index.php?title=Special:MyTalk&action=history&feed=rss
- *
- * - preloadtitle: Can be used to provide a default section title for a
- * preloaded new comment on one's own talk page.
- *
- * - summary : Can be used to provide a default edit summary for a preloaded
- * edit to one's own user page or talk page.
- *
- * - preview: Allows showing/hiding preview on first edit regardless of user
- * preference, useful for preloaded edits where you know preview wouldn't be
- * useful.
- *
- * - internaledit, externaledit, mode: Allows forcing the use of the
- * internal/external editor, e.g. to force the internal editor for
- * short/simple preloaded edits.
- *
- * - redlink: Affects the message the user sees if their talk page/user talk
- * page does not currently exist. Avoids confusion for newbies with no user
- * pages over why they got a "permission error" following this link:
- * http://en.wikipedia.org/w/index.php?title=Special:MyPage&redlink=1
- *
- * - debug: determines whether the debug parameter is passed to load.php,
- * which disables reformatting and allows scripts to be debugged. Useful
- * when debugging scripts that manipulate one's own user page or talk page.
- *
- * @par Hook extension:
- * Extensions can add to the redirect parameters list by using the hook
- * RedirectSpecialArticleRedirectParams
- *
- * This hook allows extensions which add GET parameters like FlaggedRevs to
- * retain those parameters when redirecting using special pages.
- *
- * @par Hook extension example:
- * @code
- * $wgHooks['RedirectSpecialArticleRedirectParams'][] =
- * 'MyExtensionHooks::onRedirectSpecialArticleRedirectParams';
- * public static function onRedirectSpecialArticleRedirectParams( &$redirectParams ) {
- * $redirectParams[] = 'stable';
- * return true;
- * }
- * @endcode
- * @ingroup SpecialPage
- */
-abstract class RedirectSpecialArticle extends RedirectSpecialPage {
- function __construct( $name ) {
- parent::__construct( $name );
- $redirectParams = array(
- 'action',
- 'redirect', 'rdfrom',
- # Options for preloaded edits
- 'preload', 'editintro', 'preloadtitle', 'summary', 'nosummary',
- # Options for overriding user settings
- 'preview', 'internaledit', 'externaledit', 'mode', 'minor', 'watchthis',
- # Options for history/diffs
- 'section', 'oldid', 'diff', 'dir',
- 'limit', 'offset', 'feed',
- # Misc options
- 'redlink', 'debug',
- # Options for action=raw; missing ctype can break JS or CSS in some browsers
- 'ctype', 'maxage', 'smaxage',
- );
-
- wfRunHooks( "RedirectSpecialArticleRedirectParams", array( &$redirectParams ) );
- $this->mAllowedRedirectParams = $redirectParams;
- }
-}
-
-/**
- * Shortcut to construct a special page pointing to current user user's page.
- * @ingroup SpecialPage
- */
-class SpecialMypage extends RedirectSpecialArticle {
- function __construct() {
- parent::__construct( 'Mypage' );
- }
-
- function getRedirect( $subpage ) {
- if ( strval( $subpage ) !== '' ) {
- return Title::makeTitle( NS_USER, $this->getUser()->getName() . '/' . $subpage );
- } else {
- return Title::makeTitle( NS_USER, $this->getUser()->getName() );
- }
- }
-}
-
-/**
- * Shortcut to construct a special page pointing to current user talk page.
- * @ingroup SpecialPage
- */
-class SpecialMytalk extends RedirectSpecialArticle {
- function __construct() {
- parent::__construct( 'Mytalk' );
- }
-
- function getRedirect( $subpage ) {
- if ( strval( $subpage ) !== '' ) {
- return Title::makeTitle( NS_USER_TALK, $this->getUser()->getName() . '/' . $subpage );
- } else {
- return Title::makeTitle( NS_USER_TALK, $this->getUser()->getName() );
- }
- }
-}
-
-/**
- * Shortcut to construct a special page pointing to current user contributions.
- * @ingroup SpecialPage
- */
-class SpecialMycontributions extends RedirectSpecialPage {
- function __construct() {
- parent::__construct( 'Mycontributions' );
- $this->mAllowedRedirectParams = array( 'limit', 'namespace', 'tagfilter',
- 'offset', 'dir', 'year', 'month', 'feed' );
- }
-
- function getRedirect( $subpage ) {
- return SpecialPage::getTitleFor( 'Contributions', $this->getUser()->getName() );
- }
-}
-
-/**
- * Redirect to Special:Listfiles?user=$wgUser
- */
-class SpecialMyuploads extends RedirectSpecialPage {
- function __construct() {
- parent::__construct( 'Myuploads' );
- $this->mAllowedRedirectParams = array( 'limit', 'ilshowall', 'ilsearch' );
- }
-
- function getRedirect( $subpage ) {
- return SpecialPage::getTitleFor( 'Listfiles', $this->getUser()->getName() );
- }
-}
-
-/**
- * Redirect Special:Listfiles?user=$wgUser&ilshowall=true
- */
-class SpecialAllMyUploads extends RedirectSpecialPage {
- function __construct() {
- parent::__construct( 'AllMyUploads' );
- $this->mAllowedRedirectParams = array( 'limit', 'ilsearch' );
- }
-
- function getRedirect( $subpage ) {
- $this->mAddedRedirectParams['ilshowall'] = 1;
- return SpecialPage::getTitleFor( 'Listfiles', $this->getUser()->getName() );
- }
-}
-
-/**
- * Redirect from Special:PermanentLink/### to index.php?oldid=###
- */
-class SpecialPermanentLink extends RedirectSpecialPage {
- function __construct() {
- parent::__construct( 'PermanentLink' );
- $this->mAllowedRedirectParams = array();
- }
-
- function getRedirect( $subpage ) {
- $subpage = intval( $subpage );
- if ( $subpage === 0 ) {
- # throw an error page when no subpage was given
- throw new ErrorPageError( 'nopagetitle', 'nopagetext' );
- }
- $this->mAddedRedirectParams['oldid'] = $subpage;
- return true;
- }
-}
/**
* Get the error message as HTML. This is done by parsing the wikitext error
* message.
- *
- * @note: this does not perform a full wikitext to HTML conversion, it merely applies
- * a message transformation.
- * @todo figure out whether that is actually The Right Thing.
+ * @param string $shortContext a short enclosing context message name, to
+ * be used when there is a single error
+ * @param string $longContext a long enclosing context message name, for a list
+ * @return String
*/
public function getHTML( $shortContext = false, $longContext = false ) {
$text = $this->getWikiText( $shortContext, $longContext );
- return MessageCache::singleton()->transform( $text, true );
+ $out = MessageCache::singleton()->parse( $text, null, true, true );
+ return $out instanceof ParserOutput ? $out->getText() : $out;
}
/**
* @return String DB key
*/
function getUserCaseDBKey() {
- return $this->mUserCaseDBKey;
+ if ( !is_null( $this->mUserCaseDBKey ) ) {
+ return $this->mUserCaseDBKey;
+ } else {
+ // If created via makeTitle(), $this->mUserCaseDBKey is not set.
+ return $this->mDbkeyform;
+ }
}
/**
* @since 1.21
*/
public function doEditContent( Content $content, $summary, $flags = 0, $baseRevId = false,
- User $user = null, $serialisation_format = null ) {
+ User $user = null, $serialisation_format = null
+ ) {
global $wgUser, $wgUseAutomaticEditSummaries, $wgUseRCPatrol, $wgUseNPPatrol;
// Low-level sanity check
return Status::newFatal( 'readonlytext', wfReadOnlyReason() );
}
+ $this->loadPageData( 'fromdbmaster' );
$restrictionTypes = $this->mTitle->getRestrictionTypes();
-
$id = $this->getId();
if ( !$cascade ) {
}
}
+ $canonicaltitle = isset( $prop['canonicaltitle'] );
$url = isset( $prop['url'] );
$sha1 = isset( $prop['sha1'] );
$meta = isset( $prop['metadata'] );
$bitdepth = isset( $prop['bitdepth'] );
$uploadwarning = isset( $prop['uploadwarning'] );
- if ( ( $url || $sha1 || $meta || $mime || $mediatype || $archive || $bitdepth )
+ if ( ( $canonicaltitle || $url || $sha1 || $meta || $mime || $mediatype || $archive || $bitdepth )
&& $file->isDeleted( File::DELETED_FILE )
) {
$vals['filehidden'] = '';
return $vals;
}
+ if ( $canonicaltitle ) {
+ $vals['canonicaltitle'] = $file->getTitle()->getPrefixedText();
+ }
+
if ( $url ) {
if ( !is_null( $thumbParams ) ) {
$mto = $file->transform( $thumbParams );
'userid' => ' userid - Add the user ID that uploaded the image version',
'comment' => ' comment - Comment on the version',
'parsedcomment' => ' parsedcomment - Parse the comment on the version',
+ 'canonicaltitle' => ' canonicaltitle - Adds the canonical title of the image file',
'url' => ' url - Gives URL to the image and the description page',
'size' => ' size - Adds the size of the image in bytes ' .
'and the height, width and page count (if applicable)',
ApiBase::PROP_NULLABLE => true
)
),
+ 'canonicaltitle' => array(
+ 'canonicaltitle' => array(
+ ApiBase::PROP_TYPE => 'string',
+ ApiBase::PROP_NULLABLE => true
+ )
+ ),
'url' => array(
'filehidden' => 'boolean',
'thumburl' => array(
case 'protocols':
$fit = $this->appendProtocols( $p );
break;
+ case 'defaultoptions':
+ $fit = $this->appendDefaultOptions( $p );
+ break;
default:
ApiBase::dieDebug( __METHOD__, "Unknown prop=$p" );
}
$data['maxuploadsize'] = UploadBase::getMaxUploadSize();
+ $data['thumblimits'] = $GLOBALS['wgThumbLimits'];
+ $this->getResult()->setIndexedTagName( $data['thumblimits'], 'limit' );
+ $data['imagelimits'] = array();
+ $this->getResult()->setIndexedTagName( $data['imagelimits'], 'limit' );
+ foreach ( $GLOBALS['wgImageLimits'] as $k => $limit ) {
+ $data['imagelimits'][$k] = array( 'width' => $limit[0], 'height' => $limit[1] );
+ }
+
wfRunHooks( 'APIQuerySiteInfoGeneralInfo', array( $this, &$data ) );
return $this->getResult()->addValue( 'query', $property, $data );
return $this->getResult()->addValue( 'query', $property, $protocols );
}
+ public function appendDefaultOptions( $property ) {
+ return $this->getResult()->addValue( 'query', $property, User::getDefaultOptions() );
+ }
+
private function formatParserTags( $item ) {
return "<{$item}>";
}
'showhooks',
'variables',
'protocols',
+ 'defaultoptions',
)
),
'filteriw' => array(
' showhooks - Returns a list of all subscribed hooks (contents of $wgHooks)',
' variables - Returns a list of variable IDs',
' protocols - Returns a list of protocols that are allowed in external links.',
+ ' defaultoptions - Returns the default values for user preferences.',
),
'filteriw' => 'Return only local or only nonlocal entries of the interwiki map',
'showalldb' => 'List all database servers, not just the one lagging the most',
$this->rclistOpen = false;
$this->getOutput()->addModuleStyles( 'mediawiki.special.changeslist' );
- return '';
+ return '<div class="mw-changeslist">';
}
/**
* @return String
*/
public function endRecentChangesList() {
- if ( $this->rclistOpen ) {
- return "</ul>\n";
- } else {
- return '';
- }
+ $out = $this->rclistOpen ? "</ul>\n" : '';
+ $out .= '</div>';
+ return $out;
}
/**
'mediawiki.icon',
) );
- return '';
+ return '<div class="mw-changeslist">';
}
/**
* @return string
*/
public function endRecentChangesList() {
- return $this->recentChangesBlock() . parent::endRecentChangesList();
+ return $this->recentChangesBlock() . '</div>';
}
}
$this->context = $context;
}
+ /**
+ * Get the SiteConfiguration object
+ *
+ * @since 1.23
+ * @return SiteConfiguration
+ */
+ public function getConfig() {
+ return $this->getContext()->getConfig();
+ }
+
/**
* Get the WebRequest object
*
*/
private $skin;
+ /**
+ * @var SiteConfiguration
+ */
+ private $config;
+
/**
* Constructor
* @param IContextSource $context Context to inherit from
$this->setContext( $context );
}
+ /**
+ * Set the SiteConfiguration object
+ *
+ * @param SiteConfiguration $c
+ */
+ public function setConfig( SiteConfiguration $s ) {
+ $this->config = $s;
+ }
+
+ /**
+ * Get the SiteConfiguration object
+ *
+ * @return SiteConfiguration
+ */
+ public function getConfig() {
+ if ( !is_null( $this->config ) ) {
+ return $this->config;
+ } else {
+ return $this->getContext()->getConfig();
+ }
+ }
+
/**
* Set the WebRequest object
*
*/
public function getSkin();
+ /**
+ * Get the site configuration
+ *
+ * @since 1.23
+ * @return SiteConfiguration
+ */
+ public function getConfig();
+
/**
* Get a Message object with context set
*
*/
private $skin;
+ /**
+ * @var SiteConfiguration
+ */
+ private $config;
+
+ /**
+ * Set the SiteConfiguration object
+ *
+ * @param SiteConfiguration $c
+ */
+ public function setConfig( SiteConfiguration $c ) {
+ $this->config = $c;
+ }
+
+ /**
+ * Get the SiteConfiguration object
+ *
+ * @return SiteConfiguration
+ */
+ public function getConfig() {
+ if ( $this->config === null ) {
+ global $wgConf;
+ $this->config = $wgConf;
+ }
+ return $this->config;
+ }
+
/**
* Set the WebRequest object
*
* @ingroup DifferenceEngine
*/
class HWLDFWordAccumulator {
+ public $insClass = ' class="diffchange diffchange-inline"';
+ public $delClass = ' class="diffchange diffchange-inline"';
+
private $lines = array();
private $line = '';
private $group = '';
private function flushGroup( $new_tag ) {
if ( $this->group !== '' ) {
if ( $this->tag == 'ins' ) {
- $this->line .= '<ins class="diffchange diffchange-inline">' .
+ $this->line .= "<ins{$this->insClass}>" .
htmlspecialchars( $this->group ) . '</ins>';
} elseif ( $this->tag == 'del' ) {
- $this->line .= '<del class="diffchange diffchange-inline">' .
+ $this->line .= "<del{$this->delClass}>" .
htmlspecialchars( $this->group ) . '</del>';
} else {
$this->line .= htmlspecialchars( $this->group );
* This name should not be changed after use (e.g. with journaling).
* Note that the name is *not* used in actual container names.
* - wikiId : Prefix to container names that is unique to this backend.
- * If not provided, this defaults to the current wiki ID.
* It should only consist of alphanumberic, '-', and '_' characters.
* This ID is what avoids collisions if multiple logical backends
* use the same storage system, so this should be set carefully.
- * - lockManager : Registered name of a file lock manager to use.
- * - fileJournal : File journal configuration; see FileJournal::factory().
- * Journals simply log changes to files stored in the backend.
+ * - lockManager : LockManager object to use for any file locking.
+ * If not provided, then no file locking will be enforced.
+ * - fileJournal : FileJournal object to use for logging changes to files.
+ * If not provided, then change journaling will be disabled.
* - readOnly : Write operations are disallowed if this is a non-empty string.
* It should be an explanation for the backend being read-only.
* - parallelize : When to do file operations in parallel (when possible).
if ( !preg_match( '!^[a-zA-Z0-9-_]{1,255}$!', $this->name ) ) {
throw new FileBackendException( "Backend name `{$this->name}` is invalid." );
}
- $this->wikiId = isset( $config['wikiId'] )
- ? $config['wikiId']
- : wfWikiID(); // e.g. "my_wiki-en_"
- $this->lockManager = ( $config['lockManager'] instanceof LockManager )
+ if ( !isset( $config['wikiId'] ) ) {
+ $config['wikiId'] = wfWikiID();
+ wfDeprecated( __METHOD__ . ' called without "wikiID".', '1.23' );
+ }
+ if ( isset( $config['lockManager'] ) && !is_object( $config['lockManager'] ) ) {
+ $config['lockManager'] =
+ LockManagerGroup::singleton( $config['wikiId'] )->get( $config['lockManager'] );
+ wfDeprecated( __METHOD__ . ' called with non-object "lockManager".', '1.23' );
+ }
+ $this->wikiId = $config['wikiId']; // e.g. "my_wiki-en_"
+ $this->lockManager = isset( $config['lockManager'] )
? $config['lockManager']
- : LockManagerGroup::singleton( $this->wikiId )->get( $config['lockManager'] );
+ : new NullLockManager( array() );
$this->fileJournal = isset( $config['fileJournal'] )
- ? ( ( $config['fileJournal'] instanceof FileJournal )
- ? $config['fileJournal']
- : FileJournal::factory( $config['fileJournal'], $this->name ) )
+ ? $config['fileJournal']
: FileJournal::factory( array( 'class' => 'NullFileJournal' ), $this->name );
$this->readOnly = isset( $config['readOnly'] )
? (string)$config['readOnly']
if ( !isset( $this->backends[$name]['instance'] ) ) {
$class = $this->backends[$name]['class'];
$config = $this->backends[$name]['config'];
+ $config['wikiId'] = isset( $config['wikiId'] )
+ ? $config['wikiId']
+ : wfWikiID(); // e.g. "my_wiki-en_"
+ $config['lockManager'] =
+ LockManagerGroup::singleton( $config['wikiId'] )->get( $config['lockManager'] );
+ $config['fileJournal'] = isset( $config['fileJournal'] )
+ ? FileJournal::factory( $config['fileJournal'], $name )
+ : FileJournal::factory( array( 'class' => 'NullFileJournal' ), $name );
$this->backends[$name]['instance'] = new $class( $config );
}
// Alter certain sub-backend settings for sanity
unset( $config['readOnly'] ); // use proxy backend setting
unset( $config['fileJournal'] ); // use proxy backend journal
+ unset( $config['lockManager'] ); // lock under proxy backend
$config['wikiId'] = $this->wikiId; // use the proxy backend wiki ID
- $config['lockManager'] = 'nullLockManager'; // lock under proxy backend
if ( !empty( $config['isMultiMaster'] ) ) {
if ( $this->masterIndex >= 0 ) {
throw new FileBackendError( 'More than one master backend defined.' );
const OVERWRITE_SAME = 4;
const SKIP_LOCKING = 8;
+ const NAME_AND_TIME_ONLY = 1;
+
/** @var bool Whether to fetch commons image description pages and display
* them on the local wiki */
public $fetchDescription;
* $repo->findFiles( $findBatch );
*
* No title should appear in $items twice, as the result use titles as keys
- * @return array (Map of file names => File objects) for matches
+ * @param int $flags Supports:
+ * - FileRepo::NAME_AND_TIME_ONLY : return a (search title => (title,timestamp)) map.
+ * The search title uses the input titles; the other is the final post-redirect title.
+ * All titles are returned as string DB keys and the inner array is associative.
+ * @return array Map of (file name => File objects) for matches
*/
- public function findFiles( array $items ) {
+ public function findFiles( array $items, $flags = 0 ) {
$result = array();
foreach ( $items as $item ) {
if ( is_array( $item ) ) {
}
$file = $this->findFile( $title, $options );
if ( $file ) {
- $result[$file->getTitle()->getDBkey()] = $file;
+ $searchName = File::normalizeTitle( $title )->getDBkey(); // must be valid
+ if ( $flags & self::NAME_AND_TIME_ONLY ) {
+ $result[$searchName] = array(
+ 'title' => $file->getTitle()->getDBkey(),
+ 'timestamp' => $file->getTimestamp()
+ );
+ } else {
+ $result[$searchName] = $file;
+ }
}
}
return $id;
}
- public function findFiles( array $items ) {
+ public function findFiles( array $items, $flags = 0 ) {
$finalFiles = array(); // map of (DB key => corresponding File) for matches
- $searchSet = array(); // map of (DB key => normalized search params)
+ $searchSet = array(); // map of (normalized DB key => search params)
foreach ( $items as $item ) {
- $title = is_array( $item )
- ? File::normalizeTitle( $item['title'] )
- : File::normalizeTitle( $item );
- if ( $title ) { // valid title
- $searchSet[$title->getDbKey()] = ( is_array( $item ) ? $item : array() );
+ if ( is_array( $item ) ) {
+ $title = File::normalizeTitle( $item['title'] );
+ if ( $title ) {
+ $searchSet[$title->getDBkey()] = $item;
+ }
+ } else {
+ $title = File::normalizeTitle( $item );
+ if ( $title ) {
+ $searchSet[$title->getDBkey()] = array();
+ }
}
}
$repo = $this;
$applyMatchingFiles = function( ResultWrapper $res, &$searchSet, &$finalFiles )
- use ( $repo, $fileMatchesSearch )
+ use ( $repo, $fileMatchesSearch, $flags )
{
foreach ( $res as $row ) {
- $possFile = $repo->newFileFromRow( $row );
- $dbKey = $possFile->getName();
- // There must have been a search for this DB Key
- if ( $fileMatchesSearch( $possFile, $searchSet[$dbKey] ) ) {
- $finalFiles[$dbKey] = $possFile;
+ $file = $repo->newFileFromRow( $row );
+ $dbKey = $file->getTitle()->getDBkey();
+ // There must have been a search for this exact DB Key
+ if ( $fileMatchesSearch( $file, $searchSet[$dbKey] ) ) {
+ $finalFiles[$dbKey] = ( $flags & FileRepo::NAME_AND_TIME_ONLY )
+ ? array( 'title' => $dbKey, 'timestamp' => $file->getTimestamp() )
+ : $file;
unset( $searchSet[$dbKey] );
}
}
$dbr = $this->getSlaveDB();
// Query image table
- $imgNames = array_keys( $searchSet );
+ $imgNames = array();
+ foreach ( array_keys( $searchSet ) as $dbKey ) {
+ $imgNames[] = $this->getNameFromTitle( File::normalizeTitle( $dbKey ) );
+ }
if ( count( $imgNames ) ) {
$res = $dbr->select( 'image',
LocalFile::selectFields(), array( 'img_name' => $imgNames ), __METHOD__ );
$oiConds = array(); // WHERE clause array for each file
foreach ( $searchSet as $dbKey => $search ) {
if ( isset( $search['params']['time'] ) ) {
- $oiConds[] = $dbr->makeList( array( 'oi_name' => $dbKey,
- 'oi_timestamp' => $dbr->timestamp( $search['params']['time'] ) ), LIST_AND );
+ $oiConds[] = $dbr->makeList(
+ array(
+ 'oi_name' => $this->getNameFromTitle( File::normalizeTitle( $dbKey ) ),
+ 'oi_timestamp' => $dbr->timestamp( $search['params']['time'] )
+ ),
+ LIST_AND
+ );
}
}
if ( count( $oiConds ) ) {
$title = File::normalizeTitle( $dbKey );
$redir = $this->checkRedirect( $title ); // hopefully hits memcached
if ( $redir && $redir->getNamespace() == NS_FILE ) {
- $possFile = $this->newFile( $redir );
- if ( $possFile && $fileMatchesSearch( $possFile, $search ) ) {
- $possFile->redirectedFrom( $title->getDBkey() );
- $finalFiles[$dbKey] = $possFile;
+ $file = $this->newFile( $redir );
+ if ( $file && $fileMatchesSearch( $file, $search ) ) {
+ $file->redirectedFrom( $title->getDBkey() );
+ if ( $flags & FileRepo::NAME_AND_TIME_ONLY ) {
+ $finalFiles[$dbKey] = array(
+ 'title' => $file->getTitle()->getDBkey(),
+ 'timestamp' => $file->getTimestamp()
+ );
+ } else {
+ $finalFiles[$dbKey] = $file;
+ }
}
}
}
}
/**
+ * Search repositories for many files at once.
+ *
+ * @param array $items An array of titles, or an array of findFile() options with
+ * the "title" option giving the title. Example:
+ *
+ * $findItem = array( 'title' => $title, 'private' => true );
+ * $findBatch = array( $findItem );
+ * $repo->findFiles( $findBatch );
+ *
+ * No title should appear in $items twice, as the result use titles as keys
+ * @param int $flags Supports:
+ * - FileRepo::NAME_AND_TIME_ONLY : return a (search title => (title,timestamp)) map.
+ * The search title uses the input titles; the other is the final post-redirect title.
+ * All titles are returned as string DB keys and the inner array is associative.
+ * @return array Map of (file name => File objects) for matches
+ *
* @param array $inputItems
+ * @param integer $flags
* @return array
*/
- function findFiles( $inputItems ) {
+ function findFiles( array $inputItems, $flags = 0 ) {
if ( !$this->reposInitialised ) {
$this->initialiseRepos();
}
}
}
- $images = $this->localRepo->findFiles( $items );
+ $images = $this->localRepo->findFiles( $items, $flags );
foreach ( $this->foreignRepos as $repo ) {
// Remove found files from $items
unset( $items[$name] );
}
- $images = array_merge( $images, $repo->findFiles( $items ) );
+ $images = array_merge( $images, $repo->findFiles( $items, $flags ) );
}
return $images;
--- /dev/null
+<?php
+
+class HTMLApiField extends HTMLFormField {
+ public function getTableRow( $value ) {
+ return '';
+ }
+
+ public function getDiv( $value ) {
+ return $this->getTableRow( $value );
+ }
+
+ public function getRaw( $value ) {
+ return $this->getTableRow( $value );
+ }
+
+ public function getInputHTML( $value ) {
+ return '';
+ }
+}
--- /dev/null
+<?php
+
+/**
+ * Adds a generic button inline to the form. Does not do anything, you must add
+ * click handling code in JavaScript. Use a HTMLSubmitField if you merely
+ * wish to add a submit button to a form.
+ *
+ * @since 1.22
+ */
+class HTMLButtonField extends HTMLFormField {
+ protected $buttonType = 'button';
+
+ public function __construct( $info ) {
+ $info['nodata'] = true;
+ parent::__construct( $info );
+ }
+
+ public function getInputHTML( $value ) {
+ $attr = array(
+ 'class' => 'mw-htmlform-submit ' . $this->mClass,
+ 'id' => $this->mID,
+ );
+
+ if ( !empty( $this->mParams['disabled'] ) ) {
+ $attr['disabled'] = 'disabled';
+ }
+
+ return Html::input( $this->mName, $value, $this->buttonType, $attr );
+ }
+
+ protected function needsLabel() {
+ return false;
+ }
+
+ /**
+ * Button cannot be invalid
+ *
+ * @param $value String
+ * @param $alldata Array
+ *
+ * @return Bool
+ */
+ public function validate( $value, $alldata ) {
+ return true;
+ }
+}
--- /dev/null
+<?php
+
+/**
+ * A checkbox field
+ */
+class HTMLCheckField extends HTMLFormField {
+ function getInputHTML( $value ) {
+ if ( !empty( $this->mParams['invert'] ) ) {
+ $value = !$value;
+ }
+
+ $attr = $this->getTooltipAndAccessKey();
+ $attr['id'] = $this->mID;
+
+ if ( !empty( $this->mParams['disabled'] ) ) {
+ $attr['disabled'] = 'disabled';
+ }
+
+ if ( $this->mClass !== '' ) {
+ $attr['class'] = $this->mClass;
+ }
+
+ if ( $this->mParent->isVForm() ) {
+ // Nest checkbox inside label.
+ return Html::rawElement( 'label',
+ array(
+ 'class' => 'mw-ui-checkbox-label'
+ ),
+ Xml::check( $this->mName, $value, $attr ) . // Html:rawElement doesn't escape contents.
+ htmlspecialchars( $this->mLabel ) );
+ } else {
+ return Xml::check( $this->mName, $value, $attr )
+ . ' '
+ . Html::rawElement( 'label', array( 'for' => $this->mID ), $this->mLabel );
+ }
+ }
+
+ /**
+ * For a checkbox, the label goes on the right hand side, and is
+ * added in getInputHTML(), rather than HTMLFormField::getRow()
+ * @return String
+ */
+ function getLabel() {
+ return ' ';
+ }
+
+ /**
+ * checkboxes don't need a label.
+ */
+ protected function needsLabel() {
+ return false;
+ }
+
+ /**
+ * @param $request WebRequest
+ *
+ * @return String
+ */
+ function loadDataFromRequest( $request ) {
+ $invert = false;
+ if ( isset( $this->mParams['invert'] ) && $this->mParams['invert'] ) {
+ $invert = true;
+ }
+
+ // GetCheck won't work like we want for checks.
+ // Fetch the value in either one of the two following case:
+ // - we have a valid token (form got posted or GET forged by the user)
+ // - checkbox name has a value (false or true), ie is not null
+ if ( $request->getCheck( 'wpEditToken' ) || $request->getVal( $this->mName ) !== null ) {
+ // XOR has the following truth table, which is what we want
+ // INVERT VALUE | OUTPUT
+ // true true | false
+ // false true | true
+ // false false | false
+ // true false | true
+ return $request->getBool( $this->mName ) xor $invert;
+ } else {
+ return $this->getDefault();
+ }
+ }
+}
--- /dev/null
+<?php
+
+/**
+ * A checkbox matrix
+ * Operates similarly to HTMLMultiSelectField, but instead of using an array of
+ * options, uses an array of rows and an array of columns to dynamically
+ * construct a matrix of options. The tags used to identify a particular cell
+ * are of the form "columnName-rowName"
+ *
+ * Options:
+ * - columns
+ * - Required list of columns in the matrix.
+ * - rows
+ * - Required list of rows in the matrix.
+ * - force-options-on
+ * - Accepts array of column-row tags to be displayed as enabled but unavailable to change
+ * - force-options-off
+ * - Accepts array of column-row tags to be displayed as disabled but unavailable to change.
+ * - tooltips
+ * - Optional array mapping row label to tooltip content
+ * - tooltip-class
+ * - Optional CSS class used on tooltip container span. Defaults to mw-icon-question.
+ */
+class HTMLCheckMatrix extends HTMLFormField implements HTMLNestedFilterable {
+ static private $requiredParams = array(
+ // Required by underlying HTMLFormField
+ 'fieldname',
+ // Required by HTMLCheckMatrix
+ 'rows',
+ 'columns'
+ );
+
+ public function __construct( $params ) {
+ $missing = array_diff( self::$requiredParams, array_keys( $params ) );
+ if ( $missing ) {
+ throw new HTMLFormFieldRequiredOptionsException( $this, $missing );
+ }
+ parent::__construct( $params );
+ }
+
+ function validate( $value, $alldata ) {
+ $rows = $this->mParams['rows'];
+ $columns = $this->mParams['columns'];
+
+ // Make sure user-defined validation callback is run
+ $p = parent::validate( $value, $alldata );
+ if ( $p !== true ) {
+ return $p;
+ }
+
+ // Make sure submitted value is an array
+ if ( !is_array( $value ) ) {
+ return false;
+ }
+
+ // If all options are valid, array_intersect of the valid options
+ // and the provided options will return the provided options.
+ $validOptions = array();
+ foreach ( $rows as $rowTag ) {
+ foreach ( $columns as $columnTag ) {
+ $validOptions[] = $columnTag . '-' . $rowTag;
+ }
+ }
+ $validValues = array_intersect( $value, $validOptions );
+ if ( count( $validValues ) == count( $value ) ) {
+ return true;
+ } else {
+ return $this->msg( 'htmlform-select-badoption' )->parse();
+ }
+ }
+
+ /**
+ * Build a table containing a matrix of checkbox options.
+ * The value of each option is a combination of the row tag and column tag.
+ * mParams['rows'] is an array with row labels as keys and row tags as values.
+ * mParams['columns'] is an array with column labels as keys and column tags as values.
+ *
+ * @param array $value of the options that should be checked
+ *
+ * @return String
+ */
+ function getInputHTML( $value ) {
+ $html = '';
+ $tableContents = '';
+ $attribs = array();
+ $rows = $this->mParams['rows'];
+ $columns = $this->mParams['columns'];
+
+ // If the disabled param is set, disable all the options
+ if ( !empty( $this->mParams['disabled'] ) ) {
+ $attribs['disabled'] = 'disabled';
+ }
+
+ // Build the column headers
+ $headerContents = Html::rawElement( 'td', array(), ' ' );
+ foreach ( $columns as $columnLabel => $columnTag ) {
+ $headerContents .= Html::rawElement( 'td', array(), $columnLabel );
+ }
+ $tableContents .= Html::rawElement( 'tr', array(), "\n$headerContents\n" );
+
+ $tooltipClass = 'mw-icon-question';
+ if ( isset( $this->mParams['tooltip-class'] ) ) {
+ $tooltipClass = $this->mParams['tooltip-class'];
+ }
+
+ // Build the options matrix
+ foreach ( $rows as $rowLabel => $rowTag ) {
+ // Append tooltip if configured
+ if ( isset( $this->mParams['tooltips'][$rowLabel] ) ) {
+ $tooltipAttribs = array(
+ 'class' => "mw-htmlform-tooltip $tooltipClass",
+ 'title' => $this->mParams['tooltips'][$rowLabel],
+ );
+ $rowLabel .= ' ' . Html::element( 'span', $tooltipAttribs, '' );
+ }
+ $rowContents = Html::rawElement( 'td', array(), $rowLabel );
+ foreach ( $columns as $columnTag ) {
+ $thisTag = "$columnTag-$rowTag";
+ // Construct the checkbox
+ $thisAttribs = array(
+ 'id' => "{$this->mID}-$thisTag",
+ 'value' => $thisTag,
+ );
+ $checked = in_array( $thisTag, (array)$value, true );
+ if ( $this->isTagForcedOff( $thisTag ) ) {
+ $checked = false;
+ $thisAttribs['disabled'] = 1;
+ } elseif ( $this->isTagForcedOn( $thisTag ) ) {
+ $checked = true;
+ $thisAttribs['disabled'] = 1;
+ }
+ $rowContents .= Html::rawElement(
+ 'td',
+ array(),
+ Xml::check( "{$this->mName}[]", $checked, $attribs + $thisAttribs )
+ );
+ }
+ $tableContents .= Html::rawElement( 'tr', array(), "\n$rowContents\n" );
+ }
+
+ // Put it all in a table
+ $html .= Html::rawElement( 'table',
+ array( 'class' => 'mw-htmlform-matrix' ),
+ Html::rawElement( 'tbody', array(), "\n$tableContents\n" ) ) . "\n";
+
+ return $html;
+ }
+
+ protected function isTagForcedOff( $tag ) {
+ return isset( $this->mParams['force-options-off'] )
+ && in_array( $tag, $this->mParams['force-options-off'] );
+ }
+
+ protected function isTagForcedOn( $tag ) {
+ return isset( $this->mParams['force-options-on'] )
+ && in_array( $tag, $this->mParams['force-options-on'] );
+ }
+
+ /**
+ * Get the complete table row for the input, including help text,
+ * labels, and whatever.
+ * We override this function since the label should always be on a separate
+ * line above the options in the case of a checkbox matrix, i.e. it's always
+ * a "vertical-label".
+ *
+ * @param string $value the value to set the input to
+ *
+ * @return String complete HTML table row
+ */
+ function getTableRow( $value ) {
+ list( $errors, $errorClass ) = $this->getErrorsAndErrorClass( $value );
+ $inputHtml = $this->getInputHTML( $value );
+ $fieldType = get_class( $this );
+ $helptext = $this->getHelpTextHtmlTable( $this->getHelpText() );
+ $cellAttributes = array( 'colspan' => 2 );
+
+ $label = $this->getLabelHtml( $cellAttributes );
+
+ $field = Html::rawElement(
+ 'td',
+ array( 'class' => 'mw-input' ) + $cellAttributes,
+ $inputHtml . "\n$errors"
+ );
+
+ $html = Html::rawElement( 'tr', array( 'class' => 'mw-htmlform-vertical-label' ), $label );
+ $html .= Html::rawElement( 'tr',
+ array( 'class' => "mw-htmlform-field-$fieldType {$this->mClass} $errorClass" ),
+ $field );
+
+ return $html . $helptext;
+ }
+
+ /**
+ * @param $request WebRequest
+ *
+ * @return Array
+ */
+ function loadDataFromRequest( $request ) {
+ if ( $this->mParent->getMethod() == 'post' ) {
+ if ( $request->wasPosted() ) {
+ // Checkboxes are not added to the request arrays if they're not checked,
+ // so it's perfectly possible for there not to be an entry at all
+ return $request->getArray( $this->mName, array() );
+ } else {
+ // That's ok, the user has not yet submitted the form, so show the defaults
+ return $this->getDefault();
+ }
+ } else {
+ // This is the impossible case: if we look at $_GET and see no data for our
+ // field, is it because the user has not yet submitted the form, or that they
+ // have submitted it with all the options unchecked. We will have to assume the
+ // latter, which basically means that you can't specify 'positive' defaults
+ // for GET forms.
+ return $request->getArray( $this->mName, array() );
+ }
+ }
+
+ function getDefault() {
+ if ( isset( $this->mDefault ) ) {
+ return $this->mDefault;
+ } else {
+ return array();
+ }
+ }
+
+ function filterDataForSubmit( $data ) {
+ $columns = HTMLFormField::flattenOptions( $this->mParams['columns'] );
+ $rows = HTMLFormField::flattenOptions( $this->mParams['rows'] );
+ $res = array();
+ foreach ( $columns as $column ) {
+ foreach ( $rows as $row ) {
+ // Make sure option hasn't been forced
+ $thisTag = "$column-$row";
+ if ( $this->isTagForcedOff( $thisTag ) ) {
+ $res[$thisTag] = false;
+ } elseif ( $this->isTagForcedOn( $thisTag ) ) {
+ $res[$thisTag] = true;
+ } else {
+ $res[$thisTag] = in_array( $thisTag, $data );
+ }
+ }
+ }
+
+ return $res;
+ }
+}
--- /dev/null
+<?php
+
+class HTMLEditTools extends HTMLFormField {
+ public function getInputHTML( $value ) {
+ return '';
+ }
+
+ public function getTableRow( $value ) {
+ $msg = $this->formatMsg();
+
+ return
+ '<tr><td></td><td class="mw-input">' .
+ '<div class="mw-editTools">' .
+ $msg->parseAsBlock() .
+ "</div></td></tr>\n";
+ }
+
+ /**
+ * @since 1.20
+ */
+ public function getDiv( $value ) {
+ $msg = $this->formatMsg();
+
+ return '<div class="mw-editTools">' . $msg->parseAsBlock() . '</div>';
+ }
+
+ /**
+ * @since 1.20
+ */
+ public function getRaw( $value ) {
+ return $this->getDiv( $value );
+ }
+
+ protected function formatMsg() {
+ if ( empty( $this->mParams['message'] ) ) {
+ $msg = $this->msg( 'edittools' );
+ } else {
+ $msg = $this->msg( $this->mParams['message'] );
+ if ( $msg->isDisabled() ) {
+ $msg = $this->msg( 'edittools' );
+ }
+ }
+ $msg->inContentLanguage();
+
+ return $msg;
+ }
+}
--- /dev/null
+<?php
+
+/**
+ * A field that will contain a numeric value
+ */
+class HTMLFloatField extends HTMLTextField {
+ function getSize() {
+ return isset( $this->mParams['size'] ) ? $this->mParams['size'] : 20;
+ }
+
+ function validate( $value, $alldata ) {
+ $p = parent::validate( $value, $alldata );
+
+ if ( $p !== true ) {
+ return $p;
+ }
+
+ $value = trim( $value );
+
+ # http://dev.w3.org/html5/spec/common-microsyntaxes.html#real-numbers
+ # with the addition that a leading '+' sign is ok.
+ if ( !preg_match( '/^((\+|\-)?\d+(\.\d+)?(E(\+|\-)?\d+)?)?$/i', $value ) ) {
+ return $this->msg( 'htmlform-float-invalid' )->parseAsBlock();
+ }
+
+ # The "int" part of these message names is rather confusing.
+ # They make equal sense for all numbers.
+ if ( isset( $this->mParams['min'] ) ) {
+ $min = $this->mParams['min'];
+
+ if ( $min > $value ) {
+ return $this->msg( 'htmlform-int-toolow', $min )->parseAsBlock();
+ }
+ }
+
+ if ( isset( $this->mParams['max'] ) ) {
+ $max = $this->mParams['max'];
+
+ if ( $max < $value ) {
+ return $this->msg( 'htmlform-int-toohigh', $max )->parseAsBlock();
+ }
+ }
+
+ return true;
+ }
+}
--- /dev/null
+<?php
+
+/**
+ * HTML form generation and submission handling.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ * http://www.gnu.org/copyleft/gpl.html
+ *
+ * @file
+ */
+
+/**
+ * Object handling generic submission, CSRF protection, layout and
+ * other logic for UI forms. in a reusable manner.
+ *
+ * In order to generate the form, the HTMLForm object takes an array
+ * structure detailing the form fields available. Each element of the
+ * array is a basic property-list, including the type of field, the
+ * label it is to be given in the form, callbacks for validation and
+ * 'filtering', and other pertinent information.
+ *
+ * Field types are implemented as subclasses of the generic HTMLFormField
+ * object, and typically implement at least getInputHTML, which generates
+ * the HTML for the input field to be placed in the table.
+ *
+ * You can find extensive documentation on the www.mediawiki.org wiki:
+ * - http://www.mediawiki.org/wiki/HTMLForm
+ * - http://www.mediawiki.org/wiki/HTMLForm/tutorial
+ *
+ * The constructor input is an associative array of $fieldname => $info,
+ * where $info is an Associative Array with any of the following:
+ *
+ * 'class' -- the subclass of HTMLFormField that will be used
+ * to create the object. *NOT* the CSS class!
+ * 'type' -- roughly translates into the <select> type attribute.
+ * if 'class' is not specified, this is used as a map
+ * through HTMLForm::$typeMappings to get the class name.
+ * 'default' -- default value when the form is displayed
+ * 'id' -- HTML id attribute
+ * 'cssclass' -- CSS class
+ * 'options' -- varies according to the specific object.
+ * 'label-message' -- message key for a message to use as the label.
+ * can be an array of msg key and then parameters to
+ * the message.
+ * 'label' -- alternatively, a raw text message. Overridden by
+ * label-message
+ * 'help' -- message text for a message to use as a help text.
+ * 'help-message' -- message key for a message to use as a help text.
+ * can be an array of msg key and then parameters to
+ * the message.
+ * Overwrites 'help-messages' and 'help'.
+ * 'help-messages' -- array of message key. As above, each item can
+ * be an array of msg key and then parameters.
+ * Overwrites 'help'.
+ * 'required' -- passed through to the object, indicating that it
+ * is a required field.
+ * 'size' -- the length of text fields
+ * 'filter-callback -- a function name to give you the chance to
+ * massage the inputted value before it's processed.
+ * @see HTMLForm::filter()
+ * 'validation-callback' -- a function name to give you the chance
+ * to impose extra validation on the field input.
+ * @see HTMLForm::validate()
+ * 'name' -- By default, the 'name' attribute of the input field
+ * is "wp{$fieldname}". If you want a different name
+ * (eg one without the "wp" prefix), specify it here and
+ * it will be used without modification.
+ *
+ * Since 1.20, you can chain mutators to ease the form generation:
+ * @par Example:
+ * @code
+ * $form = new HTMLForm( $someFields );
+ * $form->setMethod( 'get' )
+ * ->setWrapperLegendMsg( 'message-key' )
+ * ->prepareForm()
+ * ->displayForm( '' );
+ * @endcode
+ * Note that you will have prepareForm and displayForm at the end. Other
+ * methods call done after that would simply not be part of the form :(
+ *
+ * @todo Document 'section' / 'subsection' stuff
+ */
+class HTMLForm extends ContextSource {
+ // A mapping of 'type' inputs onto standard HTMLFormField subclasses
+ public static $typeMappings = array(
+ 'api' => 'HTMLApiField',
+ 'text' => 'HTMLTextField',
+ 'textarea' => 'HTMLTextAreaField',
+ 'select' => 'HTMLSelectField',
+ 'radio' => 'HTMLRadioField',
+ 'multiselect' => 'HTMLMultiSelectField',
+ 'check' => 'HTMLCheckField',
+ 'toggle' => 'HTMLCheckField',
+ 'int' => 'HTMLIntField',
+ 'float' => 'HTMLFloatField',
+ 'info' => 'HTMLInfoField',
+ 'selectorother' => 'HTMLSelectOrOtherField',
+ 'selectandother' => 'HTMLSelectAndOtherField',
+ 'submit' => 'HTMLSubmitField',
+ 'hidden' => 'HTMLHiddenField',
+ 'edittools' => 'HTMLEditTools',
+ 'checkmatrix' => 'HTMLCheckMatrix',
+ // HTMLTextField will output the correct type="" attribute automagically.
+ // There are about four zillion other HTML5 input types, like url, but
+ // we don't use those at the moment, so no point in adding all of them.
+ 'email' => 'HTMLTextField',
+ 'password' => 'HTMLTextField',
+ );
+
+ public $mFieldData;
+
+ protected $mMessagePrefix;
+
+ /** @var HTMLFormField[] */
+ protected $mFlatFields;
+
+ protected $mFieldTree;
+ protected $mShowReset = false;
+ protected $mShowSubmit = true;
+
+ protected $mSubmitCallback;
+ protected $mValidationErrorMessage;
+
+ protected $mPre = '';
+ protected $mHeader = '';
+ protected $mFooter = '';
+ protected $mSectionHeaders = array();
+ protected $mSectionFooters = array();
+ protected $mPost = '';
+ protected $mId;
+ protected $mTableId = '';
+
+ protected $mSubmitID;
+ protected $mSubmitName;
+ protected $mSubmitText;
+ protected $mSubmitTooltip;
+
+ protected $mTitle;
+ protected $mMethod = 'post';
+
+ /**
+ * Form action URL. false means we will use the URL to set Title
+ * @since 1.19
+ * @var bool|string
+ */
+ protected $mAction = false;
+
+ protected $mUseMultipart = false;
+ protected $mHiddenFields = array();
+ protected $mButtons = array();
+
+ protected $mWrapperLegend = false;
+
+ /**
+ * If true, sections that contain both fields and subsections will
+ * render their subsections before their fields.
+ *
+ * Subclasses may set this to false to render subsections after fields
+ * instead.
+ */
+ protected $mSubSectionBeforeFields = true;
+
+ /**
+ * Format in which to display form. For viable options,
+ * @see $availableDisplayFormats
+ * @var String
+ */
+ protected $displayFormat = 'table';
+
+ /**
+ * Available formats in which to display the form
+ * @var Array
+ */
+ protected $availableDisplayFormats = array(
+ 'table',
+ 'div',
+ 'raw',
+ 'vform',
+ );
+
+ /**
+ * Build a new HTMLForm from an array of field attributes
+ *
+ * @param array $descriptor of Field constructs, as described above
+ * @param $context IContextSource available since 1.18, will become compulsory in 1.18.
+ * Obviates the need to call $form->setTitle()
+ * @param string $messagePrefix a prefix to go in front of default messages
+ */
+ public function __construct( $descriptor, /*IContextSource*/ $context = null,
+ $messagePrefix = ''
+ ) {
+ if ( $context instanceof IContextSource ) {
+ $this->setContext( $context );
+ $this->mTitle = false; // We don't need them to set a title
+ $this->mMessagePrefix = $messagePrefix;
+ } elseif ( is_null( $context ) && $messagePrefix !== '' ) {
+ $this->mMessagePrefix = $messagePrefix;
+ } elseif ( is_string( $context ) && $messagePrefix === '' ) {
+ // B/C since 1.18
+ // it's actually $messagePrefix
+ $this->mMessagePrefix = $context;
+ }
+
+ // Expand out into a tree.
+ $loadedDescriptor = array();
+ $this->mFlatFields = array();
+
+ foreach ( $descriptor as $fieldname => $info ) {
+ $section = isset( $info['section'] )
+ ? $info['section']
+ : '';
+
+ if ( isset( $info['type'] ) && $info['type'] == 'file' ) {
+ $this->mUseMultipart = true;
+ }
+
+ $field = self::loadInputFromParameters( $fieldname, $info );
+ // FIXME During field's construct, the parent form isn't available!
+ // could add a 'parent' name-value to $info, could add a third parameter.
+ $field->mParent = $this;
+
+ // vform gets too much space if empty labels generate HTML.
+ if ( $this->isVForm() ) {
+ $field->setShowEmptyLabel( false );
+ }
+
+ $setSection =& $loadedDescriptor;
+ if ( $section ) {
+ $sectionParts = explode( '/', $section );
+
+ while ( count( $sectionParts ) ) {
+ $newName = array_shift( $sectionParts );
+
+ if ( !isset( $setSection[$newName] ) ) {
+ $setSection[$newName] = array();
+ }
+
+ $setSection =& $setSection[$newName];
+ }
+ }
+
+ $setSection[$fieldname] = $field;
+ $this->mFlatFields[$fieldname] = $field;
+ }
+
+ $this->mFieldTree = $loadedDescriptor;
+ }
+
+ /**
+ * Set format in which to display the form
+ *
+ * @param string $format the name of the format to use, must be one of
+ * $this->availableDisplayFormats
+ *
+ * @throws MWException
+ * @since 1.20
+ * @return HTMLForm $this for chaining calls (since 1.20)
+ */
+ public function setDisplayFormat( $format ) {
+ if ( !in_array( $format, $this->availableDisplayFormats ) ) {
+ throw new MWException( 'Display format must be one of ' .
+ print_r( $this->availableDisplayFormats, true ) );
+ }
+ $this->displayFormat = $format;
+
+ return $this;
+ }
+
+ /**
+ * Getter for displayFormat
+ * @since 1.20
+ * @return String
+ */
+ public function getDisplayFormat() {
+ return $this->displayFormat;
+ }
+
+ /**
+ * Test if displayFormat is 'vform'
+ * @since 1.22
+ * @return Bool
+ */
+ public function isVForm() {
+ return $this->displayFormat === 'vform';
+ }
+
+ /**
+ * Add the HTMLForm-specific JavaScript, if it hasn't been
+ * done already.
+ * @deprecated since 1.18 load modules with ResourceLoader instead
+ */
+ static function addJS() {
+ wfDeprecated( __METHOD__, '1.18' );
+ }
+
+ /**
+ * Initialise a new Object for the field
+ *
+ * @param $fieldname string
+ * @param string $descriptor input Descriptor, as described above
+ *
+ * @throws MWException
+ * @return HTMLFormField subclass
+ */
+ static function loadInputFromParameters( $fieldname, $descriptor ) {
+ if ( isset( $descriptor['class'] ) ) {
+ $class = $descriptor['class'];
+ } elseif ( isset( $descriptor['type'] ) ) {
+ $class = self::$typeMappings[$descriptor['type']];
+ $descriptor['class'] = $class;
+ } else {
+ $class = null;
+ }
+
+ if ( !$class ) {
+ throw new MWException( "Descriptor with no class: " . print_r( $descriptor, true ) );
+ }
+
+ $descriptor['fieldname'] = $fieldname;
+
+ # @todo This will throw a fatal error whenever someone try to use
+ # 'class' to feed a CSS class instead of 'cssclass'. Would be
+ # great to avoid the fatal error and show a nice error.
+ $obj = new $class( $descriptor );
+
+ return $obj;
+ }
+
+ /**
+ * Prepare form for submission.
+ *
+ * @attention When doing method chaining, that should be the very last
+ * method call before displayForm().
+ *
+ * @throws MWException
+ * @return HTMLForm $this for chaining calls (since 1.20)
+ */
+ function prepareForm() {
+ # Check if we have the info we need
+ if ( !$this->mTitle instanceof Title && $this->mTitle !== false ) {
+ throw new MWException( "You must call setTitle() on an HTMLForm" );
+ }
+
+ # Load data from the request.
+ $this->loadData();
+
+ return $this;
+ }
+
+ /**
+ * Try submitting, with edit token check first
+ * @return Status|boolean
+ */
+ function tryAuthorizedSubmit() {
+ $result = false;
+
+ $submit = false;
+ if ( $this->getMethod() != 'post' ) {
+ $submit = true; // no session check needed
+ } elseif ( $this->getRequest()->wasPosted() ) {
+ $editToken = $this->getRequest()->getVal( 'wpEditToken' );
+ if ( $this->getUser()->isLoggedIn() || $editToken != null ) {
+ // Session tokens for logged-out users have no security value.
+ // However, if the user gave one, check it in order to give a nice
+ // "session expired" error instead of "permission denied" or such.
+ $submit = $this->getUser()->matchEditToken( $editToken );
+ } else {
+ $submit = true;
+ }
+ }
+
+ if ( $submit ) {
+ $result = $this->trySubmit();
+ }
+
+ return $result;
+ }
+
+ /**
+ * The here's-one-I-made-earlier option: do the submission if
+ * posted, or display the form with or without funky validation
+ * errors
+ * @return Bool or Status whether submission was successful.
+ */
+ function show() {
+ $this->prepareForm();
+
+ $result = $this->tryAuthorizedSubmit();
+ if ( $result === true || ( $result instanceof Status && $result->isGood() ) ) {
+ return $result;
+ }
+
+ $this->displayForm( $result );
+
+ return false;
+ }
+
+ /**
+ * Validate all the fields, and call the submission callback
+ * function if everything is kosher.
+ * @throws MWException
+ * @return Mixed Bool true == Successful submission, Bool false
+ * == No submission attempted, anything else == Error to
+ * display.
+ */
+ function trySubmit() {
+ # Check for validation
+ foreach ( $this->mFlatFields as $fieldname => $field ) {
+ if ( !empty( $field->mParams['nodata'] ) ) {
+ continue;
+ }
+ if ( $field->validate(
+ $this->mFieldData[$fieldname],
+ $this->mFieldData )
+ !== true
+ ) {
+ return isset( $this->mValidationErrorMessage )
+ ? $this->mValidationErrorMessage
+ : array( 'htmlform-invalid-input' );
+ }
+ }
+
+ $callback = $this->mSubmitCallback;
+ if ( !is_callable( $callback ) ) {
+ throw new MWException( 'HTMLForm: no submit callback provided. Use ' .
+ 'setSubmitCallback() to set one.' );
+ }
+
+ $data = $this->filterDataForSubmit( $this->mFieldData );
+
+ $res = call_user_func( $callback, $data, $this );
+
+ return $res;
+ }
+
+ /**
+ * Set a callback to a function to do something with the form
+ * once it's been successfully validated.
+ *
+ * @param string $cb function name. The function will be passed
+ * the output from HTMLForm::filterDataForSubmit, and must
+ * return Bool true on success, Bool false if no submission
+ * was attempted, or String HTML output to display on error.
+ *
+ * @return HTMLForm $this for chaining calls (since 1.20)
+ */
+ function setSubmitCallback( $cb ) {
+ $this->mSubmitCallback = $cb;
+
+ return $this;
+ }
+
+ /**
+ * Set a message to display on a validation error.
+ *
+ * @param $msg Mixed String or Array of valid inputs to wfMessage()
+ * (so each entry can be either a String or Array)
+ *
+ * @return HTMLForm $this for chaining calls (since 1.20)
+ */
+ function setValidationErrorMessage( $msg ) {
+ $this->mValidationErrorMessage = $msg;
+
+ return $this;
+ }
+
+ /**
+ * Set the introductory message, overwriting any existing message.
+ *
+ * @param string $msg complete text of message to display
+ *
+ * @return HTMLForm $this for chaining calls (since 1.20)
+ */
+ function setIntro( $msg ) {
+ $this->setPreText( $msg );
+
+ return $this;
+ }
+
+ /**
+ * Set the introductory message, overwriting any existing message.
+ * @since 1.19
+ *
+ * @param string $msg complete text of message to display
+ *
+ * @return HTMLForm $this for chaining calls (since 1.20)
+ */
+ function setPreText( $msg ) {
+ $this->mPre = $msg;
+
+ return $this;
+ }
+
+ /**
+ * Add introductory text.
+ *
+ * @param string $msg complete text of message to display
+ *
+ * @return HTMLForm $this for chaining calls (since 1.20)
+ */
+ function addPreText( $msg ) {
+ $this->mPre .= $msg;
+
+ return $this;
+ }
+
+ /**
+ * Add header text, inside the form.
+ *
+ * @param string $msg complete text of message to display
+ * @param string $section The section to add the header to
+ *
+ * @return HTMLForm $this for chaining calls (since 1.20)
+ */
+ function addHeaderText( $msg, $section = null ) {
+ if ( is_null( $section ) ) {
+ $this->mHeader .= $msg;
+ } else {
+ if ( !isset( $this->mSectionHeaders[$section] ) ) {
+ $this->mSectionHeaders[$section] = '';
+ }
+ $this->mSectionHeaders[$section] .= $msg;
+ }
+
+ return $this;
+ }
+
+ /**
+ * Set header text, inside the form.
+ * @since 1.19
+ *
+ * @param string $msg complete text of message to display
+ * @param $section The section to add the header to
+ *
+ * @return HTMLForm $this for chaining calls (since 1.20)
+ */
+ function setHeaderText( $msg, $section = null ) {
+ if ( is_null( $section ) ) {
+ $this->mHeader = $msg;
+ } else {
+ $this->mSectionHeaders[$section] = $msg;
+ }
+
+ return $this;
+ }
+
+ /**
+ * Add footer text, inside the form.
+ *
+ * @param string $msg complete text of message to display
+ * @param string $section The section to add the footer text to
+ *
+ * @return HTMLForm $this for chaining calls (since 1.20)
+ */
+ function addFooterText( $msg, $section = null ) {
+ if ( is_null( $section ) ) {
+ $this->mFooter .= $msg;
+ } else {
+ if ( !isset( $this->mSectionFooters[$section] ) ) {
+ $this->mSectionFooters[$section] = '';
+ }
+ $this->mSectionFooters[$section] .= $msg;
+ }
+
+ return $this;
+ }
+
+ /**
+ * Set footer text, inside the form.
+ * @since 1.19
+ *
+ * @param string $msg complete text of message to display
+ * @param string $section The section to add the footer text to
+ *
+ * @return HTMLForm $this for chaining calls (since 1.20)
+ */
+ function setFooterText( $msg, $section = null ) {
+ if ( is_null( $section ) ) {
+ $this->mFooter = $msg;
+ } else {
+ $this->mSectionFooters[$section] = $msg;
+ }
+
+ return $this;
+ }
+
+ /**
+ * Add text to the end of the display.
+ *
+ * @param string $msg complete text of message to display
+ *
+ * @return HTMLForm $this for chaining calls (since 1.20)
+ */
+ function addPostText( $msg ) {
+ $this->mPost .= $msg;
+
+ return $this;
+ }
+
+ /**
+ * Set text at the end of the display.
+ *
+ * @param string $msg complete text of message to display
+ *
+ * @return HTMLForm $this for chaining calls (since 1.20)
+ */
+ function setPostText( $msg ) {
+ $this->mPost = $msg;
+
+ return $this;
+ }
+
+ /**
+ * Add a hidden field to the output
+ *
+ * @param string $name field name. This will be used exactly as entered
+ * @param string $value field value
+ * @param $attribs Array
+ *
+ * @return HTMLForm $this for chaining calls (since 1.20)
+ */
+ public function addHiddenField( $name, $value, $attribs = array() ) {
+ $attribs += array( 'name' => $name );
+ $this->mHiddenFields[] = array( $value, $attribs );
+
+ return $this;
+ }
+
+ /**
+ * Add an array of hidden fields to the output
+ *
+ * @since 1.22
+ *
+ * @param array $fields Associative array of fields to add;
+ * mapping names to their values
+ *
+ * @return HTMLForm $this for chaining calls
+ */
+ public function addHiddenFields( array $fields ) {
+ foreach ( $fields as $name => $value ) {
+ $this->mHiddenFields[] = array( $value, array( 'name' => $name ) );
+ }
+
+ return $this;
+ }
+
+ /**
+ * Add a button to the form
+ *
+ * @param string $name field name.
+ * @param string $value field value
+ * @param string $id DOM id for the button (default: null)
+ * @param $attribs Array
+ *
+ * @return HTMLForm $this for chaining calls (since 1.20)
+ */
+ public function addButton( $name, $value, $id = null, $attribs = null ) {
+ $this->mButtons[] = compact( 'name', 'value', 'id', 'attribs' );
+
+ return $this;
+ }
+
+ /**
+ * Display the form (sending to the context's OutputPage object), with an
+ * appropriate error message or stack of messages, and any validation errors, etc.
+ *
+ * @attention You should call prepareForm() before calling this function.
+ * Moreover, when doing method chaining this should be the very last method
+ * call just after prepareForm().
+ *
+ * @param $submitResult Mixed output from HTMLForm::trySubmit()
+ *
+ * @return Nothing, should be last call
+ */
+ function displayForm( $submitResult ) {
+ $this->getOutput()->addHTML( $this->getHTML( $submitResult ) );
+ }
+
+ /**
+ * Returns the raw HTML generated by the form
+ *
+ * @param $submitResult Mixed output from HTMLForm::trySubmit()
+ *
+ * @return string
+ */
+ function getHTML( $submitResult ) {
+ # For good measure (it is the default)
+ $this->getOutput()->preventClickjacking();
+ $this->getOutput()->addModules( 'mediawiki.htmlform' );
+ if ( $this->isVForm() ) {
+ $this->getOutput()->addModuleStyles( 'mediawiki.ui' );
+ // @todo Should vertical form set setWrapperLegend( false )
+ // to hide ugly fieldsets?
+ }
+
+ $html = ''
+ . $this->getErrors( $submitResult )
+ . $this->mHeader
+ . $this->getBody()
+ . $this->getHiddenFields()
+ . $this->getButtons()
+ . $this->mFooter;
+
+ $html = $this->wrapForm( $html );
+
+ return '' . $this->mPre . $html . $this->mPost;
+ }
+
+ /**
+ * Wrap the form innards in an actual "<form>" element
+ *
+ * @param string $html HTML contents to wrap.
+ *
+ * @return String wrapped HTML.
+ */
+ function wrapForm( $html ) {
+
+ # Include a <fieldset> wrapper for style, if requested.
+ if ( $this->mWrapperLegend !== false ) {
+ $html = Xml::fieldset( $this->mWrapperLegend, $html );
+ }
+ # Use multipart/form-data
+ $encType = $this->mUseMultipart
+ ? 'multipart/form-data'
+ : 'application/x-www-form-urlencoded';
+ # Attributes
+ $attribs = array(
+ 'action' => $this->getAction(),
+ 'method' => $this->getMethod(),
+ 'class' => array( 'visualClear' ),
+ 'enctype' => $encType,
+ );
+ if ( !empty( $this->mId ) ) {
+ $attribs['id'] = $this->mId;
+ }
+
+ if ( $this->isVForm() ) {
+ array_push( $attribs['class'], 'mw-ui-vform', 'mw-ui-container' );
+ }
+
+ return Html::rawElement( 'form', $attribs, $html );
+ }
+
+ /**
+ * Get the hidden fields that should go inside the form.
+ * @return String HTML.
+ */
+ function getHiddenFields() {
+ global $wgArticlePath;
+
+ $html = '';
+ if ( $this->getMethod() == 'post' ) {
+ $html .= Html::hidden(
+ 'wpEditToken',
+ $this->getUser()->getEditToken(),
+ array( 'id' => 'wpEditToken' )
+ ) . "\n";
+ $html .= Html::hidden( 'title', $this->getTitle()->getPrefixedText() ) . "\n";
+ }
+
+ if ( strpos( $wgArticlePath, '?' ) !== false && $this->getMethod() == 'get' ) {
+ $html .= Html::hidden( 'title', $this->getTitle()->getPrefixedText() ) . "\n";
+ }
+
+ foreach ( $this->mHiddenFields as $data ) {
+ list( $value, $attribs ) = $data;
+ $html .= Html::hidden( $attribs['name'], $value, $attribs ) . "\n";
+ }
+
+ return $html;
+ }
+
+ /**
+ * Get the submit and (potentially) reset buttons.
+ * @return String HTML.
+ */
+ function getButtons() {
+ $html = '<span class="mw-htmlform-submit-buttons">';
+
+ if ( $this->mShowSubmit ) {
+ $attribs = array();
+
+ if ( isset( $this->mSubmitID ) ) {
+ $attribs['id'] = $this->mSubmitID;
+ }
+
+ if ( isset( $this->mSubmitName ) ) {
+ $attribs['name'] = $this->mSubmitName;
+ }
+
+ if ( isset( $this->mSubmitTooltip ) ) {
+ $attribs += Linker::tooltipAndAccesskeyAttribs( $this->mSubmitTooltip );
+ }
+
+ $attribs['class'] = array( 'mw-htmlform-submit' );
+
+ if ( $this->isVForm() ) {
+ // mw-ui-block is necessary because the buttons aren't necessarily in an
+ // immediate child div of the vform.
+ array_push( $attribs['class'], 'mw-ui-button', 'mw-ui-big', 'mw-ui-primary', 'mw-ui-block' );
+ }
+
+ $html .= Xml::submitButton( $this->getSubmitText(), $attribs ) . "\n";
+
+ // Buttons are top-level form elements in table and div layouts,
+ // but vform wants all elements inside divs to get spaced-out block
+ // styling.
+ if ( $this->isVForm() ) {
+ $html = Html::rawElement( 'div', null, "\n$html\n" );
+ }
+ }
+
+ if ( $this->mShowReset ) {
+ $html .= Html::element(
+ 'input',
+ array(
+ 'type' => 'reset',
+ 'value' => $this->msg( 'htmlform-reset' )->text()
+ )
+ ) . "\n";
+ }
+
+ foreach ( $this->mButtons as $button ) {
+ $attrs = array(
+ 'type' => 'submit',
+ 'name' => $button['name'],
+ 'value' => $button['value']
+ );
+
+ if ( $button['attribs'] ) {
+ $attrs += $button['attribs'];
+ }
+
+ if ( isset( $button['id'] ) ) {
+ $attrs['id'] = $button['id'];
+ }
+
+ $html .= Html::element( 'input', $attrs );
+ }
+
+ $html .= '</span>';
+
+ return $html;
+ }
+
+ /**
+ * Get the whole body of the form.
+ * @return String
+ */
+ function getBody() {
+ return $this->displaySection( $this->mFieldTree, $this->mTableId );
+ }
+
+ /**
+ * Format and display an error message stack.
+ *
+ * @param $errors String|Array|Status
+ *
+ * @return String
+ */
+ function getErrors( $errors ) {
+ if ( $errors instanceof Status ) {
+ if ( $errors->isOK() ) {
+ $errorstr = '';
+ } else {
+ $errorstr = $this->getOutput()->parse( $errors->getWikiText() );
+ }
+ } elseif ( is_array( $errors ) ) {
+ $errorstr = $this->formatErrors( $errors );
+ } else {
+ $errorstr = $errors;
+ }
+
+ return $errorstr
+ ? Html::rawElement( 'div', array( 'class' => 'error' ), $errorstr )
+ : '';
+ }
+
+ /**
+ * Format a stack of error messages into a single HTML string
+ *
+ * @param array $errors of message keys/values
+ *
+ * @return String HTML, a "<ul>" list of errors
+ */
+ public static function formatErrors( $errors ) {
+ $errorstr = '';
+
+ foreach ( $errors as $error ) {
+ if ( is_array( $error ) ) {
+ $msg = array_shift( $error );
+ } else {
+ $msg = $error;
+ $error = array();
+ }
+
+ $errorstr .= Html::rawElement(
+ 'li',
+ array(),
+ wfMessage( $msg, $error )->parse()
+ );
+ }
+
+ $errorstr = Html::rawElement( 'ul', array(), $errorstr );
+
+ return $errorstr;
+ }
+
+ /**
+ * Set the text for the submit button
+ *
+ * @param string $t plaintext.
+ *
+ * @return HTMLForm $this for chaining calls (since 1.20)
+ */
+ function setSubmitText( $t ) {
+ $this->mSubmitText = $t;
+
+ return $this;
+ }
+
+ /**
+ * Set the text for the submit button to a message
+ * @since 1.19
+ *
+ * @param string $msg message key
+ *
+ * @return HTMLForm $this for chaining calls (since 1.20)
+ */
+ public function setSubmitTextMsg( $msg ) {
+ $this->setSubmitText( $this->msg( $msg )->text() );
+
+ return $this;
+ }
+
+ /**
+ * Get the text for the submit button, either customised or a default.
+ * @return string
+ */
+ function getSubmitText() {
+ return $this->mSubmitText
+ ? $this->mSubmitText
+ : $this->msg( 'htmlform-submit' )->text();
+ }
+
+ /**
+ * @param string $name Submit button name
+ *
+ * @return HTMLForm $this for chaining calls (since 1.20)
+ */
+ public function setSubmitName( $name ) {
+ $this->mSubmitName = $name;
+
+ return $this;
+ }
+
+ /**
+ * @param string $name Tooltip for the submit button
+ *
+ * @return HTMLForm $this for chaining calls (since 1.20)
+ */
+ public function setSubmitTooltip( $name ) {
+ $this->mSubmitTooltip = $name;
+
+ return $this;
+ }
+
+ /**
+ * Set the id for the submit button.
+ *
+ * @param $t String.
+ *
+ * @todo FIXME: Integrity of $t is *not* validated
+ * @return HTMLForm $this for chaining calls (since 1.20)
+ */
+ function setSubmitID( $t ) {
+ $this->mSubmitID = $t;
+
+ return $this;
+ }
+
+ /**
+ * Stop a default submit button being shown for this form. This implies that an
+ * alternate submit method must be provided manually.
+ *
+ * @since 1.22
+ *
+ * @param bool $suppressSubmit Set to false to re-enable the button again
+ *
+ * @return HTMLForm $this for chaining calls
+ */
+ function suppressDefaultSubmit( $suppressSubmit = true ) {
+ $this->mShowSubmit = !$suppressSubmit;
+
+ return $this;
+ }
+
+ /**
+ * Set the id of the \<table\> or outermost \<div\> element.
+ *
+ * @since 1.22
+ *
+ * @param string $id new value of the id attribute, or "" to remove
+ *
+ * @return HTMLForm $this for chaining calls
+ */
+ public function setTableId( $id ) {
+ $this->mTableId = $id;
+
+ return $this;
+ }
+
+ /**
+ * @param string $id DOM id for the form
+ *
+ * @return HTMLForm $this for chaining calls (since 1.20)
+ */
+ public function setId( $id ) {
+ $this->mId = $id;
+
+ return $this;
+ }
+
+ /**
+ * Prompt the whole form to be wrapped in a "<fieldset>", with
+ * this text as its "<legend>" element.
+ *
+ * @param string|false $legend HTML to go inside the "<legend>" element, or
+ * false for no <legend>
+ * Will be escaped
+ *
+ * @return HTMLForm $this for chaining calls (since 1.20)
+ */
+ public function setWrapperLegend( $legend ) {
+ $this->mWrapperLegend = $legend;
+
+ return $this;
+ }
+
+ /**
+ * Prompt the whole form to be wrapped in a "<fieldset>", with
+ * this message as its "<legend>" element.
+ * @since 1.19
+ *
+ * @param string $msg message key
+ *
+ * @return HTMLForm $this for chaining calls (since 1.20)
+ */
+ public function setWrapperLegendMsg( $msg ) {
+ $this->setWrapperLegend( $this->msg( $msg )->text() );
+
+ return $this;
+ }
+
+ /**
+ * Set the prefix for various default messages
+ * @todo Currently only used for the "<fieldset>" legend on forms
+ * with multiple sections; should be used elsewhere?
+ *
+ * @param $p String
+ *
+ * @return HTMLForm $this for chaining calls (since 1.20)
+ */
+ function setMessagePrefix( $p ) {
+ $this->mMessagePrefix = $p;
+
+ return $this;
+ }
+
+ /**
+ * Set the title for form submission
+ *
+ * @param $t Title of page the form is on/should be posted to
+ *
+ * @return HTMLForm $this for chaining calls (since 1.20)
+ */
+ function setTitle( $t ) {
+ $this->mTitle = $t;
+
+ return $this;
+ }
+
+ /**
+ * Get the title
+ * @return Title
+ */
+ function getTitle() {
+ return $this->mTitle === false
+ ? $this->getContext()->getTitle()
+ : $this->mTitle;
+ }
+
+ /**
+ * Set the method used to submit the form
+ *
+ * @param $method String
+ *
+ * @return HTMLForm $this for chaining calls (since 1.20)
+ */
+ public function setMethod( $method = 'post' ) {
+ $this->mMethod = $method;
+
+ return $this;
+ }
+
+ public function getMethod() {
+ return $this->mMethod;
+ }
+
+ /**
+ * @todo Document
+ *
+ * @param array[]|HTMLFormField[] $fields Array of fields (either arrays or
+ * objects).
+ * @param string $sectionName ID attribute of the "<table>" tag for this
+ * section, ignored if empty.
+ * @param string $fieldsetIDPrefix ID prefix for the "<fieldset>" tag of
+ * each subsection, ignored if empty.
+ * @param boolean &$hasUserVisibleFields Whether the section had user-visible fields.
+ *
+ * @return String
+ */
+ public function displaySection( $fields,
+ $sectionName = '',
+ $fieldsetIDPrefix = '',
+ &$hasUserVisibleFields = false ) {
+ $displayFormat = $this->getDisplayFormat();
+
+ $html = '';
+ $subsectionHtml = '';
+ $hasLabel = false;
+
+ switch ( $displayFormat ) {
+ case 'table':
+ $getFieldHtmlMethod = 'getTableRow';
+ break;
+ case 'vform':
+ // Close enough to a div.
+ $getFieldHtmlMethod = 'getDiv';
+ break;
+ default:
+ $getFieldHtmlMethod = 'get' . ucfirst( $displayFormat );
+ }
+
+ foreach ( $fields as $key => $value ) {
+ if ( $value instanceof HTMLFormField ) {
+ $v = empty( $value->mParams['nodata'] )
+ ? $this->mFieldData[$key]
+ : $value->getDefault();
+ $html .= $value->$getFieldHtmlMethod( $v );
+
+ $labelValue = trim( $value->getLabel() );
+ if ( $labelValue != ' ' && $labelValue !== '' ) {
+ $hasLabel = true;
+ }
+
+ if ( get_class( $value ) !== 'HTMLHiddenField' &&
+ get_class( $value ) !== 'HTMLApiField'
+ ) {
+ $hasUserVisibleFields = true;
+ }
+ } elseif ( is_array( $value ) ) {
+ $subsectionHasVisibleFields = false;
+ $section =
+ $this->displaySection( $value,
+ "mw-htmlform-$key",
+ "$fieldsetIDPrefix$key-",
+ $subsectionHasVisibleFields );
+ $legend = null;
+
+ if ( $subsectionHasVisibleFields === true ) {
+ // Display the section with various niceties.
+ $hasUserVisibleFields = true;
+
+ $legend = $this->getLegend( $key );
+
+ if ( isset( $this->mSectionHeaders[$key] ) ) {
+ $section = $this->mSectionHeaders[$key] . $section;
+ }
+ if ( isset( $this->mSectionFooters[$key] ) ) {
+ $section .= $this->mSectionFooters[$key];
+ }
+
+ $attributes = array();
+ if ( $fieldsetIDPrefix ) {
+ $attributes['id'] = Sanitizer::escapeId( "$fieldsetIDPrefix$key" );
+ }
+ $subsectionHtml .= Xml::fieldset( $legend, $section, $attributes ) . "\n";
+ } else {
+ // Just return the inputs, nothing fancy.
+ $subsectionHtml .= $section;
+ }
+ }
+ }
+
+ if ( $displayFormat !== 'raw' ) {
+ $classes = array();
+
+ if ( !$hasLabel ) { // Avoid strange spacing when no labels exist
+ $classes[] = 'mw-htmlform-nolabel';
+ }
+
+ $attribs = array(
+ 'class' => implode( ' ', $classes ),
+ );
+
+ if ( $sectionName ) {
+ $attribs['id'] = Sanitizer::escapeId( $sectionName );
+ }
+
+ if ( $displayFormat === 'table' ) {
+ $html = Html::rawElement( 'table',
+ $attribs,
+ Html::rawElement( 'tbody', array(), "\n$html\n" ) ) . "\n";
+ } elseif ( $displayFormat === 'div' || $displayFormat === 'vform' ) {
+ $html = Html::rawElement( 'div', $attribs, "\n$html\n" );
+ }
+ }
+
+ if ( $this->mSubSectionBeforeFields ) {
+ return $subsectionHtml . "\n" . $html;
+ } else {
+ return $html . "\n" . $subsectionHtml;
+ }
+ }
+
+ /**
+ * Construct the form fields from the Descriptor array
+ */
+ function loadData() {
+ $fieldData = array();
+
+ foreach ( $this->mFlatFields as $fieldname => $field ) {
+ if ( !empty( $field->mParams['nodata'] ) ) {
+ continue;
+ } elseif ( !empty( $field->mParams['disabled'] ) ) {
+ $fieldData[$fieldname] = $field->getDefault();
+ } else {
+ $fieldData[$fieldname] = $field->loadDataFromRequest( $this->getRequest() );
+ }
+ }
+
+ # Filter data.
+ foreach ( $fieldData as $name => &$value ) {
+ $field = $this->mFlatFields[$name];
+ $value = $field->filter( $value, $this->mFlatFields );
+ }
+
+ $this->mFieldData = $fieldData;
+ }
+
+ /**
+ * Stop a reset button being shown for this form
+ *
+ * @param bool $suppressReset set to false to re-enable the
+ * button again
+ *
+ * @return HTMLForm $this for chaining calls (since 1.20)
+ */
+ function suppressReset( $suppressReset = true ) {
+ $this->mShowReset = !$suppressReset;
+
+ return $this;
+ }
+
+ /**
+ * Overload this if you want to apply special filtration routines
+ * to the form as a whole, after it's submitted but before it's
+ * processed.
+ *
+ * @param $data
+ *
+ * @return
+ */
+ function filterDataForSubmit( $data ) {
+ return $data;
+ }
+
+ /**
+ * Get a string to go in the "<legend>" of a section fieldset.
+ * Override this if you want something more complicated.
+ *
+ * @param $key String
+ *
+ * @return String
+ */
+ public function getLegend( $key ) {
+ return $this->msg( "{$this->mMessagePrefix}-$key" )->text();
+ }
+
+ /**
+ * Set the value for the action attribute of the form.
+ * When set to false (which is the default state), the set title is used.
+ *
+ * @since 1.19
+ *
+ * @param string|bool $action
+ *
+ * @return HTMLForm $this for chaining calls (since 1.20)
+ */
+ public function setAction( $action ) {
+ $this->mAction = $action;
+
+ return $this;
+ }
+
+ /**
+ * Get the value for the action attribute of the form.
+ *
+ * @since 1.22
+ *
+ * @return string
+ */
+ public function getAction() {
+ global $wgScript, $wgArticlePath;
+
+ // If an action is alredy provided, return it
+ if ( $this->mAction !== false ) {
+ return $this->mAction;
+ }
+
+ // Check whether we are in GET mode and $wgArticlePath contains a "?"
+ // meaning that getLocalURL() would return something like "index.php?title=...".
+ // As browser remove the query string before submitting GET forms,
+ // it means that the title would be lost. In such case use $wgScript instead
+ // and put title in an hidden field (see getHiddenFields()).
+ if ( strpos( $wgArticlePath, '?' ) !== false && $this->getMethod() === 'get' ) {
+ return $wgScript;
+ }
+
+ return $this->getTitle()->getLocalURL();
+ }
+}
--- /dev/null
+<?php
+
+/**
+ * The parent class to generate form fields. Any field type should
+ * be a subclass of this.
+ */
+abstract class HTMLFormField {
+ public $mParams;
+
+ protected $mValidationCallback;
+ protected $mFilterCallback;
+ protected $mName;
+ protected $mLabel; # String label. Set on construction
+ protected $mID;
+ protected $mClass = '';
+ protected $mDefault;
+
+ /**
+ * @var bool If true will generate an empty div element with no label
+ * @since 1.22
+ */
+ protected $mShowEmptyLabels = true;
+
+ /**
+ * @var HTMLForm
+ */
+ public $mParent;
+
+ /**
+ * This function must be implemented to return the HTML to generate
+ * the input object itself. It should not implement the surrounding
+ * table cells/rows, or labels/help messages.
+ *
+ * @param string $value the value to set the input to; eg a default
+ * text for a text input.
+ *
+ * @return string Valid HTML.
+ */
+ abstract function getInputHTML( $value );
+
+ /**
+ * Get a translated interface message
+ *
+ * This is a wrapper around $this->mParent->msg() if $this->mParent is set
+ * and wfMessage() otherwise.
+ *
+ * Parameters are the same as wfMessage().
+ *
+ * @return Message object
+ */
+ function msg() {
+ $args = func_get_args();
+
+ if ( $this->mParent ) {
+ $callback = array( $this->mParent, 'msg' );
+ } else {
+ $callback = 'wfMessage';
+ }
+
+ return call_user_func_array( $callback, $args );
+ }
+
+ /**
+ * Override this function to add specific validation checks on the
+ * field input. Don't forget to call parent::validate() to ensure
+ * that the user-defined callback mValidationCallback is still run
+ *
+ * @param string $value The value the field was submitted with
+ * @param array $alldata The data collected from the form
+ *
+ * @return Mixed Bool true on success, or String error to display.
+ */
+ function validate( $value, $alldata ) {
+ if ( isset( $this->mParams['required'] )
+ && $this->mParams['required'] !== false
+ && $value === ''
+ ) {
+ return $this->msg( 'htmlform-required' )->parse();
+ }
+
+ if ( isset( $this->mValidationCallback ) ) {
+ return call_user_func( $this->mValidationCallback, $value, $alldata, $this->mParent );
+ }
+
+ return true;
+ }
+
+ function filter( $value, $alldata ) {
+ if ( isset( $this->mFilterCallback ) ) {
+ $value = call_user_func( $this->mFilterCallback, $value, $alldata, $this->mParent );
+ }
+
+ return $value;
+ }
+
+ /**
+ * Should this field have a label, or is there no input element with the
+ * appropriate id for the label to point to?
+ *
+ * @return bool True to output a label, false to suppress
+ */
+ protected function needsLabel() {
+ return true;
+ }
+
+ /**
+ * Tell the field whether to generate a separate label element if its label
+ * is blank.
+ *
+ * @since 1.22
+ *
+ * @param bool $show Set to false to not generate a label.
+ * @return void
+ */
+ public function setShowEmptyLabel( $show ) {
+ $this->mShowEmptyLabels = $show;
+ }
+
+ /**
+ * Get the value that this input has been set to from a posted form,
+ * or the input's default value if it has not been set.
+ *
+ * @param WebRequest $request
+ * @return String the value
+ */
+ function loadDataFromRequest( $request ) {
+ if ( $request->getCheck( $this->mName ) ) {
+ return $request->getText( $this->mName );
+ } else {
+ return $this->getDefault();
+ }
+ }
+
+ /**
+ * Initialise the object
+ *
+ * @param array $params Associative Array. See HTMLForm doc for syntax.
+ *
+ * @since 1.22 The 'label' attribute no longer accepts raw HTML, use 'label-raw' instead
+ * @throws MWException
+ */
+ function __construct( $params ) {
+ $this->mParams = $params;
+
+ # Generate the label from a message, if possible
+ if ( isset( $params['label-message'] ) ) {
+ $msgInfo = $params['label-message'];
+
+ if ( is_array( $msgInfo ) ) {
+ $msg = array_shift( $msgInfo );
+ } else {
+ $msg = $msgInfo;
+ $msgInfo = array();
+ }
+
+ $this->mLabel = wfMessage( $msg, $msgInfo )->parse();
+ } elseif ( isset( $params['label'] ) ) {
+ if ( $params['label'] === ' ' ) {
+ // Apparently some things set   directly and in an odd format
+ $this->mLabel = ' ';
+ } else {
+ $this->mLabel = htmlspecialchars( $params['label'] );
+ }
+ } elseif ( isset( $params['label-raw'] ) ) {
+ $this->mLabel = $params['label-raw'];
+ }
+
+ $this->mName = "wp{$params['fieldname']}";
+ if ( isset( $params['name'] ) ) {
+ $this->mName = $params['name'];
+ }
+
+ $validName = Sanitizer::escapeId( $this->mName );
+ if ( $this->mName != $validName && !isset( $params['nodata'] ) ) {
+ throw new MWException( "Invalid name '{$this->mName}' passed to " . __METHOD__ );
+ }
+
+ $this->mID = "mw-input-{$this->mName}";
+
+ if ( isset( $params['default'] ) ) {
+ $this->mDefault = $params['default'];
+ }
+
+ if ( isset( $params['id'] ) ) {
+ $id = $params['id'];
+ $validId = Sanitizer::escapeId( $id );
+
+ if ( $id != $validId ) {
+ throw new MWException( "Invalid id '$id' passed to " . __METHOD__ );
+ }
+
+ $this->mID = $id;
+ }
+
+ if ( isset( $params['cssclass'] ) ) {
+ $this->mClass = $params['cssclass'];
+ }
+
+ if ( isset( $params['validation-callback'] ) ) {
+ $this->mValidationCallback = $params['validation-callback'];
+ }
+
+ if ( isset( $params['filter-callback'] ) ) {
+ $this->mFilterCallback = $params['filter-callback'];
+ }
+
+ if ( isset( $params['flatlist'] ) ) {
+ $this->mClass .= ' mw-htmlform-flatlist';
+ }
+
+ if ( isset( $params['hidelabel'] ) ) {
+ $this->mShowEmptyLabels = false;
+ }
+ }
+
+ /**
+ * Get the complete table row for the input, including help text,
+ * labels, and whatever.
+ *
+ * @param string $value The value to set the input to.
+ *
+ * @return string Complete HTML table row.
+ */
+ function getTableRow( $value ) {
+ list( $errors, $errorClass ) = $this->getErrorsAndErrorClass( $value );
+ $inputHtml = $this->getInputHTML( $value );
+ $fieldType = get_class( $this );
+ $helptext = $this->getHelpTextHtmlTable( $this->getHelpText() );
+ $cellAttributes = array();
+
+ if ( !empty( $this->mParams['vertical-label'] ) ) {
+ $cellAttributes['colspan'] = 2;
+ $verticalLabel = true;
+ } else {
+ $verticalLabel = false;
+ }
+
+ $label = $this->getLabelHtml( $cellAttributes );
+
+ $field = Html::rawElement(
+ 'td',
+ array( 'class' => 'mw-input' ) + $cellAttributes,
+ $inputHtml . "\n$errors"
+ );
+
+ if ( $verticalLabel ) {
+ $html = Html::rawElement( 'tr', array( 'class' => 'mw-htmlform-vertical-label' ), $label );
+ $html .= Html::rawElement( 'tr',
+ array( 'class' => "mw-htmlform-field-$fieldType {$this->mClass} $errorClass" ),
+ $field );
+ } else {
+ $html =
+ Html::rawElement( 'tr',
+ array( 'class' => "mw-htmlform-field-$fieldType {$this->mClass} $errorClass" ),
+ $label . $field );
+ }
+
+ return $html . $helptext;
+ }
+
+ /**
+ * Get the complete div for the input, including help text,
+ * labels, and whatever.
+ * @since 1.20
+ *
+ * @param string $value The value to set the input to.
+ *
+ * @return string Complete HTML table row.
+ */
+ public function getDiv( $value ) {
+ list( $errors, $errorClass ) = $this->getErrorsAndErrorClass( $value );
+ $inputHtml = $this->getInputHTML( $value );
+ $fieldType = get_class( $this );
+ $helptext = $this->getHelpTextHtmlDiv( $this->getHelpText() );
+ $cellAttributes = array();
+ $label = $this->getLabelHtml( $cellAttributes );
+
+ $outerDivClass = array(
+ 'mw-input',
+ 'mw-htmlform-nolabel' => ( $label === '' )
+ );
+
+ $field = Html::rawElement(
+ 'div',
+ array( 'class' => $outerDivClass ) + $cellAttributes,
+ $inputHtml . "\n$errors"
+ );
+ $divCssClasses = array( "mw-htmlform-field-$fieldType", $this->mClass, $errorClass );
+ if ( $this->mParent->isVForm() ) {
+ $divCssClasses[] = 'mw-ui-vform-div';
+ }
+ $html = Html::rawElement( 'div', array( 'class' => $divCssClasses ), $label . $field );
+ $html .= $helptext;
+
+ return $html;
+ }
+
+ /**
+ * Get the complete raw fields for the input, including help text,
+ * labels, and whatever.
+ * @since 1.20
+ *
+ * @param string $value The value to set the input to.
+ *
+ * @return string Complete HTML table row.
+ */
+ public function getRaw( $value ) {
+ list( $errors, ) = $this->getErrorsAndErrorClass( $value );
+ $inputHtml = $this->getInputHTML( $value );
+ $helptext = $this->getHelpTextHtmlRaw( $this->getHelpText() );
+ $cellAttributes = array();
+ $label = $this->getLabelHtml( $cellAttributes );
+
+ $html = "\n$errors";
+ $html .= $label;
+ $html .= $inputHtml;
+ $html .= $helptext;
+
+ return $html;
+ }
+
+ /**
+ * Generate help text HTML in table format
+ * @since 1.20
+ *
+ * @param string|null $helptext
+ * @return string
+ */
+ public function getHelpTextHtmlTable( $helptext ) {
+ if ( is_null( $helptext ) ) {
+ return '';
+ }
+
+ $row = Html::rawElement( 'td', array( 'colspan' => 2, 'class' => 'htmlform-tip' ), $helptext );
+ $row = Html::rawElement( 'tr', array(), $row );
+
+ return $row;
+ }
+
+ /**
+ * Generate help text HTML in div format
+ * @since 1.20
+ *
+ * @param string|null $helptext
+ *
+ * @return String
+ */
+ public function getHelpTextHtmlDiv( $helptext ) {
+ if ( is_null( $helptext ) ) {
+ return '';
+ }
+
+ $div = Html::rawElement( 'div', array( 'class' => 'htmlform-tip' ), $helptext );
+
+ return $div;
+ }
+
+ /**
+ * Generate help text HTML formatted for raw output
+ * @since 1.20
+ *
+ * @param string|null $helptext
+ * @return String
+ */
+ public function getHelpTextHtmlRaw( $helptext ) {
+ return $this->getHelpTextHtmlDiv( $helptext );
+ }
+
+ /**
+ * Determine the help text to display
+ * @since 1.20
+ * @return string
+ */
+ public function getHelpText() {
+ $helptext = null;
+
+ if ( isset( $this->mParams['help-message'] ) ) {
+ $this->mParams['help-messages'] = array( $this->mParams['help-message'] );
+ }
+
+ if ( isset( $this->mParams['help-messages'] ) ) {
+ foreach ( $this->mParams['help-messages'] as $name ) {
+ $helpMessage = (array)$name;
+ $msg = $this->msg( array_shift( $helpMessage ), $helpMessage );
+
+ if ( $msg->exists() ) {
+ if ( is_null( $helptext ) ) {
+ $helptext = '';
+ } else {
+ $helptext .= $this->msg( 'word-separator' )->escaped(); // some space
+ }
+ $helptext .= $msg->parse(); // Append message
+ }
+ }
+ } elseif ( isset( $this->mParams['help'] ) ) {
+ $helptext = $this->mParams['help'];
+ }
+
+ return $helptext;
+ }
+
+ /**
+ * Determine form errors to display and their classes
+ * @since 1.20
+ *
+ * @param string $value The value of the input
+ * @return array
+ */
+ public function getErrorsAndErrorClass( $value ) {
+ $errors = $this->validate( $value, $this->mParent->mFieldData );
+
+ if ( $errors === true ||
+ ( !$this->mParent->getRequest()->wasPosted() && $this->mParent->getMethod() === 'post' )
+ ) {
+ $errors = '';
+ $errorClass = '';
+ } else {
+ $errors = self::formatErrors( $errors );
+ $errorClass = 'mw-htmlform-invalid-input';
+ }
+
+ return array( $errors, $errorClass );
+ }
+
+ function getLabel() {
+ return is_null( $this->mLabel ) ? '' : $this->mLabel;
+ }
+
+ function getLabelHtml( $cellAttributes = array() ) {
+ # Don't output a for= attribute for labels with no associated input.
+ # Kind of hacky here, possibly we don't want these to be <label>s at all.
+ $for = array();
+
+ if ( $this->needsLabel() ) {
+ $for['for'] = $this->mID;
+ }
+
+ $labelValue = trim( $this->getLabel() );
+ $hasLabel = false;
+ if ( $labelValue !== ' ' && $labelValue !== '' ) {
+ $hasLabel = true;
+ }
+
+ $displayFormat = $this->mParent->getDisplayFormat();
+ $html = '';
+
+ if ( $displayFormat === 'table' ) {
+ $html =
+ Html::rawElement( 'td',
+ array( 'class' => 'mw-label' ) + $cellAttributes,
+ Html::rawElement( 'label', $for, $labelValue ) );
+ } elseif ( $hasLabel || $this->mShowEmptyLabels ) {
+ if ( $displayFormat === 'div' ) {
+ $html =
+ Html::rawElement( 'div',
+ array( 'class' => 'mw-label' ) + $cellAttributes,
+ Html::rawElement( 'label', $for, $labelValue ) );
+ } else {
+ $html = Html::rawElement( 'label', $for, $labelValue );
+ }
+ }
+
+ return $html;
+ }
+
+ function getDefault() {
+ if ( isset( $this->mDefault ) ) {
+ return $this->mDefault;
+ } else {
+ return null;
+ }
+ }
+
+ /**
+ * Returns the attributes required for the tooltip and accesskey.
+ *
+ * @return array Attributes
+ */
+ public function getTooltipAndAccessKey() {
+ if ( empty( $this->mParams['tooltip'] ) ) {
+ return array();
+ }
+
+ return Linker::tooltipAndAccesskeyAttribs( $this->mParams['tooltip'] );
+ }
+
+ /**
+ * flatten an array of options to a single array, for instance,
+ * a set of "<options>" inside "<optgroups>".
+ *
+ * @param array $options Associative Array with values either Strings
+ * or Arrays
+ * @return array Flattened input
+ */
+ public static function flattenOptions( $options ) {
+ $flatOpts = array();
+
+ foreach ( $options as $value ) {
+ if ( is_array( $value ) ) {
+ $flatOpts = array_merge( $flatOpts, self::flattenOptions( $value ) );
+ } else {
+ $flatOpts[] = $value;
+ }
+ }
+
+ return $flatOpts;
+ }
+
+ /**
+ * Formats one or more errors as accepted by field validation-callback.
+ *
+ * @param string|Message|array $errors String|Message|Array of strings or Message instances
+ * @return string HTML
+ * @since 1.18
+ */
+ protected static function formatErrors( $errors ) {
+ if ( is_array( $errors ) && count( $errors ) === 1 ) {
+ $errors = array_shift( $errors );
+ }
+
+ if ( is_array( $errors ) ) {
+ $lines = array();
+ foreach ( $errors as $error ) {
+ if ( $error instanceof Message ) {
+ $lines[] = Html::rawElement( 'li', array(), $error->parse() );
+ } else {
+ $lines[] = Html::rawElement( 'li', array(), $error );
+ }
+ }
+
+ return Html::rawElement( 'ul', array( 'class' => 'error' ), implode( "\n", $lines ) );
+ } else {
+ if ( $errors instanceof Message ) {
+ $errors = $errors->parse();
+ }
+
+ return Html::rawElement( 'span', array( 'class' => 'error' ), $errors );
+ }
+ }
+}
--- /dev/null
+<?php
+
+class HTMLFormFieldRequiredOptionsException extends MWException {
+ public function __construct( HTMLFormField $field, array $missing ) {
+ parent::__construct( sprintf( "Form type `%s` expected the following parameters to be set: %s",
+ get_class( $field ),
+ implode( ', ', $missing ) ) );
+ }
+}
--- /dev/null
+<?php
+
+class HTMLHiddenField extends HTMLFormField {
+ public function __construct( $params ) {
+ parent::__construct( $params );
+
+ # Per HTML5 spec, hidden fields cannot be 'required'
+ # http://dev.w3.org/html5/spec/states-of-the-type-attribute.html#hidden-state
+ unset( $this->mParams['required'] );
+ }
+
+ public function getTableRow( $value ) {
+ $params = array();
+ if ( $this->mID ) {
+ $params['id'] = $this->mID;
+ }
+
+ $this->mParent->addHiddenField( $this->mName, $this->mDefault, $params );
+
+ return '';
+ }
+
+ /**
+ * @since 1.20
+ */
+ public function getDiv( $value ) {
+ return $this->getTableRow( $value );
+ }
+
+ /**
+ * @since 1.20
+ */
+ public function getRaw( $value ) {
+ return $this->getTableRow( $value );
+ }
+
+ public function getInputHTML( $value ) {
+ return '';
+ }
+}
--- /dev/null
+<?php
+
+/**
+ * An information field (text blob), not a proper input.
+ */
+class HTMLInfoField extends HTMLFormField {
+ public function __construct( $info ) {
+ $info['nodata'] = true;
+
+ parent::__construct( $info );
+ }
+
+ public function getInputHTML( $value ) {
+ return !empty( $this->mParams['raw'] ) ? $value : htmlspecialchars( $value );
+ }
+
+ public function getTableRow( $value ) {
+ if ( !empty( $this->mParams['rawrow'] ) ) {
+ return $value;
+ }
+
+ return parent::getTableRow( $value );
+ }
+
+ /**
+ * @since 1.20
+ */
+ public function getDiv( $value ) {
+ if ( !empty( $this->mParams['rawrow'] ) ) {
+ return $value;
+ }
+
+ return parent::getDiv( $value );
+ }
+
+ /**
+ * @since 1.20
+ */
+ public function getRaw( $value ) {
+ if ( !empty( $this->mParams['rawrow'] ) ) {
+ return $value;
+ }
+
+ return parent::getRaw( $value );
+ }
+
+ protected function needsLabel() {
+ return false;
+ }
+}
--- /dev/null
+<?php
+
+/**
+ * A field that must contain a number
+ */
+class HTMLIntField extends HTMLFloatField {
+ function validate( $value, $alldata ) {
+ $p = parent::validate( $value, $alldata );
+
+ if ( $p !== true ) {
+ return $p;
+ }
+
+ # http://dev.w3.org/html5/spec/common-microsyntaxes.html#signed-integers
+ # with the addition that a leading '+' sign is ok. Note that leading zeros
+ # are fine, and will be left in the input, which is useful for things like
+ # phone numbers when you know that they are integers (the HTML5 type=tel
+ # input does not require its value to be numeric). If you want a tidier
+ # value to, eg, save in the DB, clean it up with intval().
+ if ( !preg_match( '/^((\+|\-)?\d+)?$/', trim( $value ) )
+ ) {
+ return $this->msg( 'htmlform-int-invalid' )->parseAsBlock();
+ }
+
+ return true;
+ }
+}
--- /dev/null
+<?php
+
+/**
+ * Multi-select field
+ */
+class HTMLMultiSelectField extends HTMLFormField implements HTMLNestedFilterable {
+ function validate( $value, $alldata ) {
+ $p = parent::validate( $value, $alldata );
+
+ if ( $p !== true ) {
+ return $p;
+ }
+
+ if ( !is_array( $value ) ) {
+ return false;
+ }
+
+ # If all options are valid, array_intersect of the valid options
+ # and the provided options will return the provided options.
+ $validOptions = HTMLFormField::flattenOptions( $this->mParams['options'] );
+
+ $validValues = array_intersect( $value, $validOptions );
+ if ( count( $validValues ) == count( $value ) ) {
+ return true;
+ } else {
+ return $this->msg( 'htmlform-select-badoption' )->parse();
+ }
+ }
+
+ function getInputHTML( $value ) {
+ $html = $this->formatOptions( $this->mParams['options'], $value );
+
+ return $html;
+ }
+
+ function formatOptions( $options, $value ) {
+ $html = '';
+
+ $attribs = array();
+
+ if ( !empty( $this->mParams['disabled'] ) ) {
+ $attribs['disabled'] = 'disabled';
+ }
+
+ foreach ( $options as $label => $info ) {
+ if ( is_array( $info ) ) {
+ $html .= Html::rawElement( 'h1', array(), $label ) . "\n";
+ $html .= $this->formatOptions( $info, $value );
+ } else {
+ $thisAttribs = array( 'id' => "{$this->mID}-$info", 'value' => $info );
+
+ $checkbox = Xml::check(
+ $this->mName . '[]',
+ in_array( $info, $value, true ),
+ $attribs + $thisAttribs
+ );
+ $checkbox .= ' ' . Html::rawElement(
+ 'label',
+ array( 'for' => "{$this->mID}-$info" ),
+ $label
+ );
+
+ $html .= ' ' . Html::rawElement(
+ 'div',
+ array( 'class' => 'mw-htmlform-flatlist-item' ),
+ $checkbox
+ );
+ }
+ }
+
+ return $html;
+ }
+
+ /**
+ * @param $request WebRequest
+ *
+ * @return String
+ */
+ function loadDataFromRequest( $request ) {
+ if ( $this->mParent->getMethod() == 'post' ) {
+ if ( $request->wasPosted() ) {
+ # Checkboxes are just not added to the request arrays if they're not checked,
+ # so it's perfectly possible for there not to be an entry at all
+ return $request->getArray( $this->mName, array() );
+ } else {
+ # That's ok, the user has not yet submitted the form, so show the defaults
+ return $this->getDefault();
+ }
+ } else {
+ # This is the impossible case: if we look at $_GET and see no data for our
+ # field, is it because the user has not yet submitted the form, or that they
+ # have submitted it with all the options unchecked? We will have to assume the
+ # latter, which basically means that you can't specify 'positive' defaults
+ # for GET forms.
+ # @todo FIXME...
+ return $request->getArray( $this->mName, array() );
+ }
+ }
+
+ function getDefault() {
+ if ( isset( $this->mDefault ) ) {
+ return $this->mDefault;
+ } else {
+ return array();
+ }
+ }
+
+ function filterDataForSubmit( $data ) {
+ $options = HTMLFormField::flattenOptions( $this->mParams['options'] );
+
+ $res = array();
+ foreach ( $options as $opt ) {
+ $res["$opt"] = in_array( $opt, $data );
+ }
+
+ return $res;
+ }
+
+ protected function needsLabel() {
+ return false;
+ }
+}
--- /dev/null
+<?php
+
+interface HTMLNestedFilterable {
+ /**
+ * Support for seperating multi-option preferences into multiple preferences
+ * Due to lack of array support.
+ *
+ * @param $data array
+ */
+ function filterDataForSubmit( $data );
+}
--- /dev/null
+<?php
+
+/**
+ * Radio checkbox fields.
+ */
+class HTMLRadioField extends HTMLFormField {
+ function validate( $value, $alldata ) {
+ $p = parent::validate( $value, $alldata );
+
+ if ( $p !== true ) {
+ return $p;
+ }
+
+ if ( !is_string( $value ) && !is_int( $value ) ) {
+ return false;
+ }
+
+ $validOptions = HTMLFormField::flattenOptions( $this->mParams['options'] );
+
+ if ( in_array( $value, $validOptions ) ) {
+ return true;
+ } else {
+ return $this->msg( 'htmlform-select-badoption' )->parse();
+ }
+ }
+
+ /**
+ * This returns a block of all the radio options, in one cell.
+ * @see includes/HTMLFormField#getInputHTML()
+ *
+ * @param $value String
+ *
+ * @return String
+ */
+ function getInputHTML( $value ) {
+ $html = $this->formatOptions( $this->mParams['options'], $value );
+
+ return $html;
+ }
+
+ function formatOptions( $options, $value ) {
+ $html = '';
+
+ $attribs = array();
+ if ( !empty( $this->mParams['disabled'] ) ) {
+ $attribs['disabled'] = 'disabled';
+ }
+
+ # @todo Should this produce an unordered list perhaps?
+ foreach ( $options as $label => $info ) {
+ if ( is_array( $info ) ) {
+ $html .= Html::rawElement( 'h1', array(), $label ) . "\n";
+ $html .= $this->formatOptions( $info, $value );
+ } else {
+ $id = Sanitizer::escapeId( $this->mID . "-$info" );
+ $radio = Xml::radio( $this->mName, $info, $info == $value, $attribs + array( 'id' => $id ) );
+ $radio .= ' ' . Html::rawElement( 'label', array( 'for' => $id ), $label );
+
+ $html .= ' ' . Html::rawElement(
+ 'div',
+ array( 'class' => 'mw-htmlform-flatlist-item' ),
+ $radio
+ );
+ }
+ }
+
+ return $html;
+ }
+
+ protected function needsLabel() {
+ return false;
+ }
+}
--- /dev/null
+<?php
+
+/**
+ * Double field with a dropdown list constructed from a system message in the format
+ * * Optgroup header
+ * ** <option value>
+ * * New Optgroup header
+ * Plus a text field underneath for an additional reason. The 'value' of the field is
+ * "<select>: <extra reason>", or "<extra reason>" if nothing has been selected in the
+ * select dropdown.
+ * @todo FIXME: If made 'required', only the text field should be compulsory.
+ */
+class HTMLSelectAndOtherField extends HTMLSelectField {
+ function __construct( $params ) {
+ if ( array_key_exists( 'other', $params ) ) {
+ } elseif ( array_key_exists( 'other-message', $params ) ) {
+ $params['other'] = wfMessage( $params['other-message'] )->plain();
+ } else {
+ $params['other'] = null;
+ }
+
+ if ( array_key_exists( 'options', $params ) ) {
+ # Options array already specified
+ } elseif ( array_key_exists( 'options-message', $params ) ) {
+ # Generate options array from a system message
+ $params['options'] =
+ self::parseMessage( wfMessage( $params['options-message'] )->inContentLanguage()->plain(),
+ $params['other'] );
+ } else {
+ # Sulk
+ throw new MWException( 'HTMLSelectAndOtherField called without any options' );
+ }
+ $this->mFlatOptions = self::flattenOptions( $params['options'] );
+
+ parent::__construct( $params );
+ }
+
+ /**
+ * Build a drop-down box from a textual list.
+ *
+ * @param string $string message text
+ * @param string $otherName name of "other reason" option
+ *
+ * @return Array
+ * @todo This is copied from Xml::listDropDown(), deprecate/avoid duplication?
+ */
+ public static function parseMessage( $string, $otherName = null ) {
+ if ( $otherName === null ) {
+ $otherName = wfMessage( 'htmlform-selectorother-other' )->plain();
+ }
+
+ $optgroup = false;
+ $options = array( $otherName => 'other' );
+
+ foreach ( explode( "\n", $string ) as $option ) {
+ $value = trim( $option );
+ if ( $value == '' ) {
+ continue;
+ } elseif ( substr( $value, 0, 1 ) == '*' && substr( $value, 1, 1 ) != '*' ) {
+ # A new group is starting...
+ $value = trim( substr( $value, 1 ) );
+ $optgroup = $value;
+ } elseif ( substr( $value, 0, 2 ) == '**' ) {
+ # groupmember
+ $opt = trim( substr( $value, 2 ) );
+ if ( $optgroup === false ) {
+ $options[$opt] = $opt;
+ } else {
+ $options[$optgroup][$opt] = $opt;
+ }
+ } else {
+ # groupless reason list
+ $optgroup = false;
+ $options[$option] = $option;
+ }
+ }
+
+ return $options;
+ }
+
+ function getInputHTML( $value ) {
+ $select = parent::getInputHTML( $value[1] );
+
+ $textAttribs = array(
+ 'id' => $this->mID . '-other',
+ 'size' => $this->getSize(),
+ );
+
+ if ( $this->mClass !== '' ) {
+ $textAttribs['class'] = $this->mClass;
+ }
+
+ foreach ( array( 'required', 'autofocus', 'multiple', 'disabled' ) as $param ) {
+ if ( isset( $this->mParams[$param] ) ) {
+ $textAttribs[$param] = '';
+ }
+ }
+
+ $textbox = Html::input( $this->mName . '-other', $value[2], 'text', $textAttribs );
+
+ return "$select<br />\n$textbox";
+ }
+
+ /**
+ * @param $request WebRequest
+ *
+ * @return Array("<overall message>","<select value>","<text field value>")
+ */
+ function loadDataFromRequest( $request ) {
+ if ( $request->getCheck( $this->mName ) ) {
+
+ $list = $request->getText( $this->mName );
+ $text = $request->getText( $this->mName . '-other' );
+
+ if ( $list == 'other' ) {
+ $final = $text;
+ } elseif ( !in_array( $list, $this->mFlatOptions ) ) {
+ # User has spoofed the select form to give an option which wasn't
+ # in the original offer. Sulk...
+ $final = $text;
+ } elseif ( $text == '' ) {
+ $final = $list;
+ } else {
+ $final = $list . $this->msg( 'colon-separator' )->inContentLanguage()->text() . $text;
+ }
+ } else {
+ $final = $this->getDefault();
+
+ $list = 'other';
+ $text = $final;
+ foreach ( $this->mFlatOptions as $option ) {
+ $match = $option . $this->msg( 'colon-separator' )->inContentLanguage()->text();
+ if ( strpos( $text, $match ) === 0 ) {
+ $list = $option;
+ $text = substr( $text, strlen( $match ) );
+ break;
+ }
+ }
+ }
+
+ return array( $final, $list, $text );
+ }
+
+ function getSize() {
+ return isset( $this->mParams['size'] ) ? $this->mParams['size'] : 45;
+ }
+
+ function validate( $value, $alldata ) {
+ # HTMLSelectField forces $value to be one of the options in the select
+ # field, which is not useful here. But we do want the validation further up
+ # the chain
+ $p = parent::validate( $value[1], $alldata );
+
+ if ( $p !== true ) {
+ return $p;
+ }
+
+ if ( isset( $this->mParams['required'] )
+ && $this->mParams['required'] !== false
+ && $value[1] === ''
+ ) {
+ return $this->msg( 'htmlform-required' )->parse();
+ }
+
+ return true;
+ }
+}
--- /dev/null
+<?php
+
+/**
+ * A select dropdown field. Basically a wrapper for Xmlselect class
+ */
+class HTMLSelectField extends HTMLFormField {
+ function validate( $value, $alldata ) {
+ $p = parent::validate( $value, $alldata );
+
+ if ( $p !== true ) {
+ return $p;
+ }
+
+ $validOptions = HTMLFormField::flattenOptions( $this->mParams['options'] );
+
+ if ( in_array( $value, $validOptions ) ) {
+ return true;
+ } else {
+ return $this->msg( 'htmlform-select-badoption' )->parse();
+ }
+ }
+
+ function getInputHTML( $value ) {
+ $select = new XmlSelect( $this->mName, $this->mID, strval( $value ) );
+
+ # If one of the options' 'name' is int(0), it is automatically selected.
+ # because PHP sucks and thinks int(0) == 'some string'.
+ # Working around this by forcing all of them to strings.
+ foreach ( $this->mParams['options'] as &$opt ) {
+ if ( is_int( $opt ) ) {
+ $opt = strval( $opt );
+ }
+ }
+ unset( $opt ); # PHP keeps $opt around as a reference, which is a bit scary
+
+ if ( !empty( $this->mParams['disabled'] ) ) {
+ $select->setAttribute( 'disabled', 'disabled' );
+ }
+
+ if ( $this->mClass !== '' ) {
+ $select->setAttribute( 'class', $this->mClass );
+ }
+
+ $select->addOptions( $this->mParams['options'] );
+
+ return $select->getHTML();
+ }
+}
--- /dev/null
+<?php
+
+/**
+ * Select dropdown field, with an additional "other" textbox.
+ */
+class HTMLSelectOrOtherField extends HTMLTextField {
+ function __construct( $params ) {
+ if ( !in_array( 'other', $params['options'], true ) ) {
+ $msg =
+ isset( $params['other'] )
+ ? $params['other']
+ : wfMessage( 'htmlform-selectorother-other' )->text();
+ $params['options'][$msg] = 'other';
+ }
+
+ parent::__construct( $params );
+ }
+
+ static function forceToStringRecursive( $array ) {
+ if ( is_array( $array ) ) {
+ return array_map( array( __CLASS__, 'forceToStringRecursive' ), $array );
+ } else {
+ return strval( $array );
+ }
+ }
+
+ function getInputHTML( $value ) {
+ $valInSelect = false;
+
+ if ( $value !== false ) {
+ $valInSelect = in_array( $value, HTMLFormField::flattenOptions( $this->mParams['options'] ) );
+ }
+
+ $selected = $valInSelect ? $value : 'other';
+
+ $opts = self::forceToStringRecursive( $this->mParams['options'] );
+
+ $select = new XmlSelect( $this->mName, $this->mID, $selected );
+ $select->addOptions( $opts );
+
+ $select->setAttribute( 'class', 'mw-htmlform-select-or-other' );
+
+ $tbAttribs = array( 'id' => $this->mID . '-other', 'size' => $this->getSize() );
+
+ if ( !empty( $this->mParams['disabled'] ) ) {
+ $select->setAttribute( 'disabled', 'disabled' );
+ $tbAttribs['disabled'] = 'disabled';
+ }
+
+ $select = $select->getHTML();
+
+ if ( isset( $this->mParams['maxlength'] ) ) {
+ $tbAttribs['maxlength'] = $this->mParams['maxlength'];
+ }
+
+ if ( $this->mClass !== '' ) {
+ $tbAttribs['class'] = $this->mClass;
+ }
+
+ $textbox = Html::input( $this->mName . '-other', $valInSelect ? '' : $value, 'text', $tbAttribs );
+
+ return "$select<br />\n$textbox";
+ }
+
+ /**
+ * @param $request WebRequest
+ *
+ * @return String
+ */
+ function loadDataFromRequest( $request ) {
+ if ( $request->getCheck( $this->mName ) ) {
+ $val = $request->getText( $this->mName );
+
+ if ( $val == 'other' ) {
+ $val = $request->getText( $this->mName . '-other' );
+ }
+
+ return $val;
+ } else {
+ return $this->getDefault();
+ }
+ }
+}
--- /dev/null
+<?php
+
+/**
+ * Add a submit button inline in the form (as opposed to
+ * HTMLForm::addButton(), which will add it at the end).
+ */
+class HTMLSubmitField extends HTMLButtonField {
+ protected $buttonType = 'submit';
+}
--- /dev/null
+<?php
+
+class HTMLTextAreaField extends HTMLFormField {
+ const DEFAULT_COLS = 80;
+ const DEFAULT_ROWS = 25;
+
+ function getCols() {
+ return isset( $this->mParams['cols'] ) ? $this->mParams['cols'] : static::DEFAULT_COLS;
+ }
+
+ function getRows() {
+ return isset( $this->mParams['rows'] ) ? $this->mParams['rows'] : static::DEFAULT_ROWS;
+ }
+
+ function getInputHTML( $value ) {
+ $attribs = array(
+ 'id' => $this->mID,
+ 'name' => $this->mName,
+ 'cols' => $this->getCols(),
+ 'rows' => $this->getRows(),
+ ) + $this->getTooltipAndAccessKey();
+
+ if ( $this->mClass !== '' ) {
+ $attribs['class'] = $this->mClass;
+ }
+
+ if ( !empty( $this->mParams['disabled'] ) ) {
+ $attribs['disabled'] = 'disabled';
+ }
+
+ if ( !empty( $this->mParams['readonly'] ) ) {
+ $attribs['readonly'] = 'readonly';
+ }
+
+ if ( isset( $this->mParams['placeholder'] ) ) {
+ $attribs['placeholder'] = $this->mParams['placeholder'];
+ }
+
+ foreach ( array( 'required', 'autofocus' ) as $param ) {
+ if ( isset( $this->mParams[$param] ) ) {
+ $attribs[$param] = '';
+ }
+ }
+
+ return Html::element( 'textarea', $attribs, $value );
+ }
+}
--- /dev/null
+<?php
+
+class HTMLTextField extends HTMLFormField {
+ function getSize() {
+ return isset( $this->mParams['size'] ) ? $this->mParams['size'] : 45;
+ }
+
+ function getInputHTML( $value ) {
+ $attribs = array(
+ 'id' => $this->mID,
+ 'name' => $this->mName,
+ 'size' => $this->getSize(),
+ 'value' => $value,
+ ) + $this->getTooltipAndAccessKey();
+
+ if ( $this->mClass !== '' ) {
+ $attribs['class'] = $this->mClass;
+ }
+
+ if ( !empty( $this->mParams['disabled'] ) ) {
+ $attribs['disabled'] = 'disabled';
+ }
+
+ # @todo Enforce pattern, step, required, readonly on the server side as
+ # well
+ $allowedParams = array(
+ 'min',
+ 'max',
+ 'pattern',
+ 'title',
+ 'step',
+ 'placeholder',
+ 'list',
+ 'maxlength'
+ );
+ foreach ( $allowedParams as $param ) {
+ if ( isset( $this->mParams[$param] ) ) {
+ $attribs[$param] = $this->mParams[$param];
+ }
+ }
+
+ foreach ( array( 'required', 'autofocus', 'multiple', 'readonly' ) as $param ) {
+ if ( isset( $this->mParams[$param] ) ) {
+ $attribs[$param] = '';
+ }
+ }
+
+ # Implement tiny differences between some field variants
+ # here, rather than creating a new class for each one which
+ # is essentially just a clone of this one.
+ if ( isset( $this->mParams['type'] ) ) {
+ switch ( $this->mParams['type'] ) {
+ case 'email':
+ $attribs['type'] = 'email';
+ break;
+ case 'int':
+ $attribs['type'] = 'number';
+ break;
+ case 'float':
+ $attribs['type'] = 'number';
+ $attribs['step'] = 'any';
+ break;
+ # Pass through
+ case 'password':
+ case 'file':
+ $attribs['type'] = $this->mParams['type'];
+ break;
+ }
+ }
+
+ return Html::element( 'input', $attribs );
+ }
+}
array( 'tsearchFixes' ),
// 1.23
- array( 'addPgField', 'recentchanges', 'rc_source', "TEXT NOT NULL DEFAULT ''" ),
+ array( 'addPgField', 'recentchanges', 'rc_source', "TEXT NOT NULL DEFAULT ''" ),
);
}
return false;
}
+ /**
+ * Build a CSS 'url()' value for the given URL, quoting parentheses (and other funny characters)
+ * and escaping quotes as necessary.
+ *
+ * @param string $url URL to process
+ * @return string 'url()' value, usually just `"url($url)"`, quoted/escaped if necessary
+ */
+ public static function buildUrlValue( $url ) {
+ // The list below has been crafted to match URLs such as:
+ // scheme://user@domain:port/~user/fi%20le.png?query=yes&really=y+s
+ // data:image/png;base64,R0lGODlh/+==
+ if ( preg_match( '!^[\w\d:@/~.%+;,?&=-]+$!', $url ) ) {
+ return "url($url)";
+ } else {
+ return 'url("' . strtr( $url, array( '\\' => '\\\\', '"' => '\\"' ) ) . '")';
+ }
+ }
+
/**
* Remaps CSS URL paths and automatically embeds data URIs for CSS rules or url() values
* preceded by an / * @embed * / comment.
// Note: This will not correctly handle cases where ';', '{' or '}' appears in the rule itself,
// e.g. in a quoted string. You are advised not to use such characters in file names.
- $pattern = '/[;{]\K[^;}]*' . CSSMin::URL_REGEX . '[^;}]*(?=[;}])/';
+ // We also match start/end of the string to be consistent in edge-cases ('@import url(…)').
+ $pattern = '/(?:^|[;{])\K[^;{}]*' . CSSMin::URL_REGEX . '[^;}]*(?=[;}]|$)/';
return preg_replace_callback( $pattern, function ( $matchOuter ) use ( $local, $remote, $embedData ) {
$rule = $matchOuter[0];
$ruleWithRemapped = preg_replace_callback( $pattern, function ( $match ) use ( $local, $remote ) {
$remapped = CSSMin::remapOne( $match['file'], $match['query'], $local, $remote, false );
- return "url({$remapped})";
+ return CSSMin::buildUrlValue( $remapped );
}, $rule );
if ( $embedData ) {
$ruleWithEmbedded = preg_replace_callback( $pattern, function ( $match ) use ( $embedAll, $local, $remote ) {
$embed = $embedAll || $match['embed'];
$embedded = CSSMin::remapOne( $match['file'], $match['query'], $local, $remote, $embed );
- return "url({$embedded})";
+ return CSSMin::buildUrlValue( $embedded );
}, $rule );
}
* @return string Remapped/embedded URL data
*/
public static function remapOne( $file, $query, $local, $remote, $embed ) {
- // Skip fully-qualified URLs and data URIs
- $urlScheme = parse_url( $file, PHP_URL_SCHEME );
+ // The full URL possibly with query, as passed to the 'url()' value in CSS
+ $url = $file . $query;
+
+ // Skip fully-qualified and protocol-relative URLs and data URIs
+ $urlScheme = substr( $url, 0, 2 ) === '//' || parse_url( $url, PHP_URL_SCHEME );
if ( $urlScheme ) {
- return $file;
+ return $url;
}
// URLs with absolute paths like /w/index.php need to be expanded
// to absolute URLs but otherwise left alone
- if ( $file !== '' && $file[0] === '/' ) {
+ if ( $url !== '' && $url[0] === '/' ) {
// Replace the file path with an expanded (possibly protocol-relative) URL
// ...but only if wfExpandUrl() is even available.
// This will not be the case if we're running outside of MW
if ( function_exists( 'wfExpandUrl' ) ) {
- return wfExpandUrl( $file, PROTO_RELATIVE );
+ return wfExpandUrl( $url, PROTO_RELATIVE );
} else {
- return $file;
+ return $url;
}
}
- $url = "{$remote}/{$file}";
- $file = "{$local}/{$file}";
-
- $replacement = false;
-
- if ( $local !== false && file_exists( $file ) ) {
- // Add version parameter as a time-stamp in ISO 8601 format,
- // using Z for the timezone, meaning GMT
- $url .= '?' . gmdate( 'Y-m-d\TH:i:s\Z', round( filemtime( $file ), -2 ) );
- if ( $embed ) {
- $data = self::encodeImageAsDataURI( $file );
- if ( $data !== false ) {
- return $data;
- } else {
- return $url;
- }
- } else {
- // Assume that all paths are relative to $remote, and make them absolute
- return $url;
- }
- } elseif ( $local === false ) {
+ if ( $local === false ) {
// Assume that all paths are relative to $remote, and make them absolute
- return $url . $query;
+ return $remote . '/' . $url;
} else {
- return $file;
+ // We drop the query part here and instead make the path relative to $remote
+ $url = "{$remote}/{$file}";
+ // Path to the actual file on the filesystem
+ $localFile = "{$local}/{$file}";
+ if ( file_exists( $localFile ) ) {
+ // Add version parameter as a time-stamp in ISO 8601 format,
+ // using Z for the timezone, meaning GMT
+ $url .= '?' . gmdate( 'Y-m-d\TH:i:s\Z', round( filemtime( $localFile ), -2 ) );
+ if ( $embed ) {
+ $data = self::encodeImageAsDataURI( $localFile );
+ if ( $data !== false ) {
+ return $data;
+ }
+ }
+ }
+ // If any of these conditions failed (file missing, we don't want to embed it
+ // or it's not embeddable), return the URL (possibly with ?timestamp part)
+ return $url;
}
}
$this->limitTitle( $title, $pattern );
$this->getDateCond( $year, $month );
$this->mTagFilter = $tagFilter;
+
+ $this->mDb = wfGetDB( DB_SLAVE, 'logpager' );
}
public function getDefaultQuery() {
if ( $srcWidth * $srcHeight > $wgMaxImageArea
&& !( $image->getMimeType() == 'image/jpeg'
- && self::getScalerType( false, false ) == 'im' )
+ && self::getScalerType( false, false ) == 'im' )
) {
# Only ImageMagick can efficiently downsize jpg images without loading
# the entire file in memory
if ( $metadata ) {
$metadata = $this->unpackMetadata( $metadata );
if ( isset( $metadata['translations'] ) ) {
- foreach( $metadata['translations'] as $lang => $langType ) {
+ foreach ( $metadata['translations'] as $lang => $langType ) {
if ( $langType === SvgReader::LANG_FULL_MATCH ) {
$langList[] = $lang;
}
if ( !is_null( $sysLang ) && $sysLang !== '' ) {
// See http://www.w3.org/TR/SVG/struct.html#SystemLanguageAttribute
$langList = explode( ',', $sysLang );
- foreach( $langList as $langItem ) {
+ foreach ( $langList as $langItem ) {
$langItem = trim( $langItem );
if ( Language::isWellFormedLanguageTag( $langItem ) ) {
$this->languages[$langItem] = self::LANG_FULL_MATCH;
* each containing an array of tags
* each tag is an array of information about the
* tag, including:
- * * map_group - what group (used for precedence during conflicts)
- * * mode - What type of item (self::MODE_SIMPLE usually, see above
- * for all values)
- * * validate - method to validate input. Could also post-process the
+ * * map_group - What group (used for precedence during conflicts).
+ * * mode - What type of item (self::MODE_SIMPLE usually, see above for
+ * all values).
+ * * validate - Method to validate input. Could also post-process the
* input. A string value is assumed to be a static method of
* XMPValidate. Can also take a array( 'className', 'methodName' ).
- * * choices - array of potential values (format of 'value' => true ).
- * Only used with validateClosed
- * * rangeLow and rangeHigh - alternative to choices for numeric ranges.
+ * * choices - Array of potential values (format of 'value' => true ).
+ * Only used with validateClosed.
+ * * rangeLow and rangeHigh - Alternative to choices for numeric ranges.
* Again for validateClosed only.
- * * children - for MODE_STRUCT items, allowed children.
- * * structPart - Indicates that this element can only appear as a member of a structure.
+ * * children - For MODE_STRUCT items, allowed children.
+ * * structPart - Indicates that this element can only appear as a member
+ * of a structure.
*
- * Currently this just has a bunch of exif values as this class is only half-done
+ * Currently this just has a bunch of EXIF values as this class is only half-done.
*/
static private $items = array(
'http://ns.adobe.com/exif/1.0/' => array(
--- /dev/null
+<?php
+/**
+ * Special page which uses an HTMLForm to handle processing.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ * http://www.gnu.org/copyleft/gpl.html
+ *
+ * @file
+ * @ingroup SpecialPage
+ */
+
+/**
+ * Special page which uses an HTMLForm to handle processing. This is mostly a
+ * clone of FormAction. More special pages should be built this way; maybe this could be
+ * a new structure for SpecialPages.
+ *
+ * @ingroup SpecialPage
+ */
+abstract class FormSpecialPage extends SpecialPage {
+ /**
+ * The sub-page of the special page.
+ * @var string
+ */
+ protected $par = null;
+
+ /**
+ * Get an HTMLForm descriptor array
+ * @return Array
+ */
+ abstract protected function getFormFields();
+
+ /**
+ * Add pre-text to the form
+ * @return String HTML which will be sent to $form->addPreText()
+ */
+ protected function preText() {
+ return '';
+ }
+
+ /**
+ * Add post-text to the form
+ * @return String HTML which will be sent to $form->addPostText()
+ */
+ protected function postText() {
+ return '';
+ }
+
+ /**
+ * Play with the HTMLForm if you need to more substantially
+ * @param $form HTMLForm
+ */
+ protected function alterForm( HTMLForm $form ) {
+ }
+
+ /**
+ * Get message prefix for HTMLForm
+ *
+ * @since 1.21
+ * @return string
+ */
+ protected function getMessagePrefix() {
+ return strtolower( $this->getName() );
+ }
+
+ /**
+ * Get the HTMLForm to control behavior
+ * @return HTMLForm|null
+ */
+ protected function getForm() {
+ $this->fields = $this->getFormFields();
+
+ $form = new HTMLForm( $this->fields, $this->getContext(), $this->getMessagePrefix() );
+ $form->setSubmitCallback( array( $this, 'onSubmit' ) );
+ // If the form is a compact vertical form, then don't output this ugly
+ // fieldset surrounding it.
+ // XXX Special pages can setDisplayFormat to 'vform' in alterForm(), but that
+ // is called after this.
+ if ( !$form->isVForm() ) {
+ $form->setWrapperLegendMsg( $this->getMessagePrefix() . '-legend' );
+ }
+
+ $headerMsg = $this->msg( $this->getMessagePrefix() . '-text' );
+ if ( !$headerMsg->isDisabled() ) {
+ $form->addHeaderText( $headerMsg->parseAsBlock() );
+ }
+
+ // Retain query parameters (uselang etc)
+ $params = array_diff_key(
+ $this->getRequest()->getQueryValues(), array( 'title' => null ) );
+ $form->addHiddenField( 'redirectparams', wfArrayToCgi( $params ) );
+
+ $form->addPreText( $this->preText() );
+ $form->addPostText( $this->postText() );
+ $this->alterForm( $form );
+
+ // Give hooks a chance to alter the form, adding extra fields or text etc
+ wfRunHooks( "Special{$this->getName()}BeforeFormDisplay", array( &$form ) );
+
+ return $form;
+ }
+
+ /**
+ * Process the form on POST submission.
+ * @param $data Array
+ * @return Bool|Array true for success, false for didn't-try, array of errors on failure
+ */
+ abstract public function onSubmit( array $data );
+
+ /**
+ * Do something exciting on successful processing of the form, most likely to show a
+ * confirmation message
+ * @since 1.22 Default is to do nothing
+ */
+ public function onSuccess() {
+ }
+
+ /**
+ * Basic SpecialPage workflow: get a form, send it to the user; get some data back,
+ *
+ * @param string $par Subpage string if one was specified
+ */
+ public function execute( $par ) {
+ $this->setParameter( $par );
+ $this->setHeaders();
+
+ // This will throw exceptions if there's a problem
+ $this->checkExecutePermissions( $this->getUser() );
+
+ $form = $this->getForm();
+ if ( $form->show() ) {
+ $this->onSuccess();
+ }
+ }
+
+ /**
+ * Maybe do something interesting with the subpage parameter
+ * @param string $par
+ */
+ protected function setParameter( $par ) {
+ $this->par = $par;
+ }
+
+ /**
+ * Called from execute() to check if the given user can perform this action.
+ * Failures here must throw subclasses of ErrorPageError.
+ * @param $user User
+ * @throws UserBlockedError
+ * @return Bool true
+ */
+ protected function checkExecutePermissions( User $user ) {
+ $this->checkPermissions();
+
+ if ( $this->requiresUnblock() && $user->isBlocked() ) {
+ $block = $user->getBlock();
+ throw new UserBlockedError( $block );
+ }
+
+ if ( $this->requiresWrite() ) {
+ $this->checkReadOnly();
+ }
+
+ return true;
+ }
+
+ /**
+ * Whether this action requires the wiki not to be locked
+ * @return Bool
+ */
+ public function requiresWrite() {
+ return true;
+ }
+
+ /**
+ * Whether this action cannot be executed by a blocked user
+ * @return Bool
+ */
+ public function requiresUnblock() {
+ return true;
+ }
+}
--- /dev/null
+<?php
+/**
+ * Shortcut to construct an includable special page.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ * http://www.gnu.org/copyleft/gpl.html
+ *
+ * @file
+ * @ingroup SpecialPage
+ */
+
+/**
+ * Shortcut to construct an includable special page.
+ *
+ * @ingroup SpecialPage
+ */
+class IncludableSpecialPage extends SpecialPage {
+ function __construct(
+ $name, $restriction = '', $listed = true, $function = false, $file = 'default'
+ ) {
+ parent::__construct( $name, $restriction, $listed, $function, $file, true );
+ }
+
+ public function isIncludable() {
+ return true;
+ }
+}
--- /dev/null
+<?php
+/**
+ * Shortcuts to construct a special page alias.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ * http://www.gnu.org/copyleft/gpl.html
+ *
+ * @file
+ * @ingroup SpecialPage
+ */
+
+/**
+ * Shortcut to construct a special page alias.
+ *
+ * @ingroup SpecialPage
+ */
+abstract class RedirectSpecialPage extends UnlistedSpecialPage {
+
+ // Query parameters that can be passed through redirects
+ protected $mAllowedRedirectParams = array();
+
+ // Query parameters added by redirects
+ protected $mAddedRedirectParams = array();
+
+ public function execute( $par ) {
+ $redirect = $this->getRedirect( $par );
+ $query = $this->getRedirectQuery();
+ // Redirect to a page title with possible query parameters
+ if ( $redirect instanceof Title ) {
+ $url = $redirect->getFullURL( $query );
+ $this->getOutput()->redirect( $url );
+ return $redirect;
+ } elseif ( $redirect === true ) {
+ // Redirect to index.php with query parameters
+ $url = wfAppendQuery( wfScript( 'index' ), $query );
+ $this->getOutput()->redirect( $url );
+ return $redirect;
+ } else {
+ $class = get_class( $this );
+ throw new MWException( "RedirectSpecialPage $class doesn't redirect!" );
+ }
+ }
+
+ /**
+ * If the special page is a redirect, then get the Title object it redirects to.
+ * False otherwise.
+ *
+ * @param string $par Subpage string
+ * @return Title|bool
+ */
+ abstract public function getRedirect( $par );
+
+ /**
+ * Return part of the request string for a special redirect page
+ * This allows passing, e.g. action=history to Special:Mypage, etc.
+ *
+ * @return String
+ */
+ public function getRedirectQuery() {
+ $params = array();
+
+ foreach ( $this->mAllowedRedirectParams as $arg ) {
+ if ( $this->getRequest()->getVal( $arg, null ) !== null ) {
+ $params[$arg] = $this->getRequest()->getVal( $arg );
+ }
+ }
+
+ foreach ( $this->mAddedRedirectParams as $arg => $val ) {
+ $params[$arg] = $val;
+ }
+
+ return count( $params )
+ ? $params
+ : false;
+ }
+}
+
+/**
+ * @ingroup SpecialPage
+ */
+abstract class SpecialRedirectToSpecial extends RedirectSpecialPage {
+ // @todo FIXME: Visibility must be declared
+ var $redirName, $redirSubpage;
+
+ function __construct(
+ $name, $redirName, $redirSubpage = false,
+ $allowedRedirectParams = array(), $addedRedirectParams = array()
+ ) {
+ parent::__construct( $name );
+ $this->redirName = $redirName;
+ $this->redirSubpage = $redirSubpage;
+ $this->mAllowedRedirectParams = $allowedRedirectParams;
+ $this->mAddedRedirectParams = $addedRedirectParams;
+ }
+
+ public function getRedirect( $subpage ) {
+ if ( $this->redirSubpage === false ) {
+ return SpecialPage::getTitleFor( $this->redirName, $subpage );
+ } else {
+ return SpecialPage::getTitleFor( $this->redirName, $this->redirSubpage );
+ }
+ }
+}
+
+/**
+ * Superclass for any RedirectSpecialPage which redirects the user
+ * to a particular article (as opposed to user contributions, logs, etc.).
+ *
+ * For security reasons these special pages are restricted to pass on
+ * the following subset of GET parameters to the target page while
+ * removing all others:
+ *
+ * - useskin, uselang, printable: to alter the appearance of the resulting page
+ *
+ * - redirect: allows viewing one's user page or talk page even if it is a
+ * redirect.
+ *
+ * - rdfrom: allows redirecting to one's user page or talk page from an
+ * external wiki with the "Redirect from..." notice.
+ *
+ * - limit, offset: Useful for linking to history of one's own user page or
+ * user talk page. For example, this would be a link to "the last edit to your
+ * user talk page in the year 2010":
+ * http://en.wikipedia.org/wiki/Special:MyPage?offset=20110000000000&limit=1&action=history
+ *
+ * - feed: would allow linking to the current user's RSS feed for their user
+ * talk page:
+ * http://en.wikipedia.org/w/index.php?title=Special:MyTalk&action=history&feed=rss
+ *
+ * - preloadtitle: Can be used to provide a default section title for a
+ * preloaded new comment on one's own talk page.
+ *
+ * - summary : Can be used to provide a default edit summary for a preloaded
+ * edit to one's own user page or talk page.
+ *
+ * - preview: Allows showing/hiding preview on first edit regardless of user
+ * preference, useful for preloaded edits where you know preview wouldn't be
+ * useful.
+ *
+ * - internaledit, externaledit, mode: Allows forcing the use of the
+ * internal/external editor, e.g. to force the internal editor for
+ * short/simple preloaded edits.
+ *
+ * - redlink: Affects the message the user sees if their talk page/user talk
+ * page does not currently exist. Avoids confusion for newbies with no user
+ * pages over why they got a "permission error" following this link:
+ * http://en.wikipedia.org/w/index.php?title=Special:MyPage&redlink=1
+ *
+ * - debug: determines whether the debug parameter is passed to load.php,
+ * which disables reformatting and allows scripts to be debugged. Useful
+ * when debugging scripts that manipulate one's own user page or talk page.
+ *
+ * @par Hook extension:
+ * Extensions can add to the redirect parameters list by using the hook
+ * RedirectSpecialArticleRedirectParams
+ *
+ * This hook allows extensions which add GET parameters like FlaggedRevs to
+ * retain those parameters when redirecting using special pages.
+ *
+ * @par Hook extension example:
+ * @code
+ * $wgHooks['RedirectSpecialArticleRedirectParams'][] =
+ * 'MyExtensionHooks::onRedirectSpecialArticleRedirectParams';
+ * public static function onRedirectSpecialArticleRedirectParams( &$redirectParams ) {
+ * $redirectParams[] = 'stable';
+ * return true;
+ * }
+ * @endcode
+ *
+ * @ingroup SpecialPage
+ */
+abstract class RedirectSpecialArticle extends RedirectSpecialPage {
+ function __construct( $name ) {
+ parent::__construct( $name );
+ $redirectParams = array(
+ 'action',
+ 'redirect', 'rdfrom',
+ # Options for preloaded edits
+ 'preload', 'editintro', 'preloadtitle', 'summary', 'nosummary',
+ # Options for overriding user settings
+ 'preview', 'internaledit', 'externaledit', 'mode', 'minor', 'watchthis',
+ # Options for history/diffs
+ 'section', 'oldid', 'diff', 'dir',
+ 'limit', 'offset', 'feed',
+ # Misc options
+ 'redlink', 'debug',
+ # Options for action=raw; missing ctype can break JS or CSS in some browsers
+ 'ctype', 'maxage', 'smaxage',
+ );
+
+ wfRunHooks( "RedirectSpecialArticleRedirectParams", array( &$redirectParams ) );
+ $this->mAllowedRedirectParams = $redirectParams;
+ }
+}
--- /dev/null
+<?php
+/**
+ * Parent class for all special pages.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ * http://www.gnu.org/copyleft/gpl.html
+ *
+ * @file
+ * @ingroup SpecialPage
+ */
+
+/**
+ * Parent class for all special pages.
+ *
+ * Includes some static functions for handling the special page list deprecated
+ * in favor of SpecialPageFactory.
+ *
+ * @ingroup SpecialPage
+ */
+class SpecialPage {
+ // The canonical name of this special page
+ // Also used for the default <h1> heading, @see getDescription()
+ protected $mName;
+
+ // The local name of this special page
+ private $mLocalName;
+
+ // Minimum user level required to access this page, or "" for anyone.
+ // Also used to categorise the pages in Special:Specialpages
+ private $mRestriction;
+
+ // Listed in Special:Specialpages?
+ private $mListed;
+
+ // Function name called by the default execute()
+ private $mFunction;
+
+ // File which needs to be included before the function above can be called
+ private $mFile;
+
+ // Whether or not this special page is being included from an article
+ protected $mIncluding;
+
+ // Whether the special page can be included in an article
+ protected $mIncludable;
+
+ /**
+ * Current request context
+ * @var IContextSource
+ */
+ protected $mContext;
+
+ /**
+ * Initialise the special page list
+ * This must be called before accessing SpecialPage::$mList
+ * @deprecated since 1.18
+ */
+ static function initList() {
+ wfDeprecated( __METHOD__, '1.18' );
+ // Noop
+ }
+
+ /**
+ * @deprecated since 1.18
+ */
+ static function initAliasList() {
+ wfDeprecated( __METHOD__, '1.18' );
+ // Noop
+ }
+
+ /**
+ * Given a special page alias, return the special page name.
+ * Returns false if there is no such alias.
+ *
+ * @param $alias String
+ * @return String or false
+ * @deprecated since 1.18 call SpecialPageFactory method directly
+ */
+ static function resolveAlias( $alias ) {
+ wfDeprecated( __METHOD__, '1.18' );
+ list( $name, /*...*/ ) = SpecialPageFactory::resolveAlias( $alias );
+ return $name;
+ }
+
+ /**
+ * Given a special page name with a possible subpage, return an array
+ * where the first element is the special page name and the second is the
+ * subpage.
+ *
+ * @param $alias String
+ * @return Array
+ * @deprecated since 1.18 call SpecialPageFactory method directly
+ */
+ static function resolveAliasWithSubpage( $alias ) {
+ return SpecialPageFactory::resolveAlias( $alias );
+ }
+
+ /**
+ * Add a page to a certain display group for Special:SpecialPages
+ *
+ * @param $page Mixed: SpecialPage or string
+ * @param $group String
+ * @deprecated since 1.18 call SpecialPageFactory method directly
+ */
+ static function setGroup( $page, $group ) {
+ wfDeprecated( __METHOD__, '1.18' );
+ SpecialPageFactory::setGroup( $page, $group );
+ }
+
+ /**
+ * Get the group that the special page belongs in on Special:SpecialPage
+ *
+ * @param $page SpecialPage
+ * @return string
+ * @deprecated since 1.18 call SpecialPageFactory method directly
+ */
+ static function getGroup( &$page ) {
+ wfDeprecated( __METHOD__, '1.18' );
+ return SpecialPageFactory::getGroup( $page );
+ }
+
+ /**
+ * Remove a special page from the list
+ * Formerly used to disable expensive or dangerous special pages. The
+ * preferred method is now to add a SpecialPage_initList hook.
+ * @deprecated since 1.18
+ *
+ * @param string $name the page to remove
+ */
+ static function removePage( $name ) {
+ wfDeprecated( __METHOD__, '1.18' );
+ unset( SpecialPageFactory::getList()->$name );
+ }
+
+ /**
+ * Check if a given name exist as a special page or as a special page alias
+ *
+ * @param string $name name of a special page
+ * @return Boolean: true if a special page exists with this name
+ * @deprecated since 1.18 call SpecialPageFactory method directly
+ */
+ static function exists( $name ) {
+ wfDeprecated( __METHOD__, '1.18' );
+ return SpecialPageFactory::exists( $name );
+ }
+
+ /**
+ * Find the object with a given name and return it (or NULL)
+ *
+ * @param $name String
+ * @return SpecialPage object or null if the page doesn't exist
+ * @deprecated since 1.18 call SpecialPageFactory method directly
+ */
+ static function getPage( $name ) {
+ wfDeprecated( __METHOD__, '1.18' );
+ return SpecialPageFactory::getPage( $name );
+ }
+
+ /**
+ * Get a special page with a given localised name, or NULL if there
+ * is no such special page.
+ *
+ * @param $alias String
+ * @return SpecialPage object or null if the page doesn't exist
+ * @deprecated since 1.18 call SpecialPageFactory method directly
+ */
+ static function getPageByAlias( $alias ) {
+ wfDeprecated( __METHOD__, '1.18' );
+ return SpecialPageFactory::getPage( $alias );
+ }
+
+ /**
+ * Return categorised listable special pages which are available
+ * for the current user, and everyone.
+ *
+ * @param $user User object to check permissions, $wgUser will be used
+ * if not provided
+ * @return array Associative array mapping page's name to its SpecialPage object
+ * @deprecated since 1.18 call SpecialPageFactory method directly
+ */
+ static function getUsablePages( User $user = null ) {
+ wfDeprecated( __METHOD__, '1.18' );
+ return SpecialPageFactory::getUsablePages( $user );
+ }
+
+ /**
+ * Return categorised listable special pages for all users
+ *
+ * @return array Associative array mapping page's name to its SpecialPage object
+ * @deprecated since 1.18 call SpecialPageFactory method directly
+ */
+ static function getRegularPages() {
+ wfDeprecated( __METHOD__, '1.18' );
+ return SpecialPageFactory::getRegularPages();
+ }
+
+ /**
+ * Return categorised listable special pages which are available
+ * for the current user, but not for everyone
+ *
+ * @return array Associative array mapping page's name to its SpecialPage object
+ * @deprecated since 1.18 call SpecialPageFactory method directly
+ */
+ static function getRestrictedPages() {
+ wfDeprecated( __METHOD__, '1.18' );
+ return SpecialPageFactory::getRestrictedPages();
+ }
+
+ /**
+ * Execute a special page path.
+ * The path may contain parameters, e.g. Special:Name/Params
+ * Extracts the special page name and call the execute method, passing the parameters
+ *
+ * Returns a title object if the page is redirected, false if there was no such special
+ * page, and true if it was successful.
+ *
+ * @param $title Title object
+ * @param $context IContextSource
+ * @param $including Bool output is being captured for use in {{special:whatever}}
+ * @return Bool
+ * @deprecated since 1.18 call SpecialPageFactory method directly
+ */
+ public static function executePath( &$title, IContextSource &$context, $including = false ) {
+ wfDeprecated( __METHOD__, '1.18' );
+ return SpecialPageFactory::executePath( $title, $context, $including );
+ }
+
+ /**
+ * Get the local name for a specified canonical name
+ *
+ * @param $name String
+ * @param $subpage Mixed: boolean false, or string
+ *
+ * @return String
+ * @deprecated since 1.18 call SpecialPageFactory method directly
+ */
+ static function getLocalNameFor( $name, $subpage = false ) {
+ wfDeprecated( __METHOD__, '1.18' );
+ return SpecialPageFactory::getLocalNameFor( $name, $subpage );
+ }
+
+ /**
+ * Get a localised Title object for a specified special page name
+ *
+ * @param $name String
+ * @param string|Bool $subpage subpage string, or false to not use a subpage
+ * @param string $fragment the link fragment (after the "#")
+ * @throws MWException
+ * @return Title object
+ */
+ public static function getTitleFor( $name, $subpage = false, $fragment = '' ) {
+ $name = SpecialPageFactory::getLocalNameFor( $name, $subpage );
+ return Title::makeTitle( NS_SPECIAL, $name, $fragment );
+ }
+
+ /**
+ * Get a localised Title object for a page name with a possibly unvalidated subpage
+ *
+ * @param $name String
+ * @param string|Bool $subpage subpage string, or false to not use a subpage
+ * @return Title object or null if the page doesn't exist
+ */
+ public static function getSafeTitleFor( $name, $subpage = false ) {
+ $name = SpecialPageFactory::getLocalNameFor( $name, $subpage );
+ if ( $name ) {
+ return Title::makeTitleSafe( NS_SPECIAL, $name );
+ } else {
+ return null;
+ }
+ }
+
+ /**
+ * Get a title for a given alias
+ *
+ * @param $alias String
+ * @return Title or null if there is no such alias
+ * @deprecated since 1.18 call SpecialPageFactory method directly
+ */
+ static function getTitleForAlias( $alias ) {
+ wfDeprecated( __METHOD__, '1.18' );
+ return SpecialPageFactory::getTitleForAlias( $alias );
+ }
+
+ /**
+ * Default constructor for special pages
+ * Derivative classes should call this from their constructor
+ * Note that if the user does not have the required level, an error message will
+ * be displayed by the default execute() method, without the global function ever
+ * being called.
+ *
+ * If you override execute(), you can recover the default behavior with userCanExecute()
+ * and displayRestrictionError()
+ *
+ * @param string $name Name of the special page, as seen in links and URLs
+ * @param string $restriction User right required, e.g. "block" or "delete"
+ * @param bool $listed Whether the page is listed in Special:Specialpages
+ * @param Callback|Bool $function Function called by execute(). By default
+ * it is constructed from $name
+ * @param string $file File which is included by execute(). It is also
+ * constructed from $name by default
+ * @param bool $includable Whether the page can be included in normal pages
+ */
+ public function __construct(
+ $name = '', $restriction = '', $listed = true,
+ $function = false, $file = 'default', $includable = false
+ ) {
+ $this->init( $name, $restriction, $listed, $function, $file, $includable );
+ }
+
+ /**
+ * Do the real work for the constructor, mainly so __call() can intercept
+ * calls to SpecialPage()
+ * @param string $name Name of the special page, as seen in links and URLs
+ * @param string $restriction User right required, e.g. "block" or "delete"
+ * @param bool $listed Whether the page is listed in Special:Specialpages
+ * @param Callback|Bool $function Function called by execute(). By default
+ * it is constructed from $name
+ * @param string $file File which is included by execute(). It is also
+ * constructed from $name by default
+ * @param bool $includable Whether the page can be included in normal pages
+ */
+ private function init( $name, $restriction, $listed, $function, $file, $includable ) {
+ $this->mName = $name;
+ $this->mRestriction = $restriction;
+ $this->mListed = $listed;
+ $this->mIncludable = $includable;
+ if ( !$function ) {
+ $this->mFunction = 'wfSpecial' . $name;
+ } else {
+ $this->mFunction = $function;
+ }
+ if ( $file === 'default' ) {
+ $this->mFile = __DIR__ . "/specials/Special$name.php";
+ } else {
+ $this->mFile = $file;
+ }
+ }
+
+ /**
+ * Use PHP's magic __call handler to get calls to the old PHP4 constructor
+ * because PHP E_STRICT yells at you for having __construct() and SpecialPage()
+ *
+ * @param string $fName Name of called method
+ * @param array $a Arguments to the method
+ * @throws MWException
+ * @deprecated since 1.17, call parent::__construct()
+ */
+ public function __call( $fName, $a ) {
+ // Deprecated messages now, remove in 1.19 or 1.20?
+ wfDeprecated( __METHOD__, '1.17' );
+
+ // Sometimes $fName is SpecialPage, sometimes it's specialpage. <3 PHP
+ if ( strtolower( $fName ) == 'specialpage' ) {
+ $name = isset( $a[0] ) ? $a[0] : '';
+ $restriction = isset( $a[1] ) ? $a[1] : '';
+ $listed = isset( $a[2] ) ? $a[2] : true;
+ $function = isset( $a[3] ) ? $a[3] : false;
+ $file = isset( $a[4] ) ? $a[4] : 'default';
+ $includable = isset( $a[5] ) ? $a[5] : false;
+ $this->init( $name, $restriction, $listed, $function, $file, $includable );
+ } else {
+ $className = get_class( $this );
+ throw new MWException( "Call to undefined method $className::$fName" );
+ }
+ }
+
+ /**
+ * Get the name of this Special Page.
+ * @return String
+ */
+ function getName() {
+ return $this->mName;
+ }
+
+ /**
+ * Get the permission that a user must have to execute this page
+ * @return String
+ */
+ function getRestriction() {
+ return $this->mRestriction;
+ }
+
+ /**
+ * Get the file which will be included by SpecialPage::execute() if your extension is
+ * still stuck in the past and hasn't overridden the execute() method. No modern code
+ * should want or need to know this.
+ * @return String
+ * @deprecated since 1.18
+ */
+ function getFile() {
+ wfDeprecated( __METHOD__, '1.18' );
+ return $this->mFile;
+ }
+
+ // @todo FIXME: Decide which syntax to use for this, and stick to it
+ /**
+ * Whether this special page is listed in Special:SpecialPages
+ * @since r3583 (v1.3)
+ * @return Bool
+ */
+ function isListed() {
+ return $this->mListed;
+ }
+ /**
+ * Set whether this page is listed in Special:Specialpages, at run-time
+ * @since r3583 (v1.3)
+ * @param $listed Bool
+ * @return Bool
+ */
+ function setListed( $listed ) {
+ return wfSetVar( $this->mListed, $listed );
+ }
+ /**
+ * Get or set whether this special page is listed in Special:SpecialPages
+ * @since r11308 (v1.6)
+ * @param $x Bool
+ * @return Bool
+ */
+ function listed( $x = null ) {
+ return wfSetVar( $this->mListed, $x );
+ }
+
+ /**
+ * Whether it's allowed to transclude the special page via {{Special:Foo/params}}
+ * @return Bool
+ */
+ public function isIncludable() {
+ return $this->mIncludable;
+ }
+
+ /**
+ * These mutators are very evil, as the relevant variables should not mutate. So
+ * don't use them.
+ * @param $x Mixed
+ * @return Mixed
+ * @deprecated since 1.18
+ */
+ function name( $x = null ) {
+ wfDeprecated( __METHOD__, '1.18' );
+ return wfSetVar( $this->mName, $x );
+ }
+
+ /**
+ * These mutators are very evil, as the relevant variables should not mutate. So
+ * don't use them.
+ * @param $x Mixed
+ * @return Mixed
+ * @deprecated since 1.18
+ */
+ function restriction( $x = null ) {
+ wfDeprecated( __METHOD__, '1.18' );
+ return wfSetVar( $this->mRestriction, $x );
+ }
+
+ /**
+ * These mutators are very evil, as the relevant variables should not mutate. So
+ * don't use them.
+ * @param $x Mixed
+ * @return Mixed
+ * @deprecated since 1.18
+ */
+ function func( $x = null ) {
+ wfDeprecated( __METHOD__, '1.18' );
+ return wfSetVar( $this->mFunction, $x );
+ }
+
+ /**
+ * These mutators are very evil, as the relevant variables should not mutate. So
+ * don't use them.
+ * @param $x Mixed
+ * @return Mixed
+ * @deprecated since 1.18
+ */
+ function file( $x = null ) {
+ wfDeprecated( __METHOD__, '1.18' );
+ return wfSetVar( $this->mFile, $x );
+ }
+
+ /**
+ * These mutators are very evil, as the relevant variables should not mutate. So
+ * don't use them.
+ * @param $x Mixed
+ * @return Mixed
+ * @deprecated since 1.18
+ */
+ function includable( $x = null ) {
+ wfDeprecated( __METHOD__, '1.18' );
+ return wfSetVar( $this->mIncludable, $x );
+ }
+
+ /**
+ * Whether the special page is being evaluated via transclusion
+ * @param $x Bool
+ * @return Bool
+ */
+ function including( $x = null ) {
+ return wfSetVar( $this->mIncluding, $x );
+ }
+
+ /**
+ * Get the localised name of the special page
+ */
+ function getLocalName() {
+ if ( !isset( $this->mLocalName ) ) {
+ $this->mLocalName = SpecialPageFactory::getLocalNameFor( $this->mName );
+ }
+ return $this->mLocalName;
+ }
+
+ /**
+ * Is this page expensive (for some definition of expensive)?
+ * Expensive pages are disabled or cached in miser mode. Originally used
+ * (and still overridden) by QueryPage and subclasses, moved here so that
+ * Special:SpecialPages can safely call it for all special pages.
+ *
+ * @return Boolean
+ */
+ public function isExpensive() {
+ return false;
+ }
+
+ /**
+ * Is this page cached?
+ * Expensive pages are cached or disabled in miser mode.
+ * Used by QueryPage and subclasses, moved here so that
+ * Special:SpecialPages can safely call it for all special pages.
+ *
+ * @return Boolean
+ * @since 1.21
+ */
+ public function isCached() {
+ return false;
+ }
+
+ /**
+ * Can be overridden by subclasses with more complicated permissions
+ * schemes.
+ *
+ * @return Boolean: should the page be displayed with the restricted-access
+ * pages?
+ */
+ public function isRestricted() {
+ // DWIM: If anons can do something, then it is not restricted
+ return $this->mRestriction != '' && !User::groupHasPermission( '*', $this->mRestriction );
+ }
+
+ /**
+ * Checks if the given user (identified by an object) can execute this
+ * special page (as defined by $mRestriction). Can be overridden by sub-
+ * classes with more complicated permissions schemes.
+ *
+ * @param $user User: the user to check
+ * @return Boolean: does the user have permission to view the page?
+ */
+ public function userCanExecute( User $user ) {
+ return $user->isAllowed( $this->mRestriction );
+ }
+
+ /**
+ * Output an error message telling the user what access level they have to have
+ */
+ function displayRestrictionError() {
+ throw new PermissionsError( $this->mRestriction );
+ }
+
+ /**
+ * Checks if userCanExecute, and if not throws a PermissionsError
+ *
+ * @since 1.19
+ */
+ public function checkPermissions() {
+ if ( !$this->userCanExecute( $this->getUser() ) ) {
+ $this->displayRestrictionError();
+ }
+ }
+
+ /**
+ * If the wiki is currently in readonly mode, throws a ReadOnlyError
+ *
+ * @since 1.19
+ * @throws ReadOnlyError
+ */
+ public function checkReadOnly() {
+ if ( wfReadOnly() ) {
+ throw new ReadOnlyError;
+ }
+ }
+
+ /**
+ * If the user is not logged in, throws UserNotLoggedIn error.
+ *
+ * Default error message includes a link to Special:Userlogin with properly set 'returnto' query
+ * parameter.
+ *
+ * @since 1.23
+ * @param string|Message $reasonMsg [optional] Passed on to UserNotLoggedIn constructor. Strings
+ * will be used as message keys. If a string is given, the message will also receive a
+ * formatted login link (generated using the 'loginreqlink' message) as first parameter. If a
+ * Message is given, it will be passed on verbatim.
+ * @param string|Message $titleMsg [optional] Passed on to UserNotLoggedIn constructor. Strings
+ * will be used as message keys.
+ * @throws UserNotLoggedIn
+ */
+ public function requireLogin( $reasonMsg = null, $titleMsg = null ) {
+ if ( $this->getUser()->isAnon() ) {
+ // Use default messages if not given or explicit null passed
+ if ( !$reasonMsg ) {
+ $reasonMsg = 'exception-nologin-text-manual';
+ }
+ if ( !$titleMsg ) {
+ $titleMsg = 'exception-nologin';
+ }
+
+ // Convert to Messages with current context
+ if ( is_string( $reasonMsg ) ) {
+ $loginreqlink = Linker::linkKnown(
+ SpecialPage::getTitleFor( 'Userlogin' ),
+ $this->msg( 'loginreqlink' )->escaped(),
+ array(),
+ array( 'returnto' => $this->getTitle()->getPrefixedText() )
+ );
+ $reasonMsg = $this->msg( $reasonMsg )->rawParams( $loginreqlink );
+ }
+ if ( is_string( $titleMsg ) ) {
+ $titleMsg = $this->msg( $titleMsg );
+ }
+
+ throw new UserNotLoggedIn( $reasonMsg, $titleMsg );
+ }
+ }
+
+ /**
+ * Sets headers - this should be called from the execute() method of all derived classes!
+ */
+ function setHeaders() {
+ $out = $this->getOutput();
+ $out->setArticleRelated( false );
+ $out->setRobotPolicy( "noindex,nofollow" );
+ $out->setPageTitle( $this->getDescription() );
+ }
+
+ /**
+ * Entry point.
+ *
+ * @since 1.20
+ *
+ * @param $subPage string|null
+ */
+ final public function run( $subPage ) {
+ /**
+ * Gets called before @see SpecialPage::execute.
+ *
+ * @since 1.20
+ *
+ * @param $special SpecialPage
+ * @param $subPage string|null
+ */
+ wfRunHooks( 'SpecialPageBeforeExecute', array( $this, $subPage ) );
+
+ $this->beforeExecute( $subPage );
+ $this->execute( $subPage );
+ $this->afterExecute( $subPage );
+
+ /**
+ * Gets called after @see SpecialPage::execute.
+ *
+ * @since 1.20
+ *
+ * @param $special SpecialPage
+ * @param $subPage string|null
+ */
+ wfRunHooks( 'SpecialPageAfterExecute', array( $this, $subPage ) );
+ }
+
+ /**
+ * Gets called before @see SpecialPage::execute.
+ *
+ * @since 1.20
+ *
+ * @param $subPage string|null
+ */
+ protected function beforeExecute( $subPage ) {
+ // No-op
+ }
+
+ /**
+ * Gets called after @see SpecialPage::execute.
+ *
+ * @since 1.20
+ *
+ * @param $subPage string|null
+ */
+ protected function afterExecute( $subPage ) {
+ // No-op
+ }
+
+ /**
+ * Default execute method
+ * Checks user permissions, calls the function given in mFunction
+ *
+ * This must be overridden by subclasses; it will be made abstract in a future version
+ *
+ * @param $subPage string|null
+ */
+ public function execute( $subPage ) {
+ $this->setHeaders();
+ $this->checkPermissions();
+
+ $func = $this->mFunction;
+ // only load file if the function does not exist
+ if ( !is_callable( $func ) && $this->mFile ) {
+ require_once $this->mFile;
+ }
+ $this->outputHeader();
+ call_user_func( $func, $subPage, $this );
+ }
+
+ /**
+ * Outputs a summary message on top of special pages
+ * Per default the message key is the canonical name of the special page
+ * May be overridden, i.e. by extensions to stick with the naming conventions
+ * for message keys: 'extensionname-xxx'
+ *
+ * @param string $summaryMessageKey message key of the summary
+ */
+ function outputHeader( $summaryMessageKey = '' ) {
+ global $wgContLang;
+
+ if ( $summaryMessageKey == '' ) {
+ $msg = $wgContLang->lc( $this->getName() ) . '-summary';
+ } else {
+ $msg = $summaryMessageKey;
+ }
+ if ( !$this->msg( $msg )->isDisabled() && !$this->including() ) {
+ $this->getOutput()->wrapWikiMsg(
+ "<div class='mw-specialpage-summary'>\n$1\n</div>", $msg );
+ }
+
+ }
+
+ /**
+ * Returns the name that goes in the \<h1\> in the special page itself, and
+ * also the name that will be listed in Special:Specialpages
+ *
+ * Derived classes can override this, but usually it is easier to keep the
+ * default behavior. Messages can be added at run-time, see
+ * MessageCache.php.
+ *
+ * @return String
+ */
+ function getDescription() {
+ return $this->msg( strtolower( $this->mName ) )->text();
+ }
+
+ /**
+ * Get a self-referential title object
+ *
+ * @param $subpage String|Bool
+ * @return Title object
+ */
+ function getTitle( $subpage = false ) {
+ return self::getTitleFor( $this->mName, $subpage );
+ }
+
+ /**
+ * Sets the context this SpecialPage is executed in
+ *
+ * @param $context IContextSource
+ * @since 1.18
+ */
+ public function setContext( $context ) {
+ $this->mContext = $context;
+ }
+
+ /**
+ * Gets the context this SpecialPage is executed in
+ *
+ * @return IContextSource|RequestContext
+ * @since 1.18
+ */
+ public function getContext() {
+ if ( $this->mContext instanceof IContextSource ) {
+ return $this->mContext;
+ } else {
+ wfDebug( __METHOD__ . " called and \$mContext is null. " .
+ "Return RequestContext::getMain(); for sanity\n" );
+ return RequestContext::getMain();
+ }
+ }
+
+ /**
+ * Get the WebRequest being used for this instance
+ *
+ * @return WebRequest
+ * @since 1.18
+ */
+ public function getRequest() {
+ return $this->getContext()->getRequest();
+ }
+
+ /**
+ * Get the OutputPage being used for this instance
+ *
+ * @return OutputPage
+ * @since 1.18
+ */
+ public function getOutput() {
+ return $this->getContext()->getOutput();
+ }
+
+ /**
+ * Shortcut to get the User executing this instance
+ *
+ * @return User
+ * @since 1.18
+ */
+ public function getUser() {
+ return $this->getContext()->getUser();
+ }
+
+ /**
+ * Shortcut to get the skin being used for this instance
+ *
+ * @return Skin
+ * @since 1.18
+ */
+ public function getSkin() {
+ return $this->getContext()->getSkin();
+ }
+
+ /**
+ * Shortcut to get user's language
+ *
+ * @deprecated since 1.19 Use getLanguage instead
+ * @return Language
+ * @since 1.18
+ */
+ public function getLang() {
+ wfDeprecated( __METHOD__, '1.19' );
+ return $this->getLanguage();
+ }
+
+ /**
+ * Shortcut to get user's language
+ *
+ * @return Language
+ * @since 1.19
+ */
+ public function getLanguage() {
+ return $this->getContext()->getLanguage();
+ }
+
+ /**
+ * Return the full title, including $par
+ *
+ * @return Title
+ * @since 1.18
+ */
+ public function getFullTitle() {
+ return $this->getContext()->getTitle();
+ }
+
+ /**
+ * Wrapper around wfMessage that sets the current context.
+ *
+ * @return Message
+ * @see wfMessage
+ */
+ public function msg( /* $args */ ) {
+ $message = call_user_func_array(
+ array( $this->getContext(), 'msg' ),
+ func_get_args()
+ );
+ // RequestContext passes context to wfMessage, and the language is set from
+ // the context, but setting the language for Message class removes the
+ // interface message status, which breaks for example usernameless gender
+ // invocations. Restore the flag when not including special page in content.
+ if ( $this->including() ) {
+ $message->setInterfaceMessageFlag( false );
+ }
+ return $message;
+ }
+
+ /**
+ * Adds RSS/atom links
+ *
+ * @param $params array
+ */
+ protected function addFeedLinks( $params ) {
+ global $wgFeedClasses;
+
+ $feedTemplate = wfScript( 'api' );
+
+ foreach ( $wgFeedClasses as $format => $class ) {
+ $theseParams = $params + array( 'feedformat' => $format );
+ $url = wfAppendQuery( $feedTemplate, $theseParams );
+ $this->getOutput()->addFeedLink( $format, $url );
+ }
+ }
+
+ /**
+ * Get the group that the special page belongs in on Special:SpecialPage
+ * Use this method, instead of getGroupName to allow customization
+ * of the group name from the wiki side
+ *
+ * @return string Group of this special page
+ * @since 1.21
+ */
+ public function getFinalGroupName() {
+ global $wgSpecialPageGroups;
+ $name = $this->getName();
+
+ // Allow overbidding the group from the wiki side
+ $msg = $this->msg( 'specialpages-specialpagegroup-' . strtolower( $name ) )->inContentLanguage();
+ if ( !$msg->isBlank() ) {
+ $group = $msg->text();
+ } else {
+ // Than use the group from this object
+ $group = $this->getGroupName();
+
+ // Group '-' is used as default to have the chance to determine,
+ // if the special pages overrides this method,
+ // if not overridden, $wgSpecialPageGroups is checked for b/c
+ if ( $group === '-' && isset( $wgSpecialPageGroups[$name] ) ) {
+ $group = $wgSpecialPageGroups[$name];
+ }
+ }
+
+ // never give '-' back, change to 'other'
+ if ( $group === '-' ) {
+ $group = 'other';
+ }
+
+ return $group;
+ }
+
+ /**
+ * Under which header this special page is listed in Special:SpecialPages
+ * See messages 'specialpages-group-*' for valid names
+ * This method defaults to group 'other'
+ *
+ * @return string
+ * @since 1.21
+ */
+ protected function getGroupName() {
+ // '-' used here to determine, if this group is overridden or has a hardcoded 'other'
+ // Needed for b/c in getFinalGroupName
+ return '-';
+ }
+}
--- /dev/null
+<?php
+/**
+ * Shortcut to construct a special page which is unlisted by default.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ * http://www.gnu.org/copyleft/gpl.html
+ *
+ * @file
+ * @ingroup SpecialPage
+ */
+
+/**
+ * Shortcut to construct a special page which is unlisted by default.
+ *
+ * @ingroup SpecialPage
+ */
+class UnlistedSpecialPage extends SpecialPage {
+ function __construct( $name, $restriction = '', $function = false, $file = 'default' ) {
+ parent::__construct( $name, $restriction, false, $function, $file );
+ }
+
+ public function isListed() {
+ return false;
+ }
+}
--- /dev/null
+<?php
+/**
+ * Redirect page: Special:CreateAccount --> Special:UserLogin/signup.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ * http://www.gnu.org/copyleft/gpl.html
+ *
+ * @file
+ * @ingroup SpecialPage
+ */
+
+/**
+ * Redirect page: Special:CreateAccount --> Special:UserLogin/signup.
+ * @todo FIXME: This (and the rest of the login frontend) needs to die a horrible painful death
+ *
+ * @ingroup SpecialPage
+ */
+
+class SpecialCreateAccount extends SpecialRedirectToSpecial {
+ function __construct() {
+ parent::__construct( 'CreateAccount', 'Userlogin', 'signup', array( 'returnto', 'returntoquery', 'uselang' ) );
+ }
+
+ // No reason to hide this link on Special:Specialpages
+ public function isListed() {
+ return true;
+ }
+
+ protected function getGroupName() {
+ return 'login';
+ }
+}
return 'users';
}
}
+
+/**
+ * Redirect page: Special:ListAdmins --> Special:ListUsers/sysop.
+ *
+ * @ingroup SpecialPage
+ */
+class SpecialListAdmins extends SpecialRedirectToSpecial {
+ function __construct() {
+ parent::__construct( 'Listadmins', 'Listusers', 'sysop' );
+ }
+}
+
+/**
+ * Redirect page: Special:ListBots --> Special:ListUsers/bot.
+ *
+ * @ingroup SpecialPage
+ */
+class SpecialListBots extends SpecialRedirectToSpecial {
+ function __construct() {
+ parent::__construct( 'Listbots', 'Listusers', 'bot' );
+ }
+}
--- /dev/null
+<?php
+/**
+ * Special pages that are used to get user independent links pointing to
+ * current user's pages (user page, talk page, contributions, etc.).
+ * This can let us cache a single copy of some generated content for all
+ * users or be linked in wikitext help pages.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ * http://www.gnu.org/copyleft/gpl.html
+ *
+ * @file
+ * @ingroup SpecialPage
+ */
+
+/**
+ * Special page pointing to current user's user page.
+ *
+ * @ingroup SpecialPage
+ */
+class SpecialMypage extends RedirectSpecialArticle {
+ function __construct() {
+ parent::__construct( 'Mypage' );
+ }
+
+ function getRedirect( $subpage ) {
+ if ( strval( $subpage ) !== '' ) {
+ return Title::makeTitle( NS_USER, $this->getUser()->getName() . '/' . $subpage );
+ } else {
+ return Title::makeTitle( NS_USER, $this->getUser()->getName() );
+ }
+ }
+}
+
+/**
+ * Special page pointing to current user's talk page.
+ *
+ * @ingroup SpecialPage
+ */
+class SpecialMytalk extends RedirectSpecialArticle {
+ function __construct() {
+ parent::__construct( 'Mytalk' );
+ }
+
+ function getRedirect( $subpage ) {
+ if ( strval( $subpage ) !== '' ) {
+ return Title::makeTitle( NS_USER_TALK, $this->getUser()->getName() . '/' . $subpage );
+ } else {
+ return Title::makeTitle( NS_USER_TALK, $this->getUser()->getName() );
+ }
+ }
+}
+
+/**
+ * Special page pointing to current user's contributions.
+ *
+ * @ingroup SpecialPage
+ */
+class SpecialMycontributions extends RedirectSpecialPage {
+ function __construct() {
+ parent::__construct( 'Mycontributions' );
+ $this->mAllowedRedirectParams = array( 'limit', 'namespace', 'tagfilter',
+ 'offset', 'dir', 'year', 'month', 'feed' );
+ }
+
+ function getRedirect( $subpage ) {
+ return SpecialPage::getTitleFor( 'Contributions', $this->getUser()->getName() );
+ }
+}
+
+/**
+ * Special page pointing to current user's uploaded files.
+ *
+ * @ingroup SpecialPage
+ */
+class SpecialMyuploads extends RedirectSpecialPage {
+ function __construct() {
+ parent::__construct( 'Myuploads' );
+ $this->mAllowedRedirectParams = array( 'limit', 'ilshowall', 'ilsearch' );
+ }
+
+ function getRedirect( $subpage ) {
+ return SpecialPage::getTitleFor( 'Listfiles', $this->getUser()->getName() );
+ }
+}
+
+/**
+ * Special page pointing to current user's uploaded files (including old versions).
+ *
+ * @ingroup SpecialPage
+ */
+class SpecialAllMyUploads extends RedirectSpecialPage {
+ function __construct() {
+ parent::__construct( 'AllMyUploads' );
+ $this->mAllowedRedirectParams = array( 'limit', 'ilsearch' );
+ }
+
+ function getRedirect( $subpage ) {
+ $this->mAddedRedirectParams['ilshowall'] = 1;
+ return SpecialPage::getTitleFor( 'Listfiles', $this->getUser()->getName() );
+ }
+}
$username = $this->opts->getValue( 'username' );
$user = Title::makeTitleSafe( NS_USER, $username );
+ $rcIndexes = array();
+
if ( $namespace !== false ) {
if ( $this->opts->getValue( 'invert' ) ) {
$conds[] = 'rc_namespace != ' . $this->mDb->addQuotes( $namespace );
} else {
$conds['rc_namespace'] = $namespace;
}
- $rcIndexes = array( 'new_name_timestamp' );
- } else {
- $rcIndexes = array( 'rc_timestamp' );
}
# $wgEnableNewpagesUserFilter - temp WMF hack
wfRunHooks( 'SpecialNewpagesConditions',
array( &$this, $this->opts, &$conds, &$tables, &$fields, &$join_conds ) );
+ $options = array();
+
+ if ( $rcIndexes ) {
+ $options = array( 'USE INDEX' => array( 'recentchanges' => $rcIndexes ) );
+ }
+
$info = array(
'tables' => $tables,
'fields' => $fields,
'conds' => $conds,
- 'options' => array( 'USE INDEX' => array( 'recentchanges' => $rcIndexes ) ),
+ 'options' => $options,
'join_conds' => $join_conds
);
--- /dev/null
+<?php
+/**
+ * Redirect from Special:PermanentLink/### to index.php?oldid=###.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ * http://www.gnu.org/copyleft/gpl.html
+ *
+ * @file
+ * @ingroup SpecialPage
+ */
+
+/**
+ * Redirect from Special:PermanentLink/### to index.php?oldid=###.
+ *
+ * @ingroup SpecialPage
+ */
+class SpecialPermanentLink extends RedirectSpecialPage {
+ function __construct() {
+ parent::__construct( 'PermanentLink' );
+ $this->mAllowedRedirectParams = array();
+ }
+
+ function getRedirect( $subpage ) {
+ $subpage = intval( $subpage );
+ if ( $subpage === 0 ) {
+ # throw an error page when no subpage was given
+ throw new ErrorPageError( 'nopagetitle', 'nopagetext' );
+ }
+ $this->mAddedRedirectParams['oldid'] = $subpage;
+ return true;
+ }
+}
public function doMainQuery( $conds, $opts ) {
$tables = array( 'recentchanges' );
$join_conds = array();
- $query_options = array(
- 'USE INDEX' => array( 'recentchanges' => 'rc_timestamp' )
- );
+ $query_options = array();
$uid = $this->getUser()->getId();
$dbr = wfGetDB( DB_SLAVE );
// prev/next links
if ( $num || $this->offset ) {
// Show the create link ahead
- $this->showCreateLink( $t );
+ $this->showCreateLink( $t, $num );
$prevnext = $this->getLanguage()->viewPrevNext( $this->getTitle(), $this->offset, $this->limit,
$this->powerSearchOptions() + array( 'search' => $term ),
max( $titleMatchesNum, $textMatchesNum ) < $this->limit
} else {
$out->wrapWikiMsg( "<p class=\"mw-search-nonefound\">\n$1</p>",
array( 'search-nonefound', wfEscapeWikiText( $term ) ) );
- $this->showCreateLink( $t );
+ $this->showCreateLink( $t, $num );
}
}
$out->addHtml( "</div>" );
/**
* @param $t Title
+ * @param int $num The number of search results found
*/
- protected function showCreateLink( $t ) {
+ protected function showCreateLink( $t, $num ) {
// show direct page/create link if applicable
// Check DBkey !== '' in case of fragment link only.
} else {
$messageName = 'searchmenu-new-nocreate';
}
- $params = array( $messageName, wfEscapeWikiText( $t->getPrefixedText() ) );
+ $params = array( $messageName, wfEscapeWikiText( $t->getPrefixedText() ), Message::numParam( $num ) );
wfRunHooks( 'SpecialSearchCreateLink', array( $t, &$params ) );
// Extensions using the hook might still return an empty $messageName
'tog-minordefault' => 'Bôh tanda mandum neuandam sibagoe neuandam bacut ngön baku',
'tog-previewontop' => 'Peuleumah hasé yôh goh plôk andam',
'tog-previewonfirst' => 'Peuleumah hasé bak neuandam phôn',
-'tog-nocache' => 'Pumaté pumeugöt beun laman peuramban nyoe',
'tog-enotifwatchlistpages' => "Peu'ék surat-e keu lôn meunyo saboh halaman nyang lôn kalon meuubah",
'tog-enotifusertalkpages' => "Peu'ek keu lôn surat-e meunyo ôn marit lôn meuubah",
'tog-enotifminoredits' => "Peu'ék cit surat-e keu lôn bak neuubah ubit",
'youhavenewmessages' => 'Droëneuh na $1 ($2).',
'youhavenewmessagesfromusers' => "Droeneuh na $1 nibak {{PLURAL:$3|ureueng nguy la'en|$3 ureueng nguy}} ($2).",
'youhavenewmessagesmanyusers' => "Droeneuh na $1 nibak ureueng nguy la'en ($2)",
-'newmessageslinkplural' => '{{PLURAL:$1|saboh peusan baro|peusan baro}}',
-'newmessagesdifflinkplural' => '{{PLURAL:$1|neuubah}} keuneulheuëh',
+'newmessageslinkplural' => '{{PLURAL:$1|saboh peusan barô|999=peusan barô}}',
+'newmessagesdifflinkplural' => '{{PLURAL:$1|neuubah|999=neuubah}} seuneulheuëh',
'youhavenewmessagesmulti' => 'Droëneuh na padum boh peusan barô bak $1',
'editsection' => 'andam',
'editold' => 'andam',
Dalèhjih nakeuh "\'\'$2\'\'".',
'invalidtitle-knownnamespace' => 'Nan nyang hana sah ngön ruweueng nan "$2" ngön "$3"',
'exception-nologin' => 'Hana tamöng lom',
-'exception-nologin-text' => 'halaman atawa buët nyoe beu neutamöng dilèë bak wiki nyoe.',
+'exception-nologin-text' => 'Droëneuh suwah [[Special:Userlogin|neutamöng]] mangat jeuët neupeuhah laman nyoë',
# Virus scanner
'virus-unknownscanner' => 'Antivirus hana meuturi:',
'sectioneditnotsupported-title' => 'Andam bideung hana meudukông',
'sectioneditnotsupported-text' => 'Andam bideung hana meudukông bak ôn nyoe.',
'permissionserrors' => 'Salah khut/hak tamöng',
-'permissionserrorstext' => 'Droëneuh hana hak tamöng keu $2, muroë {{PLURAL:$1|choë|choë}} nyoë:',
+'permissionserrorstext' => 'Droëneuh hana geupeuidin keu neupubuët nyoë, muroë {{PLURAL:$1|dalèh}} nyoë:',
'permissionserrorstext-withaction' => 'Droëneuh hana hak tamöng keu $2, muroë {{PLURAL:$1|choë|choë}} nyoë:',
'recreate-moveddeleted-warn' => "'''Ingat: Droëneuh neupeugöt ulang saboh laman nyang ka tom geusampôh. ''',
'revdelete-show-file-submit' => 'Nyoe',
'revdelete-hide-comment' => 'Mohtasa neuandam',
'revdelete-radio-same' => '(bèk neugantoe)',
-'revdelete-radio-set' => 'Deuh',
-'revdelete-radio-unset' => 'Teusom',
+'revdelete-radio-set' => 'Teusom',
+'revdelete-radio-unset' => 'Deuih',
'revdelete-log' => 'Dalèh:',
'revdel-restore' => 'Gantoë seuneudeuih',
'pagehist' => 'Taréh laman',
'yourlanguage' => 'Bahsa:',
'yournick' => 'Tanda jaroe barô:',
'prefs-help-signature' => 'Komèntar bak ôn marit suwah neubôh "<nowiki>~~~~</nowiki>", nyang eunteuk meugantoe keu tanda jaroe droeneuh ngön watèe jinoe.',
-'badsiglength' => 'Tanda jaroe droeneuh panyang that.
+'badsiglength' => 'Tanda jaroë droëneuh panyang that.
Panyangjih bèk leubèh nibak $1 {{PLURAL:$1|haraih|haraih}}.',
'gender-unknown' => 'Hana geupeunyata',
'gender-male' => 'Ureueng agam',
'recentchanges-label-minor' => 'Nyoe neuandam ubeut',
'recentchanges-label-bot' => 'Neuandam nyoe geupubuet le bot',
'recentchanges-label-unpatrolled' => 'Neuandam nyoe goh lom geukalon',
-'rcnote' => "Di yup nyoë nakeuh {{PLURAL:$1|nakeuh '''1''' neu’ubah barô |nakeuh '''$1''' neu’ubah barô}} lam {{PLURAL:$2|'''1''' uroë|'''$2''' uroë}} nyoë, trôk ‘an $5, $4.",
'rcnotefrom' => 'Di yup nyoë nakeuh neuubah yôh <strong>$2</strong> (geupeudeuh trôh ‘an <strong>$1</strong> neuubah).',
'rclistfrom' => 'Peudeuih neuubah barô yôh $1 kön',
'rcshowhideminor' => '$1 andam bacut',
'minoreditletter' => 'b',
'newpageletter' => 'B',
'boteditletter' => 'b',
-'number_of_watching_users_pageview' => '[$1 {{PLURAL:$1|ureueng kalön|ureueng kalön}}]',
+'number_of_watching_users_pageview' => '[$1 kalön {{PLURAL:$1|ureuëng ngui}}]',
'rc_categories_any' => 'Pue-pue mantöng',
-'rc-change-size-new' => '$1 {{PLURAL:$1|bita|bita}} lheuh meuandam',
+'rc-change-size-new' => '$1 {{PLURAL:$1|bita}} lheuëh neuubah',
'newsectionsummary' => '/* $1 */ bideung barô',
'rc-enhanced-expand' => 'Peuleumah rincian',
'rc-enhanced-hide' => 'Peusom rincian',
# Special:ActiveUsers
'activeusers' => 'Dapeuta ureueng ngui udép',
-'activeusers-intro' => 'Nyoe nakeuh dapeuta ureueng ngui nyang na geuandam $1 {{PLURAL:$1|uroe|uroe}} u likôt.',
-'activeusers-count' => '$1 {{PLURAL:$1|buet|buet}} lam {{PLURAL:$3|uroe|$3 uroe}} u likôt',
+'activeusers-intro' => 'Nyoë nakeuh dapeuta ureuëng ngui nyang na geuteumuléh lam $1 {{PLURAL:$1|uroë}} nyoë.',
+'activeusers-count' => '$1 {{PLURAL:$1|buet}} lam {{PLURAL:$3|uroë|$3 uroë}} nyoë',
'activeusers-from' => 'Peuleumah ureueng ngui nyang neuawai ngön:',
'activeusers-hidebots' => 'Peusom bot',
'activeusers-hidesysops' => 'Peusom ureueng urôh',
* <span class="listgrouprights-revoked">Khut nyang hana geubri</span>',
'listgrouprights-group' => 'Kawan',
'listgrouprights-rights' => 'Khut',
-'listgrouprights-helppage' => 'Beunantu:Khut kawan',
+'listgrouprights-helppage' => 'Help:Khut kawan',
'listgrouprights-members' => '(dapeuta anggèëta)',
-'listgrouprights-addgroup' => 'Tamah {{PLURAL:$2|kawan|kawan}}: $1',
-'listgrouprights-removegroup' => 'Sampôh {{PLURAL:$2|kawan|kawan}}: $1',
+'listgrouprights-addgroup' => 'Tamah {{PLURAL:$2|kawan}}: $1',
+'listgrouprights-removegroup' => 'Sampôh {{PLURAL:$2|kawan}}: $1',
'listgrouprights-addgroup-all' => 'Tamah ban dum kawan',
'listgrouprights-removegroup-all' => 'Sampôh ban dum kawan',
'watchlist' => 'Dapeuta keunalön',
'mywatchlist' => 'Keunalön',
'watchlistfor2' => 'Keu $1 $2',
-'addedwatchtext' => "Ôn \"[[:\$1]]\" ka geupeutamah u [[Special:Watchlist|dapeuta keunalön]] Droëneuh. Neu’ubah-neu’ubah bak masa u keuë bak ôn nyan ngön bak ôn peugah habajih, euntreuk leumah nyoë pat. Ôn nyan euntreuk geupeuleumah ''teubay'' bak [[Special:RecentChanges|dapeuta neu’ubah paléng barô]] mangat leubèh mudah leumah.",
+'addedwatchtext' => 'Laman "[[:$1]]" ka geupeutamah u [[Special:Watchlist|dapeuta kalön]] droëneuh.
+Neuubah u keuë bak laman nyoë ngön laman marit nyang na teukaw\'èt, euntreuk geupeudeuih sinoë.',
'removedwatchtext' => 'Ôn "[[:$1]]" ka geusampôh nibak [[Special:Watchlist|dapeuta keunalön]] Droëneuh.',
'watch' => 'Kalön',
'watchthispage' => 'Kalön ôn nyoë',
# Special:SpecialPages
'specialpages' => 'Laman kusuih',
-'specialpages-note' => '* Laman kusuih lagèë biasa.
-* <span class="mw-specialpagerestricted">Laman kusuih meuhat.</span>',
+'specialpages-note' => '* Laman kusuih biasa.
+* <span class="mw-specialpagerestricted">Laman kusuih geutheun.</span>',
'specialpages-group-maintenance' => 'Beuneuri thèë plara',
'specialpages-group-other' => "La'én-la'én",
'specialpages-group-login' => 'Tamöng / dapeuta',
'tog-minordefault' => 'علم كل التعديلات طفيفة افتراضيا',
'tog-previewontop' => 'أظهر العرض المسبق قبل صندوق التحرير',
'tog-previewonfirst' => 'أظهر معاينة مع أول تعديل',
-'tog-nocache' => 'عطّل تخزين المتصفح للصفحة',
'tog-enotifwatchlistpages' => 'أرسل لي رسالة إلكترونية عندما تُغيّر صفحة أو ملف في قائمة مراقبتي',
'tog-enotifusertalkpages' => 'أرسل لي رسالة إلكترونية عندما تعدل صفحة نقاشي',
'tog-enotifminoredits' => 'أرسل لي رسالة إلكترونية عن التعديلات الطفيفة للصفحات والملفات أيضا',
'recentchanges-label-minor' => 'هذا تعديل طفيف',
'recentchanges-label-bot' => 'أجرى هذا التعديل بوت',
'recentchanges-label-unpatrolled' => 'لم يراجع هذا التعديل إلى الآن',
-'rcnote' => "بالأسفل {{PLURAL:$1|لا توجد تغييرات|التغيير الأخير|آخر تغييرين|آخر '''$1''' تغييرات|آخر '''$1''' تغييرا|آخر '''$1''' تغيير}} في {{PLURAL:$2||'''اليوم''' الماضي|'''اليومين''' الماضيين|ال'''$2''' أيام الماضية|ال'''$2''' يوما الماضيا|ال'''$2''' يوم الماضي}}، كما في $5، $4.",
'rcnotefrom' => "بالأسفل التغييرات منذ '''$2''' (إلى '''$1''' معروضة).",
'rclistfrom' => 'أظهر التغييرات بدءا من $1',
'rcshowhideminor' => '$1 التعديلات الطفيفة',
'tog-minordefault' => 'Merk alle wysigings automaties as klein by verstek.',
'tog-previewontop' => 'Wys voorskou bo wysigingsboks.',
'tog-previewonfirst' => 'Wys voorskou met eerste wysiging',
-'tog-nocache' => 'Deaktiveer blaaier se bladsykas',
'tog-enotifwatchlistpages' => "Stuur my e-pos as 'n bladsye of lêer op my dophoulys verander",
'tog-enotifusertalkpages' => 'Stuur vir my e-pos as my eie besprekingsblad verander word',
'tog-enotifminoredits' => 'Stuur ook e-pos vir klein wysigings aan bladsye en lêers',
'recentchanges-label-bot' => "Hierdie wysiging was deur 'n bot uitgevoer",
'recentchanges-label-unpatrolled' => 'Die wysiging is nog nie gekontroleer nie',
'recentchanges-legend-newpage' => '$1 - nuwe bladsy',
-'rcnote' => "Hier volg die laaste {{PLURAL:$1|'''$1''' wysiging|'''$1''' wysigings}} gedurende die afgelope {{PLURAL:$2|dag|'''$2''' dae}}, soos vanaf $4 om $5.",
'rcnotefrom' => "Hier volg wysigings sedert '''$2''' (maksimum van '''$1''' word gewys).",
'rclistfrom' => 'Vertoon wysigings vanaf $1',
'rcshowhideminor' => '$1 klein wysigings',
'undeletebtn' => 'Plaas terug',
'undeletelink' => 'wys/herstel',
'undeleteviewlink' => 'bekyk',
-'undeletereset' => 'Herinstel',
'undeleteinvert' => 'Omgekeerde seleksie',
'undeletecomment' => 'Rede:',
'undeletedrevisions' => '{{PLURAL:$1|1 weergawe|$1 weergawes}} herstel',
'block' => 'Blok gebruiker',
'unblock' => 'Deblokkeer gebruiker',
'blockip' => 'Blokkeer gebruiker',
-'blockip-title' => 'Blokkeer gebruiker',
'blockip-legend' => 'Blokkeer gebruiker of IP-adres',
'blockiptext' => "Gebruik die vorm hier onder om skryftoegang vir 'n gebruiker of IP-adres in te trek.
Dit mag slegs as beskerming teen vandalisme en in ooreenstemming met die [[{{MediaWiki:Policy-url}}|beleid]] gedoen word.
'ipadressorusername' => 'IP-adres of gebruikersnaam:',
'ipbexpiry' => 'Duur:',
'ipbreason' => 'Rede:',
-'ipbreasonotherlist' => 'Ander rede',
'ipbreason-dropdown' => '*Algemene redes vir versperring
** Invoeg van valse inligting
** Skrap van bladsyinhoud
'ipbsubmit' => 'Versper hierdie gebruiker',
'ipbother' => 'Ander tydperk:',
'ipboptions' => '2 ure:2 hours,1 dag:1 day,3 dae:3 days,1 week:1 week,2 weke:2 weeks,1 maand:1 month,3 maande:3 months,6 maande:6 months,1 jaar:1 year,onbeperk:infinite',
-'ipbotheroption' => 'ander',
-'ipbotherreason' => 'Ander/ekstra rede:',
'ipbhidename' => 'Verberg gebruiker van wysigings en lyste',
'ipbwatchuser' => 'Hou die gebruiker se bladsy en besprekingsbladsy dop.',
'ipb-disableusertalk' => 'Voorkom dat die gebruiker tydens die blokkade sy eie besprekingsblad kan wysig',
'sorbs_create_account_reason' => "U IP-adres is gelys as 'n oop instaanbediener (proxy) in die DNS-swartlys wat op {{SITENAME}} gebruik word.
U kan nie 'n rekening skep nie.",
'xffblockreason' => "'n IP-adres wat u gebruik is geblokkeer. Dit kom in die opskrif 'X-Forwarded-For' voor. Die oorspronklike rede vir die blokkade is: $1",
-'cant-block-while-blocked' => 'U kan nie ander gebruikers blokkeer terwyl u self geblokkeer is nie.',
'cant-see-hidden-user' => "Die gebruiker wat u probeer blokkeer is reeds geblokkeer en weggesteek.
Aangesien u nie die 'hideuser'-reg het nie, kan u nie die blokkade van die gebruiker sien of wysig nie.",
'ipbblocked' => 'U kan nie ander gebruikers (de)blokkeer nie, omdat u self geblokkeer is',
'watchlistall2' => 'alles',
'namespacesall' => 'alle',
'monthsall' => 'alle',
-'limitall' => 'alle',
# Email address confirmation
'confirmemail' => 'Bevestig e-posadres',
'confirmemail_success' => 'U e-posadres is bevestig.
U kan nou [[Special:UserLogin|aanmeld]] en die wiki gebruik.',
'confirmemail_loggedin' => 'U e-posadres is nou bevestig.',
-'confirmemail_error' => 'Iets het foutgegaan met die stoor van u bevestiging.',
'confirmemail_subject' => '{{SITENAME}}: E-posadres-bevestiging',
'confirmemail_body' => 'Iemand, waarskynlik u vanaf IP-adres: $1, het \'n rekening "$2" met hierdie e-posadres by {{SITENAME}} geregistreer.
# Special:ComparePages
'comparepages' => 'Vergelyk bladsye',
-'compare-selector' => 'Vergelyk bladsyweergawes',
'compare-page1' => 'Bladsy 1',
'compare-page2' => 'Bladsy 2',
'compare-rev1' => 'Weergawe 1',
'tog-minordefault' => 'Shêjoji fillimisht tâna redaktimet si të vogla',
'tog-previewontop' => 'Vendose parapamjen përpara kutisë redaktuese',
'tog-previewonfirst' => 'Shfaqe parapamjen në redaktimin e parë',
-'tog-nocache' => 'Mos ruej kopje të faqeve',
'tog-enotifwatchlistpages' => 'Njoftomë me email, kur ndryshojnë faqet e mbikëqyruna',
'tog-enotifusertalkpages' => 'Njoftomë me email kur ndryshon faqja ime e diskutimit',
'tog-enotifminoredits' => 'Njoftomë me email për redaktime të vogla të faqeve',
'recentchanges-summary' => 'Ndiqni ndryshime së fundmi tek kjo faqe.',
'recentchanges-feed-description' => 'Përcjelli ndryshimet mâ të reja të këtij wiki në këtë feed.',
'recentchanges-label-newpage' => 'Ky redaktim krijoi një faqe të re',
-'rcnote' => "Mâ poshtë {{PLURAL:$1|âsht '''1''' ndryshim|janë '''$1''' ndryshimet e fundit}} në {{PLURAL:$2|ditën|'''$2''' ditët}} e fundit, prej $5, $4.",
'rclistfrom' => 'Trego ndryshimet e reja tue fillue prej $1',
'rcshowhideminor' => '$1 redaktimet e vogla',
'rcshowhidebots' => 'botat në $1',
'tog-minordefault' => 'ሁሉም እርማቶች በቀዳሚነት አነስተኛ ይባሉ',
'tog-previewontop' => 'ከማረሚያው ሳጥን በፊት ቅድመ-ዕይታ አሳይ',
'tog-previewonfirst' => 'በመጀመሪያ እርማት ቅድመ-ዕይታ ይታይ',
-'tog-nocache' => 'ገጾችን በብራውዘር መቆጠብን (cache) አታስችል',
'tog-enotifwatchlistpages' => 'የምከታተለው ገጽ ወይም ፋይል ሲቀየር ኢ-ሜይል ይላክልኝ',
'tog-enotifusertalkpages' => 'የተጠቃሚ መወያያ ገጼ ሲቀየር ኢ-ሜይል ይላክልኝ',
'tog-enotifminoredits' => 'ለአነስተኛ የገጽ እርማቶችም ኢ-ሜይል ይላክልኝ',
'recentchanges-label-bot' => 'ይኸው ለውጥ በሎሌ ተደረገ።',
'recentchanges-label-unpatrolled' => 'ይህ እርማት ገና አልተገመገመም',
'recentchanges-legend-newpage' => '$1 - አዲስ ገጽ',
-'rcnote' => "ከ$5 $4 እ.ኤ.አ. {{PLURAL:$2|ባለፈው 1 ቀን|ባለፉት '''$2''' ቀኖች}} {{PLURAL:$1|የተደረገው '''1''' ለውጥ እታች ይገኛል|የተደረጉት '''$1''' መጨረሻ ለውጦች እታች ይገኛሉ}}።",
'rcnotefrom' => "ከ'''$2''' ጀምሮ የተቀየሩት ገጾች (እስከ '''$1''' ድረስ) ክዚህ በታች ይታያሉ።",
'rclistfrom' => '(ከ $1 ጀምሮ አዲስ ለውጦቹን ለማየት)',
'rcshowhideminor' => 'ጥቃቅን ለውጦች $1',
'undeletebtn' => 'ይመለስ',
'undeletelink' => 'አሳይ/ወደ ነበረበት መልስ',
'undeleteviewlink' => 'ተመልከት',
-'undeletereset' => 'ባዶ ይደረግ',
'undeleteinvert' => 'ምርጫውን ለመገልበጥ',
'undeletecomment' => 'ማጠቃልያ፦',
'undeletedrevisions' => '{{PLURAL:$1|1 ዕትም|$1 ዕትሞች}} መለሰ',
'block' => 'ተጠቃሚ ለማገድ',
'unblock' => 'ከተጠቃሚ ማገጃ ለማንሣት',
'blockip' => 'ተጠቃሚውን ለማገድ',
-'blockip-title' => 'ማገጃ መጣል',
'blockip-legend' => 'ተጠቃሚ ለማገድ',
'blockiptext' => 'ከዚህ ታች ያለው ማመልከቻ በአንድ ቁጥር አድርሻ ወይም ብዕር ስም ላይ ማገጃ (ማዕቀብ) ለመጣል ይጠቀማል። ይህ በ[[{{MediaWiki:Policy-url}}|መርመርያዎቻችን]] መሠረት ተንኮል ወይም ጉዳት ለመከልከል ብቻ እንዲደረግ ይገባል። ከዚህ ታች የተለየ ምክንያት (ለምሣሌ የተጎዳው ገጽ በማጠቆም) ይጻፉ።',
'ipadressorusername' => 'የቁ. አድራሻ ወይም የብዕር ስም፦',
'ipbexpiry' => 'የሚያልቅበት፦',
'ipbreason' => 'ምክንያቱ፦',
-'ipbreasonotherlist' => 'ሌላ ምክንያት',
'ipbreason-dropdown' => "*ተራ የማገጃ ምክንያቶች
** የሀሠት መረጃ መጨምር
** ከገጾች ይዞታውን መደምሰስ
'ipbsubmit' => 'ማገጃ ለመጣል',
'ipbother' => 'ሌላ የተወሰነ ግዜ፦',
'ipboptions' => '2 ሰዓቶች:2 hours,1 ቀን:1 day,3 ቀን:3 days,1 ሳምንት:1 week,2 ሳምንት:2 weeks,1 ወር:1 month,3 ወር:3 months,6 ወር:6 months,1 አመት:1 year,ዘላለም:infinite',
-'ipbotheroption' => 'ሌላ',
-'ipbotherreason' => 'ሌላ/ተጨማሪ ምክንያት፦',
'ipb-confirm' => 'ማገጃውን ለማረጋገጥ',
'badipaddress' => 'የማይሆን የቁ. አድራሻ',
'blockipsuccesssub' => 'ማገጃ ተከናወነ',
'ipb_expiry_invalid' => 'የሚያልቅበት ግዜ አይሆንም።',
'ipb_already_blocked' => '«$1» ገና ከዚህ በፊት ታግዶ ነው።',
'ipb-needreblock' => '$1 አሁን ገና ታግዷል። ዝርዝሩን ማስተካከል ፈለጉ?',
-'cant-block-while-blocked' => 'እርስዎ እየታገዱ ሌላ ተጠቃሚ ለማገድ አይችሉም።',
# Developer tools
'lockdb' => 'መረጃ-ቤት ለመቆለፍ',
'watchlistall2' => 'ሁሉ',
'namespacesall' => 'ሁሉ (all)',
'monthsall' => 'ሁሉ',
-'limitall' => 'ሁሉ',
# Email address confirmation
'confirmemail' => 'ኢ-ሜልዎን ለማረጋገጥ',
'confirmemail_needlogin' => 'ኢሜል አድራሻዎን ለማረጋገጥ $1 ያስፈልግዎታል።',
'confirmemail_success' => 'እ-ሜል አድራሻዎ ተረጋግጧል። አሁን ገብተው ዊኪውን መጠቀም ይችላሉ።',
'confirmemail_loggedin' => 'የርስዎ ኢ-ሜል አድራሻ ተረጋግጧል። አሁን ኢ-ሜል በ{{SITENAME}} በኩል ለመላክ ወይም ለመቀበል ይችላሉ።',
-'confirmemail_error' => 'ማረጋገጫዎን በመቆጠብ አንድ ችግር ተነሣ።',
'confirmemail_subject' => '{{SITENAME}} email address confirmation / እ-ሜል አድራሻ ማረጋገጫ',
'confirmemail_body' => 'ጤና ይስጥልኝ
'tog-minordefault' => 'Sinyalar por defecto totas as edicions como menors',
'tog-previewontop' => "Amostrar l'anvista previa antes d'o quatrón d'edición",
'tog-previewonfirst' => "Amostrar l'anvista previa de l'articlo en a primera edición",
-'tog-nocache' => "Desactivar a ''caché'' d'o navegador",
'tog-enotifwatchlistpages' => 'Recibir un correu quan se faigan cambios en una pachina cosirata por yo',
'tog-enotifusertalkpages' => 'Ninviar-me un correu quan cambee a mía pachina de descusión',
'tog-enotifminoredits' => 'Ninviar-me un correu tamién quan bi haiga edicions menors de pachinas',
'recentchanges-label-bot' => 'Ista edición fue feita por un bot',
'recentchanges-label-unpatrolled' => "Esta edición encara no s'ha controlato",
'recentchanges-legend-newpage' => '$1 - pachina nueva',
-'rcnote' => "Contino {{PLURAL:$1|s'amuestra o unico cambeo feito|s'amuestran os zaguers '''$1''' cambeos feitos}} en {{PLURAL:$2|o zaguer día|os zaguers '''$2''' días}}, dica o $5, $4.",
'rcnotefrom' => "Contino s'amuestran os cambeos dende '''$2''' (dica '''$1''').",
'rclistfrom' => 'Amostrar cambeos recients dende $1',
'rcshowhideminor' => '$1 as edicions menors',
'undeletebtn' => 'Restaurar!',
'undeletelink' => 'amostrar/restaurar',
'undeleteviewlink' => 'veyer',
-'undeletereset' => 'Prencipiar',
'undeleteinvert' => 'Contornar selección',
'undeletecomment' => 'Razón:',
'undeletedrevisions' => '{{PLURAL:$1|Una edición restaurata|$1 edicions restauratas}}',
'block' => 'Bloqueyar usuario',
'unblock' => 'Desbloqueyar usuario',
'blockip' => 'Bloqueyar usuario',
-'blockip-title' => 'Bloqueyar usuario',
'blockip-legend' => 'Bloqueyar usuario',
'blockiptext' => "Replene o siguient formulario ta bloqueyar l'acceso
d'escritura dende una cuenta d'usuario u una adreza IP especifica.
'ipadressorusername' => "Adreza IP u nombre d'usuario",
'ipbexpiry' => 'Circumducción:',
'ipbreason' => 'Razón:',
-'ipbreasonotherlist' => 'Atra razón',
'ipbreason-dropdown' => "*Razons comuns de bloqueyo
** Meter información falsa
** Borrar conteniu d'as pachinas
'ipbsubmit' => 'bloqueyar a iste usuario',
'ipbother' => 'Especificar atro periodo',
'ipboptions' => '2 horas:2 hours,1 día:1 day,3 días:3 days,1 semana:1 week,2 semanas:2 weeks,1 mes:1 month,3 meses:3 months,6 meses:6 months,1 anyo:1 year,ta cutio:infinite',
-'ipbotheroption' => 'un atra',
-'ipbotherreason' => 'Razons diferens u adicionals',
'ipbhidename' => "Amagar o nombre d'usuario en edicions y listas",
'ipbwatchuser' => "Cosirar as pachinas d'usuario y de descusión d'iste usuario",
'ipb-disableusertalk' => 'Privar que iste usuario edite a suya propia pachina de discusión entre que sía bloqueyau',
'proxyblockreason' => "S'ha bloqueyato a suya adreza IP porque ye un proxy ubierto. Por favor, contaute on o suyo furnidor de servicios d'Internet u con o suyo servicio d'asistencia tecnica e informe-les d'iste grau problema de seguridat.",
'sorbsreason' => 'A suya adreza IP ye en a lista de proxies ubiertos en a DNSBL de {{SITENAME}}.',
'sorbs_create_account_reason' => 'A suya adreza IP ye en a lista de proxies ubiertos en a DNSBL de {{SITENAME}}. No puede creyar una cuenta',
-'cant-block-while-blocked' => 'No puet bloqueyar a atros usuarios en o tiempo que ye bloqueyato.',
'cant-see-hidden-user' => "L'usuario a qui ye mirando de bloqueyar ya ye bloqueyau y amagau. Como que ye posible que vusté no tienga o dreito hideuser, no puede veyer ni editar os bloqueyos d'ixe usuario.",
'ipbblocked' => 'No puede bloqueyar ni desbloqueyar atros usuarios porque ya ye bloqueyau.',
'ipbnounblockself' => 'No tiene permiso ta sacar o suyo propio bloqueyo',
'watchlistall2' => 'totz',
'namespacesall' => 'totz',
'monthsall' => 'totz',
-'limitall' => 'Totz',
# Email address confirmation
'confirmemail' => 'Confirmar adreza de correu-e',
'confirmemail_needlogin' => 'Amenistar $1 ta confirmar a suya adreza de correu-e.',
'confirmemail_success' => 'A suya adreza de correu-e ya ye confirmata. Agora puede [[Special:UserLogin|dentrar]] en o wiki y gronxiar-se-ie.',
'confirmemail_loggedin' => 'A suya adreza de correu-e ya ye confirmata.',
-'confirmemail_error' => 'Bella cosa falló en alzar a suya confirmación.',
'confirmemail_subject' => "confirmación de l'adreza de correu-e de {{SITENAME}}",
'confirmemail_body' => 'Belún, probablement vusté mesmo, ha rechistrato una cuenta "$2" con ista adreza de correu-e en {{SITENAME}} dende l\'adreza IP $1.
# Special:ComparePages
'comparepages' => 'Contimparar pachinas',
-'compare-selector' => "Contimparar as versions d'as pachinas",
'compare-page1' => 'Pachina 1',
'compare-page2' => 'Pachina 2',
'compare-rev1' => 'Versión 1',
'tog-minordefault' => 'Mearcian ealla adihtunga lytela tō gewunan',
'tog-previewontop' => 'Īwan fōrebysene ofer adihtunge mearce',
'tog-previewonfirst' => 'Īwan fōrebysene on forman adihtunge',
-'tog-nocache' => 'Nā þafian þætte webbsēcend sette trametas on horde',
'tog-enotifwatchlistpages' => 'Sendan mē spearcǣrend þǣr tramet oþþe ymele on mīnum behealdungtæle sīe andwended.',
'tog-enotifusertalkpages' => 'Sendan mē spearcǣrend þǣr mīnes brūcendtrametes mōtung sī andwended',
'tog-enotifminoredits' => 'Sendan mē spearcǣrend þǣr trametas oþþe ymelan sīen efne lyt andwended.',
'recentchanges-label-minor' => 'Þēos is lytel adihtung',
'recentchanges-label-bot' => 'Searuþrǣl fremede þās adihtunge',
'recentchanges-legend-newpage' => '$1 - nīƿu sīde',
-'rcnote' => "Beneoðan {{PLURAL:$1|is '''1''' andwendung|sind þā æftemestan '''$1''' andwendunga}} in {{PLURAL:$2|þǣm æftermestan dæge|þǣm æftemestum '''$2''' daga}}, fram $5 on $4.",
'rcnotefrom' => "Niðer sind þā andwendunga fram '''$2''' (mǣst īweþ '''$1''').",
'rclistfrom' => 'Īwan nīwa andwendunga fram $1 and siþþan',
'rcshowhideminor' => '$1 lytela adihtunga',
# Block/unblock
'blockip' => 'Fortȳnan brūcend',
'ipbreason' => 'Racu:',
-'ipbreasonotherlist' => 'Ōðru racu',
'ipbreason-dropdown' => '*Gemǣna fortȳnungraca
** Insettung falsre cȳþþe
** Animung innunge of trametum
'ipbsubmit' => 'Fortȳnan þisne brūcend',
'ipbother' => 'Ōðeru tīd',
'ipboptions' => '2 tīda:2 hours,1 dæg:1 day,3 dagas:3 days,1 wucu:1 week,2 wuca:2 weeks,1 mōnaþ:1 month,3 mōnðas:3 months,6 mōnða:6 months,1 gēar:1 year,unendiende:infinite',
-'ipbotheroption' => 'ōðer',
-'ipbotherreason' => 'Ōðru oþþe nīehst racu:',
'ipblocklist-submit' => 'Sēcan',
'infiniteblock' => 'unendiende',
'expiringblock' => 'forealdaþ on $1 on $2',
'watchlistall2' => 'eall',
'namespacesall' => 'eall',
'monthsall' => 'eall',
-'limitall' => 'eall',
# Email address confirmation
'confirmemail_body' => 'Hwilchwega, gewēne þu of IP stōwe $1, hæfþ in namanbēc gestt ǣnne hordcleofan
'tog-minordefault' => 'أشِّر كل التعديلات على أنها طفيفة مبدئيا',
'tog-previewontop' => 'أظهر معاينة النص فوق صندوق التحرير',
'tog-previewonfirst' => 'أظهر معاينة مع أول تعديل',
-'tog-nocache' => 'تعطيل حفظ المتصفح للكاش',
'tog-enotifwatchlistpages' => 'أرسل إلي رسالة إلكترونية عند تعديل صفحة أو ملف في قائمة مراقبتي',
'tog-enotifusertalkpages' => 'أرسل إلي رسالة إلكترونية عند تعديل صفحة نقاشي',
'tog-enotifminoredits' => 'أرسل إلي رسالة إلكترونية بشأن التعديلات الطفيفة للصفحات والملفات',
'recentchanges-label-bot' => 'أُجْرِيَ هذا التعديل بواسطة بوت',
'recentchanges-label-unpatrolled' => 'لم يراجع هذا التعديل إلى الآن',
'recentchanges-legend-newpage' => '(راجع أيضا [[Special:NewPages|قائمة الصفحات الجديدة]])',
-'rcnote' => "بالأسفل {{PLURAL:$1|لا توجد تغييرات|التغيير الأخير|آخر تغييرين|آخر '''$1''' تغييرات|آخر '''$1''' تغييرا|آخر '''$1''' تغيير}} في {{PLURAL:$2||'''اليوم''' الماضي|'''اليومين''' الماضيين|ال'''$2''' أيام الماضية|ال'''$2''' يوما الماضيا|ال'''$2''' يوم الماضي}}، كما في $5، $4.",
'rcnotefrom' => "بالأسفل التغييرات منذ '''$2''' (إلى '''$1''' معروضة).",
'rclistfrom' => 'أظهر التغييرات بدءا من $1',
'rcshowhideminor' => '$1 التعديلات الطفيفة',
'undeletebtn' => 'استرجاع',
'undeletelink' => 'اعرض/استعد',
'undeleteviewlink' => 'اعرض',
-'undeletereset' => 'أعد الضبط',
'undeleteinvert' => 'اعكس الاختيار',
'undeletecomment' => 'السبب:',
'undeletedrevisions' => 'تم استرجاع {{PLURAL:$1||تعديل واحد|تعديلين|$1 تعديلات|$1 تعديلا|$1 تعديل}}',
'block' => 'امنع المستخدم',
'unblock' => 'إلغاء منع مستخدم',
'blockip' => 'منع المستخدم',
-'blockip-title' => 'منع مستخدم',
'blockip-legend' => 'منع المستخدم',
'blockiptext' => 'استخدم النموذج التالي لمنع مستخدم، أو عنوان آيبي، معين من التعديل أو إنشاء حسابات جديدة. تُستخدم هذه العملية لمنع التخريب فقط، ويجب أن تتماشى مع [[{{MediaWiki:Policy-url}}|سياسة المنع]]. أدخل تعليلاً واضحًا لسبب المنع في الخانة المخصصة لذلك (مثلاً: ذكر صفحات محددة تمّ تخريبها من قبل المستخدم).',
'ipadressorusername' => 'عنوان الأيبي أو اسم المستخدم:',
'ipbexpiry' => 'مدة المنع:',
'ipbreason' => 'السبب:',
-'ipbreasonotherlist' => 'سبب آخر',
'ipbreason-dropdown' => '*أسباب المنع الشائعة
** كتابة معلومات زائفة
** إزالة المحتوى من الصفحات
'ipbsubmit' => 'امنع هذا المستخدم',
'ipbother' => 'وقت آخر:',
'ipboptions' => 'ساعتين:2 hours,يوم واحد:1 day,3 أيام:3 days,أسبوع واحد:1 week,أسبوعين:2 weeks,شهر واحد:1 month,3 أشهر:3 months,6 أشهر:6 months,سنة واحدة:1 year,دائم:infinite',
-'ipbotheroption' => 'غير ذلك',
-'ipbotherreason' => 'سبب إضافي/آخر:',
'ipbhidename' => 'أخف اسم المستخدم من التعديلات والقوائم',
'ipbwatchuser' => 'راقب صفحتي المستخدم والنقاش لهذا المستخدم',
'ipb-disableusertalk' => 'امنع هذا المستخدم من تعديل صفحة نقاشه ما دام ممنوعاً',
'sorbs_create_account_reason' => 'عنوان الأيبي الخاص بك موجود كبروكسي مفتوح في DNSBL المستخدم بواسطة {{SITENAME}}.
لا يمكنك إنشاء حساب.',
'xffblockreason' => 'عنوان آيبي مذكور في ترويسة X-Forwarded-For، الذي ربما يخصّك أو يخصّ خادوما وسيطا تستخدمه، قد حُظِر. السبب الأصلي للحظر كان: $1',
-'cant-block-while-blocked' => 'أنت لا يمكنك منع المستخدمين الآخرين بينما أنت ممنوع.',
'cant-see-hidden-user' => 'المستخدم الذي تحاول منعه تم منعه سابقاً وإخفاؤه. بما أنك لا تمتلك صلاحية إخفاء المستخدم، لا يمكنك مشاهدة المنع أو تعديله.',
'ipbblocked' => 'لا يمكنك منع أو رفع منع مستخدمين آخرين لأنك ممنوع',
'ipbnounblockself' => 'لا يسمح لك برفع المنع عن نفسك',
'watchlistall2' => 'الكل',
'namespacesall' => 'الكل',
'monthsall' => 'الكل',
-'limitall' => 'الكل',
# Email address confirmation
'confirmemail' => 'تأكيد عنوان البريد الإلكتروني',
'confirmemail_success' => 'تم تأكيد بريدك الإلكتروني.
يمكنك الآن [[Special:UserLogin|الدخول]] والتمتع بالويكي.',
'confirmemail_loggedin' => 'بريدك الإلكتروني تم تأكيده الآن.',
-'confirmemail_error' => 'ثمة شيء خطأ عند محاولة حفظ تأكيدك.',
'confirmemail_subject' => 'رسالة تأكيد البريد من {{SITENAME}}',
'confirmemail_body' => 'شخص ما، من المحتمل أن يكون أنت، من عنوان الأيبي $1،
سجل حسابا "$2" بعنوان البريد الإلكتروني هذا في {{SITENAME}}.
# Special:ComparePages
'comparepages' => 'قارن صفحات',
-'compare-selector' => 'قارن مراجعات الصفحة',
'compare-page1' => 'صفحة 1',
'compare-page2' => 'صفحة 2',
'compare-rev1' => 'نسخة 1',
'block' => 'ܚܪܘܡ ܡܦܠܚܢܐ',
'unblock' => 'ܫܩܘܠ ܚܪܡܐ ܡܢ ܡܦܠܚܢܐ',
'blockip' => 'ܚܪܘܡ ܡܦܠܚܢܐ',
-'blockip-title' => 'ܚܪܘܡ ܡܦܠܚܢܐ',
'blockip-legend' => 'ܚܪܘܡ ܡܦܠܚܢܐ',
'ipadressorusername' => 'ܐܝ ܦܝ (IP) ܐܘ ܫܡܐ ܕܡܦܠܚܢܐ:',
'ipbexpiry' => 'ܡܬܚܐ ܕܚܪܡܐ:',
'ipbreason' => 'ܥܠܬܐ:',
-'ipbreasonotherlist' => 'ܥܠܬܐ ܐܚܪܬܐ',
'ipbsubmit' => 'ܚܪܘܡ ܡܦܠܚܢܐ ܗܢܐ',
'ipbother' => 'ܥܕܢܐ ܐܚܪܢܐ',
'ipboptions' => '2 ܫܥ̈ܝܢ:2 hours,1 ܝܘܡ:1 day,3 ܝܘܡ̈ܝܢ:3 days,1 ܫܒܘܥ:1 week,2 ܫܒܘܥ̈ܝܢ:2 weeks,1 ܝܪܚ:1 month,3 ܝܪ̈ܚܝܢ:3 months,6 ܝܪ̈ܚܝܢ:6 months,1 ܫܢܐ:1 year,ܠܥܠܡ:infinite',
-'ipbotheroption' => 'ܐܚܪܢܐ',
-'ipbotherreason' => 'ܥܠܬܐ ܐܚܪܬܐ/ܢܩܝܦܬܐ:',
'ipbhidename' => 'ܛܫܝ ܫܡܐ ܕܡܦܠܚܢܐ ܡܢ ܫܘܚܠܦ̈ܐ ܘܡܟܬܒܘܬ̈ܐ',
'badipaddress' => 'ܐܝ ܦܝ (IP) ܠܐ ܬܪܝܨܐ:',
'blockipsuccesssub' => 'ܚܪܡܐ ܓܡܪ',
'watchlistall2' => 'ܟܠ',
'namespacesall' => 'ܟܠ',
'monthsall' => 'ܟܠ',
-'limitall' => 'ܟܠ',
# Email address confirmation
'confirmemail' => 'ܫܪܪ ܒܝܠܕܪܐ ܐܠܩܛܪܘܢܝܐ',
# Special:ComparePages
'comparepages' => 'ܦܚܘܡ ܒܝܢܝ ܦܐܬܬ̈ܐ',
-'compare-selector' => 'ܦܚܘܡ ܒܝܢܝ ܬܢܝܬ̈ܐ ܕܦܐܬܬ̈ܐ',
'compare-page1' => 'ܦܐܬܐ 1',
'compare-page2' => 'ܦܐܬܐ 2',
'compare-rev1' => 'ܬܢܝܬܐ 1',
'recentchanges-label-bot' => 'Kiñe kizuamukelu küzauwe dewmay tüfachi wirin.',
'recentchanges-label-unpatrolled' => 'Pukintulelay tüfachi wirin.',
'recentchanges-legend-newpage' => '$1 - We Pakina',
-'rcnote' => 'Nagpüle {{PLURAL:müley $1 kalekünun}}, rupalu {{PLURAL:$2 antü}}, $5, $4.',
'rcnotefrom' => "Nagpüle müley fill wirin tuwülu '''$2''' mew (tripalu '''$1''' mew).",
'rclistfrom' => 'Adkintun weke kalekünun amuamugelu $1',
'rcshowhideminor' => '$1 pichi wirin',
# Block/unblock
'ipbexpiry' => 'Afi',
'ipbreason' => 'Dungu:',
-'ipbreasonotherlist' => 'Kake dungu:',
'ipboptions' => '2 ora:2 hours,1 aṉtü:1 day,3 aṉtü:3 days,1 semana:1 week,2 semana:2 weeks,1 küyeṉ:1 month,3 küyeṉ:3 months,6 küyeṉ:6 months,1 tripantu:1 year,rumel:infinite',
-'ipbotheroption' => 'Kakelu',
'ipblocklist' => 'Katrütulelu kellufe',
'ipblocklist-submit' => 'Kintun',
'expiringblock' => 'afi $1 - $2',
'watchlistall2' => 'kom',
'namespacesall' => 'kom',
'monthsall' => '(kom)',
-'limitall' => 'Kom',
# action=purge
'confirm_purge_button' => 'Feley may',
'tog-minordefault' => 'alm jmia tadilat tafifa iftiradiyan',
'tog-previewontop' => 'biyn laard lmosbaq qbl sndoq thrir',
'tog-previewonfirst' => 'Ůbiyn moaayana maa awal tadil',
-'tog-nocache' => 'attl takhzin lmotassafih lsfha',
'tog-enotifwatchlistpages' => 'sift liya barid electroni ila tbdlat chi sfha f qaaimat lmoraqaba diali',
'tog-enotifusertalkpages' => 'sift liya rissala electronia ila tbdlat sfht niqach dyali',
'tog-enotifminoredits' => 'sift liya risala electronia hta bnisba ltadilat tafifa',
'recentchanges-label-minor' => 'Hada ṫeĝdil sġir',
'recentchanges-label-bot' => 'had taadil darou bot',
'recentchanges-label-unpatrolled' => 'had taadil matrajach',
-'rcnote' => 'Hnaya ġaṫelqaw {{PLURAL:$1|ṫ-ṫeġyira l-leĥĥra li ṫdareṫ|l-$1 dyal ṫ-ṫeġyiraṫ l-leĥĥrin li ṫdaro}} tol {{PLURAL:$2|l-yom l-leĥĥer|l-<b>$2</b> iyam l-leĥĥra}} ḫtal nhar $4 mĝa s-saĝa $5.',
'rcnotefrom' => "hna taghirat mn '''$2''' (tal '''$1''' maaroda).",
'rclistfrom' => 'Werri ṫeġyiraṫ jdad badyen men $1',
'rcshowhideminor' => '$1 Ṫeĝdilaṫ ma mohimminċ bezzaf',
'undeletebtn' => 'strjaa',
'undeletelink' => 'Biyyen/Ĥebbi',
'undeleteviewlink' => 'ċof',
-'undeletereset' => 'aawd regli',
'undeleteinvert' => 'Qleb dakċi li ĝzelṫi',
'undeletecomment' => 'sabab:',
'undeletedrevisions' => '{{PLURAL:$1|vérsyon weḫda rejĝaṫ ki kaneṫ|$1 de lé-vérsyon rejĝo ki kano}}',
# Block/unblock
'blockip' => 'Bloké l-mosṫeĥdim',
-'blockip-title' => 'Bloki l-mosṫeḫdim',
'blockip-legend' => 'Bloki l-mosṫeḫdim',
'ipadressorusername' => 'Ĝonwan IP ola smiyṫ l-mosṫeĥdim',
'ipbexpiry' => 'Ġayṫqada fe :',
'ipbreason' => 'sabab:',
-'ipbreasonotherlist' => 'Sabab weḫdaĥor',
'ipbcreateaccount' => 'Mneĝ ĥṫiraĝ ċi ḫsab',
'ipbemailban' => 'ma ṫĥelli-ċ l-mosṫĥdim yṣifet ċi imayl',
'ipbenableautoblock' => 'Bloki otomaṫikiyan l-ĝonwan IP l-leĥĥrani li sṫeĝmlo l-mosṫeḫdim o l-ĝanawin IP li qbel mennha li ymken lo yĝawed ysṫeĝmelhom.',
'ipbsubmit' => 'Bloki had l-mosṫeĥdim',
'ipbother' => 'weqṫ aĥor :',
'ipboptions' => '2 swayeĝ:2 hours,nhar:1 day,3 iyam:3 days,ṣémana:1 week,2 ṣémanaṫ:2 weeks,ċher:1 month,3 ċhor:3 months,6 ċhor:6 months,ĝam:1 year,ma kayṫsalaċ:infinite',
-'ipbotheroption' => 'ḫwayej ĥrin',
-'ipbotherreason' => 'Sabab weḫdaĥor/zayed:',
'ipbhidename' => 'Ĥebbi smiyṫ l-mosṫeĥdim men ṫ-ṫeġyiraṫ o men l-listaṫ',
'ipbwatchuser' => 'Ṫbeĝ ṣ-ṣefḫaṫ dyal l-mosṫeḫdim o de n-niqaċ dyal had l-mosṫeĥdim',
'ipb-change-block' => "Ĝawed bloki had l-mosṫeĥdim be had l-'iĝdadaṫ",
'watchlistall2' => 'kolċi',
'namespacesall' => 'kolċi',
'monthsall' => 'kolhom',
-'limitall' => 'kolċi',
# Email address confirmation
'confirmemail' => "konfirmasyon dyal l'email",
'confirmemail_success' => "ṫ'kked ĝonwan l-email ṫaĝk.
daba ymkn lik [[Special:UserLogin|ṫdĥol]] o-ṫsṫmṫĝ bl-wiki.",
'confirmemail_loggedin' => "l'email dyalk tkonfirma daba",
-'confirmemail_error' => "khayn chi khata' mlli bghiti tsjl lkonfirmation dyalk",
'confirmemail_subject' => "rissala ta'kid mn {{SITENAME}}",
'confirmemail_invalidated' => "lkonfirmasyon dyal l'email tlgha",
'invalidateemail' => "lghi lkofirmasyon dyal l'email",
# Special:ComparePages
'comparepages' => 'qarn sfahi',
-'compare-selector' => 'qarn morajaat sfha',
'compare-page1' => 'sfha 1',
'compare-page2' => 'sfha 2',
'compare-rev1' => 'morajaa 1',
'tog-minordefault' => 'علم على كل التعديلات كإنها صغيره فى الاساس',
'tog-previewontop' => 'بين الپروڤه قبل علبة التعديل',
'tog-previewonfirst' => 'بين البروفة عند أول تعديل',
-'tog-nocache' => 'عطّل تخزين البراوزر للصفحه',
'tog-enotifwatchlistpages' => '
ابعت لى ايميل لما تتغير صفحه فى لستة الصفحات اللى باراقبها',
'tog-enotifusertalkpages' => 'ابعتلى ايميل لما صفحة مناقشتى تتغيير',
'deletethispage' => 'امسح الصفحه دى',
'undeletethispage' => 'استرجاع الصفحه دى',
'undelete_short' => 'استرجاع {{PLURAL:$1|تعديل واحد|تعديلان|$1 تعديلات|$1 تعديل|$1 تعديلا}}',
-'viewdeleted_short' => '{{PLURAL:$1|}}{{PLURAL:$1|تعديل واحد ملغي|تعديلين ملغيين|$1 تعديلات ملغية|$1 تعديل ملغي|$1 تعديل ملغي}}',
+'viewdeleted_short' => '{{PLURAL:$1|تعديل واحد ملغى|تعديلين ملغيين|$1 تعديلات ملغية|$1 تعديل ملغى|$1 تعديل ملغى}}',
'protect' => 'حمايه',
'protect_change' => 'غيّر',
'protectthispage' => 'احمى الصفحه دى',
# All link text and link target definitions of links into project namespace that get used by other message strings, with the exception of user group pages (see grouppage).
'aboutsite' => 'عن {{SITENAME}}',
'aboutpage' => 'Project:معلومات عن',
-'copyright' => 'اÙ\84Ù\83Ù\84اÙ\85 Ù\88 اÙ\84صÙ\88ر Ù\85Ù\88جÙ\88دÙ\8aÙ\86 Øسب $ 1 ماعدا الحالات إللى مكتوب عندها حاجه تانيه.',
+'copyright' => 'اÙ\84Ù\83Ù\84اÙ\85 Ù\88 اÙ\84صÙ\88ر Ù\85Ù\86Ø´Ù\88رÙ\8aÙ\86 Øسب $1 ماعدا الحالات إللى مكتوب عندها حاجه تانيه.',
'copyrightpage' => '{{ns:project}}:حقوق النسخ',
'currentevents' => 'الاخبار دلوقتى',
'currentevents-url' => 'Project:الاخبار دلوقتى',
'ok' => 'موافئ',
'retrievedfrom' => 'اتجابت من "$1"',
'youhavenewmessages' => 'عندك $1 ($2).',
-'youhavenewmessagesfromusers' => 'عندك $1 من {{PLURAL:${{PLURAL:$3|}}3|يوزر واحد|يوزر واحد|اتنين يوزر |$3 مستخدمين|$3 يوزر|$3 يوزر}} ($2).',
+'youhavenewmessagesfromusers' => 'عندك $1 من {{PLURAL:${{PLURAL:$3|}}3|يوزر واحد|يوزر واحد|اتنين يوزر |$3 مستخدمين|$3 يوزر}} ($2).',
'youhavenewmessagesmanyusers' => 'عندك $1 من يوزرات كتير ($2).',
'newmessageslinkplural' => '{{PLURAL:$1|رساله جديده|999=رسايل جديده}}',
-'newmessagesdifflinkplural' => '{{PLURAL:$1|}}{{PLURAL:$1|تعديل|تعديلين|$1 تعديلات|$1 تعديل|$1 تعديل}}',
+'newmessagesdifflinkplural' => '{{PLURAL:$1|تعديل|تعديلين|$1 تعديلات|$1 تعديل|$1 تعديل}}',
'youhavenewmessagesmulti' => 'عندك ميسيدج جديدة فى $1',
'editsection' => 'تعديل',
'editold' => 'تعديل',
# General errors
'error' => 'غلطه',
'databaseerror' => 'غلط فى قاعدة البيانات (database)',
+'databaseerror-query' => ' إستفسار : $1',
+'databaseerror-function' => 'وظيفه : $1',
+'databaseerror-error' => 'غلط: $1',
'laggedslavemode' => "'''تحذير:''' الصفحه يمكن ما يكونش فيها تحديثات جديده.",
'readonly' => 'قاعدة البيانات (الـ database) مقفوله',
'enterlockreason' => 'اكتب سبب القفل, و قول امتى تقريبا ح يتلغى القفل',
# Login and logout pages
'logouttext' => "'''أنت دلوقتى مش مسجل دخولك.'''
-تقدر تكمل استعمال {{SITENAME}} على انك مجهول، أو [[Special:UserLogin|الدخول مرة تانيه]] بنفس الاسم أو باسم تاني.
-ممكن تشوف بعض الصفحات كأنك متسجل ، و دا علشان استعمال الصفحات المتخبية فى المتصفح بتاعك.",
+تقدر تكمل استعمال {{SITENAME}} على انك مجهول، أو [[Special:UserLogin|الدخول مرة تانيه]] بنفس الاسم أو باسم تانى.
+
+ممكن تشوف بعض الصفحات كأنك متسجل ، و دا علشان استعمال الصفحات المتخبية ف البراوزر بتاعك.",
+'welcomeuser' => 'أهلاً بيك يا $1!',
+'welcomecreation-msg' => 'اتفتحلك حساب.
+لو تحب ممكن تغير [[Special:Preferences|تفضيلاتك ف {{SITENAME}}]].',
'yourname' => 'اليوزرنيم:',
+'userlogin-yourname' => 'اسم اليوزر',
+'createacct-another-username-ph' => 'إكتب اسم يوزر:',
'yourpassword' => 'الباسوورد:',
'yourpasswordagain' => 'اكتب الباسورد تاني:',
'remembermypassword' => ' (لمدة $1 {{PLURAL:$1|يوم|يوم}})خليك فاكر دخولى على الكمبيوتر دا',
من فضلك حاول تانى.',
'passwordtooshort' => 'لازم تكون على الاقل{{PLURAL:$1|1 حرف|$1 حروف}}.',
'password-name-match' => 'الباسورد بتاعتك لازم تكون مختلفه عن اسم اليوزر بتاعك.',
-'mailmypassword' => 'ابعتلى كلمة سر جديدة',
+'mailmypassword' => 'ابعتلى باسوورد جديده',
'passwordremindertitle' => 'كلمة سر مؤقته جديده ل {{SITENAME}}',
'passwordremindertext' => 'فيه واحد(غالبا انت، من عنوان الاى بى $1)
طلب باسورد جديده لـ{{SITENAME}} ($4).
لو سمحت تتجاهل الرسالة دى اذا الحساب دا اتفتحلك بالغلط.',
'usernamehasherror' => 'اسم اليوزر مش ممكن يكون فيه حروف هاش',
'login-throttled' => 'انت عملت محاولات لوجين كتيره ع الحساب ده.
-من فضلك استنى قبل المحاولة مرة تانيه.',
+من فضلك استنى $1 قبل المحاولة مرة تانيه.',
'loginlanguagelabel' => 'اللغة: $1',
# Change password dialog
'nocreate-loggedin' => 'انت ما عندك ش صلاحية تعمل صفحات جديدة.',
'sectioneditnotsupported-title' => 'تعديل الأقسام مش مدعوم',
'sectioneditnotsupported-text' => 'تعديل الاقسام مش مدعوم فى الصفحه دى',
-'permissionserrors' => 'غلطات فى السماح',
+'permissionserrors' => 'غلطه ف السماح',
'permissionserrorstext' => 'ما عندك ش صلاحية تعمل كدا،{{PLURAL:$1|علشان|علشان}}:',
'permissionserrorstext-withaction' => 'أنت ما عندكش الصلاحيات علشان $2، لل{{PLURAL:$1|سبب|أسباب}} ده:',
'recreate-moveddeleted-warn' => "'''تحذير: انت بتعيد انشاء صفحه اتمسحت قبل كده.'''
يظهر انها إتمسحت.',
'edit-conflict' => 'تضارب تحريرى.',
'edit-no-change' => 'تعديلك تم تجاهله، لأن ما حصلش أى تعديل للنص.',
+'postedit-confirmation' => 'تعديلك إتسييڤ.',
'edit-already-exists' => 'لم يمكن إنشاء صفحة جديدة.
هى موجودة بالفعل.',
+'defaultmessagetext' => 'النص الاوتوماتيكى',
+'content-failed-to-parse' => 'فشل ف تحليل $2 محتوى لـ $1 موديل: $3',
+'invalid-content-data' => 'بيانات المحتوى غلط',
'editwarning-warning' => 'لو سيبت الصفحه دى ممكن يخلّيك تضيّع اى تغييرات عملتها.
لو انت مسجّل دخولك, ممكن تعطّل التحذير ده من الجزء بتاع "تعديل" فى تفضيلاتك.',
+# Content models
+'content-model-wikitext' => 'ويكى تكست',
+'content-model-text' => 'كلام عادى',
+'content-model-javascript' => 'جاڤاسكربت',
+
# Parser/template warnings
'expensive-parserfunction-warning' => 'تحذير: الصفحه دى فيهااستدعاءات دالة محلل كثيرة مكلفة.
'recentchanges-label-bot' => 'التعديل ده عمله بوت',
'recentchanges-label-unpatrolled' => 'التعديل ده مإتراجعش لسه',
'recentchanges-legend-newpage' => '$1 - صفحه جديده',
-'rcnote' => "فيه تحت {{PLURAL:$1|'''1''' تغيير|آخر '''$1''' تغيير}} فى آخر {{PLURAL:$2|يوم|'''$2''' يوم}}، بدءا من $5، $4.",
'rcnotefrom' => "دى التعديلات من '''$2''' (ل '''$1''' معروضه).",
'rclistfrom' => 'اظهر التعديلات بدايه من $1',
'rcshowhideminor' => '$1 تعديلات صغيره',
'undeletebtn' => 'ترجيع',
'undeletelink' => 'عرض/رجع تانى',
'undeleteviewlink' => 'عرض',
-'undeletereset' => 'ابتدى من الأول',
'undeleteinvert' => 'اعكس الاختيار',
'undeletecomment' => 'السبب:',
'undeletedrevisions' => 'رجع تانى {{PLURAL:$1|تعديل واحد|تعديلين|$1 تعديلات|$1 تعديل|$1 تعديل}}',
# Block/unblock
'blockip' => 'منع يوزر',
-'blockip-title' => 'منع اليوزر',
'blockip-legend' => 'منع اليوزر',
'blockiptext' => 'استخدم الاستمارة اللى تحت لمنع عنوان أيبى أو يوزر معين من الكتابة.
دا لازم يحصل بس علشان تمنع التخريب ،و على حسب
'ipadressorusername' => 'عنوان الأيبى أو اسم اليوزر:',
'ipbexpiry' => 'مدة المنع:',
'ipbreason' => 'السبب:',
-'ipbreasonotherlist' => 'سبب تاني',
'ipbreason-dropdown' => '*أسباب المنع المشهورة
** تدخيل معلومات غلط
** مسح المحتوى من الصفحات
'ipbsubmit' => 'منع اليوزر دا',
'ipbother' => 'وقت تاني:',
'ipboptions' => '2 ساعه:2 hours,1 يوم:1 day,3 يوم:3 days,1 اسبوع:1 week,2 اسبوع:2 weeks,1 شهر:1 month,3 شهر:3 months,6 شهر:6 months,1 سنه:1 year,على طول:infinite',
-'ipbotheroption' => 'كمان',
-'ipbotherreason' => 'سبب تاني:',
'ipbhidename' => 'خبى اسم اليوزر من التعديلات و الليستات.',
'ipbwatchuser' => 'راقب صفحات اليوزر و النقاش بتوع اليوزر دا',
'ipb-change-block' => 'عيد منع اليوزر بالإعدادات دى',
'sorbsreason' => 'عنوان الأيبى بتاعك موجود كبروكسى مفتوح فى DNSBL اللى بيستعمله{{SITENAME}}.',
'sorbs_create_account_reason' => 'عنوان الأيبى بتاعك موجود كبروكسى مفتوح فى ال DNSBL اللى بيستعمله {{SITENAME}}.
ما ينفعش تفتح حساب.',
-'cant-block-while-blocked' => 'أنت لا يمكنك منع اليوزرز التانين و أنت ممنوع.',
'cant-see-hidden-user' => 'اليوزر اللى انت بتحاول تعمل له منع اصلا ممنوع و مخفى.اكمنك ما عندكش صلاحية تخبية اليوزرات، ما ينفعش تشوف المنع او تعدله.',
# Developer tools
'tooltip-rollback' => "\"'''ترجيع'''\" بيرجع بدوسه واحده التعديل (التعديلات) فى الصفحه دى لاخر واحد عدل الصفحه.",
'tooltip-undo' => '"رجوع" بترجع التعديل دا وبتفتح استمارة التعديل فى شكل البروفة. بتسمح بإضافة سبب فى الملخص.',
'tooltip-summary' => 'اكتب ملخص قصير',
+'interlanguage-link-title' => 'ل $1 – $2',
# Stylesheets
'common.css' => '/* الأنماط المتراصة CSS المعروضة هنا ستؤثر على كل الواجهات */',
'watchlistall2' => 'الكل',
'namespacesall' => 'الكل',
'monthsall' => 'الكل',
-'limitall' => 'الكل',
# Email address confirmation
'confirmemail' => 'اعمل تأكيد للأيميل بتاعك',
'confirmemail_success' => 'الايميل بتاعك اتأكد خلاص.
ممكن دلوقتى تسجل دخولك و تستمتع بالويكي.',
'confirmemail_loggedin' => 'الايميل بتاعك اتأكد خلاص.',
-'confirmemail_error' => 'حصلت حاجة غلط و احنا بنحفظ التأكيد بتاعك.',
'confirmemail_subject' => 'تأكيد الايميل من {{SITENAME}}',
'confirmemail_body' => 'فى واحد، ممكن يكون إنتا، من عنوان الأيبى $1،
فتح حساب "$2" بعنوان الايميل دا فى {{SITENAME}}.
'tog-minordefault' => 'সকলো সম্পাদনা অগুৰুত্বপূৰ্ণ বুলি নিজে নিজে চিহ্নিত কৰক',
'tog-previewontop' => 'সম্পাদনা বাকছৰ ওপৰত খচৰা দেখুৱাওক',
'tog-previewonfirst' => 'প্ৰথম সম্পাদনাৰ পিছত খচৰা দেখুৱাওক',
-'tog-nocache' => 'ব্ৰাউজাৰ পৃষ্ঠা কেশ্বিং নিষ্ক্ৰীয় কৰক',
'tog-enotifwatchlistpages' => 'মোৰ লক্ষ্য-তালিকাত থকা পৃষ্ঠা সলনি হলে মোলৈ ই-মেইল পঠাব',
'tog-enotifusertalkpages' => 'মোৰ বাৰ্তা পৃষ্ঠা সলনি হলে মোলৈ ই-মেইল পঠাব',
'tog-enotifminoredits' => "অগুৰুত্বপূৰ্ণ সম্পাদনা হ'লেও মোলৈ ই-মেইল পঠাব",
'recentchanges-label-minor' => 'এইটো অগুৰুত্বপূৰ্ণ সম্পাদনা',
'recentchanges-label-bot' => "এই সম্পাদনা ব'টৰ দ্বাৰা কৰা হৈছে",
'recentchanges-label-unpatrolled' => 'এই সম্পাদনাটো এতিয়াও পৰীক্ষা কৰা হোৱা নাই',
-'rcnote' => "যোৱা {{PLURAL:$2|দিনত|'''$2''' দিনত}} সংঘটিত {{PLURAL:$1|'''১'''|'''$1'''}}টা সালসলনি, $5, $4 পৰ্যন্ত ।",
'rcnotefrom' => "তলত '''$2''' ৰ পৰা হোৱা ('''$1''' লৈকে) পৰিৱৰ্তন দেখুৱা হৈছে ।",
'rclistfrom' => '$1ৰ পৰা নতুন সালসলনি দেখুৱাওক',
'rcshowhideminor' => '$1 -সংখ্যক নগণ্য সম্পাদনা',
'undeletebtn' => 'পুনঃসংস্থাপন কৰক',
'undeletelink' => 'লক্ষ্য কৰক/ঘূৰাই আনক',
'undeleteviewlink' => 'দেখুৱাওক',
-'undeletereset' => 'পূৰ্বৰ অৱস্থালৈ লৈ যাওক',
'undeleteinvert' => 'নিৰ্বাচন ওলোটা কৰক',
'undeletecomment' => 'কাৰণ:',
'undeletedrevisions' => '{{PLURAL:$1|১টা সংশোধন|$1টা সংশোধন}} পুনৰুদ্ধাৰ কৰা হৈছে',
'block' => 'সদস্য বাৰণ কৰক',
'unblock' => 'সদস্যৰ বাৰণ উঠাই লওক',
'blockip' => 'সদস্য বাৰণ কৰক',
-'blockip-title' => 'সদস্য বাৰণ কৰক',
'blockip-legend' => 'সদস্য বাৰণ কৰক',
'blockiptext' => 'তলৰ প্ৰপত্ৰখন ব্যৱহাৰ কৰি কোনো নিৰ্দিষ্ট আই.পি. ঠিকনা বা সদস্যনামৰ লিখাৰ অধিকাৰ বাৰণ কৰিব পাৰে ।
কেৱল ধ্বংসপ্ৰৱণতা ৰোধ কৰিবলৈ আৰু [[{{MediaWiki:Policy-url}}|নীতি]] মানি চলি এনে কৰক ।
'ipadressorusername' => 'আই-পি ঠিকনা বা সদস্যনাম:',
'ipbexpiry' => 'ম্যাদ উকলিব:',
'ipbreason' => 'কাৰণ:',
-'ipbreasonotherlist' => 'অন্য কাৰণ',
'ipbreason-dropdown' => '*প্ৰতিবন্ধকৰ সাধাৰণ কাৰণসমূহ
** ভুল তথ্য দিয়া
** পৃষ্ঠাৰ বিষয়বস্তু আঁতৰাই পেলোৱা
'ipbsubmit' => 'এই সদস্যক বাৰণ কৰক',
'ipbother' => 'অন্য সময়:',
'ipboptions' => '২ ঘণ্টা:2 hours,১ দিন:1 day,৩ দিন:3 days,১ সপ্তাহ:1 week,২ সপ্তাহ:2 weeks,১ মাহ:1 month,৩ মাহ:3 months,৬ মাহ:6 months,১ বছৰ:1 year,অনিৰ্দিষ্ট কাল:infinite',
-'ipbotheroption' => 'অন্যান্য',
-'ipbotherreason' => 'অন্য/অতিৰিক্ত কাৰণ:',
'ipbhidename' => 'সম্পাদনা আৰু তালিকা সমূহৰ পৰা সদস্যনাম আঁৰ দিয়ক',
'ipbwatchuser' => 'এই সদস্যৰ সদস্য আৰু আলোচনা পৃষ্ঠা লক্ষ্য কৰক',
'ipb-disableusertalk' => 'প্ৰতিবন্ধক থকা অৱস্থাত এই সদস্যজনক নিজৰ কথা-বতৰা পৃষ্ঠা সম্পাদনা কৰাৰ পৰা বিৰত কৰক',
'sorbsreason' => '{{SITENAME}}ত ব্যৱহাৰ কৰা DNSBLত আপোনাৰ আই.পি. ঠিকনা মুক্ত প্ৰক্সী হিছাপে তালিকাভুক্ত হৈ আছে ।',
'sorbs_create_account_reason' => '{{SITENAME}}ত ব্যৱহাৰ কৰা DNSBLত আপোনাৰ আই.পি. ঠিকনা মুক্ত প্ৰক্সী হিছাপে তালিকাভুক্ত হৈ আছে ।
আপুনি একাউণ্ট সৃষ্টি কৰিব নোৱাৰে',
-'cant-block-while-blocked' => 'নিজেই অৱৰোধিত হৈ থকা অৱস্থাত আপুনি আন সদস্যক অৱৰোধ কৰিব নোৱাৰে ।',
'cant-see-hidden-user' => 'আপুনি বাৰণ কৰিব বিচৰা সদস্যজনক ইতিমধ্যেই বাৰণ কৰি গোপন কৰা হৈছে ।
যিহেতু আপোনাৰ সদস্যগোপনতা অধিকাৰ নাই, আপুনি সদস্যজনৰ প্ৰতিবন্ধক চাব বা সম্পাদনা কৰিব নোৱাৰে ।',
'ipbblocked' => 'আপুনি আন সদস্যক অৱৰোধ কৰিব বা আঁতৰাব নোৱাৰে, কাৰণ আপুনি নিজেই বাধাপ্ৰাপ্ত অৱস্থাত আছে',
'watchlistall2' => 'সকলো',
'namespacesall' => 'সকলোবোৰ',
'monthsall' => 'সকলো',
-'limitall' => 'সকলোবোৰ',
# Email address confirmation
'confirmemail' => 'ই-মেইল ঠিকনা নিশ্চিত কৰক',
'confirmemail_success' => 'আপোনাৰ ই-মেইল ঠিকনা নিশ্চিতকৰণ কৰা হৈছে ।
আপুনি এতিয়া [[Special:UserLogin|প্ৰৱেশ]] কৰক আৰু ৱিকি উপভোগ কৰক ।',
'confirmemail_loggedin' => 'আপোনাৰ ই-মেইল ঠিকনা নিশ্চিত কৰা হৈছে ।',
-'confirmemail_error' => 'আপোনাৰ নিশ্চিতকৰণ সংৰক্ষণ কৰাত কিছু সমস্যা হৈছে ।',
'confirmemail_subject' => '{{SITENAME}} ই-মেইল ঠিকনা নিশ্চিতকৰণ',
'confirmemail_body' => 'কোনোবাই (সম্ভৱতঃ আপুনি) আই.পি. ঠিকনা $1ৰ পৰা এইটো ই-মেইল ঠিকনা ব্যৱহাৰ কৰি {{SITENAME}}ত
এটা একাউণ্ট "$2" পঞ্জীয়ন কৰিছে ।
# Special:ComparePages
'comparepages' => 'পৃষ্ঠা তুলনা কৰক',
-'compare-selector' => 'পৃষ্ঠা পুনৰীক্ষন তুলনা কৰক',
'compare-page1' => 'পৃষ্ঠা ১',
'compare-page2' => 'পৃষ্ঠা ২',
'compare-rev1' => 'পুনৰীক্ষণ ১',
'tog-minordefault' => 'Marcar toles ediciones como menores de mou predetermináu',
'tog-previewontop' => "Amosar previsualización enantes del cuadru d'edición",
'tog-previewonfirst' => 'Amosar previsualización na primera edición',
-'tog-nocache' => 'Desactivar la caché de páxines del restolador',
'tog-enotifwatchlistpages' => 'Mandame un corréu cuando camude una páxina o ficheru de la mio llista de vixilancia',
'tog-enotifusertalkpages' => "Mandame un corréu cuando camude la mio páxina d'alderique",
'tog-enotifminoredits' => 'Mandame tamién un corréu cuando heba ediciones menores de les páxines y ficheros',
'recentchanges-label-plusminus' => "El tamañu d'esta páxina cambió nesti númberu de bytes",
'recentchanges-legend-newpage' => '(ver tamién la [[Special:NewPages|llista de páxines nueves]])',
'recentchanges-legend-plusminus' => "(''±123'')",
-'rcnote' => "Equí embaxo {{PLURAL:$1|pue vese '''1''' cambiu|puen vese los caberos '''$1''' cambios}} {{PLURAL:$2|del caberu día|de los caberos '''$2''' díes}}, a fecha de $5, $4.",
'rcnotefrom' => "Abaxo tan los cambeos dende '''$2''' (s'amuesen fasta '''$1''').",
'rclistfrom' => 'Amosar los nuevos cambios dende $1',
'rcshowhideminor' => '$1 ediciones menores',
'undeletebtn' => 'Restaurar',
'undeletelink' => 'ver/restaurar',
'undeleteviewlink' => 'ver',
-'undeletereset' => 'Reaniciar',
'undeleteinvert' => 'Invertir seleición',
'undeletecomment' => 'Motivu:',
'undeletedrevisions' => '{{PLURAL:$1|1 revisión restaurada|$1 revisiones restauraes}}',
'block' => 'Bloquiar usuariu',
'unblock' => 'Desbloquiar usuariu',
'blockip' => 'Bloquiar usuariu',
-'blockip-title' => 'Bloquiar usuariu',
'blockip-legend' => 'Bloquiar usuariu',
'blockiptext' => "Usa'l siguiente formulariu pa bloquiar el permisu d'escritura a una IP o a un usuariu concretu.
Esto debería facese sólo pa prevenir vandalismu como indiquen les [[{{MediaWiki:Policy-url}}|polítiques]]. Da un motivu específicu (como por exemplu citar páxines que fueron vandalizaes).",
'ipadressorusername' => "Direición IP o nome d'usuariu:",
'ipbexpiry' => 'Caducidá:',
'ipbreason' => 'Motivu:',
-'ipbreasonotherlist' => 'Otru motivu',
'ipbreason-dropdown' => "*Motivos comunes de bloquéu
** Enxertamientu d'información falso
** Dexar les páxines en blanco
'ipbsubmit' => 'Bloquiar esti usuariu',
'ipbother' => 'Otru periodu:',
'ipboptions' => '2 hores:2 hours,1 día:1 day,3 díes:3 days,1 selmana:1 week,2 selmanes:2 weeks,1 mes:1 month,3 meses:3 months,6 meses:6 months,1 añu:1 year,indefiníu:infinite',
-'ipbotheroption' => 'otru',
-'ipbotherreason' => 'Motivu distintu/adicional:',
'ipbhidename' => "Anubrir el nome d'usuariu d'ediciones y llistes",
'ipbwatchuser' => "Vixilar les páxines d'usuariu y d'alderique d'esti usuariu",
'ipb-disableusertalk' => "Torgar qu'esti usuariu edite la so páxina d'alderique mentanto tea bloquiáu",
'sorbsreason' => 'La to direición IP sal na llista de proxys abiertos en DNSBL usada por {{SITENAME}}.',
'sorbs_create_account_reason' => 'La to direición IP sal na llista de proxys abiertos en DNSBL usada por {{SITENAME}}. Nun pues crear una cuenta',
'xffblockreason' => "Una direición IP presente na testera X-Forwarded-For, o suya o d'un sirvidor proxy que ta usando, ta bloquiada. El motivu orixinal del bloquéu foi: $1",
-'cant-block-while-blocked' => 'Nun pues bloquiar a otros usuarios mentes tu teas bloquiáu.',
'cant-see-hidden-user' => "L'usuariu que tentes bloquiar yá ta bloquiáu y anubríu.
Como nun tienes permisos p'anubrir usuarios, nun pues ver o editar el bloquéu del usuariu.",
'ipbblocked' => 'Nun pues bloquiar o desbloquiar a otros usuarios, porque tas bloquiáu tu mesmu',
'watchlistall2' => 'too',
'namespacesall' => 'toos',
'monthsall' => 'toos',
-'limitall' => 'toos',
# Email address confirmation
'confirmemail' => 'Confirmar direición de corréu',
'confirmemail_success' => 'El to corréu quedó confimáu.
Agora yá pues [[Special:UserLogin|coneutate]] y esfrutar de la wiki.',
'confirmemail_loggedin' => 'Quedó confirmada la to direición de corréu.',
-'confirmemail_error' => 'Hebo un problema al guardar la to confirmación.',
'confirmemail_subject' => 'Confirmación de la direición de corréu de {{SITENAME}}',
'confirmemail_body' => 'Daquién, seique tu, dende la IP $1, rexistró la cuenta "$2" con
esta direición de corréu en {{SITENAME}}.
# Special:ComparePages
'comparepages' => 'Comparar páxines',
-'compare-selector' => 'Comparar revisiones de páxina',
'compare-page1' => 'Páxina 1',
'compare-page2' => 'Páxina 2',
'compare-rev1' => 'Revisión 1',
'tog-minordefault' => 'Jinaf betakseem omavon mezolonon zo torigid',
'tog-previewontop' => 'Abdinedira nediwer vamoe sutelaxo',
'tog-previewonfirst' => 'Nedira va abdinedira bal taneafa betara',
-'tog-nocache' => 'Gritegirara va bupreyutasiki',
'tog-enotifwatchlistpages' => 'Moi da betara va jinafi suzdasiki zo staksá !',
'tog-enotifusertalkpages' => 'Moi da betara va jinafu favesikbu pu jin staksar !',
'tog-enotifminoredits' => 'Icde bubetamara dere zo staksá !',
'recentchanges-label-minor' => 'Betamaks',
'recentchanges-label-bot' => 'Bata betara gan "bot" zo sopuyur',
'recentchanges-label-unpatrolled' => 'Bat betaks men al zo fier',
-'rcnote' => "Vleveon {{PLURAL:$1|'''1''' betaks tir|ironokaf '''$1''' betaks tid}} bak ironokaf {{PLURAL:$2|viel|'''$2''' viel}}, wetce $5 ik $4.",
'rcnotefrom' => 'Tir skuyun betakseem mali <strong>$2</strong> (<b>$1</b> cugon).',
'rclistfrom' => 'Nedira va warzaf betakseem mali $1.',
'rcshowhideminor' => '$1 betamakseem',
'undeletebtn' => 'Skura va dimplekura !',
'undeletelink' => 'wira ik dimplekura',
'undeleteviewlink' => 'wira',
-'undeletereset' => 'Tolplekura',
'undeletecomment' => 'Sebuks :',
'undeletedrevisions' => '$1 siatos dimplekuyun',
'undeletedrevisions-files' => '$1 betaks isu $2 iyeltak zo dimplekuyud',
'ipadressorusername' => 'IP mane ok favesikyolt',
'ipbexpiry' => 'Elekaracek',
'ipbreason' => 'Elekaradanda :',
-'ipbreasonotherlist' => 'Ardume',
'ipbcreateaccount' => 'Djira va pataredura',
'ipbemailban' => 'Djira va favesik icde "email" staksera',
'ipbsubmit' => 'Elekara va bate mane',
'ipbother' => 'Arviele :',
'ipboptions' => '2 bartiv:2 hours,1 viel:1 day,3 viel:3 days,1 perka:1 week,2 perka:2 weeks,1 aksat:1 month,3 aksat:3 months,6 aksat:6 months,1 tanda:1 year,kotabon:infinite',
-'ipbotheroption' => 'ar',
-'ipbotherreason' => 'Ardume/lodume :',
'badipaddress' => 'IP mane tir mewadafe.',
'blockipsuccesssub' => 'Elekanhara',
'blockipsuccesstext' => "L'adresse IP « $1 » a été bloquée.<br />Vous pouvez consulter sur cette [[Special:BlockList|page]] la liste des adresses IP bloquées.",
'confirmemail_needlogin' => 'Ta gruyera va "email" mane rin va $1 olegal.',
'confirmemail_success' => 'Votre email est confirmée. Vous pouvez maintenant vous connecter et profiter du wiki.',
'confirmemail_loggedin' => 'Votre adresse est maintenant confirmée',
-'confirmemail_error' => 'Un problème est survenu en voulant enregistrer votre confirmation',
'confirmemail_subject' => "Confirmation d'email pour {{SITENAME}}",
'confirmemail_body' => 'Someone, probably you, from IP address $1,
has registered an account "$2" with this e-mail address on {{SITENAME}}.
'tog-minordefault' => 'Default olaraq bütün redaktələri kiçik redaktə kimi nişanla',
'tog-previewontop' => 'Sınaq göstərişi yazma sahəsindən əvvəl göstər',
'tog-previewonfirst' => 'İlkin redaktədə sınaq göstərişi',
-'tog-nocache' => 'Səhifələri keşdə saxlama',
'tog-enotifwatchlistpages' => 'İzləmə siyahısında olan məqalə redaktə olunsa, mənə e-məktub göndər',
'tog-enotifusertalkpages' => 'Müzakirə səhifəm redaktə olunsa, mənə e-məktub göndər',
'tog-enotifminoredits' => 'Səhifələrdə kiçik dəyişikliklər olsa belə, mənə e-məktub göndər',
'recentchanges-label-bot' => 'Bu redaktə bot tərəfindən edilmişdir',
'recentchanges-label-unpatrolled' => 'Bu redaktə hələ nəzərdən keçirilməmişdir',
'recentchanges-legend-newpage' => '$1 - yeni səhifə',
-'rcnote' => "Aşağıdakı {{PLURAL:$1|'''1''' dəyişiklik|'''$1''' dəyişiklik}} saat $5, $4 tarixinə qədər son {{PLURAL:$2|gün|'''$2''' gün}} ərzində edilmişdir.",
'rcnotefrom' => "Aşağıda '''$2'''-dən ('''$1'''-ə qədər) dəyişikliklər sadalanmışdır.",
'rclistfrom' => '$1 vaxtından başlayaraq yeni dəyişiklikləri göstər',
'rcshowhideminor' => 'Kiçik redaktələri $1',
'undeletebtn' => 'Bərpa et',
'undeletelink' => 'bax/bərpa et',
'undeleteviewlink' => 'görünüş',
-'undeletereset' => 'Qur',
'undeleteinvert' => 'Seçilən xaricindəkiləri',
'undeletecomment' => 'Səbəb:',
'undeletedrevisions' => 'Cəmi {{PLURAL:$1|1 redaktə|$1 redaktə}} geri qaytarıldı.',
'block' => 'İstifadəçini blokla',
'unblock' => 'İstifadəçinin blokunu götür',
'blockip' => 'İstifadəçini blokla',
-'blockip-title' => 'İstifadəçini blokla',
'blockip-legend' => 'İstifadəçinin bloklanması',
'ipadressorusername' => 'IP-ünvanı və ya istifadəçi adı',
'ipbexpiry' => 'Bitmə müddəti:',
'ipbreason' => 'Səbəb:',
-'ipbreasonotherlist' => 'Digər səbəb',
'ipbreason-dropdown' => '*Bloklama səbəbləri:
** Yalan məlumatların əlavə edilməsi
** Səhifənin məzmununun silinməsi
'ipbsubmit' => 'Bu istifadəçini blokla',
'ipbother' => 'Başqa vaxt',
'ipboptions' => '2 saat:2 hours,1 gün:1 day,3 gün:3 days,1 həftə:1 week,2 həftə:2 weeks,1 ay:1 month,3 ay:3 months,6 ay:6 months,1 il:1 year,müddətsiz:infinite',
-'ipbotheroption' => 'başqa',
-'ipbotherreason' => 'Başqa/əlavə səbəb:',
'ipbhidename' => 'İstifadəçi adını redaktələrdə və siyahılarda gizlət',
'ipbwatchuser' => 'Bu istifadəçinin müzakirə və istifadəçi səhifəsini izlə',
'ipb-disableusertalk' => 'Bu istifadəçi bloklu olarkən öz müzakirə səhifəsində redaktə etməsini əngəllə',
'watchlistall2' => 'hamısını',
'namespacesall' => 'bütün',
'monthsall' => 'hamısı',
-'limitall' => 'bütün',
# Email address confirmation
'confirmemail' => 'E-məktubunu təsdiq et',
# Special:ComparePages
'comparepages' => 'Səhifələri qarşılaşdır',
-'compare-selector' => 'Səhifə redaktələrini qarşılaşdır',
'compare-page1' => 'Səhifə 1',
'compare-page2' => 'Səhifə 2',
'compare-rev1' => 'Dəyişiklik 1',
'tog-minordefault' => 'دیفالت اولاراق بوتون دَییشدیرمهلریمی کیچیک دَییشدیر کیمی نیشانلا',
'tog-previewontop' => 'اؤنگؤستریشی يازماق قوتوسوندان قاباق گؤستر',
'tog-previewonfirst' => 'ایلک دَییشدیرمهده اؤنگؤستریشی گؤستر',
-'tog-nocache' => 'براوزرین کَش ائتمگینی ایشلدن سال',
'tog-enotifwatchlistpages' => 'ایزلهدیکلریمده اولان صحیفه یوخسا فایل دَییشدیریلنده، منه ایمیل گؤندر',
'tog-enotifusertalkpages' => 'دانیشیق صحیفهم دَییشدیریلنده منه ایمیل گؤندر',
'tog-enotifminoredits' => 'صحیفهلرده و فایللاردا کیچیک دَییشیکلیکلر اولسا دا منه ایمیل گؤندر',
'recentchanges-label-minor' => 'بو بیر کیچیک دَییشدیرمهدیر',
'recentchanges-label-bot' => 'بو دییشیک بیر بوت طرفیندن ائدیلیبدیر',
'recentchanges-label-unpatrolled' => 'بو دییشیکلیک هله گؤزدن گئچیریلمهییبدیر',
-'rcnote' => "آشاغیدا {{PLURAL:$1|'''بیر'''|'''$1'''}} ديَیشیکلیک، سون {{PLURA?:$2|بیر|$2}} گونده، ساعت $5، $4 تاریخینه قدر گلیبدیر.",
'rcnotefrom' => "آشاغیدا '''$2'''-دن ('''$1'''-ه قدر) ديَیشیکلیکلر گلیبلر.",
'rclistfrom' => '$1 واختیندان باشلایاراق یئنی دییشیکلری گؤستر',
'rcshowhideminor' => 'کیچیک دَییشیکلری $1',
'undeletebtn' => 'قایتار',
'undeletelink' => 'باخ/قایتار',
'undeleteviewlink' => 'باخ',
-'undeletereset' => 'قور',
'undeleteinvert' => 'سئچیلنی دؤندر',
'undeletecomment' => 'ندن:',
'undeletedrevisions' => 'جمعی {{PLURAL:$1|1 دییش|$1 دییشدیر}} گئری قایتاریلدی.',
'block' => 'ایستیفادچینی باغلاما',
'unblock' => 'ایستیفادهچینین باغلانماسین گؤتور',
'blockip' => 'ایستیفاده چی نی باغلا',
-'blockip-title' => 'ایستیفادچی نی باغلا',
'blockip-legend' => 'ایستیفادچی نی باغلا',
'blockiptext' => 'آشاغیداکی فورمو ایستیفاده ائدهرک مویین بیر ایپنین و یا قئیدیاتدان کئچمیش ایستیفادهچینین دییشیکلیک ائتمهسینی مانعه تؤرهده بیلرسینیز. بو یالنیز واندالیزمی قارشیسینی آلماق اوچون و [[{{MediaWiki:Policy-url}}|قایدالارا]] اویغون اولاراق ائدیلمهلی. آشاغییا موتلق قاداغا ایله علاقهدار بیر شرح یازین. (نومونه:-بو-صحیفهلرده واندالیزم ائتمیشدیر).',
'ipadressorusername' => 'آی-پی عونوانی و یا ایستیفادهچی آدی',
'ipbexpiry' => 'بیتمه مدتی:',
'ipbreason' => 'ندن:',
-'ipbreasonotherlist' => 'باشقا سبب',
'ipbreason-dropdown' => '*باغلانما سببلری:
** یالان معلوماتلارین علاوه ائدیلمهسی
** صحیفهنین مزمونونون سیلینمهسی
'ipbsubmit' => 'بو ایستیفاده چی نی باغلا',
'ipbother' => 'باشقا واخت',
'ipboptions' => '2 ساعت:2 hours,1 گون:1 day,3 گونلر:3 days,1 هفته:1 week,2 هفتهلر:2 weeks,1 آی:1 month,3 آیلار:3 months,6 آیلار:6 months,1 ایل:1 year,مدتسیز:infinite',
-'ipbotheroption' => 'آیری',
-'ipbotherreason' => 'آیری سبب/آرتیق:',
'ipbhidename' => 'ایستیفادهچی آدینی دییشدیرلرده و سیاهیلاردا گیزلت',
'ipbwatchuser' => 'بو ایستیفادهچینین دانیشیق و ایستیفادهچی صحیفهسینی ایزله',
'ipb-disableusertalk' => 'بو ایستیفادهچی باغلی اولارکن اؤز دانیشیق صحیفهسینده دییشدیر ائتمهسینی اوز الیله قاباقین آلما',
'sorbs_create_account_reason' => 'ایپ اونوانینیز {{SITENAME}} سایتی طرفیندن ایستیفاده ائدیلن DNSBL آچیق پروکسی اولاراق اولونموش.
حساب میدانا گتیره بیلمز',
'xffblockreason' => 'X-Forwarded-For باشلیغیندا، سیزین یا بیر ایشلتدیگینیز پروکسی خیدمتچینین بلوکلانمیش آیپی آدرسی وار. ایلکین بلوکلاما سببی: $1',
-'cant-block-while-blocked' => 'سیز ائنگئللیيکئن باشقا ایستیفادهچیلری مانعه تؤرهده بیلمزسینیز.',
'cant-see-hidden-user' => 'قارشیسینی آلماق ایستهدیگینیز ایستیفادهچی اونسوز دا مانعه تؤرهدیلمیش و گیزلنمیش. کوللانیجیگیزلئ ایجازهنیز اولمادیغی اوچون، ایستیفادهچینین قارشیسینین آلینماسینی گؤره بیلمز يا دا ديَیشدیره.',
'ipbblocked' => 'دیگر ایستیفادهچیلری مانعه تؤرهده بیلمز يا دا مانعه تؤرتمهسینی قالدیرا بیلمز، چونکی اؤزونوز ائنگئللئنمیشسیز',
'ipbnounblockself' => 'اؤز بوولوکلانمانیزی کالدیرمانیزا ایجازه وئریلمیر',
'watchlistall2' => 'بوتون',
'namespacesall' => 'بوتون',
'monthsall' => 'بوتون',
-'limitall' => 'بوتون',
# Email address confirmation
'confirmemail' => 'ایمیل-پوست اونوانینی تصدیق ائت',
'confirmemail_success' => 'ایمیل اونوانینیز ایندی تسدیق ائدیلدی.
سیز ایندی [[Special:UserLogin|حئساب آچاراق]] ویکیدن لذت آپارین.',
'confirmemail_loggedin' => 'ایمیلنیز ایندی تسدیق ائدیلدی.',
-'confirmemail_error' => 'قئید بیلینمهين بیر خطا اوچون قئید اولونمادی.',
'confirmemail_subject' => '{{SITENAME}} ایمیل تسدیق ائتمه',
'confirmemail_body' => 'بیری، احتیماللا سیز، $1 ایپ اونوانیندان،
{{SITENAME}} سايتیندا بو ائ-پوچت اونوانی ایله $2 حسابینی آچدی.
# Special:ComparePages
'comparepages' => 'صحیفهلری قارشیلاشدیر',
-'compare-selector' => 'صحیفه دییشدیرلرینی قارشیلاشدیر',
'compare-page1' => 'صحیفه 1',
'compare-page2' => 'صحیفه 2',
'compare-rev1' => 'نوسخه ۱',
'tog-minordefault' => 'Бөтә үҙгәртеүҙәрҙе, ғәҙәттә, әҙ үҙгәреш тип билдәләргә',
'tog-previewontop' => 'Алдан байҡау тәҙрәһен мөхәррирләү битенең өҫтөнә ҡуйырға',
'tog-previewonfirst' => 'Мөхәррирләүгә күскәндә алдан ҡарау күрһәтелһен',
-'tog-nocache' => 'Браузерҙа биттәрҙе кэшлауҙы тыйырға',
'tog-enotifwatchlistpages' => 'Күҙәтеү исемлегендәге биттәрҙең һәм файлдарҙың үҙгәрештәре тураһында электрон почта аша хәбәр итергә',
'tog-enotifusertalkpages' => 'Шәхси фекер алышыу битем үҙгәртелеү тураһында электрон почта аша белдерергә',
'tog-enotifminoredits' => 'Биттәрҙең һәм файлдарҙың аҙ гынә үҙгәрештәре тураһында ла электрон почта аша хәбер итергә',
'recentchanges-label-bot' => 'Был төҙәтеү бот тарафынан башҡарылды',
'recentchanges-label-unpatrolled' => 'Был төҙәтеү ҡаралмаған әле',
'recentchanges-legend-newpage' => '$1 — яңы бит',
-'rcnote' => 'Аҫта $4 $5 тиклем эшләнгән, һуңғы {{PLURAL:$2|1|$2}} көн эсендәге һуңғы {{PLURAL:$1|1|$1}} үҙгәртеү күрһәтелгән.',
'rcnotefrom' => "Түбәндә '''$2''' башлап ('''$1''' тиклем) үҙгәртеүҙәр күрһәтелгән.",
'rclistfrom' => '$1 башлап яңы үҙгәртеүҙәрҙе күрһәт.',
'rcshowhideminor' => 'бәләкәй төҙәтеүҙәрҙе $1',
'undeletebtn' => 'Тергеҙергә',
'undeletelink' => 'ҡарарға/тергеҙергә',
'undeleteviewlink' => 'ҡарарға',
-'undeletereset' => 'Юҡ итергә',
'undeleteinvert' => 'Һайланғандарҙы әйләндерергә',
'undeletecomment' => 'Сәбәп:',
'undeletedrevisions' => '$1 {{PLURAL:$1|өлгө}} тергеҙелде',
'block' => 'Ҡатнашыусыны бикләү',
'unblock' => 'Бикләнгән ҡатнашыусыны азат итеү',
'blockip' => 'Ҡатнашыусыны бикләү',
-'blockip-title' => 'Ҡатнашыусыны бикләү',
'blockip-legend' => 'Ҡатнашыусыны бикләү',
'blockiptext' => 'Билдәләнгән IP адрестан яҙыу мөмкинлеген бикләү өсөн, түбәндәге форманы ҡулланығыҙ.
Был бары тик вандаллыҡҡа юл ҡуймау өсөн генә һәм [[{{MediaWiki:Policy-url}}|ҡағиҙәләр]] буйынса ғына эшләнергә тейеш.
'ipadressorusername' => 'Ҡатнашыусының IP-адресы йәки исеме:',
'ipbexpiry' => 'Тамамлана:',
'ipbreason' => 'Сәбәп:',
-'ipbreasonotherlist' => 'Башҡа сәбәп',
'ipbreason-dropdown' => '*Ғәҙәттәге бикләү сәбәптәре
** Ялған мәғлүмәт өҫтәү
** Биттәрҙең эстәлеген юйыу
'ipbsubmit' => 'Был ҡатнашыусыны тыйырға',
'ipbother' => 'Башҡа ваҡыт:',
'ipboptions' => '2 сәғәт:2 hours,1 көн:1 day,3 көн:3 days,1 аҙна:1 week,2 аҙна:2 weeks,1 ай:1 month,3ай:3 months,6 ай:6 months,1 йыл:1 year,сикләнмәгән:infinite',
-'ipbotheroption' => 'башҡа',
-'ipbotherreason' => 'Башҡа/өҫтәмә сәбәп:',
'ipbhidename' => 'Ҡатнашыусының исемен үҙгәртеүҙәрҙә һәм исемлектәрҙә йәшерергә',
'ipbwatchuser' => 'Ҡатнашыусының битен һәм фекер алышыу битен күҙәтеүҙәр исемлегенә өҫтәргә',
'ipb-disableusertalk' => 'Бикләү ваҡытында был ҡулланыусыны үҙ фекер алышыу битен мөхәррирләүҙән тыйырға',
'sorbs_create_account_reason' => 'Һеҙҙең IP адресығыҙ {{SITENAME}} проекты ҡулланған DNSBL исемлегендә асыҡ прокси тип иҫәпләнә.
Һеҙ иҫәп яҙмаһы булдыра алмайһығыҙ.',
'xffblockreason' => 'X-Forwarded-For атамаһы эсенә ингән һәм һеҙҙекеме, һеҙ ҡулланған прокси-серверҙыҡымы булған IP-адрес бикләнде. Бикләүҙең тәүсәбәбе ошо ине: $1',
-'cant-block-while-blocked' => 'Үҙегеҙ бикләнгән ваҡытта һеҙ башҡа ҡатнашыусыларҙы бикләй алмайһығыҙ.',
'cant-see-hidden-user' => 'Һеҙ бикләргә тырышҡан ҡатнашыусы әлеге ваҡытта бикләнгән һәм йәшерелгән.
Ҡатнашыусыларҙы йәшереү хоҡуғығыҙ булмағанға күрә, һеҙ был бикләүҙе ҡарай йәки үҙгәртә алмайһығыҙ.',
'ipbblocked' => 'Үҙегеҙ бикләнгән ваҡытта һеҙ башҡа ҡатнашыусыларҙы бикләй йәки бикте ала алмайһығыҙ.',
'watchlistall2' => 'бөтә',
'namespacesall' => 'бөтә',
'monthsall' => 'бөтә',
-'limitall' => 'бөтә',
# Email address confirmation
'confirmemail' => 'Электрон почта адресын раҫлау',
'confirmemail_success' => 'Һеҙҙең электрон почта адресығыҙ раҫланды.
Хәҙер һеҙ [[Special:UserLogin|танылыу үтеп]], вики проект менән ҡуллана алаһығыҙ.',
'confirmemail_loggedin' => 'Һеҙҙең электрон почта адресығыҙ раҫланды.',
-'confirmemail_error' => 'Электрон почта адресын раҫлаған ваҡытта хата килеп сыҡты.',
'confirmemail_subject' => '{{SITENAME}} электрон почта адресын раҫлау',
'confirmemail_body' => 'Кемдер, бәлки һеҙҙер, $1 IP адресынан {{SITENAME}} проектында
ошо электрон почта адресы менән "$2" иҫәп яҙмаһын теркәгән.
# Special:ComparePages
'comparepages' => 'Биттәрҙе сағыштырыу',
-'compare-selector' => 'Биттәрҙең өлгөләрен сағыштырыу',
'compare-page1' => 'Беренсе бит',
'compare-page2' => 'Икенсе бит',
'compare-rev1' => 'Беренсе өлгө',
'tog-minordefault' => "D' eigernen Änderrungen standardmässig gringfiagig markirn",
'tog-previewontop' => 'Vurschau ówerhoib vom Beorweitungsfenster åzoang',
'tog-previewonfirst' => "Ban ersten Beorweiten oiwei d' Vurschau åzoang",
-'tog-nocache' => 'Seitencache vom Browser deaktivirn',
'tog-enotifwatchlistpages' => 'Bei Änderrungen voh beówochterde Seiten a E-Mail schicken',
'tog-enotifusertalkpages' => 'Bei Änderrungen voh meiner Benutzerseiten a E-Mail schicken',
'tog-enotifminoredits' => 'Aa ba kloane Änderrungen voh beówochterde Seiten a E-Mail schicker',
'recentchanges-label-minor' => 'Kloane Endarunga',
'recentchanges-label-bot' => 'Endarung duach an Bot',
'recentchanges-label-unpatrolled' => 'De Endarung is no ned kontrolliad worn',
-'rcnote' => "{{PLURAL:$1|'''1''' Endarung|'''$1''' Endarunga}} in dn {{PLURAL:$2|letztn 24 Stundn|letztn '''$2'''Dog}}.
-Stand: $4, $5 Uhr.",
'rcnotefrom' => "Untn san de Endarunga seit '''$2''' (bis za '''$1''' Ozoagn).",
'rclistfrom' => 'Nua Endarunga seit $1 zoagn.',
'rcshowhideminor' => 'Kloane Endarunga $1',
'undeletebtn' => 'Wiederherstön',
'undeletelink' => 'oschaugn / wiadaheastejn',
'undeleteviewlink' => 'oschaugn',
-'undeletereset' => 'Zrucksétzen',
'undeletedfiles' => '$1 {{plural:$1|Datei|Dateien}} san wieda hergstellt worn',
'undelete-search-box' => 'Suach noch gléschde Seiten',
'undelete-search-submit' => 'Suach',
'block' => 'Benutzer sperrn',
'unblock' => 'Benutzer freigeem',
'blockip' => 'IP-Adress/Benytzer sperrn',
-'blockip-title' => 'Benytzer sperrn',
'blockip-legend' => 'IP-Adresse/Benutzer sperrn',
'blockiptext' => "Mid dem Formular sperrst a IP-Adress oder an Benytzernåmen, das vo durten aus koane Endarungen mer vurgnumma wern kennan.
Des soid nur dafoing, um an Vandalismus z' vahindern und in Yweraistimmung mid d' [[{{MediaWiki:Policy-url}}|Richtlinien]].
'ipadressorusername' => 'IP-Adress oder Benytzernåm:',
'ipbexpiry' => 'Sperrdauer:',
'ipbreason' => 'Grund:',
-'ipbreasonotherlist' => 'Åndarer Grund:',
'ipbreason-dropdown' => '* Oigmoahne Sperrgrynd
** Eihfyng voh voische Informaziónen
** Laarn voh Seiten
'ipbsubmit' => 'IP-Adress/Benutzer sperrn',
'ipbother' => 'Åndre Dauer (auf englisch):',
'ipboptions' => '2 Stund:2 hours,1 Dog:1 day,3 Dog:3 days,1 Woch:1 week,2 Wocha:2 weeks,1 Monat:1 month,3 Monat:3 months,6 Monat:6 months,1 Joar:1 year, Infinit:infinite',
-'ipbotheroption' => 'Åndre Dauer:',
-'ipbotherreason' => 'Ånderner/ergenznder Grund:',
'ipbhidename' => 'An Benytzernåmen in Beorwaitungen und Linsten vastecken',
'ipbwatchuser' => 'De Benytzer(diskussions)saiten beowochten',
'ipb-change-block' => "D' Sperrn mid de Sperrparameter danaiern",
# Special:ComparePages
'comparepages' => 'Seiten vagleichen',
-'compare-selector' => 'Seitenversiónen vagleichen',
'compare-page1' => 'Seiten 1',
'compare-page2' => 'Seiten 2',
'compare-rev1' => 'Versión 1',
'tog-minordefault' => 'په طور پیش فرض کل اصلاحات آ په داب جزی مشخص کن',
'tog-previewontop' => 'بازبین پیش دار پیش چه جعبه اصلاح',
'tog-previewonfirst' => 'ته اولین اصلاح بازبینی پیش دار',
-'tog-nocache' => 'ذخیره کتن صفحه یا غیر فعال کن',
'tog-enotifwatchlistpages' => 'منی ایمیل جن وهدی که یک صفحه ای ته منی لیست چارگ عوص بیت',
'tog-enotifusertalkpages' => 'منآ ایمیل جن وهدی که صفحه ی گپ کاربر من عوض بیت',
'tog-enotifminoredits' => 'من ایمیل جن همی داب په هوردین اصلاحات صفحات',
'recentchanges-legend' => 'گزینه ی نوکین تغییرات',
'recentchanges-summary' => 'رندگر نوکترین تغییرات ته ویکی تی ای صفحه.',
'recentchanges-feed-description' => 'آهرین تغییرات ته وی کی چه ای فید رند گر',
-'rcnote' => "جهلء{{PLURAL:$1|هست '''1''' تغییری|هستن آهری '''$1''' تغییرات}} ته آهرین {{PLURAL:$2|روچ|'''$2''' روچان}}, چه$5, $4.",
'rcnotefrom' => "جهلا تغییرات چه '''$2''' (تا '''$1''' پیش دارگنت). هست",
'rclistfrom' => 'پیش دار نوکین تغییراتآ چه $1',
'rcshowhideminor' => '$1 هوردین تغییرات',
'undeletebtn' => 'باز گردینگ',
'undeletelink' => 'بچار/واتر',
'undeleteviewlink' => 'پیشدارگ',
-'undeletereset' => 'برگردینگ',
'undeleteinvert' => 'چپکایگ کتن انتخاب',
'undeletecomment' => 'نظر:',
'undeletedrevisions' => '{{PLURAL:$1|1 بازبینی|$1 بازبینی آن}} واترینگ بیت',
'ipadressorusername' => 'آدرس آي پی یا نام کاربری:',
'ipbexpiry' => 'وهد هلگ:',
'ipbreason' => 'دلیل:',
-'ipbreasonotherlist' => 'دگ دلیل',
'ipbreason-dropdown' => '* متداولین دلایل محدودیت
** وارد کتن غلطین اطلاحات
** زورگ محتوا چه صفحات
'ipbsubmit' => 'ای کاربرء محدود کن',
'ipbother' => 'دگر وهد:',
'ipboptions' => '۲ ساعت:2 hours,۱ روچ:1 day,۳ روچ:3 days,۱ هفته:1 week,۲ هفته:2 weeks,۱ ماه:1 month,۳ ماه:3 months,۶ ماه:6 months,۱ سال:1 year,بیحد:infinite',
-'ipbotheroption' => 'دگر',
-'ipbotherreason' => 'دگر/اضافی ان دلیل:',
'ipbhidename' => 'پناه کن نام کاربری چه اصلاحات و لیستان',
'ipbwatchuser' => 'بچار ای کاربرء صفحات گپ و کاربری آ',
'ipb-change-block' => 'بند کتن ای کاربر گون ای تنظیمات',
'sorbsreason' => 'شمی آدرس آی پی لیست بوتت په داب پچین پروکسی ته DNSBL که استفاده بیت گون {{SITENAME}}.',
'sorbs_create_account_reason' => 'شمی آدرس آی پی لیست بوتت په داب پچین پروکسی ته دی ان ای بی ال که استفاده بیت گون {{SITENAME}}.
شما نه تونیت حسابی شرکنیت',
-'cant-block-while-blocked' => 'شما نه تونیت دگه کاربرانء بند کنیت وهدی که شما وت بند هستیت',
# Developer tools
'lockdb' => 'دیتابیس کبل کن',
'confirmemail_success' => 'شمی آدرس ایمیل تایید بوتت.
شما الان تونت وارد بیت و چه ویکی سوب برت',
'confirmemail_loggedin' => 'شمی آدرس ایمیل هنو تایید بوتت',
-'confirmemail_error' => 'لهتی چیز اشتباهت وهد ذخیره کتن شمی تایید.',
'confirmemail_subject' => '{{SITENAME}} تایید آدرس ایمیل',
'confirmemail_body' => 'یک نفر،بلکه شما، چه آی پی آدرس $1,
یک حسابی ثبت کتت "$2" گون ای آدرس ایمیل ته {{SITENAME}}.
'tog-minordefault' => 'Markahán gabos na saradit na pagliwat sa paaging panugmad',
'tog-previewontop' => 'Ipahilíng an patànaw bàgo an kahon nin paghirá',
'tog-previewonfirst' => 'Ipahilíng an patànaw sa enot na paghirá',
-'tog-nocache' => 'Pundoha an pagsaray nin mga pahina sa kilyaw (browser)',
'tog-enotifwatchlistpages' => 'E-suratan mo ako kunsoarin an sarong pahina o sagunson na yaon sa sakong bantay-listahan pinagliwat',
'tog-enotifusertalkpages' => 'E-koreohan ako pag pigribáyan an pahina kan sakóng olay',
'tog-enotifminoredits' => 'E-suratan man ako para sa saraditon na mga pagliwat kan mga pahina asin mga sagunson',
'passwordtooshort' => 'Mga sekretong panlaog dapat igwa nin {{PLURAL:$1|1 karakter|$1 mga karakter}}.',
'password-name-match' => 'An saimong sekretong panlaog dapat laen sa saimong paragamit na ngaran.',
'password-login-forbidden' => 'An paggamit kaining pangaran nin paragamit asin sekretong panlaog pinagbabawal.',
-'mailmypassword' => 'Paki-koreo an bagong sekretong panlaog',
+'mailmypassword' => 'Pakibaguha an pasa-taramon',
'passwordremindertitle' => 'Bagong temporaryo na sekretong panlaog para sa {{SITENAME}}',
'passwordremindertext' => 'May sarong tawo (pwedeng ika gayod, gikan sa IP address na $1) naghagad nin sarong bagong sekretong panlaog para sa {{SITENAME}} ($4). Sarong temporaryong sekretong panlaog para sa paragamit "$2" an pinagmukna asin pinagtuytoy na magin "$3". Kun iyo ini an saimong katuyuhan, kaipuhan mong maglaog asin magpili nin sarong bagong sekretong panlaog ngunyan.
An saimong temporaryong sekretong panlaog mapapaso sa laog nin {{PLURAL:$5|sarong aldaw|$5 aldaw}}.
# Special:PasswordReset
'passwordreset' => 'Pakibago kan sekretong panlaog',
'passwordreset-text-one' => 'Kumpletuhon ining porma sa pagliwat otro kan saimong pasa-taramon.',
-'passwordreset-text-many' => '{{PLURAL:$1|Palamanan an saro sa mga kaaganan tanganing mailuwat-otro an saimong pasa-taramon.}}',
+'passwordreset-text-many' => '{{PLURAL:$1|Kaagi an saro sa mga kaaganan tanganing makaresibe nin sarong temporaryong pasa-taramon sa paagi kan e-surat.}}',
'passwordreset-legend' => 'Pakibago kan sekretong panlaog',
'passwordreset-disabled' => 'An pagbago kan sekretong panlaog pinagpundo sa wiking ini.',
'passwordreset-emaildisabled' => 'E-surat na mga estima pinag-uruntok sa wiking ini.',
'recentchanges-label-unpatrolled' => 'Ining pagliwat dae pa tabi pinagpatrolyahan',
'recentchanges-label-plusminus' => 'An kadakulaan nin pahina pinagliwat sa paagi kaining numero nin mga bayta',
'recentchanges-legend-newpage' => '(hilngon man [[Special:NewPages|listahan kan mga baguhong pahina]])',
-'rcnote' => "Yaon sa ibaba iyo {{PLURAL:$1|an '''1''' pagbabago|an mga huring '''$1''' mga pagbabago}} kan nakaaging huring {{PLURAL:$2|aldaw|'''$2''' mga aldaw}}, poon pa kan $5, $4.",
'rcnotefrom' => "Sa ibaba iyo an mga kaliwatan poon kan '''$2''' (sagkod sa '''$1''' na ipinapahiling).",
'rclistfrom' => 'Ipahiling an baguhon na mga kaliwatan magpoon kan $1',
'rcshowhideminor' => '$1 saradit na mga pagliwat',
'undeletebtn' => 'Ibalik',
'undeletelink' => 'hilngon/ibalik',
'undeleteviewlink' => 'hilngon',
-'undeletereset' => 'Ipwesto giraray',
'undeleteinvert' => 'Baliktada an pinilian',
'undeletecomment' => 'An rason:',
'undeletedrevisions' => '{{PLURAL:$1|1 rebisyon|$1 mga rebisyon}} ipinagbalik',
'block' => 'Barahon an paragamit',
'unblock' => 'Haleon an bara kan paragamit',
'blockip' => 'Bagáton an paragamit',
-'blockip-title' => 'Barahon an paragamit',
'blockip-legend' => 'Kubkuba an paragamit',
'blockiptext' => 'Gamiton an pormularyo sa babâ para bagaton an pagsurat kan sarong espesipikong IP o ngaran nin parágamit.
Dapat gibohon sana ini para maibitaran vandalismo, asin kompirmi sa [[{{MediaWiki:Policy-url}}|palakaw]].
'ipadressorusername' => 'direksyon nin IP o gahâ:',
'ipbexpiry' => 'Pasó:',
'ipbreason' => 'Rason:',
-'ipbreasonotherlist' => 'Ibang rason',
'ipbreason-dropdown' => "*Mga komon na rason sa pagbagat
** Nagkakaag nin salang impormasyon
** Naghahalî nin mga laog kan páhina
'ipbsubmit' => 'Bagáton ining parágamit',
'ipbother' => 'Ibang oras:',
'ipboptions' => '2ng oras:2 hours,1ng aldaw:1 day,3ng aldaw:3 days,1ng semana:1 week,2ng semana:2 weeks,1ng bulan:1 month,3ng bulan:3 months,6 na bulan:6 months,1ng taon:1 year,daeng kasagkoran:infinite',
-'ipbotheroption' => 'iba',
-'ipbotherreason' => 'Iba/dugang na rasón:',
'ipbhidename' => 'Tagoon an ngaran nin paragamit gikan sa mga pagliliwat asin mga listahan',
'ipbwatchuser' => 'Bantayi ining gamit kan paragamit asin mga pahina nin olayan',
'ipb-disableusertalk' => 'Pugulan ining paragamit na magliliwat kan saiyang sadireng pahina nin olayan habang ini barado',
'sorbs_create_account_reason' => 'An saimong IP na estada pinaglista bilang sarong bukas na proksi sa laog kan DNSBL na ginagamit kan {{SITENAME}}.
Ika dae makakamukna nin sarong panindog.',
'xffblockreason' => 'An yaong IP adres sa laog nin X-Pinagtulod-Para sa kapamayuhan, dawa saimo o idtong proksing serbidor na saimong ginagamit, pinagkubkob. An orihinal na rason sa pagkubkob iyo na:$1',
-'cant-block-while-blocked' => 'Ika dae makakakubkob kan ibang mga paragamit mantang ika nakukubkob pa.',
'cant-see-hidden-user' => 'An paragamit na pinagpubaran mong kubkubon pinagkubkob asin pinagtago na. Mala ta ika mayo nin karapatan na magtago nin paragamit, ika dae makakahiling or makakaliwat kan kinubkob na paragamit.',
'ipbblocked' => 'Ika da makakakubkob or maghale nin kubkob sa ibang mga paragamit, nin huli ta ika mismo sa sadiri mo pinagkubkob na',
'ipbnounblockself' => 'Ika dae pinagtutugutan na magkubkob kan sadiri mo',
'watchlistall2' => 'gabos',
'namespacesall' => 'gabós',
'monthsall' => 'gabos',
-'limitall' => 'gabos',
# Email address confirmation
'confirmemail' => "Kompirmaron an ''e''-surat",
'confirmemail_success' => 'An saimong e-surat na adres kumpirmado na.
Puwede ka na ngunyan [[Special:UserLogin|maglaog]] asin maogmang maggamit kan wiki.',
'confirmemail_loggedin' => "Nakompirmar na an saimong ''e''-surat.",
-'confirmemail_error' => 'May nasalâ sa pagtagama kan saimong kompirmasyon.',
'confirmemail_subject' => "kompirmasyón {{SITENAME}} kan direksyón nin ''e''-surat",
'confirmemail_body' => 'Sarong tawo, mapuwedeng ika, gikan sa IP adres na $1,
nagrehistro nin sarong panindog "$2" na igwa kaining e-surat na adres sa {{SITENAME}}.
'imgmultigo' => 'Dumanán!',
'imgmultigoto' => 'Magpasiring sa pahina $1',
+# Language selector for translatable SVGs
+'img-lang-default' => '(panugmad na lengguwahe)',
+'img-lang-info' => 'Giboha ining imahe sa $1 $2.',
+'img-lang-go' => 'Dumani',
+
# Table pager
'ascending_abbrev' => 'skt',
'descending_abbrev' => 'ba',
# Special:ComparePages
'comparepages' => 'Ikumpara an mga pahina',
-'compare-selector' => 'Ikumpara an mga rebisyon nin pahina',
'compare-page1' => 'Pahina 1',
'compare-page2' => 'Pahina 2',
'compare-rev1' => 'Rebisyon 1',
'expand_templates_xml_output' => 'Kinaluwasan na XML',
'expand_templates_remove_comments' => 'Tanggalon an mga komento',
'expand_templates_remove_nowiki' => 'Pugulan an mga taktak na <nowiki> sa resulta',
+'expand_templates_generate_xml' => 'Ipahiling an panlunhay na kahoy nin XML',
'expand_templates_preview' => 'Patânaw',
);
'tog-minordefault' => 'Пачынаць кожную праўку як дробную',
'tog-previewontop' => 'Папярэдні паказ — над рэдактарскім полем',
'tog-previewonfirst' => 'Папярэдні паказ пры першай праўцы',
-'tog-nocache' => 'Без кэшу старонак у браўзеры',
'tog-enotifwatchlistpages' => 'Слаць мне эл.пошту, калі мяняецца старонка ў маім спісе назіранага',
'tog-enotifusertalkpages' => 'Слаць эл.пошту пра мены ў маёй размоўнай старонцы',
'tog-enotifminoredits' => 'Слаць эл.пошту пра дробныя праўкі',
'recentchanges-label-bot' => 'Праўка была зробленая праграмай-робатам',
'recentchanges-label-unpatrolled' => 'Праўка яшчэ не атрымала адзнакі ўхваленасці (за ёй не сочыць "патруль")',
'recentchanges-legend-newpage' => '$1 - новая старонка',
-'rcnote' => "Ніжэй паказан{{PLURAL:$1|а '''1''' змяненне|ыя апошнія '''$1''' змяненняў}} за апошні{{PLURAL:$2| дзень|я '''$2''' дзён}}, паводле стану на $5, $4.",
'rcnotefrom' => 'Ніжэй знаходзяцца змены з <b>$2</b> (да <b>$1</b> на старонку).',
'rclistfrom' => 'Паказаць змены з $1',
'rcshowhideminor' => '$1 дробных правак',
'undeletebtn' => 'Аднавіць',
'undeletelink' => 'паказаць/аднавіць',
'undeleteviewlink' => 'Праглядзець',
-'undeletereset' => 'Да пачатковага',
'undeleteinvert' => 'Перавярнуць выбранае',
'undeletecomment' => 'Прычына:',
'undeletedrevisions' => 'Адноўлен{{PLURAL:$1|а 1 версія|ыя $1 версій}}',
'block' => 'Заблакаваць удзельніка',
'unblock' => 'Разблакаваць удзельніка',
'blockip' => 'Заблакаваць удзельніка',
-'blockip-title' => 'Заблакаваць удзельніка',
'blockip-legend' => 'Заблакаваць удзельніка',
'blockiptext' => 'Гэты фармуляр дазваляе заблакаваць магчымасць запісу для пэўнага адрасу IP ці імя ўдзельніка.
Гэта трэба рабіць толькі дзеля засцерагання ад вандалізму і ў адпаведнасці з [[{{MediaWiki:Policy-url}}|правіламі]].
'ipadressorusername' => 'IP-адрас ці імя ўдзельніка:',
'ipbexpiry' => 'Згасае:',
'ipbreason' => 'Прычына:',
-'ipbreasonotherlist' => 'Іншая прычына',
'ipbreason-dropdown' => '*Звычайныя прычыны блоку
** Упісванне несапраўднай інфармацыі
** Сціранне інфармацыі са старонак
'ipbsubmit' => 'Заблакаваць удзельніка',
'ipbother' => 'Іншы час',
'ipboptions' => '2 гадзіны:2 hours,1 дзень:1 day,3 дні:3 days,1 тыдзень:1 week,2 тыдні:2 weeks,1 месяц:1 month,3 месяцы:3 months,6 месяцаў:6 months,1 год:1 year,назаўсёды:infinite',
-'ipbotheroption' => 'іншае',
-'ipbotherreason' => 'Іншая/дадатковая прычына:',
'ipbhidename' => 'Не паказваць імя ўдзельніка ў гісторыях правак і ў спісах',
'ipbwatchuser' => 'Назіраць уласную і размоўную старонкі гэтага ўдзельніка',
'ipb-disableusertalk' => 'Забараніць гэтаму ўдзельніку рэдагаваць сваю старонку размоў падчас блакіроўкі',
'sorbsreason' => 'Ваш адрас IP знаходзіцца ў спісе забароненых адкрытых проксі, якім карыстаецца {{SITENAME}}.',
'sorbs_create_account_reason' => 'Ваш адрас IP знаходзіцца ў спісе забароненых адкрытых проксі, якім карыстаецца {{SITENAME}}.
Вы не можаце рэгістравацца',
-'cant-block-while-blocked' => 'Вы не можаце блакаваць іншых, пакуль заблакаваныя самі.',
'cant-see-hidden-user' => 'Удзельнік, якога вы спрабуеце заблакіраваць, ужо заблакіраваны і схаваны. Паколькі ў вас няма дазволу на працу па схаванні ўдзельнікаў, вы не можаце прагледзець ці змяніць гэту блакіроўку.',
'ipbblocked' => 'Вы не можаце блакіраваць ці разблакіраваць іншых удзельнікаў, бо вы самі заблакіраваны',
'ipbnounblockself' => 'Вы не можаце разблакіраваць самога сябе',
'watchlistall2' => 'усе',
'namespacesall' => 'усе',
'monthsall' => 'усе',
-'limitall' => 'усе',
# Email address confirmation
'confirmemail' => 'Пацвердзіць адрас эл.пошты',
'confirmemail_needlogin' => 'Вам трэба зрабіць $1 каб пацвердзіць свой адрас эл.пошты.',
'confirmemail_success' => 'Ваш адрас эл.пошты быў пацверджаны. Можаце [[Special:UserLogin|ўваходзіць у сістэму]] і працаваць з вікі.',
'confirmemail_loggedin' => 'Зараз ваш адрас эл.пошты стаўся пацверджаным.',
-'confirmemail_error' => 'Неакрэсленая памылка пры запісванні пацверджання.',
'confirmemail_subject' => 'Пацверджанне адрасу эл.пошты для {{SITENAME}}',
'confirmemail_body' => 'Нехта (магчыма, што і вы — з адрасу IP $1) завёў рахунак "$2" на пляцоўцы {{SITENAME}}, паказваючы гэты адрас эл.пошты як свой.
# Special:ComparePages
'comparepages' => 'Параўнанне старонак',
-'compare-selector' => 'Параўнанне версій старонкі',
'compare-page1' => 'Старонка 1',
'compare-page2' => 'Старонка 2',
'compare-rev1' => 'Версія 1',
'tog-minordefault' => 'Па змоўчаньні пазначаць усе зьмены дробнымі',
'tog-previewontop' => 'Паказваць папярэдні прагляд старонкі над полем рэдагаваньня',
'tog-previewonfirst' => 'Папярэдні прагляд пры першым рэдагаваньні',
-'tog-nocache' => 'Адключыць кэшаваньне старонак у браўзэры',
'tog-enotifwatchlistpages' => 'Паведамляць мне праз электронную пошту пра зьмены старонак і файлаў у маім сьпісе назіраньня',
'tog-enotifusertalkpages' => 'Паведамляць праз электронную пошту пра зьмены маёй старонкі гутарак',
'tog-enotifminoredits' => 'Паведамляць праз электронную пошту таксама пра дробныя зьмены старонак і файлаў',
'recentchanges-label-bot' => 'Гэтае рэдагаваньне зробленае робатам',
'recentchanges-label-unpatrolled' => 'Гэтае рэдагаваньне яшчэ не было адпатруляванае',
'recentchanges-legend-newpage' => '$1 — новая старонка',
-'rcnote' => "Ніжэй {{PLURAL:$1|пададзена '''$1''' апошняя зьмена|пададзеныя '''$1''' апошнія зьмены|пададзеныя '''$1''' апошніх зьменаў}} за {{PLURAL:$2|апошні '''$2''' дзень|апошнія '''$2''' дні|апошнія '''$2''' дзён}}, па стане на $5, $4.",
'rcnotefrom' => "Ніжэй знаходзяцца зьмены з '''$2''' (да '''$1''' на старонку).",
'rclistfrom' => 'Паказаць зьмены з $1',
'rcshowhideminor' => '$1 дробныя праўкі',
'undeletebtn' => 'Аднавіць',
'undeletelink' => 'паглядзець/аднавіць',
'undeleteviewlink' => 'паказаць',
-'undeletereset' => 'Скінуць',
'undeleteinvert' => 'Адваротны выбар',
'undeletecomment' => 'Прычына:',
'undeletedrevisions' => '{{PLURAL:$1|адноўленая $1 вэрсія|адноўленыя $1 вэрсіі|адноўленыя $1 вэрсіяў}}',
'block' => 'Заблякаваць удзельніка',
'unblock' => 'Разблякаваць удзельніка',
'blockip' => 'Заблякаваць',
-'blockip-title' => 'Блякаваньне ўдзельнікаў',
'blockip-legend' => 'Заблякаваць удзельніка',
'blockiptext' => 'Наступная форма дазваляе заблякаваць магчымасьць рэдагаваньня з пэўнага IP-адрасу альбо імя ўдзельніка. Гэта трэба рабіць толькі дзеля прадухіленьня вандалізму і згодна з [[{{MediaWiki:Policy-url}}|правіламі]]. Пазначце ніжэй дакладную прычыну (напрыклад, пералічыце асобныя старонкі, на якіх былі парушэньні).',
'ipadressorusername' => 'IP-адрас альбо імя ўдзельніка/ўдзельніцы:',
'ipbexpiry' => 'Тэрмін:',
'ipbreason' => 'Прычына:',
-'ipbreasonotherlist' => 'Іншая прычына',
'ipbreason-dropdown' => '* Агульныя прычыны блякаваньняў
** Даданьне ілжывай інфармацыі
** Выдаленьне зьместу старонак
'ipbsubmit' => 'Заблякаваць гэтага ўдзельніка',
'ipbother' => 'Іншы тэрмін:',
'ipboptions' => '2 гадзіны:2 hours,1 дзень:1 day,3 дні:3 days,1 тыдзень:1 week,2 тыдні:2 weeks,1 месяц:1 month,3 месяцы:3 months,6 месяцаў:6 months,1 год:1 year,назаўсёды:infinite',
-'ipbotheroption' => 'іншы',
-'ipbotherreason' => 'Іншая/дадатковая прычына:',
'ipbhidename' => 'Схаваць імя ўдзельніка ў рэдагаваньнях і сьпісах',
'ipbwatchuser' => 'Назіраць за старонкай удзельніка і яго гутаркамі',
'ipb-disableusertalk' => 'Забараніць удзельніку рэдагаваньне ўласнай старонкі гутарак падчас блякаваньня',
'sorbs_create_account_reason' => 'Ваш IP-адрас знаходзіцца ў сьпісе адкрытых проксі ў DNSBL, якім карыстаецца {{SITENAME}}.
Вы ня зможаце стварыць рахунак',
'xffblockreason' => 'IP-адрас, прыведзены ў загалоўку X-Forwarded-For, які належыць або вам, або проксі-сэрвэру, быў заблякаваны. Прычынай блякаваньня было: $1',
-'cant-block-while-blocked' => 'Вы ня можаце блякаваць іншых удзельнікаў, пакуль Вы самі заблякаваныя.',
'cant-see-hidden-user' => 'Удзельнік, якога Вы спрабуеце заблякаваць, ужо заблякаваны і схаваны. З-за таго, што Вы ня маеце правоў хаваньня ўдзельнікаў, Вы ня можаце бачыць альбо зьмяняць блякаваньне удзельніка.',
'ipbblocked' => 'Вы ня можаце блякаваць ці раблякоўваць іншых удзельнікаў, таму што заблякаваныя самі',
'ipbnounblockself' => 'Вы ня можаце раблякоўваць сябе',
'watchlistall2' => 'усё',
'namespacesall' => 'усе',
'monthsall' => 'усе',
-'limitall' => 'усе',
# Email address confirmation
'confirmemail' => 'Пацьвердзіць адрас электроннай пошты',
'confirmemail_needlogin' => 'Вам трэба $1, каб пацьвердзіць Ваш адрас электроннай пошты.',
'confirmemail_success' => 'Ваш адрас электроннай пошты быў пацьверджаны. Зараз Вы можаце ўвайсьці.',
'confirmemail_loggedin' => 'Ваш адрас электроннай пошты быў пацьверджаны.',
-'confirmemail_error' => 'Нешта пайшло ня так у часе захаваньня вашага пацьверджаньня.',
'confirmemail_subject' => '{{SITENAME}}: Пацьверджаньне адрасу электроннай пошты',
'confirmemail_body' => 'Нехта, магчыма Вы, з IP-адрасу $1, стварыў рахунак «$2» з гэтым адрасам электроннай пошты ў праекце {{SITENAME}}.
# Special:ComparePages
'comparepages' => 'Параўнаньне старонак',
-'compare-selector' => 'Параўнаньне вэрсіяў старонак',
'compare-page1' => 'Старонка 1',
'compare-page2' => 'Старонка 2',
'compare-rev1' => 'Вэрсія 1',
'tog-minordefault' => 'Отбелязване на всички промени като малки по подразбиране',
'tog-previewontop' => 'Показване на предварителния преглед преди текстовата кутия',
'tog-previewonfirst' => 'Показване на предварителен преглед при първа редакция',
-'tog-nocache' => 'Спиране на складирането на страниците от браузъра',
'tog-enotifwatchlistpages' => 'Уведомяване по е-пощата при промяна на страница или файл от списъка ми за наблюдение',
'tog-enotifusertalkpages' => 'Уведомяване по е-пощата при промяна на беседата ми',
'tog-enotifminoredits' => 'Уведомяване по е-пощата даже при малки промени на страници или файлове',
'passwordtooshort' => 'Необходимо е паролата да съдържа поне {{PLURAL:$1|1 знак|$1 знака}}.',
'password-name-match' => 'Паролата ви трябва да се различава от потребителското ви име.',
'password-login-forbidden' => 'Използването на това потребителско име и парола е забранено.',
-'mailmypassword' => 'Ð\98зпÑ\80аÑ\89ане на нова парола',
+'mailmypassword' => 'Ð\92Ñ\8aзÑ\81Ñ\82ановÑ\8fване на парола',
'passwordremindertitle' => 'Напомняне за парола от {{SITENAME}}',
'passwordremindertext' => 'Някой (най-вероятно вие, от IP-адрес $1) е пожелал нова парола за влизане в {{SITENAME}} ($4).
За потребител „$2“ е създадена временната парола „$3“.
'recentchanges-label-bot' => 'Тази редакция е извършена от робот',
'recentchanges-label-unpatrolled' => 'Тази редакция все още не е проверена',
'recentchanges-legend-newpage' => '(вижте също [[Special:NewPages|списъка с нови страници]])',
-'rcnote' => "{{PLURAL:$1|Показана е '''1''' промяна|Показани са последните '''$1''' промени}} през {{PLURAL:$2|последния ден|последните '''$2''' дни}}, към $5, $4.",
'rcnotefrom' => 'Дадени са промените от <strong>$2</strong> (до <strong>$1</strong> показани).',
'rclistfrom' => 'Показване на промени, като се започва от $1.',
'rcshowhideminor' => '$1 на малки промени',
'undeletebtn' => 'Възстановяване',
'undeletelink' => 'преглед/възстановяване',
'undeleteviewlink' => 'преглеждане',
-'undeletereset' => 'Изчистване',
'undeleteinvert' => 'Обръщане на избора',
'undeletecomment' => 'Причина:',
'undeletedrevisions' => '{{PLURAL:$1|Една версия беше възстановена|$1 версии бяха възстановени}}',
'block' => 'Блокиране на потребител',
'unblock' => 'Отблокиране на потребител',
'blockip' => 'Блокиране',
-'blockip-title' => 'Блокиране на потребител',
'blockip-legend' => 'Блокиране на потребител',
'blockiptext' => 'Формулярът по-долу се използва, за да се забрани правото на писане
на определен IP-адрес или потребител.
'ipadressorusername' => 'IP-адрес или потребител:',
'ipbexpiry' => 'Срок:',
'ipbreason' => 'Причина:',
-'ipbreasonotherlist' => 'Друга причина',
'ipbreason-dropdown' => '* Общи причини за блокиране
** Въвеждане на невярна информация
** Премахване на съдържание от страниците
'ipbsubmit' => 'Блокиране на потребителя',
'ipbother' => 'Друг срок:',
'ipboptions' => 'два часа:2 hours,един ден:1 day,три дни:3 days,една седмица:1 week,две седмици:2 weeks,един месец:1 month,три месеца:3 months,шест месеца:6 months,една година:1 year,безсрочно:infinite',
-'ipbotheroption' => 'друг',
-'ipbotherreason' => 'Друга/допълнителна причина:',
'ipbhidename' => 'Скриване на потребителското име/IP-адреса от редакциите и дневниците',
'ipbwatchuser' => 'Наблюдаване на потребителската страница и беседата на този потребител',
'ipb-disableusertalk' => 'Спиране на възможността този потребител да редактира беседата си докато е блокиран',
'proxyblockreason' => 'IP-адресът ви беше блокиран, тъй като е анонимно достъпен междинен сървър. Свържете се с доставчика ви на интернет и го информирайте за този сериозен проблем в сигурността.',
'sorbsreason' => 'IP-адресът ви е записан като анонимно достъпен междинен сървър в DNSBL на {{SITENAME}}.',
'sorbs_create_account_reason' => 'IP-адресът ви е записан като анонимно достъпен междинен сървър в DNSBL на {{SITENAME}}. Не може да създадете сметка.',
-'cant-block-while-blocked' => 'Не можете да блокирате други потребители, докато сам(а) сте блокиран(а).',
'cant-see-hidden-user' => 'Потребителят, който опитвате да блокирате, вече е блокиран и скрит. Тъй като нямате права да скривате потребители, не можете да видите или редактирате блокирането на потребителя.',
'ipbblocked' => 'Не можете да блокирате и разблокирате други потребители, защото вие самият (самата) сте блокиран(а).',
'ipbnounblockself' => 'Нямате право да се разблокирате сам(а).',
'watchlistall2' => 'всички',
'namespacesall' => 'Всички',
'monthsall' => 'всички',
-'limitall' => 'всички',
# Email address confirmation
'confirmemail' => 'Потвърждаване на адрес за електронна поща',
'confirmemail_needlogin' => 'Необходимо е да $1, за потвърждаване на адреса за електронна поща.',
'confirmemail_success' => 'Адресът ви за електронна поща беше потвърден. Вече можете да влезете и да се наслаждавате на уикито.',
'confirmemail_loggedin' => 'Адресът ви за електронна поща беше потвърден.',
-'confirmemail_error' => 'Станала е грешка при потвърждаването на адреса ви.',
'confirmemail_subject' => '{{SITENAME}} — Потвърждаване на адрес за е-поща',
'confirmemail_body' => 'Някой, вероятно вие, от IP-адрес $1, е регистрирал потребител „$2“ в {{SITENAME}}, като е посочил този адрес за електронна поща.
# Special:ComparePages
'comparepages' => 'Сравняване на страници',
-'compare-selector' => 'Сравняване версиите на страници',
'compare-page1' => 'Страница 1',
'compare-page2' => 'Страница 2',
'compare-rev1' => 'Версия 1',
'tog-minordefault' => 'सारा सम्पादन के छोट सम्पादन के रुप में चिन्हित करीं',
'tog-previewontop' => 'सम्पादन बक्सा से पहिले पुर्वदर्शन दिखाईं।',
'tog-previewonfirst' => 'पहिलका सम्पादन पर पूर्वावलोकन देखीं',
-'tog-nocache' => 'ब्राउजर पन्ना के कैशिंग अक्षम करीं',
'tog-enotifwatchlistpages' => 'हमार ध्यानसूची में दर्ज कौनो भी पन्ना या फाईल में परिवर्तन होखला पर हमके ई-मेल करल जाव',
'tog-enotifusertalkpages' => 'यदि हमार वार्तालाप पन्ना पर कौनो परिवर्तन होखे त हमके ई मेल करल जाव',
'tog-enotifminoredits' => 'पन्ना आ फाईल पर छोटो परिवर्तन होखे त हमके ई मेल करल जाव',
# 'all' in various places, this might be different for inflected languages
'namespacesall' => 'सब',
'monthsall' => 'सब',
-'limitall' => 'सब',
# Email address confirmation
'confirmemail' => 'इ-मेल पता कन्फर्म करीं',
'tog-minordefault' => 'Tandai samunyaan babakan sawagai babakan sapalih sacara baku',
'tog-previewontop' => 'Tampaiakan titilikan sabalum kutak babak',
'tog-previewonfirst' => 'Tampaiakan titilikan pada babakan panambaian',
-'tog-nocache' => 'Nonaktifkan panyinggahan tungkaran paramban',
'tog-enotifwatchlistpages' => 'Kirimi ulun sur-él amun sabuting tungkaran dalam daptar itihan ulun baubah',
'tog-enotifusertalkpages' => 'Surili ulun amun tungkaran pamandiran ulun baubah',
'tog-enotifminoredits' => 'Kirimi ulun sur-él jua amun ada babakan sapalih matan tungkaran-tungkaran',
'recentchanges-label-bot' => 'Babakan ngini digawi ulih saikung bot',
'recentchanges-label-unpatrolled' => "Babakan ngini baluman ta'awasi",
'recentchanges-legend-newpage' => '$1 - tungkaran puga',
-'rcnote' => "Di bawah ni {{PLURAL:$1|'''1'''|'''$1'''}} paubahan pahanyarnya dalam {{PLURAL:$2|'''1''' hari|'''$2''' hari}} tauncit, sampai $4 pukul $5.",
'rcnotefrom' => "Di bawah ngini paubahan tumatan '''$2''' (ditampaiakan sampai '''$1''' paubahan)",
'rclistfrom' => 'Tampaiakan paubahan pahanyarnya matan $1',
'rcshowhideminor' => '$1 pambabakan sapalih',
'undeletebtn' => 'Bulikakan',
'undeletelink' => 'tiring/bulikakan',
'undeleteviewlink' => 'tiringi',
-'undeletereset' => 'Bulikakan setelan',
'undeleteinvert' => 'Bulikakan pilihan',
'undeletecomment' => 'Alasan:',
'undeletedrevisions' => '{{PLURAL:$1|1 ralatan|$1 raralatan}} dibulikakan',
'block' => 'Blukir pamuruk',
'unblock' => 'Lapas blukir pamuruk',
'blockip' => 'Blukir pamuruk',
-'blockip-title' => 'Blukir pamuruk',
'blockip-legend' => 'Blukir pamuruk',
'blockiptext' => 'Puruk purmulir di bawah hagan mamblukir hak ungkai manulis matan sabuah alamat IP atawa ngaran-pamuruk.
Ngini dipuruk hagan mancagah vandalisma haja, wan sasuai awan [[{{MediaWiki:Policy-url}}|kabijakan]].
'ipadressorusername' => 'Alamat IP atawa ngaran pamuruk:',
'ipbexpiry' => 'Kadaluwarsa:',
'ipbreason' => 'Alasan:',
-'ipbreasonotherlist' => 'Alasan nang lain',
'ipbreason-dropdown' => '*Alasan awam pamblukiran
** Mambuati panjalasan salah
** Mambuang isi matan tutungkaran
'ipbsubmit' => 'Blukir pamuruk ngini',
'ipbother' => 'Wayah lain:',
'ipboptions' => '2 jam:2 hours,1 hari:1 day,3 hari:3 days,1 minggu:1 week,2 minggu:2 weeks,1 bulan:1 month,3 bulan:3 months,6 bulan:6 months,1 tahun:1 year,salawasan:infinite',
-'ipbotheroption' => 'lainnya',
-'ipbotherreason' => 'Alasan lain/tambahan:',
'ipbhidename' => 'Sungkupakan ngaranpamuruk matan babakan wan dadaptar',
'ipbwatchuser' => 'Itihi tutungkaran pamuruk wan pamandiran pamuruk ngini',
'ipb-disableusertalk' => 'Tangkal pamuruk ngini mambabak tungkaran pamandirannya wayah diblukir',
'sorbsreason' => 'Alamat IP Pian tadaptar sawagai pruksi tabuka dalam DNSBL dipuruk ulih {{SITENAME}}.',
'sorbs_create_account_reason' => 'Alamat IP Pian tadaptar sawagai pruksi tabuka dalam DNSBL dipuruk ulih {{SITENAME}}.
Pian kada kawa maulah sabuah akun',
-'cant-block-while-blocked' => 'Pian kada kawa mamblukir pamuruk lain parhatan Pian diblukir.',
'cant-see-hidden-user' => 'Pamuruk nang Pian cuba blukir sudah diblukir wan tasungkup.
Tumatan Pian kada baisi hak mnyungkupakan pamuruk, Pian kada kawa manjanaki atawa mambabak pamblukiran pamuruk.',
'ipbblocked' => 'Pian kada kawa mamblukir atau malapas blukir pamuruk lain, karana Pian surang diblukir',
'watchlistall2' => 'samunyaan',
'namespacesall' => 'samunyaan',
'monthsall' => 'samunyaan',
-'limitall' => 'samunyaan',
# Email address confirmation
'confirmemail' => 'Yakinakan alamat suril',
'confirmemail_success' => 'Alamat suril Pian sudah diyakinakan.
Rahatan ni Pian kawa [[Special:UserLogin|babuat log]] wan bahimung wiki.',
'confirmemail_loggedin' => 'Alamat suril Pian rahatan ni sudah diyakinakan.',
-'confirmemail_error' => 'Ada nang tasalah rahatan manyimpan payakinan Pian.',
'confirmemail_subject' => '{{SITENAME}} alamat suril payakinan',
'confirmemail_body' => 'Sasaurang, pinanya Pian, malan alamat IP $1,
sudah mandaptarakan sabuah akun "$2" awan alamat suril ngini pada {{SITENAME}}.
# Special:ComparePages
'comparepages' => 'Bandingakan tutungkaran',
-'compare-selector' => 'Tanding raralatan tungkaran',
'compare-page1' => 'Tungkaran 1',
'compare-page2' => 'Tungkaran 2',
'compare-rev1' => 'Ralatan 1',
'tog-minordefault' => 'শুরুতেই সব সম্পাদনাকে অনুল্লেখ্য বলে চিহ্নিত করা হোক',
'tog-previewontop' => 'সম্পাদনা বাক্সের আগে প্রাকদর্শন দেখানো হোক',
'tog-previewonfirst' => 'প্রথম সম্পাদনার ক্ষেত্রে প্রাকদর্শন দেখানো হোক',
-'tog-nocache' => 'ব্রাউজার পাতা ক্যাশিং নিষ্ক্রিয় করো',
'tog-enotifwatchlistpages' => 'আমার নজর তালিকায় আছে এমন পাতা অথবা ফাইলে পরিবর্তন হলে তা জানিয়ে আমাকে ই-মেইল করো',
'tog-enotifusertalkpages' => 'আমার ব্যবহারকারী আলোচনা পাতার পরিবর্তন হলে আমাকে ই-মেইল করা হোক',
'tog-enotifminoredits' => 'পাতা এবং ফাইলগুলোতে অনুল্লেখ্য সম্পাদনার জন্যও আমাকে ই-মেইল করা হোক',
'recentchanges-label-plusminus' => 'পাতার আকারে এই পরিমান বাইট পরিবর্তিত হয়েছে',
'recentchanges-legend-newpage' => '(আরও দেখুন [[Special:NewPages|নতুন পাতার তালিকা]])',
'recentchanges-legend-plusminus' => "(''±১২৩'')",
-'rcnote' => "বিগত {{PLURAL:$2|দিনে|'''$2''' দিনে}} সংঘটিত {{PLURAL:$1|'''১'''|'''$1'''}}টি পরিবর্তন নীচে দেখানো হল (যেখানে বর্তমান সময় ও তারিখ $5, $4)।",
'rcnotefrom' => "'''$2'''-এর পরে সংঘটিত পরিবর্তনগুলো নিচে দেখানো হল ('''$1'''টি)।",
'rclistfrom' => '$1-এর পর সংঘটিত নতুন পরিবর্তনগুলো দেখাও।',
'rcshowhideminor' => 'অনুল্লেখ্য পরিবর্তনগুলো $1',
'undeletebtn' => 'পুনরুদ্ধার',
'undeletelink' => 'দেখুন/পুনর্বহাল করুন',
'undeleteviewlink' => 'দেখাও',
-'undeletereset' => 'আদি অবস্থায় ফেরত',
'undeleteinvert' => 'ব্যুত্ক্রমে নির্বাচন',
'undeletecomment' => 'কারণ:',
'undeletedrevisions' => '{{PLURAL:$1|১টি সংশোধন|$1টি সংশোধন}} পুনরুদ্ধার করা হয়েছে',
'block' => 'ব্যবহারকারীকে বাধা দাও',
'unblock' => 'ব্যবহারকারীর উপর থেকে বাধা অপসারণ',
'blockip' => 'ব্যবহারকারীকে বাধা দাও',
-'blockip-title' => 'ব্যবহারকারীকে বাধা দাও',
'blockip-legend' => 'ব্যবহারকারীকে বাধা দেওয়া হোক',
'blockiptext' => 'কোন নির্দিষ্ট আইপি ঠিকানা বা ব্যবহারকারীর লেখার অধিকারে বাধা দিতে নিচের ফর্মটি ব্যবহার করুন।
এটি কেবলমাত্র ধ্বংসপ্রবণতা প্রতিরোধে ও [[{{MediaWiki:Policy-url}}|নীতিমালা]] মেনে সম্পাদন করা উচিত।
'ipadressorusername' => 'আইপি ঠিকানা বা ব্যবহারকারীর নাম:',
'ipbexpiry' => 'যখন মেয়াদোত্তীর্ণ হবে:',
'ipbreason' => 'কারণ:',
-'ipbreasonotherlist' => 'অন্য কারণ',
'ipbreason-dropdown' => '*বাধা দানের সাধারণ কারণ
** মিথ্যা তথ্য ঢোকানো
** পাতা থেকে বিষয়বস্তু মুছে ফেলা
'ipbsubmit' => 'এই ব্যবহারকারীকে বাধা দেয়া হোক',
'ipbother' => 'অন্য সময়:',
'ipboptions' => '২ ঘন্টা:2 hours,১ দিন:1 day,৩ দিন:3 days,১ সপ্তাহ:1 week,২ সপ্তাহ:2 weeks,১ মাস:1 month,৩ মাস:3 months,৬ মাস:6 months,১ বছর:1 year,অসীম:infinite',
-'ipbotheroption' => 'অন্যান্য',
-'ipbotherreason' => 'অন্য/আরও কারণ:',
'ipbhidename' => 'সম্পাদনা ও তালিকা থেকে ব্যবহারকারী নাম লুকিয়ে রাখা হোক',
'ipbwatchuser' => 'এই ব্যবহাকারীর পাতা এবং আলাপের পাতা নজরতালিকায় রাখো',
'ipb-disableusertalk' => 'এই ব্যবহারকারীকে বাধাদানকৃত অবস্থায় নিচের আলাপ পাতায় সম্পাদনা করা থেকে বিরত রাখো',
'sorbsreason' => 'আপনার আইপি ঠিকানাটি {{SITENAME}}-এর ব্যবহার করা DNSBL-এ উন্মুক্ত প্রক্সি হিসেবে তালিকাভুক্ত আছে।',
'sorbs_create_account_reason' => 'আপনার আইপি ঠিকানাটি {{SITENAME}}-এর ব্যবহার করা DNSBL-এ উন্মুক্ত প্রক্সি হিসেবে তালিকাভুক্ত আছে। আপনি কোন অ্যাকাউন্ট সৃষ্টি করতে পারবেন না।',
'xffblockreason' => 'X-Forwarded-For হেডারে থাকা আইপি ঠিকানাটি ব্লক করা হয়েছে, হয় এটি আপনার নিজের অথবা আপনার ব্যবহৃত প্রক্সি সার্ভারের আইপি ঠিকানা। ব্লক করার কারণ হল: $1',
-'cant-block-while-blocked' => 'আপনি নিজে ব্লক থাকা অবস্থায় অন্যন্য ব্যবহারকারীকে ব্লক করতে পারবেন না।',
'cant-see-hidden-user' => 'আপনি যে ব্যবহারকারীকে ব্লক বা লুকিয়ে রাখতে চাচ্ছেন তাকে আগে থেকেই ব্লক বা লুকিয়ে রাখা হয়েছে। এছাড়া আপনার Hideuser অধিকার নেই, তাই আপনি ব্যবহারকারীর অবস্থা পরিবর্তন করতে পারবেন না।',
'ipbblocked' => 'আপনি অন্য কোন ব্যবহারকরীকে ব্লক বা আনব্লক করতে পারবেন না, কারণ আপনি নিজেই ব্লক রয়েছেন',
'ipbnounblockself' => 'আপনি নিজেকে আনব্লক করতে পারবেন না',
'watchlistall2' => 'সবগুলো',
'namespacesall' => 'সমস্ত',
'monthsall' => 'সমস্ত',
-'limitall' => 'সমস্ত',
# Email address confirmation
'confirmemail' => 'ই-মেইলের ঠিকানা নিশ্চিত করুন',
'confirmemail_needlogin' => 'আপনার ই-মেইল ঠিকানা নিশ্চিত করতে আপনার $1 প্রয়োজন।',
'confirmemail_success' => 'আপনার ই-মেইল ঠিকানাটি নিশ্চিত করা হয়েছে। আপনি এখন [[Special:UserLogin|প্রবেশ]] এবং এই উইকি উপভোগ করতে পারেন।',
'confirmemail_loggedin' => 'আপনার ই-মেইল ঠিকানাটি নিশ্চিত করা হয়েছে।',
-'confirmemail_error' => 'আপনার নিশ্চিতকরণ সংরক্ষণ করতে হয়তো কিছু সমস্যা হয়েছিল',
'confirmemail_subject' => '{{SITENAME}} ই-মেইল ঠিকানা নিশ্চিতকরণ',
'confirmemail_body' => 'কেউ একজন, সম্ভবত আপনি, $1 আইপি ঠিকানা থেকে,
এই ই-মেইল ঠিকানাটি দিয়ে {{SITENAME}}-এ "$2" নামে অ্যাকাউন্ট খুলেছেন।
# Special:ComparePages
'comparepages' => 'পাতার তুলনা',
-'compare-selector' => 'পাতার সংশোধন তুলনা',
'compare-page1' => 'পাতা ১',
'compare-page2' => 'পাতা ২',
'compare-rev1' => 'সংশোধন ১',
'tog-minordefault' => 'অকরাতই হাব্বি পতা ফাঙনেই বুলিয়া দেহাদে',
'tog-previewontop' => 'পতা উপুগর গজে লেহার মিল্লেখ দেহাদে',
'tog-previewonfirst' => 'পয়লা পতানিহাত মিল্লেখ দেহাদে',
-'tog-nocache' => 'পাতা য়মকরানিহান থা নাদি',
'tog-enotifwatchlistpages' => 'মরে ইমেইল কর যদি মর মিল্লেঙে থসু অতা পতিলে',
'tog-enotifusertalkpages' => 'মরে ইমেইল কর যদি মর য়্যারির পাতা পতিলে',
'tog-enotifminoredits' => 'মরে ইমেইল কর পাতা আহানর পতানিহান হুরু ইলেউ',
'recentchanges-label-minor' => 'এহান হুরকা সম্পাদনাহান',
'recentchanges-label-bot' => 'সম্পাদনা এহান বটগই করিসেহানে',
'recentchanges-label-unpatrolled' => 'সম্পাদনা এহান এবাকাউ পরীক্ষা করিয়া নাচাসি',
-'rcnote' => "গেলগা {{PLURAL:$2|দিনে|'''$2''' দিনে}} অসে {{PLURAL:$1|'''১'''|'''$1'''}}হান সিলপা তলে দেহানি ইল (যেহানর এপাগার খেন্তাম বারো তারিখ $5, $4)।",
'rcnotefrom' => "তলে গেলগা '''$2''' ত্ত পতাসিতা দেনা অইল ('''$1''' পেয়া)।",
'rclistfrom' => 'নুৱাতা পতাসিতা $1 পাতাহানাত্ত চিঙকরিয়া',
'rcshowhideminor' => '$1 হুরু পতানিহান',
'ipadressorusername' => 'আইপি ঠিকানাহান বারো আতাকুরার নাঙহান:',
'ipbexpiry' => 'মেয়াদহান লালুইতইতা:',
'ipbreason' => 'কারণ:',
-'ipbreasonotherlist' => 'আর কারণ:',
'ipbreason-dropdown' => '*থেপ করানির সাধারণ কারণহানি
** মিস্সা পৌ বরাসে
** পাতাহাত্ত বিষয়বস্তু পুসে বেলাসে
'ipbsubmit' => 'আতাকুরা এগরে থেপ কর',
'ipbother' => 'আর সময়:',
'ipboptions' => '২ ঘন্টা:2 hours,১ দিন:1 day,৩ দিন:3 days,হাপ্তা আহান:1 week,হাপ্তা দুহান:2 weeks,মাহা আহান:1 month,৩ মাহা:3 months,৬ মাহা:6 months,বসর আহান:1 year,লম নেই সময়:infinite',
-'ipbotheroption' => 'আর আর',
-'ipbotherreason' => 'আরাক/আরাকউ কারণ:',
'ipbhidename' => 'আতাকুরার নাঙ পতানি বারো লাতঙেত্ত গুর',
'ipbwatchuser' => 'আতাকুরা এগর আতাকুরার বারো য়্যারীর পাতা খিয়ালে থ',
'badipaddress' => 'আইপি ঠিকানাহান গ্রহনযোগ্যনাইসে',
'watchlistall2' => 'হাব্বি',
'namespacesall' => 'হাব্বি',
'monthsall' => 'হাব্বি',
-'limitall' => 'হাব্বি',
# Email address confirmation
'confirmemail' => 'ই-মেইল ঠিকানাহান লেপকর',
'tog-minordefault' => "Sellet ouzh ar c'hemmoù degaset ganin<br /> evel kemmoù dister dre ziouer",
'tog-previewontop' => 'Rakwelet tres ar bajenn a-us ar prenestr skridaozañ',
'tog-previewonfirst' => 'Rakwelet tres ar bajenn kerkent hag an aozadenn gentañ',
-'tog-nocache' => 'Diweredekaat krubuilh ar pajennoù gant ar merdeer',
'tog-enotifwatchlistpages' => 'Kas ur postel din pa vez kemmet ur bajenn zo war ma roll evezhiañ',
'tog-enotifusertalkpages' => 'Kas ur postel din pa vez kemmet ma fajenn gaozeal',
'tog-enotifminoredits' => 'Kas ur postel din, ha pa vije evit kemenn kemmoù dister',
'recentchanges-label-bot' => "Gant ur bot eo bet degaset ar c'hemm-mañ.",
'recentchanges-label-unpatrolled' => "N'eo ket bet gwiriet ar c'hemm-mañ evit c'hoazh.",
'recentchanges-legend-newpage' => '$1 - pajenn nevez',
-'rcnote' => "Setu aze an {{PLURAL:$1|'''1''' change|'''$1''' kemm diwezhañ}} bet c'hoarvezet e-pad an {{PLURAL:$2|deiz|'''$2''' deiz}} diwezhañ, savet d'an $4 da $5.",
'rcnotefrom' => "Setu aze roll ar c'hemmoù c'hoarvezet abaoe an '''$2''' ('''$1''' d'ar muiañ).",
'rclistfrom' => "Diskouez ar c'hemmoù diwezhañ abaoe an $1.",
'rcshowhideminor' => "$1 ar c'hemmoù dister",
'undeletebtn' => 'Assevel',
'undeletelink' => 'gwelet/assevel',
'undeleteviewlink' => 'gwelet',
-'undeletereset' => 'Adderaouekaat',
'undeleteinvert' => 'Eilpennañ an diuzadenn',
'undeletecomment' => 'Abeg :',
'undeletedrevisions' => 'Adsavet {{PLURAL:$1|1 stumm|$1 stumm}}',
'block' => 'Stankañ an implijer',
'unblock' => 'Distankañ an implijer',
'blockip' => "Stankañ ur chomlec'h IP",
-'blockip-title' => 'Stankañ an implijer',
'blockip-legend' => 'Stankañ an implijer',
'blockiptext' => "Grit gant ar furmskrid a-is evit stankañ ar moned skrivañ ouzh ur chomlec'h IP pe un implijer bennak.
Seurt diarbennoù n'hallont bezañ kemeret nemet evit mirout ouzh ar vandalerezh hag a-du gant an [[{{MediaWiki:Policy-url}}|erbedadennoù ha reolennoù da heuliañ]].
'ipadressorusername' => "Chomlec'h IP pe anv implijer",
'ipbexpiry' => 'Pad ar stankadenn',
'ipbreason' => 'Abeg :',
-'ipbreasonotherlist' => 'Abeg all',
'ipbreason-dropdown' => "*Abegoù stankañ boutinañ
** Degas titouroù faos
** Tennañ danvez eus ar pajennoù
'ipbsubmit' => 'Stankañ an implijer-mañ',
'ipbother' => 'Prantad all',
'ipboptions' => '2 eurvezh:2 hours,1 devezh:1 day,3 devezh:3 days,1 sizhunvezh:1 week,2 sizhunvezh:2 weeks,1 mizvezh:1 month,3 mizvezh:3 months,6 mizvezh:6 months,1 bloaz:1 year,da viken:infinite',
-'ipbotheroption' => 'prantad all',
-'ipbotherreason' => 'Abeg all/ouzhpenn',
'ipbhidename' => "Kuzhat anv an implijer er rolloù hag er c'hemmoù",
'ipbwatchuser' => 'Evezhiañ pajennoù implijer ha kaozeal an implijer-mañ',
'ipb-disableusertalk' => 'Mirout ouzh an implijer-mañ da implijout e bajenn gaozeal dezhañ e-unan e-keit hag emañ stanket',
'proxyblockreason' => "Stanket eo bet hoc'h IP rak ur proksi digor eo. Trugarez da gelaouiñ ho pourvezer moned ouzh ar Genrouedad pe ho skoazell deknikel eus ar gudenn surentez-mañ.",
'sorbsreason' => "Rollet eo ho chomlec'h IP evel ur proksi digor en DNSBL implijet gant {{SITENAME}}.",
'sorbs_create_account_reason' => "Rollet eo ho chomlec'h IP evel ur proksi digor war an DNSBL implijet gant {{SITENAME}}. N'hallit ket krouiñ ur gont",
-'cant-block-while-blocked' => "N'hallit ket stankañ implijerien all ma'z oc'h stanket c'hwi hoc'h-unan.",
'cant-see-hidden-user' => "Stanket ha kuzhet eo bet dija an implijer emaoc'h o klask stankañ. Dre ma n'emañ ket ganeoc'h ar gwir hideuser, n'hallit ket gwelet pe kemmañ stankadenn an implijer.",
'ipbblocked' => "Ne c'hellit ket stankañ pe distankañ implijerien all, dre ma 'z oc'h stanket",
'ipbnounblockself' => "N'oc'h ket aotreet d'en em zistankañ ho unan",
'watchlistall2' => 'pep tra',
'namespacesall' => 'pep tra',
'monthsall' => 'an holl',
-'limitall' => 'An holl',
# Email address confirmation
'confirmemail' => "Kadarnaat ar chomlec'h postel",
'confirmemail_needlogin' => "Ret eo deoc'h $1 evit kadarnaat ho chomlec'h postel.",
'confirmemail_success' => "Kadarnaet eo ho chomlec'h postel. A-benn bremañ e c'hallit [[Special:UserLogin|kevreañ]] hag ober ho mad eus ar wiki.",
'confirmemail_loggedin' => "Kadarnaet eo ho chomlec'h bremañ",
-'confirmemail_error' => 'Ur gudenn zo bet e-ser enrollañ ho kadarnadenn',
'confirmemail_subject' => "Kadarnadenn chomlec'h postel evit {{SITENAME}}",
'confirmemail_body' => "Unan bennak, c'hwi moarvat, gant ar chomlec'h IP \$1,
en deus enrollet ur gont \"\$2\" gant ar chomlec'h postel-mañ war lec'hienn {{SITENAME}}.
# Special:ComparePages
'comparepages' => 'Keñveriañ pajennoù',
-'compare-selector' => 'Keñveriañ stummoù ar pajennoù',
'compare-page1' => 'Pajenn 1',
'compare-page2' => 'Pajenn 2',
'compare-rev1' => 'Adweladenn 1',
'tog-minordefault' => 'Označi sve izmjene malim isprva',
'tog-previewontop' => 'Prikaži pretpregled prije polja za izmjenu a ne poslije',
'tog-previewonfirst' => 'Prikaži izgled pri prvoj izmjeni',
-'tog-nocache' => 'Onemogući keširanje stranica u pregledniku',
'tog-enotifwatchlistpages' => 'Pošalji mi e-mail kada se promijeni stranica ili datoteka sa mog spiska praćenih članaka',
'tog-enotifusertalkpages' => 'Pošalji mi e-poštu kad se promijeni moja korisnička stranica za razgovor',
'tog-enotifminoredits' => 'Pošalji mi e-poštu također za male izmjene u stranicama i datotekama',
'recentchanges-label-bot' => 'Ova izmjenu je načinio bot',
'recentchanges-label-unpatrolled' => 'Ova izmjena još nije patrolirana',
'recentchanges-legend-newpage' => '$1 - nova stranica',
-'rcnote' => "Ispod {{PLURAL:$1|je '''$1''' promjena|su '''$1''' zadnje promjene|su '''$1''' zadnjih promjena}} u {{PLURAL:$2|posljednjem '''$2''' danu|posljednja '''$2''' dana|posljednjih '''$2''' dana}}, od $4, $5.",
'rcnotefrom' => 'Ispod su izmjene od <b>$2</b> (do <b>$1</b> prikazano).',
'rclistfrom' => 'Prikaži nove izmjene počev od $1',
'rcshowhideminor' => '$1 male izmjene',
'undeletebtn' => 'Vrati',
'undeletelink' => 'pogledaj/vrati',
'undeleteviewlink' => 'pogledaj',
-'undeletereset' => 'Očisti',
'undeleteinvert' => 'Izmijeni odabir',
'undeletecomment' => 'Razlog:',
'undeletedrevisions' => '{{PLURAL:$1|$1 revizija vraćena|$1 revizije vraćene|$1 revizija vraćeno}}',
'block' => 'Blokiraj korisnika',
'unblock' => 'Odblokiraj korisnika',
'blockip' => 'Blokiraj korisnika',
-'blockip-title' => 'Blokiranje korisnika',
'blockip-legend' => 'Blokiranje korisnika',
'blockiptext' => 'Upotrebite donji upitnik da biste uklonili prava pisanja sa određene IP adrese ili korisničkog imena. Ovo bi trebalo da bude urađeno samo da bi se spriječio vandalizam, i u skladu sa [[{{MediaWiki:Policy-url}}|smjernicama]]. Unesite konkretan razlog ispod (na primjer, navodeći koje stranice su vandalizovane).',
'ipadressorusername' => 'IP adresa ili korisničko ime:',
'ipbexpiry' => 'Ističe:',
'ipbreason' => 'Razlog:',
-'ipbreasonotherlist' => 'Ostali razlozi',
'ipbreason-dropdown' => '*Najčešći razlozi blokiranja
**Netačne informacije
**Uklanjanje sadržaja stranica
'ipbsubmit' => 'Blokirajte ovog korisnika',
'ipbother' => 'Ostali period:',
'ipboptions' => '2 sata:2 hours,1 dan:1 day,3 dana:3 days,1 sedmica:1 week,2 sedmice:2 weeks,1 mjesec:1 month,3 mjeseca:3 months,6 mjeseci:6 months,1 godine:1 year,zauvijek:infinite',
-'ipbotheroption' => 'ostalo',
-'ipbotherreason' => 'Ostali/dodatni razlozi:',
'ipbhidename' => 'Sakrij korisničko ime iz uređivanja i spiskova',
'ipbwatchuser' => 'Prati korisničku stranicu i stranicu za razgovor ovog korisnika',
'ipb-disableusertalk' => 'Onemogući ovog korisnika da uređuje svoju vlastitu stranicu za razgovor dok je blokiran',
'sorbsreason' => 'Vaša IP adresa je prikazana kao otvoreni proxy u DNSBL koji koristi {{SITENAME}}.',
'sorbs_create_account_reason' => 'Vaša IP adresa je prikazana kao otvoreni proxy u DNSBL korišten od {{SITENAME}}.
Ne možete napraviti račun',
-'cant-block-while-blocked' => 'Ne možete blokirati druge korisnike dok ste blokirani.',
'cant-see-hidden-user' => 'Korisnik kojeg pokušavate blokirati je već blokiran i sakriven. Pošto nemate prava hideuser (sakrivanje korisnika), ne možete vidjeti ni urediti korisnikovu blokadu.',
'ipbblocked' => 'Ne možete blokirati ili deblokirati druge korisnike, jer ste i sami blokirani',
'ipbnounblockself' => 'Nije Vam dopušteno da deblokirate samog sebe',
'watchlistall2' => 'sve',
'namespacesall' => 'sve',
'monthsall' => 'sve',
-'limitall' => 'sve',
# Email address confirmation
'confirmemail' => 'Potvrdite adresu e-pošte',
'confirmemail_needlogin' => 'Morate $1 da bi ste potvrdili Vašu e-mail adresu.',
'confirmemail_success' => 'Adresa vaše e-pošte je potvrđena. Možete sad da se prijavite i uživate u viki.',
'confirmemail_loggedin' => 'Adresa Vaše e-pošte je potvrđena.',
-'confirmemail_error' => 'Nešto je pošlo po zlu prilikom sačuvavanja vaše potvrde.',
'confirmemail_subject' => 'Vikiriječnik adresa e-pošte za potvrđivanje',
'confirmemail_body' => 'Neko, vjerovatno Vi, je sa IP adrese $1 registrovao nalog "$2" sa ovom adresom e-pošte na {{SITENAME}}.
# Special:ComparePages
'comparepages' => 'Usporedi stranice',
-'compare-selector' => 'Usporedi ispravljanje stranica',
'compare-page1' => 'Stranica 1',
'compare-page2' => 'Stranica 2',
'compare-rev1' => 'Ispravljanje 1',
'tog-minordefault' => 'Marca totes les contribucions com a edicions menors per defecte',
'tog-previewontop' => "Mostra una previsualització abans del quadre d'edició",
'tog-previewonfirst' => 'Mostra una previsualització en la primera modificació',
-'tog-nocache' => 'Inhabilita la memòria cau de les pàgines',
'tog-enotifwatchlistpages' => "Envia'm un correu electrònic quan es modifiqui una pàgina de la meva llista de seguiment",
'tog-enotifusertalkpages' => "Envia'm un correu electrònic quan es modifiqui la meva pàgina de discussió",
'tog-enotifminoredits' => "Notifica'm per correu també en casos d'edicions menors",
'recentchanges-label-plusminus' => 'La mida de la pàgina ha canviat aquest nombre de bytes',
'recentchanges-legend-newpage' => '(vegeu també la [[Special:NewPages|llista de pàgines noves]])',
'recentchanges-legend-plusminus' => "(''±123'')",
-'rcnote' => 'A continuació hi ha {{PLURAL:$1|el darrer canvi|els darrers <strong>$1</strong> canvis}} en {{PLURAL:$2|el darrer dia|els darrers <strong>$2</strong> dies}}, actualitzats a les $5 del $4.',
'rcnotefrom' => 'A sota hi ha els canvis des de <b>$2</b> (es mostren fins <b>$1</b>).',
'rclistfrom' => 'Mostra els canvis nous des de $1',
'rcshowhideminor' => '$1 edicions menors',
'undeletebtn' => 'Restaura!',
'undeletelink' => 'mira/restaura',
'undeleteviewlink' => 'veure',
-'undeletereset' => 'Reinicia',
'undeleteinvert' => 'Invertir selecció',
'undeletecomment' => 'Motiu:',
'undeletedrevisions' => '{{PLURAL:$1|Una revisió restaurada|$1 revisions restaurades}}',
'block' => "Blocatge d'usuaris",
'unblock' => "Desblocatge d'usuaris",
'blockip' => "Bloqueig d'usuaris",
-'blockip-title' => "Bloquejar l'usuari",
'blockip-legend' => "Bloca l'usuari",
'blockiptext' => "Empreu el següent formulari per blocar l'accés
d'escriptura des d'una adreça IP específica o des d'un usuari determinat.
'ipadressorusername' => "Adreça IP o nom de l'usuari",
'ipbexpiry' => 'Venciment',
'ipbreason' => 'Motiu:',
-'ipbreasonotherlist' => 'Altres motius',
'ipbreason-dropdown' => "*Motius de bloqueig més freqüents
** Inserció d'informació falsa
** Supressió de contingut sense justificació
'ipbsubmit' => 'Bloqueja aquesta adreça',
'ipbother' => 'Un altre termini',
'ipboptions' => '2 hores:2 hours,1 dia:1 day,3 dies:3 days,1 setmana:1 week,2 setmanes:2 weeks,1 mes:1 month,3 mesos:3 months,6 mesos:6 months,1 any:1 year,infinit:infinite',
-'ipbotheroption' => 'un altre',
-'ipbotherreason' => 'Altres motius o addicionals:',
'ipbhidename' => "Amaga el nom d'usuari de les edicions i llistes",
'ipbwatchuser' => "Vigila les pàgines d'usuari i de discussió de l'usuari",
'ipb-disableusertalk' => 'Impedeix que aquest usuari pugui modificar la seva pàgina de discussió mentre dura el blocatge',
'sorbsreason' => "La vostra adreça IP està llistada com a servidor intermediari (''proxy'') obert dins la llista negra de DNS que fa servir el projecte {{SITENAME}}.",
'sorbs_create_account_reason' => "La vostra adreça IP està llistada com a servidor intermediari (''proxy'') obert a la llista negra de DNS que utilitza el projecte {{SITENAME}}. No podeu crear-vos-hi un compte",
'xffblockreason' => "Una adreça IP present en la capçalera X-Forwarded-For, ja sigui vostra o la d'un servidor proxy que esteu utilitzant, ha estat blocada. El motiu inicial del bloqueig és: $1",
-'cant-block-while-blocked' => 'No podeu blocar altres usuaris quan esteu bloquejat.',
'cant-see-hidden-user' => "L'usuari que esteu intentant blocar ja ha estat blocat i ocultat. Com que no teniu el permís hideuser no podeu veure ni modificar el seu blocatge.",
'ipbblocked' => 'No podeu blocar o desblocar altres usuaris, perquè vós {{GENDER:|mateix|mateixa|mateix}} esteu {{GENDER:|blocat|blocada|blocat}}.',
'ipbnounblockself' => 'No teniu permís per a treure el vostre bloqueig',
'watchlistall2' => 'totes',
'namespacesall' => 'tots',
'monthsall' => 'tots',
-'limitall' => 'tots',
# Email address confirmation
'confirmemail' => "Confirma l'adreça de correu electrònic",
'confirmemail_success' => "S'ha confirmat la vostra adreça electrònica.
Ara podeu [[Special:UserLogin|iniciar una sessió]] i gaudir del wiki.",
'confirmemail_loggedin' => "Ja s'ha confirmat la vostra adreça electrònica.",
-'confirmemail_error' => 'Quelcom ha fallat en desar la vostra confirmació.',
'confirmemail_subject' => "Confirmació de l'adreça electrònica del projecte {{SITENAME}}",
'confirmemail_body' => "Algú, segurament vós, ha registrat el compte «$2» al projecte {{SITENAME}}
amb aquesta adreça electrònica des de l'adreça IP $1.
'imgmultigo' => 'Vés-hi!',
'imgmultigoto' => 'Vés a la pàgina $1',
+# Language selector for translatable SVGs
+'img-lang-default' => '(llengua per defecte)',
+'img-lang-info' => 'Dibuixa aquesta imatge en $1 $2.',
+'img-lang-go' => 'Vés-hi',
+
# Table pager
'ascending_abbrev' => 'asc',
'descending_abbrev' => 'desc',
# Special:ComparePages
'comparepages' => 'Comparar pàgines',
-'compare-selector' => 'Comparar revisions de pàgines',
'compare-page1' => 'Pàgina 1',
'compare-page2' => 'Pàgina 2',
'compare-rev1' => 'Revisió 1',
'tog-minordefault' => '默認共所有其編輯都當作過要修改',
'tog-previewontop' => '敆編輯框以前顯示預覽',
'tog-previewonfirst' => '敆頭蜀回編輯時候看預覽',
-'tog-nocache' => '無讓瀏覽器頁面緩存',
'tog-enotifwatchlistpages' => '我其監視單有變時候,發電子郵件乞我',
'tog-enotifusertalkpages' => '我其討論頁有變時候,發電子郵件乞我',
'tog-enotifminoredits' => '即使是過要編輯,也著發電子郵件乞我',
'recentchanges-label-newpage' => '茲蜀萆修改創建新其蜀頁',
'recentchanges-label-minor' => '茲是蜀萆過要修改',
'recentchanges-label-bot' => '茲蜀萆修改是機器人做其',
-'rcnote' => "下底是{{PLURAL:$1|是 '''1'''改變|最後'''$1'''萆改變}}敆最後'''$2'''日,就像$4 $5。",
'rclistfrom' => '顯示由$1開始其新其改變',
'rcshowhideminor' => '$1過要修改',
'rcshowhidebots' => '$1機器人',
'undeletebtn' => '恢復',
'undeletelink' => '看/恢復',
'undeleteviewlink' => '看',
-'undeletereset' => '重新寫',
'undeletecomment' => '原因:',
'undelete-search-submit' => '尋討',
'ipadressorusername' => 'IP地址或者用戶名:',
'ipbexpiry' => '過期:',
'ipbreason' => '原因:',
-'ipbreasonotherlist' => '其它原因',
'ipbreason-dropdown' => '*普通封鎖原因
** 加添假其信息
** 塗掉頁面內容
'ipbsubmit' => '封鎖茲用戶',
'ipbother' => '其它時間',
'ipboptions' => '2 點鐘:2 hours,1 日:1 day,3 日:3 days,1 禮拜:1 week,2 禮拜:2 weeks,1 月日:1 month,3 月日:3 months,6 月日:6 months,1 年:1 year,永遠:infinite',
-'ipbotheroption' => '其它',
-'ipbotherreason' => '其它原因:',
'blockipsuccesssub' => '封鎖成功',
'blockipsuccesstext' => '[[Special:Contributions/$1|$1]]已經乞封鎖.<br />
覷蜀覷[[Special:BlockList|封鎖單]]來瀏覽封鎖。',
可能已經過期了。',
'confirmemail_needlogin' => '汝著$1來確定汝其電子郵件地址。',
'confirmemail_loggedin' => '汝其電子郵件地址現在已經確定去了。',
-'confirmemail_error' => '保存汝其確認其時候發現有鄭了。',
'confirmemail_body' => '有人(可能是汝)敆IP地址$1𡅏已經使茲蜀萆電子郵件地址來註冊蜀萆賬戶「$2」去了。
卜想確認茲蜀萆賬戶當真是汝其,固加敆{{SITENAME}}激活電子郵件特點,許敆汝其瀏覽器𡅏拍開茲蜀萆鏈接:
'tog-watchmoves' => 'ТӀетоха ас цӀераш хийцина агӀонаш тергаме могӀам чу',
'tog-watchdeletion' => 'Тlетоха ас дӀаяхина агlонаш тергаме могlам чу',
'tog-minordefault' => 'Къастам бе нисйиначарн хlумцадеш кегийра долушсанна',
-'tog-previewontop' => 'ЧÑ\83Ñ\8fккÑ\85а Ñ\85Ñ\8cалÑ\85Ñ\85Ñ\8cажаÑ\80 Ñ\80éдоккÑ\85Ñ\83Ñ\87Ñ\83 кора хьалха',
+'tog-previewontop' => 'ЧÑ\83Ñ\8fккÑ\85а Ñ\85Ñ\8cалÑ\85Ñ\85Ñ\8cажаÑ\80 Ñ\82адаÑ\80ан кора хьалха',
'tog-previewonfirst' => 'Гайта хьалххьажар тадарш да долийча',
-'tog-nocache' => 'Ма латае гойтучун къайлаха латториг',
'tog-enotifwatchlistpages' => 'Хаам бо зlе чухул, тергаме могlаман хийцамах лаьцна',
'tog-enotifusertalkpages' => 'Хаам бо зlе чухул, долахь йолу дийцаре агlон хийцамах лаьцна',
'tog-enotifminoredits' => 'Хаам бо зӀе чухул, цхьа жимма а хийцамаш биняхь',
'mediawikipage' => 'Хьагайта хааман агӀо',
'templatepage' => 'Хьажа кепа агӀоне',
'viewhelppage' => 'Схьаэца гӀо',
-'categorypage' => 'Ð¥Ñ\8cажа каÑ\82егоÑ\80еÑ\88и агӀоне',
+'categorypage' => 'Ð¥Ñ\8cажа каÑ\82егоÑ\80еÑ\88ан агӀоне',
'viewtalkpage' => 'Хьажа дийцаре',
'otherlanguages' => 'Кхечу маттахь дерш',
'redirectedfrom' => '(ДӀасахьажийна кху $1)',
'prefs-dateformat' => 'Терахьан формат',
'prefs-timeoffset' => 'Хенан гӀирс',
'prefs-advancedediting' => 'Юкъара параметреш',
+'prefs-editor' => 'Тадар',
'prefs-preview' => 'Хьалха муха ю хьажар',
'prefs-advancedrc' => 'Кхин гӀирс нисбар',
'prefs-advancedrendering' => 'Кхин гӀирс нисбар',
'recentchanges-label-bot' => 'ХӀара нисдар шаболх бечо дина',
'recentchanges-label-unpatrolled' => 'ХӀара нисдар хӀинца цхьано патрулировать дина дац',
'recentchanges-legend-newpage' => '$1 — керла агlо',
-'rcnote' => "{{PLURAL:$1|Тlаьххьара '''$1''' хийцам|Тlаьххьара '''$1''' хийцамаш|Тlаьххьара '''$1''' хийцамаш}} за '''$2''' {{PLURAL:$2|де|дийнахь|дийнахь}}, оцу хан чохь $5 $4.",
'rcnotefrom' => "Лахахь гайтина тӀера '''$2''' хийцамаш ('''$1''' къезиг).",
'rclistfrom' => 'Гайта хийцам оцу $1.',
'rcshowhideminor' => '$1 кегийра нисдарш',
[[$1|thumb]]',
'fileexists-forbidden' => 'Иштта цӀе йолу файл йолуш ю цундела тӀехула дӀаязян йиш яц.
ТӀаккха а хьара файл чуяккха лууш делахь, дехар до, юха а гӀой файлан цӀе хийца а яй чуяккха файл. [[File:$1|thumb|center|$1]]',
+'file-exists-duplicate' => 'ХӀара файл лахарчу {{PLURAL:$1|файлан|файлийн}} дубликат ю:',
'file-deleted-duplicate' => 'Иштта файл ([[:$1]]) хӀинцале дӀаяьккхина хилла. Дехар до, юху файл чуяккхале файл дӀаяккхаран историга хьажа.',
'uploadwarning' => 'Дlахьедар',
+'uploadwarning-text' => 'Дехар до, лахара файлах лаьцнарг хийца а дай юху а гӀорта файл чуяккха.',
'uploadedimage' => 'чуяккхина «[[$1]]»',
'overwroteimage' => 'Чуяккхина файлан керла верси «[[$1]]»',
'upload-source' => 'ДIайолалун файл',
'mimesearch' => 'MIME хула лаха',
'mimesearch-summary' => 'ХӀокху агӀоно йиш хуьлуьйту MIME-тайпан файлаш харжа. Яздеш долу формат: чулацаман тайп/бухара тайп, масала <code>image/jpeg</code>.',
'mimetype' => 'MIME-тайп:',
+'download' => 'чуяккха',
# Unwatched pages
'unwatchedpages' => 'Цхьамо тергам ца беш йолу агIонаш',
# Statistics
'statistics' => 'Бухехьдерг',
'statistics-header-pages' => 'Агlонашан жамlа',
-'statistics-header-edits' => 'Нисдаран жамlа',
+'statistics-header-edits' => 'Нисдаран жамӀ',
'statistics-header-users' => 'Декъашхойн жамӀа',
'statistics-articles' => 'Яззамаш',
'statistics-pages' => 'Агlонаш',
'statistics-pages-desc' => 'Массо вики агlонаш, дийцаре агlонашцани, дlасахьаждарш а кхин дерш.',
'statistics-files' => 'Чуйаьхна файлаш',
'statistics-edits' => 'Нисдаран дукхалла {{grammar:genitive|{{SITENAME}}}} дlа йолайаларца',
-'statistics-edits-average' => 'Ð\99Ñ\83кÑ\8aеÑ\80а агlонан ниÑ\81даÑ\80ан Ñ\82еÑ\80хь',
+'statistics-edits-average' => 'ЮккÑ\8aеÑ\80а агÓ\80онан ниÑ\81даÑ\80ан Ñ\82еÑ\80ахь',
'statistics-users' => '[[ВП:Дlаязвалар|Дlаязбелларш]] шаберигге декъашхой чохь болу [[Special:ListUsers|(могlам)]]',
'statistics-users-active' => 'Жигара декъашхой',
'statistics-users-active-desc' => 'Декъашхой, муьлха цхьа хlум дина болу, кху {{PLURAL:$1|тlаьххьара $1 динахь|тlаьххьара $1 дийнахь}}',
'undeletebtn' => 'МеттахӀоттае',
'undeletelink' => 'хьажа/меттахӀоттае',
'undeleteviewlink' => 'хьажа',
-'undeletereset' => 'ЦӀанъян',
'undeleteinvert' => 'Къастае массо',
'undeletecomment' => 'Бахьан:',
'undeletedrevisions' => '$1 {{PLURAL:$1|хийцамаш|хийцамаш|хийцамаш}} меттахӀоттайина',
'ipadressorusername' => 'IP-адрес я декъашхочун цӀе:',
'ipbexpiry' => 'Хан чекхйолу:',
'ipbreason' => 'Бахьан:',
-'ipbreasonotherlist' => 'Кхин бахьан',
'ipbreason-dropdown' => '* Белхан некъ дӀакъовлар бахьанаш:
** Харца хаам бар
** АгӀонан чураниг дӀаяккхар
'ipbsubmit' => 'Блоктоха хӀокху декъашхочун/адресна',
'ipbother' => 'Кхин хан:',
'ipboptions' => '2 сахьат:2 hours,1 де:1 day,3 де:3 days,1 кlиран:1 week,2 кlиран:2 weeks,1 бутт:1 month,3 бутт:3 months,6 бутт:6 months,1 шо:1 year,цlкъа:infinite',
-'ipbotherreason' => 'Кхин бахьан/тӀетохар:',
'ipbwatchuser' => 'ТӀетоха тергаме могӀам юкъа цуьнан долахь йолу агӀо а цуьнан дийцаре агӀо а',
'ipb-disableusertalk' => 'Цамагдо шин дийцаре агӀо та я блоктоьхна хан чекхъяллалц',
'ipb-change-block' => 'Юхаблоктоха декъашхочун оьцу хийцамашца',
'tooltip-ca-nstab-image' => 'Хlуман агlо',
'tooltip-ca-nstab-mediawiki' => 'Хааман агlо MediaWiki',
'tooltip-ca-nstab-template' => 'Куцкепа агlо',
-'tooltip-ca-nstab-category' => 'Ð\9aаÑ\82егоÑ\80еÑ\88и агӀо',
+'tooltip-ca-nstab-category' => 'Ð\9aаÑ\82егоÑ\80еÑ\88ан агӀо',
'tooltip-minoredit' => 'Къастам бé хlокху хийцамна кlеззиг боуш санна',
'tooltip-save' => 'Хьан хийцамаш lалашбой',
'tooltip-preview' => 'Дехар до, агlо lалаш йарал хьалха хьажа муха йу яз!',
'watchlistall2' => 'массо',
'namespacesall' => 'массо',
'monthsall' => 'массо',
-'limitall' => 'массо',
# Delete conflict
'confirmrecreate' => "Декъашхочо [[User:$1|$1]] ([[User talk:$1|дийцаре]]) хӀара агӀо дӀаяккхина, ахьа иза тая йолийча, дӀаяккхарна бахьна:
# Special:ComparePages
'comparepages' => 'АгӀонаш муха ю хьажар',
-'compare-selector' => 'АгӀонашан версеш муха ю хьажар',
'compare-page1' => 'Дуьххьаралера агӀо',
'compare-page2' => 'ШолгӀа агӀо',
'compare-rev1' => 'Дуьххьаралера верси',
'tog-minordefault' => 'Markahi ang tanang pag-usab isip ginagmay',
'tog-previewontop' => 'Ipakita ang paunang tan-aw bag-o sa edit box',
'tog-previewonfirst' => 'Ipakita ang paunang tan-aw sa unang pag-usab',
-'tog-nocache' => 'Ayaw i-cache ang panid',
'tog-enotifwatchlistpages' => 'I-email ko kon ang panid nga akong gibantayan giusab.',
'tog-enotifusertalkpages' => 'I-email ko kon nausab ang akong panid sa panaghisgot',
'tog-enotifminoredits' => 'I-email ko alang sa mga ginagmay nga pag-usab',
'recentchanges' => 'Mga bag-ong giusab',
'recentchanges-legend' => 'Mga opsyon sa bag-ong pag-usab',
'recentchanges-feed-description' => 'Bantayi ang kinabag-ohang mga pag-usab sa wiki niining feed.',
-'rcnote' => "Sa ubos {{PLURAL:$1|ang '''1''' kausaban|ang mga bag-ong '''$1''' kausaban}} sa miaging {{PLURAL:$2|ka adlaw|'''$2''' ka mga adlaw}}, sa taknang $5, $4.",
'rclistfrom' => 'Ipakita ang mga bag-ong pag-usab gikan $1',
'rcshowhideminor' => '$1 menor nga pag-usab',
'rcshowhidebots' => '$1 mga bot',
# Recent changes
'nchanges' => '$1 {{PLURAL:$1|na tinilaika|na tinilaika siha}}',
'recentchanges' => 'Tinilaika siha gi halacha',
-'rcnote' => "Guåha {{PLURAL:$1|'''1''' na tinilaika|'''$1''' na tinilaika siha}} gi {{PLURAL:$2|day|'''$2''' days}}, ginen $5, $4.",
'rcnotefrom' => "Gi papa' guåha i tinilaika siha ginen '''$2''' (fa'na'an '''$1''' ma'annok).",
'rclistfrom' => "Na'annok i mannuebun tinilaika siha ginen $1",
'rcshowhideminor' => "$1 na mandikike' na tinilaika siha",
'tog-minordefault' => 'ھەموو دەستکارییەکان بە ورد نیشان بکە لە حاڵەتی دیفاڵت',
'tog-previewontop' => 'پێشبینین بەرلە چوارچێوەی دەستکاری نیشان بدە',
'tog-previewonfirst' => 'لە یەکەم دەستکاری دا پێشبینین نیشان بدە',
-'tog-nocache' => 'کاشکردنی پەڕەکانی وێبگەڕەکە لەکاربخە',
'tog-enotifwatchlistpages' => 'ئەگەر پەڕە یان پەڕگەیەک لە پێرستی چاودێیییەکانمدا گۆڕدرا ئیمەیلم بۆ بنێرە',
'tog-enotifusertalkpages' => 'ئەگەر پەڕەی لێدوانەکەم گۆڕدرا ئیمەیلم بۆ بنێرە',
'tog-enotifminoredits' => 'بۆ گۆڕانکارییە بچووکەکانی پەڕەکان و پەڕگەکانیش ئیمەیلم بۆ بنێرە',
'recentchanges-label-bot' => 'ئەم دەستکاریە لە لایەن بۆتەوە پێک هاتووە',
'recentchanges-label-unpatrolled' => 'ئەم دەستکارییە ھێشتا پاس نەدراوە',
'recentchanges-legend-newpage' => '$1 - لاپەڕەی نوێ',
-'rcnote' => "لە خوارەوەدا {{PLURAL:$1|'''۱''' گۆڕانکاری |دوایین '''$1''' گۆڕانکارییەکان}} لە دوایین {{PLURAL:$2|ڕۆژ|'''$2''' ڕۆژەوە}} ، تا $5، $4 دەبینن.",
'rcnotefrom' => "ئەوی خوارەوە گۆڕانکارییەکانە لە '''$2'''ەوە (ھەتا '''$1''' نیشاندراو).",
'rclistfrom' => 'گۆڕانکارییە نوێکان نیشان بدە بە دەستپێکردن لە $1',
'rcshowhideminor' => 'دەستکارییە بچووکەکان $1',
'undeletebtn' => 'هێنانەوە',
'undeletelink' => 'ببینە/بھێنەوە',
'undeleteviewlink' => 'دیتن',
-'undeletereset' => 'بردنەوە نووک',
'undeleteinvert' => 'ھەڵبژاردەکان پێچەوانە بکە',
'undeletecomment' => 'هۆکار:',
'undeletedrevisions' => '{{PLURAL:$1|1 پێداچوونەوە|$1 پێداچوونەوە}} هێنرایەوە',
'block' => 'بەربەستکردنی بەکارھێنەر',
'unblock' => 'لە بەربەستدەرهێنانی بەکارهێنەر',
'blockip' => 'بەربەستنی بەکارھێنەر',
-'blockip-title' => 'بەربەستکردنی بەکارهێنەر',
'blockip-legend' => 'بەربەستکردنی بەکارهێنەر',
'blockiptext' => 'لەم فۆرمەی خوارەوە دەتوانی بۆ بەربەستکردنی دەستپێگەیشتنی نووسین لە ناونیشانێکی ئایپی تایبەت یا ناوی بەکارهێنەریەک، کەڵک وەرگریت.
ئەمە تەنها دەبێ بۆ بەرگری لە خراپکاری بەکاربێت و ڕێکەوتنی هەبێ دەگەڵ [[{{MediaWiki:Policy-url}}|سیاسەتەکان]].
'ipadressorusername' => 'ناونیشانی ئایپی یان ناوی بەکارھێنەر:',
'ipbexpiry' => 'بەسەرچوون:',
'ipbreason' => 'هۆکار:',
-'ipbreasonotherlist' => 'هۆکاری تر',
'ipbreason-dropdown' => '*ھۆکارە ھاوبەشەکانی بەربستن
**دانانی زانیاریی ھەڵە
**لابردنی ناوەرۆکی پەڕەکان
'ipbsubmit' => 'بەربەستکردنی ئەم بەکارھێنەرە',
'ipbother' => 'کاتی دیکە:',
'ipboptions' => '٢ کاتژمێر:2 hours,١ ڕۆژ:1 day,٣ ڕۆژ:3 days,١ ھەفتە:1 week,٢ ھەفتە:2 weeks,١ مانگ:1 month,٣ مانگ:3 months,٦ مانگ:6 months,١ ساڵ:1 year,بێسنوور:infinite',
-'ipbotheroption' => 'دیکە',
-'ipbotherreason' => 'ھۆکاری تر/زیاتر:',
'ipbhidename' => 'شاردنەوەی ناوی بەکارهێنەر لە دەستکاری و لیستەکان',
'ipbwatchuser' => 'پەڕەکانی بەکارھێنەر و لێدوانی ئەم بەکارهێنەرە بخە ژێر چاودێری',
'ipb-disableusertalk' => 'بەرگری ئەم بەکارھێنەرە بکە لە دستکاریکردنی پەڕەی لێدوانەکەی کاتێک بەربەست کراوە',
'sorbsreason' => 'ناونیشانی ئایپی تۆ لە DNSBLدا کە {{SITENAME}} کەڵکی لێوەر دەگرێ، وەک پرۆکسیەکی کراوە لیست کراوە.',
'sorbs_create_account_reason' => 'ناونیشانی ئایپی تۆ لە DNSBLدا کە {{SITENAME}} کەڵکی لێوەر دەگرێ، وەک پرۆکسیەکی کراوە لیست کراوە.
بۆیە ناتوانی هەژمارە درووستبکەی.',
-'cant-block-while-blocked' => 'کاتێ خۆت بەربەستکراوی، ناتوانی بەکارهێنەرانی دیکە بەربەست بکەی.',
'ipbblocked' => 'ناتوانی بەکارھێنەرانی تر بەربەست بکەی یان بکەیەوە، چون خۆت بەربەست کراوی.',
# Developer tools
'watchlistall2' => 'ھەموو',
'namespacesall' => 'ھەموو',
'monthsall' => 'ھەموو',
-'limitall' => 'ھەموو',
# Email address confirmation
'confirmemail' => 'بڕواپێکردنی ناونیشانی ئیمەیل',
'confirmemail_success' => 'ناونیشانی ئیمیلەکەت بڕوایپێکرا.
ئێستە دەتوانی [[Special:UserLogin|بڕۆیتە ژوورەوە]] و لە ویکی کەڵک بگری.',
'confirmemail_loggedin' => 'ئێستا بڕواکراوە بە ئیمەیلەکەت.',
-'confirmemail_error' => 'کێشەیەک هەیە لە پاشەکەوتکردنی بڕواپێکردنی تۆدا.',
'confirmemail_subject' => 'بڕوا پێکردنی ناونیشانی ئیمەیلی {{SITENAME}}',
'confirmemail_body' => 'کەسێک، لەوانەیە خۆت، لە ناونیشانی ئایپی $1،
لە {{SITENAME}} بەم ناونیشانی ئیمەیلە، هەژمارەیەکی تۆمارکردووە "$2" .
# Special:ComparePages
'comparepages' => 'پەڕەکان ھەڵسەنگێنە',
-'compare-selector' => 'پیاچوونەوەکانی پەڕە ھەڵسەنگێنە',
'compare-page1' => 'پەڕەی ١',
'compare-page2' => 'پەڕەی ٢',
'compare-rev1' => 'پێداچوونەوەی ١',
'tog-minordefault' => 'Markahan ang tanan nga gin-islan nga gamay lang pamaagi sa default',
'tog-previewontop' => 'Ipakita ang prebyu antes ang kahon sang pang-ilis',
'tog-previewonfirst' => 'Ipakita ang prebyu sa una nga pag-ilis',
-'tog-nocache' => 'Indi pagpaganahon ang pagcache sang pahina',
'tog-enotifwatchlistpages' => 'Padal-an ako sang email kung ang pahina sa akon ginabanatayan nagbag-o',
'tog-enotifusertalkpages' => 'Padal-an ako sang email kung ginbag-o ang akon nga pahina sang istoryahanay',
'tog-enotifminoredits' => 'Padal-an man ako sang email sa mga gamay nga pag-ilis sang mini nga pahina',
'recentchanges-label-minor' => 'Gamay lang ini nga pagbag-o',
'recentchanges-label-bot' => 'Ubra sang isa ka bot ang mini nga pagbag-o',
'recentchanges-label-unpatrolled' => 'Wala pa napapatrulyahan ang mini nga pagbag-o',
-'rcnote' => "Diya sa idalum may {{PLURAL:$1|'''1''' ka bag-o| '''$1''' ka mga nabag-o}} sang naligad nga {{PLURAL:$2|ka adlaw|'''$2''' ka adlaw}}, sang mini nga $5, $4.",
'rclistfrom' => 'Ipakita ang bag-o nga mga na-islan halin sa $1',
'rcshowhideminor' => '$1 gamay nga mga inislan',
'rcshowhidebots' => '$1 ka bots',
'tog-minordefault' => 'Япкъан денъиштирмелеримни кичик денъиштирмедир деп ишаретле',
'tog-previewontop' => 'Бакъып чыкъувны язув пенджеренинъ устюнде косьтер',
'tog-previewonfirst' => 'Денъиштирме саифесине кечкенде бакъып чыкъувны косьтер',
-'tog-nocache' => 'Браузер саифелерни афызасында тутмасын',
'tog-enotifwatchlistpages' => 'Козетюв джедвелимдеки бир саифе я да файл денъиштирильгенде манъа e-mail ёлла',
'tog-enotifusertalkpages' => 'Къулланыджы саифем денъиштирильгенде манъа e-mail ёлла',
'tog-enotifminoredits' => 'Саифе я да файлда кичик денъиштирильме олгъанда да манъа e-mail ёлла',
'recentchanges-label-bot' => 'Бу бир ботнынъ япкъан денъиштирмеси',
'recentchanges-label-unpatrolled' => 'Бу денъиштирме аля даа тешкерильмеген',
'recentchanges-legend-newpage' => '$1 - янъы саифе',
-'rcnote' => "$4 $5 тарихында сонъки {{PLURAL:$2|куньде|'''$2''' куньде}} япылгъан '''{{PLURAL:$1|1|$1}}''' денъиштирме:",
'rcnotefrom' => "'''$2''' тарихындан итибарен япылгъан денъиштирмелер ашагъыдадыр (энъ чокъ '''$1''' дане саифе косьтериле).",
'rclistfrom' => '$1 тарихындан берли япылгъан денъиштирмелерни косьтер',
'rcshowhideminor' => 'кичик денъиштирмелерни $1',
'viewdeletedpage' => 'Ёкъ этильген саифелерге бакъ',
'undeletebtn' => 'Кери кетир!',
'undeletelink' => 'косьтер/кери кетир',
-'undeletereset' => 'Вазгеч',
'undeletecomment' => 'Себеп:',
'undeletedrevisions' => 'Топлам {{PLURAL:$1|1 къайд|$1 къайд}} кери кетирильди.',
'undelete-header' => 'Кеченлерде ёкъ этильген саифелерни корьмек ичюн [[Special:Log/delete|ёкъ этюв журналына]] бакъынъыз.',
'ipbsubmit' => 'Бу къулланыджыны блок эт',
'ipbother' => 'Фаркълы заман',
'ipboptions' => '2 саат:2 hours,1 кунь:1 day,3 кунь:3 days,1 афта:1 week,2 афта:2 weeks,1 ай:1 month,3 ай:3 months,6 ай:6 months,1 йыл:1 year,муддетсиз:infinite',
-'ipbotheroption' => 'фаркълы',
-'ipbotherreason' => 'Дигер/илявели себеп:',
'badipaddress' => 'Янълыш IP адреси',
'blockipsuccesssub' => 'Блок этме мувафакъиетнен япылды',
'blockipsuccesstext' => '[[Special:Contributions/$1|$1]] блок этильди.<br />
'watchlistall2' => 'эписини',
'namespacesall' => 'Эписи',
'monthsall' => 'Эписи',
-'limitall' => 'бутюни',
# Email address confirmation
'confirmemail' => 'E-mail адресини тасдыкъла',
'confirmemail_needlogin' => '$1 япмакъ ичюн башта e-mail адресинъизни тасдыкъламалысынъыз.',
'confirmemail_success' => 'E-mail адресинъиз тасдыкъланды.',
'confirmemail_loggedin' => 'E-mail адресинъиз тасдыкъланды.',
-'confirmemail_error' => 'Тасдыкъынъыз билинмеген бир хата себебинден къайд этильмеди.',
'confirmemail_subject' => '{{SITENAME}} e-mail адрес тасдыкъы.',
'confirmemail_body' => '$1 IP адресинден япылгъан иришим иле {{SITENAME}} сайтында
бу e-mail адресинен багълангъан $2 къулланыджы эсабы ачылды.
'tog-minordefault' => 'Yapqan deñiştirmelerimni kiçik deñiştirmedir dep işaretle',
'tog-previewontop' => 'Baqıp çıquvnı yazuv pencereniñ üstünde köster',
'tog-previewonfirst' => 'Deñiştirme saifesine keçkende baqıp çıquvnı köster',
-'tog-nocache' => 'Brauzer saifelerni afızasında tutmasın',
'tog-enotifwatchlistpages' => 'Közetüv cedvelimdeki bir saife ya da fayl deñiştirilgende maña e-mail yolla',
'tog-enotifusertalkpages' => 'Qullanıcı saifem deñiştirilgende maña e-mail yolla',
'tog-enotifminoredits' => 'Saife ya da faylda kiçik deñiştirilme olğanda da de maña e-mail yolla',
'recentchanges-label-bot' => 'Bu bir botnıñ yapqan deñiştirmesi',
'recentchanges-label-unpatrolled' => 'Bu deñiştirme alâ daa teşkerilmegen',
'recentchanges-legend-newpage' => '$1 - yañı saife',
-'rcnote' => "$4 $5 tarihında soñki {{PLURAL:$2|künde|'''$2''' künde}} yapılğan '''{{PLURAL:$1|1|$1}}''' deñiştirme:",
'rcnotefrom' => "'''$2''' tarihından itibaren yapılğan deñiştirmeler aşağıdadır (eñ çоq '''$1''' dane saife kösterile).",
'rclistfrom' => '$1 tarihından berli yapılğan deñiştirmelerni köster',
'rcshowhideminor' => 'kiçik deñiştirmelerni $1',
'viewdeletedpage' => 'Yoq etilgen saifelerge baq',
'undeletebtn' => 'Keri ketir!',
'undeletelink' => 'köster/keri ketir',
-'undeletereset' => 'Vazgeç',
'undeletecomment' => 'Sebep:',
'undeletedrevisions' => 'Toplam {{PLURAL:$1|1 qayd|$1 qayd}} keri ketirildi.',
'undelete-header' => 'Keçenlerde yоq etilgen saifelerni körmek içün [[Special:Log/delete|yоq etüv jurnalına]] baqıñız.',
'ipbsubmit' => 'Bu qullanıcını blok et',
'ipbother' => 'Farqlı zaman',
'ipboptions' => '2 saat:2 hours,1 kün:1 day,3 kün:3 days,1 afta:1 week,2 afta:2 weeks,1 ay:1 month,3 ay:3 months,6 ay:6 months,1 yıl:1 year,müddetsiz:infinite',
-'ipbotheroption' => 'farqlı',
-'ipbotherreason' => 'Diger/ilâveli sebep:',
'badipaddress' => 'Yañlış IP adresi',
'blockipsuccesssub' => 'Blok etme muvafaqiyetnen yapıldı',
'blockipsuccesstext' => '[[Special:Contributions/$1|$1]] blok etildi.<br />
'watchlistall2' => 'episini',
'namespacesall' => 'Episi',
'monthsall' => 'Episi',
-'limitall' => 'bütüni',
# Email address confirmation
'confirmemail' => 'E-mail adresini tasdıqla',
'confirmemail_needlogin' => '$1 yapmaq içün başta e-mail adresiñizni tasdıqlamalısıñız.',
'confirmemail_success' => 'E-mail adresiñiz tasdıqlandı.',
'confirmemail_loggedin' => 'E-mail adresiñiz tasdıqlandı.',
-'confirmemail_error' => 'Tasdıqıñız bilinmegen bir hata sebebinden qayd etilmedi.',
'confirmemail_subject' => '{{SITENAME}} e-mail adres tasdıqı.',
'confirmemail_body' => '$1 IP adresinden yapılğan irişim ile {{SITENAME}} saytında
bu e-mail adresinen bağlanğan $2 qullanıcı esabı
# Special:ComparePages
'comparepages' => 'Saifelerni teñeştirüv',
-'compare-selector' => 'Saifelerniñ versiyalarını teñeştirüv',
'compare-submit' => 'Teñeştir',
# HTML forms
'tog-minordefault' => 'Označit editaci implicitně jako malá editace',
'tog-previewontop' => 'Zobrazovat náhled před editačním oknem (ne za ním)',
'tog-previewonfirst' => 'Zobrazit při první editaci náhled',
-'tog-nocache' => 'Vypnout cachování v prohlížeči',
'tog-enotifwatchlistpages' => 'Poslat e-mail při změně sledované stránky nebo souboru',
'tog-enotifusertalkpages' => 'Poslat e-mail při změně mé diskusní stránky',
'tog-enotifminoredits' => 'Posílat e-maily i při malých editacích stránek a souborů',
'recentchanges-label-plusminus' => 'Velikost stránky se změnila o tolik bajtů',
'recentchanges-legend-newpage' => '(vizte též [[Special:NewPages|seznam nových stránek]])',
'recentchanges-legend-plusminus' => "(''±123'')",
-'rcnote' => 'Níže {{plural:$1|je poslední|jsou poslední|je posledních}} <strong>$1</strong> {{plural:$1|změna|změny|změn}} za {{PLURAL:$2|poslední|poslední|posledních}} <strong>$2</strong> {{plural:$2|den|dny|dnů}} před $4, $5.',
'rcnotefrom' => 'Níže {{PLURAL:$1|je|jsou|je}} nejvýše <b>$1</b> {{PLURAL:$1|změna|změny|změn}} od <b>$2</b>.',
'rclistfrom' => 'Ukázat nové změny, počínaje od $1',
'rcshowhideminor' => '$1 malé editace',
'undeletebtn' => 'Obnovit',
'undeletelink' => 'prohlédnout/obnovit',
'undeleteviewlink' => 'prohlédnout',
-'undeletereset' => 'Resetovat',
'undeleteinvert' => 'Invertovat výběr',
'undeletecomment' => 'Důvod:',
'undeletedrevisions' => '{{PLURAL:$1|Obnovena $1 verze|Obnoveny $1 verze|Obnoveno $1 verzí}}',
'block' => 'Zablokovat uživatele',
'unblock' => 'Odblokovat uživatele',
'blockip' => 'Zablokovat uživatele',
-'blockip-title' => 'Blokovat uživatele',
'blockip-legend' => 'Zablokovat uživatele',
'blockiptext' => 'Tento formulář slouží k zablokování editací z konkrétní IP adresy nebo uživatelského jména.
Toto by mělo být používáno jen v souladu s [[{{MediaWiki:Policy-url}}|pravidly]].
'ipadressorusername' => 'IP adresa nebo uživatelské jméno:',
'ipbexpiry' => 'Čas vypršení:',
'ipbreason' => 'Důvod:',
-'ipbreasonotherlist' => 'Jiný důvod',
'ipbreason-dropdown' => '*Časté důvody blokování
** Vkládání klamných informací
** Odstraňování obsahu stránek
'ipbsubmit' => 'Zablokovat',
'ipbother' => 'Jiný čas vypršení:',
'ipboptions' => '2 hodiny:2 hours,1 den:1 day,3 dny:3 days,1 týden:1 week,2 týdny:2 weeks,1 měsíc:1 month,3 měsíce:3 months,6 měsíců:6 months,1 rok:1 year,do odvolání:infinite',
-'ipbotheroption' => 'jiný',
-'ipbotherreason' => 'Jiný/další důvod:',
'ipbhidename' => 'Skrýt uživatelské jméno u editací a v seznamech',
'ipbwatchuser' => 'Sledovat uživatelskou a diskusní stranu tohoto uživatele',
'ipb-disableusertalk' => 'Zabránit tomuto uživateli editovat vlastní uživatelskou diskusi po dobu zablokování',
'sorbsreason' => 'Vaše IP adresa je uvedena na seznamu DNSBL jako otevřený proxy server.',
'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-block-while-blocked' => 'Nemůžete blokovat jiné uživatele, když jste zablokován(a).',
'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',
'watchlistall2' => 'všechny',
'namespacesall' => 'všechny',
'monthsall' => 'všechny',
-'limitall' => 'vše',
# Email address confirmation
'confirmemail' => 'Potvrzení e-mailové adresy',
'confirmemail_needlogin' => 'Pro potvrzení své e-mailové adresy se musíte $1.',
'confirmemail_success' => 'Vaše e-mailová adresa byla potvrzena. Nyní se můžete přihlásit a používat wiki.',
'confirmemail_loggedin' => 'Vaše e-mailová adresa byla potvrzena.',
-'confirmemail_error' => 'Nepodařilo se uložit vaše potvrzení.',
'confirmemail_subject' => 'Potvrzení e-mailové adresy pro {{grammar:4sg|{{SITENAME}}}}',
'confirmemail_body' => 'Někdo (patrně vy, z IP adresy $1) si na {{grammar:6sg|{{SITENAME}}}}
zaregistroval účet se jménem „$2“ a touto e-mailovou adresou.
'imgmultigo' => 'Jít!',
'imgmultigoto' => 'Jít na stranu $1',
+# Language selector for translatable SVGs
+'img-lang-default' => '(implicitní jazyk)',
+'img-lang-info' => 'Vykreslit tento obrázek v jazyce $1 $2',
+'img-lang-go' => 'Provést',
+
# Table pager
'ascending_abbrev' => 'vzest.',
'descending_abbrev' => 'sest.',
# Special:ComparePages
'comparepages' => 'Porovnání stránek',
-'compare-selector' => 'Porovnání revizí stránek',
'compare-page1' => 'Stránka 1',
'compare-page2' => 'Stránka 2',
'compare-rev1' => 'Revize 1',
'tog-minordefault' => 'Zaznaczë wszëtczé edicëje domëslno jakno môłé',
'tog-previewontop' => 'Pòkażë pòdzérk przed kastką edicëji',
'tog-previewonfirst' => 'Pòkażë pòdzérk ju przed pierszą edicëją',
-'tog-nocache' => 'Wëłączë pòdrãczną pamiãc w przezérnikù',
'tog-enotifwatchlistpages' => 'Wëslë mie e-mail czedë starna jaką ùzéróm je zmieniwónô',
'tog-enotifusertalkpages' => 'Wëslë mie e-mail czedë zmieniwónô je mòja starna diskùsëji',
'tog-enotifminoredits' => 'Wëslë mie e-mail téż dlô môłich zmianów starnów',
'recentchanges-summary' => 'Na starna prezentérëje historëjã slédnëch edicëjów w {{SITENAME}}.',
'recentchanges-feed-description' => 'Pòdstrzegô slédny zmianë w tim pòwrózkù.',
'recentchanges-label-minor' => 'To je drobnô edicëjô',
-'rcnote' => "Niżi {{PLURAL:$1|nachôdô sã '''1''' slédnô zjinaka zrobionô|nachôdają sã '''$1''' slédné zjinaczi zrobioné|nachôdô sã '''$1''' slédnych zjinaków zrobionëch}} w {{PLURAL:$2|slédnégò dnia|slédnych '''$2''' dniach}}, rëchùjąc òd $5 dnia $4.",
'rcnotefrom' => "Niżi są zmianë òd '''$2''' (pòkazóné do '''$1''').",
'rclistfrom' => 'Pòkażë nowé zmianë òd $1',
'rcshowhideminor' => '$1 môłé zmianë',
'blockiptext' => 'Brëkùje formùlarza niżi abë zascëgòwac prawò zapisënkù spòd gwësny adresë IP. To robi sã blós dlôte abë zascëgnąc wandalëznom, a bëc w zgòdze ze [[{{MediaWiki:Policy-url}}|wskôzama]]. Pòdôj przëczënã (np. dając miona starn, na chtërnëch dopùszczono sã wandalëzny).',
'ipbreason' => 'Przëczëna:',
'ipboptions' => '2 gòdzënë:2 hours,1 dzéń:1 day,3 dni:3 days,1 tidzéń:1 week,2 tigòdnie:2 weeks,1 ksãżëc:1 month,3 ksãżëcë:3 months,6 ksãżëców:6 months,1 rok:1 year,na wiedno:infinite',
-'ipbotheroption' => 'jinszi cząd',
-'ipbotherreason' => 'Jinszé abù dodôwné przëczënë:',
'ipbhidename' => 'Zatacë miono brëkòwnika ë edicëjach ë lëstach',
'ipbwatchuser' => 'Ùzérôj starnã brëkòwnika ë jegò starnã diskùsëji',
'badipaddress' => 'IP-adresa nie je richtich pòdónô.',
'watchlistall2' => 'wszëtczé',
'namespacesall' => 'wszëtczé',
'monthsall' => 'wszëtczé',
-'limitall' => 'wszëtczé',
# Email address confirmation
'confirmemail_loggedin' => 'Twòjô adresa e-mail òsta pòcwierdzona.',
'recentchanges-label-newpage' => 'по сѥи мѣнꙑ нова страница сътворѥна ѥстъ',
'recentchanges-label-minor' => 'малаꙗ мѣна',
'recentchanges-label-bot' => 'сѭ мѣноу аѵтоматъ сътворихъ',
-'rcnote' => "нижѣ {{PLURAL:$1|'''1''' послѣдьнѭ мѣнѫ|'''$1''' послѣдьни мѣнꙑ|'''$1''' послѣдьнъ мѣнъ|'''$1''' послѣдьнъ мѣнъ}} ꙁа {{PLURAL:$2|дьнь|'''$2''' дьнꙗ|'''$2''' дьнъ|'''$2''' дьнъ}} · ꙗко нꙑнѣ $5 · $4 лѣта",
'rcshowhideminor' => '$1 малꙑ мѣнꙑ',
'rcshowhidebots' => '$1 аѵтоматъ',
'rcshowhideliu' => '$1 польꙃєватєлъ · ѩжє съꙁижьдє сѥ мѣсто · мѣнꙑ',
# Block/unblock
'block' => 'ꙁагради польꙃєватєл҄ь',
'blockip' => 'ꙁагради польꙃєватєл҄ь',
-'blockip-title' => 'ꙁагради польꙃєватєл҄ь',
'blockip-legend' => 'ꙁагради польꙃєватєл҄ь',
'ipadressorusername' => 'IP число или польꙃєватєлꙗ имѧ :',
'ipbreason' => 'какъ съмꙑслъ :',
'tog-minordefault' => 'Палăртман чухне улшăнусене пĕчĕк тӳрлетӳсем пек палăртмалла',
'tog-previewontop' => 'Тӳрлетӳ чӳречине кăтартас умĕн малтанхи курăмне кăтармалла',
'tog-previewonfirst' => 'Пĕрремĕш хут тӳрлетнĕ чухне малтанхи курăнăва кăтартмалла',
-'tog-nocache' => 'Страницăсене кэшра сыхласа хăварассине чармалла',
'tog-enotifwatchlistpages' => 'Сăнав списокĕнчи статяна тӳрлетӳ кĕртсен электронлă почта урлă пĕлтермелле',
'tog-enotifusertalkpages' => 'Ман канашлу страницинче улшăнусем пулсан мана эл. почта урлă пĕлтермелле',
'tog-enotifminoredits' => 'Пĕчĕк улшăнусене те эл. почта урлă пĕлтермелле',
'recentchanges-legend' => 'Çĕнĕ улшăнусен ĕнерлевĕ',
'recentchanges-label-bot' => 'Ку улшăнăва бот тунă',
'recentchanges-legend-newpage' => '$1 — çĕнĕ страница',
-'rcnote' => 'Юлашки <strong>$2</strong> кун хушшинчи <strong>$1</strong> улшăнусем. Халě пěтěмпе <strong>{{NUMBEROFARTICLES}}</strong> статья.',
'rclistfrom' => 'Юлашки улшăнусене $1 вăхăтран пуçласа кăтартнă',
'rcshowhideminor' => 'пĕчĕк тӳрлетӳсене $1',
'rcshowhidebots' => 'ботсене $1',
'undeleterevisions' => 'Архивра пурĕ $1 верси',
'undeletebtn' => 'Каялла тавăр!',
'undeleteviewlink' => 'пăх',
-'undeletereset' => 'Тасат',
'undeletedrevisions' => '$1 кăларса пăрахнă тӳрлетӳсене каялла тавăрнă',
'undelete-search-box' => 'Кăларса пăрахнă страницăсен хушшинчи шырав',
'undelete-search-submit' => 'Шыра',
'ipbreason' => 'Сăлтавĕ',
'ipbother' => 'Урăх вăхăт:',
'ipboptions' => '2 сехет:2 hours,1 кун:1 day,3 кун:3 days,1 эрне:1 week,2 эрне:2 weeks,1 уйăх:1 month,3 уйăх:3 months,6 уйăх:6 months,1 çул:1 year,яванлăха:infinite',
-'ipbotheroption' => 'урăххи',
'badipaddress' => 'IP-адрес формачĕ тĕрĕс мар, е ку ятлă хутшăнакан кунта çук.',
'blockipsuccesssub' => 'Ĕçлеме чартăмăр',
'blockipsuccesstext' => '[[Special:Contributions/$1|«$1»]] ĕçлеме чарнă.
'tog-minordefault' => 'Marcio pob golygiad fel un bach yn ddiofyn',
'tog-previewontop' => 'Dangos y rhagolwg cyn y blwch golygu',
'tog-previewonfirst' => 'Dangos rhagolwg ar y golygiad cyntaf',
-'tog-nocache' => 'Analluogi storio tudalennau yng nghelc y porydd',
'tog-enotifwatchlistpages' => 'Gyrru e-bost ataf pan fo newid i dudalen neu ffeil ar fy rhestr wylio',
'tog-enotifusertalkpages' => "Gyrru e-bost ataf fy hunan pan fo newid i'm tudalen sgwrs",
'tog-enotifminoredits' => 'Gyrru e-bost ataf hefyd ar gyfer golygiadau bychain i dudalennau a ffeiliau',
'passwordtooshort' => "Mae'n rhaid fod gan gyfrinair o leia $1 {{PLURAL:$1|nod}}.",
'password-name-match' => "Rhaid i'ch cyfrinair a'ch enw defnyddiwr fod yn wahanol i'w gilydd.",
'password-login-forbidden' => "Gwaharddwyd defnyddio'r enw defnyddiwr a'r cyfrinair hwn.",
-'mailmypassword' => 'Anfoner cyfrinair newydd ataf trwy e-bost',
+'mailmypassword' => 'Ailosoder y cyfrinair',
'passwordremindertitle' => 'Hysbysu cyfrinair dros dro newydd ar gyfer {{SITENAME}}',
'passwordremindertext' => 'Mae rhywun (chi mwy na thebyg, o\'r cyfeiriad IP $1) wedi gofyn i ni anfon cyfrinair newydd atoch ar gyfer {{SITENAME}} ($4).
Mae cyfrinair dros dro, sef "$3", wedi ei greu ar gyfer y defnyddiwr "$2". Os mai dyma oedd y bwriad, yna dylech fewngofnodi a\'i newid cyn gynted â phosib. Daw\'ch cyfrinair dros dro i ben ymhen {{PLURAL:$5||diwrnod|deuddydd|tridiau|$5 diwrnod|$5 diwrnod}}.
# Special:PasswordReset
'passwordreset' => 'Ailosod cyfrinair',
'passwordreset-text-one' => 'Cwblhewch y ffurflen hon er mwyn ailosod eich cyfrinair.',
-'passwordreset-text-many' => "{{PLURAL:$1|Llanwch un o'r blychau er mwyn ailosod eich cyfrinair.}}",
+'passwordreset-text-many' => "{{PLURAL:$1|Llanwch un o'r blychau er mwyn derbyn cyfrinair dros dro mewn ebost.}}",
'passwordreset-legend' => 'Ailosod y cyfrinair',
'passwordreset-disabled' => 'Analluogwyd ailosod cyfrineiriau ar y wici hwn.',
'passwordreset-emaildisabled' => 'Analluogwyd offer e-bost ar y wici hwn.',
'recentchanges-label-plusminus' => "Newidiodd maint y dudalen o'r nifer hwn o feitiau",
'recentchanges-legend-newpage' => '(gweler hefyd [[Special:NewPages|restr y tudalennau newydd]])',
'recentchanges-legend-plusminus' => "(''±123'')",
-'rcnote' => "Isod mae'r '''$1''' newid diweddaraf yn ystod y {{PLURAL:$2|diwrnod|diwrnod|deuddydd|tridiau|'''$2''' diwrnod|'''$2''' diwrnod}} diwethaf, hyd at $5, $4.",
'rcnotefrom' => "Isod rhestrir pob newid ers '''$2''' (hyd at '''$1''' ohonynt).",
'rclistfrom' => 'Dangos newidiadau newydd, gan ddechrau ers $1',
'rcshowhideminor' => '$1 golygiadau bychain',
'undeletebtn' => 'Adfer',
'undeletelink' => 'gweld/adfer',
'undeleteviewlink' => 'gweld',
-'undeletereset' => 'Ailosod',
'undeleteinvert' => "Gwrthdroi'r dewis",
'undeletecomment' => 'Rheswm:',
'undeletedrevisions' => 'wedi adfer $1 {{PLURAL:$1|diwygiad|diwygiad|ddiwygiad|diwygiad|diwygiad|diwygiad}}',
'block' => 'Rhwystro defnyddiwr',
'unblock' => 'Dad-rwystro defnyddiwr',
'blockip' => "Rhwystro'r defnyddiwr",
-'blockip-title' => "Rhwystro'r defnyddiwr",
'blockip-legend' => "Rhwystro'r defnyddiwr",
'blockiptext' => "Defnyddiwch y ffurflen hon i rwystro cyfeiriad IP neu ddefnyddiwr rhag ysgrifennu i'r gronfa ddata.
Dylech chi ddim ond gwneud hyn er mwyn rhwystro fandaliaeth, a chan ddilyn [[{{MediaWiki:Policy-url}}|polisi'r wici]].
'ipadressorusername' => 'Cyfeiriad IP neu enw defnyddiwr:',
'ipbexpiry' => 'Am gyfnod:',
'ipbreason' => 'Rheswm:',
-'ipbreasonotherlist' => 'Rheswm arall',
'ipbreason-dropdown' => "*Rhesymau cyffredin dros flocio
** Gosod gwybodaeth anghywir
** Dileu cynnwys tudalennau
'ipbsubmit' => "Rhwystro'r defnyddiwr hwn",
'ipbother' => 'Cyfnod arall:',
'ipboptions' => '2 awr:2 hours,ddiwrnod:1 day,3 diwrnod:3 days,wythnos:1 week,bythefnos:2 weeks,fis:1 month,3 mis:3 months,6 mis:6 months,flwyddyn:1 year,amhenodol:infinite',
-'ipbotheroption' => 'arall',
-'ipbotherreason' => 'Rheswm arall/ychwanegol:',
'ipbhidename' => "Cuddio'r enw defnyddiwr rhag ymddangos ar restri a golygiadau",
'ipbwatchuser' => 'Gwylio tudalen defnyddiwr a thudalen sgwrs y defnyddiwr hwn',
'ipb-disableusertalk' => "Atal y defnyddiwr hwn rhag golygu ei dudalen/ei thudalen sgwrs ei hunan wrth i'r bloc fod yn weithredol",
'sorbs_create_account_reason' => 'Mae eich cyfeiriad IP wedi cael ei osod ymhlith y dirprwyon agored ar y Rhestr DNS Gwaharddedig a ddefnyddir gan {{SITENAME}}.
Ni allwch greu cyfrif',
'xffblockreason' => "Mae un o'r cyfeiriadau IP yn y pennyn 'X-Forwarded-For' wedi cael ei atal; naill ai eich cyfeiriad chi neu un o'r gweinyddion dirprwyol a ddefnyddiwyd gennych. Y rheswm gwreiddiol dros atal oedd: $1",
-'cant-block-while-blocked' => 'Ni allwch flocio defnyddwyr eraill tra bod rhwystr arnoch chithau.',
'cant-see-hidden-user' => "Mae'r defnyddiwr yr ydych yn ceisio'i rwystro wedi ei rwystro a'i guddio'n barod.
Gan nad yw'r gallu i guddio defnyddwyr gennych, ni allwch weld y rhwystr sydd ar y defnyddiwr na'i olygu.",
'ipbblocked' => 'Ni allwch rwystro na dadrwystro defnyddwyr eraill, oherwydd eich bod chi eich hunan wedi eich rhwystro',
'watchlistall2' => 'holl',
'namespacesall' => 'pob un',
'monthsall' => 'pob mis',
-'limitall' => 'oll',
# Email address confirmation
'confirmemail' => "Cadarnhau'r cyfeiriad e-bost",
'confirmemail_success' => "Mae eich cyfeiriad e-bost wedi'i gadarnhau.
Cewch [[Special:UserLogin|fewngofnodi]] a mwynhau'r wici.",
'confirmemail_loggedin' => 'Cadarnhawyd eich cyfeiriad e-bost.',
-'confirmemail_error' => 'Cafwyd gwall wrth ddanfon eich cadarnhad.',
'confirmemail_subject' => 'Cadarnhâd cyfeiriad e-bost ar {{SITENAME}}',
'confirmemail_body' => 'Mae rhywun (chi, yn fwy na thebyg, o\'r cyfeiriad IP $1) wedi cofrestru\'r cyfrif "$2" ar {{SITENAME}} gyda\'r cyfeiriad e-bost hwn.
'imgmultigo' => 'Eler!',
'imgmultigoto' => "Mynd i'r dudalen $1",
+# Language selector for translatable SVGs
+'img-lang-info' => "Cynhyrchu'r ddelwedd yn yr iaith $1. $2",
+'img-lang-go' => 'Cynhyrcher',
+
# Table pager
'ascending_abbrev' => 'esgynnol',
'descending_abbrev' => 'am lawr',
# Special:ComparePages
'comparepages' => 'Cymharu tudalennau',
-'compare-selector' => "Cymharu diwygiadau gwahanol o'r dudalen",
'compare-page1' => 'Tudalen 1',
'compare-page2' => 'Tudalen 2',
'compare-rev1' => 'Diwygiad 1',
'tog-minordefault' => 'Markér som standard alle redigeringer som mindre redigeringer',
'tog-previewontop' => 'Vis forhåndsvisning over redigeringsboksen',
'tog-previewonfirst' => 'Vis forhåndsvisning når du starter med at redigere',
-'tog-nocache' => 'Slå browsercaching af sider fra',
'tog-enotifwatchlistpages' => 'Send mig en e-mail ved ændringer til en side eller fil på min overvågningsliste',
'tog-enotifusertalkpages' => 'Send mig en e-mail når min brugerdiskussionsside ændres',
'tog-enotifminoredits' => 'Send mig også en e-mail ved mindre ændringer af sider og filer på min overvågningsliste',
'recentchanges-label-plusminus' => 'Størrelsen på siden blev ændret med dette antal bytes',
'recentchanges-legend-newpage' => '(se også [[Special:NewPages|listen over nye sider]])',
'recentchanges-legend-plusminus' => '("±123")',
-'rcnote' => "Herunder ses {{PLURAL:$1|'''1''' ændring|de sidste '''$1''' ændringer}} fra {{PLURAL:$2|i dag|de sidste '''$2''' dage}} fra den $4, kl. $5.",
'rcnotefrom' => "Nedenfor er op til '''$1''' ændringer siden '''$2''' vist.",
'rclistfrom' => 'Vis nye ændringer startende fra $1',
'rcshowhideminor' => '$1 mindre ændringer',
'mostimages' => 'Mest brugte filer',
'mostinterwikis' => 'Sider med flest interwikilinks',
'mostrevisions' => 'Sider med de fleste ændringer',
-'prefixindex' => 'Alle sider med præfiks',
-'prefixindex-namespace' => 'Alle sider med præfiks (navnerummet $1)',
+'prefixindex' => 'Alle sider der begynder med',
+'prefixindex-namespace' => 'Alle sider (i navnerummet $1) der begynder med',
'prefixindex-strip' => 'Strip præfiks i listen',
'shortpages' => 'Korte sider',
'longpages' => 'Lange sider',
'allarticles' => 'Alle sider',
'allinnamespace' => 'Alle sider (i $1 navnerummet)',
'allpagessubmit' => 'Vis',
-'allpagesprefix' => 'Vis sider med præfiks:',
+'allpagesprefix' => 'Vis sider der begynder med:',
'allpagesbadtitle' => 'Det indtastede sidenavn er ugyldigt: Det har enten et foranstillet sprog-, en Interwiki-forkortelse eller indeholder et eller flere tegn, som ikke må anvendes i sidenavne.',
'allpages-bad-ns' => 'Navnerummet $1 findes ikke på {{SITENAME}}.',
'allpages-hide-redirects' => 'Skjul omdirigeringer',
'undeletebtn' => 'Gendan',
'undeletelink' => 'vis/gendan',
'undeleteviewlink' => 'vis',
-'undeletereset' => 'Afbryd',
'undeleteinvert' => 'Omvend valget af versioner',
'undeletecomment' => 'Begrundelse:',
'undeletedrevisions' => '$1 {{PLURAL:$1|version|versioner}} gendannet',
'block' => 'Bloker bruger',
'unblock' => 'Ophæv blokering af bruger',
'blockip' => 'Bloker bruger',
-'blockip-title' => 'Bloker bruger',
'blockip-legend' => 'Bloker bruger',
'blockiptext' => 'Brug formularen herunder til at blokere for skriveadgang fra en bestemt IP-adresse eller et brugernavn.
Dette bør kun gøres for at forhindre vandalisme og skal være i overensstemmelse med [[{{MediaWiki:Policy-url}}|retningslinjerne]].
'ipadressorusername' => 'IP-adresse eller brugernavn',
'ipbexpiry' => 'varighed',
'ipbreason' => 'Begrundelse:',
-'ipbreasonotherlist' => 'Anden begrundelse',
'ipbreason-dropdown' => '*Generelle begrundelser
** Indsættelse af forkerte oplysninger
** Fjernelse af korrekt indhold
'ipbsubmit' => 'Bloker denne bruger',
'ipbother' => 'Anden varighed (engelsk)',
'ipboptions' => '2 timer:2 hours,1 dag:1 day,3 dage:3 days,1 uge:1 week,2 uger:2 weeks,1 måned:1 month,3 måneder:3 months,6 måneder:6 months,1 år:1 year,ubegrænset:infinite',
-'ipbotheroption' => 'Anden varighed',
-'ipbotherreason' => 'Anden/uddybende begrundelse',
'ipbhidename' => 'Skjul brugernavnet i redigeringer og lister',
'ipbwatchuser' => 'Overvåg denne brugers brugerside og diskussionsside.',
'ipb-disableusertalk' => 'Forhindr denne bruger i at redigere sin egen brugerdiskussion under blokeringen',
'sorbsreason' => 'IP-adressen er opført i DNSBL på {{SITENAME}} som åben PROXY.',
'sorbs_create_account_reason' => 'IP-adressen er opført i DNSBL på {{SITENAME}} som åben PROXY. Oprettelse af nye brugere er ikke mulig.',
'xffblockreason' => 'En IP-adresse der er indeholdt i X-Fremsendt-Til hovedet, enten din egen eller en på en proxy-server, du bruger, er blevet blokeret. Den oprindelige grund til blokeringen var:$1',
-'cant-block-while-blocked' => 'Du kan ikke blokkere andre brugere mens du selv er blokkeret.',
'cant-see-hidden-user' => 'Brugeren du prøver at blokerer er allerede blokeret og skjult. Siden du ikke har rettigheden til at skjule brugere, kan du ikke se eller ændre brugerens blokering.',
'ipbblocked' => 'Du kan ikke ændre blokeringer, da du selv er blokeret',
'ipbnounblockself' => 'Du kan ikke ophæve blokeringen af dig selv',
'watchlistall2' => 'alle',
'namespacesall' => 'alle',
'monthsall' => 'alle',
-'limitall' => 'alle',
# Email address confirmation
'confirmemail' => 'Bekræft e-mailadresse',
'confirmemail_success' => 'E-mailadressen er blevet bekræftet.
Du kan nu [[Special:UserLogin|logge på]].',
'confirmemail_loggedin' => 'Din e-mailadresse er nu bekræftet.',
-'confirmemail_error' => 'Der skete en fejl under lagring af din bekræftelse.',
'confirmemail_subject' => '[{{SITENAME}}] - bekræftelse af e-mailadresse',
'confirmemail_body' => 'Hej,
'imgmultigo' => 'OK',
'imgmultigoto' => 'Gå til side $1',
+# Language selector for translatable SVGs
+'img-lang-default' => '(standardsprog)',
+
# Table pager
'ascending_abbrev' => 'op',
'descending_abbrev' => 'ned',
'table_pager_empty' => 'Ingen resultater',
# Auto-summaries
-'autosumm-blank' => 'Tømmer siden',
+'autosumm-blank' => 'Tømmer siden for indhold',
'autosumm-replace' => "Sidens indhold blev erstattet med: '$1'",
'autoredircomment' => 'Omdirigering til [[$1]] oprettet',
'autosumm-new' => "Oprettede siden med '$1'",
# Special:ComparePages
'comparepages' => 'Sammenlign sider',
-'compare-selector' => 'Sammenlign sideversioner',
'compare-page1' => 'Side 1',
'compare-page2' => 'Side 2',
'compare-rev1' => 'Version 1',
'tog-minordefault' => 'Eigene Änderungen standardmäßig als geringfügig markieren',
'tog-previewontop' => 'Vorschau oberhalb des Bearbeitungsfensters anzeigen',
'tog-previewonfirst' => 'Beim ersten Bearbeiten immer die Vorschau anzeigen',
-'tog-nocache' => 'Seitencache des Browsers deaktivieren',
'tog-enotifwatchlistpages' => 'Bei Änderungen an beobachteten Seiten oder Dateien E-Mails senden',
'tog-enotifusertalkpages' => 'Bei Änderungen an meiner Benutzer-Diskussionsseite E-Mails senden',
'tog-enotifminoredits' => 'Auch bei kleinen Änderungen an Seiten und Dateien E-Mails senden',
'prefs-tokenwatchlist' => 'Token',
'prefs-diffs' => 'Versionsvergleich',
'prefs-help-prefershttps' => 'Diese Einstellung wird bei deiner nächsten Anmeldung wirksam',
+'prefs-tabs-navigation-hint' => 'Tipp: Du kannst die linke und rechte Pfeiltasten benutzen, um zwischen den Registerkarten in der Reiterliste zu navigieren.',
# User preference: email validation using jQuery
'email-address-validity-valid' => 'Diese E-Mail-Adresse scheint gültig zu sein.',
'recentchanges-label-plusminus' => 'Die geänderte Seitengröße (Anzahl in Bytes)',
'recentchanges-legend-newpage' => '(siehe auch die [[Special:NewPages|Liste neuer Seiten]])',
'recentchanges-legend-plusminus' => "''(±123)''",
-'rcnote' => "{{PLURAL:$1|'''1''' Änderung|'''$1''' Änderungen}} in den {{PLURAL:$2|letzten 24 Stunden|letzten '''$2''' Tagen}}.
-Stand: $4, $5 Uhr.",
'rcnotefrom' => "Angezeigt werden die Änderungen seit '''$2''' (max. '''$1''' Einträge).",
'rclistfrom' => 'Nur Änderungen seit $1 zeigen.',
'rcshowhideminor' => 'Kleine Änderungen $1',
'undeletebtn' => 'Wiederherstellen',
'undeletelink' => 'ansehen/wiederherstellen',
'undeleteviewlink' => 'ansehen',
-'undeletereset' => 'Zurücksetzen',
'undeleteinvert' => 'Auswahl umkehren',
'undeletecomment' => 'Grund:',
'undeletedrevisions' => '{{PLURAL:$1|1 Version wurde|$1 Versionen wurden}} wiederhergestellt',
'block' => 'Benutzer sperren',
'unblock' => 'Benutzer freigeben',
'blockip' => 'IP-Adresse/Benutzer sperren',
-'blockip-title' => 'Benutzer sperren',
'blockip-legend' => 'IP-Adresse/Benutzer sperren',
'blockiptext' => 'Mit diesem Formular sperrst du eine IP-Adresse oder einen Benutzernamen, so dass von dort keine Änderungen mehr vorgenommen werden können.
Dies sollte nur erfolgen, um Vandalismus zu verhindern und in Übereinstimmung mit den [[{{MediaWiki:Policy-url}}|Richtlinien]].
'ipadressorusername' => 'IP-Adresse oder Benutzername:',
'ipbexpiry' => 'Sperrdauer:',
'ipbreason' => 'Grund:',
-'ipbreasonotherlist' => 'Anderer Grund',
'ipbreason-dropdown' => '* Allgemeine Sperrgründe
** Einfügen falscher Informationen
** Leeren von Seiten
'ipbsubmit' => 'IP-Adresse/Benutzer sperren',
'ipbother' => 'Andere Dauer (englisch):',
'ipboptions' => '2 Stunden:2 hours,1 Tag:1 day,3 Tage:3 days,1 Woche:1 week,2 Wochen:2 weeks,1 Monat:1 month,3 Monate:3 months,6 Monate:6 months,1 Jahr:1 year,unbeschränkt:infinite',
-'ipbotheroption' => 'Andere Dauer',
-'ipbotherreason' => 'Anderer/ergänzender Grund:',
'ipbhidename' => 'Benutzername in Bearbeitungen und Listen verstecken',
'ipbwatchuser' => 'Benutzer(diskussions)seite beobachten',
'ipb-disableusertalk' => 'Diesen Benutzer daran hindern seine eigene Diskussionsseite zu bearbeiten, solange er gesperrt ist',
'sorbsreason' => 'Die IP-Adresse ist in der DNSBL von {{SITENAME}} als offener PROXY gelistet.',
'sorbs_create_account_reason' => 'Die IP-Adresse ist in der DNSBL von {{SITENAME}} als offener PROXY gelistet. Das Anlegen neuer Benutzer ist nicht möglich.',
'xffblockreason' => 'Eine IP-Adresse im X-Forwarded-For-Header wurde gesperrt, entweder deine oder die des benutzten Proxyservers. Der ursprüngliche Sperrgrund war: $1',
-'cant-block-while-blocked' => 'Du kannst keine anderen Benutzer sperren, während du selbst gesperrt bist.',
'cant-see-hidden-user' => 'Der Benutzer, den du versuchst zu sperren, wurde bereits gesperrt und verborgen. Da du das „hideuser“-Recht nicht hast, kannst du die Benutzersperre nicht sehen und nicht bearbeiten.',
'ipbblocked' => 'Du kannst keine anderen Benutzer sperren oder entsperren, da du selbst gesperrt bist',
'ipbnounblockself' => 'Du hast nicht die Berechtigung, dich selbst zu entsperren',
'print.css' => '/* Das folgende CSS wird in der Druckausgabe geladen. */',
'noscript.css' => '/* Das folgende CSS wirkt sich für Benutzer aus, die JavaScript deaktiviert haben */',
'group-autoconfirmed.css' => '/* CSS an dieser Stelle wirkt sich nur auf automatisch bestätigte Benutzer aus */',
+'group-user.css' => '/* CSS an dieser Stelle wirkt sich nur auf angemeldete Benutzer aus */',
'group-bot.css' => '/* CSS an dieser Stelle wirkt sich nur auf Bots aus */',
'group-sysop.css' => '/* CSS an dieser Stelle wirkt sich nur auf Administratoren aus */',
'group-bureaucrat.css' => '/* Das folgende CSS wird nur für Bürokraten geladen. */',
'modern.js' => '/* Das folgende JavaScript wird für Benutzer der Modern-Benutzeroberfläche geladen. Allgemeingültiges JavaScript bitte in [[MediaWiki:Common.js]] eintragen. */',
'vector.js' => '/* Das folgende JavaScript wird für Benutzer der Vector-Benutzeroberfläche geladen. Allgemeingültiges JavaScript bitte in [[MediaWiki:Common.js]] eintragen. */',
'group-autoconfirmed.js' => '/* Das folgende JavaScript wird nur für automatisch bestätigte Benutzer geladen. */',
+'group-user.js' => '/* Das folgende JavaScript wird nur für angemeldete Benutzer geladen. */',
'group-bot.js' => '/* Das folgende JavaScript wird nur für Bots geladen. */',
'group-sysop.js' => '/* Das folgende JavaScript wird nur für Administratoren geladen. */',
'group-bureaucrat.js' => '/* Das folgende JavaScript wird nur für Bürokraten geladen. */',
'watchlistall2' => 'alle',
'namespacesall' => 'alle',
'monthsall' => 'alle',
-'limitall' => 'alle',
# Email address confirmation
'confirmemail' => 'E-Mail-Adresse bestätigen (Authentifizierung)',
'confirmemail_needlogin' => 'Du musst dich $1, um deine E-Mail-Adresse zu bestätigen.',
'confirmemail_success' => 'Deine E-Mail-Adresse wurde erfolgreich bestätigt. Du kannst dich jetzt [[Special:UserLogin|anmelden]].',
'confirmemail_loggedin' => 'Deine E-Mail-Adresse wurde erfolgreich bestätigt.',
-'confirmemail_error' => 'Es gab einen Fehler bei der Bestätigung deiner E-Mail-Adresse.',
'confirmemail_subject' => '[{{SITENAME}}] Bestätigung der E-Mail-Adresse',
'confirmemail_body' => 'Hallo,
'imgmultigo' => 'OK',
'imgmultigoto' => 'Gehe zu Seite $1',
+# Language selector for translatable SVGs
+'img-lang-default' => '(Standardsprache)',
+'img-lang-info' => 'Dieses Bild in $1 rendern $2.',
+'img-lang-go' => 'Los',
+
# Table pager
'ascending_abbrev' => 'auf',
'descending_abbrev' => 'ab',
# Special:ComparePages
'comparepages' => 'Seiten vergleichen',
-'compare-selector' => 'Seitenversionen vergleichen',
'compare-page1' => 'Seite 1',
'compare-page2' => 'Seite 2',
'compare-rev1' => 'Version 1',
'tog-minordefault' => "Vurnayışanê xo pêrune ''vurnayışo qıckek'' nışan bıde",
'tog-previewontop' => 'Verqayti pela nuştışi ser de bımocne',
'tog-previewonfirst' => 'Vurnayışo verên de verqayti tım bımocne',
-'tog-nocache' => 'Pelanê cıgeyrayoği meya xo viri',
'tog-enotifwatchlistpages' => 'Yew pele ya zi dosyaya ke lista mına seyrkerdışi de vurnayê mı rê e-poste bırışe',
'tog-enotifusertalkpages' => 'Pela mına werênayışi ke vurnayê mı rê e-poste bırışe',
'tog-enotifminoredits' => 'Vurnayışanê qıckekanê pelan u dosyeyan de zi mı rê e-poste bırışe',
'cannotdelete-title' => 'şıma "$1" nê şenê besternê.',
'delete-hook-aborted' => 'Esterıtışi terefê çengeli ra ibtal bi.
Qet tesrih beyan nêbi.',
+'no-null-revision' => 'Qandé "$1" zew rewizyono newe névıraziya.',
'badtitle' => 'Sernameo xırabın',
'badtitletext' => 'Sernamey pela ke şıma waşt, nêvêrd, thalo/vengo ya ki zıwano miyanêno ğelet gırêdae ya ki sernamey wiki.
Beno ke, tede yew ya zi zêdê işareti estê ke sernaman de nêxebetiyenê.',
'powersearch-togglenone' => 'Çıniyo',
'search-external' => 'Cıgeyrayışê teberi',
'searchdisabled' => '{{SITENAME}} no keyepel de cıgerayiş muweqqet bıryayo. no benatê de şıma pê Google eşkeni zerreyê {{SITENAME}} de cıgerayiş bıkeri.',
+'search-error' => 'Cı geyrayış de zu ğeta emé meydan:$1',
# Preferences page
'preferences' => 'Tercihi',
'recentchanges-label-plusminus' => 'Ebata na perer ebatta na nımra de vırneya',
'recentchanges-legend-newpage' => '(Zewbi bıvin [[Special:NewPages|Listeya peran de newan]])',
'recentchanges-legend-plusminus' => "''(±123)''",
-'rcnote' => "Bıni dı {{PLURAL:$2|roc|'''$2''' rocan}} ra {{PLURAL:$1|'''1''' vurnayış|'''$1''' vurnayışi}} éyé cér de yé , $5 ra hetana $4.",
'rcnotefrom' => "Cêr de '''$2''' ra nata vurnayışiyê asenê (tewr vêşi <b> '''$1'''</b> asenê).",
'rclistfrom' => '$1 ra tepya vırnayışané newan bıasne',
'rcshowhideminor' => 'Vırnayışané werkekean $1',
'undeletebtn' => 'Timar bike',
'undeletelink' => 'bıvêne/peyser bia',
'undeleteviewlink' => 'bıvin',
-'undeletereset' => 'Reset kerê',
'undeleteinvert' => 'vicnayeyi qeldaye açarn',
'undeletecomment' => 'Sebeb:',
'undeletedrevisions' => 'pêro piya{{PLURAL:$1|1 qeyd|$1 qeyd}} tepiya anciya.',
'namespace' => 'Heruna naman:',
'invert' => 'Weçinayan ğariç bıasné',
'tooltip-invert' => 'nameyo ke nışan biyo (u nameyo elekeyın zi nışanyyayo se) vurnayışan zerrekan nımtışi re ena dore tesdiqi nışan kerê',
-'namespace_association' => 'Cayê nameyanê elaqedaran',
+'namespace_association' => 'Elaqedar nameyé cayan',
'tooltip-namespace_association' => 'Herunda canemiya elekeyın nışan kerdışi sero qıse kerdışi yana zerre dekerdışi rê ena dora tesdiqi nışan kerê',
'blanknamespace' => '(Ser)',
'block' => 'Karberi vındarne',
'unblock' => 'Hesabê karberi akerê',
'blockip' => 'Karberi kılit ke',
-'blockip-title' => 'Karberi kılit ke',
'blockip-legend' => 'Karber blok bike',
'blockiptext' => 'pê şuxulnayişê formê cêrıni, şıma eşkeni verniyê vurnayişkerdışê yew karberi ya zi yew IPyi bıgêrî. No têna qey verni-gırewtışê vandalizmiyo u gani şıma [[{{MediaWiki:Policy-url}}|qaydeyan]] re diqqet bıkeri. cêr de muheqqeq sebebê verni-grewtışi bınusi. (mesela: -nê- pelani de vandalizm kerdo).',
'ipadressorusername' => 'Adresa IPy ya zi nameyê karberi:',
'ipbexpiry' => 'Qedyayış:',
'ipbreason' => 'Sebeb:',
-'ipbreasonotherlist' => 'Sebebê bini',
'ipbreason-dropdown' => '*sebebê verni-grewtışi yê pêroyi
** malumatê şaş têare kerdış
** Zerreyê pelan vetış
'ipbsubmit' => 'Ena karber blok bike',
'ipbother' => 'Waxtê bini:',
'ipboptions' => '2 seat:2 hours,1 roc:1 day,3 roci:3 days,1 hefte:1 week,2 heftey:2 weeks,1 aşm:1 month,3 aşm:3 months,6 aşmi:6 months,1 ser:1 year,ebedi:infinite',
-'ipbotheroption' => 'bini',
-'ipbotherreason' => 'Sebebê bini:',
'ipbhidename' => 'Nameyê karberî listeyan u vurnayîşan ra binumne',
'ipbwatchuser' => 'Pela miniqaşe u pela ena karberî seyr bike',
'ipb-disableusertalk' => 'No karber wexto ke bloqedeyo wa pela da xodı vurnayış kerdışi rê izin medı',
'sorbs_create_account_reason' => 'IP adresa şıma, hetê no translatewiki.net keyepeli ra DNSBL de proxy hesibyayo u liste biyo.
şıma neeşkeni hesab bıvırazi',
-'cant-block-while-blocked' => 'Ê ye ke verniyê şıma gırewtî şıma nêeşkeni verniyê ninan bıgeri',
'cant-see-hidden-user' => 'karber o ke şıma gêreni verniyê ey bıgeri ca ra verniyê ey gırewteyo u pinani kerdeyo.',
'ipbblocked' => 'Ti nieşkena karberanê binan bloke bike ya zi a bike cunki ti bloke biya',
'ipbnounblockself' => 'Ti nieşkena xo a bike',
'watchlistall2' => 'pêro',
'namespacesall' => 'pêro',
'monthsall' => 'pêro',
-'limitall' => 'pêro',
# Email address confirmation
'confirmemail' => 'Adresê e-posta tesdiq ker',
'confirmemail_success' => 'Email adresê tu konfirme biy.
Ti eşkeno [[Special:UserLogin|ci kewt]].',
'confirmemail_loggedin' => 'E-posta adresiya şıma hendana tesdiq biya.',
-'confirmemail_error' => 'Konfirmasyon ni biy, yew ğelet esto.',
'confirmemail_subject' => '{{SITENAME}} konfirmasyonê adres ê emalî',
'confirmemail_body' => 'Brayo delal, mara ke şıma no IP-adresi ra,
keyepelê {{SITENAME}}i de pêno $2 e-postayi hesab kerda.
'imgmultigo' => 'Şo!',
'imgmultigoto' => 'Şo pela da $1',
+# Language selector for translatable SVGs
+'img-lang-default' => '(hesıbyayi zıwan)',
+'img-lang-info' => 'Resimé $1, $2 ya teké pé ke.',
+'img-lang-go' => 'Bırş',
+
# Table pager
'ascending_abbrev' => 'berz',
'descending_abbrev' => 'nızm',
# Special:ComparePages
'comparepages' => 'Pela miqeyese ke',
-'compare-selector' => 'Revizyonê pele miqayese bike',
'compare-page1' => 'Pele 1',
'compare-page2' => 'Pele 2',
'compare-rev1' => 'Revizyonê 1i',
'tog-minordefault' => 'Wšykne móje změny ako małe markěrowaś',
'tog-previewontop' => 'Zespominanje wušej wobźěłowańskego póla pokazaś',
'tog-previewonfirst' => 'Pśi prědnem wobźěłanju pśecej zespominanje pokazaś',
-'tog-nocache' => 'Cache bokow wobglědowaka znjemóžniś',
'tog-enotifwatchlistpages' => 'E-mail pósłaś, jolic se wobglědowany bok abo wobglědowana dataja změnja',
'tog-enotifusertalkpages' => 'E-mail pósłaś, změnijo-lic se mój diskusijny bok',
'tog-enotifminoredits' => 'E-mail teke małych změnow bokow a datajow dla pósłaś',
'recentchanges-label-plusminus' => 'Změnjona wjelikosc boka (licba bajtow)',
'recentchanges-legend-newpage' => '(glej teke [[Special:NewPages|lisćinu nowych bokow]])',
'recentchanges-legend-plusminus' => "(''±123'')",
-'rcnote' => "Dołojce {{PLURAL:$1|jo '''1''' změna|stej slědnej '''$1''' změnje|su slědne '''$1''' změny}} w {{PLURAL:$2|slědnem dnju|slědnyma '''$2''' dnjoma|slědnych '''$2''' dnjach}}, staw wót $4, $5.",
'rcnotefrom' => "Dołojce pokazuju se změny wót '''$2''' (maks. '''$1''' zapisow).",
'rclistfrom' => 'Nowe změny wót $1 pokazaś.',
'rcshowhideminor' => 'Snadne změny $1',
'undeletebtn' => 'Wótnowiś',
'undeletelink' => 'woglědaś se/wótnowiś',
'undeleteviewlink' => 'woglědaś se',
-'undeletereset' => 'Slědk wześ',
'undeleteinvert' => 'Wuběrk pśewobrośiś',
'undeletecomment' => 'Pśicyna:',
'undeletedrevisions' => '{{PLURAL:$1|1 wersija jo se nawrośiła|$1 wersiji stej se nawrośiłej|$1 wersije su se nawrośili}}.',
'block' => 'Wužywarja blokěrowaś',
'unblock' => 'Blokěrowanje wužywarja wótpóraś',
'blockip' => 'Wužywarja blokěrowaś',
-'blockip-title' => 'Wužywarja blokěrowaś',
'blockip-legend' => 'Wužywarja blokěrowaś',
'blockiptext' => 'Wužywaj slědujucy formular, jolic až coš wěstej IP-adresy abo konkretnemu wužywarjeju pśistup znjemóžniś. Take dejało se pó [[{{MediaWiki:Policy-url}}|směrnicach]] jano staś, aby se wandalizmoju zadorało. Pšosym zapódaj pśicynu za twójo blokěrowanje (na pś. mógu se citěrowaś konkretne boki, źo jo se wandalěrowało).',
'ipadressorusername' => 'IP-adresa abo wužywarske mě',
'ipbexpiry' => 'Cas blokěrowanja:',
'ipbreason' => 'Pśicyna:',
-'ipbreasonotherlist' => 'Druga pśicyna',
'ipbreason-dropdown' => '*powšykne pśicyny blokěrowanja
** pódawanje njepšawych informacijow
** wulašowanje wopśimjeśa bokow
'ipbsubmit' => 'Togo wužywarja blokěrowaś.',
'ipbother' => 'Drugi cas:',
'ipboptions' => '2 góźinje:2 hours,1 źeń:1 day,3 dny:3 days,1 tyźeń:1 week,2 tyźenja:2 weeks,1 mjasec:1 month,3 mjasece:3 months,6 mjasecy:6 months,1 lěto:1 year,na nimjer:infinite',
-'ipbotheroption' => 'drugi',
-'ipbotherreason' => 'Hynakša/dalšna pśicyna:',
'ipbhidename' => 'Wužywarske mě w změnach a lisćinach schowaś',
'ipbwatchuser' => 'Wužywarski a diskusijny bok toś togo wužywarja wobglědowaś',
'ipb-disableusertalk' => 'Toś tomu wužywarjeju zawobaraś swój bok wobźěłaś, gaž wón jo zablokěrowany.',
'sorbsreason' => 'Twója IP-adresa jo w DNSBL we {{GRAMMAR:lokatiw|{{SITENAME}}}} zapisana ako wócynjony proxy.',
'sorbs_create_account_reason' => 'Twója IP-adresa jo w DNSBL {{GRAMMAR:genitiw|{{SITENAME}}}} ako wócynjony proxy zapisana. Njejo móžno, nowe wužywarske konta załožowaś.',
'xffblockreason' => 'IP-adresa w header X-Forwarded-For, pak twója pak ta proksy-serwera, kótaryž wužywaš, jo se zablokěrowała. Spócetna pśicyna za blokěrowanje jo była: $1',
-'cant-block-while-blocked' => 'Njesmějoš žednych drugich wužywarjow blokěrowaś, mjaztym až ty sy blokěrowany.',
'cant-see-hidden-user' => 'Wužywaŕ, kótaregož wopytujoš blokěrowaś, jo južo zablokěrowany a schowany. Dokulaž njamaš pšawo wužywarja schowaś, njamóžoš blokěrowanje wužywarja wiźeś abo wobźěłaś.',
'ipbblocked' => 'Njamóžoš drugich wužywarjow blokěrowaś abo wótblokěrowaś, dokulaž ty sam jo zablokěrowany',
'ipbnounblockself' => 'Njesmějoš se samogo wótblokěrowaś',
'watchlistall2' => 'wšykne',
'namespacesall' => 'wšykne',
'monthsall' => 'wšykne',
-'limitall' => 'wšykne',
# Email address confirmation
'confirmemail' => 'E-mailowu adresu wobkšuśiś.',
'confirmemail_success' => 'Twója e-mailowa adresa jo wobkšuśona
Móžoš se něnto [[Special:UserLogin|pśizjawiś]] a se wikiju wijaseliś.',
'confirmemail_loggedin' => 'Twója e-mailowa adresa jo něnto wobkšuśona.',
-'confirmemail_error' => 'Zmólka pśi wobkšuśenju e-mailoweje adresy.',
'confirmemail_subject' => '{{SITENAME}} - Wobkšuśenje e-mailoweje adrese',
'confirmemail_body' => 'Něchten, nejskerjej ty z adresy $1, jo na boku {{SITENAME}} wužywarske konto "$2" z toś teju e-mailoweju adresu zregistrěrował.
# Special:ComparePages
'comparepages' => 'Boki pśirownaś',
-'compare-selector' => 'Wersije boka pśirownaś',
'compare-page1' => 'Bok 1',
'compare-page2' => 'Bok 2',
'compare-rev1' => 'Wersija 1',
'tog-minordefault' => 'Tandaai oinsanan niditan tokoro sobaagi do pongoiso',
'tog-previewontop' => 'Pokitono duluon-kokikitanai id pogulu kutak idit',
'tog-previewonfirst' => 'Pokitono duluon-kokikitanai di idit koinsan',
-'tog-nocache' => 'Antabai kasing popogigihum bolikon',
'tog-enotifwatchlistpages' => 'Ponuratai-i oku soira do haro bolikon toi pail lisintanganku haro nokowolion',
'tog-enotifusertalkpages' => 'Ponuratai-i oku soira kiharo kowolion id pibabarasan momomogunoku',
'tog-enotifminoredits' => 'Ponuratai-i oku nogi do nung haro no idit tongokoro do bolikon om nogi tangapail',
'recentchanges-label-minor' => 'Iti nopo nga niditan tokoto',
'recentchanges-label-bot' => 'Niditan diti winonsoi do robot',
'recentchanges-label-unpatrolled' => 'Niditan diti awu poh nosimak',
-'rcnote' => "Iti {{PLURAL:$1|noh '''1''' nalanan|nopo '''$1''' dohuri nopingalanan}} solinaid {{PLURAL:$2|tadau|'''$2''' tadau}}, ontok di $4, jaam $5.",
'rcnotefrom' => "Id siriba diti pokitonon ii nopingalanan mantad '''$2''' (gisom '''$1''' ).",
'rclistfrom' => 'Pokitono naalanan kawawagu tumimpuun mantad $1',
'rcshowhideminor' => '$1 niditan tokoto',
'tog-minordefault' => 'Σήμανση εκ προεπιλογής όλων των αλλαγών ως μικρής κλίμακας',
'tog-previewontop' => 'Εμφάνιση προεπισκόπησης πριν από το πλαίσιο επεξεργασίας',
'tog-previewonfirst' => 'Εμφάνιση προεπισκόπησης κατά την πρώτη επεξεργασία',
-'tog-nocache' => 'Απενεργοποίηση προσωρινής μνήμης του περιηγητή',
'tog-enotifwatchlistpages' => 'Να μου αποστέλλεται μήνυμα ηλεκτρονικού ταχυδρομείου όταν αλλάζει μια σελίδα ή ένα αρχείο που βρίσκεται στη λίστα παρακολούθησής μου',
'tog-enotifusertalkpages' => 'Να μου αποστέλλεται μήνυμα ηλεκτρονικού ταχυδρομείου όταν αλλάζει η προσωπική μου σελίδα συζήτησης χρήστη',
'tog-enotifminoredits' => 'Να μου αποστέλλεται μήνυμα ηλεκτρονικού ταχυδρομείου και για αλλαγές μικρής κλίμακας σε σελίδες και αρχεία',
'recentchanges-label-bot' => 'Αυτή η επεξεργασία έγινε από ένα ρομπότ',
'recentchanges-label-unpatrolled' => 'Αυτή η επεξεργασία δεν έχει ελεγχθεί ακόμα',
'recentchanges-legend-newpage' => '$1 - νέα σελίδα',
-'rcnote' => "Παρακάτω {{PLURAL:$1|υπάρχει '''1''' αλλαγή|υπάρχουν οι τελευταίες '''$1''' αλλαγές}} στο διάστημα {{PLURAL:$2|της τελευταίας ημέρας|των τελευταίων '''$2''' ημερών}}, από τις $5, $4 και εξής.",
'rcnotefrom' => "Παρακάτω είναι οι αλλαγές από τις '''$2''' (εμφανίζονται μέχρι '''$1''').",
'rclistfrom' => 'Εμφάνιση νέων αλλαγών αρχίζοντας από $1',
'rcshowhideminor' => '$1 μικροεπεξεργασιών',
'undeletebtn' => 'Επαναφορά',
'undeletelink' => 'προβολή/επαναφορά',
'undeleteviewlink' => 'προβολή',
-'undeletereset' => 'Ανανέωση',
'undeleteinvert' => 'Ανατροπή επιλογής',
'undeletecomment' => 'Αιτία:',
'undeletedrevisions' => '{{PLURAL:$1|τροποποίηση|τροποποιήσεις}} αποκαταστάθηκαν',
'block' => 'Φραγή χρήστη',
'unblock' => 'Κατάργηση αποκλεισμού χρήστη',
'blockip' => 'Φραγή χρήστη ή διεύθυνσης IP',
-'blockip-title' => 'Φραγή του χρήστη',
'blockip-legend' => 'Φραγή του χρήστη',
'blockiptext' => 'Χρησιμοποιήστε την παρακάτω φόρμα για να εμποδίσετε παρεμβάσεις στο κείμενο από μια συγκεκριμένη διεύθυνση IP ή όνομα χρήστη.
Το μέτρο αυτό πρέπει να λαμβάνεται μόνο σε περιπτώσεις βανδαλισμού σελίδων και πάντα σύμφωνα με την [[{{MediaWiki:Policy-url}}|πολιτική]].
'ipadressorusername' => 'Διεύθυνση IP ή όνομα χρήστη',
'ipbexpiry' => 'Λήξη',
'ipbreason' => 'Αιτία:',
-'ipbreasonotherlist' => 'Άλλος λόγος',
'ipbreason-dropdown' => '*Συχνοί λόγοι φραγής
** Εισαγωγή λανθασμένων πληροφοριών
** Αφαίρεση περιεχομένου από σελίδες
'ipbsubmit' => 'Φραγή αυτού του χρήστη',
'ipbother' => 'Άλλη ώρα',
'ipboptions' => '2 ώρες:2 hours,1 ημέρα:1 day,3 ημέρες:3 days,1 εβδομάδα:1 week,2 εβδομάδες:2 weeks,1 μήνα:1 month,3 μήνες:3 months,6 μήνες:6 months,1 χρόνο:1 year,αόριστα:infinite',
-'ipbotheroption' => 'άλλη',
-'ipbotherreason' => 'Άλλος/επιπλέον λόγος:',
'ipbhidename' => 'Απόκρυψη ονόματος χρήστη από επεξεργασίες και καταλόγους',
'ipbwatchuser' => "Παρακολούθηση των σελίδων 'χρήστη' και 'συζήτησης χρήστη' αυτού του χρήστη",
'ipb-disableusertalk' => 'Αποτρέψτε αυτό το χρήστη από την επεξεργασία της δική του σελίδας συζήτησης, ενώ είναι αποκλεισμένος',
'proxyblockreason' => 'Η διεύθυνση IP σας έχει υποστεί φραγή γιατί είναι open proxy. Παρακαλούμε επικοινωνείστε με τον παροχέα υπηρεσιών Διαδικτύου που χρησιμοποιείτε ή με την τεχνική υποστήριξη, για να θέσετε υπ΄ όψη τους αυτό το σοβαρό θέμα ασφάλειας.',
'sorbsreason' => 'Η διεύθυνση IP σας έχει χαρακτηρισθεί ως open proxy στο DNSBL.',
'sorbs_create_account_reason' => 'Η διεύθυνση IP σας έχει χαρακτηρισθεί open proxy στο DNSBL. Δεν μπορείτε να δημιουργήσετε λογαριασμό χρήστη.',
-'cant-block-while-blocked' => 'Δεν μπορείτε να φράξετε άλλους χρήστες ενώ είστε φραγμένος/η.',
'cant-see-hidden-user' => 'Ο χρήστης που προσπαθείτε να αποκλείσετε έχει ήδη αποκλειστεί και αποκρυφτεί.
Δεδομένου ότι δεν έχετε το δικαίωμα hideuser, δεν μπορείτε να δείτε ή να επεξεργαστείτε την φραγή του χρήστη.',
'ipbblocked' => 'Δεν μπορείτε να βάλετε ή να αναιρέσετε φραγή σε άλλους χρήστες, επειδή είστε εσείς υπό φραγή',
'watchlistall2' => 'όλες',
'namespacesall' => 'όλοι',
'monthsall' => 'όλα',
-'limitall' => 'όλες',
# Email address confirmation
'confirmemail' => 'Επιβεβαίωση διεύθυνσης e-mail',
'confirmemail_needlogin' => 'Χρειάζετε να $1 για να επιβεβαιώσετε τη διεύθυνση e-mail σας.',
'confirmemail_success' => 'Η ηλεκτρονική σας διεύθυνση σας επαληθεύτηκε. Μπορείτε πλέον να συνδεθείτε και να απολαύσετε τις δυνατότητες του Wiκi.',
'confirmemail_loggedin' => 'Η ηλεκτρονική σας διεύθυνση επαληθεύτηκε.',
-'confirmemail_error' => 'Παρουσιάστηκε λάθος κατά την αποθήκευση των ρυθμίσεών σας.',
'confirmemail_subject' => 'Επαλήθευση ηλεκτρονικής διεύθυνσης του {{SITENAME}}',
'confirmemail_body' => 'Κάποιος, πιθανότατα εσείς, από τη διεύθυνση IP $1,
δημιούργησε λογαριασμό χρήστη «$2»
# Special:ComparePages
'comparepages' => 'Σύγκριση σελίδων',
-'compare-selector' => 'Συγκρίνετε τις αναθεωρήσεις των σελίδων',
'compare-page1' => 'Σελίδα 1',
'compare-page2' => 'Σελίδα 2',
'compare-rev1' => 'Αναθεώρηση 1',
'tog-minordefault' => 'Mark all edits minor by default',
'tog-previewontop' => 'Show preview before edit box',
'tog-previewonfirst' => 'Show preview on first edit',
-'tog-nocache' => 'Disable browser page caching',
'tog-enotifwatchlistpages' => 'Email me when a page or file on my watchlist is changed',
'tog-enotifusertalkpages' => 'Email me when my user talk page is changed',
'tog-enotifminoredits' => 'Email me also for minor edits of pages and files',
Your current IP address is $3, and the block ID is #$5.
Please include all above details in any queries you make.",
'blockednoreason' => 'no reason given',
-'whitelistedittext' => 'You have to $1 to edit pages.',
+'whitelistedittext' => 'Please $1 to edit pages.',
'confirmedittext' => 'You must confirm your email address before editing pages.
Please set and validate your email address through your [[Special:Preferences|user preferences]].',
'nosuchsectiontitle' => 'Cannot find section',
It may have been moved or deleted while you were viewing the page.',
'loginreqtitle' => 'Login required',
'loginreqlink' => 'log in',
-'loginreqpagetext' => 'You must $1 to view other pages.',
+'loginreqpagetext' => 'Please $1 to view other pages.',
'accmailtitle' => 'Password sent',
'accmailtext' => "A randomly generated password for [[User talk:$1|$1]] has been sent to $2. It can be changed on the ''[[Special:ChangePassword|change password]]'' page upon logging in.",
'newarticle' => '(New)',
'nextn-title' => 'Next $1 {{PLURAL:$1|result|results}}',
'shown-title' => 'Show $1 {{PLURAL:$1|result|results}} per page',
'viewprevnext' => 'View ($1 {{int:pipe-separator}} $2) ($3)',
-'searchmenu-exists' => "'''There is a page named \"[[:\$1]]\" on this wiki.'''",
-'searchmenu-new' => "'''Create the page \"[[:\$1]]\" on this wiki!'''",
+'searchmenu-exists' => "'''There is a page named \"[[:\$1]]\" on this wiki.''' {{PLURAL:$2|0=|See also the other search results found.}}",
+'searchmenu-new' => "'''Create the page \"[[:\$1]]\" on this wiki!''' {{PLURAL:$2|0=|See also the page found with your search.|See also the search results found.}}",
'searchmenu-new-nocreate' => '', # do not translate or duplicate this message to other languages
'searchprofile-articles' => 'Content pages',
'searchprofile-project' => 'Help and Project pages',
'preferences-summary' => '', # do not translate or duplicate this message to other languages
'mypreferences' => 'Preferences',
'prefs-edits' => 'Number of edits:',
-'prefsnologintext2' => 'Please $1 to set user preferences.',
+'prefsnologintext2' => 'Please $1 to change your preferences.',
'prefs-skin' => 'Skin',
'skin-preview' => 'Preview',
'datedefault' => 'No preference',
'prefs-tokenwatchlist' => 'Token',
'prefs-diffs' => 'Diffs',
'prefs-help-prefershttps' => 'This preference will take effect on your next login.',
+'prefs-tabs-navigation-hint' => 'Tip: You can use the left and right arrow keys to navigate between the tabs in the tabs list.',
# User preference: email validation using jQuery
'email-address-validity-valid' => 'Email address appears valid',
'reuploaddesc' => 'Cancel upload and return to the upload form',
'upload-tryagain' => 'Submit modified file description',
'uploadnologin' => 'Not logged in',
-'uploadnologintext' => 'You must $1 to upload files.',
+'uploadnologintext' => 'Please $1 to upload files.',
'upload_directory_missing' => 'The upload directory ($1) is missing and could not be created by the webserver.',
'upload_directory_read_only' => 'The upload directory ($1) is not writable by the webserver.',
'uploaderror' => 'Upload error',
Mailer returned: $1',
'confirmemail_invalid' => 'Invalid confirmation code.
The code may have expired.',
-'confirmemail_needlogin' => 'You need to $1 to confirm your email address.',
+'confirmemail_needlogin' => 'Please $1 to confirm your email address.',
'confirmemail_success' => 'Your email address has been confirmed.
You may now [[Special:UserLogin|log in]] and enjoy the wiki.',
'confirmemail_loggedin' => 'Your email address has now been confirmed.',
'tog-minordefault' => 'Marki defaŭlte ĉiujn redaktojn kiel etajn',
'tog-previewontop' => 'Montri antaŭrigardon antaŭ redaktilo',
'tog-previewonfirst' => 'Montri antaŭrigardon je unua redakto',
-'tog-nocache' => 'Malŝalti retumilan kaŝmemoron de paĝoj',
'tog-enotifwatchlistpages' => 'Sendi al mi retmesaĝon kiam tiu paĝo en mia atentaro estas ŝanĝita',
'tog-enotifusertalkpages' => 'Sendi al mi retmesaĝon kiam mia diskutpaĝo estas ŝanĝita',
'tog-enotifminoredits' => 'Sendi al mi ankaŭ retmesaĝojn pro malgrandaj redaktoj de paĝoj',
'recentchanges-label-bot' => 'Ĉi tiu redakto estis farita per roboto.',
'recentchanges-label-unpatrolled' => 'Ĉi tiu redakto ne jam estis patrolata.',
'recentchanges-legend-newpage' => '$1 - nova paĝo',
-'rcnote' => "Jen la {{PLURAL:$1|lasta '''1''' ŝanĝo|lastaj '''$1''' ŝanĝoj}} dum la {{PLURAL:$2|lasta tago|lastaj '''$2''' tagoj}}, ekde $5, $4.",
'rcnotefrom' => "Jen la ŝanĝoj ekde '''$2''' (lastaj ĝis '''$1''').",
'rclistfrom' => 'Montri novajn ŝanĝojn ekde "$1"',
'rcshowhideminor' => '$1 redaktetojn',
'undeletebtn' => 'Restarigi',
'undeletelink' => 'vidi/restarigi',
'undeleteviewlink' => 'vidi',
-'undeletereset' => 'Restarigi',
'undeleteinvert' => 'Inversigi selektaĵon',
'undeletecomment' => 'Kialo:',
'undeletedrevisions' => '{{PLURAL:$1|1 versio restarigita|$1 versioj restarigitaj}}',
'block' => 'Forbari uzanton',
'unblock' => 'Malforbari uzanton',
'blockip' => 'Forbari uzanton/IP-adreson',
-'blockip-title' => 'Forbari uzanton',
'blockip-legend' => 'Forbari uzanton',
'blockiptext' => "Per jena formularo vi povas forpreni de ajna nomo aŭ IP-adreso la rajton skribi en la vikio. Oni faru tion ''nur'' por eviti vandalismon, kaj sekvante la [[{{MediaWiki:Policy-url}}|regulojn pri forbarado]]. Klarigu la precizan kialon malsupre (ekzemple, citu paĝojn, kiuj estis vandaligitaj).",
'ipadressorusername' => 'IP-adreso aŭ salutnomo:',
'ipbexpiry' => 'Blokdaŭro',
'ipbreason' => 'Kialo:',
-'ipbreasonotherlist' => 'Alia kaŭzo',
'ipbreason-dropdown' => '*Oftaj kialoj de forbaro
** Enmetas malveraĵojn
** Forviŝas entenon el paĝoj
'ipbsubmit' => 'Bloki la uzanton',
'ipbother' => 'Alia daŭro:',
'ipboptions' => '2 horoj:2 hours,1 tago:1 day,3 tagoj:3 days,1 semajno:1 week,2 semajnoj:2 weeks,1 monato:1 month,3 monatoj:3 months,6 monatoj:6 months,1 jaro:1 year,porĉiam:infinite',
-'ipbotheroption' => 'alia',
-'ipbotherreason' => 'Alia/kroma kialo:',
'ipbhidename' => 'Kaŝi salutnomon de redaktoj kaj listoj',
'ipbwatchuser' => 'Atenti la paĝojn por uzanto kaj diskuto de ĉi tiu uzanto.',
'ipb-disableusertalk' => 'Preventi ĉi tiun uzanton de redaktante ties propran diskuto-paĝon kiam forbarita',
'proxyblockreason' => 'Via IP-adreso estis forbarita ĉar ĝi estas malferma prokurilo. Bonvolu kontakti vian provizanto de retservo aŭ komputika helpisto kaj informu ilin de ĉi serioza problemo pri sekureco.',
'sorbsreason' => 'Via IP-adreso estas listigita kiel malferma prokurilo en la DNSBL uzata de {{SITENAME}}.',
'sorbs_create_account_reason' => 'Via IP-adreso estas listigita kiel malferma prokurilo en la DNSBL uzata de {{SITENAME}}. Vi ne rajtas krei konton.',
-'cant-block-while-blocked' => 'Vi ne povas forbari aliajn uzantojn dum vi estas forbarita.',
'cant-see-hidden-user' => 'La uzanto kiun vi provas forbari jam estis forbarita kaj kaŝita. Kiel vi ne havas la rajton kaŝi uzanton, vi ne povas vidi aŭ redakti la forbaron de la uzanto.',
'ipbblocked' => 'Vi ne povas forbari aŭ malforbari aliajn uzantojn, ĉar vi mem estas forbarita',
'ipbnounblockself' => 'Vi ne rajtas malforbari vin mem',
'watchlistall2' => 'ĉiuj',
'namespacesall' => 'ĉiuj',
'monthsall' => 'ĉiuj',
-'limitall' => 'ĉiuj',
# Email address confirmation
'confirmemail' => 'Konfirmi retadreson',
'confirmemail_needlogin' => 'Vi devas $1 por konfirmi vian retpoŝtan adreson.',
'confirmemail_success' => 'Via retadreso estas konfirmita. Vi povas nun ensaluti kaj ĝui la vikion.',
'confirmemail_loggedin' => 'Via retadreso estas nun konfirmita.',
-'confirmemail_error' => 'Io misokazis dum konservo de via konfirmo.',
'confirmemail_subject' => 'Konfirmo de retadreso por {{SITENAME}}',
'confirmemail_body' => 'Iu, verŝajne vi, ĉe la IP-adreso $1,
enregistrigis konton "$2" ĉe {{SITENAME}} kun ĉi retadreso ĉe {{SITENAME}}.
# Special:ComparePages
'comparepages' => 'Kompari paĝojn',
-'compare-selector' => 'Kompari reviziojn de paĝo',
'compare-page1' => 'Paĝo 1',
'compare-page2' => 'Paĝo 2',
'compare-rev1' => 'Revizio 1',
'tog-minordefault' => 'Marcar todas las ediciones como menores de manera predeterminada',
'tog-previewontop' => 'Mostrar previsualización antes del cuadro de edición',
'tog-previewonfirst' => 'Mostrar previsualización en la primera edición',
-'tog-nocache' => 'Desactivar la caché de páginas del navegador',
'tog-enotifwatchlistpages' => 'Enviarme un correo electrónico cuando se modifique una página o un archivo de mi lista de seguimiento',
'tog-enotifusertalkpages' => 'Enviarme un correo electrónico cuando se modifique mi página de discusión',
'tog-enotifminoredits' => 'Notificarme también por correo electrónico los cambios menores de las páginas y archivos',
Usa el formulario de abajo para iniciar sesión como otro usuario.',
'userlogin-createanother' => 'Crear otra cuenta',
'createacct-join' => 'Introduce tus datos debajo.',
-'createacct-another-join' => 'Introduzca la información de la nueva cuenta a continuación.',
+'createacct-another-join' => 'Escribe la información de la cuenta nueva a continuación.',
'createacct-emailrequired' => 'Dirección de correo electrónico',
'createacct-emailoptional' => 'Dirección de correo electrónico (opcional)',
'createacct-email-ph' => 'Escribe tu dirección de correo electrónico',
'recentchanges-label-unpatrolled' => 'Esta edición todavía no se ha patrullado',
'recentchanges-label-plusminus' => 'El tamaño de la página cambió esta cantidad de bytes',
'recentchanges-legend-newpage' => '(véase también la [[Special:NewPages|lista de páginas nuevas]])',
-'rcnote' => "Debajo {{PLURAL:$1|hay '''1''' cambio efectuado|están los últimos '''$1''' cambios efectuados}} en {{PLURAL:$2|el último día|los últimos '''$2''' días}}, hasta el $4, $5.",
'rcnotefrom' => 'A continuación se muestran los cambios desde <b>$2</b> (hasta <b>$1</b>).',
'rclistfrom' => 'Mostrar nuevos cambios desde $1',
'rcshowhideminor' => '$1 ediciones menores',
'undeletebtn' => 'Restaurar',
'undeletelink' => 'ver/restaurar',
'undeleteviewlink' => 'ver',
-'undeletereset' => 'Cancelar',
'undeleteinvert' => 'Invertir selección',
'undeletecomment' => 'Razón:',
'undeletedrevisions' => '{{PLURAL:$1|Una edición restaurada|$1 ediciones restauradas}}',
'block' => 'Bloquear usuario',
'unblock' => 'Desbloquear usuario',
'blockip' => 'Bloquear usuario',
-'blockip-title' => 'Bloquear usuario',
'blockip-legend' => 'Bloquear usuario',
'blockiptext' => 'Usa el siguiente formulario para bloquear el acceso de escritura desde una dirección IP específica o nombre de usuario.
Esto debería hacerse sólo para prevenir vandalismos, y de acuerdo a las [[{{MediaWiki:Policy-url}}|políticas]].
'ipadressorusername' => 'Dirección IP o nombre de usuario:',
'ipbexpiry' => 'Caducidad:',
'ipbreason' => 'Motivo:',
-'ipbreasonotherlist' => 'Otra razón',
'ipbreason-dropdown' => '*Motivos comunes de bloqueo
** Añadir información falsa
** Eliminar contenido de las páginas
'ipbsubmit' => 'Bloquear a este usuario',
'ipbother' => 'Especificar caducidad',
'ipboptions' => '2 horas:2 hours,1 día:1 day,3 días:3 days,1 semana:1 week,2 semanas:2 weeks,1 mes:1 month,3 meses:3 months,6 meses:6 months,1 año:1 year,para siempre:infinite',
-'ipbotheroption' => 'otro',
-'ipbotherreason' => 'Otra razón:',
'ipbhidename' => 'Ocultar nombre de usuario de ediciones y listas',
'ipbwatchuser' => 'Vigilar las páginas de usuario y de discusión de este usuario',
'ipb-disableusertalk' => 'Impedir que este usuario edite su propia página de discusión mientras esté bloqueado',
'sorbsreason' => 'Su dirección IP está listada como proxy abierto en DNSBL.',
'sorbs_create_account_reason' => 'Su dirección IP está listada como proxy abierto en DNSBL. No puede crear una cuenta',
'xffblockreason' => 'Una dirección IP presente en la cabecera X-Forwarded-For, tuya o del servidor proxy que estás usando, ha sido bloqueada. El motivo original del bloqueo fue: $1',
-'cant-block-while-blocked' => 'No puedes bloquear a otros usuarios mientras estás bloquead{{GENDER:|o|a}}.',
'cant-see-hidden-user' => 'El usuario que está intentando bloquear ya ha sido bloqueado y oculto. Puesto que usted no tiene el derecho hideuser, usted no puede ver o editar los bloqueos del usuario.',
'ipbblocked' => 'No puedes bloquear o desbloquear a otros usuarios porque estás bloqueado',
'ipbnounblockself' => 'No puedes desbloquearte',
'watchlistall2' => 'todos',
'namespacesall' => 'todos',
'monthsall' => 'todos',
-'limitall' => 'Todos',
# Email address confirmation
'confirmemail' => 'Confirmar dirección de correo electrónico',
'confirmemail_success' => 'Su dirección de correo ha sido confirmada
Ahora puedes [[Special:UserLogin|identificarte]] y colaborar en el wiki.',
'confirmemail_loggedin' => 'Tu dirección de correo electrónico ha sido confirmada.',
-'confirmemail_error' => 'Algo salió mal al guardar su confirmación.',
'confirmemail_subject' => 'confirmación de la dirección de correo de {{SITENAME}}',
'confirmemail_body' => 'Alguien, probablemente usted mismo, ha registrado desde la dirección IP $1 la cuenta "$2" en {{SITENAME}}, utilizando esta dirección de correo.
# Special:ComparePages
'comparepages' => 'Comparar páginas',
-'compare-selector' => 'Comparar revisiones de página',
'compare-page1' => 'Página 1',
'compare-page2' => 'Página 2',
'compare-rev1' => 'Revisión 1',
'tog-minordefault' => 'Märgi kõik parandused vaikimisi pisiparandusteks',
'tog-previewontop' => 'Näita eelvaadet toimetamiskasti ees',
'tog-previewonfirst' => 'Näita eelvaadet esimesel redigeerimisel',
-'tog-nocache' => 'Keela võrgulehitsejal lehekülgede puhverdamine',
'tog-enotifwatchlistpages' => 'Teata e-posti teel minu jälgitava lehekülje või faili muutmisest',
'tog-enotifusertalkpages' => 'Teata e-posti teel minu arutelulehekülje muutmisest',
'tog-enotifminoredits' => 'Teata e-posti teel mulle ka pisiparandustest lehekülgedel ja failides',
'recentchanges-label-unpatrolled' => 'Seda muudatust ei ole veel kontrollitud',
'recentchanges-label-plusminus' => 'Lehekülje suuruse muutus baitides',
'recentchanges-legend-newpage' => '(vaata ka [[Special:NewPages|uute lehekülgede loendit]])',
-'rcnote' => "Allpool on esitatud {{PLURAL:$1|'''1''' muudatus|viimased '''$1''' muudatust}} viimase {{PLURAL:$2|päeva|'''$2''' päeva}} jooksul seisuga $4, kell $5.",
'rcnotefrom' => "Allpool on toodud muudatused alates: '''$2''' (näidatakse kuni '''$1''' muudatust)",
'rclistfrom' => 'Näita muudatusi alates: $1',
'rcshowhideminor' => 'Pisiparandused ($1)',
'undeletebtn' => 'Taasta',
'undeletelink' => 'vaata/taasta',
'undeleteviewlink' => 'vaata',
-'undeletereset' => 'Tühjenda',
'undeleteinvert' => 'Pööra valik teistpidi',
'undeletecomment' => 'Põhjus:',
'undeletedrevisions' => '$1 {{PLURAL:$1|redaktsioon|redaktsiooni}} taastatud',
'block' => 'Kasutaja blokeerimine',
'unblock' => 'Kasutaja blokeeringu eemaldamine',
'blockip' => 'Kasutaja blokeerimine',
-'blockip-title' => 'Kasutaja blokeerimine',
'blockip-legend' => 'Kasutaja blokeerimine',
'blockiptext' => 'See vorm on kindla IP-aadressi või kasutajanime kirjutamisõiguste blokeerimiseks.
Seda tohib teha ainult vandalismi vältimiseks ja kooskõlas [[{{MediaWiki:Policy-url}}|{{GRAMMAR:genitive|{{SITENAME}}}} sisekorraga]].
'ipadressorusername' => 'IP-aadress või kasutajanimi:',
'ipbexpiry' => 'Kehtivus:',
'ipbreason' => 'Põhjus:',
-'ipbreasonotherlist' => 'Muu põhjusel',
'ipbreason-dropdown' => '*Tavalised blokeerimise põhjused
** Valeandmete lisamine
** Lehekülgedelt sisu kustutamine
'ipbsubmit' => 'Blokeeri see kasutaja',
'ipbother' => 'Muu tähtaeg:',
'ipboptions' => '2 tundi:2 hours,1 päev:1 day,3 päeva:3 days,1 nädal:1 week,2 nädalat:2 weeks,1 kuu:1 month,3 kuud:3 months,6 kuud:6 months,1 aasta:1 year,igavene:infinite',
-'ipbotheroption' => 'muu tähtaeg',
-'ipbotherreason' => 'Muu või täiendav põhjus:',
'ipbhidename' => 'Peida kasutajatunnus muudatustest ja loenditest',
'ipbwatchuser' => 'Jälgi selle kasutaja lehekülge ja arutelu',
'ipb-disableusertalk' => 'Keela sellel kasutajal blokeeringu ajal oma arutelulehekülge redigeerida',
'sorbsreason' => 'Sinu IP-aadress on {{GRAMMAR:genitive|{{SITENAME}}}} kasutatavas DNS-põhises mustas nimekirjas märgitud kui avatud proksi.',
'sorbs_create_account_reason' => 'Sinu IP-aadress on {{GRAMMAR:genitive|{{SITENAME}}}} kasutatavas DNS-põhises mustas nimekirjas märgitud kui avatud proksi.
Sa ei saa kasutajakontot luua.',
-'cant-block-while-blocked' => 'Teisi kasutajaid ei saa blokeerida, kui oled ise blokeeritud.',
'cant-see-hidden-user' => 'Kasutaja, keda blokeerida üritad, on juba blokeeritud ning peidetud. Kuna sul pole õigust blokeerida kasutajanimesid, peites need avalikkuse eest, ei saa sa selle kasutaja blokeeringut vaadata ega muuta.',
'ipbblocked' => 'Sa ei saa teisi blokeerida ega nende blokeeringuid eemaldada, sest oled ise blokeeritud.',
'ipbnounblockself' => 'Sul pole lubatud enda blokeeringut eemaldada.',
'watchlistall2' => 'Näita kõiki',
'namespacesall' => 'kõik',
'monthsall' => 'kõik',
-'limitall' => 'iga',
# Email address confirmation
'confirmemail' => 'E-posti aadressi kinnitamine',
'confirmemail_success' => 'Sinu e-posti aadress on kinnitatud
Võid nüüd [[Special:UserLogin|sisse logida]].',
'confirmemail_loggedin' => 'Sinu e-posti aadress on nüüd kinnitatud.',
-'confirmemail_error' => 'Viga kinnituskoodi salvestamisel.',
'confirmemail_subject' => '{{GRAMMAR:genitive|{{SITENAME}}}} e-posti aadressi kinnitamine',
'confirmemail_body' => 'Keegi IP-aadressilt $1, ilmselt sa ise, registreeris selle e-posti aadressiga {{GRAMMAR:inessive|{{SITENAME}}}} konto "$2".
# Special:ComparePages
'comparepages' => 'Lehekülgede kõrvutamine',
-'compare-selector' => 'Lehekülje redaktsioonide kõrvutamine',
'compare-page1' => 'Lehekülg 1',
'compare-page2' => 'Lehekülg 2',
'compare-rev1' => 'Redaktsioon 1',
'tog-minordefault' => 'Lehenetsi bezala aldaketa txiki bezala markatu guztiak',
'tog-previewontop' => 'Aurrebista aldaketa koadroaren aurretik erakutsi',
'tog-previewonfirst' => 'Lehen aldaketan aurrebista erakutsi',
-'tog-nocache' => 'Orrialdeen katxea ezgaitu',
'tog-enotifwatchlistpages' => 'Bidal iezadazue e-posta bat, jarraitzen ari naizen orrialde edo fitxategi bat aldatzen denean',
'tog-enotifusertalkpages' => 'Nire eztabaida orrialdea aldatzen denean e-posta jaso',
'tog-enotifminoredits' => 'Orrialde edo fitxategietan aldaketak txikiak direnean ere e-posta jaso',
'recentchanges-label-bot' => 'Aldaketa hau bot batek egin du',
'recentchanges-label-unpatrolled' => 'Aldaketa hau ez da oraindik patruilatua izan',
'recentchanges-legend-newpage' => '$1 - orrialde berria',
-'rcnote' => "Beheko azken {{PLURAL:$2|eguneko|'''$2''' egunetako}} azken {{PLURAL:$1|aldaketa|'''$1''' aldaketak}} hurrengo datan egin ziren: $5, $4.",
'rcnotefrom' => 'Jarraian azaltzen diren aldaketak data honetatik aurrerakoak dira: <b>$2</b> (gehienez <b>$1</b> erakusten dira).',
'rclistfrom' => 'Erakutsi $1 ondorengo aldaketa berriak',
'rcshowhideminor' => '$1 aldaketa txikiak',
'undeletebtn' => 'Leheneratu',
'undeletelink' => 'ikusi/leheneratu',
'undeleteviewlink' => 'ikusi',
-'undeletereset' => 'Hasieratu',
'undeleteinvert' => 'Alderanztu aukera',
'undeletecomment' => 'Arrazoia:',
'undeletedrevisions' => '{{PLURAL:$1|Berrikuspen 1 leheneratu da|$1 berrikuspen leheneratu dira}}',
'block' => 'Erabiltzailea blokeatu',
'unblock' => 'Erabiltzailea desblokeatu',
'blockip' => 'Erabiltzailea blokeatu',
-'blockip-title' => 'Erabiltzailea blokeatu',
'blockip-legend' => 'Erabiltzailea blokeatu',
'blockiptext' => 'IP helbide edo erabiltzaile izen bati idazketa baimenak kentzeko beheko formularioa erabil dezakezu. Ekintza hau bandalismoa saihesteko baino ez da burutu behar, eta beti ere [[{{MediaWiki:Policy-url}}|politikak]] errespetatuz. Blokeoaren arrazoi bat ere zehaztu ezazu (adibidez, orrialde batzuk zehaztuz).',
'ipadressorusername' => 'IP Helbidea edo erabiltzaile izena',
'ipbexpiry' => 'Iraungipena',
'ipbreason' => 'Arrazoia:',
-'ipbreasonotherlist' => 'Beste arrazoiak',
'ipbreason-dropdown' => '*Blokeaketa arrazoi arruntak
** Benetakoa ez den informazioa ezartzea
** Orrialdetatik edukia ezabatzea
'ipbsubmit' => 'Erabiltzaile hau blokeatu',
'ipbother' => 'Beste denbora-tarte bat',
'ipboptions' => '2 ordu:2 hours,1 egun:1 day,3 egun:3 days,astebete:1 week,2 aste:2 weeks,hilabete:1 month,3 hilabete:3 months,6 hilabete:6 months,urtebete:1 year,betiko:infinite',
-'ipbotheroption' => 'beste bat',
-'ipbotherreason' => 'Arrazoi gehigarria:',
'ipbhidename' => 'Lankide izena aldaketa eta zerrendetatik ezkutatu',
'ipbwatchuser' => 'Erabiltzaile honen erabiltzaile eta eztabaida orrialdeak jarraitu',
'ipb-change-block' => 'Lankidea honako balioekin bir-blokeatu',
'proxyblockreason' => 'Zure IP helbidea blokeatu egin da proxy ireki baten zaudelako. Mesedez, zure Interneteko Zerbitzu Hornitzailearekin harremanetan jar zaitez segurtasun arazo honetaz ohartarazteko.',
'sorbsreason' => 'Zure IP helbidea proxy ireki bezala zerrendatuta dago DNSBLan.',
'sorbs_create_account_reason' => 'Zure IP helbidea proxy ireki bezala zerrendatuta dago DNSBLan. Ezin duzu kontua sortu.',
-'cant-block-while-blocked' => 'Blokeatuta zauden bitartean ezin dituzu beste lankideak blokeatu.',
'ipbblocked' => 'Ezin dituzu beste erabiltzaileak blokeatu edo desblokeatu, zu zeu blokeatuta zaudelako',
'ipbnounblockself' => 'Ez duzu baimenik zure buruari blokeoa kentzeko',
'watchlistall2' => 'guztiak',
'namespacesall' => 'guztiak',
'monthsall' => 'guztiak',
-'limitall' => 'guztiak',
# Email address confirmation
'confirmemail' => 'E-posta helbidea egiaztatu',
'confirmemail_needlogin' => '$1 behar duzu zure e-posta helbidea egiaztatzeko.',
'confirmemail_success' => 'Zure e-posta helbidea egiaztatu da. Saioa hasi eta ekarpenak egin ditzakezu orain.',
'confirmemail_loggedin' => 'Zure e-posta helbidea egiaztatu da.',
-'confirmemail_error' => 'Akatsen bat gertatu da egiaztapena burutzerakoan.',
'confirmemail_subject' => 'E-posta helbide egiaztapena {{SITENAME}}(e)n',
'confirmemail_body' => 'Norbaitek, ziurrenik zuk $1 IP helbidetik, "$2" kontua erregistratu du {{SITENAME}}(e)n e-posta helbide honekin.
# Special:ComparePages
'comparepages' => 'Orrialdeak alderatu',
-'compare-selector' => 'Orrialde-berrikuspenak alderatu',
'compare-page1' => '1. orrialdea',
'compare-page2' => '2. orrialdea',
'compare-rev1' => '1. berrikuspena',
'sqlite-no-fts' => '$1 testu osoan bilatzeko laguntzarik gabe',
# New logging system
-'logentry-delete-delete' => '$1 wikilariak $3 orria {{GENDER:$2|ezabatu}} du',
+'logentry-delete-delete' => '$1 {{GENDER:$2|wikilariak}} «$3» orria ezabatu du',
'logentry-delete-restore' => '$1(e)k $3 orrialdea {{GENDER:$2|berrezarri}} du',
'logentry-delete-event' => '$1 wikilariak ikusgaitasuna aldatu {{PLURAL:$5|dio erregistroko sarrera bati|die erregistroko $5 sarrerari}}, $3 orrian: $4',
'logentry-delete-revision' => '$1 erabiltzaileak {{PLURAL:$5|berrikuste baten|$5 berrikusteren}} ikusgaitasuna aldatu du «$3» orrian: $4',
'tog-minordefault' => 'Aseñalal tolas eicionis cumu chiqueninas pol defeutu',
'tog-previewontop' => "Previsoreal sobri la caha d'eición, i nu embahu",
'tog-previewonfirst' => 'Previsoreal ena primera eición',
-'tog-nocache' => 'Desatival "caché" enas páhinas',
'tog-enotifwatchlistpages' => 'Envialmi un correu cuandu aiga chambus nuna páhina vehilá',
'tog-enotifusertalkpages' => 'Envialmi un correu cuandu alguien escreba ena mi caraba',
'tog-enotifminoredits' => 'Envialmi un correu cuandu se haga una eición chiquenina duna páhina',
'recentchanges-legend' => 'Ocionis enos úrtimus chambus',
'recentchanges-summary' => 'Sigui los úrtimus chambus d´esti güiqui nesta páhina.',
'recentchanges-feed-description' => 'Sigui los úrtimus chambus nel güiqui nesti feed.',
-'rcnote' => "Embahu se {{PLURAL:$1|muestra '''1''' chambu|muestran los úrtimus '''$1''' chambus}} {{PLURAL:$2|dendi ayel|enus úrtimus '''$2''' dias}}, de $4 a las $5.",
'rcnotefrom' => "Embahu se muestran los chambus hechus dendi el '''$2''' (hata el '''$1''').",
'rclistfrom' => 'Muestral los chambus hechus dendi el $1',
'rcshowhideminor' => '$1 eicionis chiqueninas',
'undelete-nodiff' => "Nu s'á alcuentrau denguna revisión previa.",
'undeletebtn' => 'Restaural',
'undeletelink' => 'Guipal/arrecuperal',
-'undeletereset' => 'Reahustal',
'undeletecomment' => 'Comentáriu:',
'undeletedrevisions' => '{{PLURAL:$1|1 revisión|$1 revisionis}} restaurás',
'undeletedrevisions-files' => '{{PLURAL:$1|1 revisión|$1 revisionis}} i {{PLURAL:$2|1 archivu|$2 archivus}} restauraus',
'ipadressorusername' => 'IP u nombri d´usuáriu:',
'ipbexpiry' => 'Acabiha:',
'ipbreason' => 'Razón:',
-'ipbreasonotherlist' => 'Otra razón',
'ipbreason-dropdown' => '*Motivus frecuentis de tarugus
** Escrebil enhormación farsa
** Esborral el continiu las páhinas
'ipbsubmit' => 'Atarugal a esti usuáriu',
'ipbother' => 'Otra ora:',
'ipboptions' => '2 oras:2 hours,1 dia:1 day,3 dias:3 days,1 semana:1 week,2 semanas:2 weeks,1 mes:1 month,3 mesis:3 months,6 mesis:6 months,1 añu:1 year,enfinitu:infinite',
-'ipbotheroption' => 'otru',
-'ipbotherreason' => 'Anguna otra razón?:',
'ipbhidename' => 'Açonchal nombri d\'usuáriu nel "rustrihu e tarugus", "lista e tarugus ativus" i "lista d\'usuárius"',
'ipbwatchuser' => "Visoreal la páhina d'usuáriu i la caraba d'esti usuáriu.",
'badipaddress' => 'Direción IP nu premitia',
'confirmemail_needlogin' => "Es mestel $1 pa confirmal la tu direción d'email.",
'confirmemail_success' => "S'á confirmau la tu direción d'email. Ya pueis entral ena tu cuenta i embailti cola Güiqui.",
'confirmemail_loggedin' => "S'á confirmau la tu direción d'email.",
-'confirmemail_error' => 'Marru al emburacal la tu confirmación.',
'confirmemail_subject' => 'Confirmaeru de direción de correu de {{SITENAME}}',
'confirmemail_body' => 'Yeu!
'tog-minordefault' => 'همهٔ ویرایشها به طور پیشفرض به عنوان «جزئی» علامت بخورد',
'tog-previewontop' => 'پیشنمایش قبل از جعبهٔ ویرایش نمایش یابد',
'tog-previewonfirst' => 'پیشنمایش هنگام اولین ویرایش نمایش یابد',
-'tog-nocache' => 'حافظهٔ نهانی مرورگر از کار انداخته شود',
'tog-enotifwatchlistpages' => 'اگر صفحه یا پروندهای از فهرست پیگیریهایم ویرایش شد به من نامهای فرستاده شود',
'tog-enotifusertalkpages' => 'هنگامی که در صفحهٔ بحث کاربریام تغییری صورت میگیرد به من نامهای فرستاده شود',
'tog-enotifminoredits' => 'برای تغییرات جزئی در صفحهها و پروندهها هم به من نامهای فرستاده شود',
'recentchanges-label-plusminus' => 'حجم صفحه به اندازه این بایتها تغییر یافتهاست',
'recentchanges-legend-newpage' => '(همچنین به [[Special:NewPages|فهرست صفحات جدید]] نگاه کنید)',
'recentchanges-legend-plusminus' => "('' ±۱۲۳'')",
-'rcnote' => "در زیر {{PLURAL:$1|'''۱''' تغییر|آخرین '''$1''' تغییر}} در آخرین {{PLURAL:$2|روز|'''$2''' روز}} را، تا $4 ساعت $5 میبینید.",
'rcnotefrom' => 'در زیر تغییرات از تاریخ <b>$2</b> آمدهاند (تا <b>$1</b> مورد نشان داده میشود).',
'rclistfrom' => 'نمایش تغییرات جدید با شروع از $1',
'rcshowhideminor' => '$1 ویرایشهای جزئی',
'undeletebtn' => 'احیا',
'undeletelink' => 'نمایش/احیا',
'undeleteviewlink' => 'نمایش',
-'undeletereset' => 'از نو',
'undeleteinvert' => 'وارونه کردن انتخاب',
'undeletecomment' => 'دلیل:',
'undeletedrevisions' => '$1 نسخه احیا {{PLURAL:$1|شد|شدند}}',
'block' => 'بستن کاربر',
'unblock' => 'بازکردن کاربر',
'blockip' => 'بستن کاربر',
-'blockip-title' => 'بستن کاربر',
'blockip-legend' => 'بستن کاربر',
'blockiptext' => 'از فرم زیر برای بستن دسترسی ویرایش یک نشانی آیپی یا نام کاربری مشخص استفاده کنید.
این کار فقط فقط باید برای جلوگیری از خرابکاری و بر اساس [[{{MediaWiki:Policy-url}}|سیاست قطع دسترسی]] انجام شود.
'ipadressorusername' => 'نشانی آیپی یا نام کاربری:',
'ipbexpiry' => 'زمان سرآمدن:',
'ipbreason' => 'دلیل:',
-'ipbreasonotherlist' => 'دلیل دیگر',
'ipbreason-dropdown' => '*دلایل متداول قطع دسترسی
**واردکردن اطلاعات نادرست
**پاککردن اطلاعات مفید از صفحهها
'ipbsubmit' => 'این کاربر بسته شود',
'ipbother' => 'زمانی دیگر',
'ipboptions' => '۲ ساعت:2 hours,۱ روز:1 day,۳ روز:3 days,۱ هفته:1 week,۲ هفته:2 weeks,۱ ماه:1 month,۳ ماه:3 months,۶ ماه:6 months,۱ سال:1 year,بیپایان:infinite',
-'ipbotheroption' => 'دیگر',
-'ipbotherreason' => 'دلیل دیگر/اضافی:',
'ipbhidename' => 'نهفتن نام کاربری از ویرایشها و فهرستها',
'ipbwatchuser' => 'پیگیری صفحهٔ کاربری و بحث این کاربر',
'ipb-disableusertalk' => 'جلوگیری از ویرایشی صفحهً بحث توسط خود کاربر در زمانی که بسته است',
'sorbs_create_account_reason' => 'نشانی آیپی شما توسط DNSBL مورد استفاده {{SITENAME}} به عنوان یک پروکسی باز گزارش شدهاست.
شما اجازهٔ ساختن حساب کاربری ندارید.',
'xffblockreason' => 'نشانی آیپی در X-Forwarded-For header موجود است و پروکسی شما یا سروری که از آن استفاده میکنید بستهشدهاست. دلیل بستهشدن: $1',
-'cant-block-while-blocked' => 'در مدتی که دسترسی شما بسته است نمیتوانید دسترسی کاربران دیگر را قطع کنید.',
'cant-see-hidden-user' => 'کاربری که میخواهید ببندید قبلاً بسته شده و پنهان گردیده است. چون شما دسترسی پنهان کردن کاربران را ندارید، نمیتوانید قطع دسترسی کاربر را ببینید یا ویرایش کنید.',
'ipbblocked' => 'شما نمیتوانید دسترسی دیگر کاربران را ببندید یا باز کنید زیرا دسترسی خودتان بسته است.',
'ipbnounblockself' => 'شما مجاز به باز کردن دسترسی خود نیستید.',
'watchlistall2' => 'همه',
'namespacesall' => 'همه',
'monthsall' => 'همهٔ ماهها',
-'limitall' => 'همه',
# Email address confirmation
'confirmemail' => 'تأیید نشانی رایانامه',
هماینک میتوانید [[Special:UserLogin|به سامانه وارد شوید]] و از ویکی لذت ببرید.',
'confirmemail_loggedin' => 'نشانی رایانامهٔ شما تأیید شد.',
-'confirmemail_error' => 'هنگام ذخیرهٔ تأیید شما به مشکلی برخورده شد.',
'confirmemail_subject' => 'تأیید نشانی رایانامهٔ شما {{SITENAME}}',
'confirmemail_body' => 'یک نفر، احتمالاً خود شما، از نشانی آیپی $1 حساب کاربریای با نام «$2» و این نشانی رایانامه در {{SITENAME}} ایجاد کردهاست.
'imgmultigo' => 'برو!',
'imgmultigoto' => 'رفتن به صفحهٔ $1',
+# Language selector for translatable SVGs
+'img-lang-default' => '(زبان پیشفرض)',
+
# Table pager
'ascending_abbrev' => 'صعودی',
'descending_abbrev' => 'نزولی',
# Special:ComparePages
'comparepages' => 'مقایسهٔ صفحهها',
-'compare-selector' => 'مقایسهٔ نسخههای صفحهها',
'compare-page1' => 'صفحهٔ ۱',
'compare-page2' => 'صفحهٔ ۲',
'compare-rev1' => 'نسخهٔ ۱',
'tog-minordefault' => 'Merkitse kaikki muutokset oletusarvoisesti pieniksi',
'tog-previewontop' => 'Näytä esikatselu muokkauskentän yläpuolella',
'tog-previewonfirst' => 'Näytä esikatselu heti, kun muokkaus aloitetaan',
-'tog-nocache' => 'Älä tallenna sivuja selaimen välimuistiin',
'tog-enotifwatchlistpages' => 'Lähetä sähköpostiviesti tarkkailulistallani olevien sivujen muokkauksista',
'tog-enotifusertalkpages' => 'Lähetä sähköpostiviesti oman keskustelusivun muokkauksista',
'tog-enotifminoredits' => 'Lähetä sähköpostiviesti myös pienistä muokkauksista',
'passwordtooshort' => 'Salasanan täytyy olla vähintään {{PLURAL:$1|yhden merkin pituinen|$1 merkkiä pitkä}}.',
'password-name-match' => 'Salasanasi täytyy olla eri kuin käyttäjätunnuksesi.',
'password-login-forbidden' => 'Tämän käyttäjänimen ja salasanan käyttö on estetty.',
-'mailmypassword' => 'Lähetä uusi salasana sähköpostitse',
+'mailmypassword' => 'Uudista salasana',
'passwordremindertitle' => 'Uusi väliaikainen salasana {{GRAMMAR:elative|{{SITENAME}}}}',
'passwordremindertext' => 'Joku IP-osoitteesta $1 pyysi {{GRAMMAR:partitive|{{SITENAME}}}} ($4) lähettämään uuden salasanan. Väliaikainen salasana käyttäjälle $2 on nyt $3. Kirjaudu sisään ja vaihda salasana. Väliaikainen salasana vanhenee {{PLURAL:$5|yhden päivän|$5 päivän}} kuluttua.
# Special:PasswordReset
'passwordreset' => 'Salasanan uudistus',
'passwordreset-text-one' => 'Täytä tämä lomake uudistaaksesi salasanasi.',
-'passwordreset-text-many' => '{{PLURAL:$1|Täytä yksi kentistä uudistaaksesi salasanasi.}}',
+'passwordreset-text-many' => '{{PLURAL:$1|Täytä yksi kentistä, jotta saat väliaikaisen salasanan sähköpostitse.}}',
'passwordreset-legend' => 'Salasanan uudistus',
'passwordreset-disabled' => 'Salasanojen uudistaminen ei ole mahdollista tässä wikissä.',
'passwordreset-emaildisabled' => 'Sähköpostitoiminnot on poistettu käytöstä tässä wikissä.',
'image_tip' => 'Tallennettu tiedosto',
'media_sample' => 'Esimerkki.ogg',
'media_tip' => 'Tiedostolinkki',
-'sig_tip' => 'Allekirjoitus aikamerkinnällä',
+'sig_tip' => 'Allekirjoitus aikaleiman kanssa',
'hr_tip' => 'Vaakasuora viiva',
# Edit pages
'last' => 'edell.',
'page_first' => 'ensimmäinen sivu',
'page_last' => 'viimeinen sivu',
-'histlegend' => 'Merkinnät: (nyk.) = eroavaisuudet nykyiseen versioon, (edell.) = eroavaisuudet edelliseen versioon, <span class="minor">p</span> = pieni muutos',
+'histlegend' => "Eroavaisuuksien valinta: Merkitse niiden versioiden valintaympyrät, joita haluat vertailla, ja paina enter tai alhaalla olevaa nappia.<br />
+Selitys: '''({{int:cur}})''' = eroavaisuudet uusimpaan versioon, '''({{int:last}})''' = eroavaisuudet edeltävään versioon, '''{{int:minoreditletter}}''' = pieni muutos.",
'history-fieldset-title' => 'Selaa muutoshistoriaa',
'history-show-deleted' => 'Vain poistetut',
'histfirst' => 'vanhimmat',
'recentchanges-label-unpatrolled' => 'Tätä muutosta ei ole vielä tarkastettu',
'recentchanges-label-plusminus' => 'Sivun koon muutos tavuina',
'recentchanges-legend-newpage' => '(katso myös [[Special:NewPages|lista uusista sivuista]])',
-'rcnote' => 'Alla on {{PLURAL:$1|yksi muutos|$1 tuoreinta muutosta}} {{PLURAL:$2|yhden päivän|$2 viime päivän}} ajalta $4 kello $5 asti.',
'rcnotefrom' => 'Alla on muutokset <b>$2</b> lähtien. Enintään <b>$1</b> merkintää näytetään.',
'rclistfrom' => 'Näytä uudet muutokset $1 alkaen',
'rcshowhideminor' => '$1 pienet muutokset',
Voit rajoittaa listaa valitsemalla lokityypin, käyttäjän tai sivun johon muutos on kohdistunut. Jälkimmäiset ovat kirjainkokoherkkiä.',
'logempty' => 'Ei tapahtumia lokissa.',
'log-title-wildcard' => 'Kohde alkaa merkkijonolla',
-'showhideselectedlogentries' => 'Näytä tai piilota valitut lokimerkinnät',
+'showhideselectedlogentries' => 'Muuta valittujen lokitapahtumien näkyvyyttä',
# Special:AllPages
'allpages' => 'Kaikki sivut',
'deleteotherreason' => 'Muu syy tai tarkennus',
'deletereasonotherlist' => 'Muu syy',
'deletereason-dropdown' => '* Yleiset poistosyyt
-** Tekijänoikeusrikkomus
-** Tekijän poistopyyntö
-** Testisivu
+** Spam tai mainossivu
** Vandalismi
+** Tekijänoikeusrikkomus
+** Sivun tekijän pyyntö
** Virheellinen ohjaus',
'delete-edit-reasonlist' => 'Muokkaa poistosyitä',
'delete-toobig' => 'Tällä sivulla on pitkä muutoshistoria – yli $1 {{PLURAL:$1|versio|versiota}}. Näin suurien muutoshistorioiden poistamista on rajoitettu suorituskykysyistä.',
'undeletebtn' => 'Palauta',
'undeletelink' => 'näytä tai palauta',
'undeleteviewlink' => 'näytä',
-'undeletereset' => 'Tyhjennä',
'undeleteinvert' => 'Käänteinen valinta',
'undeletecomment' => 'Syy:',
'undeletedrevisions' => '{{PLURAL:$1|Yksi versio|$1 versiota}} palautettiin',
'block' => 'Estä käyttäjä',
'unblock' => 'Poista käyttäjän esto',
'blockip' => 'Estä käyttäjä',
-'blockip-title' => 'Estä käyttäjä',
'blockip-legend' => 'Estä käyttäjä',
-'blockiptext' => 'Tällä lomakkeella voit estää käyttäjän tai IP-osoitteen muokkausoikeudet. Muokkausoikeuksien poistamiseen [[{{MediaWiki:Policy-url}}|pitää olla syy]], esimerkiksi sivujen vandalisointi. Kirjoita syy siihen varattuun kenttään.<br />Vapaamuotoisen vanhenemisajat noudattavat GNUn standardimuotoa, joka on kuvattu tar-manuaalissa ([http://www.gnu.org/software/tar/manual/html_node/Date-input-formats.html] [EN]), esimerkiksi ”1 hour”, ”2 days”, ”next Wednesday”, ”2014-08-29”.',
+'blockiptext' => 'Tällä toiminnolla voit estää käyttäjätunnusta tai IP-osoitetta muokkaamasta.<br />
+Tällainen muokkausesto pitäisi asettaa vain vandalismin torjumiseksi ja [[{{MediaWiki:Policy-url}}|käytännön]] mukaisesti.
+Kirjoita eston syy alla olevaan kenttään.',
'ipadressorusername' => 'IP-osoite tai käyttäjätunnus',
'ipbexpiry' => 'Kesto',
'ipbreason' => 'Syy',
-'ipbreasonotherlist' => 'Muu syy',
'ipbreason-dropdown' => '*Yleiset estosyyt
** Väärän tiedon lisääminen
** Sisällön poistaminen
'ipbsubmit' => 'Estä',
'ipbother' => 'Muu kesto',
'ipboptions' => '2 tuntia:2 hours,1 päivä:1 day,3 päivää:3 days,1 viikko:1 week,2 viikkoa:2 weeks,1 kuukausi:1 month,3 kuukautta:3 months,6 kuukautta:6 months,1 vuosi:1 year,ikuinen:infinite',
-'ipbotheroption' => 'Muu kesto',
-'ipbotherreason' => 'Muu syy tai tarkennus',
'ipbhidename' => 'Piilota tunnus muokkauksista ja listauksista',
'ipbwatchuser' => 'Tarkkaile tämän käyttäjän käyttäjä- ja keskustelusivua',
'ipb-disableusertalk' => 'Estä käyttäjää muokkaamasta omaa keskustelusivuaan eston aikana',
'sorbs_create_account_reason' => 'IP-osoitteesi on listattu avoimena välityspalvelimena DNSBL:n mustalla listalla sivustolla {{SITENAME}}.
Et voi luoda käyttäjätunnusta.',
'xffblockreason' => 'Yhteydet IP-osoitteesta, joka löytyy sinun tai käyttämäsi välipalvelimen X-Forwarded-For-otsakkeesta, on estetty. Alkuperäinen estämisen syy oli: $1',
-'cant-block-while-blocked' => 'Et voi estää muita käyttäjiä kun olet itse estetty.',
'cant-see-hidden-user' => 'Käyttäjä, jota yrität estää on jo estetty ja piilotettu. Koska sinulla ei ole hideuser-oikeutta, et voi nähdä tai muokata käyttäjän estoa.',
'ipbblocked' => 'Et voi estää tai poistaa estoja muilta käyttäjiltä, koska itse olet estettynä',
'ipbnounblockself' => 'Et ole oikeutettu poistamaan estoa itseltäsi',
'watchlistall2' => 'koko historia',
'namespacesall' => 'kaikki',
'monthsall' => 'kaikki',
-'limitall' => 'kaikki',
# Email address confirmation
'confirmemail' => 'Varmenna sähköpostiosoite',
'confirmemail_success' => 'Sähköpostiosoitteesi on nyt varmennettu.
Voit [[Special:UserLogin|kirjautua sisään]].',
'confirmemail_loggedin' => 'Sähköpostiosoitteesi on nyt varmennettu.',
-'confirmemail_error' => 'Jokin epäonnistui varmennuksen tallentamisessa.',
'confirmemail_subject' => '{{GRAMMAR:genitive|{{SITENAME}}}} sähköpostiosoitteen varmennus',
'confirmemail_body' => 'Joku IP-osoitteesta $1 on rekisteröinyt {{GRAMMAR:inessive|{{SITENAME}}}} tunnuksen $2 tällä sähköpostiosoitteella.
'imgmultigo' => 'Siirry',
'imgmultigoto' => 'Sivu $1',
+# Language selector for translatable SVGs
+'img-lang-default' => '(oletuskieli)',
+'img-lang-go' => 'Suorita',
+
# Table pager
'ascending_abbrev' => 'nouseva',
'descending_abbrev' => 'laskeva',
'tag-filter-submit' => 'Suodata',
'tag-list-wrapper' => '([[Special:Tags|{{PLURAL:$1|Merkintä|Merkinnät}}]]: $2)',
'tags-title' => 'Merkinnät',
-'tags-intro' => "Tämä sivu luetteloi ne merkinnät (''eng.'' tags), joilla ohjelmisto voi merkitä muokkauksia, ja niiden tarkoitukset.",
-'tags-tag' => 'Merkintänimi',
+'tags-intro' => "Tämä sivu luetteloi ne merkinnät eli merkkaukset (''engl.'' tags), joilla ohjelmisto voi merkitä muokkauksia, ja mitä ne tarkoittavat.",
+'tags-tag' => 'Merkinnän nimi',
'tags-display-header' => 'Näkyvyys muutosluetteloissa',
'tags-description-header' => 'Täysi kuvaus tarkoituksesta',
'tags-active-header' => 'Aktiivinen?',
# Special:ComparePages
'comparepages' => 'Vertaile sivuja',
-'compare-selector' => 'Vertaile sivuversioita',
'compare-page1' => 'Sivu 1',
'compare-page2' => 'Sivu 2',
'compare-rev1' => 'Versio 1',
'tog-minordefault' => 'Merk sum standard allar broytingar sum smærri',
'tog-previewontop' => 'Vís forhondsvísning áðren rættingarkassan',
'tog-previewonfirst' => 'Vís forskoðan við fyrstu rætting',
-'tog-nocache' => 'Deaktivera síðu "caching" í brovsaranum',
'tog-enotifwatchlistpages' => 'Send mær teldupost, tá ein síða ella fíla á mínum eftirlitslista er broytt',
'tog-enotifusertalkpages' => 'Send mær teldubræv, tá mín brúkarasíða er broytt',
'tog-enotifminoredits' => 'Send mær eisini ein teldupost viðvíkjandi smærri broytingum á síðum og fílum',
'recentchanges-label-bot' => 'Henda rætting varð gjørd av einum botti',
'recentchanges-label-unpatrolled' => 'Henda rætting er ikki blivin eftirkannað enn',
'recentchanges-legend-newpage' => '(sí eisini [[Special:NewPages|yvirlit yvir nýggjar síður]])',
-'rcnote' => "Niðanfyri {{PLURAL:$1|stendur '''1''' tann seinasta broytingin|standa '''$1''' tær seinastu broytingarnar}} {{PLURAL:$2|seinasta dagin|seinastu '''$2''' dagarnar}}, frá $5, $4.",
'rcnotefrom' => "Niðanfyri standa broytingarnar síðani '''$2''', (upp til '''$1''' er sýndar).",
'rclistfrom' => 'Sýn nýggjar broytingar byrjandi við $1',
'rcshowhideminor' => '$1 minni rættingar',
'undeletebtn' => 'Endurstovna',
'undeletelink' => 'síggj/endurstovna',
'undeleteviewlink' => 'Hygg',
-'undeletereset' => 'Endurset',
'undeleteinvert' => 'Umvent val',
'undeletecomment' => 'Orsøk:',
'undeletedrevisions' => '{{PLURAL:$1|1 versjón|$1 versjónir}} endurstovnað/ar',
'block' => 'Sperra brúkara',
'unblock' => 'Tak sperring av brúkara burtur',
'blockip' => 'Banna brúkara',
-'blockip-title' => 'Sperra brúkara',
'blockip-legend' => 'Sperra brúkara',
'ipadressorusername' => 'IP-adressa ella brúkaranavn:',
'ipbexpiry' => 'Gongur út:',
'ipbreason' => 'Orsøk:',
-'ipbreasonotherlist' => 'Onnur orsøk',
'ipbreason-dropdown' => '*Vanligar orsøkir fyri sperring
** Innsetan av følskum upplýsingum
** Tekur burtur innihald av síðum
'ipbsubmit' => 'Banna henda brúkaran',
'ipbother' => 'Annað tíðarskeið:',
'ipboptions' => '2 tímar:2 hours, 1 dagur:1 day, 3 dagar:3 days, 1 vika:1 week, 2 vikur:2 weeks, 1 mánaður:1 month, 3 mánaðir:3 months, 6 mánaðir:6 months, 1 ár:1 year, óendaligt:infinite',
-'ipbotheroption' => 'annað',
-'ipbotherreason' => 'Onnur orsøk:',
'ipbhidename' => 'Fjal brúkaranavn í rættingum og listum',
'ipbwatchuser' => 'Halt eyga við brúkara og kjaksíðum hjá hesum brúkara',
'ipb-disableusertalk' => 'Forða hesum brúkaranum at rætta sína egnu kjaksíðu, meðan viðkomandi er sperrað/ur',
'sorbsreason' => 'Tín IP adressa er merkt sum ein open proxy í DNSBL sum {{SITENAME}} brúkar.',
'sorbs_create_account_reason' => 'Tín IP adressa er merkt sum ein open proxy í DNSBL sum {{SITENAME}} brúkar.
Tú kanst ikki upprætta eina konto.',
-'cant-block-while-blocked' => 'Tú kanst ikki sperra aðrar brúkarar meðan tú sjálv/ur ert sperrað/ur.',
'ipbblocked' => 'Tú kanst ikki sperra ella taka sperring burtur hjá øðrum brúkarum, tí tú ert sjálv/ur sperrað/ur',
'ipbnounblockself' => 'Tú hevur ikki loyvi til at taka sperringina burtur hjá tær sjálvum',
* @author Nicolas NALLET
* @author Nicolas Raoul
* @author Nnemo
+ * @author Nobody
* @author Od1n
* @author Omnipaedista
* @author Peter17
'tog-minordefault' => 'Marquer mes modifications comme mineures par défaut',
'tog-previewontop' => 'Afficher la prévisualisation au-dessus de la zone de modification',
'tog-previewonfirst' => 'Afficher la prévisualisation lors de la première modification',
-'tog-nocache' => 'Désactiver le cache des pages par le navigateur',
'tog-enotifwatchlistpages' => "M'avertir par courriel lorsqu'une page ou un fichier de ma liste de suivi est modifiée",
'tog-enotifusertalkpages' => "M'avertir par courriel si ma page de discussion est modifiée",
'tog-enotifminoredits' => "M'avertir par courriel pour les modifications mineures de pages ou de fichiers également",
'prefs-tokenwatchlist' => 'Jeton',
'prefs-diffs' => 'Différences',
'prefs-help-prefershttps' => 'Cette préférence sera effective lors de votre prochaine connexion.',
+'prefs-tabs-navigation-hint' => 'Astuce : Vous pouvez utiliser les flèches de gauche et de droite pour naviguer entre les onglets.',
# User preference: email validation using jQuery
'email-address-validity-valid' => 'Semble valide',
'recentchanges-label-plusminus' => 'La taille de la page a changé de ce nombre d’octets',
'recentchanges-legend-newpage' => '(voir aussi la [[Special:NewPages|liste des nouvelles pages]])',
'recentchanges-legend-plusminus' => "(''±123'')",
-'rcnote' => "Voici {{PLURAL:$1|la dernière modification effectuée|les $1 dernières modifications effectuées}} durant {{PLURAL:$2|la dernière journée|les <b>$2</b> derniers jours}} jusqu'à $5 le $4.",
'rcnotefrom' => "Voici les modifications effectuées depuis le '''$2''' ('''$1''' au maximum).",
'rclistfrom' => 'Afficher les nouvelles modifications depuis le $1.',
'rcshowhideminor' => '$1 les modifications mineures',
'undeletebtn' => 'Restaurer',
'undeletelink' => 'visualiser/rétablir',
'undeleteviewlink' => 'voir',
-'undeletereset' => 'Réinitialiser',
'undeleteinvert' => 'Inverser la sélection',
'undeletecomment' => 'Motif :',
'undeletedrevisions' => '$1 {{PLURAL:$1|version restaurée|versions restaurées}}',
'block' => 'Bloquer l’utilisateur',
'unblock' => "Débloquer l'utilisateur",
'blockip' => 'Bloquer l’utilisateur',
-'blockip-title' => 'Bloquer l’utilisateur',
'blockip-legend' => 'Bloquer l’utilisateur',
'blockiptext' => 'Utilisez le formulaire ci-dessous pour bloquer les tentatives de modification faites à partir d’une adresse IP spécifique ou d’un nom d’utilisateur.
Une telle mesure ne devrait être prise que pour prévenir le vandalisme et en accord avec les [[{{MediaWiki:Policy-url}}|règles internes]].
'ipadressorusername' => "Adresse IP ou nom d'utilisateur :",
'ipbexpiry' => 'Durée avant expiration :',
'ipbreason' => 'Motif :',
-'ipbreasonotherlist' => 'Autre motif',
'ipbreason-dropdown' => "* Motifs de blocage les plus fréquents
** Insertion de fausses informations
** Suppression injustifiée de contenu des pages
'ipbsubmit' => 'Bloquer cet utilisateur',
'ipbother' => 'Autre durée :',
'ipboptions' => '2 heures:2 hours,1 jour:1 day,3 jours:3 days,1 semaine:1 week,2 semaines:2 weeks,1 mois:1 month,3 mois:3 months,6 mois:6 months,1 an:1 year,indéfiniment:infinite',
-'ipbotheroption' => 'autre',
-'ipbotherreason' => 'Motif différent ou supplémentaire :',
'ipbhidename' => "Masquer le nom d'utilisateur des modifications et des listes",
'ipbwatchuser' => 'Suivre les pages utilisateur et de discussion de cet utilisateur',
'ipb-disableusertalk' => "Empêcher l'utilisateur de modifier sa page de discussion pendant le blocage",
'sorbs_create_account_reason' => 'Votre adresse IP est listée comme mandataire ouvert dans le DNSBL utilisé par {{SITENAME}}.
Vous ne pouvez pas créer un compte.',
'xffblockreason' => "Une adresse IP dans l'en-tête X-Forwarded-For, soit la vôtre ou celle d'un serveur proxy que vous utilisez, a été bloquée. La raison du blocage initial est : $1",
-'cant-block-while-blocked' => 'Vous ne pouvez pas bloquer d’autres utilisateurs tant que vous êtes bloqué{{GENDER:||e|(e)}}.',
'cant-see-hidden-user' => "L’utilisateur que vous tentez de bloquer a déjà été bloqué et masqué. N’ayant pas le droit ''hideuser'', vous ne pouvez pas voir ou modifier le blocage de cet utilisateur.",
'ipbblocked' => "Vous ne pouvez pas bloquer ou débloquer d'autres utilisateurs, parce que vous êtes vous-même bloqué",
'ipbnounblockself' => "Vous n'êtes pas autorisé{{GENDER:||e|(e)}} à vous débloquer vous-même",
'watchlistall2' => 'tout',
'namespacesall' => 'Tous',
'monthsall' => 'tous',
-'limitall' => 'tous',
# Email address confirmation
'confirmemail' => 'Confirmer l’adresse de courriel',
'confirmemail_success' => 'Votre adresse de courriel a été confirmée.
Vous pouvez maintenant vous [[Special:UserLogin|{{MediaWiki:Loginreqlink}}]] et profiter du wiki.',
'confirmemail_loggedin' => 'Votre adresse de courriel est maintenant confirmée.',
-'confirmemail_error' => 'Un problème est survenu lors de l’enregistrement de votre confirmation.',
'confirmemail_subject' => 'Confirmation d’adresse de courriel pour {{SITENAME}}',
'confirmemail_body' => 'Quelqu’un, probablement vous, à partir de l’adresse IP $1,
a enregistré un compte « $2 » avec cette adresse de courriel
'imgmultigo' => 'Accéder !',
'imgmultigoto' => 'Aller à la page $1',
+# Language selector for translatable SVGs
+'img-lang-default' => '(langue par défaut)',
+'img-lang-info' => 'Afficher cette image en $1 $2.',
+'img-lang-go' => 'Lancer',
+
# Table pager
'ascending_abbrev' => 'crois.',
'descending_abbrev' => 'décr.',
# Special:ComparePages
'comparepages' => 'Comparer des pages',
-'compare-selector' => 'Comparer les versions des pages',
'compare-page1' => 'Page 1',
'compare-page2' => 'Page 2',
'compare-rev1' => 'Version 1',
'tog-minordefault' => 'Marcar per dèfôt tôs los changements coment petiôts',
'tog-previewontop' => 'Montrar l’apèrçu d’amont la zona de changement',
'tog-previewonfirst' => 'Montrar l’apèrçu pendent lo premiér changement',
-'tog-nocache' => 'Dèsactivar lo cacho de les pâges per lo navigator',
'tog-enotifwatchlistpages' => 'Mè mandar un mèssâjo quand na pâge un fichiér de ma lista de siuvu est changiê(e)',
'tog-enotifusertalkpages' => 'Mè mandar un mèssâjo quand ma pâge de discussion est changiêe',
'tog-enotifminoredits' => 'Mè mandar un mèssâjo mémo en câs de petiôts changements de les pâges et des fichiérs',
'recentchanges-label-bot' => 'Ceti changement est étâ fêt per un robot',
'recentchanges-label-unpatrolled' => 'Ceti changement est p’oncor étâ gouardâ',
'recentchanges-legend-newpage' => '$1 - pâge novèla',
-'rcnote' => "Vê-que {{PLURAL:$1|lo dèrriér changement fêt|los '''$1''' dèrriérs changements fêts}} pendent {{PLURAL:$2|lo jorn passâ|los '''$2''' jorns passâs}} tant qu’a $5 lo $4.",
'rcnotefrom' => "Vê-que los changements fêts dês lo '''$2''' (tant qu’a '''$1''' montrâs).",
'rclistfrom' => 'Montrar los novéls changements dês lo $1',
'rcshowhideminor' => '$1 los petiôts changements',
'undeletebtn' => 'Refâre',
'undeletelink' => 'vêre / refâre',
'undeleteviewlink' => 'vêre',
-'undeletereset' => 'Rebetar a zérô',
'undeleteinvert' => 'Envèrsar lo chouèx',
'undeletecomment' => 'Rêson :',
'undeletedrevisions' => '$1 {{PLURAL:$1|vèrsion refêta|vèrsions refêtes}}',
'block' => 'Blocar l’usanciér',
'unblock' => 'Dèblocar l’usanciér',
'blockip' => 'Blocar l’usanciér',
-'blockip-title' => 'Blocar l’usanciér',
'blockip-legend' => 'Blocar l’usanciér',
'blockiptext' => 'Utilisâd lo formulèro ce-desot por blocar l’accès en ècritura dês una adrèce IP spècefica ou ben un nom d’usanciér.
Una tâla mesera devrêt étre prêsa ren que por empachiér lo vandalismo et en acôrd avouéc les [[{{MediaWiki:Policy-url}}|règlles de dedens]].
'ipadressorusername' => 'Adrèce IP ou ben nom d’usanciér :',
'ipbexpiry' => 'Temps devant èxpiracion :',
'ipbreason' => 'Rêson :',
-'ipbreasonotherlist' => 'Ôtra rêson',
'ipbreason-dropdown' => '*Rêsons corentes de blocâjo
** Entrebetâ d’enformacions fôsses
** Suprèssion de contegnu de les pâges
'ipbsubmit' => 'Blocar ceti usanciér',
'ipbother' => 'Ôtro temps :',
'ipboptions' => '2 hores:2 hours,1 jorn:1 day,3 jorns:3 days,1 semana:1 week,2 semanes:2 weeks,1 mês:1 month,3 mês:3 months,6 mês:6 months,1 an:1 year,sen fin:infinite',
-'ipbotheroption' => 'ôtra',
-'ipbotherreason' => 'Ôtra rêson / rêson de ples :',
'ipbhidename' => 'Cachiér lo nom d’usanciér des changements et de les listes',
'ipbwatchuser' => 'Siuvre les pâges usanciér et de discussion a ceti usanciér',
'ipb-disableusertalk' => 'Empache cél usanciér de changiér sa prôpra pâge de discussion pendent lo temps de son blocâjo',
'sorbsreason' => "Voutra adrèce IP est listâ coment sèrvor mandatèro (''proxy'') uvèrt dens lo DNSBL utilisâ per {{SITENAME}}.",
'sorbs_create_account_reason' => "Voutra adrèce IP est listâ coment sèrvor mandatèro (''proxy'') uvèrt dens lo DNSBL utilisâ per {{SITENAME}}.
Vos pouede pas fâre un compto.",
-'cant-block-while-blocked' => 'Vos pouede pas blocar d’ôtros usanciérs tant que vos éte blocâ.',
'cant-see-hidden-user' => 'L’usanciér que vos tâchiéd de blocar at ja étâ blocâ et cachiê.
Pas èyent lo drêt hideuser, vos pouede pas vêre ou ben changiér lo blocâjo a l’usanciér.',
'ipbblocked' => 'Vos pouede pas blocar ou ben dèblocar d’ôtros usanciérs, perce que vos éte vos-mémo blocâ',
'watchlistall2' => 'tot',
'namespacesall' => 'tôs',
'monthsall' => 'tôs',
-'limitall' => 'tôs',
# Email address confirmation
'confirmemail' => 'Confirmar l’adrèce èlèctronica',
'confirmemail_success' => 'Voutra adrèce èlèctronica at étâ confirmâ.
Ora, vos vos pouede [[Special:UserLogin|branchiér]] et profitar du vouiqui.',
'confirmemail_loggedin' => 'Ora, voutra adrèce èlèctronica est confirmâ.',
-'confirmemail_error' => 'Un problèmo est arrevâ pendent l’encartâjo de voutra confirmacion.',
'confirmemail_subject' => 'Confirmacion d’adrèce èlèctronica por {{SITENAME}}',
'confirmemail_body' => 'Quârqu’un, probâblament vos, avouéc l’adrèce IP $1,
at encartâ un compto « $2 » avouéc cela adrèce èlèctronica dessus {{SITENAME}}.
# Special:ComparePages
'comparepages' => 'Comparar des pâges',
-'compare-selector' => 'Comparar les vèrsions de les pâges',
'compare-page1' => 'Pâge 1',
'compare-page2' => 'Pâge 2',
'compare-rev1' => 'Vèrsion 1',
'tog-minordefault' => 'Aanj feranrangen üs "letjen" kääntiakne',
'tog-previewontop' => '"Iarst ans luke" boowen faan\'t wönang tu bewerkin',
'tog-previewonfirst' => 'Bi\'t iarst bewerkin "iarst ans luke" uunwise',
-'tog-nocache' => 'Sidjencache faan di browser deaktiwiare',
'tog-enotifwatchlistpages' => "Schüür mi en e-mail, wan sidjen of datein feranert wurd, diar ik uun't uug behual wal",
'tog-enotifusertalkpages' => 'Bi feranrangen üüb min brüker-diskusjuunssidj en e-mail schüür',
'tog-enotifminoredits' => 'Schüür mi uk bi letj feranrangen faan sidjen an datein en e-mail',
'recentchanges-label-plusminus' => 'Feranert sidjengrate (am soföl bytes)',
'recentchanges-legend-newpage' => "(luke uk bi't [[Special:NewPages|list mä nei sidjen]])",
'recentchanges-legend-plusminus' => "(''±123'')",
-'rcnote' => "Diar {{PLURAL:$1|stäänt det leetst feranrang|stun a leetst '''$1''' feranrangen}} faan a leetst {{PLURAL:$2|dai|'''$2''' daar}}. Stant: $4, am a klook $5.",
'rcnotefrom' => "Diar wurd a feranrangen sant '''$2'''uunwiset (ei muar üs '''$1''' feranrangen).",
'rclistfrom' => 'Bluas feranrangen sant $1 wise.',
'rcshowhideminor' => '$1 letj feranrangen',
'undeletebtn' => 'Weder iinstel',
'undeletelink' => 'wise / weder iinstel',
'undeleteviewlink' => 'Uunluke',
-'undeletereset' => 'Turagsaat',
'undeleteinvert' => 'Ütjwool amdrei',
'undeletecomment' => 'Grünj:',
'undeletedrevisions' => '{{PLURAL:$1|1 werjuun|$1 werjuunen}} weder iinsteld',
'block' => 'Brüker spere',
'unblock' => 'Brüker ei muar spere',
'blockip' => 'IP-adres/brüker spere',
-'blockip-title' => 'Brüker spere',
'blockip-legend' => 'IP-adres/brüker spere',
'blockiptext' => 'Mä detdiar formulaar sperest dü en IP-adres of en brükernööm, so dat faan diar nian feranrangen muar maaget wurd kön.
Det skul bluas föörnimen wurd, am jin wandaalen föörtugungen an uun auerianstemang mä a [[{{MediaWiki:Policy-url}}|brükerreegeln]].
'ipadressorusername' => 'IP-adres of brükernööm:',
'ipbexpiry' => 'Sperdüür:',
'ipbreason' => 'Grünj:',
-'ipbreasonotherlist' => 'Ööder grünj',
'ipbreason-dropdown' => '* Mist brükt spergrünjer
** Skraft wat ferkiards
** Maaget sidjen leesag
'ipbsubmit' => 'IP-adres/brüker spere',
'ipbother' => 'Ööder sperdüür (ingelsk):',
'ipboptions' => '2 stünj:2 hours,1 dai:1 day,3 daar:3 days,1 weg:1 week,2 weg:2 weeks,1 muun:1 month,3 muuner:3 months,6 muuner:6 months,1 juar:1 year,saner aanj:infinite',
-'ipbotheroption' => 'Ööder sperdüür',
-'ipbotherreason' => 'Ööder/noch en grünj:',
'ipbhidename' => 'Brükernööm uun feranrangen an listen fersteeg',
'ipbwatchuser' => "Hual di brüker sin brüker- an diskusjuunssidj uun't uug",
'ipb-disableusertalk' => 'Ferhanre, dat di brüker sin diskusjuunssidj bewerket, so loong hi speret as.',
'sorbsreason' => 'Din IP-adres as uun det DNSBL faan {{SITENAME}} üs eeben proxy apfeerd.',
'sorbs_create_account_reason' => 'Din IP-adres as uun det DNSBL faan {{SITENAME}} üs eeben proxy apfeerd. Dü könst nian brükerkonto maage.',
'xffblockreason' => 'En IP-adres uun di X-Forwarded-For-Header as speret wurden, det as din aanj of det faan dan proxy server. Di spergrünj as: $1',
-'cant-block-while-blocked' => 'Dü könst nian ööder brükern spere, so loong dü salew speret beest.',
'cant-see-hidden-user' => 'Di brüker, diar dü spere wel, as al speret an ferbürgen. Dü heest oober ei det "hideuser"-rocht an könst det sper ei bewerke.',
'ipbblocked' => 'Dü könst ööder brükern ei spere an uk nian speren apheew, auer dü salew speret beest.',
'ipbnounblockself' => 'Dü könst din aanj sper ei apheew.',
'watchlistall2' => 'aaltumaal',
'namespacesall' => 'aaltumaal',
'monthsall' => 'aaltumaal',
-'limitall' => 'åle',
# Email address confirmation
'confirmemail' => 'E-mail-adres gudkään',
'confirmemail_success' => 'Din e-mail-adres as gudkäänd wurden.
Dü könst di nü [[Special:UserLogin|uunmelde]].',
'confirmemail_loggedin' => 'Din e-mail-adres as gudkäänd wurden.',
-'confirmemail_error' => "Bi't gudkäänen faan din e-mail-adres as wat skiaf gingen.",
'confirmemail_subject' => '[{{SITENAME}}] E-mail-adres gudkään',
'confirmemail_body' => 'Gud dai,
# Special:ComparePages
'comparepages' => 'Sidjen ferglik',
-'compare-selector' => 'Sidjenwerjuunen ferglik',
'compare-page1' => 'Sidj 1',
'compare-page2' => 'Sidj 2',
'compare-rev1' => 'Werjuun 1',
'tog-minordefault' => 'Imposte come opzion predeterminade ducj i cambiaments come piçui',
'tog-previewontop' => 'Mostre anteprime parsore dal spazi pe modifiche',
'tog-previewonfirst' => 'Mostre anteprime te prime modifiche',
-'tog-nocache' => 'Disative la memorie cache des pagjinis dal sgarfadôr',
'tog-enotifwatchlistpages' => 'Mandimi une email se la pagjine e gambie',
'tog-enotifusertalkpages' => 'Mandimi une email cuant che la mê pagjine di discussion e gambie',
'tog-enotifminoredits' => 'Mandimi une email ancje pai piçui cambiaments ae pagjine',
'recentchanges-label-minor' => 'Chest al è un piçul cambiament',
'recentchanges-label-bot' => 'Chest cambiament al è stât eseguît di un bot',
'recentchanges-label-unpatrolled' => 'Chest cambiament nol è stât ancjemò verificât',
-'rcnote' => "Ca sot tu cjatis {{PLURAL:$1|l'ultin cambiament|i ultins '''$1''' cambiaments}} al sît {{PLURAL:$2|intes ultimis 24 oris|tes ultimis '''$2''' zornadis}}; i dâts a son inzornâts ai $4 a lis $5.",
'rcnotefrom' => "Ca sot i cambiaments dal '''$2''' (fintremai al '''$1''').",
'rclistfrom' => 'Mostre i ultins cambiaments dal $1',
'rcshowhideminor' => '$1 i piçui cambiaments',
# Block/unblock
'blockip' => 'Bloche utent',
-'blockip-title' => "Bloche l'utent",
'blockip-legend' => "Bloche l'utent",
'ipadressorusername' => 'Direzion IP o non utent:',
'ipbexpiry' => 'Scjadence dal bloc:',
'ipbreason' => 'Reson dal bloc:',
-'ipbreasonotherlist' => 'Altri motîf',
'ipbsubmit' => 'Bloche chest utent',
'ipboptions' => '2 oris:2 hours,1 zornade:1 day,3 zornadis:3 days,1 setemane:1 week,2 setemanis:2 weeks,1 mês:1 month,3 mês:3 months,6 mês:6 months,1 an:1 year,infinît:infinite',
'badipaddress' => 'La direzion IP no je valide',
'tog-minordefault' => 'Feroarings yn it earst oanjaan as tekstwizigings.',
'tog-previewontop' => 'By it neisjen, bewurkingsfjild ûnderoan sette',
'tog-previewonfirst' => 'Lit foarbyld sjen by earste wiziging',
-'tog-nocache' => 'Gjin oerslach brûke',
'tog-enotifwatchlistpages' => 'E-mail my as in side op myn folchlist feroare is.',
'tog-enotifusertalkpages' => 'E-mail my as myn oerlisside feroare wurdt',
'tog-enotifminoredits' => 'E-mail my ek by lytse feroarings fan siden op myn folchlist',
'recentchanges-label-bot' => 'Dizze wiziging is troch in robot makke',
'recentchanges-label-unpatrolled' => 'Dizze wiziging is noch net neisjûn',
'recentchanges-legend-newpage' => '$1 - nije side',
-'rcnote' => "Dit {{PLURAL:$1|is de lêste feroaring|binne de lêste '''$1''' feroarings}} yn de lêste {{PLURAL:$2|dei|'''$2''' dagen}}, fan $4 $5.",
'rcnotefrom' => 'Dit binne de feroarings sûnt <b>$2</b> (maksimaal <b>$1</b>).',
'rclistfrom' => 'Jou nije feroarings, begjinnende mei $1',
'rcshowhideminor' => '$1 tekstwizigings',
'undelete-nodiff' => 'Gjin eardere ferzje fûn.',
'undeletebtn' => 'Weromsette',
'undeletelink' => 'besjen/tebeksette',
-'undeletereset' => 'Leechmeitsje',
'undeleteinvert' => 'Omkearde seleksje',
'undeletecomment' => 'Utlis foar weromsetten:',
'undelete-header' => 'Sjoch [[Special:Log/delete|de wiskloch]] foar resint wiske siden.',
'ipadressorusername' => 'IP Adres of meidoggernamme:',
'ipbexpiry' => 'Ferrint nei:',
'ipbreason' => 'Reden:',
-'ipbreasonotherlist' => 'Oare reden',
'ipbreason-dropdown' => '*Faak foarkommende redenen foar blokkades
** Ferkearde ynformaasje ynfiere
** Fuortheljen fan ynformaasje út siden
'ipbsubmit' => 'Slút dizze meidogger út',
'ipbother' => 'In oare tiid:',
'ipboptions' => '2 oeren:2 hours,1 dei:1 day,3 dagen:3 days,1 wike:1 week,2 wiken:2 weeks,1 moanne:1 month,3 moanne:3 months,6 moanne:6 months,1 jier:1 year,ûnbeheind:infinite',
-'ipbotheroption' => 'oare tiid',
-'ipbotherreason' => 'Oare/eventuele reden:',
'badipaddress' => 'Gjin jildige IP-adres',
'blockipsuccesssub' => 'Utsluting slagge',
'blockipsuccesstext' => 'Meidogger [[Special:Contributions/$1|$1]] is útsletten.<br />
Faaks is de koade ferrûn.',
'confirmemail_success' => 'Jo netpostadres is befêstige. Jo kinne jo no oanmelde en de wiki brûke.',
'confirmemail_loggedin' => 'Jo netpostadres is no befêstige.',
-'confirmemail_error' => 'Der is wat skeefgongen by it fêstlizzen fan jo befêstiging.',
'confirmemail_subject' => 'Netpost-befêstigingskoade foar {{SITENAME}}',
'confirmemail_body' => 'Immen, nei gedachten jo, hat him by {{SITENAME}} oanmelde as "$2", mei dit netpostadres ($1).
'tog-minordefault' => 'Déan mionathruithe de gach aon athrú, mar réamhshocrú',
'tog-previewontop' => 'Cuir an réamhamharc os cionn an bhosca eagair, <br />agus ná cuir é taobh thíos de',
'tog-previewonfirst' => 'Taispeáin réamhamharc don chéad athrú',
-'tog-nocache' => 'Ná sábháil leathanaigh i dtaisce an bhrabhsálaí',
'tog-enotifwatchlistpages' => 'Cuir ríomhphost chugam nuair a athraítear leathanaigh',
'tog-enotifusertalkpages' => 'Cuir ríomhphost chugam nuair a athraítear mo leathanach phlé úsáideora',
'tog-enotifminoredits' => 'Cuir ríomhphost chugam nuair a dhéantar mionathruithe chomh maith',
'recentchanges-label-minor' => 'Mionathrú é seo',
'recentchanges-label-bot' => 'Chomhlíon róbó an t-athrú seo',
'recentchanges-legend-newpage' => '$1 - leathanach nua',
-'rcnote' => "Is {{PLURAL:$1|é seo a leanas <strong>an t-athrú amháin</strong>|iad seo a leanas na <strong>$1</strong> athruithe is déanaí}} {{PLURAL:$2|ar feadh an lae dheireanaigh|ar feadh na '''$2''' lá deireanacha}}, as $5, $4.",
'rcnotefrom' => 'Is iad seo a leanas na hathruithe ó <b>$2</b> (go dti <b>$1</b> taispeánaithe).',
'rclistfrom' => 'Taispeáin athruithe nua ó $1 anuas.',
'rcshowhideminor' => '$1 mionathruithe',
'undeletebtn' => 'Díscrios!',
'undeletelink' => 'féach/díscrios',
'undeleteviewlink' => 'Amharc',
-'undeletereset' => 'Athshocraigh',
'undeleteinvert' => 'Cuir an roghnú bun os cionn',
'undeletecomment' => 'Tuairisc:',
'undeletedrevisions' => '{{PLURAL:$1|Leagan amháin|$1 leagain}} díscriosta',
'ipadressorusername' => 'Seoladh IP nó ainm úsáideora:',
'ipbexpiry' => 'Am éaga',
'ipbreason' => 'Fáth:',
-'ipbreasonotherlist' => 'Fáth eile',
'ipbreason-dropdown' => '*Fáthanna coitianta
** Loitiméaracht
** Naisc turscar
'ipbsubmit' => 'Coisc an úsáideoir seo',
'ipbother' => 'Méid eile ama',
'ipboptions' => '2 uair:2 hours,1 lá amháin:1 day,3 lá:3 days,1 sheachtain amháin:1 week,2 sheachtain:2 weeks,1 mhí amháin:1 month,3 mhí:3 months,6 mhí:6 months,1 bhliain amháin:1 year,gan teorainn:infinite',
-'ipbotheroption' => 'eile',
'badipaddress' => 'Níl aon úsáideoir ann leis an ainm seo.',
'blockipsuccesssub' => "D'éirigh leis an cosc",
'blockipsuccesstext' => 'Choisceadh [[Special:Contributions/$1|$1]].
'watchlistall2' => 'an t-iomlán',
'namespacesall' => 'iad uile',
'monthsall' => 'gach mí',
-'limitall' => 'iad uile',
# Email address confirmation
'confirmemail' => 'Deimhnigh do ríomhsheoladh',
'confirmemail_invalid' => "Cód deimhnithe neamh-bhailí. B'fhéidir gur chuaidh an cód as feidhm.",
'confirmemail_success' => 'Deimhníodh do ríomhsheoladh. Is féidir leat logáil isteach anois agus sult a bhaint as an vicí!',
'confirmemail_loggedin' => 'Deimhníodh do sheoladh ríomhphoist.',
-'confirmemail_error' => 'Tharlaigh botún éigin le sabháil do dheimhniú.',
'confirmemail_subject' => 'Deimhniú do ríomhsheoladh ar an {{SITENAME}}',
'confirmemail_body' => 'Chláraigh duine éigin (tusa is dócha) an cuntas "$2" ar {{SITENAME}}
agus rinneadh é seo ón seoladh IP $1, ag úsáid an ríomhsheolta seo.
'tog-minordefault' => "Hepsi diişmäkleri 'küçük diişmäk' olarak nışanna",
'tog-previewontop' => 'Öni siiri diiştirmää penceräsi üstünde göster',
'tog-previewonfirst' => 'İlk kerä diiştirär känä ön siiri göster',
-'tog-nocache' => 'Sayfaları keş etmää yasakla',
'tog-enotifwatchlistpages' => 'Sayfa diişär känä bana e-mail gönder',
'tog-enotifusertalkpages' => 'Kullanıcı sayfamda diişmäk olar kana bana e-mail gönder',
'tog-enotifminoredits' => 'Sayfalardaki küçük diişmäklerdä dä bana e-mail gönder',
'recentchanges' => 'Bitki diişikmäklär',
'recentchanges-legend' => 'Bitki diişlär opţiyaları',
'recentchanges-feed-description' => 'Bu lentalan en bitki diişmäkleri vikiyä yaz.',
-'rcnote' => "$4 datası hem saat $5 için bitki {{PLURAL:$2|1 gündä|'''$2''' gündä}} yapılan, {{PLURAL:$1|'''1'''diiş|'''$1''' diiş}}",
'rcnotefrom' => "'''$2''' datasınnan büüne kadar yapılan diişmäkler aşaada (en çok '''$1''' yazı gösteriler).",
'rclistfrom' => 'Göster diişmäkleri ani $1 datasından beeri yapıldı',
'rcshowhideminor' => 'küçük diişilmäkläri $1',
'tog-minordefault' => '全部𠮶编辑设成细修改',
'tog-previewontop' => '到编辑框𠮶上首显示预览',
'tog-previewonfirst' => '头道修改时显示预览',
-'tog-nocache' => '停用页面𠮶缓存',
'tog-enotifwatchlistpages' => '偶监视框𠮶页面一有改动发电子邮件到偶',
'tog-enotifusertalkpages' => '偶对话框𠮶页面一有改动发email到偶',
'tog-enotifminoredits' => '有细𠮶改动都要发email到偶',
'recentchanges-label-minor' => '个系只细修改',
'recentchanges-label-bot' => '个只编辑系机器人舞𠮶',
'recentchanges-label-unpatrolled' => '个只编辑冇拕查过',
-'rcnote' => "下底系到$4 $5,个'''$2'''日𠮶'''$1'''回改动:",
'rcnotefrom' => "底下系自'''$2'''𠮶更改(顶多显示'''$1'''):",
'rclistfrom' => '显示自$1后𠮶新改动',
'rcshowhideminor' => '$1细编辑',
'undeletebtn' => '恢复',
'undeletelink' => '还原',
'undeleteviewlink' => '望吖',
-'undeletereset' => '设过',
'undeletecomment' => '评论:',
'undeletedrevisions' => '$1只修改版本恢复正嘞',
'undeletedrevisions-files' => '$1只修改版本同$2只档案恢复正嘞',
'ipadressorusername' => 'IP地址或用户名:',
'ipbexpiry' => '期限:',
'ipbreason' => '原因:',
-'ipbreasonotherlist' => '别𠮶原因',
'ipbreason-dropdown' => '*一般𠮶封锁原因
** 紧编写假𠮶内容
** 删卟文章内容
'ipbsubmit' => '封锁个只地址',
'ipbother' => '别𠮶时间:',
'ipboptions' => '两个钟头:2 hours,一日:1 day,三日:3 days,一个礼拜:1 week,两个礼拜:2 weeks,一个月:1 month,三个月:3 months,六个月:6 months,一年:1 year,一世:infinite',
-'ipbotheroption' => '别𠮶',
-'ipbotherreason' => '别𠮶/附加原因:',
'ipbhidename' => '封锁日志、活跃封锁列表同用户列表里头弆到用户名',
'badipaddress' => 'IP位置伓对。',
'blockipsuccesssub' => '封锁正嘞',
'confirmemail_needlogin' => '倷要$1去确认倷𠮶email地址。',
'confirmemail_success' => '倷𠮶邮箱已得到嘞确认。嘎倷能登得正入同到使用个只网站。',
'confirmemail_loggedin' => '倷𠮶email地址已得到确认。',
-'confirmemail_error' => '确认过程出错。',
'confirmemail_subject' => '{{SITENAME}}电子邮件地址确认',
'confirmemail_body' => 'IP地址$1𠮶用户(可能系倷)到{{SITENAME}}注册嘞帐户"$2",并一同用嘞倷𠮶email地址。
'tog-minordefault' => '全部嗰編輯設成細修改',
'tog-previewontop' => '到編輯框嗰上首顯示預覽',
'tog-previewonfirst' => '頭道修改時顯示預覽',
-'tog-nocache' => '停用頁面嗰緩存',
'tog-enotifwatchlistpages' => '我監視框嗰頁面一有改動發電子郵件到我',
'tog-enotifusertalkpages' => '我對話框嗰頁面一有改動發email到我',
'tog-enotifminoredits' => '有細嗰改動都要發email到我',
'recentchanges-label-minor' => '箇係隻細修改',
'recentchanges-label-bot' => '箇隻編輯係機器人舞嗰',
'recentchanges-label-unpatrolled' => '箇隻編輯冇拕查過',
-'rcnote' => "下底係到$4 $5,箇'''$2'''日嗰'''$1'''回改動:",
'rcnotefrom' => "底下係自'''$2'''嗰更改(頂多顯示'''$1'''):",
'rclistfrom' => '顯示自$1後嗰新改動',
'rcshowhideminor' => '$1細編輯',
'undeletebtn' => '恢復',
'undeletelink' => '還原',
'undeleteviewlink' => '望吖',
-'undeletereset' => '設過',
'undeletecomment' => '評論:',
'undeletedrevisions' => '$1隻修改版本還原正哩',
'undeletedrevisions-files' => '$1隻修改版本同$2隻檔案還原正哩',
'ipadressorusername' => 'IP地址或用戶名:',
'ipbexpiry' => '期限:',
'ipbreason' => '原因:',
-'ipbreasonotherlist' => '別嗰原因',
'ipbreason-dropdown' => '*一般嗰封鎖原因
** 緊編寫假嗰內容
** 刪卟文章內容
'ipbsubmit' => '封鎖箇隻地址',
'ipbother' => '別嗰時間:',
'ipboptions' => '兩個鍾頭:2 hours,一日:1 day,三日:3 days,一個禮拜:1 week,兩個禮拜:2 weeks,一個月:1 month,三個月:3 months,六個月:6 months,一年:1 year,一世:infinite',
-'ipbotheroption' => '別嗰',
-'ipbotherreason' => '別嗰/附加原因:',
'ipbhidename' => '封鎖日誌、活躍封鎖列表同用戶列表裡頭弆到用戶名',
'badipaddress' => 'IP位置伓對。',
'blockipsuccesssub' => '封鎖正哩',
'confirmemail_needlogin' => '汝要$1去確認汝嗰email地址。',
'confirmemail_success' => '汝嗰郵箱已得到哩確認。如今汝能登得正入同到使用箇隻網站。',
'confirmemail_loggedin' => '汝嗰email地址已得到確認。',
-'confirmemail_error' => '確認過程出錯。',
'confirmemail_subject' => '{{SITENAME}}電子郵件地址確認',
'confirmemail_body' => 'IP地址$1嗰用戶(可能係倷)到{{SITENAME}}註冊嘞帳戶"$2",並一同用嘞倷嗰email地址。
'tog-minordefault' => 'Comharraich gach mùthadh mar mhùthadh beag a ghnàth',
'tog-previewontop' => "Nochd an ro-shealladh os cionn a' bhogsa deasachaidh",
'tog-previewonfirst' => "Nochd an ro-shealladh nuair a nithear a' chiad deasachadh",
-'tog-nocache' => 'Cuir à comas tasgadh nan duilleagan',
'tog-enotifwatchlistpages' => "Cuir post-dealain thugam nuair a mhùthar duilleag a tha air a' chlàr-fhaire agam",
'tog-enotifusertalkpages' => 'Cuir post-dealain thugam nuair a mhùthaichear duilleag mo chonaltraidh',
'tog-enotifminoredits' => 'Cuir post-dealain thugam nuair a nithear mùthadh beag air duilleagan cuideachd',
'recentchanges-label-minor' => 'Seo mùthadh beag',
'recentchanges-label-bot' => "'S e bot a rinn an deasachadh seo",
'recentchanges-label-unpatrolled' => 'Cha deach freiceadan tron deasachadh seo fhathast',
-'rcnote' => 'Tha {{PLURAL:$1|an $1 mhùthadh|an $1 mhùthadh|na $1 mùthaidhean|na $1 mùthadh}} mu dheireadh anns na $2 {{PLURAL:$2|latha|latha|làithean|latha}} mu dheireadh, mar a bha iad $5, $4.',
'rcnotefrom' => "Gheibhear na mùthaidhean a-mach o '''$2''' (gu ruige '''$1''') gu h-ìosal.",
'rclistfrom' => 'Seall na mùthaidhean ùra a-mach o $1',
'rcshowhideminor' => '$1 mùthaidhean beaga',
'tog-minordefault' => 'Marcar por omisión todas as edicións como pequenas',
'tog-previewontop' => 'Mostrar a vista previa antes da caixa de edición',
'tog-previewonfirst' => 'Mostrar a vista previa na primeira edición',
-'tog-nocache' => 'Desactivar a memoria caché do navegador',
'tog-enotifwatchlistpages' => 'Enviádeme unha mensaxe de correo electrónico cando unha páxina ou un ficheiro da miña lista de vixilancia sufra un cambio',
'tog-enotifusertalkpages' => 'Enviádeme unha mensaxe de correo electrónico cando a miña páxina de conversa cambie',
'tog-enotifminoredits' => 'Enviádeme tamén unha mensaxe de correo electrónico cando se produzan edicións pequenas nas páxinas ou nos ficheiros',
'recentchanges-label-plusminus' => 'O tamaño da páxina variou este número de bytes',
'recentchanges-legend-newpage' => '(véxase tamén a [[Special:NewPages|lista de páxinas novas]])',
'recentchanges-legend-plusminus' => "(''±123'')",
-'rcnote' => "A continuación {{PLURAL:$1|móstrase '''1''' cambio|móstranse os últimos '''$1''' cambios}} {{PLURAL:$2|no último día|nos últimos '''$2''' días}} ata o $4 ás $5.",
'rcnotefrom' => "A continuación móstranse os cambios feitos desde o '''$3''' ás '''$4''' (móstranse '''$1''' como máximo).",
'rclistfrom' => 'Mostrar os cambios novos desde o $1',
'rcshowhideminor' => '$1 as edicións pequenas',
'undeletebtn' => 'Restaurar',
'undeletelink' => 'ver/restaurar',
'undeleteviewlink' => 'ver',
-'undeletereset' => 'Limpar',
'undeleteinvert' => 'Inverter a selección',
'undeletecomment' => 'Motivo:',
'undeletedrevisions' => '$1 {{PLURAL:$1|revisión restaurada|revisións restauradas}}',
'block' => 'Bloquear un usuario',
'unblock' => 'Desbloquear un usuario',
'blockip' => 'Bloquear o usuario',
-'blockip-title' => 'Bloquear un usuario',
'blockip-legend' => 'Bloquear un usuario',
'blockiptext' => 'Use o seguinte formulario para bloquear o acceso de escritura desde un enderezo IP ou para bloquear un usuario específico.
Isto debería facerse só para previr vandalismo, e de acordo coa [[{{MediaWiki:Policy-url}}|política e normas]] vixentes.
'ipadressorusername' => 'Enderezo IP ou nome de usuario:',
'ipbexpiry' => 'Duración:',
'ipbreason' => 'Motivo:',
-'ipbreasonotherlist' => 'Outro motivo',
'ipbreason-dropdown' => '*Motivos frecuentes para bloquear
** Inserir información falsa
** Eliminar o contido de páxinas
'ipbsubmit' => 'Bloquear este usuario',
'ipbother' => 'Outra duración:',
'ipboptions' => '2 horas:2 hours,1 día:1 day,3 días:3 days,1 semana:1 week,2 semanas:2 weeks,1 mes:1 month,3 meses:3 months,6 meses:6 months,1 ano:1 year,para sempre:infinite',
-'ipbotheroption' => 'outra',
-'ipbotherreason' => 'Outro motivo:',
'ipbhidename' => 'Agochar o nome de usuario nas edicións e listas',
'ipbwatchuser' => 'Vixiar a páxina de usuario e a de conversa deste usuario',
'ipb-disableusertalk' => 'Impedir que o usuario edite a súa propia páxina de conversa mentres dure o bloqueo',
'sorbs_create_account_reason' => 'O seu enderezo IP está rexistrado como un proxy aberto na lista DNSBL usada por {{SITENAME}}.
Polo tanto, non pode crear unha conta',
'xffblockreason' => 'Un enderezo IP presente na cabeceira X-Forwarded-For, ou ben seu ou ben dun servidor proxy que está utilizando, foi bloqueado. O motivo do bloqueo orixinal é: $1',
-'cant-block-while-blocked' => 'Non pode bloquear outros usuarios mentres vostede estea bloqueado.',
'cant-see-hidden-user' => 'O usuario que intenta bloquear xa foi bloqueado e agochado. Dado que non ten o dereito necesario para agochar usuarios, non pode ver ou editar o bloqueo do usuario.',
'ipbblocked' => 'Non pode bloquear ou desbloquear outros usuarios porque vostede está bloqueado',
'ipbnounblockself' => 'Non ten os permisos necesarios para desbloquearse a si mesmo',
'watchlistall2' => 'todo',
'namespacesall' => 'todos',
'monthsall' => 'todos',
-'limitall' => 'todas',
# Email address confirmation
'confirmemail' => 'Confirmar o enderezo de correo electrónico',
'confirmemail_needlogin' => 'Debe $1 para confirmar o seu enderezo de correo electrónico.',
'confirmemail_success' => 'Confirmouse o seu enderezo de correo electrónico. Agora xa pode [[Special:UserLogin|acceder ao sistema]] e facer uso do wiki.',
'confirmemail_loggedin' => 'Xa se confirmou o seu enderezo de correo electrónico.',
-'confirmemail_error' => 'Houbo un problema ao gardar a súa confirmación.',
'confirmemail_subject' => 'Confirmación do enderezo de correo electrónico de {{SITENAME}}',
'confirmemail_body' => 'Alguén, probablemente vostede, desde o enderezo IP $1,
rexistrou a conta "$2" con este enderezo de correo electrónico en {{SITENAME}}.
'imgmultigo' => 'Ir!',
'imgmultigoto' => 'Ir á páxina $1',
+# Language selector for translatable SVGs
+'img-lang-default' => '(lingua por defecto)',
+'img-lang-info' => 'Renderizar esta imaxe en $1 $2.',
+'img-lang-go' => 'Mostrar',
+
# Table pager
'ascending_abbrev' => 'asc',
'descending_abbrev' => 'desc',
# Special:ComparePages
'comparepages' => 'Comparar páxinas',
-'compare-selector' => 'Comparar as revisións de dúas páxinas',
'compare-page1' => 'Páxina 1',
'compare-page2' => 'Páxina 2',
'compare-rev1' => 'Revisión 1',
'recentchanges-label-minor' => 'Ho ek dhaktto sudar',
'recentchanges-label-bot' => "Hem bodlop eka robotan kel'lem",
'recentchanges-label-unpatrolled' => 'Hem sudharop azun topasunk nam',
-'rcnote' => "Sokoil {{PLURAL:$1|dilelim nimannim '''1''' bodlopam| '''$1''' bodlopam}} {{PLURAL:$2|xevotchea disan|xevottchim '''$2''' disanim}}, $5, $4 porian.",
'rcnotefrom' => "Sokoil '''$2''' savn zalelim bodolpam dileant ( '''$1'''meren dakhoileant).",
'rclistfrom' => '$1 savn suru zatelim novim bodolpam dakhoi',
'rcshowhideminor' => '$1 dhaktteo sudarnneo',
# Block/unblock
'ipboptions' => '2 voram:2 hours,1 dis:1 day,3 dis:3 days,1 satollo:1 week,2 satolle:2 weeks,1 mhoino:1 month,3 mhoine:3 months,6 mhoine:6 months,1 voros:1 year,sasnnank:infinite',
-'ipbotherreason' => 'Dusrem/aniki karon:',
'ipblocklist' => 'Addhailele vapuddpi',
'blocklink' => 'addavnnni',
'unblocklink' => 'Addavnni kadd',
'tog-minordefault' => 'Σημαίνειν ὡς ἥττονας ἁπάσας τὰς μεταγραφὰς προκαθωρισμένως',
'tog-previewontop' => 'Δεικνύναι τὸ προεπισκοπεῖν πρὸ τοῦ κυτίου μεταγραφῆς',
'tog-previewonfirst' => 'Τῆς πρώτης μεταγραφῆς, δεικνύναι τὸ προεπισκοπεῖν',
-'tog-nocache' => 'Ἀπενεργοποιεῖν ἀποτεταμιευμένην μνήμην',
'tog-enotifwatchlistpages' => 'Ἄγγειλόν μοι ὅτε δέλτος τις ἐν τῇ ἐφοροδιαλογῇ μου μεταβάλληται',
'tog-enotifusertalkpages' => 'Ἄγγειλόν μοι ὅτε ἡ δέλτος μου διαλέξεως χρωμένου μεταβάλληται',
'tog-enotifminoredits' => 'Ἄγγειλόν μοι ἐπἴσης τὰς ἥττονας ἀλλαγὰς δέλτων',
'recentchanges-label-bot' => 'Ἥδε ἡ μεταγραφὴ ἐτελέσθη ὑπὸ αὐτομάτου τινός',
'recentchanges-label-unpatrolled' => 'Ἥδε ἡ μεταγραφὴ μὴ ἐλεγμένη ἐστίν',
'recentchanges-legend-newpage' => '$1 - νέα δέλτος',
-'rcnote' => "Κατωτέρω {{PLURAL:$1|ἐστὶ '''1''' ἀλλαγὴ|εἰσὶν αἱ τελευταῖαι '''$1''' ἀλλαγαὶ}} ἐν {{PLURAL:$2|τῇ τελευταίᾳ ἡμέρᾳ|ταῖς τελευταίαις '''$2''' ἡμέραις}}, ἕως καὶ $5, $4.",
'rcnotefrom' => "Ἰδοῦ αἱ ἀλλαγαὶ ἐκ τοῦ '''$2''' (ἕως τὸ '''$1''').",
'rclistfrom' => 'Δεικνύναι νέας ἀλλαγάς. Ἐκκίνησις ἐκ τοῦ $1',
'rcshowhideminor' => '$1 μικραὶ μεταβολαὶ',
'undeletebtn' => 'Ἀνορθοῦν',
'undeletelink' => 'ὁρᾶν/ἀποκαθιστάναι',
'undeleteviewlink' => 'ὁρᾶν',
-'undeletereset' => 'Ἐπαναθέτειν',
'undeleteinvert' => 'Ἀναστρέφειν τὴν ἐπιλογήν',
'undeletecomment' => 'Αἰτία:',
'undeletedrevisions' => '{{PLURAL:$1|1 ἀναθεωρήσις|$1 ἀναθεωρήσεις}} ἀποκατεστάθησαν',
# Block/unblock
'blockip' => 'Ἀποκλῄειν τόνδε τὸν χρώμενον',
-'blockip-title' => 'Φράττειν χρώμενον',
'blockip-legend' => 'Φράττειν χρώμενον',
'ipadressorusername' => 'Διεύθυνσις IP ἢ ὄνομα χρωμένου:',
'ipbexpiry' => 'Λῆξις:',
'ipbreason' => 'Αἰτία:',
-'ipbreasonotherlist' => 'Ἑτέρα αἰτία',
'ipbreason-dropdown' => '*Κοιναὶ αἰτίαι φραγῆς
** Εἰσαγωγὴ ψευδοῦς πεύσεως
** Ἁφαίρεσις τοῦ περιεχομένου τῶν δέλτων
'ipbsubmit' => 'Φράττειν τόνδε τὸν χρώμενον',
'ipbother' => 'Ἄλλη ὥρα:',
'ipboptions' => '2 ὥραι:2 hours,1 ἡμέρα:1 day,3 ἡμέραι:3 days,1 ἑβδομάς:1 week,2 ἑβδομάδες:2 weeks,1 μήν:1 month,3 μῆνες:3 months,6 μῆνες:6 months,1 ἔτος:1 year,ἐπἄπειρον:infinite',
-'ipbotheroption' => 'ἄλλη',
-'ipbotherreason' => 'Πρόσθετος/ἄλλη αἰτία:',
'ipbhidename' => 'Κρύπτειν τὸ ὄνομα χρωμένου ἐν μεταγραφαῖς καὶ διαλογαῖς',
'ipbwatchuser' => 'Ἐφορᾶν τοῦδε τοῦ χρωμένου τὰς δέλτους χρωμένου καὶ διαλέξεως',
'ipb-change-block' => 'Ἐπαναφράττειν τόνδε τὸν χρώμενον μετὰ τῶνδε τῶν ῥυθμίσεων',
Εἰκότως ἀποπεφραγμένη ἤδη ἐστίν.',
'ip_range_invalid' => 'Ἄκυρον IP-εὖρος.',
'proxyblocker' => 'Ἐργαλεῖον φραγῆς διακομιστῶν',
-'cant-block-while-blocked' => 'Οὐκ ἔξεστί σοι φράττειν ἑτέρους χρωμένους ἐν ὅσῳ πεφραγμένος εἶ.',
# Developer tools
'lockdb' => 'Φράττειν βάσιν δεδομένων',
'watchlistall2' => 'ἅπασαι',
'namespacesall' => 'ἅπασαι',
'monthsall' => 'ἅπαντες',
-'limitall' => 'ἅπασαι',
# Email address confirmation
'confirmemail' => 'Ἐπιβεβαίωσον διεύθυνσιν ἠλ-ταχυδρομείου',
'confirmemail_success' => 'Ἡ ἠλ-διεύθυνσίς σου ἐπιβεβαιθεῖσα ἐστίν.
Ἔξεστί σοι [[Special:UserLogin|συνδεῖσθαι]] καὶ χρῆσθαι τῷ βίκι.',
'confirmemail_loggedin' => 'Ἡ ἠλ-διεύθυνσίς σου οὐκ ἐστι ἐπιβεβαιωμένη.',
-'confirmemail_error' => 'Σφάλμα τι τοῦ σῴζειν τὴν ἐπιβεβαίωσίν σου.',
'confirmemail_subject' => 'ἐπιβεβαίωσις διευθύνσεως ἠλ.-ταχυδρομείου τοῦ {{SITENAME}}',
'confirmemail_body' => 'Τίς (πιθανῶς σύ, ἐκ τῆς IP-διευθύνσέως $1) ἔχων τήνδε τὴν ἠλ-διεύθυνσιν κατέγραψεν λογισμόν τινα "$2" ἐν τῷ ἱστοτόπῳ {{SITENAME}}. Διὰ τὸ ἐπιβεβαιώσειν τὴν ἐτεὴ κατοχὴ τοῦ λογισμοῦ χρωμένου ὑπ\' ἐσοῦ καὶ διὰ τὸ ἐνεργοποιἠσειν τὰς δυνατότητας ἠλ-ταχυδρομείου τοῦ {{SITENAME}}, ἀκολούθησον τόνδε τὸν σύνδεσμον:
'tog-minordefault' => 'Alli dyni Änderigen als «chlyni Änderige» markiere',
'tog-previewontop' => 'Vorschou vor em Editierfänschter aazeige',
'tog-previewonfirst' => 'Vorschou aazeige bim erschten Editiere',
-'tog-nocache' => 'Syte-Cache vum Browser deaktiviere',
'tog-enotifwatchlistpages' => 'Schick mer e Mail, wänn e Syte oder e Datei gänderet wird, wun i beobachte due',
'tog-enotifusertalkpages' => 'Benachrichtigungsmails bi Änderigen a dyne Benutzersyte',
'tog-enotifminoredits' => 'Au bi chlaine Änderige an Syte oder Dateie ne Mail schicke',
'recentchanges-label-bot' => 'Die Bearbeitig isch dur e Bott uusgfiert wore',
'recentchanges-label-unpatrolled' => 'Die Bearbeitig isch nonig vun eme Fäldhieter aagluegt wore',
'recentchanges-legend-newpage' => '$1 - neji Syte',
-'rcnote' => "Azeigt {{PLURAL:$1|wird '''1''' Änderig|wärde di letschte '''$1''' Änderige}} {{PLURAL:$2|vom letschte Tag|i de letschte '''$2''' Täg}} (Stand: $4, $5)",
'rcnotefrom' => 'Des sin d Ändrige syter <b>$2</b> (bis zem <b>$1</b> zeigt).',
'rclistfrom' => '<small>Nöji Änderige ab $1 aazeige (UTC)</small>',
'rcshowhideminor' => 'Chlynigkeite $1',
'undeletebtn' => 'Widerhärstelle',
'undeletelink' => 'aaluege/widerhärstelle',
'undeleteviewlink' => 'aaluege',
-'undeletereset' => 'Abbräche',
'undeleteinvert' => 'Uswahl umchehre',
'undeletecomment' => 'Grund:',
'undeletedrevisions' => '{{PLURAL:$1|ei Revision|$1 Revisione}} wider zruckgholt.',
'block' => 'Benutzer sperre',
'unblock' => 'Benutzer frejgee',
'blockip' => 'Däm Binutzer d Bearbeitigsrächt furtnee',
-'blockip-title' => 'Benutzer sperre',
'blockip-legend' => 'IP-Adräss/Benutzer sperre',
'blockiptext' => 'Nimm des Formular go ne Benutzer oder e IP-Adräss sperre.
Des sott numme erfolge go Vandalismus verhindere un in Ibereinstimmig mit in dr [[{{MediaWiki:Policy-url}}|Leitlinie]]. Bitte gib au ne Grund fi d Sperri aa (z. B. indäm du einzel ni Syte zitiersch, wu vandaliert wore sin).',
'ipadressorusername' => 'IP-Adräss oder Benutzername:',
'ipbexpiry' => 'Sperrduur:',
'ipbreason' => 'Grund:',
-'ipbreasonotherlist' => 'Anderi Begrindig',
'ipbreason-dropdown' => '* Allgmeini Sperrgrind
** Lesche vu Syte
** Aalege vu bledsinnige Syte
'ipbsubmit' => 'IP-Adräss/Benutzer sperre',
'ipbother' => 'Anderi Duur (englisch):',
'ipboptions' => '2 Stunde:2 hours,1 Tag:1 day,3 Täg:3 days,1 Wuche:1 week,2 Wuche:2 weeks,1 Monet:1 month,3 Monet:3 months,6 Monet:6 months,1 Johr:1 year,Fir immer:infinite',
-'ipbotheroption' => 'Anderi Duur',
-'ipbotherreason' => 'Anderi/zuesätzligi Begrindig:',
'ipbhidename' => 'Benutzername in dr Lischt vu aktive Sperrine un im Benutzerverzeichnis verstecke.',
'ipbwatchuser' => 'Benutzer(diskussions)syte beobachte',
'ipb-disableusertalk' => 'Dää Benutzer dra hindere syy eigeni Diskussionssyte z bearbeite, solang er gsperrt isch',
'proxyblockreason' => 'Dyni IP-Adrässe isch gsperrt wore, wel si ne ufige Proxy isch. Bitte kontaktier Dyyn Internet-Provider oder Dyni Systemadministratore un informier si iber des Sicherheitsproblem.',
'sorbsreason' => 'D IP-Adräss isch in dr DNSBL vu {{SITENAME}} as uffige PROXY glischtet.',
'sorbs_create_account_reason' => 'D IP-Adräss isch in dr DNSBL vu {{SITENAME}} as uffige PROXY glischtet. S Aalege vu neije Benutzer isch nit megli.',
-'cant-block-while-blocked' => 'Du derfsch kei anderi Benutzer sperre, derwylscht Du sälber gsperrt bisch.',
'cant-see-hidden-user' => 'Dr Benutzer, wu Du versuechsch z sperre, isch scho gsperrt un versteckt wore. Du chasch d Sperri vu däm Benutzer nit säh oder bearbeite, wel du s „hideuser“-Rächt nit hesch.',
'ipbblocked' => 'Du chasch keini andere Benutzer sperre oder entsperre, wel Du sälber gsperrt bisch',
'ipbnounblockself' => 'Du derfsch di nit sälber entsperre',
'watchlistall2' => 'alli',
'namespacesall' => 'alli',
'monthsall' => 'alli',
-'limitall' => 'alli',
# Email address confirmation
'confirmemail' => 'Bstätigung vo Ihre E-Poscht-Adräss',
'confirmemail_needlogin' => 'Du muesch dich $1, zume dyni E-Mail-Adress bstätige.',
'confirmemail_success' => 'Dyni E-Mail-Adräss isch bstätiget worde. Du chasch di jitz aamälde.',
'confirmemail_loggedin' => 'Dyni E-Mail-Adräss isch jitz bstätigt.',
-'confirmemail_error' => 'Öbis isch bim Bestätige vo dynrer E-Mail-Adress schief gloffe.',
'confirmemail_subject' => '{{SITENAME}} E-Mail-Adrässbstätigung',
'confirmemail_body' => 'Salü
# Special:ComparePages
'comparepages' => 'Syte verglyyche',
-'compare-selector' => 'Syteversione verglyyche',
'compare-page1' => 'Syte 1',
'compare-page2' => 'Syte 2',
'compare-rev1' => 'Version 1',
'tog-minordefault' => 'બધા નવા ફેરફારો નાના તરીકે માર્ક કરો.',
'tog-previewontop' => 'ફેરફાર પેટી પહેલાં પૂર્વાલોકન દર્શાવો',
'tog-previewonfirst' => 'પ્રથમ ફેરફાર વખતે પૂર્વાલોકન બતાવો',
-'tog-nocache' => 'બ્રાઉઝરનું પેજ કેશિંગ અસક્રિય કરો',
'tog-enotifwatchlistpages' => 'મારી ધ્યાનસૂચિમાંનું પાનુ અને ફાઇલમાં ફેરફાર થાય ત્યારે મને ઇ-મેલ મોકલો',
'tog-enotifusertalkpages' => 'મારી ચર્ચાનાં પાનામાં ફેરફાર થાય ત્યારે મને ઇમેલ મોકલો',
'tog-enotifminoredits' => 'પાનાં અને ફાઇલ્સમાં નાનાં ફેરફાર થાય તો પણ મને ઇમેલ મોકલો',
'recentchanges-label-minor' => 'આ એક નાનો સુધારો છે.',
'recentchanges-label-bot' => 'આ ફેરફાર બોટ દ્વારા કરાયો છે',
'recentchanges-label-unpatrolled' => 'આ ફેરફાર હજી ચકાસાયો નથી',
-'rcnote' => "નીચે $5, $4 સુધીમાં અને તે પહેલાનાં '''$2''' દિવસમાં {{PLURAL:$1| થયેલો '''1''' માત્ર ફેરફાર|થયેલાં છેલ્લા '''$1''' ફેરફારો}} દર્શાવ્યાં છે .",
'rcnotefrom' => "નીચે '''$2'''થી થયેલાં '''$1''' ફેરફારો દર્શાવ્યાં છે.",
'rclistfrom' => '$1 બાદ થયેલા નવા ફેરફારો બતાવો',
'rcshowhideminor' => 'નાના ફેરફારો $1',
'undeletebtn' => 'પાછું વાળો',
'undeletelink' => 'જુઓ/પાછુ વાળો',
'undeleteviewlink' => 'જુઓ',
-'undeletereset' => 'ફરી ગોઠવો',
'undeleteinvert' => 'પસંદગી ઉલટાવો',
'undeletecomment' => 'કારણ:',
'undeletedrevisions' => '{{PLURAL:$1|૧ સંપાદન|$1 સંપાદનો}} પુન સ્થાપિત કરાયા',
'block' => 'સભ્ય પર પ્રતિબંધ મુકો',
'unblock' => 'સભ્ય પરનો પ્રતિબંધ હટાવો',
'blockip' => 'સભ્ય પર પ્રતિબંધ મુકો',
-'blockip-title' => 'સભ્ય પર પ્રતિબંધ મુકો',
'blockip-legend' => 'સભ્ય પર પ્રતિબંધ મુકો',
'blockiptext' => 'કોઈ ચોક્કસ IP સરનામું કે સભ્યના લેખન યોગદાન પર પ્રતિબંધ મુકવા નીચેનું ફોર્મ વાપરો.
તેનો ઉપયોગ માત્ર ભાંગફોડિયા પ્રવૃત્તિઓને રોકવા અને [[{{MediaWiki:Policy-url}}|નીતિ]] અનુસાર જ હોવો જોઈએ.
'ipadressorusername' => 'IP સરનામું અથવા સભ્યનામ:',
'ipbexpiry' => 'સમાપ્તિ:',
'ipbreason' => 'કારણ:',
-'ipbreasonotherlist' => 'અન્ય કારણ',
'ipbreason-dropdown' => '*સામાન્ય પ્રતિબંધ કારણો
** ખોટી માહિતી ઉમેરાઈ
** પાનામાંથી માહિતી ભૂંસી નાંખી
'ipbsubmit' => 'આ સભ્ય પર પ્રતિબંધ મૂકો',
'ipbother' => 'અન્ય સમય:',
'ipboptions' => '૨ કલાક:2 hours,૧ દિવસ:1 day,૩ દિવસ:3 days,૧ સપ્તાહ:1 week,૨ સપ્તાહ:2 weeks,૧ માસ:1 month,૩ માસ:3 months,૬ માસ:6 months,૧ વર્ષ:1 year,અમર્યાદ:infinite',
-'ipbotheroption' => 'અન્ય',
-'ipbotherreason' => 'અન્ય/વધારાનું કારણ:',
'ipbhidename' => 'ફેરફારો અને યાદિમાંથી સભ્ય નામ છુપાવો',
'ipbwatchuser' => 'આ સભ્યના સભ્ય અને ચર્ચા પાના જુઓ',
'ipb-disableusertalk' => 'પ્રતિબંધ ઉઠે નહી ત્યાં સુધી આ સભ્યને પોતાનાં ચર્ચાનાં પાનાં પર ફેરફાર કરતાં રોકો',
'sorbsreason' => '{{SITENAME}} દ્વારા વપરાયેલા DNSBL માં તમારું IP સરનામું એક ખુલ્લી પ્રોક્સી તરીકે નોંધાયું છે.',
'sorbs_create_account_reason' => '{{SITENAME}} માં વપરાતા DNSBL દ્વારા તમારા IP સરનામાને ખુલી પ્રોક્સી જણાવાઇ છે.
તમે ખાતાની રચના નહીં કરી શકો.',
-'cant-block-while-blocked' => 'જ્યારે તમે પોતે પ્રતિબંધિત હોવ ત્યારે અન્ય સભ્યોને પ્રતિબંધિત ન કરી શકો',
'cant-see-hidden-user' => 'તમે જે સભ્ય પર રોક લગાવવા પ્રયત્ન કરો છો તે ના પર પહેલેથી રોક લગાવાયેલી છે.
તમને સભ્ય છુપાવો / બતાવોના અધિકારો ન હોવાથી, તમે સભ્ય પર રોક લગાવેલ તે નોંધ જોઇ નથી શકતા.',
'ipbblocked' => 'તમે અન્ય સભ્યોને પ્રતિબંધિત ન કરી શકો, તમે પોતે પ્રતિબંધિત છો.',
'watchlistall2' => 'બધા',
'namespacesall' => 'બધા',
'monthsall' => 'બધા',
-'limitall' => 'બધા',
# Email address confirmation
'confirmemail' => 'તમારા ઇ-મેઇલ સરનામાની પુષ્ટિ કરો',
'confirmemail_success' => 'તમારા ઈ-મેલની પુષ્ટિ થઈ ગઈ છે.
તમે હવે પ્રવેશ [[Special:UserLogin|log in]] કરી વિકિનો આનંદ ઉઠાવી શકો.',
'confirmemail_loggedin' => 'તમારા ઇ-મેલ સરનામાની પુષ્ટિ કરાઇ છે.',
-'confirmemail_error' => 'પુષ્ટિ સાચવતા કોઈ ત્રુટિ રહી ગઈ',
'confirmemail_subject' => '{{SITENAME}} ઈ-મેલ સરનામાની પુષ્ટિ',
'confirmemail_body' => 'કોઇકે, કદાચ તમે પોતે જ , IP સરનામા $1 પરથી,
"$2" ખાતાનું ઇ-મેલ સરનામું બદલ્યું {{SITENAME}} પર છે.
# Special:ComparePages
'comparepages' => 'પાનાં સરખાવો',
-'compare-selector' => 'પાનાનાં પુનરાવર્તન સરખાવો',
'compare-page1' => 'પાનું ૧',
'compare-page2' => 'પાનું ૨',
'compare-rev1' => 'પુનરાવર્તન ૧',
'tog-minordefault' => 'Myr roie-hoieaghey, cowree dagh arraghey myr myn-arraghey',
'tog-previewontop' => 'Taishbyn y roie-haishbynys roish y chishtey reaghee',
'tog-previewonfirst' => 'Taishbyn roie-haishbynys lurg y chied reaghey',
-'tog-nocache' => 'Ny sauail duillagyn ayns tasht y jeeagheyder',
'tog-enotifwatchlistpages' => 'Cur post-l dou tra ta duillag er y rolley arrey aym goll er reaghey',
'tog-enotifusertalkpages' => 'Cur post-l dou my vees y duillag ymmydeyr aym caghlaa',
'tog-enotifminoredits' => 'Cur dou post-l er myn-arraghey duillagyn chammah',
'recentchanges-label-newpage' => 'Ren y reaghey shoh croo duillag noa',
'recentchanges-label-minor' => 'She myn-reaghey eh shoh',
'recentchanges-label-bot' => 'Ren bot y reaghey shoh',
-'rcnote' => "Ny ta heese, she {{PLURAL:$1|ny '''$1''' caghlaa|yn '''$1''' chaghlaa|ny '''$1''' chaghlaa|ny '''$1''' caghlaaghyn}} s'jerree ayns {{PLURAL:$2|ny '''$2''' laa|yn '''$2''' laa|ny '''$2''' laa|ny '''$2''' laaghyn}} s'jerree, kiart ec $4, $5.",
'rcnotefrom' => "Shoh heese ny caghlaaghyn veih '''$2''' (gys '''$1''' taishbynit).",
'rclistfrom' => "Taishbyn ny caghlaaghyn s'noa veih $1",
'rcshowhideminor' => '{{PLURAL:$1|$1 myn-arraghey|$1 vyn-arraghey|$1 vyn-arraghey|$1 myn-arraghyn}}',
'undeletebtn' => 'Cur er ash',
'undeletelink' => 'jeeagh/cur er ash',
'undeleteviewlink' => 'jeeagh',
-'undeletereset' => 'Aahoiaghey',
'undeletecomment' => 'Fa:',
'undelete-search-box' => 'Ronsee ny duillagyn scrysst',
'undelete-search-submit' => 'Ronsee',
'ipadressorusername' => 'Enmys IP ny ennym ymmydeyr:',
'ipbexpiry' => 'Jerrey:',
'ipbreason' => 'Fa:',
-'ipbreasonotherlist' => 'Fa elley',
'ipbreason-dropdown' => '* Oyr glassey cadjin
** Inserting false information
** Removing content from pages
'ipbsubmit' => 'Glass magh yn ymmydeyr shoh',
'ipbother' => 'Mooad elley am:',
'ipboptions' => '2 oor:2 hours,1 laa:1 day,3 laaghyn:3 days,1 hiaghtin:1 week,2 hiaghtin:2 weeks,1 vee:1 month,3 meeghyn:3 months,6 meeghyn:6 months,1 vlein:1 year,neuyerrinagh:infinite',
-'ipbotheroption' => 'elley',
-'ipbotherreason' => 'Fa elley/tooilley:',
'badipaddress' => 'Enmys IP gyn vree',
'ipblocklist' => 'Ymmydeyryn fo ghlass',
'blocklist-reason' => 'Fa:',
'tog-minordefault' => '默認標記全部編寫為細微修改',
'tog-previewontop' => '在編寫框上頭顯示預覽',
'tog-previewonfirst' => '第一擺編寫時顯示預覽',
-'tog-nocache' => '停用瀏覽器嘅頁面緩存',
'tog-enotifwatchlistpages' => '亻厓監視列表肚嘅頁面或文件有更動時,發電子郵件分亻厓',
'tog-enotifusertalkpages' => '亻厓嘅交流頁有更改時,發電子郵件分亻厓',
'tog-enotifminoredits' => '頁面撈文件嘅細修改也發電子郵件分我',
'saveprefs' => '保存',
'restoreprefs' => '恢復所有默認設定',
'prefs-editing' => '編寫緊',
-'rows' => '行:',
+'rows' => '行数:',
'columns' => '列:',
'searchresultshead' => '搜尋',
'resultsperpage' => '每頁顯示鏈接數:',
'recentchanges-label-minor' => '邇係一隻細微修改',
'recentchanges-label-bot' => '邇次編寫係由機器人進行',
'recentchanges-label-unpatrolled' => '邇次編寫還吂巡查過',
-'rcnote' => "下背係在$4 $5,最近'''$2'''日內嘅'''$1'''次最近更改記錄。",
'rcnotefrom' => "下背係從'''$2'''起嘅更改(最多展示'''$1'''):",
'rclistfrom' => '展示從$1以來嘅新更改',
'rcshowhideminor' => '$1細微編寫',
'undeletebtn' => '恢復',
'undeletelink' => '查看/恢復',
'undeleteviewlink' => '查看',
-'undeletereset' => '重設',
'undeletecomment' => 'Ngièn-yîn:',
'undeletedrevisions' => '$1隻修訂版本已經恢復',
'undeletedrevisions-files' => '$1隻版本撈$2隻文件分恢復',
'ipadressorusername' => 'IP地址或用戶名:',
'ipbexpiry' => '期限:',
'ipbreason' => '原因:',
-'ipbreasonotherlist' => '其他理由',
'ipbreason-dropdown' => '*一般嘅封禁理由
** 多次加入虛假資料
** 刪除頁面內容
'ipbsubmit' => '查封邇用戶',
'ipbother' => '其它時間:',
'ipboptions' => '2小時:2 hours,1日:1 day,3日:3 days,1星期:1 week,2星期:2 weeks,1隻月:1 month,3隻月:3 months,6隻月:6 months,1年:1 year,無限期:infinite',
-'ipbotheroption' => '其他',
-'ipbotherreason' => '其他/附加理由:',
'ipbhidename' => 'Chhai chhà-fûng ngit-ki, fa̍t-chhiok chhà-fûng lie̍t-péu yî-khi̍p yung-fu lie̍t-péu chûng yún-chhòng yung-fu-miàng.',
'badipaddress' => '無效IP地址',
'blockipsuccesssub' => '查封成功',
'watchlistall2' => '全部',
'namespacesall' => '全部',
'monthsall' => '全部',
-'limitall' => '全部',
# Email address confirmation
'confirmemail' => '確認電郵地址',
'confirmemail_needlogin' => 'Ngì sî-yeu $1 yî khok-ngin ngì-ke sin-siông thi-tiám.',
'confirmemail_success' => 'Ngì-ke sin-siông yí-kîn pûn khok-ngin. Ngì hien-ha khó-yî tên-liu̍k pin sṳ́-yung chhṳ́ mióng-chham liáu.',
'confirmemail_loggedin' => 'Ngì-ke sin-siông thi-tiám hien-ha yí-kîn pûn khok-ngin.',
-'confirmemail_error' => 'Ngì-ke khok-ngin ko-chhàng fat-sên chho-ngu.',
'confirmemail_subject' => '{{SITENAME}} sin-siông thi-tiám khok-ngin',
'confirmemail_body' => 'Yúng-yû IP thi-tiám $1 ke yung-fu (khó-nèn he ngì) chhai {{SITENAME}} chhóng-chho liáu chong-fu "$2", pin thì-kâu liáu ngì-ke email sin-siông thi-tiám.
# Recent changes
'nchanges' => '$1 {{PLURAL:$1|loli|mau loli}}',
'recentchanges' => 'Nā loli hou',
-'rcnote' => "ʻO {{PLURAL:$1|ka loli '''1'''|nā loli hope '''$1'''}} ma hope mai {{PLURAL:$2|ka lā hoʻokahi|nā lā '''$2'''}} ma hope, ma $5, $4.",
'rcshowhideminor' => '$1 i nā ho‘opololei iki',
'rcshowhidebots' => '$1 i nā lopako',
'rcshowhideliu' => '$1 i nā mea hoʻohana i ʻeʻe ai',
'tog-minordefault' => 'הגדרת כל פעולת עריכה כמשנית אם לא צוין אחרת',
'tog-previewontop' => 'הצגת תצוגה מקדימה לפני תיבת העריכה',
'tog-previewonfirst' => 'הצגת תצוגה מקדימה בעריכה ראשונה',
-'tog-nocache' => 'מניעת אחסון הדפים בזיכרון המטמון בדפדפן',
'tog-enotifwatchlistpages' => 'לשלוח אליי דואר אלקטרוני כאשר משתנה דף או קובץ ברשימת המעקב שלי',
'tog-enotifusertalkpages' => 'לשלוח אליי דואר אלקטרוני כאשר נעשה שינוי בדף שיחת המשתמש שלי',
'tog-enotifminoredits' => 'לשלוח אליי דואר אלקטרוני גם על עריכות משניות של דפים וקבצים',
'recentchanges-label-plusminus' => 'מספר הבתים שבו השתנה גודל הדף',
'recentchanges-legend-newpage' => '(ראו גם [[Special:NewPages|רשימת דפים חדשים]])',
'recentchanges-legend-plusminus' => "(''±123'')",
-'rcnote' => "להלן {{PLURAL:$1|השינוי האחרון|'''$1''' השינויים האחרונים}} {{PLURAL:$2|ביום האחרון|ביומיים האחרונים|ב־$2 הימים האחרונים}}, עד $5, $4:",
'rcnotefrom' => 'להלן <b>$1</b> השינויים האחרונים שבוצעו החל מתאריך <b>$2</b>:',
'rclistfrom' => 'הצגת שינויים חדשים החל מ־$1',
'rcshowhideminor' => '$1 שינויים משניים',
'undeletebtn' => 'שחזור',
'undeletelink' => 'הצגה/שחזור',
'undeleteviewlink' => 'הצגה',
-'undeletereset' => 'איפוס',
'undeleteinvert' => 'הפיכת הבחירה',
'undeletecomment' => 'סיבה:',
'undeletedrevisions' => '{{PLURAL:$1|שוחזרה גרסה אחת|שוחזרו $1 גרסאות}}',
'block' => 'חסימת משתמש',
'unblock' => 'שחרור משתמש',
'blockip' => 'חסימת משתמש',
-'blockip-title' => 'חסימת משתמש',
'blockip-legend' => 'חסימת משתמש',
'blockiptext' => 'השתמשו בטופס שלהלן כדי לחסום את הרשאות הכתיבה מכתובת IP או משתמש מסוימים.
חסימות כאלה צריכות להתבצע רק כדי למנוע השחתה, ובהתאם ל[[{{MediaWiki:Policy-url}}|נהלים]].
'ipadressorusername' => 'כתובת IP או שם משתמש:',
'ipbexpiry' => 'פקיעה:',
'ipbreason' => 'סיבה:',
-'ipbreasonotherlist' => 'סיבה אחרת',
'ipbreason-dropdown' => "* סיבות חסימה נפוצות
** הוספת מידע שגוי
** הסרת תוכן מדפים
'ipbsubmit' => 'חסימה',
'ipbother' => 'זמן אחר:',
'ipboptions' => 'שעתיים:2 hours,יום:1 day,שלושה ימים:3 days,שבוע:1 week,שבועיים:2 weeks,חודש:1 month,שלושה חודשים:3 months,שישה חודשים:6 months,שנה:1 year,זמן בלתי מוגבל:infinite',
-'ipbotheroption' => 'אחר',
-'ipbotherreason' => 'סיבה אחרת/נוספת:',
'ipbhidename' => 'הסתרת שם המשתמש מהעריכות ומהרשימות',
'ipbwatchuser' => 'מעקב אחר דף המשתמש ודף השיחה של משתמש זה',
'ipb-disableusertalk' => 'ביטול האפשרות של המשתמש לערוך את דף השיחה של עצמו בעת החסימה',
'sorbsreason' => 'כתובת ה־IP שלכם רשומה ככתובת פרוקסי פתוחה ב־DNSBL שאתר זה משתמש בו.',
'sorbs_create_account_reason' => 'כתובת ה־IP שלכם רשומה ככתובת פרוקסי פתוחה ב־DNSBL שאתר זה משתמש בו. אינכם יכולים ליצור חשבון.',
'xffblockreason' => 'כתובת IP הנמצאת בכותרת X-Forwarded-For, בין אם שלכם או של שרת פרוקסי שאתם משתמשים בו, נחסמה. סיבת החסימה המקורית הייתה: $1',
-'cant-block-while-blocked' => 'אינכם יכולים לחסום משתמשים אחרים כשאתם חסומים.',
'cant-see-hidden-user' => 'המשתמש שאתם מנסים לחסום כבר נחסם והוסתר. כיוון שאין לכם את ההרשאה לחסימת משתמש והסתרתו, אינכם רשאים לצפות בחסימת המשתמש או לערוך אותה.',
'ipbblocked' => 'אינכם יכולים לחסום או לשחרר את חסימתם של משתמשים אחרים, כיוון שאתם עצמכם חסומים',
'ipbnounblockself' => 'אינכם רשאים לשחרר את חסימתכם',
'print.css' => '/* הסגנונות הנכתבים כאן ישפיעו על הפלט בהדפסה בלבד */',
'noscript.css' => '/* הסגנונות הנכתבים כאן ישפיעו על משתמשים עם JavaScript מבוטל */',
'group-autoconfirmed.css' => '/* הסגנונות הנכתבים כאן ישפיעו על משתמשים ותיקים בלבד */',
+'group-user.css' => '/* הסגנונות הנכתבים כאן ישפיעו על משתמשים רשומים בלבד */',
'group-bot.css' => '/* הסגנונות הנכתבים כאן ישפיעו על בוטים בלבד */',
'group-sysop.css' => '/* הסגנונות הנכתבים כאן ישפיעו על מפעילי מערכת בלבד */',
'group-bureaucrat.css' => '/* הסגנונות הנכתבים כאן ישפיעו על ביורוקרטים בלבד */',
'modern.js' => '/* כל סקריפט JavaScript שנכתב כאן ירוץ רק עבור המשתמשים בעיצוב Modern */',
'vector.js' => '/* כל סקריפט JavaScript שנכתב כאן ירוץ רק עבור המשתמשים בעיצוב Vector */',
'group-autoconfirmed.js' => '/* כל סקריפט JavaScript שנכתב כאן ירוץ עבור משתמשים ותיקים בלבד */',
+'group-user.js' => '/* כל סקריפט JavaScript שנכתב כאן ירוץ עבור משתמשים רשומים בלבד */',
'group-bot.js' => '/* כל סקריפט JavaScript שנכתב כאן ירוץ עבור בוטים בלבד */',
'group-sysop.js' => '/* כל סקריפט JavaScript שנכתב כאן ירוץ עבור מפעילי מערכת בלבד */',
'group-bureaucrat.js' => '/* כל סקריפט JavaScript שנכתב כאן ירוץ עבור ביורוקרטים בלבד */',
'pageinfo-article-id' => 'מזהה הדף',
'pageinfo-language' => 'שפת התוכן של הדף',
'pageinfo-content-model' => 'סוג התוכן של הדף',
-'pageinfo-robot-policy' => 'איסוף על ידי רובוטים של מנועי חיפוש',
+'pageinfo-robot-policy' => 'איסוף על־ידי רובוטים של מנועי חיפוש',
'pageinfo-robot-index' => 'מותר',
'pageinfo-robot-noindex' => 'אסור',
'pageinfo-views' => 'מספר הצפיות',
'watchlistall2' => 'הכול',
'namespacesall' => 'הכול',
'monthsall' => 'הכול',
-'limitall' => 'הכול',
# Email address confirmation
'confirmemail' => 'אימות כתובת דוא"ל',
'confirmemail_success' => 'כתובת הדוא"ל שלך אושרה.
כעת באפשרותך [[Special:UserLogin|להיכנס לחשבון שלך]] וליהנות מהאתר.',
'confirmemail_loggedin' => 'כתובת הדוא"ל שלך אושרה כעת.',
-'confirmemail_error' => 'שגיאה בשמירת קוד האימות.',
'confirmemail_subject' => 'קוד אימות דוא"ל מ{{grammar:תחילית|{{SITENAME}}}}',
'confirmemail_body' => 'מישהו, כנראה אתם (מכתובת ה־IP הזו: $1),
רשם את החשבון "$2" עם כתובת הדוא"ל הזו ב{{grammar:תחילית|{{SITENAME}}}}.
'imgmultigo' => 'הצגה',
'imgmultigoto' => 'מעבר לדף $1',
+# Language selector for translatable SVGs
+'img-lang-default' => '(שפת ברירת המחדל)',
+'img-lang-info' => 'הצגת תמונה זו בשפה $1 $2.',
+'img-lang-go' => 'הצגה',
+
# Table pager
'ascending_abbrev' => 'עולה',
'descending_abbrev' => 'יורד',
# Special:ComparePages
'comparepages' => 'השוואת דפים',
-'compare-selector' => 'השוואת גרסאות של דפים',
'compare-page1' => 'דף 1',
'compare-page2' => 'דף 2',
'compare-rev1' => 'גרסה 1',
* @author Bhawani Gautam
* @author Bhawani Gautam Rhk
* @author Charu
+ * @author Darshan kandolkar
* @author Dineshjk
* @author Hemant wikikosh1
* @author Htt
'tog-minordefault' => 'मेरे सभी सम्पादन छोटे बदलाव हैं',
'tog-previewontop' => 'सम्पादन बक्से के ऊपर झलक दिखाएँ',
'tog-previewonfirst' => 'प्रथम सम्पादन के बाद झलक दिखाएँ',
-'tog-nocache' => 'ब्राउज़र पृष्ठ कैशिंग अक्षम करें',
'tog-enotifwatchlistpages' => 'मेरी ध्यानसूची में दर्ज किसी भी पृष्ठ अथवा फ़ाइल में परिवर्तन होने पर मुझे ई-मेल करें',
'tog-enotifusertalkpages' => 'मेरा वार्ता पृष्ठ परिवर्तित होने पर मुझे ई-मेल करें',
'tog-enotifminoredits' => 'छोटे परिवर्तनों के लिए भी मुझे ई-मेल भेजें',
'yourpasswordagain' => 'कूटशब्द दुबारा लिखें:',
'createacct-yourpasswordagain' => 'कूटशब्द की पुष्टि करें',
'createacct-yourpasswordagain-ph' => 'कूटशब्द पुनः लिखें',
-'remembermypassword' => 'à¤\87स बà¥\8dराà¤\89à¤\9c़र पर मà¥\87रा लà¥\89à¤\97िन याद रà¤\96à¥\87à¤\82 (à¤\85धिà¤\95तम $1 {{PLURAL:$1|दिन|दिनà¥\8bà¤\82}} à¤\95à¥\87 लिà¤\8f)',
+'remembermypassword' => 'हà¥\8dया बà¥\8dराà¤\89à¤\9cराà¤\9aà¥\87र माà¤\9cà¥\8b लà¥\89à¤\97 à¤\87न याद दवरात (à¤\9aडाà¤\82तà¤\9aड $1 {{PLURAL:$1|दिस|दिसाà¤\82}} à¤\96ातà¥\80र)',
'userlogin-remembermypassword' => 'मुझे लॉग्ड इन रखें',
'userlogin-signwithsecure' => 'सुरक्षित कनेक्शन का प्रयोग करें',
'yourdomainname' => 'आपका डोमेन:',
'recentchanges-label-bot' => 'यह संपादन एक बॉट द्वारा किया गया था',
'recentchanges-label-unpatrolled' => 'यह संपादन अभी जाँचा नहीं गया है',
'recentchanges-legend-newpage' => '$1 - नया पन्ना',
-'rcnote' => "$5, $4 के पहले के '''$2''' {{PLURAL:$2|दिन|दिनों}} में {{PLURAL:$1|हुआ '''$1''' बदलाव निम्न है| हुए '''$1''' बदलाव निम्न हैं}}।",
'rcnotefrom' => "नीचे '''$2''' के बाद से ('''$1''' तक) हुए बदलाव दर्शाए गये हैं।",
'rclistfrom' => '$1 से नये बदलाव दिखाएँ',
'rcshowhideminor' => 'छोटे बदलाव $1',
'prevpage' => 'पिछला पृष्ठ ($1)',
'allpagesfrom' => 'इस अक्षर से आरंभ होने वाले पृष्ठ दर्शाएँ:',
'allpagesto' => 'इस अक्षर से समाप्त होने वाले पृष्ठ दिखाएँ:',
-'allarticles' => 'सà¤à¥\80 पà¥\83षà¥\8dठ',
+'allarticles' => 'सà¤\97ळà¥\80 पाना',
'allinnamespace' => 'सभी पृष्ठ ($1 नामस्थान)',
'allpagessubmit' => 'जाएँ',
'allpagesprefix' => 'इस उपपद से शुरू होने वाले पृष्ठ दर्शाएँ:',
'undeletebtn' => 'वापस ले आयें',
'undeletelink' => 'देखें/पुनर्स्थापित करें',
'undeleteviewlink' => 'देखें',
-'undeletereset' => 'पूर्ववत करें',
'undeleteinvert' => 'चुनाव उलटें',
'undeletecomment' => 'कारण:',
'undeletedrevisions' => '{{PLURAL:$1|एक अवतरण पुनर्स्थापित किया|$1 अवतरण पुनर्स्थापित किये}}',
'block' => 'उपयोक्ता को अवरोधित करें।',
'unblock' => 'उपयोक्ता पर अवरोधण हटाएँ',
'blockip' => 'अवरोधित करें',
-'blockip-title' => 'ब्लॉक उपयोगकर्ता',
'blockip-legend' => 'सदस्य को ब्लॉक करें',
'blockiptext' => 'विशिष्ठ IP पते अथवा सदस्य नाम को लिखने के अधिकार से बाध्य करने के लिए निम्न पत्र का प्रयोग करें।
यह सिर्फ बर्बरता को रोकने के लिए ही किया जाना चाहिए, और [[{{MediaWiki:Policy-url}}|नीति]] के अनुसार ही करना चाहिए।
'ipadressorusername' => 'आईपी एड्रेस या सदस्यनाम:',
'ipbexpiry' => 'समाप्ति:',
'ipbreason' => 'कारण:',
-'ipbreasonotherlist' => 'दूसरा कारण',
'ipbreason-dropdown' => '*अवरोधित करने के साधारण कारण
** अवैध सदस्यनाम
** एक से अधिक खातें खोलकर उनका दुरुपयोग करना
'ipbsubmit' => 'इस सदस्य को और बदलाव करने से रोकें',
'ipbother' => 'अन्य समय:',
'ipboptions' => 'दो घंटे:2 hours,एक दिन:1 day,तीन दिन:3 days,एक सप्ताह:1 week,दो सप्ताह:2 weeks,एक महीना:1 month,तीन महीने:3 months,छः महीने:6 months,एक साल:1 year,हमेशा के लिये:infinite',
-'ipbotheroption' => 'अन्य',
-'ipbotherreason' => 'अन्य/दूसरा कारण:',
'ipbhidename' => 'संपादन व सूचियों से सदस्य नाम छिपाएँ',
'ipbwatchuser' => 'इस सदस्य के सदस्य तथा वार्ता पृष्ठ पर ध्यान रखें',
'ipb-disableusertalk' => 'इस प्रयोक्ता को अवरुद्ध होने पर स्वयं का वार्ता पृष्ठ सम्पादन करने से रोकें',
कृपया आप अपने इंटरनेट सेवा प्रदान करने वाले से या तकनीकी सहायक से सम्पर्क करें अथवा उन्हें इस भयावह सुरक्षा समस्या के बारे में सूचित करें।',
'sorbsreason' => '{{SITENAME}} द्वारा इस्तेमालमें लाये जाने वाले DNSBL में आपके आईपी एड्रेसको ओपन प्रॉक्सीमें दर्शाया गया हैं।',
'sorbs_create_account_reason' => '{{SITENAME}} के DNSBL ने आपका आईपी एड्रेस ओपन प्रोक्सी करके सूचित किया हैं। आप खाता खोल नहीं सकतें।',
-'cant-block-while-blocked' => 'आप खुद ही अवरोधित हैं इसलिए इस समय आप औरों को अवरोधित नहीं कर सकते हैं।',
'cant-see-hidden-user' => 'कठबोली छुपा उपयोगकर्ता देखना',
'ipbblocked' => 'आप अन्य प्रयोक्ताओं को अवरोधित या अनवरोधित नहीं कर सकते, क्योंकि आप स्वयं अवरोधित हैं',
'ipbnounblockself' => 'आपको स्वयं को अनवरोधित करने की अनुमति नहीं है',
# Namespace 8 related
'allmessages' => 'व्यवस्था संदेश',
-'allmessagesname' => 'नाम',
+'allmessagesname' => 'नाà¤\82व',
'allmessagesdefault' => 'डिफॉल्ट पाठ',
'allmessagescurrent' => 'वर्तमान पाठ',
'allmessagestext' => 'ये मीडियाविकि नामस्थान में उपलब्ध प्रणाली संदेशों की एक सूची है। यदि आप सामान्य मीडियाविकि क्षेत्रीयकरण में योगदान देना चाहें तो कृपया [https://www.mediawiki.org/wiki/Localisation मीडियाविकि क्षेत्रीयकरण] व [//translatewiki.net translatewiki.net] को देखें।',
'watchlistall2' => 'सभी',
'namespacesall' => 'सभी',
'monthsall' => 'सभी',
-'limitall' => 'सभी',
# Email address confirmation
'confirmemail' => 'ई-मेल प्रमाणित करे',
'confirmemail_success' => 'आपका इ-मेल पता अभी प्रमाणित हो गया हैं।
अभी आप लॉग इन करके विकि का मज़ा ले सकतें हैं।',
'confirmemail_loggedin' => 'आपके इ-मेल एड्रेस का प्रमाणिकरण पूरा हो गया हैं।',
-'confirmemail_error' => 'आपकी निश्चिती संजोते समय कुछ गलती हुई हैं।',
'confirmemail_subject' => '{{SITENAME}} इ-मेल एड्रेस प्रमाणिकरण',
'confirmemail_body' => 'किसीने, शायद आपने, $1 आइपी एड्रेस से,
{{SITENAME}} पर "$2" इस नाम से खाता खोलने की माँग की हैं।
# Special:ComparePages
'comparepages' => 'पृष्ठों की तुलना करें',
-'compare-selector' => 'पृष्ठ संशोधन की तुलना करें',
'compare-page1' => 'पृष्ठ १',
'compare-page2' => 'पृष्ठ २',
'compare-rev1' => 'पुनरीक्षण १',
'tog-minordefault' => 'Mamuli badlao ke apne se nishaan lagao',
'tog-previewontop' => 'Badlao waala dabba se pahile ek jhalak dekhao',
'tog-previewonfirst' => 'Hamaar pahila badlao pe jhalak dekhao',
-'tog-nocache' => 'Browser pe panna ke bachae me rok lagao',
'tog-enotifwatchlistpages' => 'Jab hamaar dhyaan suchi ke koi panna, nai to file, ke badla jae tab hame E-mail karo',
'tog-enotifusertalkpages' => 'Jab hamaar baat waala panna ke badla jae tab hame E-mail karo',
'tog-enotifminoredits' => 'Panna aur file me mamuli badlao khatir bhi hame E-mail karo',
'recentchanges-label-bot' => 'Ii badlao ke ek bot karis hae',
'recentchanges-label-unpatrolled' => 'Ii badlao pe abhi pahraa nai dewa gais hae.',
'recentchanges-legend-newpage' => '$1 - nawaa panna',
-'rcnote' => "Niche {{PLURAL:$1|hai '''1''' badlao|aakhri hai '''$1''' badlao}} pahile {{PLURAL:$2|din|'''$2''' din}}, $5, $4 talak.",
'rcnotefrom' => "Niche '''$2''' se badlao hai ('''$1''' tak )",
'rclistfrom' => '$1 se suruu kar ke nawaa badlao dekhao',
'rcshowhideminor' => '$1 chhota badlao',
'undeletebtn' => 'Pahile jaise kar do',
'undeletelink' => 'dekho/pahile jaise karo',
'undeleteviewlink' => 'dekho',
-'undeletereset' => 'Pahile jaise karo',
'undeleteinvert' => 'Selection ke ulta karo',
'undeletecomment' => 'Kaaran::',
'undeletedrevisions' => '{{PLURAL:$1|1 badlao|$1 badlao}} ke pahile jaise kar dewa gais hai',
'block' => 'Sadasya ke roko',
'unblock' => 'Sadasya ke rukawat k khalaas karo',
'blockip' => 'Sadasya ke roko',
-'blockip-title' => 'Sadasya ke roko',
'blockip-legend' => 'Sadasya ke roko',
'blockiptext' => 'Niche ke form ke use kar ke koi khaas IP address nai to username ke write access ke roko.
Iske khaali vandalism ke roke ke khatir use kare ke chaahi [[{{MediaWiki:Policy-url}}|policy]] ke niche.
'ipadressorusername' => 'IP Address nai to username:',
'ipbexpiry' => 'Expiry:',
'ipbreason' => 'Kaaran:',
-'ipbreasonotherlist' => 'Duusra kaaran',
'ipbreason-dropdown' => '*Roke ke sadhaarankaaran
** Galat jaankari diis
** Panna se jaankari nikalis
'ipbsubmit' => 'Ii sadasya ke roko',
'ipbother' => 'Duusra time:',
'ipboptions' => '2 ghanta:2 hours,1 din:1 day,3 daya:3 days,1 hapta:1 week,2 hapta:2 weeks,1 mahina:1 month,3 mahina:3 months,6 mahina:6 months,1 saal:1 year,pura:infinite',
-'ipbotheroption' => 'duusra',
-'ipbotherreason' => 'Duusra/aur kaaran:',
'ipbhidename' => 'Badlao aur suchi se username ke hatao',
'ipbwatchuser' => 'Ii sadasya ke user aur talk panna pe dhyan rakho',
'ipb-disableusertalk' => 'Ii sadasya ke aapan baat waala panna ke badle pe rukawat lagao, jab ii panna pe rok lagawa gais hae',
'sorbs_create_account_reason' => 'DNSBL used by {{SITENAME}} me aap ke IP address ke as an open proxy list karaa gais hai.
Aap ke ek account banae ke ijajat nai hai',
'xffblockreason' => 'Ek IP address jon ki X-Forwarded-For header me hae, chaahe aap ke nai to jon proxy server ke aap use kartaa hae ke, ke block kar dewa gais hae. Suruu waala block kare ke kaaran rahaa:$1',
-'cant-block-while-blocked' => 'Aap, jab ki apne blocked hai, duusra sadasya ke block nai kare sakta hai.',
'cant-see-hidden-user' => 'Jon sadasya ke aap roke mangtaa hae ke pahile rok ke lukae dewa gais hae.
Jab ki aap ke lage hideuser adhikaar nai hae, tab aap ii sadasya ke rukawat ke nai dekhe aur badle saktaa hae.',
'ipbblocked' => 'Aap duusra sadasya ke roke nai to kohle nai sakta hae, kaahe ki aap ke bhi rokaa gais hae',
'watchlistall2' => 'sab',
'namespacesall' => 'sab',
'monthsall' => 'sab',
-'limitall' => 'sab',
# Email address confirmation
'confirmemail' => 'E-mail address ke pakka karo',
'confirmemail_success' => 'Aap ke email address ke confirm kar dewa gais hae.
Aap [[Special:UserLogin|log in]] kar ke ii wiki ke majaa le saktaa hae.',
'confirmemail_loggedin' => 'Aap ke email address ke ap confirm kar dewa gais hae.',
-'confirmemail_error' => 'Aap ke confirmation me kuchh garrbarri hoe gais hae.',
'confirmemail_subject' => '{{SITENAME}} email address ke confirmation',
'confirmemail_body' => 'Koi, hoe sake aap IP address $1 se, ek account "$2" with this email address on {{SITENAME}} ke register karis hae.
# Special:ComparePages
'comparepages' => 'Panna ke biich me antar dekho',
-'compare-selector' => 'Panna ke badlao ke biih me antar dekho',
'compare-page1' => 'Panna 1',
'compare-page2' => 'Panna 2',
'compare-rev1' => 'Badlao 1',
'tog-minordefault' => 'Markahan dayon ang tanan nga diyutay nga pag-ilis',
'tog-previewontop' => 'Ipakita ang preview bag-o ang kahon sang pag-ilis',
'tog-previewonfirst' => 'Ipakita ang preview sa pinaka-una nga pag-ilis',
-'tog-nocache' => 'Untaton ang kina-iya sang brawser nga magtago sang panid',
'tog-enotifwatchlistpages' => 'Padal-i ako sang e-mail kon ang panid kag hilera nga akon ginabantayan paga-ilisan',
'tog-enotifusertalkpages' => 'Padal-i ako sang e-mail kon paga-ilisan ang akon panid sang pag-hisayranay',
'tog-enotifminoredits' => 'Padal-i man ako sang e-mail kon may diyutay nga pag-ilis sa akon mga panid kag hilera',
'recentchanges-label-minor' => 'Diotay ilis ini',
'recentchanges-label-bot' => 'Ang sini nga pagbag-o ginubra sang isa ka bot',
'recentchanges-label-unpatrolled' => 'Ang sini nga pagbag-o indi pa ginbantayan',
-'rcnote' => "Diri sa idalum {{PLURAL:$1|ay '''1''' na bag-o|sang nagligad '''$1''' mga nabag-o}} sa naligad {{PLURAL:$2|adlaw|'''$2''' adlaw}}, sang mga $5, $4.",
'rcnotefrom' => "Yara sa idalum ang mga guinbag-o halin '''$2''' (tubtub '''$1''' ang ginpagwa).",
'rclistfrom' => 'Ipakita ang bag-o lang nahimo halin sa $1',
'rcshowhideminor' => '$1 menor nga mga inislan',
'ipbreason' => 'Rason:',
'ipbother' => 'Iban nga oras:',
'ipboptions' => '2 oras:2 hours,1 adlaw:1 day,3 adlaw:3 days,1 semana:1 week,2 semana:2 weeks,1 bulan:1 month,3 bulan:3 months,6 bulan:6 months,1 tu-ig:1 year,wala katapusan:infinite',
-'ipbotheroption' => 'lain',
-'ipbotherreason' => 'Iban ukon dugang nga rason:',
'ipbhidename' => 'Itago ang ngalan sang tiggamit sa mga pagbag-o kag mga listahan.',
'ipblocklist' => 'Napunggan nga mga manug-usar',
'blocklist-rangeblocks' => 'Itago ang mga bloke sang ginasakupan',
'tog-minordefault' => 'Normalno označavaj sve moje izmjene kao manje',
'tog-previewontop' => 'Prikaži kako će stranica izgledati iznad okvira za uređivanje',
'tog-previewonfirst' => 'Prikaži kako će stranica izgledati čim otvorim uređivanje',
-'tog-nocache' => 'Isključi međuspremnik (cache) stranica u pregledniku',
'tog-enotifwatchlistpages' => 'Pošalji mi e-mail kod izmjene stranice u popisu praćenja',
'tog-enotifusertalkpages' => 'Pošalji mi e-mail kod izmjene moje stranice za razgovor',
'tog-enotifminoredits' => 'Pošalji mi e-mail i kod manjih izmjena stranice',
'recentchanges-label-bot' => 'Ovu izmjenu napravio je bot',
'recentchanges-label-unpatrolled' => 'Ova izmjena još nije pregledana',
'recentchanges-legend-newpage' => '$1 - nova stranica',
-'rcnote' => "{{PLURAL:$1|Slijedi zadnja '''$1''' promjena|Slijede zadnje '''$1''' promjene|Slijedi zadnjih '''$1''' promjena}} u {{PLURAL:$2|zadnjem '''$2''' danu|zadnja '''$2''' dana|zadnjih '''$2''' dana}}, od $5, $4.",
'rcnotefrom' => 'Slijede promjene od <b>$2</b> (prikazano ih je do <b>$1</b>).',
'rclistfrom' => 'Prikaži nove promjene počevši od $1',
'rcshowhideminor' => '$1 manje promjene',
'undeletebtn' => 'Vrati!',
'undeletelink' => 'vidi/vrati',
'undeleteviewlink' => 'pregled',
-'undeletereset' => 'Očisti',
'undeleteinvert' => 'Obrni odabir',
'undeletecomment' => 'Razlog:',
'undeletedrevisions' => '{{PLURAL:$1|$1 inačica vraćena|$1 inačice vraćene|$1 inačica vraćeno}}',
'block' => 'Blokiraj suradnika',
'unblock' => 'Deblokiraj suradnika',
'blockip' => 'Blokiraj suradnika',
-'blockip-title' => 'Blokiraj suradnika',
'blockip-legend' => 'Blokiraj suradnika',
'blockiptext' => 'Koristite donji obrazac za blokiranje pisanja pojedinih suradnika ili IP adresa .
To biste trebali raditi samo zbog sprječavanja vandalizma i u skladu
'ipadressorusername' => 'IP adresa ili suradničko ime',
'ipbexpiry' => 'Rok (na engleskom)',
'ipbreason' => 'Razlog:',
-'ipbreasonotherlist' => 'Drugi razlog',
'ipbreason-dropdown' => "*Najčešći razlozi za blokiranje
** Netočne informacije
** Uklanjanje sadržaja stranica
'ipbsubmit' => 'Blokiraj ovog suradnika',
'ipbother' => 'Neki drugi rok (na engleskom, npr. 6 days):',
'ipboptions' => '2 sata:2 hours,1 dan:1 day,3 dana:3 days,1 tjedan:1 week,2 tjedna:2 weeks,1 mjesec:1 month,3 mjeseca:3 months,6 mjeseci:6 months,1 godine:1 year,neograničeno:infinite',
-'ipbotheroption' => 'drugo',
-'ipbotherreason' => 'Drugi/dodatni razlog:',
'ipbhidename' => 'Sakrij suradničko ime iz uređivanja i popisa',
'ipbwatchuser' => 'Prati suradničku stranicu i stranicu za razgovor ovog suradnika',
'ipb-disableusertalk' => 'Onemogući ovog suradnika da uređuje svoju stranicu za razgovor dok je blokiran',
'proxyblockreason' => 'Vaša je IP adresa blokirana jer se radi o otvorenom posredniku (proxyju). Molimo stupite u vezu s Vašim davateljem internetskih usluga (ISP-om) ili službom tehničke podrške i obavijestite ih o ovom ozbiljnom sigurnosnom problemu.',
'sorbsreason' => 'Vaša IP adresa je na popisu otvorenih posrednika na poslužitelju DNSBL.',
'sorbs_create_account_reason' => 'Vaša IP adresa je na popisu otvorenih posrednika na poslužitelju DNSBL. Ne možete otvoriti račun.',
-'cant-block-while-blocked' => 'Ne možete blokirati druge suradnike dok ste blokirani.',
'cant-see-hidden-user' => 'Korisnik kojeg pokušavate blokirati je već blokiran i sakriven. Pošto nemate prava hideuser (sakrivanje korisnika), ne možete vidjeti ni urediti korisnikovu blokadu.',
'ipbblocked' => 'Ne možete blokirati ili odblokirati druge suradnike, jer ste blokirani',
'ipbnounblockself' => 'Nije Vam dopušteno odblokirati se',
'watchlistall2' => 'sve',
'namespacesall' => 'sve',
'monthsall' => 'sve',
-'limitall' => 'sve',
# Email address confirmation
'confirmemail' => 'Potvrda e-mail adrese',
'confirmemail_needlogin' => 'Molimo $1 kako biste potvrdili Vašu e-mail adresu.',
'confirmemail_success' => 'Vaša je e-mail adresa potvrđena. Možete se prijaviti i uživati u wikiju.',
'confirmemail_loggedin' => 'Vaša je e-mail adresa potvrđena.',
-'confirmemail_error' => 'Došlo je do greške kod snimanja Vaše potvrde.',
'confirmemail_subject' => '{{SITENAME}}: potvrda e-mail adrese',
'confirmemail_body' => 'Netko, vjerojatno Vi, s IP adrese $1 je otvorio
suradnički račun pod imenom "$2" s ovom e-mail adresom na {{SITENAME}}.
# Special:ComparePages
'comparepages' => 'Usporedite stranice',
-'compare-selector' => 'Usporedite inačice stranice',
'compare-page1' => 'Stranica 1',
'compare-page2' => 'Stranica 2',
'compare-rev1' => 'Izmjena 1',
'tog-minordefault' => 'Wšě změny standardnje jako snadne woznamjenić',
'tog-previewontop' => 'Přehlad před wobdźěłanskim polom pokazać',
'tog-previewonfirst' => 'Při prěnim wobdźěłanju přehlad pokazać',
-'tog-nocache' => 'Pufrowanje stronow wobhladowaka znjemóžnić',
'tog-enotifwatchlistpages' => 'E-mejlku pósłać, hdyž so strona abo dataja z wobkedźbowankow změni',
'tog-enotifusertalkpages' => 'E-mejlku pósłać, hdyž so moja wužiwarska diskusijna strona změni',
'tog-enotifminoredits' => 'Tež za snadne změny stronow a datajow e-mejl pósłać',
'recentchanges-label-plusminus' => 'Změnjena wulkosć strony (w bajtach)',
'recentchanges-legend-newpage' => '(hlej tež [[Special:NewPages|lisćinu nowych stronow]])',
'recentchanges-legend-plusminus' => "(''±123'')",
-'rcnote' => "Deleka {{PLURAL:$1|je '''1''' změna|stej poslednjej '''$1''' změnje|su poslednje '''$1''' změny|je poslednich '''$1''' změnow}} za {{PLURAL:$2|posledni dźeń|poslednjej '''$2''' dnjej|poslednje '''$2''' dny|poslednich '''$2''' dnjow}}, staw wot $4, $5.",
'rcnotefrom' => "Deleka so změny wot '''$2''' pokazuja (hač k '''$1''').",
'rclistfrom' => 'Nowe změny pokazać, započinajo z $1',
'rcshowhideminor' => 'snadne změny $1',
'undeletebtn' => 'Wobnowić',
'undeletelink' => 'wobhladać sej/wobnowić',
'undeleteviewlink' => 'wobhladać sej',
-'undeletereset' => 'Cofnyć',
'undeleteinvert' => 'Wuběr wobroćić',
'undeletecomment' => 'Přičina:',
'undeletedrevisions' => '$1 {{PLURAL:$1|wersija|wersiji|wersije|wersijow}} {{PLURAL:$1|wobnowjena|wobnowjenej|wobnowjene|wobnowjene}}',
'block' => 'Wužiwarja blokować',
'unblock' => 'Blokowanje wužiwarja zběhnyć',
'blockip' => 'Wužiwarja zablokować',
-'blockip-title' => 'Wužiwarja blokować',
'blockip-legend' => 'Wužiwarja blokować',
'blockiptext' => 'Wužij slědowacy formular deleka, zo by pisanski přistup za podatu IP-adresu abo wužiwarske mjeno blokował. To měło so jenož stać, zo by wandalizmej zadźěwało a woptpowědujo [[{{MediaWiki:Policy-url}}|zasadam]]. Zapodaj deleka přičinu (na př. citujo wosebite strony, kotrež běchu z woporom wandalizma).',
'ipadressorusername' => 'IP-adresa abo wužiwarske mjeno',
'ipbexpiry' => 'Spadnjenje',
'ipbreason' => 'Přičina:',
-'ipbreasonotherlist' => 'Druha přičina',
'ipbreason-dropdown' => '*powšitkowne přičiny
** wandalizm
** wutworjenje njezmyslnych stronow
'ipbsubmit' => 'Wužiwarja zablokować',
'ipbother' => 'Druha doba',
'ipboptions' => '2 hodźinje:2 hours,1 dźeń:1 day,3 dny:3 days,1 tydźeń:1 week,2 njedźeli:2 weeks,1 měsać:1 month,3 měsacy:3 months,6 měsacow:6 months,1 lěto:1 year,na přeco:infinite',
-'ipbotheroption' => 'druha doba (jendźelsce)',
-'ipbotherreason' => 'Druha/přidatna přičina:',
'ipbhidename' => 'Wužiwarske mjeno stawiznach a lisćinach schować',
'ipbwatchuser' => 'Wužiwarsku a diskusijnu stronu tutoho wužiwarja wobkedźbować',
'ipb-disableusertalk' => 'Tutomu wužiwarjej zadźěwać, swoju diskusijnu stronu wobdźěłać, mjeztym zo je zablokowany',
'sorbsreason' => 'Twoja IP-adresa je jako wotewrjeny proksy na DNSBL {{GRAMMAR:genitiw|{{SITENAME}}}} zapisana.',
'sorbs_create_account_reason' => 'Twoja IP-adresa je jako wotewrjeny proksy na DNSBL {{GRAMMAR:genitiw|{{SITENAME}}}} zapisana. Njemóžeš konto wutworić.',
'xffblockreason' => 'IP-adresa w header X-Forwarded-For, pak twoja pak ta proksy-serwera, kotryž wužiwaš, je so zablokowała. Prěnjotna přičina za blokowanje bě: $1',
-'cant-block-while-blocked' => 'Njemóžeš druhich wužiwarjow blokować, mjeztym zo ty sy zablokowany.',
'cant-see-hidden-user' => 'Wužiwar, kotrehož pospytuješ blokować, bu hižo zablokowany a schowany. Dokelž nimaš prawo wužiwarja schować, njemóžeš blokowanje wužiwarja widźeć abo wobdźěłać.',
'ipbblocked' => 'Njemóžeš druhich wužiwarjow blokować abo wotblokować, dokelž ty sam sy zablokowany',
'ipbnounblockself' => 'Njesměš so samoho wotblokować',
'watchlistall2' => 'wšě',
'namespacesall' => 'wšě',
'monthsall' => 'wšě',
-'limitall' => 'wšě',
# Email address confirmation
'confirmemail' => 'Emailowu adresu wobkrućić',
'confirmemail_needlogin' => 'Dyrbiš so $1, zo by e-mejlowu adresu wobkrućić móhł.',
'confirmemail_success' => 'Twoja e-mejlowa adresa bu wobkrućena. Móžeš so nětko přizjewić.',
'confirmemail_loggedin' => 'Twoja e-mejlowa adresu bu nětko wobkrućena.',
-'confirmemail_error' => 'Zmylk při wobkrućenju twojeje e-mailoweje adresy.',
'confirmemail_subject' => '{{SITENAME}} – wobkrućenje e-mejloweje adresy',
'confirmemail_body' => 'Něchtó, najskerje ty z IP-adresu $1, je wužiwarske konto "$2" z tutej e-mejlowej adresu we {{GRAMMAR:lokatiw|{{SITENAME}}}} zregistrował.
# Special:ComparePages
'comparepages' => 'Strony přirunać',
-'compare-selector' => 'Wersije strony přirunać',
'compare-page1' => 'Strona 1',
'compare-page2' => 'Strona 2',
'compare-rev1' => 'Wersija 1',
'tog-minordefault' => 'Make tout modifikasyon mwen yo "tou piti" pa defo',
'tog-previewontop' => 'Montre kout je anvan zòn modifikasyon',
'tog-previewonfirst' => 'Montre kout je pou chak premye modifikasyon',
-'tog-nocache' => 'Dezame kach pou paj yo nan òdinatè mwen',
'tog-enotifwatchlistpages' => 'Voye m imèl lè youn nan paj m ap swiv yo chanje',
'tog-enotifusertalkpages' => 'Voye m imèl lè paj itilizatè m nan chanje',
'tog-enotifminoredits' => 'Voye m imèl tou pou modifikasyon paj yo ki tou piti',
'recentchanges' => 'Modifikasyon yo ki fèk fèt',
'recentchanges-legend' => 'Opsyon pou modifikasyon ki fèk fèt',
'recentchanges-feed-description' => 'Swiv dènye modifikasyon pou wiki sa a nan fil sa a (RSS,Atom...)',
-'rcnote' => "Men {{PLURAL:$1|dènye modifikasyon an|dènye '''$1''' modifikasyon yo}} depi {{PLURAL:$2|dènye jou a|<b>$2</b> dènye jou yo}}, pou jounen $5,$4.",
'rcnotefrom' => "Men modifikasyon yo ki fèt depi '''$2''' ('''$1''' dènye).",
'rclistfrom' => 'Afiche nouvo modifikasyon yo depi $1.',
'rcshowhideminor' => '$1 modifiksayon yo ki tou piti',
'tog-minordefault' => 'Alapértelmezetten minden szerkesztésemet jelölje aprónak',
'tog-previewontop' => 'Előnézet megjelenítése a szerkesztőablak előtt',
'tog-previewonfirst' => 'Előnézet első szerkesztésnél',
-'tog-nocache' => 'A lapok gyorstárazásának letiltása a böngészőben',
'tog-enotifwatchlistpages' => 'Kapjak értesítést e-mailben, ha egy általam figyelt lap vagy fájl megváltozik',
'tog-enotifusertalkpages' => 'Kapjak értesítést e-mailben, ha megváltozik a vitalapom',
'tog-enotifminoredits' => 'Kapjak értesítést e-mailben a lapok és fájlok apró változtatásairól',
'recentchanges-label-bot' => 'Ezt a szerkesztést egy bot hajtotta végre',
'recentchanges-label-unpatrolled' => 'Ezt a szerkesztést még nem ellenőrizték',
'recentchanges-legend-newpage' => '$1 – új lap',
-'rcnote' => "Alább az utolsó '''{{PLURAL:$2|egy|$2}}''' nap utolsó '''{{PLURAL:$1|egy|$1}}''' változtatása látható. A lap generálásának időpontja $4, $5.",
'rcnotefrom' => 'Alább a <b>$2</b> óta történt változtatások láthatóak (<b>$1</b> db).',
'rclistfrom' => '$1 után történt változtatások megtekintése',
'rcshowhideminor' => 'apró szerkesztések $1',
'undeletebtn' => 'Helyreállítás',
'undeletelink' => 'megtekintés/helyreállítás',
'undeleteviewlink' => 'megtekintés',
-'undeletereset' => 'Vissza',
'undeleteinvert' => 'Kijelölés megfordítása',
'undeletecomment' => 'Ok:',
'undeletedrevisions' => '{{PLURAL:$1|egy|$1}} változat helyreállítva',
'block' => 'Felhasználó blokkolása',
'unblock' => 'Felhasználó blokkolásának feloldása',
'blockip' => 'Blokkolás',
-'blockip-title' => 'Felhasználó blokkolása',
'blockip-legend' => 'Felhasználó blokkolása',
'blockiptext' => 'Az alábbi űrlap segítségével megvonhatod egy szerkesztő vagy IP-cím szerkesztési jogait.
Ügyelj rá, hogy az intézkedésed mindig legyen tekintettel a vonatkozó [[{{MediaWiki:Policy-url}}|irányelvekre]].
'ipadressorusername' => 'IP-cím vagy felhasználói név',
'ipbexpiry' => 'Lejárat:',
'ipbreason' => 'Ok:',
-'ipbreasonotherlist' => 'Más ok',
'ipbreason-dropdown' => '*Gyakori blokkolási okok
** Téves információ beírása
** Lapok tartalmának eltávolítása
'ipbsubmit' => 'Blokkolás',
'ipbother' => 'Más időtartam:',
'ipboptions' => '2 óra:2 hours,1 nap:1 day,3 nap:3 days,1 hét:1 week,2 hét:2 weeks,1 hónap:1 month,3 hónap:3 months,6 hónap:6 months,1 év:1 year,végtelen:infinite',
-'ipbotheroption' => 'Más időtartam',
-'ipbotherreason' => 'Más/további ok:',
'ipbhidename' => 'A felhasználónév ne jelenjen meg a szerkesztéseknél és a listákban',
'ipbwatchuser' => 'A felhasználó lapjának és vitalapjának figyelése',
'ipb-disableusertalk' => 'Megakadályozza, hogy a felhasználó szerkeszthesse a saját vitalapját, miközben blokkolva van',
'proxyblockreason' => "Az IP-címeden ''nyílt proxy'' üzemel. Amennyiben nem használsz proxyt, vedd fel a kapcsolatot egy informatikussal vagy az internetszolgáltatóddal ezen súlyos biztonsági probléma ügyében.",
'sorbsreason' => 'Az IP-címed nyitott proxyként szerepel e webhely által használt DNSBL listán.',
'sorbs_create_account_reason' => 'Az IP-címed nyitott proxyként szerepel e webhely által használt DNSBL listán. Nem hozhatsz létre fiókot.',
-'cant-block-while-blocked' => 'Nem blokkolhatsz más szerkesztőket, miközben te magad blokkolva vagy.',
'cant-see-hidden-user' => 'A felhasználó, akit blokkolni próbáltál már blokkolva és rejtve van. Mivel nincs felhasználó elrejtése jogosultságod, nem láthatod és nem szerkesztheted a felhasználó blokkját.',
'ipbblocked' => 'Nem blokkolhatsz és nem oldhatod fel más felhasználók blokkjait, mert te magad is blokkolva vagy',
'ipbnounblockself' => 'Nincs jogosultságod feloldani a saját felhasználói fiókod blokkját',
'watchlistall2' => 'bármikor',
'namespacesall' => 'Összes',
'monthsall' => 'mind',
-'limitall' => 'mind',
# Email address confirmation
'confirmemail' => 'E-mail cím megerősítése',
'confirmemail_needlogin' => 'Meg kell $1 erősíteni az e-mail címedet.',
'confirmemail_success' => 'Az e-mail címed megerősítve. Most már beléphetsz a wikibe.',
'confirmemail_loggedin' => 'E-mail címed megerősítve.',
-'confirmemail_error' => 'Hiba az e-mail címed megerősítése során.',
'confirmemail_subject' => '{{SITENAME}} e-mail cím megerősítés',
'confirmemail_body' => 'Valaki, valószínűleg te, ezzel az e-mail címmel regisztrált
„$2” néven a(z) {{SITENAME}} wikin, a(z) $1 IP-címről.
# Special:ComparePages
'comparepages' => 'Lapok összehasonlítása',
-'compare-selector' => 'Lapváltozatok összehasonlítása',
'compare-page1' => '1. lap',
'compare-page2' => '2. lap',
'compare-rev1' => '1. változat',
'tog-minordefault' => 'Նշել խմբագրումները որպես չնչին ըստ լռության',
'tog-previewontop' => 'Ցույց տալ նախադիտումը խմբագրման դաշտից առաջ',
'tog-previewonfirst' => 'Նախադիտել մինչև առաջին խմբագրությունը',
-'tog-nocache' => 'Արգելել էջերի գրանցումը հիշողության մեջ',
'tog-enotifwatchlistpages' => 'էլ-փոստով տեղեկացնել հսկվող էջերում փոփոխությունների մասին',
'tog-enotifusertalkpages' => 'էլ-փոստով տեղեկացնել իմ քննարկման էջի փոփոխության մասին',
'tog-enotifminoredits' => 'էլ-փոստով տեղեկացնել էջերի նաև չնչին խմբագրումների մասին',
'recentchanges-label-bot' => 'Այս խմբագրումը կատարվել է բոտի կողմից',
'recentchanges-label-unpatrolled' => 'Այս խմբագրումը դեռ չի պարեկվել',
'recentchanges-legend-newpage' => '$1 - նոր էջ',
-'rcnote' => 'Ստորև բերված են վերջին <strong>$1</strong> փոփոխությունները վերջին <strong>$2</strong> {{PLURAL:$2|օրվա|օրվա}} ընթացքում՝ $5, $4-ի դրությամբ։',
'rcnotefrom' => "Ստորև բերված են փոփոխությունները սկսած՝ '''$2''' (մինչև՝ '''$1''')։",
'rclistfrom' => 'Ցույց տալ նոր փոփոխությունները սկսած $1',
'rcshowhideminor' => '$1 չնչին խմբագրումները',
'undeletebtn' => 'Վերականգնել',
'undeletelink' => 'դիտել/վերականգնել',
'undeleteviewlink' => 'դիտել',
-'undeletereset' => 'Մաքրել',
'undeleteinvert' => 'Շրջել ընտրությունը',
'undeletecomment' => 'Մեկնաբանություն.',
'undeletedrevisions' => 'վերականգնվեց $1 տարբերակ',
'block' => 'Արգելափակել մասնակցին',
'unblock' => 'Արգելափակումից հանել',
'blockip' => 'Մասնակցի արգելափակում',
-'blockip-title' => 'Արգելափակել մասնակցին',
'blockip-legend' => 'Մասնակցի արգելափակում',
'blockiptext' => 'Օգտագործեք ստորև բերված ձևը որոշակի IP-հասցեից կամ մասնակցի անունից գրելու հնարավորությունը արգելափակելու համար։
Նման բան հարկավոր է անել միայն վանդալության կանխարգելման նպատակով և համաձայն [[{{MediaWiki:Policy-url}}|կանոնակարգի]]։
'ipadressorusername' => 'IP-հասցե կամ մասնակցի անուն.',
'ipbexpiry' => 'Մարման ժամկետ.',
'ipbreason' => 'Պատճառ.',
-'ipbreasonotherlist' => 'Այլ պատճառ',
'ipbreason-dropdown' => '*Արգելափակման սովորական պատճառներ
** Կեղծ տեղեկությունների ներմուծում
** Էջերից նյութերի հեռացում
'ipbsubmit' => 'Արգելափակել այս մասնակցին',
'ipbother' => 'Այլ ժամկետ.',
'ipboptions' => '2 ժամ:2 hours,1 օր:1 day,3 օր:3 days,1 շաբաթ:1 week,2 շաբաթ:2 weeks,1 ամիս:1 month,3 ամիս:3 months,6 ամիս:6 months,1 տարի:1 year,անժամկետ:infinite',
-'ipbotheroption' => 'այլ',
-'ipbotherreason' => 'Այլ/հավելյալ պատճառներ.',
'ipbhidename' => 'Թաքցնել մասնակցի անունը արգելափակման տեղեկամատյանից, գործող արգելափակումների ցանկից և մասնակիցների ցանկից։',
'badipaddress' => 'Սխալ IP-հասցե',
'blockipsuccesssub' => 'Արգելափակումը կատարված է',
'watchlistall2' => 'բոլոր',
'namespacesall' => 'բոլոր',
'monthsall' => 'բոլոր',
-'limitall' => 'բոլոր',
# Email address confirmation
'confirmemail' => 'Էլ-հասցեի վավերացում',
'confirmemail_needlogin' => 'Ձեզ անհրաժեշտ է $1՝ ձեր էլ-փոստի հասցեն վավերացնելու համար։',
'confirmemail_success' => 'Ձեր էլ-փոստի հասցեն վավերացված է։ Դուք կարող եք մտնել համակարգ և օգտվել վիքիից։',
'confirmemail_loggedin' => 'Ձեր էլ-փոստի հասցեն վավերացված է։',
-'confirmemail_error' => 'Տեղի է ունեցել սխալ էլ-փոստի հասցեի վավերացման ընթացքում։',
'confirmemail_subject' => '{{SITENAME}}. էլ-հասցեի վավերացման հայց',
'confirmemail_body' => 'Ինչ-որ մեկը, հավանաբար դուք, $1 IP-հասցեից գրանցվել է {{SITENAME}} նախագծի կայքում՝ ստեղծելով «$2» մասնակցային հաշիվը, և նշել է ձեր էլ-փոստի հասցեն։
# Special:ComparePages
'comparepages' => 'Համեմատել էջեր',
-'compare-selector' => 'Համեմատել էջի տարբերակներ',
'compare-page1' => 'Էջ 1',
'compare-page2' => 'Էջ 2',
'compare-submit' => 'Համեմատել',
'tog-minordefault' => 'Marcar omne modificationes initialmente como minor',
'tog-previewontop' => 'Monstrar previsualisation ante le quadro de modification',
'tog-previewonfirst' => 'Monstrar previsualisation al prime modification',
-'tog-nocache' => "Disactivar le ''cache'' de paginas in le navigator",
'tog-enotifwatchlistpages' => 'Notificar me per e-mail quando un pagina o file in mi observatorio es modificate',
'tog-enotifusertalkpages' => 'Notificar me per e-mail quando mi pagina de discussion es modificate',
'tog-enotifminoredits' => 'Notificar me etiam de modificationes minor de paginas e files',
'recentchanges-label-unpatrolled' => 'Iste modification non ha ancora essite patruliate',
'recentchanges-label-plusminus' => 'Le dimension del pagina ha cambiate de iste numero de bytes',
'recentchanges-legend-newpage' => '(vide etiam le [[Special:NewPages|lista de nove paginas]])',
-'rcnote' => "Infra es {{PLURAL:$1|'''1''' modification|le ultime '''$1''' modificationes}} in le ultime {{PLURAL:$2|die|'''$2''' dies}}, actualisate le $4 a $5.",
'rcnotefrom' => 'infra es le modificationes a partir de <b>$2</b> (usque a <b>$1</b>).',
'rclistfrom' => 'Monstrar nove modificationes a partir de $1',
'rcshowhideminor' => '$1 modificationes minor',
'undeletebtn' => 'Restaurar',
'undeletelink' => 'vider/restaurar',
'undeleteviewlink' => 'vider',
-'undeletereset' => 'Reinitialisar',
'undeleteinvert' => 'Inverter selection',
'undeletecomment' => 'Motivo:',
'undeletedrevisions' => '{{PLURAL:$1|1 version|$1 versiones}} restaurate',
'block' => 'Blocar usator',
'unblock' => 'Disblocar usator',
'blockip' => 'Blocar usator',
-'blockip-title' => 'Blocar usator',
'blockip-legend' => 'Blocar usator',
'blockiptext' => 'Usa le formulario infra pro blocar le accesso de scriptura
a partir de un adresse IP specific.
'ipadressorusername' => 'Adresse IP o nomine de usator:',
'ipbexpiry' => 'Expiration:',
'ipbreason' => 'Motivo:',
-'ipbreasonotherlist' => 'Altere motivo',
'ipbreason-dropdown' => "*Motivos frequente pro blocar
** Insertion de informationes false
** Elimination de contento de paginas
'ipbsubmit' => 'Blocar iste usator',
'ipbother' => 'Altere durata:',
'ipboptions' => '2 horas:2 hours,1 die:1 day,3 dies:3 days,1 septimana:1 week,2 septimanas:2 weeks,1 mense:1 month,3 menses:3 months,6 menses:6 months,1 anno:1 year,infinite:infinite',
-'ipbotheroption' => 'altere',
-'ipbotherreason' => 'Motivo altere/additional:',
'ipbhidename' => 'Celar le nomine del usator del modificationes e del listas',
'ipbwatchuser' => 'Observar le paginas de usator e de discussion de iste usator',
'ipb-disableusertalk' => 'Impedir iste usator de modificar su proprie pagina de discussion durante que ille es blocate',
'sorbs_create_account_reason' => 'Tu adresse IP es listate como proxy aperte in le DNSBL usate per {{SITENAME}}.
Tu non pote crear un conto',
'xffblockreason' => 'Un adresse IP presente in le capite X-Forwarded-For, o le tue o illo de un servitor proxy que tu usa, ha essite blocate. Le motivo original pro le blocada es: $1',
-'cant-block-while-blocked' => 'Tu non pote blocar altere usatores durante que tu mesme es blocate.',
'cant-see-hidden-user' => 'Le usator que tu tenta blocar ha ja essite blocate e celate. Post que tu non ha le derecto hideuser, tu non pote vider o modificar le blocada del usator.',
'ipbblocked' => 'Tu non pote blocar o disblocar altere usatores, proque tu mesme es blocate',
'ipbnounblockself' => 'Tu non ha le permission de disblocar te mesme',
'watchlistall2' => 'totes',
'namespacesall' => 'totes',
'monthsall' => 'totes',
-'limitall' => 'totes',
# Email address confirmation
'confirmemail' => 'Confirmar adresse de e-mail',
'confirmemail_success' => 'Tu adresse de e-mail ha essite confirmate.
Tu pote ora aperir un session e fruer te del wiki.',
'confirmemail_loggedin' => 'Tu adresse de e-mail ha ora essite confirmate.',
-'confirmemail_error' => 'Un problema occurreva durante le salveguarda de tu confirmation.',
'confirmemail_subject' => 'Confirmation del adresse de e-mail pro {{SITENAME}}',
'confirmemail_body' => 'Un persona, probabilemente tu, usante le adresse IP $1,
ha create un conto "$2" con iste adresse de e-mail in {{SITENAME}}.
# Special:ComparePages
'comparepages' => 'Comparar paginas',
-'compare-selector' => 'Comparar versiones de pagina',
'compare-page1' => 'Pagina 1',
'compare-page2' => 'Pagina 2',
'compare-rev1' => 'Version 1',
'tog-minordefault' => 'Tandai semua suntingan sebagai suntingan kecil secara baku',
'tog-previewontop' => 'Perlihatkan pratayang sebelum kotak sunting dan tidak sesudahnya',
'tog-previewonfirst' => 'Perlihatkan pratayang pada suntingan pertama',
-'tog-nocache' => 'Nonaktifkan penyinggahan halaman peramban',
'tog-enotifwatchlistpages' => 'Kirimkan saya surel jika suatu halaman yang saya pantau berubah',
'tog-enotifusertalkpages' => 'Kirimkan saya surel jika halaman pembicaraan saya berubah',
'tog-enotifminoredits' => 'Kirimkan saya surel juga pada perubahan kecil',
'recentchanges-label-bot' => 'Suntingan ini dilakukan oleh bot',
'recentchanges-label-unpatrolled' => 'Suntingan ini belum terpatroli',
'recentchanges-legend-newpage' => '$1 - halaman baru',
-'rcnote' => "Berikut adalah {{PLURAL:$1|'''1'''|'''$1'''}} perubahan terbaru dalam {{PLURAL:$2|'''1''' hari|'''$2''' hari}} terakhir, sampai $4 pukul $5.",
'rcnotefrom' => 'Di bawah ini adalah perubahan sejak <strong>$2</strong> (ditampilkan sampai <strong>$1</strong> perubahan).',
'rclistfrom' => 'Perlihatkan perubahan terbaru sejak $1',
'rcshowhideminor' => '$1 suntingan kecil',
'undeletebtn' => 'Kembalikan',
'undeletelink' => 'lihat/kembalikan',
'undeleteviewlink' => 'lihat',
-'undeletereset' => 'Reset',
'undeleteinvert' => 'Balikkan pilihan',
'undeletecomment' => 'Alasan:',
'undeletedrevisions' => '$1 {{PLURAL:$1|revisi|revisi}} telah dikembalikan',
'block' => 'Blokir pengguna',
'unblock' => 'Buka blokir pengguna',
'blockip' => 'Blokir pengguna',
-'blockip-title' => 'Blokir pengguna',
'blockip-legend' => 'Blokir pengguna',
'blockiptext' => 'Gunakan formulir di bawah untuk memblokir akses penulisan dari sebuah alamat IP atau pengguna tertentu.
Ini hanya boleh dilakukan untuk mencegah vandalisme, dan sejalan dengan [[{{MediaWiki:Policy-url}}|kebijakan]].
'ipadressorusername' => 'Alamat IP atau nama pengguna:',
'ipbexpiry' => 'Kedaluwarsa:',
'ipbreason' => 'Alasan:',
-'ipbreasonotherlist' => 'Alasan lain',
'ipbreason-dropdown' => '*Alasan umum
** Vandalisme
** Memberikan informasi palsu
'ipbsubmit' => 'Blokir pengguna ini',
'ipbother' => 'Waktu lain:',
'ipboptions' => '2 jam:2 hours,1 hari:1 day,3 hari:3 days,1 minggu:1 week,2 minggu:2 weeks,1 bulan:1 month,3 bulan:3 months,6 bulan:6 months,1 tahun:1 year,selamanya:infinite',
-'ipbotheroption' => 'lainnya',
-'ipbotherreason' => 'Alasan lain/tambahan:',
'ipbhidename' => 'Sembunyikan nama pengguna dari suntingan dan daftar',
'ipbwatchuser' => 'Pantau halaman pengguna dan pembicaraan pengguna ini',
'ipb-disableusertalk' => 'Cegah pengguna ini untuk menyunting halaman pembicaraannya saat diblokir',
'sorbsreason' => 'Alamat IP anda terdaftar sebagai proxy terbuka di DNSBL.',
'sorbs_create_account_reason' => 'Alamat IP anda terdaftar sebagai proxy terbuka di DNSBL. Anda tidak dapat membuat akun.',
'xffblockreason' => 'Sebuah alamat IP di kepala X-Forwarded-For, entah milik Anda atau server proxy yang Anda pakai, telah diblokir. Alasan pemblokirannya adalah: $1',
-'cant-block-while-blocked' => 'Anda tidak dapat memblokir pengguna lain ketika Anda sendiri sedang diblokir.',
'cant-see-hidden-user' => 'Pengguna yang anda coba blokir telah di blokir dan di sembunyikan. Selama anda tidak memiliki hak sembunyikan pengguna, anda tidak dapat melihat atau menyunting pemblokiran pengguna ini.',
'ipbblocked' => 'Anda tidak dapat memblokir atau membuka blokir pengguna lain, karena anda sendiri diblokir',
'ipbnounblockself' => 'Anda tidak diizinkan untuk membuka blokir sendiri',
'watchlistall2' => 'semua',
'namespacesall' => 'semua',
'monthsall' => 'semua',
-'limitall' => 'semua',
# Email address confirmation
'confirmemail' => 'Konfirmasi alamat surel',
'confirmemail_success' => 'Alamat surel Anda telah dikonfirmasi.
Sekarang Anda dapat [[Special:UserLogin|masuk log]] dan mulai menggunakan wiki.',
'confirmemail_loggedin' => 'Alamat surel Anda telah dikonfirmasi.',
-'confirmemail_error' => 'Terjadi kesalahan sewaktu menyimpan konfirmasi Anda.',
'confirmemail_subject' => 'Konfirmasi alamat surel {{SITENAME}}',
'confirmemail_body' => 'Seseorang, mungkin Anda, dari alamat IP $1, telah mendaftarkan akun "$2" dengan alamat surel ini di {{SITENAME}}.
# Special:ComparePages
'comparepages' => 'Bandingkan halaman',
-'compare-selector' => 'Bandingkan revisi halaman',
'compare-page1' => 'Halaman 1',
'compare-page2' => 'Halaman 2',
'compare-rev1' => 'Revisi 1',
'tog-minordefault' => 'Marcar omni li redactiones minori per contumacie',
'tog-previewontop' => 'Monstrar prevision ante de buxe de redaction',
'tog-previewonfirst' => 'Monstrar prevision in prim redaction',
-'tog-nocache' => 'Desvalidar caching de págine',
'tog-enotifwatchlistpages' => 'Inviar me un e-mail quande un págine o dossiere de mi liste de págines vigilantie es changeat',
'tog-enotifusertalkpages' => 'Inviar me e-mail quande mi págine de discussion es changeat',
'tog-enotifminoredits' => 'Inviar me un e-mail anc por minor redactiones de págines a dossieres',
'otherlanguages' => 'Altri lingues',
'redirectedfrom' => '(Redirectet de $1)',
'redirectpagesub' => 'Págine de redirecterion',
-'lastmodifiedat' => 'Ti-ci págine ha redactet in ultim li $1, clocca $2.',
+'lastmodifiedat' => 'Ti-ci págine ha esser redactet in ultim li $1, clocca $2.',
'viewcount' => 'Ti págine ha esset accesset {{PLURAL:$1|un vez|$1 vezes}}.',
'protectedpage' => 'Un protectet págine',
'jumpto' => 'Saltar a:',
'recentchanges-label-minor' => 'Ti es un redaction minori',
'recentchanges-label-bot' => 'Ti redaction esset efectuat per un machine',
'recentchanges-label-unpatrolled' => 'Ti redaction ne have ancor esset protectet',
-'rcnote' => "In infra {{PLURAL:$1|es '''1''' change|es li ultim '''$1''' changes}} in li ultim {{PLURAL:$2|die|'''$2''' dies}}, quam de $5, $4.",
'rcnotefrom' => "In infra es li changes desde '''$2''' (ad-supra por '''$1''' monstrat).",
'rclistfrom' => 'Monstrar li nov modificationes desde $1.',
'rcshowhideminor' => '$1 redactiones minori',
'undeletebtn' => 'Restaurar',
'undeletelink' => 'vider/restaurar',
'undeleteviewlink' => 'vider',
-'undeletereset' => 'Recomensar',
'undeleteinvert' => 'Inverter selection',
'undeletecomment' => 'Motive:',
'undeletedrevisions' => '{{PLURAL:$1|1 revision|$1 revisiones}} restaurat',
'blockip' => 'Blocar usator',
'ipbreason' => 'Motive:',
'ipboptions' => '2 hores:2 hours,1 die:1 day,3 dies:3 days,1 semane:1 week,2 semanes:2 weeks,1 mensu:1 month,3 mensus:3 months,6 mensus:6 months,1 annu:1 year,ínfinit:infinite',
-'ipbotheroption' => 'altri',
'ipblocklist' => 'Usatores blocat',
'ipblocklist-submit' => 'Serchar',
'infiniteblock' => 'infinit',
'tog-minordefault' => 'Me ka nhoro da na orü ntakịrị níle',
'tog-previewontop' => 'Zitú ntàkịrị mgbe opuzọr zi igbe orü',
'tog-previewonfirst' => 'Zitú nke takírí orü mbu',
-'tog-nocache' => 'Bì-chi cache na otúzọr intaneti gi',
'tog-enotifwatchlistpages' => 'Türüm e-mail mgbe ihü nor na ndetu ihem ne lé gbanwere',
'tog-enotifusertalkpages' => 'Türüm e-mail ngbe ébé okwu ndi na banife nkem gbanwere',
'tog-enotifminoredits' => 'Türüm e-mail maka orü ntakịrị ihüá',
'recentchanges-feed-description' => 'Chóputà ihe ógẹ ǹsò na wiki ímé órírí nke á.',
'recentchanges-label-minor' => 'Ihe bu orü ntakírí',
'recentchanges-legend-newpage' => '$1 - ihü ohúrù',
-'rcnote' => "Na àlà {{PLURAL:$1|bu gbanwere '''1'''|bu gbanwere mgbèdè nke '''$1'''}} na mgbèdè {{PLURAL:$2|chi|chi '''$2'''}}, na mgbe $5, $4.",
'rclistfrom' => 'Zìrí ihe gbanwere ọhúrù shí $1',
'rcshowhideminor' => 'orü ntákírí $1',
'rcshowhidebots' => 'bot $1',
'undeletebtn' => 'Dòmárí àzụ́',
'undeletelink' => 'lé/dosimá',
'undeleteviewlink' => 'lé',
-'undeletereset' => "Mẹ̀wárí n'ísí",
'undeletecomment' => 'Mgbághapụtà:',
'undelete-search-submit' => 'Chọwa',
'undelete-show-file-submit' => 'Eeh',
# Block/unblock
'block' => "Gbàchí ọ'bànifé",
'blockip' => "Gbàchí ọ'bànifé",
-'blockip-title' => "Gbàchí ọ'bànifé",
'blockip-legend' => "Gbàchí ọ'bànifé",
'ipadressorusername' => "IP mà ọ bu áhà ọ'bànifé:",
'ipbexpiry' => 'Gbá okà:',
'ipbreason' => 'Mgbághapụtà:',
-'ipbreasonotherlist' => 'Mgbághàpụtá ozor',
'ipbsubmit' => "Kwàchí ọ'bànifé nkèá",
'ipbother' => 'Ógẹ ozor',
'ipboptions' => 'àmànì 2:2 hours,chi 1:1 day,chi 3:3 days,izù 1:1 week,izù 2:2 weeks,önwa1:1 month,önwa 3:3 months,önwa 6:6 months,afọr 1:1 year,ógè énwéghị ùbe:infinite',
-'ipbotheroption' => 'nke ozor',
'ipb-confirm' => 'Kwé mgbáchí',
'ipb-unblock-addr' => 'Ákwàchịrị $1',
'ipb-unblock' => "Ákwàchịrị áhà ọ'bànifé ma IP",
'watchlistall2' => 'nke níle',
'namespacesall' => 'nke níle',
'monthsall' => 'nke níle',
-'limitall' => 'nke níle',
# Delete conflict
'recreate' => 'Ké ya ohúrù',
# Special:ComparePages
'comparepages' => 'Má àtù ihü',
-'compare-selector' => 'Má àtù orü dírí na élú ihü',
'compare-page1' => 'Ihü 1',
'compare-page2' => 'Ihü 2',
'compare-rev1' => 'Orübà 1',
'tog-minordefault' => 'Markaan amin nga inurnos a kas sigud a bassit',
'tog-previewontop' => 'Ipakita ti panagipadas sakbay ti pagurnosan a kahon',
'tog-previewonfirst' => 'Ipakita ti pinadas iti umuna a panag-urnos',
-'tog-nocache' => 'Ibaldado ti panagilemmeng ti pabasabasa ti panid',
'tog-enotifwatchlistpages' => 'Esuratannak no mabaliwan ti panid wenno papeles idiay listaan dagiti bambantayak',
'tog-enotifusertalkpages' => 'Esuratannak no mabaliwan ti panid ti tungtungak',
'tog-enotifminoredits' => 'Esuratannak pay para kadagiti bassit a panag-urnos kadagiti panid ken papeles',
'recentchanges-label-minor' => 'Daytoy ket bassit a panag-urnos',
'recentchanges-label-bot' => 'Daytoy a panag-urnos ket inaramid babaen ti maysa a bot',
'recentchanges-label-unpatrolled' => 'Daytoy a panag-urnos ket saan pay a napatruliaan',
-'rcnote' => "Dita baba ket {{PLURAL:$1|ti '''1''' a naudi a sinukatan|dagiti '''$1''' a naudi a sinukatan}} iti napalabas nga {{PLURAL:$2|aldaw|'''$2''' nga al-aldaw}}, manipud idi $5, $4.",
'rcnotefrom' => "Dita baba ket dagiti sinukatan manipud idi '''$2''' (agingga iti '''$1''' a naipakita).",
'rclistfrom' => 'Ipakita dagiti kabarbaro a sinukatan a mangrugi manipud idi $1',
'rcshowhideminor' => '$1 dagiti bassit a panag-urnos',
'undeletebtn' => 'Isubli',
'undeletelink' => 'kitaen/isubli',
'undeleteviewlink' => 'kitaen',
-'undeletereset' => 'Isubli',
'undeleteinvert' => 'Baliktaden ti napili',
'undeletecomment' => 'Rason:',
'undeletedrevisions' => '{{PLURAL:$1|1 a binaliwan|dagiti $1 a binaliwan}} ti naisubli',
'block' => 'Seraan ti agar-aramat',
'unblock' => 'Ikkaten ti serra ti agar-aramat',
'blockip' => 'Serraan ti agar-aramat',
-'blockip-title' => 'Serraan ti agar-aramat',
'blockip-legend' => 'Serraan ti agar-aramat',
'blockiptext' => 'Usaren ti kinabuklan dita baba tapno maserraan ti panagsurat manipud iti naisangayan nga IP a pagtaengan wenno nagan ti agar-aramat.
Usaren laeng daytoy tapno pawilan ti bandalismo, ken panagtunos iti [[{{MediaWiki:Policy-url}}|annuroten]].
'ipadressorusername' => 'IP a pagtaengan wenno nagan ti agar-aramat:',
'ipbexpiry' => 'Agpaso:',
'ipbreason' => 'Rason:',
-'ipbreasonotherlist' => 'Sabali a rason',
'ipbreason-dropdown' => '*Dagiti kadawyan a rason ti panagserra
** Agikabil kadagiti madi a pakaammo
** Agikkat kadagiti linaon ti pampanid
'ipbsubmit' => 'Serraan daytoy nga agar-aramat',
'ipbother' => 'Sabali nga oras:',
'ipboptions' => '2 nga oras:2 hours,1 nga aldaw:1 day,3 nga aldaw:3 days,1 a lawas:1 week,2 a lawas:2 weeks,1 a bulan:1 month,3 a bulan:3 months,6 a bulan:6 months,1 a tawen:1 year,awan inggana:infinite',
-'ipbotheroption' => 'sabali',
-'ipbotherreason' => 'Sabali/nayon a rason:',
'ipbhidename' => 'Ilemmeng ti nagan ti agar-aramat kadagiti listaan ken inurnos',
'ipbwatchuser' => 'Bantayan ti panid ti agar-ramat ken panid ti tungtungan daytoy nga agar-aramat',
'ipb-disableusertalk' => 'Pawilan daytoy nga agar-aramat nga agurnos kadagiti bukodda a tungtungan a panid no naserraan',
'sorbs_create_account_reason' => 'Ti IP a pagtaengam ket nakalista a kasla "nalukatan a pannakbagi" idiay DNSBL nga inusar ti {{SITNAME}}.
Saanka a makaaramid ti pakabilangan',
'xffblockreason' => 'Ti maysa nga IP a pagtaengan nga adda iti X-Forwarded-For header, mabalin a kukuam wenno ti pannakbagi a server nga us-usarem, ket naserraan. Ti kasisigud a rason ti pannakaserra idi ket: $1',
-'cant-block-while-blocked' => 'Saanmo a maserraan dagiti sabali nga agar-aramat no naserraanka met.',
'cant-see-hidden-user' => 'Ti agar-aramat a kayatmo a serraan ket naserraan ken nailemmeng.
Ket awan met ti karbengam nga agilemming ti agar-aramat, saan mo a makita wenno mabaliwan ti serra ti agar-aramat.',
'ipbblocked' => 'Saanmo a mabalin ti agserra wenno agikkat ti serra ti sabali nga agar-aramat, ngamin ket naserraan ka met.',
'watchlistall2' => 'amin',
'namespacesall' => 'amin',
'monthsall' => 'amin',
-'limitall' => 'amin',
# Email address confirmation
'confirmemail' => 'Pasingkedan ti esurat a pagtaengam',
'confirmemail_success' => 'Napasingkedanen ti esurat a pagtaengam.
Mabalinmo tattan ti [[Special:UserLogin|sumrek]] ken nanamen ti wiki.',
'confirmemail_loggedin' => 'Napasingkedanen ti esurat a pagtaengam.',
-'confirmemail_error' => 'Adda banag a biddut ti panangidulin ti pammasingkedmo.',
'confirmemail_subject' => 'Pammasingked ti esurat a pagtaengan ti {{SITENAME}}',
'confirmemail_body' => 'Addaan, baka sika, ti naggapu ti IP a pagtaengan $1,
ket nagrehistro ti pakabilangan "$2" iti daytoy nga esurat a pagtaengan idiay {{SITENAME}}
# Special:ComparePages
'comparepages' => 'Ipada dagiti panid',
-'compare-selector' => 'Ipada dagiti panagbaliw ti panid',
'compare-page1' => 'Panid 1',
'compare-page2' => 'Panid 2',
'compare-rev1' => 'Panagbaliw 1',
'tog-minordefault' => 'Теркамза хувцамаш лоархӀамза белгалде',
'tog-previewontop' => 'ГӀалатнийсдара кора хьалхе бӀаргтассам оттае',
'tog-previewonfirst' => 'ГӀалатнийсдаре дехьавоалаш/йоалаш бӀаргтассам хьахьокха',
-'tog-nocache' => 'Укхазара оагӀувнаший лочкъараш дӀадоаде',
'tog-enotifwatchlistpages' => 'ОагӀувний хувцамахи теркама дагарленахи лаьца, д-хоамнец хоам бе',
'tog-enotifusertalkpages' => 'Са дувцама оагӀув тӀа хувцамаш хилача, д-хоамнец хоам бе',
'tog-enotifminoredits' => 'Геттара зӀамига хувцамаш хилача, д-хоамнец хоам бе',
'recentchanges-label-minor' => 'ЗIамига хувцам я',
'recentchanges-label-bot' => 'Ер хувцам бIатаца яь е',
'recentchanges-label-unpatrolled' => 'Ер хувцам ший моттиге кхы дIадехьаяьккхаяц.',
-'rcnote' => "{{PLURAL:$1|Тlехьара '''$1''' хувцам|Тlехьара '''$1''' хувцамаш}} дола '''$2''' {{PLURAL:$2|ден|деношкахь}}, укх сахьате $5 $4.",
'rcnotefrom' => 'КIалхагIа хувцамаш хьахьекха я <strong>$2</strong> денза (<strong>$1</strong> кхачалца).',
'rclistfrom' => '$1 тIара хувцамаш хьахьокха',
'rcshowhideminor' => 'зIамига хувцамаш $1',
'watchlistall2' => 'деррига',
'namespacesall' => 'деррига',
'monthsall' => 'деррига',
-'limitall' => 'деррига',
# action=purge
'confirm_purge_button' => 'ХIаа',
'tog-minordefault' => 'Markizez kustume omna redaktajo kom mikra',
'tog-previewontop' => 'Montrez prevido avan la redakto-buxo',
'tog-previewonfirst' => 'Montrez prevido pos la unesma redakto',
-'tog-nocache' => 'Nekapableskez cache-ar pagini',
'tog-enotifwatchlistpages' => 'Sendez e-posto a me kande pagino quan me surveyas chanjesas',
'tog-enotifusertalkpages' => 'Sendez e-posto a me kande mea diskuto-pagino chanjesas',
'tog-enotifminoredits' => 'Sendez e-posto a me mem por mikra chanji',
'recentchanges-label-minor' => 'Ica es mikra redaktajo',
'recentchanges-label-bot' => 'Ta chanjo facita da bot',
'recentchanges-legend-newpage' => '$1 - nova pagino',
-'rcnote' => "Infre esas la lasta {{PLURAL:$1|'''1''' chanjo|'''$1''' chanji}} dum la lasta {{PLURAL:$2|dio|'''$2''' dii}} ye $5, $4.",
'rcnotefrom' => "Infre esas la lasta chanji depos '''$2''' (montrita til '''$1''').",
'rclistfrom' => 'Montrar nova chanji startante de $1',
'rcshowhideminor' => '$1 mikra redakti',
'ipadressorusername' => 'IP-adreso od uzantonomo:',
'ipbexpiry' => 'Expiro:',
'ipbreason' => 'Motivo:',
-'ipbreasonotherlist' => 'Altra motivo',
'ipbreason-dropdown' => '*Ordinara motivi por blokuso
** Insertar nevera informi
** Efacar kontenajo de pagini
'ipbsubmit' => 'Blokusar ica uzanto',
'ipbother' => 'Altra tempo:',
'ipboptions' => '2 horo:2 hours,1 dio:1 day,3 dii:3 days,1 semano:1 week,2 semani:2 weeks,1 monato:1 month,3 monati:3 months,6 monati:6 months,1 yaro:1 year,infinita:infinite',
-'ipbotheroption' => 'altra',
-'ipbotherreason' => 'Altra/suplementala motivo:',
'badipaddress' => 'IP-adreso ne esas valida',
'blockipsuccesssub' => 'Blokusado sucesis',
'blockipsuccesstext' => '[[Special:Contributions/$1|$1]] blokusesis.<br />
'tog-minordefault' => 'Merkja allar breytingar sem minniháttar sjálfgefið',
'tog-previewontop' => 'Sýna forskoðun á undan breytingarkassanum',
'tog-previewonfirst' => 'Sýna forskoðun með fyrstu breytingu',
-'tog-nocache' => 'Slökkva á flýtiminni vafrans',
'tog-enotifwatchlistpages' => 'Senda mér tölvupóst þegar síðu eða skrá á vaktlistanum mínu er breytt',
'tog-enotifusertalkpages' => 'Senda mér tölvupóst þegar notandaspjallinu mínu er breytt',
'tog-enotifminoredits' => 'Senda mér einnig tölvupóst vegna minniháttar breytinga á síðum og skrám',
# All link text and link target definitions of links into project namespace that get used by other message strings, with the exception of user group pages (see grouppage).
'aboutsite' => 'Um {{SITENAME}}',
'aboutpage' => 'Project:Um verkefnið',
-'copyright' => 'Efni má nota samkvæmt $1 nema kemur fram annars.',
+'copyright' => 'Efni má nota samkvæmt $1 nema annað komi fram.',
'copyrightpage' => '{{ns:project}}:Höfundarréttur',
'currentevents' => 'Potturinn',
'currentevents-url' => 'Project:Potturinn',
'recentchanges-label-bot' => 'Þessi breytingar var gerð af vélmenni',
'recentchanges-label-unpatrolled' => 'Þessi breyting hefur ekki verið yfirfarin',
'recentchanges-legend-newpage' => '$1 - ný síða',
-'rcnote' => "Að neðan {{PLURAL:$1|er '''1''' breyting|eru síðustu '''$1''' breytingar}} síðast {{PLURAL:$2|liðinn dag|liðna '''$2''' daga}}, frá $5, $4.",
'rcnotefrom' => "Að neðan eru breytingar síðan '''$2''' (allt að '''$1''' sýndar).",
'rclistfrom' => 'Sýna breytingar frá og með $1',
'rcshowhideminor' => '$1 minniháttar breytingar',
'undeletebtn' => 'Endurvekja',
'undeletelink' => 'skoða/endurvekja',
'undeleteviewlink' => 'skoða',
-'undeletereset' => 'Endurstilla',
'undeleteinvert' => 'Snúa vali við',
'undeletecomment' => 'Ástæða:',
'undeletedrevisions' => '$1 {{PLURAL:$1|breyting endurvakin|breytingar endurvaktar}}',
'block' => 'Banna notanda',
'unblock' => 'Afbanna notanda',
'blockip' => 'Banna notanda',
-'blockip-title' => 'Banna notanda',
'blockip-legend' => 'Banna notanda',
'blockiptext' => 'Notaðu eyðublaðið hér að neðan til þess að banna ákveðið vistfang eða notandanafn.
Þetta ætti einungis að gera til þess að koma í veg fyrir skemmdarverk, og í samræmi við [[{{MediaWiki:Policy-url}}|samþykktir]].
'ipadressorusername' => 'Vistfang eða notandanafn:',
'ipbexpiry' => 'Bannið rennur út:',
'ipbreason' => 'Ástæða:',
-'ipbreasonotherlist' => 'Aðrar ástæður',
'ipbreason-dropdown' => '* Algengar bannástæður
** Setur inn rangar upplýsingar
** Fjarlægir efni af síðum
'ipbsubmit' => 'Banna notanda',
'ipbother' => 'Annar tími:',
'ipboptions' => '2 tíma:2 hours,1 dag:1 day,3 daga:3 days,1 viku:1 week,2 vikur:2 weeks,1 mánuð:1 month,3 mánuði:3 months,6 mánuði:6 months,1 ár:1 year,aldrei:infinite',
-'ipbotheroption' => 'annar',
-'ipbotherreason' => 'Önnur/auka ástæða:',
'ipbhidename' => 'Fela notandanafn úr breytingarskrá og listum',
'ipbwatchuser' => 'Vakta notanda- og spjallsíður þessa notanda',
'ipb-disableusertalk' => 'Banna þessum notanda að breyta eigin spjallsíðu',
'sorbsreason' => 'Vistfangið þitt er á lista yfir opin vefsel í DNSBL sem er í notkun á {{SITENAME}}.',
'sorbs_create_account_reason' => 'Vistfangið þitt er á lista yfir opin vefsel í DNSBL sem er notað af {{SITENAME}}.
Þú getur ekki stofnað aðgang.',
-'cant-block-while-blocked' => 'Þú getur ekki bannað aðra notendur á meðan þú ert í banni.',
'cant-see-hidden-user' => 'Notandinn sem þú ert að reyna að banna hefur þegar verið bannaður og falinn.
Þar sem þú hefur ekki þau réttindi að fela notendur, þá getur þú ekki séð eða breytt banni notandans.',
'ipbblocked' => 'Þú getur ekki bannað eða afbannað aðra notendur, því þú ert sjálfur í banni.',
'watchlistall2' => 'allt',
'namespacesall' => 'öll',
'monthsall' => 'allir',
-'limitall' => 'alla',
# Email address confirmation
'confirmemail' => 'Staðfesta netfang',
'confirmemail_needlogin' => 'Þú verður að $1 þig til að staðfesta netfangið þitt.',
'confirmemail_success' => 'Netfang þitt hefur verið staðfest. Þú getur nú [[Special:UserLogin|skráð þig inn]] og vafrað um wiki-kerfið.',
'confirmemail_loggedin' => 'Netfang þitt hefur verið staðfest.',
-'confirmemail_error' => 'Eitthvað fór úrskeiðis við vistun staðfestingarinnar.',
'confirmemail_subject' => 'Staðfesting netfangs á {{SITENAME}}',
'confirmemail_body' => 'Einhver, sennilega þú, með vistfangið $1 hefur skráð sig á {{SITENAME}} undir notandanafninu „$2“ og gefið upp þetta netfang.
# Special:ComparePages
'comparepages' => 'Bera saman síður',
-'compare-selector' => 'Bera saman útgáfur síðna',
'compare-page1' => 'Síða 1',
'compare-page2' => 'Síða 2',
'compare-rev1' => 'Útgáfa 1',
'tog-minordefault' => 'Indica ogni modifica come minore (solo come predefinito)',
'tog-previewontop' => "Mostra l'anteprima sopra la casella di modifica e non sotto",
'tog-previewonfirst' => "Mostra l'anteprima almeno una volta prima di salvare",
-'tog-nocache' => 'Disabilita la cache delle pagine del browser',
'tog-enotifwatchlistpages' => 'Inviami una email quando viene modificata una pagina o un file presente tra gli osservati speciali',
'tog-enotifusertalkpages' => 'Segnalami via e-mail le modifiche alla mia pagina di discussione',
'tog-enotifminoredits' => 'Inviami una email anche per le modifiche minori di pagine e file',
'recentchanges-label-plusminus' => 'La dimensione della pagina è cambiata di questo numero di byte',
'recentchanges-legend-newpage' => "(vedi anche [[Special:NewPages|l'elenco delle nuove pagine]])",
'recentchanges-legend-plusminus' => "(''±123'')",
-'rcnote' => "Di seguito {{PLURAL:$1|è elencata la modifica più recente apportata|sono elencate le '''$1''' modifiche più recenti apportate}} al sito {{PLURAL:$2|nelle ultime 24 ore|negli scorsi '''$2''' giorni}}; i dati sono aggiornati alle $5 del $4.",
'rcnotefrom' => "Di seguito sono elencate le modifiche apportate a partire da '''$2''' (fino a '''$1''').",
'rclistfrom' => 'Mostra le modifiche apportate a partire da $1',
'rcshowhideminor' => '$1 le modifiche minori',
'undeletebtn' => 'Ripristina',
'undeletelink' => 'visualizza/ripristina',
'undeleteviewlink' => 'visualizza',
-'undeletereset' => 'Reimposta',
'undeleteinvert' => 'Inverti selezione',
'undeletecomment' => 'Motivo:',
'undeletedrevisions' => '{{PLURAL:$1|Una revisione recuperata|$1 revisioni recuperate}}',
'block' => 'Blocca utente',
'unblock' => 'Sblocca utente',
'blockip' => 'Blocco utente',
-'blockip-title' => 'Blocca utente',
'blockip-legend' => "Blocca l'utente",
'blockiptext' => "Usare il modulo sottostante per bloccare l'accesso in scrittura a uno specifico indirizzo IP o un utente registrato.
Il blocco dev'essere operato per prevenire atti di vandalismo e in stretta osservanza della [[{{MediaWiki:Policy-url}}|policy di {{SITENAME}}]].
'ipadressorusername' => 'Indirizzo IP o nome utente:',
'ipbexpiry' => 'Scadenza del blocco:',
'ipbreason' => 'Motivo:',
-'ipbreasonotherlist' => 'Altra motivazione',
'ipbreason-dropdown' => '*Motivazioni più comuni per i blocchi
** Inserimento di informazioni false
** Rimozione di contenuti dalle pagine
'ipbsubmit' => "Blocca l'utente",
'ipbother' => 'Durata non in elenco:',
'ipboptions' => '2 ore:2 hours,1 giorno:1 day,3 giorni:3 days,1 settimana:1 week,2 settimane:2 weeks,1 mese:1 month,3 mesi:3 months,6 mesi:6 months,1 anno:1 year,infinito:infinite',
-'ipbotheroption' => 'altro',
-'ipbotherreason' => 'Altri motivi/dettagli:',
'ipbhidename' => 'Nascondi il nome utente dalle modifiche e dagli elenchi.',
'ipbwatchuser' => 'Segui le pagine e le discussioni utente di questo utente',
'ipb-disableusertalk' => 'Impedisci a questo utente di modificare la propria pagina di discussioni mentre è bloccato',
'sorbsreason' => 'Questo indirizzo IP è elencato come proxy aperto nella blacklist DNSBL utilizzata da {{SITENAME}}.',
'sorbs_create_account_reason' => 'Non è possibile creare nuovi accessi da questo indirizzo IP perché è elencato come proxy aperto nella blacklist DNSBL utilizzata da {{SITENAME}}.',
'xffblockreason' => "Un indirizzo IP presente nell'intestazione X-Forwarded-For, tuo o del server proxy che stai utilizzando, è stato bloccato. La motivazione originale del blocco è: $1",
-'cant-block-while-blocked' => 'Non è possibile bloccare altri utenti mentre si è bloccati.',
'cant-see-hidden-user' => 'L\'utente che si sta tentando di bloccare è stato già bloccato e nascosto. Poiché non hai il permesso "hideuser", non è possibile visualizzare o modificare il blocco dell\'utente.',
'ipbblocked' => 'Non puoi bloccare o sbloccare altri utenti, perché tu stesso sei bloccato',
'ipbnounblockself' => 'Non puoi sbloccare te stesso',
'watchlistall2' => 'tutte',
'namespacesall' => 'tutti',
'monthsall' => 'tutti',
-'limitall' => 'tutti',
# Email address confirmation
'confirmemail' => 'Conferma indirizzo email',
'confirmemail_needlogin' => 'È necessario $1 per confermare il proprio indirizzo e-mail.',
'confirmemail_success' => "L'indirizzo e-mail è confermato. Ora è possibile [[Special:UserLogin|eseguire l'accesso]] e fare pieno uso del sito.",
'confirmemail_loggedin' => "L'indirizzo email è stato confermato.",
-'confirmemail_error' => 'Errore nel salvataggio della conferma.',
'confirmemail_subject' => "{{SITENAME}}: richiesta di conferma dell'indirizzo",
'confirmemail_body' => 'Qualcuno, probabilmente tu stesso dall\'indirizzo IP $1, ha registrato l\'account "$2" su {{SITENAME}} indicando questo indirizzo e-mail.
'imgmultigo' => 'Vai',
'imgmultigoto' => 'Vai alla pagina $1',
+# Language selector for translatable SVGs
+'img-lang-default' => '(lingua predefinita)',
+'img-lang-go' => 'Vai',
+
# Table pager
'ascending_abbrev' => 'cresc',
'descending_abbrev' => 'decresc',
# Special:ComparePages
'comparepages' => 'Confronta le pagine',
-'compare-selector' => 'Confronta le revisioni di una pagina',
'compare-page1' => 'Pagina 1',
'compare-page2' => 'Pagina 2',
'compare-rev1' => 'Revisione 1',
'tog-minordefault' => '細部の編集に既定でチェックを入れる',
'tog-previewontop' => 'プレビューを編集ボックスの前に配置',
'tog-previewonfirst' => '編集開始時にもプレビューを表示',
-'tog-nocache' => 'ブラウザーによるページのキャッシュを無効にする',
'tog-enotifwatchlistpages' => 'ウォッチリストにあるページやファイルが更新されたらメールを受け取る',
'tog-enotifusertalkpages' => '自分のトークページが更新されたらメールを受け取る',
'tog-enotifminoredits' => 'ページやファイルへの細部の編集でもメールを受け取る',
'ok' => 'OK',
'retrievedfrom' => '「$1」から取得',
-'youhavenewmessages' => '$1があります ($2)。',
-'youhavenewmessagesfromusers' => '{{PLURAL:$3|他の利用者|$3 人の利用者}}からの$1があります ($2)。',
+'youhavenewmessages' => '$1が{{PLURAL:$3|あります}} ($2)。',
+'youhavenewmessagesfromusers' => '{{PLURAL:$3|他の利用者|$3 人の利用者}}からの$1が{{PLURAL:$4|あります}} ($2)。',
'youhavenewmessagesmanyusers' => '多数の利用者からの$1があります ($2)。',
'newmessageslinkplural' => '{{PLURAL:$1|新着メッセージ}}',
'newmessagesdifflinkplural' => '{{PLURAL:$1|最新の差分|999=最新版までの差分}}',
'createacct-benefit-heading' => '{{SITENAME}}は、あなたのような人々が創っています。',
'createacct-benefit-body1' => '{{PLURAL:$1|編集}}',
'createacct-benefit-body2' => '{{PLURAL:$1|ページ}}',
-'createacct-benefit-body3' => '最近の{{PLURAL:$1|貢献者}}',
+'createacct-benefit-body3' => '最近の{{PLURAL:$1|投稿者数}}',
'badretype' => '入力したパスワードが一致しません。',
'userexists' => '入力された利用者名は既に使用されています。
他の名前を選んでください。',
現在ご使用中のIPアドレスは$3 、このブロックIDは#$5です。
お問い合わせの際は、上記の情報を必ず書いてください。",
'blockednoreason' => '理由が設定されていません',
-'whitelistedittext' => 'ã\81\93ã\81®ã\83\9aã\83¼ã\82¸ã\82\92ç·¨é\9b\86ã\81\99ã\82\8bã\81«ã\81¯$1ã\81\99ã\82\8bå¿\85è¦\81ã\81\8cã\81\82ã\82\8aã\81¾ã\81\99。',
+'whitelistedittext' => 'ã\81\93ã\81®ã\83\9aã\83¼ã\82¸ã\82\92ç·¨é\9b\86ã\81\99ã\82\8bã\81«ã\81¯$1ã\81\97ã\81¦ã\81\8fã\81 ã\81\95ã\81\84。',
'confirmedittext' => 'ページの編集を始める前にメールアドレスの確認をする必要があります。
[[Special:Preferences|個人設定]]でメールアドレスを設定し、確認を行ってください。',
'nosuchsectiontitle' => '節が見つかりません',
ページを閲覧している間に移動あるいは削除された可能性があります。',
'loginreqtitle' => 'ログインが必要',
'loginreqlink' => 'ログイン',
-'loginreqpagetext' => 'ä»\96ã\81®ã\83\9aã\83¼ã\82¸ã\82\92é\96²è¦§ã\81\99ã\82\8bã\81«ã\81¯$1ã\81\99ã\82\8bå¿\85è¦\81ã\81\8cã\81\82ã\82\8aã\81¾ã\81\99。',
+'loginreqpagetext' => 'ä»\96ã\81®ã\83\9aã\83¼ã\82¸ã\82\92é\96²è¦§ã\81\99ã\82\8bã\81«ã\81¯$1ã\81\97ã\81¦ã\81\8fã\81 ã\81\95ã\81\84。',
'accmailtitle' => 'パスワードをお送りしました',
'accmailtext' => "[[User talk:$1|$1]]のために無作為に生成したパスワードを、$2に送信しました。パスワードは、ログインした際に''[[Special:ChangePassword|パスワード変更]]''ページで変更できます。",
'newarticle' => '(新)',
'nextn-title' => '次の{{PLURAL:$1|$1件}}',
'shown-title' => 'ページあたり{{PLURAL:$1|$1件の結果}}を表示',
'viewprevnext' => '($1{{int:pipe-separator}}$2) ($3 件) を表示',
-'searchmenu-exists' => "'''このウィキには「[[:$1]]」という名前のページがあります'''",
-'searchmenu-new' => "'''ã\81\93ã\81®ã\82¦ã\82£ã\82ã\81§ã\83\9aã\83¼ã\82¸ã\80\8c[[:$1]]ã\80\8dã\82\92æ\96°è¦\8fä½\9cæ\88\90ã\81\99ã\82\8b'''",
+'searchmenu-exists' => "'''このウィキには「[[:$1]]」という名前のページがあります。'''{{PLURAL:$2|0=|検索で見つかった他のページも参照してください。}}",
+'searchmenu-new' => "'''ã\81\93ã\81®ã\82¦ã\82£ã\82ã\81§ã\83\9aã\83¼ã\82¸ã\80\8c[[:$1]]ã\80\8dã\82\92æ\96°è¦\8fä½\9cæ\88\90ã\81\97ã\81¾ã\81\97ã\82\87ã\81\86ã\80\82'''{{PLURAL:$2|0=|æ¤\9cç´¢ã\81§è¦\8bã\81¤ã\81\8bã\81£ã\81\9fä»\96ã\81®ã\83\9aã\83¼ã\82¸ã\82\82å\8f\82ç\85§ã\81\97ã\81¦ã\81\8fã\81 ã\81\95ã\81\84ã\80\82}}",
'searchprofile-articles' => '本文ページ',
'searchprofile-project' => 'ヘルプとプロジェクトページ',
'searchprofile-images' => 'マルチメディア',
'recentchanges-label-plusminus' => 'ページ サイズの増減 (バイト単位)',
'recentchanges-legend-newpage' => '([[Special:NewPages|新しいページ一覧]]も参照してください)',
'recentchanges-legend-plusminus' => "(''±123'')",
-'rcnote' => "$4 $5 までの{{PLURAL:$2|'''$2'''日間}}になされた{{PLURAL:$1|'''$1'''件の変更}}は以下の通りです。",
'rcnotefrom' => "以下は'''$2'''以降の更新です (最大 '''$1''' 件)。",
'rclistfrom' => '$1以降の更新を表示する',
'rcshowhideminor' => '細部の編集を$1',
'reuploaddesc' => 'アップロードを中止してアップロードフォームへ戻る',
'upload-tryagain' => '修正したファイル解説を投稿',
'uploadnologin' => 'ログインしていません',
-'uploadnologintext' => 'ã\83\95ã\82¡ã\82¤ã\83«ã\82\92ã\82¢ã\83\83ã\83\97ã\83ã\83¼ã\83\89ã\81\99ã\82\8bã\81«ã\81¯$1ã\81\99ã\82\8bå¿\85è¦\81ã\81\8cã\81\82ã\82\8aã\81¾ã\81\99。',
+'uploadnologintext' => 'ã\83\95ã\82¡ã\82¤ã\83«ã\82\92ã\82¢ã\83\83ã\83\97ã\83ã\83¼ã\83\89ã\81\99ã\82\8bã\81«ã\81¯$1ã\81\97ã\81¦ã\81\8fã\81 ã\81\95ã\81\84。',
'upload_directory_missing' => 'アップロード先ディレクトリ ($1) が見つかりませんでした。ウェブ サーバーによる作成もできませんでした。',
'upload_directory_read_only' => 'アップロード先ディレクトリ ($1) には、ウェブサーバーが書き込めません。',
'uploaderror' => 'アップロードのエラー',
'undeletebtn' => '復元',
'undeletelink' => '閲覧/復元',
'undeleteviewlink' => '閲覧',
-'undeletereset' => 'リセット',
'undeleteinvert' => '選択を反転',
'undeletecomment' => '理由:',
'undeletedrevisions' => '{{PLURAL:$1|$1版}}を復元しました',
'block' => '利用者をブロック',
'unblock' => '利用者のブロックを解除',
'blockip' => '利用者をブロック',
-'blockip-title' => '利用者のブロック',
'blockip-legend' => '利用者をブロック',
'blockiptext' => '以下のフォームを使用して、指定したIPアドレスまたは利用者からの書き込みアクセスをブロックできます。
このような措置は、荒らしからの防御の目的のみに行われるべきで、また[[{{MediaWiki:Policy-url}}|方針]]に沿ったものであるべきです。
'ipadressorusername' => 'IPアドレスまたは利用者名:',
'ipbexpiry' => '有効期限:',
'ipbreason' => '理由:',
-'ipbreasonotherlist' => 'その他の理由',
'ipbreason-dropdown' => '*よくあるブロック理由
** 虚偽情報の挿入
** ページから内容の除去
'ipbsubmit' => 'この利用者をブロック',
'ipbother' => 'その他の期間:',
'ipboptions' => '2時間:2 hours,1日:1 day,3日:3 days,1週間:1 week,2週間:2 weeks,1か月:1 month,3か月:3 months,6か月:6 months,1年:1 year,無期限:infinite',
-'ipbotheroption' => 'その他',
-'ipbotherreason' => '他の、または追加の理由:',
'ipbhidename' => '利用者名を編集履歴や各種一覧から秘匿する',
'ipbwatchuser' => 'この利用者の利用者ページとトークページをウォッチ',
'ipb-disableusertalk' => 'この利用者がブロック中に自身のトークページを編集することを禁止',
'sorbs_create_account_reason' => 'ご使用中のIPアドレスが、{{SITENAME}}の使用しているDNSBLに公開プロキシとして記載されています。
アカウント作成はできません',
'xffblockreason' => 'X-Forwarded-For ヘッダーに含まれている IP アドレスがブロックされています。これはあなたのものか、あなたが利用しているプロキシサーバーのものです。元のブロックの理由は: $1',
-'cant-block-while-blocked' => 'ブロックされている間は、他の利用者をブロックできません。',
'cant-see-hidden-user' => 'ブロックしようとしている利用者は、既にブロックされ隠されています。
あなたには hideuser 権限がないため、この利用者のブロックの閲覧/編集はできません。',
'ipbblocked' => '自分自身をブロックしているため、他の利用者のブロックやブロック解除はできません',
'tooltip-undo' => '「取り消し」はこの編集を差し戻し、編集画面をプレビュー付きで開きます。要約欄に理由を追加できます。',
'tooltip-preferences-save' => '設定を保存する',
'tooltip-summary' => '短い要約を入力してください',
-'interlanguage-link-title' => '$1 – $2',
+'interlanguage-link-title' => '$2: $1',
# Stylesheets
'common.css' => '/* ここに記述したCSSはすべての外装に反映されます */',
'print.css' => '/* ここに記述したCSSは印刷出力に影響します */',
'noscript.css' => '/* ここに記述したCSSはJavaScriptを無効にしている利用者に影響します */',
'group-autoconfirmed.css' => '/* ここに記述したCSSは自動承認された利用者のみに影響します */',
+'group-user.css' => '/* ここに記述したCSSは登録利用者のみに影響します */',
'group-bot.css' => '/* ここに記述したCSSはボットのみに影響します */',
'group-sysop.css' => '/* ここに記述したCSSは管理者のみに影響します */',
'group-bureaucrat.css' => '/* ここに記述したCSSはビューロクラットのみに影響します */',
'monobook.js' => '/* ここにあるすべてのJavaScriptは、モノブック外装を使用している利用者に対して読み込まれます */',
'modern.js' => '/* ここにあるすべてのJavaScriptは、モダン外装を使用している利用者に対して読み込まれます */',
'vector.js' => '/* ここにあるすべてのJavaScriptは、ベクター外装を使用している利用者に対して読み込まれます */',
-'group-autoconfirmed.js' => '/* ここにあるすべてのJavaScriptは、自動承認された利用者に対して読み込まれます */',
+'group-autoconfirmed.js' => '/* ここにあるすべてのJavaScriptは、自動承認された利用者のみに読み込まれます */',
+'group-user.js' => '/* ここにあるすべてのJavaScriptは、登録利用者のみに読み込まれます */',
'group-bot.js' => '/* ここにあるすべてのJavaScriptは、ボットのみに読み込まれます */',
'group-sysop.js' => '/* ここにあるすべてのJavaScriptは、管理者のみに読み込まれます */',
'group-bureaucrat.js' => '/* ここにあるすべてのJavaScriptは、ビューロクラットのみに読み込まれます */',
'watchlistall2' => 'すべて',
'namespacesall' => 'すべて',
'monthsall' => 'すべて',
-'limitall' => 'すべて',
# Email address confirmation
'confirmemail' => 'メールアドレスの確認',
メールサーバーからの返答: $1',
'confirmemail_invalid' => '確認用コードが正しくありません。
このコードの有効期限が切れている可能性があります。',
-'confirmemail_needlogin' => 'ã\83¡ã\83¼ã\83«ã\82¢ã\83\89ã\83¬ã\82¹ã\82\92確èª\8dã\81\99ã\82\8bã\81«ã\81¯$1ã\81\99ã\82\8bå¿\85è¦\81ã\81\8cã\81\82ã\82\8aã\81¾ã\81\99。',
+'confirmemail_needlogin' => 'ã\83¡ã\83¼ã\83«ã\82¢ã\83\89ã\83¬ã\82¹ã\82\92確èª\8dã\81\99ã\82\8bã\81\9fã\82\81ã\81«ã\80\81$1ã\81\97ã\81¦ã\81\8fã\81 ã\81\95ã\81\84。',
'confirmemail_success' => 'メールアドレスは確認されました。
[[Special:UserLogin|ログイン]]してウィキを使用できます。',
'confirmemail_loggedin' => 'メールアドレスは確認されました。',
-'confirmemail_error' => '確認情報を保存する際にエラーが発生しました。',
'confirmemail_subject' => '{{SITENAME}} メールアドレスの確認',
'confirmemail_body' => '誰か (おそらくあなた) が、IP アドレス$1から、
このメールアドレスで {{SITENAME}} のアカウント「$2」を登録しました。
'imgmultigo' => '表示',
'imgmultigoto' => 'ページ$1に移動',
+# Language selector for translatable SVGs
+'img-lang-default' => '(既定の言語)',
+'img-lang-info' => 'この画像を $1 で $2',
+'img-lang-go' => '描画',
+
# Table pager
'ascending_abbrev' => '昇順',
'descending_abbrev' => '降順',
# Special:ComparePages
'comparepages' => 'ページの比較',
-'compare-selector' => 'ページの版を比較',
'compare-page1' => 'ページ 1',
'compare-page2' => 'ページ 2',
'compare-rev1' => '版 1',
'tog-watchdeletion' => 'Ad piej mi diliit tu mi wachlis',
'tog-previewontop' => 'Shuo priivyuu bifuo edit bax',
'tog-previewonfirst' => 'Shuo priivyuu pahn fos edit',
-'tog-nocache' => 'Disiebl brouza piej kiashin',
'tog-enotifwatchlistpages' => 'E-miel mi wen piej pahn mi wachlis chienj',
'tog-enotifusertalkpages' => 'E-miel mi wen mi yuuza taak piej chienj',
'tog-enotifminoredits' => 'E-miel mi alzwel fi maina edit pahn piej',
'recentchanges' => 'Riisant chienjdem',
'recentchanges-legend' => 'Riisant chienj apshan',
'recentchanges-feed-description' => 'Chrak di muos riisant chienjdem tu di wiki ina dis fiid.',
-'rcnote' => "Below {{PLURAL:$1|a '''1''' chienj|a di laas '''$1''' chienj}} ina di laas {{PLURAL:$2|die|'''$2''' die}}, az av $5, $4.",
'rclistfrom' => 'Shuo nyuu chienjdem we taat frahn $1',
'rcshowhideminor' => '$1 maina editdem',
'rcshowhidebots' => '$1 batdem',
'tog-minordefault' => 'Tandhanana kabèh suntingan dadi suntingan cilik secara baku',
'tog-previewontop' => 'Tuduhna pratayang sadurungé kothak sunting lan ora sawisé',
'tog-previewonfirst' => 'Tuduhna pratayang ing suntingan kapisan',
-'tog-nocache' => 'Nonaktifaken penyinggahan kaca peramban',
'tog-enotifwatchlistpages' => 'Kirimi kula layang èlèktronik yèn ana kaca utawa berkas nèng daptar pangawasanku sing diowah',
'tog-enotifusertalkpages' => 'Kirimana aku layang e-mail yèn kaca dhiskusiku owah',
'tog-enotifminoredits' => 'Kirimi kula layang èlèktronik uga yèn ana suntingan cilik saka kaca lan berkas',
'recentchanges-label-bot' => 'Suntingan iki diayahi déning bot',
'recentchanges-label-unpatrolled' => 'Suntingan iki durung dipatroli',
'recentchanges-legend-newpage' => '$1 - kaca anyar',
-'rcnote' => 'Ing ngisor iki kapacak {{PLURAL:$1|pangowahan|owah-owahan}} pungkasan ing <strong>$2</strong> dina pungkasan ing $5, $4.',
'rcnotefrom' => 'Ing ngisor iki owah-owahan wiwit <strong>$2</strong> (kapacak nganti <strong>$1</strong> owah-owahan).',
'rclistfrom' => 'Saiki nuduhaké owah-owahan wiwit tanggal $1',
'rcshowhideminor' => '$1 suntingan sithik',
'undeletebtn' => 'Balèkna!',
'undeletelink' => 'pirsani/balèkna',
'undeleteviewlink' => 'pirsani',
-'undeletereset' => "''Reset''",
'undeleteinvert' => 'Walik pilihan',
'undeletecomment' => 'Alesan:',
'undeletedrevisions' => '$1 {{PLURAL:$1|révisi|révisi}} wis dibalèkaké',
'block' => 'Blokir panganggo',
'unblock' => 'Uculaké blokirané panganggo',
'blockip' => 'Blokir panganggo',
-'blockip-title' => 'Blokir panganggo',
'blockip-legend' => 'Blokir panganggo',
'blockiptext' => 'Enggonen formulir ing ngisor iki kanggo mblokir sawijining alamat IP utawa panganggo supaya ora bisa nyunting kaca.
Prekara iki perlu dilakoni kanggo menggak vandalisme, lan miturut [[{{MediaWiki:Policy-url}}|kawicaksanan {{SITENAME}}]].
'ipadressorusername' => 'Alamat IP utawa jeneng panganggo',
'ipbexpiry' => 'Kadaluwarsa',
'ipbreason' => 'Alesan:',
-'ipbreasonotherlist' => 'Alesan liya',
'ipbreason-dropdown' => '*Alesan umum mblokir panganggo
** Mènèhi informasi palsu
** Ngilangi isi kaca
'ipbsubmit' => 'Kirimna',
'ipbother' => 'Wektu liya',
'ipboptions' => '2 jam:2 hours,1 dina:1 day,3 dina:3 days,1 minggu:1 week,2 minggu:2 weeks,1 sasi:1 month,3 sasi:3 months,6 sasi:6 months,1 taun:1 year,tanpa wates:infinite',
-'ipbotheroption' => 'liyané',
-'ipbotherreason' => 'Alesan liya/tambahan',
'ipbhidename' => 'Delikna jeneng panganggo saka suntingan lan pratélan',
'ipbwatchuser' => 'Ngawasi kaca panganggo lan kaca-kaca dhiskusi panganggo iki',
'ipb-disableusertalk' => 'Alangi panganggo iki nyunting kaca gunemané nalika diblokir',
Mangga ngubungi sing nyedyakaké dines internèt panjenengan utawa pitulungan tèknis lan aturana masalah kaamanan sérius iki.",
'sorbsreason' => "Alamat IP panjenengan didaftar minangka ''open proxy'' ing DNSBL.",
'sorbs_create_account_reason' => "Alamat IP panjenengan didaftar minangka ''open proxy'' ing DNSBL. Panjenengan ora bisa nggawé akun utawa rékening.",
-'cant-block-while-blocked' => 'Panjenengan ora bisa mblokir panganggo liya nalika panjenengan dhéwé pinuju diblokir.',
'cant-see-hidden-user' => 'Panganggo sing Sampéyan coba blokir wis kablokir lan didhelikaké.
Amarga Sampéyan ora nduwé hak ndhelikaké panganggo, Sampéyan ora bisa ndelok utawa nyunting blokiran panganggo.',
'ipbblocked' => 'Sampéyan ora bisa mblokir utawa mbukak blokiran panganggo liya amarga Sampéyan dhéwé diblokir',
'watchlistall2' => 'kabèh',
'namespacesall' => 'kabèh',
'monthsall' => 'kabèh',
-'limitall' => 'kabèh',
# Email address confirmation
'confirmemail' => 'Konfirmasi alamat e-mail',
'confirmemail_success' => 'Alamat e-mail panjenengan wis dikonfirmasi.
Saiki panjenengan bisa log mlebu lan wiwit nganggo wiki.',
'confirmemail_loggedin' => 'Alamat e-mail panjenengan wis dikonfirmasi.',
-'confirmemail_error' => 'Ana kaluputan nalika nyimpen konfirmasi panjenengan.',
'confirmemail_subject' => 'Konfirmasi alamat e-mail {{SITENAME}}',
'confirmemail_body' => 'Sawijining wong, mbokmenawa panjenengan dhéwé, saka alamat IP $1, wis ndaftaraké akun "$2" mawa alamat e-mail iki ing {{SITENAME}}. Bukaka pranala iki ing panjlajah wèb panjenengan.
# Special:ComparePages
'comparepages' => 'Bandhingna kaca',
-'compare-selector' => 'Bandhingna révisi kaca',
'compare-page1' => 'Kaca 1',
'compare-page2' => 'Kaca 2',
'compare-rev1' => 'Révisi 1',
'tog-minordefault' => 'ყველა რედაქტირების მონიშვნა, როგორც უმნიშვნელო, უპირობოდ',
'tog-previewontop' => 'წინასწარი გადახედვის ჩვენება რედაქტირების დაფამდე',
'tog-previewonfirst' => 'წინასწარი ჩვენება პირველივე რედაქტირებაზე',
-'tog-nocache' => 'გათიშეთ ბრაუზერში გვერდების ქეშირება',
'tog-enotifwatchlistpages' => 'მომწერე ელ. ფოსტით, როცა გვერდი ან ფაილი, რომელსაც მე ვაკონტროლებ, შეიცვლება',
'tog-enotifusertalkpages' => 'მომწერე თუ ჩემი განხილვის გვერდი შეიცვლება',
'tog-enotifminoredits' => 'მომწერე ასევე გვერდებისა და ფაილების მცირე რედაქტირებისას',
ეს ჩვეულებრივ ხდება მაშინ, თუ მოძველებული ბმულით გადადიხართ გვერდზე, რომელიც წაიშალა.
დეტალური ინფორმაცია შესაძლებელია იყოს [{{fullurl:{{#Special:Log}}/delete|page={{FULLPAGENAMEE}}}} წაშლების ჟურნალში].',
-'userpage-userdoesnotexist' => 'á\83\90á\83\9cá\83\92á\83\90á\83 á\83\98á\83¨á\83\98 «<nowiki>$1</nowiki>» á\83\90á\83 á\83\90á\83 á\83¡á\83\94á\83\91á\83\9dá\83\91á\83¡. á\83\93á\83\90á\83 á\83¬á\83\9bá\83£á\83\9cá\83\93á\83\98á\83\97, á\83 á\83\9dá\83\9b á\83\9bá\83\90á\83 á\83\97á\83\9aá\83\90á\83ª á\83\92á\83¡á\83£á\83 á\83\97 á\83\90á\83\9b á\83\90á\83\9cá\83\92á\83\90á\83 á\83\98á\83¨á\83\98á\83¡ á\83¨á\83\94á\83¥á\83\9bá\83\9cá\83\90 á\83\90á\83\9c á\83¨á\83\94á\83¡á\83¬á\83\9dá\83 á\83\94á\83\91á\83\90.УбедиÑ\82еÑ\81Ñ\8c, Ñ\87Ñ\82о вÑ\8b дейÑ\81Ñ\82виÑ\82елÑ\8cно желаеÑ\82е Ñ\81оздаÑ\82Ñ\8c или измениÑ\82Ñ\8c Ñ\8dÑ\82Ñ\83 Ñ\81Ñ\82Ñ\80аниÑ\86Ñ\83.',
+'userpage-userdoesnotexist' => 'á\83\9bá\83\9dá\83\9bá\83®á\83\9bá\83\90á\83 á\83\94á\83\91á\83\9aá\83\98á\83¡ á\83\90á\83\9cá\83\92á\83\90á\83 á\83\98á\83¨á\83\98 â\80\9e$1â\80\9c á\83\90á\83 á\83\90á\83 á\83¡á\83\94á\83\91á\83\9dá\83\91á\83¡. á\83\93á\83\90á\83 á\83¬á\83\9bá\83£á\83\9cá\83\93á\83\98á\83\97, á\83 á\83\9dá\83\9b á\83\9cá\83\90á\83\9bá\83\93á\83\95á\83\98á\83\9aá\83\90á\83\93 á\83\92á\83¡á\83£á\83 á\83\97 á\83\90á\83\9b á\83\90á\83\9cá\83\92á\83\90á\83 á\83\98á\83¨á\83\98á\83¡ á\83¨á\83\94á\83¥á\83\9bá\83\9cá\83\90 á\83\90á\83\9c á\83¨á\83\94á\83¡á\83¬á\83\9dá\83 á\83\94á\83\91á\83\90.',
'userpage-userdoesnotexist-view' => 'მომხმარებელი „$1“ არ არის დარეგისტრირებული.',
'blocked-notice-logextract' => 'ეს მომხმარებელი უკვე დაიბლოკა.
დაბლოკვის მიზეზი შემდეგშია:',
'recentchanges-label-minor' => 'ეს არის მცირე შესწორება',
'recentchanges-label-bot' => 'ეს არის ბოტის რედაქტირება',
'recentchanges-label-unpatrolled' => 'ეს რედაქტირება გადაუმოწმებელია',
-'recentchanges-legend-newpage' => '$1 - ახალი გვერდი',
-'rcnote' => "ქვემოთ იხილეთ ბოლო '''$1''' ცვლილება უკანასკნელი '''$2''' დღის მანძილზე, $5, $4 მდგომარეობით.",
+'recentchanges-label-plusminus' => 'ცვლილებების ზომა ბაიტებში',
+'recentchanges-legend-newpage' => '(იხ. აგრეთვე [[Special:NewPages|ახალი გვერდების სია]])',
'rcnotefrom' => "ქვემოთ მოყვანილია ცვლილებები '''$2'''-დან (ნაჩვენებია '''$1''').",
'rclistfrom' => 'ახალი ცვლილებების ჩვენება დაწყებული $1-დან',
'rcshowhideminor' => 'მცირე რედაქტირების $1',
'noemailtitle' => 'ელ. ფოსტის მისამართი მითითებული არ არის',
'noemailtext' => 'მომხმარებელმა არ მიუთითა მოქმედი ელ. ფოსტის მისამართი.',
'nowikiemailtitle' => 'წერილების გაგზავნის უფლება არ გაქვთ.',
-'nowikiemailtext' => 'á\83\90á\83\9b á\83\9bá\83\9dá\83\9bá\83®á\83\9bá\83\90á\83 á\83\94á\83\91á\83\94á\83\9aá\83\9bá\83\90 á\83\92á\83\90á\83\9bá\83\9dá\83®á\83\90á\83¢á\83\90 á\83¡á\83®á\83\95á\83\90 á\83\9bá\83\9dá\83\9bá\83®á\83\9bá\83\90á\83 á\83\94á\83\91á\83\9aá\83\94á\83\91á\83\98á\83¡á\83\92á\83\90á\83\9c á\83¬á\83\94á\83 á\83\98á\83\9aá\83\94á\83\91á\83\98á\83¡ á\83\90á\83 á\83\9bá\83\98á\83¦á\83\94á\83\91á\83\98á\83¡ á\83¡á\83£á\83 á\83\95á\83\98á\83\9aá\83\98.',
+'nowikiemailtext' => 'á\83\90á\83\9b á\83\9bá\83\9dá\83\9bá\83®á\83\9bá\83\90á\83 á\83\94á\83\91á\83\94á\83\9aá\83¡ á\83\90á\83 á\83¡á\83£á\83 á\83¡ á\83¬á\83\94á\83 á\83\98á\83\9aá\83\94á\83\91á\83\98á\83¡ á\83\9bá\83\98á\83¦á\83\94á\83\91á\83\90 á\83¡á\83®á\83\95á\83\90 á\83\9bá\83\9dá\83\9bá\83®á\83\9bá\83\90á\83 á\83\94á\83\91á\83\9aá\83\94á\83\91á\83\98á\83¡á\83\90á\83\92á\83\90á\83\9c.',
'emailnotarget' => 'არარსებული ან არასწორი მომხმარებლის სახელი.',
'emailtarget' => 'შეიყვანეთ მომხმარებლის სახელი ელ-ფოსტის გასაგზავნად.',
'emailusername' => 'მომხმარებლის სახელი:',
'undeletebtn' => 'აღდგენა',
'undeletelink' => 'ნახვა/აღდგენა',
'undeleteviewlink' => 'იხილე',
-'undeletereset' => 'გადატვირთეთ',
'undeleteinvert' => 'გააუქმეთ გამოყოფა',
'undeletecomment' => 'მიზეზი:',
'undeletedrevisions' => '$1 ვერსია აღდგენილია',
'block' => 'მომხმარებლის დაბლოკვა',
'unblock' => 'მომხმარებელზე ბლოკის მოხსნა',
'blockip' => 'მომხმარებლის ან IP მისამართის ბლოკირება',
-'blockip-title' => 'მომხმარებლის დაბლოკვა',
'blockip-legend' => 'მომხმარებლის დაბლოკვა',
'blockiptext' => 'გამოიყენეთ ქვემოთ მოყვანილი ფორმა სპეციფიური IP მისამართის
ან მომხმარებლისთვის რედაქტირების ბლოკირებისთვის.
'ipadressorusername' => 'IP მისამართი ან მომხმარებლის სახელი',
'ipbexpiry' => 'ვადა',
'ipbreason' => 'მიზეზი:',
-'ipbreasonotherlist' => 'სხვა მიზეზი',
'ipbreason-dropdown' => '* დაბლოკვის სტანდარტული მიზეზები
** ცრუ ინფორმაციის ჩამატება
** გვერდების შინაარსის წაშლა
'ipbsubmit' => 'მომხმარებლის დაბლოკვა',
'ipbother' => 'სხვა დრო',
'ipboptions' => '2 საათი:2 hours,1 დღე:1 day,3 დღე:3 days,1 კვირა:1 week,2 კვირა:2 weeks,1 თვე:1 month,3 თვე:3 months,6 თვე:6 months,1 წელი:1 year,განუსაზღვრელი ვადით:infinite',
-'ipbotheroption' => 'სხვა',
-'ipbotherreason' => 'სხვა/დამატებითი მიზეზი:',
'ipbhidename' => 'მომხმარებლის სახელის დამალვა შესწორებებსა და სიებში.შ',
'ipbwatchuser' => 'ჩაამატეთ მომხმარებლის პირადი გვერდი და მისი განხილვის გვერდი კონტროლის სიაში.',
'ipb-disableusertalk' => 'ამ მომხმარებლისათვის საკუთარი განხილვის გვერდის რედაქტირების აკრძალვა, სანამ იგი დაბლოკილია',
'sorbsreason' => 'თქვენი IP-მისამართი მიჩნევა ღია პროქსიდ DNSBL-ის თანახმად.',
'sorbs_create_account_reason' => 'თქვენი IP-მისამართი ითვლება ღია პროქსიდ DNSBL-ის ანახმად. თქვენ ვერ შექმნით ანგარიშს.',
'xffblockreason' => 'დაიბლოკა IP-მისამართი, რომელიც იმყოფებოდა X-Forwarded-For-ის სათაურში და რომელიც გეკუთვნით თქვენ ან თქვენ მიერ გამოყენებულ პროქსი-სერვერს. დაბლოკვის თავდაპირველი მიზეზი იყო: $1',
-'cant-block-while-blocked' => 'თქვენ ვერ დაბლოკავთ სხვა მომხმარებლებს, რადგანაც თავად ხართ დაბლოკილი.',
'cant-see-hidden-user' => 'მომხმარებელი, რომლის დაბლოკვასაც ცდილოთ, უკვე დაბლოკილია და დამალულია. რადგანაც თქვენ არ გაქვთ დამალულ მომხმარებლებთან მუშაობის ნებართვა, თქვენ ვერ შეცვლით ამ ბლოკს.',
'ipbblocked' => 'თქვენ ვერ დაბლოკავთ ან მოხსნით ბლოკს სხვა მომხმარებლებს, რადგანაც თავად ხართ დაბლოკილი.',
'ipbnounblockself' => 'თქვენ ვერ მოხსნოთ ბლოკს საკუთარ თავს',
'watchlistall2' => 'ყველა',
'namespacesall' => 'ყველა',
'monthsall' => 'ყველა',
-'limitall' => 'ყველა',
# Email address confirmation
'confirmemail' => 'ელ. ფოსტის მისამართის დადასტურება',
'confirmemail_needlogin' => 'თქვენ გჭირდებათ $1 თქვენი ელ-ფოსტის მისამართის დასადასტურებლად.',
'confirmemail_success' => 'თქვენი ელ. ფოსტის მისამართი დადასტურებულია. ახლა შეგიძლიათ ვიკიში [[Special:UserLogin|შესვლა]].',
'confirmemail_loggedin' => 'თქვენი ელ. ფოსტის მისამართის დადასტურება მიღებულია.',
-'confirmemail_error' => 'შეცდომა მოხდა თქვენი ელ. ფოსტის მისამართის დადასტურების დროს.',
'confirmemail_subject' => '{{SITENAME}} ელ. ფოსტის მისამართის დადასტურება',
'confirmemail_body' => 'ვიღაცამ, შესაძლოა თქვენ, IP მისამართით $1, დაარეგისტრირეთ
ანგარიში "$2" ამ ელ-ფოსტის მისამართით აქ {{SITENAME}}.
# Special:ComparePages
'comparepages' => 'გვერდების შედარება',
-'compare-selector' => 'გვერდების ვერსიების შედარება',
'compare-page1' => '1 გვერდი',
'compare-page2' => '2 გვერდი',
'compare-rev1' => 'პირველი ვერსია',
'tog-minordefault' => "Defolt boyınsha barlıq o'zgerislerdi kishi dep esaplaw",
'tog-previewontop' => "O'zgertiw maydanınan aldın ko'rip shıg'ıw maydanın ko'rset",
'tog-previewonfirst' => "Birinshi o'zgertiwdi ko'rip shıq",
-'tog-nocache' => "Brauzer bet keshlewin o'shir",
'tog-enotifwatchlistpages' => "Baqlaw dizimimdegi bet o'zgertilgende mag'an xat jiber",
'tog-enotifusertalkpages' => "Menin' sa'wbetim o'zgertilgende mag'an xat jiber",
'tog-enotifminoredits' => "Kishi o'zgerisler haqqında da mag'an xat jiber",
'recentchanges-label-bot' => "Bul o'zgeristi bot kiritti",
'recentchanges-label-unpatrolled' => "Bul o'zgeris ele baqlanbag'an",
'recentchanges-legend-newpage' => '$1 - taza bet',
-'rcnote' => "To'mende $4, $5 waqtındag'ı aqırg'ı {{PLURAL:$2|ku'ndegi|'''$2''' ku'ndegi}} {{PLURAL:$1|'''1''' o'zgeris ko'rsetilgen|aqırg'ı '''$1''' o'zgeris ko'rsetilgen}}.",
'rcnotefrom' => "To'mende '''$2''' baslap '''$1''' shekemgi o'zgerisler ko'rsetilgen.",
'rclistfrom' => "$1 waqtınan baslap jan'a o'zgerisler ko'rset",
'rcshowhideminor' => "Kishi o'zgerislerdi $1",
'ipadressorusername' => 'IP Adres yamasa paydalanıwshı atı:',
'ipbexpiry' => "Ku'shin joytıw waqtı:",
'ipbreason' => 'Sebep:',
-'ipbreasonotherlist' => 'Basqa sebep',
'ipbcreateaccount' => "Akkaunt jaratıwdı qadag'an etiw",
'ipbemailban' => "Paydalanıwshını e-mail jiberiwden qadag'alaw",
'ipbsubmit' => 'Bul paydalanıwshını bloklaw',
'ipbother' => 'Basqa waqıt:',
'ipboptions' => "2 saat:2 hours,1 ku'n:1 day,3 ku'n:3 days,1 ha'pte:1 week,2 h'apte:2 weeks,1 ay:1 month,3 ay:3 months,6 ay:6 months,1 jil:1 year,sheksiz:infinite",
-'ipbotheroption' => 'basqa',
-'ipbotherreason' => 'Basqa/qosımsha sebep:',
'badipaddress' => 'Jaramsız IP adres',
'blockipsuccesssub' => 'Tabıslı qulplaw',
'blockipsuccesstext' => "[[Special:Contributions/$1|$1]] bloklang'an.<br />
'confirmemail_success' => "Sizin' e-mail adresin'iz tastıyıqlandı.
Endi wikige [[Special:UserLogin|kiriwin'iz]] mu'mkin.",
'confirmemail_loggedin' => "Sizin' e-mail adresin'iz endi tastıyıqlandı.",
-'confirmemail_error' => "Tastıyıqlawın'ızdı saqlaw waqtında belgisiz qa'te ju'z berdi.",
'confirmemail_subject' => '{{SITENAME}} e-pochta adresi tastıyıqaw xatı',
'confirmemail_body' => "Geybirew, ba'lkimiz o'zin'iz shıg'ar, $1 IP adresinen,
{{SITENAME}} saytında bul E-pochta adresin qollanıp «$2» degen akkaunt jarattı.
'tog-minordefault' => 'Rcem akk ibeddlen am ibeddlen ifessasen d ameslugen',
'tog-previewontop' => 'Ssken pre-timeẓriwt uqbel tankult ubeddel',
'tog-previewonfirst' => 'Ssken pre-timeẓriwt akk d ubeddel amezwaru',
-'tog-nocache' => 'Ekkes lkac n usebter',
'tog-enotifwatchlistpages' => "Azen-iyi-d e-mail m'ara yettubeddel asebter i ttɛassaɣ",
'tog-enotifusertalkpages' => 'Azen-iyi-d e-mail asmi sɛiɣ izen amaynut',
'tog-enotifminoredits' => 'Azen-iyi-d e-mail ma llan ibeddlen ifessasen',
'recentchanges-label-minor' => 'Wagi d-abeddel amectuḥ',
'recentchanges-label-bot' => 'D-arubut id yeseqdacen abeddel agi',
'recentchanges-label-unpatrolled' => 'Abeddel agi mazal yesɛa aselken.',
-'rcnote' => "Deg ukessar {{PLURAL:$1|yella '''yiwen''' ubeddel aneggaru|llan '''$1''' n yibeddlen ineggura}} deg {{PLURAL:$2|wass aneggaru|'''$2''' wussan ineggura}}, deg uzemz $5 ass n $4.",
'rcnotefrom' => "Deg ukessar llan ibeddlen seg wasmi '''$2''' (ar '''$1''').",
'rclistfrom' => 'Ssken ibeddlen imaynuten seg $1',
'rcshowhideminor' => '$1 ibeddlen ifessasen',
# Block/unblock
'block' => 'Ɛekkel aseqdac',
'blockip' => 'Ɛekkel aseqdac',
-'blockip-title' => 'Ɛekkel aseqdac',
'blockip-legend' => 'Ɛekkel aseqdac',
'ipadressorusername' => 'Tansa IP neɣ isem n wemseqdac',
'ipbreason' => 'Ayɣer',
'ipbsubmit' => 'Ɛekkel amseqdac-agi',
'ipboptions' => '2 isragen:2 hours,1 ass:1 day,3 ussan:3 days,1 imalas:1 week,2 imalasen:2 weeks,1 aggur:1 month,3 agguren:3 months,6 agguren:6 months,1 aseggwas:1 year,afdi:infinite',
-'ipbotheroption' => 'nniḍen',
'badipaddress' => 'Tansa IP mačči d ṣaḥiḥ',
'ipusubmit' => 'Ekkes akyaf agi',
'unblocked' => 'Yetwekkes akyaf n [[User:$1|$1]]',
'watchlistall2' => 'akk',
'namespacesall' => 'akk',
'monthsall' => 'akk',
-'limitall' => 'Akkw',
# Email address confirmation
'confirmemail' => 'Sentem tansa n e-mail',
'confirmemail_success' => 'Tansa e-mail inek/inem tergeg.
Tura tzemreḍ ad [[Special:UserLogin|qqeneḍ]].',
'confirmemail_loggedin' => 'Asentem n tansa n email inek yekfa tura.',
-'confirmemail_error' => 'Yella ugur s usmekti n usentem inek.',
'confirmemail_subject' => 'Asentem n tansa n email seg {{SITENAME}}',
'confirmemail_body' => 'Amdan, ahat d kečč/kem, seg tansa IP $1,
yexleq amiḍan "$2" s tansa n e-mail deg {{SITENAME}}.
'tog-minordefault' => 'Гулъытэгъуэшхуэ зимыӀэ хуэду щӀын гъэтэрэзыгъуэхэр',
'tog-previewontop' => 'Япэ-еплъыр гъэтэрэзыным и пхырыплъым ипэ игъувэн',
'tog-previewonfirst' => 'Япэ-еплъыр гъэтэрэзыным кӀуэным ипкӀэ гъэлъэгъуэн',
-'tog-nocache' => 'Кеш щӀыныр гъэункӀыфӀын напэкӀуэцӀ браузерым хэтхэм',
'tog-enotifwatchlistpages' => 'Почтэм къэӀохун, тхылъ кӀэлъыплъыгъуэм хэт напэкӀуэцӀхэм я зэхъуэкӀыгъуэхэм',
'tog-enotifusertalkpages' => 'Почтэм къэӀохун аккаунтым и напэкӀуэцӀ тепсэлъыхьыгъуэм и зэхъуэкӀыгъуэхэм',
'tog-enotifminoredits' => 'Почтэм къэӀохун зэхъуэкӀыгъуэ цӀыкӀу халъхьэми',
'recentchanges' => 'Гъэтэрэзыгъуэ щIэхэр',
'recentchanges-legend' => 'Гъэтэрэзыгъуэ щӀэхэм я зэгъэзэхуэгъуэ',
'recentchanges-feed-description' => 'Вики и иужырей зэхъуэкӀыгъeэхэм кӀэлъыплъын мы нэтыным.',
-'rcnote' => "{{PLURAL:$1|Яужырей '''$1''' зэхъуэкыгъуэ|Яужырей '''$1''' зэхъуэкыгъуэхэр}} '''$2''' {{PLURAL:$2|махуэ|махуэм}}, зэман $5 $4.",
'rclistfrom' => 'ЗэхъуэкӀыгъуэхэр гъэлъэгъуэн $1 щыкӀэдзауэ',
'rcshowhideminor' => '$1 мащІэу яхъуэжахэр',
'rcshowhidebots' => 'Боту $1',
'tog-minordefault' => 'تھمامو ترمیماتن ہمیشہ بطورِ معمولی ترمیم نشانزد کورے',
'tog-previewontop' => 'تدوینی خاناری پروشٹی نمائش پشاؤے',
'tog-previewonfirst' => 'آویلو ترمیما نمائش پشاؤے',
-'tog-nocache' => 'بطن کاری صفحہو غیر فعال ساؤزاوے',
'tog-enotifwatchlistpages' => 'کیاوتکہ مہ زیرِنظرفہرستہو کیہ صفحہا تبدیلی واقع کہ ہوی تھے متے بشلی کغاز انزاوے',
'tog-enotifusertalkpages' => 'کیاوتکہ مہ تبادلۂ خیالو صفحہ تبدیلی واقع کہ ہویی تھے متے بشلی کغاز(ای میل) انځاوے جما',
'tog-enotifminoredits' => 'صفحاتہ معمولی ترمیماتن بارا دی متے بشلی کغاز انزاوے',
'recentchanges-label-minor' => 'ھیہ ای معمولی ترمیم شیر',
'recentchanges-label-bot' => 'ھیہ ایڈیٹو خود کار بوٹو زریعا انجام دیونو ہوی',
'recentchanges-label-unpatrolled' => 'ھیہ ترمیمو ھمونیہ پت مراجعت(Patrolled) کورونو نو بیتی شیر',
-'rcnote' => "درج ذیل گزشتہ {{PLURAL:$2|بس|'''$2''' انوسا}} باک {{PLURAL:$1|'''ای''' تبدیلی شیر|آخری '''$1''' تبدیلی شینی}}، $5، $4.",
'rcnotefrom' => "ھیہ موڑا '''$2''' کورونو بیرو تبدیلیان تفصیلات شینی ('''$1''' تبدیلیان پشینو بونیان)۔",
'rclistfrom' => '$1 نوغ تبدیلیاں پشیک شروع کورے',
'rcshowhideminor' => ' معمولی ترامیم $1',
'tog-minordefault' => 'Vurnayisunê ho pêrune ‘vurnayiso qızkek’ nisan bıde',
'tog-previewontop' => 'Verqayti pela nustene ser de bıasne',
'tog-previewonfirst' => 'Vurnayiso verên de verqayti tım bıasne',
-'tog-nocache' => 'Pelunê cıfeteliyawoği mia ho viri',
'tog-enotifwatchlistpages' => 'Zû pele ya ki dosyawa ke lista mına şêrkerdişi de vurnê mı rê e-poste bırusne',
'tog-enotifusertalkpages' => 'Pela mına hurênayişi ke vurnê mı rê e-poste bırusne',
'tog-enotifminoredits' => 'Vurnayisunê qızkekunê pelun u dosyu de ki mı rê e-poste bırusne',
'recentchanges-label-bot' => 'No vurnais terefê zu boti ra bi',
'recentchanges-label-unpatrolled' => 'No vurnais hona çım ra ranêvêrdo',
'recentchanges-legend-newpage' => '$1 - pela newiye',
-'rcnote' => "Cêr {{PLURAL:$1|'''1''' vurnaiso peyên|'''$1''' vurnaisê peyêni}} be {{PLURAL:$2|roza peyêne|'''$2''' rozunê peyênunê}} $5, $4 ra estê.",
'rcnotefrom' => "Cêr de vurnayîşê esto ke '''$2''' ra raver (heta '''$1''' mucnayiyo).",
'rclistfrom' => '$1 ra hata nıka vurnaisunê newu bıasne',
'rcshowhideminor' => '$1 vurnaisê qızkeki',
'undeletebtn' => 'Peyser bia',
'undeletelink' => 'bıvêne/peyser bia',
'undeleteviewlink' => 'bıvêne',
-'undeletereset' => 'Vaz be',
'undeleteinvert' => 'Weçinıtey ters bıçarne',
'undeletecomment' => 'Sebeb:',
'undelete-header' => 'Peleyê ke veror de besterneyayê êna bıvinê: [[Special:Log/delete|qeydê esterneya]].',
'watchlistall2' => 'pêro',
'namespacesall' => 'pêro',
'monthsall' => 'pêro',
-'limitall' => 'pêro',
# action=purge
'confirm_purge_button' => 'Temam',
'tog-minordefault' => 'ادەپكىدەن بارلىق وڭدەمەلەردى شاعىن دەپ بەلگىلە',
'tog-previewontop' => 'قاراپ شىعۋ اۋماعى كىرىستىرۋ ورنى الدىندا',
'tog-previewonfirst' => 'ٴبىرىنشى وڭدەگەندە قاراپ شىعۋ',
-'tog-nocache' => 'بەت بۇركەمەلەۋىن ٴوشىر',
'tog-enotifwatchlistpages' => 'باقىلانعان بەت وزگەرگەندە ماعان حات جىبەر',
'tog-enotifusertalkpages' => 'تالقىلاۋىم وزگەرگەندە ماعان حات جىبەر',
'tog-enotifminoredits' => 'شاعىن وڭدەمە تۋرالى دا ماعان حات جىبەر',
'recentchanges' => 'جۋىقتاعى وزگەرىستەر',
'recentchanges-summary' => 'بۇل بەتتە وسى ۋىيكىيدەگى بولعان جۋىقتاعى وزگەرىستەر بايقالادى.',
'recentchanges-feed-description' => 'بۇل ارنامەنەن ۋىيكىيدەگى ەڭ سوڭعى وزگەرىستەر قاداعالانادى.',
-'rcnote' => "$3 كەزىنە دەيىن — تومەندە سوڭعى {{PLURAL:$2|كۇندەگى|'''$2''' كۇندەگى}}, سوڭعى '''$1''' وزگەرىس كورسەتىلەدى.",
'rcnotefrom' => "'''$2''' كەزىنەن بەرى — تومەندە '''$1''' جەتكەنشە دەيىن وزگەرىستەر كورسەتىلەدى.",
'rclistfrom' => '$1 كەزىنەن بەرى — جاڭا وزگەرىستەردى كورسەت.',
'rcshowhideminor' => 'شاعىن وڭدەمەلەردى $1',
'undelete-nodiff' => 'ەش الدىڭعى تۇزەتۋ تابىلمادى.',
'undeletebtn' => 'قالپىنا كەلتىر!',
'undeletelink' => 'قالپىنا كەلتىرۋ',
-'undeletereset' => 'قايتا قوي',
'undeletecomment' => 'ماندەمەسى:',
'undeletedrevisions' => '$1 تۇزەتۋ قالپىنا كەلتىرىلدى',
'undeletedrevisions-files' => '$1 تۇزەتۋ جانە $2 فايل قالپىنا كەلتىرىلدى',
'ipadressorusername' => 'IP مەكەنجايى نە قاتىسۋشى اتى:',
'ipbexpiry' => 'مەرزىمى بىتپەك:',
'ipbreason' => 'سەبەبى:',
-'ipbreasonotherlist' => 'باسقا سەبەپ',
'ipbreason-dropdown' => '* بۇعاتتاۋدىڭ جالپى سەبەبتەرى
** جالعان مالىمەت ەنگىزۋ
** بەتتەردەگى ماعلۇماتتى الاستاۋ
'ipbsubmit' => 'قاتىسۋشىنى بۇعاتتا',
'ipbother' => 'باسقا مەرزىمى:',
'ipboptions' => '2 ساعات:2 hours,1 كۇن:1 day,3 كۇن:3 days,1 اپتا:1 week,2 اپتا:2 weeks,1 اي:1 month,3 اي:3 months,6 اي:6 months,1 جىل:1 year,مانگى:infinite',
-'ipbotheroption' => 'باسقا',
-'ipbotherreason' => 'باسقا/قوسىمشا سەبەپ:',
'ipbhidename' => 'قاتىسۋشى اتىن بۇعاتتاۋ جۋرنالىننان, بەلسەندى بۇعاتتاۋ تىزىمىنەن, قاتىسۋشى تىزىمىنەن جاسىرۋ',
'ipbwatchuser' => 'بۇل قاتىسۋشىنىڭ جەكە جانە تالقىلاۋ بەتتەرىن باقىلاۋ',
'badipaddress' => 'جارامسىز IP مەكەنجايى',
'confirmemail_success' => 'ە-پوشتا مەكەنجايىڭىز قۇپتالدى.
ەندى ۋىيكىيگە كىرىپ جۇمىسقا كىرىسۋگە بولادى',
'confirmemail_loggedin' => 'ە-پوشتا مەكەنجايىڭىز ەندى قۇپتالدى.',
-'confirmemail_error' => 'قۇپتاۋڭىزدى ساقتاعاندا بەلگىسىز قاتە بولدى.',
'confirmemail_subject' => '{{SITENAME}} تورابىنان ە-پوشتا مەكەنجايىڭىزدى قۇپتاۋ حاتى',
'confirmemail_body' => 'كەيبىرەۋ, $1 دەگەن IP مەكەنجايىنان, ٴوزىڭىز بولۋى مۇمكىن,
{{SITENAME}} جوباسىندا بۇل ە-پوشتا مەكەنجايىن قولدانىپ «$2» دەگەن تىركەلگى جاساپتى.
'tog-minordefault' => 'Әдепкіден барлық өңдемелерді шағын деп белгіле',
'tog-previewontop' => 'Қарап шығу аумағын өңдеу терезесінің жоғарғы жағында көрсету',
'tog-previewonfirst' => 'Бірінші өңдегенде қарап шығу',
-'tog-nocache' => 'Бет бүркемелеуін өшір',
'tog-enotifwatchlistpages' => 'Бақылауыңыздағы бет өзгергенде е-поштаға хабарлама жіберу',
'tog-enotifusertalkpages' => 'Талқылау бетім өзгергенде маған хат жібер',
'tog-enotifminoredits' => 'Шағын өңдеме туралы да маған хат жібер',
'templatesusedsection' => 'Бұл бөлімде қолданылған {{PLURAL:$1|үлгі|үлгілер}}:',
'template-protected' => '(қорғалған)',
'template-semiprotected' => '(жартылай қорғалған)',
-'hiddencategories' => 'Бұл бет $1 {{PLURAL:$1|1 жасырын санаттың|$1 жасырын санаттардың}}: мүшесі:',
+'hiddencategories' => 'Бұл бет {{PLURAL:$1|1 жасырын санаттың|$1 жасырын санаттың}} мүшесі:',
'nocreatetext' => '{{SITENAME}} жобасында жаңа бет бастауы шектелген.
Кері қайтып бар бетті өңдеуіңізге болады, немесе [[Special:UserLogin|кіруіңізге не тіркелуіңізге]] болады.',
'nocreate-loggedin' => 'Жаңа бет бастауға рұқсатыңыз жоқ.',
'recentchanges-label-bot' => 'Бұл өңдемені бот жасады.',
'recentchanges-label-unpatrolled' => 'Бұл өңдеме әлі тексеруден өтпеді.',
'recentchanges-legend-newpage' => '$1 - жаңа бет',
-'rcnote' => "Төменде $5, $4 кезіне дейінгі соңғы {{PLURAL:$2|күндегі|'''$2''' күндегі}}, {{PLURAL:$1| '''1''' өзгеріс|соңғы '''$1''' өзгеріс}} көрсетіледі.",
'rcnotefrom' => "Төменде '''$2''' кезінен бергі ('''$1''' жеткенше дейін) өзгерістер көрсетіледі.",
'rclistfrom' => '$1 кезінен бергі жаңа өзгерістерді көрсет.',
'rcshowhideminor' => 'Шағын өңдемелерді $1',
'undeletebtn' => 'Қалпына келтір!',
'undeletelink' => 'қарау/қалпына келтіру',
'undeleteviewlink' => 'қарау',
-'undeletereset' => 'Қайта қой',
'undeleteinvert' => 'Таңдалғанды алмастыру',
'undeletecomment' => 'Себебі:',
'undeletedrevisions' => '{{PLURAL:$1|1 түзету|$1 түзету}} қалпына келтірілді',
'block' => 'Қатысушыны бұғаттау',
'unblock' => 'Қатысушыны бұғаттамау',
'blockip' => 'Қатысушыны бұғаттау',
-'blockip-title' => 'Қатысушыны бұғаттау',
'blockip-legend' => 'Қатысушыны бұғаттау',
'blockiptext' => 'Төмендегі пішін қатысушының жазу рұқсатын белгілі IP мекенжайымен не атымен бұғаттау үшін қолданылады.
Бұны тек бұзақылықты қақпайлау үшін және де [[{{{{ns:mediawiki}}:Policy-url}}|ережелер]] бойынша атқаруыңыз жөн.
'ipadressorusername' => 'IP-мекенжайы немесе қатысушы аты:',
'ipbexpiry' => 'Мерзімі бітпек:',
'ipbreason' => 'Себебі:',
-'ipbreasonotherlist' => 'Басқа себеп',
'ipbreason-dropdown' => '* Бұғаттаудың жалпы себебтері
** Жалған мәлімет енгізу
** Беттердегі мағлұматты аластау
'ipbsubmit' => 'Бұл қатысушыны бұғаттау',
'ipbother' => 'Басқа мерзімі:',
'ipboptions' => '2 сағат:2 hours,1 күн:1 day,3 күн:3 days,1 апта:1 week,2 апта:2 weeks,1 ай:1 month,3 ай:3 months,6 ай:6 months,1 жыл:1 year,мәңгі:infinite',
-'ipbotheroption' => 'басқа',
-'ipbotherreason' => 'Басқа/қосымша себеп:',
'ipbhidename' => 'Қатысушы атын өңдемелерден және тізімдерден жасыру',
'ipbwatchuser' => 'Бұл қатысушының жеке және талқылау беттерін бақылау',
'ipb-disableusertalk' => 'Бұл қатысушыны бұғатталған кезде өзінің талқылау бетінін өңдеуіне кедергі жасау',
'spam_blanking' => '$1 дегенге сілтемелері бар барлық түзетулер тазартылды',
# Info page
-'pageinfo-title' => '"$1" үшін ақпараттар',
+'pageinfo-title' => '"$1" беті туралы мәлімет',
'pageinfo-header-basic' => 'Негізгі ақпарат',
'pageinfo-header-edits' => 'Өңдеу тарихы',
'pageinfo-header-restrictions' => 'Бет қорғалуы',
'pageinfo-length' => 'Бет ұзындығы (байтпен)',
'pageinfo-article-id' => 'Бет ID-і',
'pageinfo-language' => 'Бет мәлімет тілі',
+'pageinfo-content-model' => 'Бет мағұлымат қалпы',
'pageinfo-robot-policy' => 'Индекстеуді робот жүргізеді',
'pageinfo-robot-index' => 'Рұқсат берілген',
'pageinfo-robot-noindex' => 'Рұқсат етілмеген',
'pageinfo-hidden-categories' => 'Жасырылған {{PLURAL:$1|санат|санаттар}} ($1)',
'pageinfo-templates' => 'Кіріктірілген {{PLURAL:$1|үлгі|үлгілер}} ($1)',
'pageinfo-transclusions' => 'Kіріктірілген {{PLURAL:$1|бет|беттер}} ($1)',
-'pageinfo-toolboxlink' => 'Бет ақпараттары',
+'pageinfo-toolboxlink' => 'Бұл бет туралы мәлімет',
'pageinfo-redirectsto' => 'Айдатылғандар',
'pageinfo-redirectsto-info' => 'Информация',
'pageinfo-contentpage-yes' => 'Иә',
'watchlistall2' => 'барлық',
'namespacesall' => 'барлығы',
'monthsall' => 'барлығы',
-'limitall' => 'барлығы',
# Email address confirmation
'confirmemail' => 'Е-пошта мекенжайын құптау',
'confirmemail_success' => 'Е-пошта мекенжайыңыз құпталды.
Енді уикиге кіріп жұмысқа кірісуге болады',
'confirmemail_loggedin' => 'Е-пошта мекенжайыңыз енді құпталды.',
-'confirmemail_error' => 'Құптауңызды сақтағанда белгісіз қате болды.',
'confirmemail_subject' => '{{SITENAME}} торабынан е-пошта мекенжайыңызды құптау хаты',
'confirmemail_body' => 'Кейбіреу, $1 деген IP мекенжайынан, өзіңіз болуы мүмкін,
{{SITENAME}} жобасында бұл Е-пошта мекенжайын қолданып «$2» деген тіркелгі жасапты.
# Special:ComparePages
'comparepages' => 'Беттерді салыстыру',
-'compare-selector' => 'Бет түзетулерін салыстыру',
'compare-page1' => 'Бет 1',
'compare-page2' => 'Бет 2',
'compare-rev1' => 'Нұсқа 1',
# New logging system
'logentry-delete-delete' => '$1 $3 деген бетті {{GENDER:$2|жойды}}',
'logentry-delete-restore' => '$1 $3 деген бетті {{GENDER:$2|қалпына келтірді}}',
+'logentry-delete-event' => '$1 $3 бетіндегі {{PLURAL:$5|журнал оқиғасы|$5 журнал оқиғасы}} көрінісін {{GENDER:$2|өзгертті}}: $4',
+'logentry-delete-revision' => '$1 $3 бетіндегі {{PLURAL:$5|нұсқа|$5 нұсқа}} көрінісін {{GENDER:$2|өзгертті}}: $4',
+'logentry-suppress-event' => '$1 $3 бетіндегі {{PLURAL:$5|журнал оқиғасы|$5 журнал оқиғасы}} көрінісін құпия түрде {{GENDER:$2|өзгертті}}: $4',
'revdelete-content-hid' => 'мағұлымат жасырылған',
'revdelete-summary-hid' => 'өңдеу түйіндемесі жасырылған',
'revdelete-uname-hid' => 'қатысушы есімі жасырылған',
'tog-minordefault' => 'Ädepkiden barlıq öñdemelerdi şağın dep belgile',
'tog-previewontop' => 'Qarap şığw awmağı kiristirw ornı aldında',
'tog-previewonfirst' => 'Birinşi öñdegende qarap şığw',
-'tog-nocache' => 'Bet bürkemelewin öşir',
'tog-enotifwatchlistpages' => 'Baqılanğan bet özgergende mağan xat jiber',
'tog-enotifusertalkpages' => 'Talqılawım özgergende mağan xat jiber',
'tog-enotifminoredits' => 'Şağın öñdeme twralı da mağan xat jiber',
'recentchanges' => 'Jwıqtağı özgerister',
'recentchanges-summary' => 'Bul bette osı wïkïdegi bolğan jwıqtağı özgerister baýqaladı.',
'recentchanges-feed-description' => 'Bul arnamenen wïkïdegi eñ soñğı özgerister qadağalanadı.',
-'rcnote' => "$3 kezine deýin — tömende soñğı {{PLURAL:$2|kündegi|'''$2''' kündegi}}, soñğı '''$1''' özgeris körsetiledi.",
'rcnotefrom' => "'''$2''' kezinen beri — tömende '''$1''' jetkenşe deýin özgerister körsetiledi.",
'rclistfrom' => '$1 kezinen beri — jaña özgeristerdi körset.',
'rcshowhideminor' => 'Şağın öñdemelerdi $1',
'undelete-nodiff' => 'Eş aldıñğı tüzetw tabılmadı.',
'undeletebtn' => 'Qalpına keltir!',
'undeletelink' => 'qalpına keltirw',
-'undeletereset' => 'Qaýta qoý',
'undeletecomment' => 'Mändemesi:',
'undeletedrevisions' => '$1 tüzetw qalpına keltirildi',
'undeletedrevisions-files' => '$1 tüzetw jäne $2 faýl qalpına keltirildi',
'ipadressorusername' => 'IP mekenjaýı ne qatıswşı atı:',
'ipbexpiry' => 'Merzimi bitpek:',
'ipbreason' => 'Sebebi:',
-'ipbreasonotherlist' => 'Basqa sebep',
'ipbreason-dropdown' => '* Buğattawdıñ jalpı sebebteri
** Jalğan mälimet engizw
** Betterdegi mağlumattı alastaw
'ipbsubmit' => 'Qatıswşını buğatta',
'ipbother' => 'Basqa merzimi:',
'ipboptions' => '2 sağat:2 hours,1 kün:1 day,3 kün:3 days,1 apta:1 week,2 apta:2 weeks,1 aý:1 month,3 aý:3 months,6 aý:6 months,1 jıl:1 year,mängi:infinite',
-'ipbotheroption' => 'basqa',
-'ipbotherreason' => 'Basqa/qosımşa sebep:',
'ipbhidename' => 'Qatıswşı atın buğattaw jwrnalınnan, belsendi buğattaw tiziminen, qatıswşı tiziminen jasırw',
'ipbwatchuser' => 'Bul qatıswşınıñ jeke jäne talqılaw betterin baqılaw',
'badipaddress' => 'Jaramsız IP mekenjaýı',
'confirmemail_success' => 'E-poşta mekenjaýıñız quptaldı.
Endi wïkïge kirip jumısqa kiriswge boladı',
'confirmemail_loggedin' => 'E-poşta mekenjaýıñız endi quptaldı.',
-'confirmemail_error' => 'Quptawñızdı saqtağanda belgisiz qate boldı.',
'confirmemail_subject' => '{{SITENAME}} torabınan e-poşta mekenjaýıñızdı quptaw xatı',
'confirmemail_body' => 'Keýbirew, $1 degen IP mekenjaýınan, öziñiz bolwı mümkin,
{{SITENAME}} jobasında bul E-poşta mekenjaýın qoldanıp «$2» degen tirkelgi jasaptı.
'tog-minordefault' => 'ចំណាំគ្រប់កំណែប្រែរបស់ខ្ញុំថាជាកំណែប្រែតិចតួច',
'tog-previewontop' => 'បង្ហាញការមើលមុនពីលើប្រអប់កែប្រែ',
'tog-previewonfirst' => 'បង្ហាញការមើលមុនសម្រាប់កំណែប្រែដំបូងគេ',
-'tog-nocache' => 'មិនប្រើសតិភ្ជាប់នៃទំព័រ',
'tog-enotifwatchlistpages' => 'ផ្ញើអ៊ីមែលមកខ្ញុំកាលបើមានបន្លាស់ប្ដូរនៃទំព័រណាមួយដែលមានក្នុងបញ្ជីតាមដានរបស់ខ្ញុំ',
'tog-enotifusertalkpages' => 'ផ្ញើអ៊ីមែលមកខ្ញុំកាលបើមានបន្លាស់ប្ដូរនៅក្នុងទំព័រពិភាក្សារបស់ខ្ញុំ',
'tog-enotifminoredits' => 'ផ្ញើអ៊ីមែលមកខ្ញុំពេលមានបន្លាស់ប្ដូរតិចតួចលើទំព័រឬឯកសារផងដែរ',
'recentchanges-label-bot' => 'ការកែប្រែនេះត្រូវបានធ្វើឡើងដោយរូបយន្ត',
'recentchanges-label-unpatrolled' => 'ការកែប្រែនេះមិនទាន់ត្រូវបានល្បាតទេ',
'recentchanges-legend-newpage' => '$1 - ទំព័រថ្មី',
-'rcnote' => "ខាងក្រោមនេះជា{{PLURAL:$1|១បន្លាស់ប្ដូរ|'''$1'''បន្លាស់ប្ដូរ}}ចុងក្រោយក្នុងរយៈពេល{{PLURAL:$2|ថ្ងៃ|'''$2'''ថ្ងៃ}}ចុងក្រោយគិតត្រឹម$5 $4 ។",
'rcnotefrom' => "ខាងក្រោមនេះជាបន្លាស់ប្ដូរនានាគិតចាប់តាំងពី '''$2''' (បង្ហាញអតិបរមាចំនួន '''$1''')។",
'rclistfrom' => 'បង្ហាញបន្លាស់ប្ដូរថ្មីៗចាប់តាំងពី $1',
'rcshowhideminor' => '$1កំណែប្រែតិចតួច',
'undeletebtn' => 'ស្ដារឡើងវិញ',
'undeletelink' => 'មើល/ស្តារឡើងវិញ',
'undeleteviewlink' => 'មើល',
-'undeletereset' => 'ធ្វើឱ្យដូចដើមវិញ',
'undeleteinvert' => 'ក្រៅពីនោះ',
'undeletecomment' => 'មូលហេតុ៖',
'undeletedrevisions' => 'បានស្តារឡើងវិញនូវ{{PLURAL:$1|១កំណែ|$1កំណែ}}',
'block' => 'ដាក់ការហាមឃាត់លើអ្នកប្រើប្រាស់',
'unblock' => 'ដកការហាមឃាត់លើអ្នកប្រើប្រាស់',
'blockip' => 'ដាក់ការហាមឃាត់លើអ្នកប្រើប្រាស់',
-'blockip-title' => 'ដាក់ការហាមឃាត់លើអ្នកប្រើប្រាស់',
'blockip-legend' => 'ដាក់ការហាមឃាត់លើអ្នកប្រើប្រាស់',
'blockiptext' => 'សូមប្រើប្រាស់សំណុំបែបបទខាងក្រោមដើម្បីហាមឃាត់ការសរសេរពីអាសយដ្ឋាន IP ឬឈ្មោះអ្នកប្រើប្រាស់ណាមួយ។
ការធ្វើបែបនេះគួរតែធ្វើឡើងក្នុងគោលបំណងបង្ការការប៉ុនប៉ងបំផ្លាញ(vandalism)ដូចដែលមានចែងក្នុង[[{{MediaWiki:Policy-url}}|គោលការណ៍]]។
'ipadressorusername' => 'អាសយដ្ឋានIP ឬអត្តនាម៖',
'ipbexpiry' => 'រយៈពេលផុតកំណត់៖',
'ipbreason' => 'មូលហេតុ៖',
-'ipbreasonotherlist' => 'មូលហេតុផ្សេងទៀត',
'ipbreason-dropdown' => '*មូលហេតុហាមឃាត់ជាទូទៅ
** ដាក់បញ្ចូលព័ត៌មានមិនពិត
** ដកខ្លឹមទាំងស្រុងពីទំព័រនានា
'ipbsubmit' => 'ដាក់ការហាមឃាត់លើអ្នកប្រើប្រាស់នេះ',
'ipbother' => 'រយៈពេលផ្សេងទៀត៖',
'ipboptions' => '២ម៉ោង:2 hours,១ថ្ងៃ:1 day,៣ថ្ងៃ:3 days,១សប្តាហ៍:1 week,២សប្តាហ៍:2 weeks,១ខែ:1 month,៣ខែ:3 months,៦ខែ:6 months,១ឆ្នាំ:1 year,គ្មានកំណត់:infinite',
-'ipbotheroption' => 'ផ្សេងៗទៀត',
-'ipbotherreason' => 'មូលហេតុ(ផ្សេងទៀតឬបន្ថែម)៖',
'ipbhidename' => 'លាក់ឈ្មោះអ្នកប្រើប្រាស់ពីកំណែប្រែនឹងបញ្ជី',
'ipbwatchuser' => 'តាមដានទំព័រអ្នកប្រើប្រាស់និងទំព័រពិភាក្សារបស់អ្នកប្រើប្រាស់នេះ។',
'ipb-disableusertalk' => 'ហាមអ្នកប្រើប្រាស់នេះមិនអោយធ្វើការកែប្រែទំព័រពិភាក្សារបស់ខ្លួនពេលត្រូវបានហាមឃាត់។',
'sorbs_create_account_reason' => 'អាសយដ្ឋាន IP របស់អ្នកមានឈ្មោះក្នុងបញ្ជីប្រុកស៊ី(proxy)ចំហ នៅក្នុង DNSBL របស់ {{SITENAME}}។
អ្នកមិនអាចបង្កើតគណនីបានទេ',
-'cant-block-while-blocked' => 'អ្នកមិនអាចដាក់ការហាមឃាត់លើអ្នកប្រើប្រាស់ដទៃបានទេ ពេលកំពុងជាប់ការហាមឃាត់នោះ។',
# Developer tools
'lockdb' => 'ចាក់សោមូលដ្ឋានទិន្នន័យ',
'watchlistall2' => 'ទាំងអស់',
'namespacesall' => 'ទាំងអស់',
'monthsall' => 'ទាំងអស់',
-'limitall' => 'ទាំងអស់',
# Email address confirmation
'confirmemail' => 'បញ្ជាក់ទទួលស្គាល់អាសយដ្ឋានអ៊ីមែល',
'confirmemail_needlogin' => 'អ្នកត្រូវការ$1ដើម្បីបញ្ជាក់ទទួលស្គាល់អាសយដ្ឋានអ៊ីមែលរបស់អ្នក។',
'confirmemail_success' => 'អាសយដ្ឋានអ៊ីមែលរបស់អ្នកត្រូវបានបញ្ជាក់ទទួលស្គាល់ហើយ។ ពេលនេះអ្នកអាច[[Special:UserLogin|កត់ឈ្មោះចូល]] និងចូលរួមសប្បាយរីករាយជាមួយវិគីបានហើយ។',
'confirmemail_loggedin' => 'អាសយដ្ឋានអ៊ីមែលរបស់អ្នកត្រូវបានបញ្ជាក់ទទួលស្គាល់ហើយនាពេលនេះ។',
-'confirmemail_error' => 'រក្សាទុក ការបញ្ជាក់ទទួលស្គាល់ របស់អ្នក មានបញ្ហា ។',
'confirmemail_subject' => 'ការបញ្ជាក់ទទួលស្គាល់អាសយដ្ឋានអ៊ីមែល{{SITENAME}}',
'confirmemail_body' => 'នរណាម្នាក់ ប្រហែលជាអ្នកពីអាសយដ្ឋានIP $1,
បានចុះបញ្ជីគណនី "$2" ជាមួយនឹងអាសយដ្ឋានអ៊ីមែលនេះនៅលើ{{SITENAME}}។
# Special:ComparePages
'comparepages' => 'ប្រៀបធៀបទំព័រ',
-'compare-selector' => 'ប្រៀបធៀបកំណែទំព័រ',
'compare-page1' => 'ទំព័រ ១',
'compare-page2' => 'ទំព័រ ២',
'compare-rev1' => 'កំណែ ១',
'tog-minordefault' => 'ನನ್ನ ಎಲ್ಲಾ ಸಂಪಾದನೆಗಳನ್ನು ಚುಟುಕಾದವು ಎಂದು ಗುರುತು ಮಾಡು',
'tog-previewontop' => 'ಮುನ್ನೋಟವನ್ನು ಸಂಪಾದನೆ ಚೌಕದ ಮುಂಚೆ ತೋರು',
'tog-previewonfirst' => 'ಮೊದಲ ಬದಲಾವಣೆಯ ನಂತರ ಮುನ್ನೋಟವನ್ನು ತೋರಿಸು',
-'tog-nocache' => 'ಪುಟಗಳನ್ನು ಸ್ಮರಣೆಯಲ್ಲಿಟ್ಟುಕೊಳ್ಳಬೇಡ',
'tog-enotifwatchlistpages' => 'ನನ್ನ ವೀಕ್ಷಣಾ ಪಟ್ಟಿಯಲ್ಲಿರುವ ಯಾವುದಾದರೂ ಪುಟವು ಬದಲಾದಾಗ ನನಗೆ ಇ-ಅಂಚೆ ಕಳುಹಿಸು.',
'tog-enotifusertalkpages' => 'ನನ್ನ ಚರ್ಚೆ ಪುಟ ಬದಲಾದರೆ ನನಗೆ ಇ-ಅಂಚೆ ಕಳುಹಿಸು',
'tog-enotifminoredits' => 'ಚಿಕ್ಕ-ಪುಟ್ಟ ಬದಲಾವಣೆಗಳಾದಾಗಲೂ ಇ-ಅಂಚೆ ಕಳುಹಿಸು',
'category-file-count' => '{{PLURAL:$2|ಈ ವರ್ಗದಲ್ಲಿ ಈ ಕೆಳಗಿನ ಫೈಲು ಇದೆ.|ಈ ವರ್ಗದಲ್ಲಿ ಈ ಕೆಳಗಿನ {{PLURAL:$1|ಫೈಲನ್ನು|$1 ಫೈಲುಗಳನ್ನು}} ಸೇರಿಸಿ, ಒಟ್ಟು $2 ಇವೆ.}}',
'category-file-count-limited' => 'ಪ್ರಸಕ್ತ ವರ್ಗದಲ್ಲಿ ಈ ಕೆಳಗಿನ {{PLURAL:$1|ಫೈಲು ಇದೆ|$1 ಫೈಲುಗಳು ಇವೆ}}.',
'listingcontinuesabbrev' => 'ಮುಂದು.',
-'index-category' => 'ಸà³\82à²\9aಿನಾಮದ ಪà³\81ತಗಳು',
-'noindex-category' => 'à²\85ಸà³\81à²\9aಿನಾಮದ ಪà³\81ತಗಳು',
+'index-category' => 'à²\85ನà³\81à²\95à³\8dರಮಣà³\86à²\97à³\8aà²\82ಡ ಪà³\81à²\9fಗಳು',
+'noindex-category' => 'à²\85ನà³\81à²\95à³\8dರಮಣà³\86à²\97à³\8aಳಪಡದ ಪà³\81à²\9fಗಳು',
'broken-file-category' => 'ಕಡತ ಕೊಂಡಿಗಳು ಮುರಿದಿರುವ ಪುಟಗಳು',
'about' => 'ನಮ್ಮ ಬಗ್ಗೆ',
'recentchanges-label-minor' => 'ಇದು ಚುಟುಕಾದ ಬದಲಾವಣೆ',
'recentchanges-label-bot' => 'ಈ ಸಂಪಾದನೆಯನ್ನು ಒಂದು ಬಾಟ್ ಮಾಡಿದೆ',
'recentchanges-label-unpatrolled' => 'ಈ ಸಂಪಾದನೆಯನ್ನು ಇನ್ನೂ ಪರೀಕ್ಷೆಗೆ ಒಳಪಡಿಸಿಲ್ಲ',
-'rcnote' => "$5, $4 ವರೆಗೆ ಹಿಂದಿನ {{PLURAL:$2|ದಿನದಲ್ಲಿ|'''$2''' ದಿನಗಳಲ್ಲಿ}} ಮಾಡಲಾಗಿರುವ {{PLURAL:$1|'''೧''' ಬದಲಾವಣೆ|'''$1''' ಬದಲಾವಣೆಗಳು}} ಕೆಳಗಿವೆ.",
'rcnotefrom' => "'''$2''' ಇಂದ ಆಗಿರುವ ಬದಲಾವಣೆಗಳು ಕೆಳಗಿವೆ (ಕೊನೆಯ '''$1'''ರವರೆಗೆ ತೋರಿಸಲಾಗಿದೆ).",
'rclistfrom' => '$1 ಇಂದ ಪ್ರಾರಂಭಿಸಿ ಮಾಡಲಾದ ಬದಲಾವಣೆಗಳನ್ನು ನೋಡಿ',
'rcshowhideminor' => 'ಚಿಕ್ಕಪುಟ್ಟ ಬದಲಾವಣೆಗಳನ್ನು $1',
'ipadressorusername' => 'IP ವಿಳಾಸ ಅಥವ ಬಳಕೆಯ ಹೆಸರು:',
'ipbexpiry' => 'ಅಂತ್ಯ:',
'ipbreason' => 'ಕಾರಣ:',
-'ipbreasonotherlist' => 'ಇತರ ಕಾರಣ',
'ipbreason-dropdown' => '*ತಡೆಹಿಡಿಯುವಿಕೆಗೆ ಸಾಧಾರಣ ಕಾರಣಗಳು
** ತಪ್ಪು ಮಾಹಿತಿಯನ್ನು ಸೇರಿಸುವುದು
** ಪುಟದಲ್ಲಿರುವ ಮಾಹಿತಿಯನ್ನು ತೆಗೆಯುವುದು
'ipbsubmit' => 'ಈ ಸದಸ್ಯರನ್ನು ತಡೆಹಿಡಿಯಿರಿ',
'ipbother' => 'ಇತರ ಸಮಯ:',
'ipboptions' => '೨ ಗಂಟೆಗಳು:2 hours,೧ ದಿನ:1 day,೩ ದಿನಗಳು:3 days,೧ ವಾರ:1 week,೨ ವಾರಗಳು:2 weeks,೧ ತಿಂಗಳು:1 month,೩ ತಿಂಗಳುಗಳು:3 months,೬ ತಿಂಗಳುಗಳು:6 months,೧ ವರ್ಷ:1 year,ಅನಿರ್ಧಿಷ್ಟ:infinite',
-'ipbotheroption' => 'ಇತರ',
-'ipbotherreason' => 'ಇತರ/ಹೆಚ್ಚುವರಿ ಕಾರಣ:',
'badipaddress' => 'ಸರಿಯಿಲ್ಲದ IP ವಿಳಾಸ',
'blockipsuccesssub' => 'ತಡೆಹಿಡಿಯುವಿಕೆ ಯಶಸ್ವಿಯಾಯಿತು.',
'blockipsuccesstext' => '"$1" ಐಪಿ ಸಂಖ್ಯೆಯನ್ನು ತಡೆ ಹಿಡಿಯಲಾಗಿದೆ. <br /> ತಡೆಗಳನ್ನು ಪರಿಶೀಲಿಸಲು [[Special:BlockList|ತಡೆ ಹಿಡಿಯಲಾಗಿರುವ ಐಪಿ ಸಂಖ್ಯೆಗಳ ಪಟ್ಟಿ]] ನೋಡಿ.',
'watchlistall2' => 'ಎಲ್ಲಾ',
'namespacesall' => 'ಎಲ್ಲಾ',
'monthsall' => 'ಎಲ್ಲಾ',
-'limitall' => 'ಎಲ್ಲಾ',
# Email address confirmation
'confirmemail' => 'ಇ-ಅಂಚೆ ವಿಳಾಸವನ್ನು ಖಾತ್ರಿ ಮಾಡಿ',
'confirmemail_needlogin' => 'ನಿಮ್ಮ ಇ-ಅಂಚೆ ವಿಳಾಸವನ್ನು ಧೃಡೀಕರಿಸಲು ನೀವು $1 ಮಾಡಬೇಕು.',
'confirmemail_success' => 'ನಿಮ್ಮ ಇ-ಅಂಚೆ ವಿಳಾಸ ಖಾತ್ರಿಗೊಂಡಿದೆ. ಈಗ ನೀವು ಲಾಗಿನ್ ಆಗಿ ವಿಕಿಯನ್ನು ಉಪಯೋಗಿಸಬಹುದು.',
'confirmemail_loggedin' => 'ನಿಮ್ಮ ಇ-ಅಂಚೆ ವಿಳಾಸ ಈಗ ಖಾತ್ರಿಗೊಂಡಿದೆ.',
-'confirmemail_error' => 'ನಿಮ್ಮ ಧೃಡೀಕರಣವನ್ನು ಉಳಿಸುವಲ್ಲಿ ಏನೋ ದೋಷವಾಯಿತು.',
'confirmemail_subject' => '{{SITENAME}} ಇ-ಅಂಚೆ ವಿಳಾಸ ಧೃಡೀಕರಣ',
'confirmemail_body' => 'ಈ ಇ-ಅಂಚೆ ವಿಳಾಸದೊಂದಿಗೆ {{SITENAME}} ಅಲ್ಲಿ, ಯಾರೊ (ಪ್ರಾಯಶಃ ನೀವು) $1 ಐಪಿ ವಿಳಾಸದಿಂದ ,
"$2" ಖಾತೆಯನ್ನು ತೆರೆದಿದ್ದಾರೆ.
'tog-minordefault' => '사소한 편집을 기본적으로 선택하기',
'tog-previewontop' => '편집 상자 앞에 미리 보기 보기',
'tog-previewonfirst' => '처음 편집할 때 미리 보기 보기',
-'tog-nocache' => '브라우저 문서 캐시 비활성화',
'tog-enotifwatchlistpages' => '주시문서 목록에 속한 문서나 파일이 바뀌면 이메일로 알림',
'tog-enotifusertalkpages' => '내 토론 문서가 바뀌면 이메일로 알림',
'tog-enotifminoredits' => '문서나 파일의 사소한 편집도 이메일로 알림',
'recentchanges-label-unpatrolled' => '아직 검토하지 않은 편집',
'recentchanges-label-plusminus' => '바이트로 표기된 바뀐 문서 크기',
'recentchanges-legend-newpage' => '([[Special:NewPages|새 문서의 목록]]도 참고하세요)',
-'rcnote' => "다음은 $4 $5 까지의 {{PLURAL:$2|'''$2'''일}}동안 {{PLURAL:$1|바뀐 문서 '''$1'''개입니다}}.",
'rcnotefrom' => "다음은 '''$2'''에서부터 바뀐 문서 '''$1'''개입니다.",
'rclistfrom' => '$1 이래로 새로 바뀐 문서 보기',
'rcshowhideminor' => '사소한 편집을 $1',
'undeletebtn' => '되살리기',
'undeletelink' => '보기/되살리기',
'undeleteviewlink' => '보기',
-'undeletereset' => '초기화',
'undeleteinvert' => '선택 반전',
'undeletecomment' => '이유:',
'undeletedrevisions' => '{{PLURAL:$1|판 1개|판 $1개}}를 되살렸습니다',
'block' => '사용자 차단',
'unblock' => '사용자 차단 해제',
'blockip' => '사용자 차단',
-'blockip-title' => '특정 사용자를 차단하기',
'blockip-legend' => '사용자 차단',
'blockiptext' => '차단할 IP 주소나 사용자 이름을 아래에 적어 주세요.
차단은 문서 훼손을 막기 위해, [[{{MediaWiki:Policy-url}}|정책]]에 의해서만 이루어져야 합니다.
'ipadressorusername' => 'IP 주소 또는 사용자 이름:',
'ipbexpiry' => '기한:',
'ipbreason' => '이유:',
-'ipbreasonotherlist' => '다른 이유',
'ipbreason-dropdown' => '*일반적인 차단 이유
** 거짓 정보를 넣음
** 문서 내용을 지움
'ipbsubmit' => '사용자 차단',
'ipbother' => '다른 기간:',
'ipboptions' => '2시간:2 hours,1일:1 day,3일:3 days,1주일:1 week,2주일:2 weeks,1개월:1 month,3개월:3 months,6개월:6 months,1년:1 year,무기한:infinite',
-'ipbotheroption' => '수동으로 지정',
-'ipbotherreason' => '다른 이유/추가적인 이유:',
'ipbhidename' => '사용자 이름을 편집 역사에서 숨기기',
'ipbwatchuser' => '이 사용자 문서와 사용자 토론 문서를 주시하기',
'ipb-disableusertalk' => '차단된 동안 자신의 사용자 토론 문서를 편집하지 못하도록 막기',
'sorbs_create_account_reason' => '당신의 IP 주소는 {{SITENAME}}에서 사용하는 DNSBL 공개 프록시 목록에 들어 있습니다.
계정을 만들 수 없습니다.',
'xffblockreason' => 'X-Forwarded-For 헤더에 현재 사용하고 있는 프록시 서버 중 당신이나 해당 IP 주소가 차단되었습니다. 차단 이유는 다음과 같습니다: $1',
-'cant-block-while-blocked' => '자신이 차단되어 있는 동안에는 다른 사용자를 차단할 수 없습니다.',
'cant-see-hidden-user' => '차단하려 하는 사용자는 이미 차단되었고 숨김 처리되었습니다.
사용자 숨기기 권한을 갖고 있지 않기 때문에, 이 사용자의 차단 기록을 보거나 차단 설정을 바꿀 수 없습니다.',
'ipbblocked' => '자신이 차단되어 있기 때문에 다른 사용자를 차단하거나 차단을 해제할 수 없습니다.',
'allmessages-filter-modified' => '수정됨',
'allmessages-prefix' => '접두어로 거르기:',
'allmessages-language' => '언어:',
-'allmessages-filter-submit' => '실행',
+'allmessages-filter-submit' => '보기',
# Thumbnails
'thumbnail-more' => '실제 크기로',
'watchlistall2' => '모두',
'namespacesall' => '모두',
'monthsall' => '모든 달',
-'limitall' => '모두',
# Email address confirmation
'confirmemail' => '이메일 주소 확인',
'confirmemail_success' => '이메일 주소가 인증되었습니다.
이제 [[Special:UserLogin|로그인]]해서 위키를 사용하세요.',
'confirmemail_loggedin' => '이메일 주소가 인증되었습니다.',
-'confirmemail_error' => '인증을 저장하는 도중 오류가 발생했습니다.',
'confirmemail_subject' => '{{SITENAME}} 이메일 주소 인증',
'confirmemail_body' => '$1 IP 주소를 사용하는 사용자가
{{SITENAME}}의 "$2" 계정에 이메일 인증 신청을 했습니다.
'imgmultigo' => '이동!',
'imgmultigoto' => '$1 페이지로 가기',
+# Language selector for translatable SVGs
+'img-lang-default' => '(기본 언어)',
+'img-lang-info' => '이 그림을 $1로 렌더합니다. $2',
+'img-lang-go' => '보기',
+
# Table pager
'ascending_abbrev' => '오름차순',
'descending_abbrev' => '내림차순',
# Special:ComparePages
'comparepages' => '문서 비교',
-'compare-selector' => '문서의 특정판 비교',
'compare-page1' => '첫 번째 문서',
'compare-page2' => '두 번째 문서',
'compare-rev1' => '첫 번째 판',
'recentchanges' => 'Медбöрья вильмöтöммез',
'recentchanges-legend' => 'Медбöрья вильмöтöммез понда лöсьöтаннэз',
'recentchanges-feed-description' => 'Синмавны медбöрья вильмöтöммез этiя вики визылын.',
-'rcnote' => "{{PLURAL:$1|Медбöрья '''$1''' вильмöтöм|Медбöрья '''$1''' вильмöтöм|Медбöрья'''$1''' вильмöтöм}} '''$2''' лун сьöрна, $5 $4 кежö.",
'rclistfrom' => 'Мыччавны вильмöтöмсö $1-сянь',
'rcshowhideminor' => '$1 невунка мöдкöдьсьöтыштöм',
'rcshowhidebots' => '$1 бот',
'watchlistall2' => 'быдöс',
'namespacesall' => 'быдöс',
'monthsall' => 'быдöс',
-'limitall' => 'быдöс',
# Watchlist editing tools
'watchlisttools-view' => 'Видзöт лöсялана вильмöтöммез',
'tog-minordefault' => 'Тынгылау бла бары тюрлениулени «аз магъаналы» белгиле',
'tog-previewontop' => 'Ал къарауну тюрлендириу бетни башы бла кёргюз',
'tog-previewonfirst' => 'Тюрледириу бетге кёчгенде ал къарауну кёргюз',
-'tog-nocache' => 'Бетлени браузерге кэш этерге къойма',
'tog-enotifwatchlistpages' => 'Кёзюмде тургъан тизмемдеги бетлени неда файлланы тюрлениулерин e-mail бла билдир',
'tog-enotifusertalkpages' => 'Энчи бетими тюрлениулерин e-mail бла билдир',
'tog-enotifminoredits' => 'Бетлени неда файлланы гитче тюрлениулерин огъуна E-mail бла',
'recentchanges-label-bot' => 'Бу тюрлендириуню бот этгенди',
'recentchanges-label-unpatrolled' => 'Бу тюрлендириу алкъын патруль этилинмегенди',
'recentchanges-legend-newpage' => '$1 — джангы бет',
-'rcnote' => '$4 $5 заманнга, арт {{PLURAL:$1|1|$1}} тюрлениу {{PLURAL:$2|1|$2}} кюнню ичинде',
'rcnotefrom' => 'Тюбюрекде <strong>$2</strong> башлаб (<strong>$1</strong> дери) тюрлендириуле кёрюнедиле',
'rclistfrom' => '$1 башлаб джангы тюрлениулени кёргюз',
'rcshowhideminor' => 'гитче тюрлендириулени $1',
'undeletebtn' => 'Ызына къайтар',
'undeletelink' => 'къара/ызына сал',
'undeleteviewlink' => 'кёргюз',
-'undeletereset' => 'Ариула',
'undeleteinvert' => 'Сайлауну ызына бур',
'undeletecomment' => 'Чурум:',
'undeletedrevisions' => '$1 {{PLURAL:$1|тюрлендириу|тюрлендириу}} ызына къайтарылды',
'block' => 'Къошулуучуну блокла',
'unblock' => 'Къошулуучуну блок этилиуюн алыу',
'blockip' => 'Бу къошулуучуну блок эт',
-'blockip-title' => 'Къошулуучуну блокга салыу',
'blockip-legend' => 'Къошулуучуну блокга салыу',
'blockiptext' => 'Тюбюндеги форманы хайырланыб белгили бир IP-ден неда регистрация этилген къошулуучуну тюрлениу этиуюню тыяллыкъсыз. Бу, джангыз вандализмни тыяр ючюн эм [[{{MediaWiki:Policy-url}}|джорукълагъа]] келишиулю этилирге керекди. Тюбюрек тыйыу бла байламлы ангылатыу джазыгъыз. (юлгю: -Бу- бетледе вандализм этилгенди).',
'ipadressorusername' => 'IP-адрес неда къошулуучу ат:',
'ipbexpiry' => 'Бошаллыкъды (ётсе):',
'ipbreason' => 'Чурум:',
-'ipbreasonotherlist' => 'Башха чурум:',
'ipbreason-dropdown' => '* Тыйылыуну асламысында тюбеген чурумлары
** Джалгъан билги къошуу
** Бетлени ичиндегин кетериу
'ipbsubmit' => 'Бу адресни/къошулуучуну блокга сал',
'ipbother' => 'Башха заман:',
'ipboptions' => '2 сагъат:2 hours,1 кюн:1 day,3 кюн:3 days,1 ыйыкъ:1 week,2 ыйыкъ:2 weeks,1 ай:1 month,3 ай:3 months,6 ай:6 months,1 джыл:1 year,болджалсыз:infinite',
-'ipbotheroption' => 'башха',
-'ipbotherreason' => 'Башха/къошакъ чурум:',
'ipbhidename' => 'Къошулуучуну атын тюрлендириуле бла спиоскладан джашыр',
'ipbwatchuser' => 'Бу къошулуучуну, къошулуучу эмда сюзюу бетлерин кёзде тургъан тизмеге къош',
'ipb-change-block' => 'Бу джарашдырыула бла къошулуучуну джангыдан тый',
Тилейбиз, кесигизни интернет-провайдеригиз бла, неда дагъан болгъан къуллукъла бла байланыб, къоркъуусузлукъну бу проблемасын билдиригиз.',
'sorbsreason' => 'IP-адресигиз, {{SITENAME}} сайтда хайырланнган DNSBL-де ачыкъ прокси кибик саналады.',
'sorbs_create_account_reason' => 'IP-адресигиз, translatewiki.net сайтда хайырланнган DNSBL-де ачыкъ прокси кибик саналады. Тергеу джазыу къураяллыкъ тюлсюз.',
-'cant-block-while-blocked' => 'Сиз кесигиз блокда заманда, башха къошулуучуланы блок этеллик тюлсюз.',
'cant-see-hidden-user' => 'Тыяргъа излеген къошулуучу алайсызда тыйылыбды эмда джашырылыбды. Къошулуучуну джашырыргъа эркинлигигиз болмагъаны себебли, сиз бу блокну не къараяллыкъ, неда тюрлендиреллик тюлсюз.',
'ipbblocked' => 'Кесигиз блокда болгъаныгъыз себебли, сиз башхаланы блокга салыргъа неда блокларын алыргъа мадарыгъыз джокъду',
'ipbnounblockself' => 'Сиз кеси кесигизни блокдан алыр мадарыгъыз джокъду',
'watchlistall2' => 'бютеу',
'namespacesall' => 'бютеу',
'monthsall' => 'бютеу',
-'limitall' => 'бютеую',
# Email address confirmation
'confirmemail' => 'Электорн адресни мюкюл эт',
'confirmemail_needlogin' => 'Электорн адресигизни мюкюл этер ючюн, алгъы бурун $1 этерге керексиз.',
'confirmemail_success' => 'Электрон почтагъызны адреси мюкюл этилди. Олтуруу [[Special:UserLogin|ачыб]] Викини татыуун чыгъарыгъыз.',
'confirmemail_loggedin' => 'Электорн почтагъызны адреси мюкюл этилди.',
-'confirmemail_error' => 'Мюкюл этилиуде билинмеген халат болду.',
'confirmemail_subject' => '{{SITENAME}} электрон почта адресни мюкюл этилиую',
'confirmemail_body' => 'Ким эседа, биз сагъышдан, $1 IP адресден,
{{SITENAME}} сайтда бу электрон адрес бла $2 тергеу джазыу къурады.
# Special:ComparePages
'comparepages' => 'Бетлени тенглешдир',
-'compare-selector' => 'Бет версияланы тенглешдир',
'compare-page1' => 'Биринчи бет',
'compare-page2' => 'Экинчи бет',
'compare-rev1' => 'Биринчи версия',
'tog-minordefault' => 'Dun all ming Änderunge jedes Mol als klein Mini-Änderunge vürschlage',
'tog-previewontop' => 'Zeisch de Vör-Aanseesch övver däm Fäld för der Täx enzejävve aan.',
'tog-previewonfirst' => 'Zeich de Vör-Aansich tirek för et eetste Mol beim Bearbeide aan',
-'tog-nocache' => 'Dun et Sigge Zweschespeichere en Dingem Brauser avschalte',
'tog-enotifwatchlistpages' => 'Scheck mer en <i lang="en">e-mail</i>, wann en Sigg us minge Oppaßlėß verändert woode es',
'tog-enotifusertalkpages' => 'Scheck mer en <i lang="en">e-mail</i>, wann ming Klaaf_Sigg jeändert weed',
'tog-enotifminoredits' => 'Scheck mer och en <i lang="en">e-mail</i> för de klein Mini-Änderonge',
'userlogin-resetpassword-link' => 'Paßwoot verjäße?',
'helplogin-url' => 'Help:Övver et Enlogge',
'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|Hölp bem Enlogge]]',
+'userlogin-loggedin' => 'Do bes ald als {{GENDER:$2|Metmaacher|Metmaacherėn|Metmaacher|Metmaacherėn|Metmaacher}} $1 enjelogg. Met heh dämm Fommolaa kanns De jäz onger enem ander Nahme enlogge.',
'userlogin-createanother' => 'Donn ene zohsäzlejje Zohjang aanlääje',
'createacct-join' => 'Jiv Ding Daate en:',
'createacct-another-join' => 'Maach de nüüdeje Aanjaabe för dä neue Zohjaang.',
'passwordtooshort' => 'En Paßwööter {{PLURAL:$1|moß|möße|moß}} winnichstens {{PLURAL:$1|ei|$1|kei}} Zeiche, {{PLURAL:$1|Zeffer|Zeffere|Zeffere}}, udder Bochstave dren sin.',
'password-name-match' => 'Ding Poßwoot moß anders wi Dinge Name als ene Metmaacher sin.',
'password-login-forbidden' => 'Dä Zohjang met däm Metmaacher-Name un däm Paßwoot es verbodde.',
-'mailmypassword' => 'Passwood verjesse?',
+'mailmypassword' => 'Lohß jonn!',
'passwordremindertitle' => 'Neu Paßwoot för {{GRAMMAR:Dat|{{SITENAME}}}}',
'passwordremindertext' => 'Jod müjjelich, Do wors et selver,
vun de IP Adress $1,
{{PLURAL:$1|eine|$1|keine}} mol enen neuen Metmaacher aanjelaht.
Mieh sin nit müjjelich. Dröm künne Lück, die jraad die IP-Addräß han,
för der Momang nit noch mit Metmaacher neu aanmellde.',
-'emailauthenticated' => 'Ding E-Mail Adress wood aam <strong>$2</strong> öm <strong>$3</strong> Uhr bestätich.',
-'emailnotauthenticated' => 'Ding E-Mail Adress es <strong>nit</strong> bestätich. Dröm kann kein E-Mail aan Dich jescheck wääde för:',
+'emailauthenticated' => 'De Adräß för Ding <i lang="en" xml:lang="en">e-mail</i> wood aam $2 öm $3 Uhr beschtähtisch.',
+'emailnotauthenticated' => 'De Adräß för Ding <i lang="en" xml:lang="en">e-mail</i> wood noch nit beschtähtisch. Dröm kann kein E-Mail aan Desch jescheck wääde för:',
'noemailprefs' => 'Dun en E-Mail Adress endrage, domet dat et all fluppe kann.',
'emailconfirmlink' => 'Dun Ding <i lang="en">e-mail</i> Adräß beschtääteje lohße',
'invalidemailaddress' => 'Wat De do als en Adreß för Ding <i lang="en">e-mail</i> aanjejovve häs, süht noh Dress us. En <i lang="en">e-mail</i> Adreß en däm Format, dat jitt et nit. Muss De repareere - oder Do mähs dat Feld leddich un schrievs nix eren. Un dann versök et noch ens.',
# Special:PasswordReset
'passwordreset' => 'Et Paßwoot zeröck säze',
'passwordreset-text-one' => 'Föll dat Fommolaa uß, öm Ding Paßwoot ze ändere.',
-'passwordreset-text-many' => '{{PLURAL:$1|Föll ei Fäld en däm Fommolaa uß, öm Ding Paßwoot ze ändere.}}',
+'passwordreset-text-many' => '{{PLURAL:$1|Föll ei vun dä Fälder en heh däm Fommolaa uß, öm e Zwesche_Paßwoot ze krijje.}}',
'passwordreset-legend' => 'Et Paßwoot zeröck säze',
'passwordreset-disabled' => 'Et Paßwoot zeröck ze säze es heh em Wiki afjeschalldt.',
'passwordreset-emaildisabled' => 'Heh dat Wiki määt nix met <i lang="en">e-mail</i>!',
'undo-failure' => 'Dat kunnt mer nit zeröck nämme, dä Afschnedd wood enzwesche ald widder beärbeidt.',
'undo-norev' => "Do ka'mer nix zeröck nämme. Di Version jidd_et nit, odder se es verstoche odder fottjeschmesse woode.",
'undo-summary' => 'De Änderung $1 fum [[Special:Contributions/$2|$2]] ([[User talk:$2|Klaaf]]) zeröck jenomme.',
+'undo-summary-username-hidden' => 'Nemm di Väsjohn $1 vun enem verschtoche Metmaacher widder retuur.',
# Account creation failure
'cantcreateaccounttitle' => 'Kann keine Zojang enrichte',
dem Wiki singe Installation dat anders fassjelaht woode es.",
'revdelete-confirm' => 'Bes esu joot un doon dat beschtääteje, un donn domet ongerschriive, dat De dat donn wells, dat De weiß, wat dobei eruß kütt, un dat De dat och noh de [[{{MediaWiki:Policy-url}}|Rääjelle]] deihß.',
'revdelete-suppress-text' => "Dat sullt '''blooß''' jedonn wäde för:
-* unjenehmesch persöönlesch Daate
-*: ''Aanschreffte, Tellefoon- un ander Nummere, <span lang=\"en\">e-mail</span> Adräß, uew.''",
+* onjesäzlesche Aanjaabe
+* unjenehmesch persöhnlesch Daate
+*: ''Aanschreffte, Tellefoon- un ander Nummere, <span lang=\"en\" xml:lang=\"en\">e-mail</span> Adräß, uew.''",
'revdelete-legend' => 'Dä öffentlije Zojang enschränke',
'revdelete-hide-text' => 'Dä Tex vun dä Version versteiche',
'revdelete-hide-image' => 'De Enhallt vun däm Beld versteiche',
'preferences' => 'ming Enstellunge',
'mypreferences' => 'Enstellunge',
'prefs-edits' => 'Aanzahl Änderunge am Wiki:',
+'prefsnologintext2' => 'Do mööts ald $1, öm Ding Enschtällonge ze verändere.',
'prefs-skin' => 'Et Ussinn',
'skin-preview' => 'Vör-Ansich',
'datedefault' => 'Ejaal - kein Vörliebe',
'prefs-dateformat' => 'Dem Dattum sing Fommaat',
'prefs-timeoffset' => 'Enshtellunge för de Uhrzigge',
'prefs-advancedediting' => 'Extra Ußwahle',
+'prefs-editor' => 'Schriiver',
'prefs-preview' => 'de Vör-Aansesch',
'prefs-advancedrc' => 'Extra Ußwahle',
'prefs-advancedrendering' => 'Extra Ußwahle',
'prefs-displaysearchoptions' => 'Enstellunge för et Aanzeje',
'prefs-displaywatchlist' => 'Enstellunge för et Aanzeje',
'prefs-diffs' => 'Ongerscheide un Verjliische',
+'prefs-help-prefershttps' => 'Di Enschtällong kütt eets zom drahre, wann De nähksde Mohl enloggs.',
# User preference: email validation using jQuery
'email-address-validity-valid' => 'De Addräß fö de <i lang="en">e-mail</i> schingk en Odenung',
'right-editmyusercss' => 'De eije <i lang="en" xml:lang="en">CSS</i> Datteije aanlääje un ändere',
'right-editmyuserjs' => 'Eije JaavaSkrepp-Datteije aanlääje un ändere',
'right-viewmywatchlist' => 'De eije Oppaßleß beloore',
+'right-viewmyprivateinfo' => 'ding eije päsöhnlesche Dahte belohre, wi de Adräß för de <i lang="en" xml:lang="en">e-mail</i> udder Dinge ääschte Nahme',
+'right-editmyprivateinfo' => 'ding eije päsöhnlesche Dahte ändere, wi de Adräß för de <i lang="en" xml:lang="en">e-mail</i> udder der ääschte Nahme',
'right-editmyoptions' => 'De eije Enschtällonge ändere',
'right-rollback' => 'All de letzte Änderunge fom letzte Metmaacher aan ene Sigg retur maache',
'right-markbotedits' => 'Retur jemaate Änderonge als Bot-Änderung makeere',
'recentchanges-label-minor' => 'Heh dat es en Mini-Änderung',
'recentchanges-label-bot' => 'Di Änderung es fun enem Bot jemaat woode',
'recentchanges-label-unpatrolled' => 'Heh di Änderung es noch nit nohjeloort',
-'recentchanges-legend-newpage' => '$1 - neu Sigg',
-'rcnote' => '{{PLURAL:$1|Heh es de letzte Änderung us|Heh sin de letzte <strong>$1</strong> Änderunge us|Et jit <strong>kei</strong> Änderunge en}} {{PLURAL:$2|däm letzte Daach|de letzte <strong>$2</strong> Dääsch|dä Zick}} vum <strong>$4</strong> aff <strong>$5</strong> Uhr beß jetz.',
+'recentchanges-label-plusminus' => 'Der Ömvang vun dä Sigg hät sesch öm di Aanzahl Bytes verändert.',
+'recentchanges-legend-newpage' => '(Loor och noh de [[Special:NewPages|Leß met de neue Sigge]])',
'rcnotefrom' => 'Hee {{PLURAL:$1|es ein|sin bes op <strong>$1</strong>|es keine}} fun de Änderunge zick dem <strong>$3</strong> öm <strong>$4</strong> Uhr opjelėß.',
'rclistfrom' => 'Zeich de Änderunge vum $1 aan',
'rcshowhideminor' => '$1 klein Mini-Änderunge',
# Random page in category
'randomincategory' => 'En zohfälleje Sigg us ener Saachjropp',
'randomincategory-nopages' => 'et sinn er kein Sigge en dä Saachjropp [[:Category:$1|$1]] dren.',
+'randomincategory-selectcategory' => 'Holl en zohfälleje Sigg us dä Saachjropp: $1 $2.',
'randomincategory-selectcategory-submit' => 'Lohß Jonn!',
# Random redirect
'undeletebtn' => 'Zeröckholle!',
'undeletelink' => 'aanloore odder widder zeröckholle',
'undeleteviewlink' => 'aanloore',
-'undeletereset' => 'De Felder usleere',
'undeleteinvert' => 'De Ußwahl ömdrije',
'undeletecomment' => 'Jrond (för en et Logboch):',
'undeletedrevisions' => '{{PLURAL:$1|ein Version|$1 Versione}} zeröckjehollt',
'block' => 'Metmaacher udder en <i lang="en">IP</i>-Addräß sperre',
'unblock' => 'Don en Sperr för ene Metmaacher udder en <i lang="en">IP</i>-Addräß ophävve',
'blockip' => 'Metmaacher sperre',
-'blockip-title' => 'Metmaacher Schpärre',
'blockip-legend' => 'Metmaacher ov IP-Adresse Sperre',
'blockiptext' => 'Hee kanns De bestemmte Metmaacher oder IP-Adresse sperre, su dat se hee em Wiki nit mieh schrieve und Sigge ändere künne.
Dat sollt nor jedon wääde om sujenannte Vandaale ze bremse. Un mer müsse uns dobei natörlich aan uns [[{{MediaWiki:Policy-url}}|Rejelle]] för esu en Fäll halde.
'ipadressorusername' => '<i lang="en">IP</i>-Adress oder Metmaacher Name:',
'ipbexpiry' => 'Duur, för wie lang',
'ipbreason' => 'Aanlass:',
-'ipbreasonotherlist' => 'Ne andere Bejründung',
'ipbreason-dropdown' => '* Alljemein Jrönd för et Sperre
** hät fekeehte Behouptunge udder Leeje en Atikele jeschrevve
** hät Sigge fottjeschmesse udder leddig jemaat
'ipbsubmit' => 'Dun dä Metmaacher sperre',
'ipbother' => 'För en ander Duur:',
'ipboptions' => '2 Stund:2 hours,1 Dach:1 day,3 Däch:3 days,1 Woch:1 week,2 Woche:2 weeks,1 Mond:1 month,3 Mond:3 months,6 Mond:6 months,1 Johr:1 year,Unbejrenz:infinite',
-'ipbotheroption' => 'Söns wie lang',
-'ipbotherreason' => 'Ander Jrund oder Zosätzlich:',
'ipbhidename' => 'Don däm Metmaacher singe Name versteiche, en de Leste un däm sing Änderunge.',
'ipbwatchuser' => 'Op däm Metmaacher sing Metmaachersigg un Klaafsigg oppasse',
'ipb-disableusertalk' => 'Dä Metmaacher darf sing Klaafsigg nit ändere, esulang, wi hä jwesperrt es',
'sorbsreason' => 'Ding IP-Adress weed en de DNSbl als ene offe Proxy jeliss. Schwaad met Dingem System-Minsch oder Netzwerk-Techniker (ISP Internet Service Provider) drüvver, un verzäll dänne vun däm Risiko för ehr Secherheit!',
'sorbs_create_account_reason' => 'Ding IP-Adress weed en de DNSbl als ene offe Proxy jeliss. Dröm kanns De Dich heh em Wiki nit als ene neue Metmaacher aanmelde. Schwaad met Dingem System-Minsch oder Netzwerk-Techniker oder (ISP Internet Service Provider) drüvver, un verzäll dänne vun däm Risiko för ehr Secherheit!',
'xffblockreason' => 'En <i lang="en">IP-</i>Adräs en ener <code lang="en">X-Forwarded-For</i> Koppreih es jeschpächt: Et künnt de Dinge udder enem <i lang="en">proxy server</i> zweschedren sing Adräß sin. Der Jrond för et Schpärre woh orschprönglesch: $1',
-'cant-block-while-blocked' => 'Do kanns ander Metmaacher nit sperre, esu lang wi De sellver jesperrt bes.',
'cant-see-hidden-user' => 'Dä Metmaacher, dä De shperre wells, es al jeshperrt un verschtoche. Weil De nit dat Rääsch häs. Metmaacher ze vershteiche (<code>hideuser</code>), kanns De däm sing Sperr och nit ändere.',
'ipbblocked' => 'Do kanns kein ander Metmaachere sperrre, weil De sellver jesperrt bes',
'ipbnounblockself' => 'Do kanns nit sellver ophävve, dat De jesperrt bes',
'svg-long-desc' => 'SVG-Datei, de Basis es {{PLURAL:$1|ei Pixel|$1 Pixelle|kei Pixel}} breed × {{PLURAL:$2|ei Pixel|$2 Pixelle|kei Pixel}} huh, dä Dateiömfang es $3',
'svg-long-desc-animated' => 'SVG-Datei met Bewääjong, de Basis es {{PLURAL:$1|ei Pixel|$1 Pixelle|kei Pixel}} breed × {{PLURAL:$2|ei Pixel|$2 Pixelle|kei Pixel}} huh, dä Dateiömfang es $3',
'svg-long-error' => 'En kapodde <i lang="en">SVG</i>-Dattei: $1',
-'show-big-image' => 'Jröößer Oplöösung',
+'show-big-image' => 'Ojinaal-Dattei',
'show-big-image-preview' => 'Heh di Vör_Aanseesch es $1 jruuß.',
'show-big-image-other' => '{{PLURAL:$2|Ander Oplühsung|Ander Oplühsunge|kein ander Oplühsunge}}: $1.',
'show-big-image-size' => '{{PLURAL:$1|Ei Pixel|$1 Pixelle}} breed × {{PLURAL:$2|Ei Pixel|$2 Pixelle}} huh',
'watchlistall2' => 'all',
'namespacesall' => 'all',
'monthsall' => 'all',
-'limitall' => 'alle',
# Email address confirmation
'confirmemail' => 'E-Mail Adress bestätije',
'confirmemail_success' => 'Ding E-Mail Adress es jetz bestätich.
Jetz künns De och noch enlogge. Vill Spass!',
'confirmemail_loggedin' => 'Ding Addräß fö de <i lang="en">e-mail</i> es jäz beschtäätesch!',
-'confirmemail_error' => 'Beim E-Mail Adress Bestätije es jet donevve jejange, de Bestätijung kunnt nit avjespeichert wääde.',
'confirmemail_subject' => 'Dun Ding e-mail Adress för {{GRAMMAR:Akkusativ|{{SITENAME}}}} bestäteje.',
'confirmemail_body' => 'Künnt jod sin, Do wors et selver, vun de IP_Adress $1 hät sich
jedenfalls einer jemeldt, un well dä Metmaacher "$2" {{GRAMMAR:vun|{{SITENAME}}}}
'imgmultigo' => 'Lohß Jonn!',
'imgmultigoto' => 'Jang noh de Sigg „$1“',
+# Language selector for translatable SVGs
+'img-lang-go' => 'Lohß Jonn!',
+
# Table pager
'ascending_abbrev' => 'opwääts zoteet',
'descending_abbrev' => 'raffkaz zoteet',
'tags-display-header' => 'Kennzeiche en de Leßte met Änderunge',
'tags-description-header' => 'Bedüggtening',
'tags-hitcount-header' => 'Makeete Änderunge',
+'tags-active-yes' => 'Joh',
+'tags-active-no' => 'Näh',
'tags-edit' => 'ändere',
'tags-hitcount' => '{{PLURAL:$1|Ein Änderong|$1 Änderonge|Kein Änderonge}}',
# Special:ComparePages
'comparepages' => 'Sigge verjliesche',
-'compare-selector' => 'Versione vun Sigge verjlieshe',
'compare-page1' => 'De ein Sigg',
'compare-page2' => 'De ander Sigg',
'compare-rev1' => 'de ein Version',
'limitreport-walltime-value' => '{{PLURAL:$1|ein Sekond|$1 Sekonde|kein Sekond}}',
'limitreport-ppvisitednodes-value' => '$1 vun $2',
'limitreport-ppgeneratednodes-value' => '$1 vun $2',
-'limitreport-postexpandincludesize-value' => '$1 vun $2 Bytes',
+'limitreport-postexpandincludesize-value' => '$1 vun $2 {{PLURAL:$2|Byte|Bytes|Bytes}}',
'limitreport-templateargumentsize' => 'Der Ömvang vun de Parrameeterre vun Schablohne',
-'limitreport-templateargumentsize-value' => '$1 vun $2 Bytes',
+'limitreport-templateargumentsize-value' => '$1 vun $2 {{PLURAL:$2|Byte|Bytes|Bytes}}',
'limitreport-expansiondepth-value' => '$1 vun $2',
'limitreport-expensivefunctioncount' => 'Oproofe vun „düüre“ Fonxjuhne em Paaser',
'limitreport-expensivefunctioncount-value' => '$1 vun $2',
'tog-minordefault' => 'Her guhertinekê weke guhertineke biçûk nîşan bide',
'tog-previewontop' => 'Pêşdîtina gotarê li jorî cihê guherandinê nîşan bide',
'tog-previewonfirst' => 'Li cem guherandinê hertim yekemîn pêşdîtinê nîşan bide',
-'tog-nocache' => 'Vegirtina rûpelan bisekinîne',
'tog-enotifwatchlistpages' => 'Heke rûpeleke ez dişopînim hate guhertin ji min re E-nameyekê bişîne',
'tog-enotifusertalkpages' => 'Dema rûpela min a Gotûbêjê hate guhertin e-nameyekê ji min re bişîne',
'tog-enotifminoredits' => 'Ji bo guhertinên biçûk jî E-nameyekê ji min re bişîne',
'recentchanges-summary' => 'Guhertinên herî dawî yên wîkiyê li ser vê rûpelê bişopîne.',
'recentchanges-label-minor' => 'Ev guhertineka biçûk e',
'recentchanges-legend-newpage' => '$1 - rûpela nû',
-'rcnote' => "Jêr {{PLURAL:$1|guherandinek|'''$1''' guherandinên dawî}} di {{PLURAL:$2|rojê|'''$2''' rojên dawî}} de ji $3 şûnde tên nîşan dan.",
'rclistfrom' => 'Guherandinên ji $1 şûnde nîşan bide',
'rcshowhideminor' => 'Guherandinên biçûk $1',
'rcshowhidebots' => "Bot'an $1",
'undeletebtn' => 'Dîsa çêke!',
'undeletelink' => 'dîtin/dîsa çêkirin',
'undeleteviewlink' => 'bibîne:',
-'undeletereset' => 'Nû bike',
'undeleteinvert' => 'Hilbijartinê şûnde vegerîne',
'undeletecomment' => 'Sedem:',
'undeletedrevisions' => '{{PLURAL:$1|Versiyonek dîsa hate|$1 versiyon dîsa hatin}} çêkirin',
'block' => 'Bikarhêner asteng bike',
'unblock' => 'Astengkirinê rake',
'blockip' => 'Bikarhêner asteng bike',
-'blockip-title' => 'Bikarhêner asteng bike',
'blockip-legend' => 'Bikarhêner asteng bike',
'blockiptext' => "Ji bo astengkirina nivîsandinê ya ji navnîşaneke IP'yê an jî ji bikarhênerekî/ê, vê formê bikarbîne.
Divê ev tenê ji bo sekinandina vandalîzmê were bikaranîn, ku divê li gorî [[{{MediaWiki:Policy-url}}|rêgezê]] be.
'ipadressorusername' => "adresê IP'yekê ya navekî bikarhênerekî",
'ipbexpiry' => 'Dem:',
'ipbreason' => 'Sedem',
-'ipbreasonotherlist' => 'Sedemeke din',
'ipbreason-dropdown' => '*Sedemên astengkirinê
** Vandalîzm
** Agahiya şaş dikire gotarekê
'ipbsubmit' => 'Vê bikarhêner asteng bike',
'ipbother' => 'Demekî din:',
'ipboptions' => '2 saet:2 hours,1 roj:1 day,3 roj:3 days,1 hefte:1 week,2 hefte:2 weeks,1 meh:1 month,3 meh:3 months,6 meh:6 months,1 sal:1 year,ji her demê re:infinite',
-'ipbotheroption' => 'yên din',
-'ipbotherreason' => 'Sedemeke din',
'ipbhidename' => 'Navê bikarhêner / adresê IP ji "pirtûkê" astengkirinê, lîsteya astengkirinên nû û lîsteya bikarhêneran veşêre',
'ipbwatchuser' => 'Rûpelên bikarhêner û gotûbêjê bişopîne',
'ipb-confirm' => 'Astengkirinê piştrast bike',
'watchlistall2' => 'hemû',
'namespacesall' => 'hemû',
'monthsall' => 'hemû',
-'limitall' => 'hemû',
# Email address confirmation
'confirmemail' => 'Adrêsa e-nameyan nasbike',
# Special:ComparePages
'comparepages' => 'Rûpelan bide ber hev',
-'compare-selector' => 'Guhertoyên rûpelan bide ber hev',
'compare-page1' => 'Rûpel 1',
'compare-page2' => 'Rûpel 2',
'compare-rev1' => 'Revîzyon 1',
'recentchanges-label-bot' => 'Gwrys veu an chanj-ma gans bott',
'recentchanges-label-unpatrolled' => 'Ny veu an chanj-ma patrolyes hwath',
'recentchanges-legend-newpage' => '$1 - folen nowyth',
-'rcnote' => "A-woles yma {{PLURAL:$1|'''1''' janj|an '''$1''' chanjyow diwettha}} y'n {{PLURAL:$2|dydh|'''$2''' dydh}} diwettha, a-dhia $5, $4.",
'rclistfrom' => 'Diskwedhes chanjyow nowyth yn unn dhalleth dhyworth $1.',
'rcshowhideminor' => '$1 chanjyow byhan',
'rcshowhidebots' => '$1 bottow',
'blockip' => 'Lettya devnydhyer',
'ipadressorusername' => 'Trigva IP po hanow-usyer:',
'ipbreason' => 'Acheson:',
-'ipbreasonotherlist' => 'Acheson aral',
'ipboptions' => '2 our:2 hours,1 jydh:1 day,3 dydh:3 days,1 seythen:1 week,2 seythen:2 weeks,1 vis:1 month,3 mis:3 months,6 mis:6 months,1 vledhen:1 year,heb diwedh:infinite',
'ipb-blocklist-contribs' => 'Kevrohow rag $1',
'ipblocklist' => 'Devnydhyoryon lettyes',
'watchlistall2' => 'puptra',
'namespacesall' => 'oll',
'monthsall' => 'oll',
-'limitall' => 'oll',
# Email address confirmation
'confirmemail' => 'Afydhya an drigva ebost',
'tog-minordefault' => 'Жарыяланбасча бүт оңдоолорду майда деп белгилөө',
'tog-previewontop' => 'Оңдоо терезесинин алдына алдын ала көрсөтүүнү жайгаштыруу',
'tog-previewonfirst' => 'Оңдоого өтөөрдөн мурда алдын ала көрсөтүү',
-'tog-nocache' => 'Барактарды кэштөөнү браузерден өчүрүү',
'tog-enotifwatchlistpages' => 'Көзөмөл тизмемдеги барак же файл өзгөртүлгөндө мага эл. почта аркылуу билдирүү',
'tog-enotifusertalkpages' => 'Баарлашуу барагым өзгөртүлгөндө мага эл. почта аркылуу билдирүү',
'tog-enotifminoredits' => 'Барак же файлдардын майда өзгөртүүлөрүн дагы мага эл. почта аркылуу билдирүү',
'recentchanges-label-minor' => 'Бул майда оңдоо',
'recentchanges-label-bot' => 'Бул оңдоо бот тарабынан жасалды',
'recentchanges-label-unpatrolled' => 'Бул оңдоо күзөттөн өтө элек.',
-'rcnote' => "Ылдый жакта $5, $4 карата соңку {{PLURAL:$2|күндө|'''$2''' күндө}} жасалган {{PLURAL:$1| '''1''' өзгөрүү| '''$1''' өзгөрүү}}.",
'rcnotefrom' => "'''$2''' -тан өзгөрүүлөр ылдый жакта ('''$1''' чейин көрсөтүлдү).",
'rclistfrom' => '$1 күнүнөн баштап жаңы өзгөртүүлөрдү көрсөтүү',
'rcshowhideminor' => 'Майда оңдоолорду $1',
'undeletebtn' => 'Калыбына келтирүү',
'undeletelink' => 'кароо/калыбына келтирүү',
'undeleteviewlink' => 'көрүнүшү',
-'undeletereset' => 'Түшүрүү',
'undeletecomment' => 'Себеп:',
'undelete-search-submit' => 'Издөө',
'undelete-show-file-submit' => 'Ооба',
# Block/unblock
'block' => 'Колдонуучуну бөгөттөө',
'blockip' => 'Колдонуучуну бөгөттөө',
-'blockip-title' => 'Колдонуучуну бөгөттөө',
'blockip-legend' => 'Колдонуучуну бөгөттөө',
'ipadressorusername' => 'IP-дарек же колдонуучунун аты:',
'ipbreason' => 'Себеп:',
-'ipbreasonotherlist' => 'Башка себеп',
'ipbsubmit' => 'Бул колдонуучуну бөгөттөө',
'ipbother' => 'Башка убакыт:',
'ipboptions' => '2 саат:2 hours,1 күн:1 day,3 күн:3 days,1 жума:1 week,2 жума:2 weeks,1 ай:1 month,3 ай:3 months,6 ай:6 months,1 жыл:1 year,мөөнөтсүз:infinite',
-'ipbotheroption' => 'башка',
'ipblocklist' => 'Бөгөттөлгөн колдонуучулар',
'blocklist-target' => 'Максат',
'blocklist-reason' => 'Себеп',
'watchlistall2' => 'баары',
'namespacesall' => 'баары',
'monthsall' => 'баары',
-'limitall' => 'баары',
# Email address confirmation
'confirmemail' => 'Электрондук даректи аныктоо',
# Special:ComparePages
'comparepages' => 'Барактарды салыштыруу',
-'compare-selector' => 'Барактардын версияларын салыштыруу',
'compare-page1' => 'Биринчи барак',
'compare-page2' => 'Экинчи барак',
'compare-rev1' => 'Биринчи версия',
'tog-minordefault' => 'Notare omnes recensiones quasi minores',
'tog-previewontop' => 'Monstrare praevisum ante capsam recensiti, non post ipsam',
'tog-previewonfirst' => 'Praevisum monstrare recensione incipiente',
-'tog-nocache' => 'Sistere paginas apothecare',
'tog-enotifwatchlistpages' => 'Mittere mihi litteras electronicas si pagina a me custodita vel fasciculus a me custoditus mutatur',
'tog-enotifusertalkpages' => 'Mittere mihi litteras electronicas si mea disputatio mutatur',
'tog-enotifminoredits' => 'Mittere mihi litteras electronicas etiam pro recensionibus minoribus',
'recentchanges-label-bot' => 'Hanc emendationem automaton fecit',
'recentchanges-label-unpatrolled' => 'Haec recensio nondum est examinata',
'recentchanges-legend-newpage' => '(vide etiam [[Special:NewPages|indicem paginarum novarum]])',
-'rcnote' => "Subter {{PLURAL:$1|est '''1''' nuper mutatum|sunt '''$1''' nuperrime mutata}} in {{PLURAL:$2|die proximo|'''$2''' diebus proximis}} ex $5, $4.",
'rcnotefrom' => "Subter sunt '''$1''' nuperrime mutata in proxima '''$2''' die.",
'rclistfrom' => 'Monstrare mutata nova incipiens ab $1',
'rcshowhideminor' => '$1 recensiones minores',
'undeletebtn' => 'Restituere',
'undeletelink' => 'inspicere/restituere',
'undeleteviewlink' => 'inspicere',
-'undeletereset' => 'Reperscriptare',
'undeleteinvert' => 'Selectionem invertere',
'undeletecomment' => 'Causa:',
'undeletedrevisions' => '{{PLURAL:$1|1 emendatio recuperata|$1 emendationes recuperatae}}',
'ipadressorusername' => 'Locus IP aut nomen usoris:',
'ipbexpiry' => 'Exitus:',
'ipbreason' => 'Causa:',
-'ipbreasonotherlist' => 'Causa alia',
'ipbreason-dropdown' => '*Rationes crebriter adductae
** Ob scripta falsa
** Ob textum remotum
'ipbsubmit' => 'Obstruere hunc locum',
'ipbother' => 'Exitus alius:',
'ipboptions' => '2 horas:2 hours,1 diem:1 day,3 dies:3 days,1 hebdomadem:1 week,2 hebdomades:2 weeks,1 mensem:1 month,3 menses:3 months,6 menses:6 months,1 annum:1 year,infinite:infinite',
-'ipbotheroption' => 'alius',
-'ipbotherreason' => 'Causa alia vel explicatio:',
'ipbwatchuser' => 'Paginam usoris disputationisque huius usoris custodire',
'ipb-change-block' => 'Obstructionem usoris modificare',
'badipaddress' => 'Locus IP male formatus',
'ipb-needreblock' => '$1 iam obstructus est. Visne obstructionem modificare?',
'ip_range_invalid' => 'Latitudo IP irrita.',
'proxyblocker' => 'Instrumentum obstructionis moderatorum',
-'cant-block-while-blocked' => 'Dum obstructus es, non potes usores alios obstruere.',
# Developer tools
'lockdb' => 'Basem datorum obstruere',
'confirmemail_success' => 'Tua inscriptio electronica adfirmata est.
Libenter [[Special:UserLogin|conventum aperias]] utarisque {{grammar:ablative|{{SITENAME}}}}.',
'confirmemail_loggedin' => 'Inscriptio tua electronica iam adfirmata est.',
-'confirmemail_error' => 'Aliquid erravit quando adfirmationem tuam servabamus.',
'confirmemail_subject' => '{{SITENAME}} - Adfirmatio inscriptionis electronicae',
'confirmemail_body' => 'Aliquis (probabiliter tu, ex loco IP $1)
rationem "$2" creavit sub hac inscriptione electronica apud {{grammar:accusative|{{SITENAME}}}}.
'tog-minordefault' => 'Yir marcando todos los trocamientos como chiquiticos',
'tog-previewontop' => 'Àmostar el previsteo enriva del cuadro de trocamiento',
'tog-previewonfirst' => 'Àmostar el previsteo al primer trocamiento',
-'tog-nocache' => 'Desaktivar la kaxé de las hojas del navigador',
'tog-enotifwatchlistpages' => 'Cada vez que y ay un trocamiento en una hoja que está en mi lista de akavidamiento, mándame una letral (e-mail)',
'tog-enotifusertalkpages' => 'Cuando y ay un trocamineto en mi hoja de diskusyón, mándame una letral (e-mail)',
'tog-enotifminoredits' => 'I para los trocamientos chiquiticos de las hojas, mándame una letral (e-mail)',
'recentchanges-label-minor' => 'Esta es un trocamiento chiquitico',
'recentchanges-label-bot' => 'Este trokamiento fue echo por un bot',
'recentchanges-label-unpatrolled' => 'Estre trokamiento no esta akavidado',
-'rcnote' => "Debaxo {{PLURAL:$1|ay '''1''' trocamiento realizado|están los dal cabo '''$1''' trocamientos realizados}} en {{PLURAL:$2|el dal cabo día|los dal cabo '''$2''' días}}, hasta el $4, $5.",
'rcnotefrom' => "Debasho se amostran los trokamientos desde '''$2''' (amostrados fina <b>$1</b>)",
'rclistfrom' => 'Mostra los trocamientos nuevos empeçando desde $1',
'rcshowhideminor' => '$1 trocamientos chiquiticos',
'tog-minordefault' => "All Ännerungen automatesch als 'Kleng Ännerungen' markéieren.",
'tog-previewontop' => "Déi ''nach-net gespäichert Versioun'' iwwer der Ännerungsfënster weisen",
'tog-previewonfirst' => "Beim éischten Änneren déi ''nach net gespäichert Versioun'' weisen.",
-'tog-nocache' => 'Säitecache vum Browser desaktivéieren',
'tog-enotifwatchlistpages' => 'Schéckt mir eng E-Mail wann eng Säit oder e Fichier op menger Iwwerwaachungslëscht geännert gëtt',
'tog-enotifusertalkpages' => 'Schéckt mir E-Maile wa meng Diskussiounssäit geännert gëtt.',
'tog-enotifminoredits' => 'Schéckt mir och bei klengen Ännerungen op vu mir iwwerwaachte Säiten oder Fichieren eng E-Mail.',
'recentchanges-label-minor' => 'Dëst ass eng kleng Ännerung',
'recentchanges-label-bot' => 'Dës Ännerung gouf vun engem Bot gemaacht',
'recentchanges-label-unpatrolled' => 'Dës Ännerung gouf nach net nogekuckt',
+'recentchanges-label-plusminus' => "D'Gréisst vun der Säit huet sech ëm déi Zuel vu Bytes geännert",
'recentchanges-legend-newpage' => '(kuckt och [[Special:NewPages|Lëscht vun den neie Säiten]])',
'recentchanges-legend-plusminus' => "''(±123)''",
-'rcnote' => "Hei {{PLURAL:$1|ass déi lescht Ännerung|sinn déi lescht '''$1''' Ännerungen}} {{PLURAL:$2|vum leschten Dag|vun de leschten '''$2''' Deeg}}, Stand: $4 ëm $5 Auer.",
'rcnotefrom' => "Ugewise ginn d'Ännerunge vum '''$2''' un (maximal '''$1''' Ännerunge gi gewisen).",
'rclistfrom' => 'Nei Ännerunge vu(n) $1 u weisen',
'rcshowhideminor' => 'Kleng Ännerunge $1',
'undeletebtn' => 'Restauréieren',
'undeletelink' => 'weisen/restauréieren',
'undeleteviewlink' => 'weisen',
-'undeletereset' => 'Ofbriechen',
'undeleteinvert' => 'Auswiel ëmdréinen',
'undeletecomment' => 'Grond:',
'undeletedrevisions' => '$1 {{PLURAL:$1|Versioun gouf|$1 Versioune goufe}} restauréiert',
'block' => 'Benotzer spären',
'unblock' => "D'Spär vum Benotzer ophiewen",
'blockip' => 'Benotzer spären',
-'blockip-title' => 'Benotzer spären',
'blockip-legend' => 'Benotzer spären',
'blockiptext' => 'Benotzt dëse Formulaire fir eng spezifesch IP-Adress oder e Benotzernumm ze spären. Dëst soll nëmmen am Fall vu Vandalismus gemaach ginn, en accordance mat den [[{{MediaWiki:Policy-url}}|interne Richlinen]]. Gitt e spezifesche Grond un (zum Beispill Säite wou Vandalismus virgefall ass).',
'ipadressorusername' => 'IP-Adress oder Benotzernumm:',
'ipbexpiry' => 'Gültegkeet:',
'ipbreason' => 'Grond:',
-'ipbreasonotherlist' => 'Anere Grond',
'ipbreason-dropdown' => "*Heefeg Ursaache fir Benotzer ze spären:
**Bewosst falsch Informatiounen an eng oder méi Säite gesat
**Ouni Grond Inhalt vu Säite geläscht
'ipbsubmit' => 'Dës IP-Adress resp dëse Benotzer spären',
'ipbother' => 'Aner Dauer:',
'ipboptions' => '2 Stonnen:2 hours,1 Dag:1 day,3 Deeg:3 days,1 Woch:1 week,2 Wochen:2 weeks,1 Mount:1 month,3 Méint:3 months,6 Méint:6 months,1 Joer:1 year,onbegrenzt:infinite',
-'ipbotheroption' => 'Aner Dauer',
-'ipbotherreason' => 'Aneren oder zousätzleche Grond:',
'ipbhidename' => 'Benotzernumm op Lëschten a bei Ännerunge verstoppen',
'ipbwatchuser' => 'Dësem Benotzer seng Benotzer- an Diskussiouns-Säit iwwerwaachen',
'ipb-disableusertalk' => "Dëse Benotzer dorun hënnere fir seng eegen Diskussiounssäit z'ännere sou laang wéi et gespaart ass",
'sorbsreason' => 'Är IP Adress steet als oppene Proxy an der schwaarzer Lëscht (DNSBL) déi vu {{SITENAME}} benotzt gëtt.',
'sorbs_create_account_reason' => 'Är IP-Adress steet als oppene Proxy an der schwaarzer Lëscht déi op {{SITENAME}} benotzt gëtt. DIr kënnt keen neie Benotzerkont opmaachen.',
'xffblockreason' => 'Eng IP-Adress am X-Forwarded-For-Header gouf gespaart, entweder Är oder déi vum Proxyserver deen Dir benotzt. De Grond vun der Spär war: $1',
-'cant-block-while-blocked' => 'Dir däerft keng aner Benotzer spären, sou lang wéi Dir selwer gespaart sidd.',
'cant-see-hidden-user' => "De Benotzer deen Dir versicht ze spären ass scho gespaart a verstoppt. Well Dir d'Recht ''Hideuser'' net hutt kënnt Dir dëse Benotzer net gesinn an dem Benotzer seng Spär net änneren.",
'ipbblocked' => 'Dir kënnt keng aner Benotzer spären oder hir Spär ophiewen well Dir selwer gespaart sidd',
'ipbnounblockself' => 'Dir kënnt Är Spär net selwer ophiewen',
'watchlistall2' => 'all',
'namespacesall' => 'all',
'monthsall' => 'all',
-'limitall' => 'all',
# Email address confirmation
'confirmemail' => 'E-Mailadress confirméieren',
'confirmemail_needlogin' => 'Dir musst iech $1, fir är E-Mail-Adress ze confirméieren.',
'confirmemail_success' => 'Är E-Mailadress gouf confirméiert. Där kënnt iech elo aloggen an a vollem Ëmfang vun der Wiki profitéieren.',
'confirmemail_loggedin' => 'Är E-Mail-Adress gouf elo confirméiert.',
-'confirmemail_error' => 'Et ass eppes falsch gelaf bäim Späichere vun ärer Confirmatioun.',
'confirmemail_subject' => 'Confirmatioun vun der E-Mail-Adress fir {{SITENAME}}',
'confirmemail_body' => 'E Benotzer, waarscheinlech dir selwer, hutt mat der IP Adress $1 de Benotzerkont "$2" um Site {{SITENAME}} opgemaach.
'imgmultigo' => 'Lass!',
'imgmultigoto' => "Géi op d'Säit $1",
+# Language selector for translatable SVGs
+'img-lang-default' => '(Standard-Sprooch)',
+'img-lang-info' => 'Dëst Bild op $1$ $2 renderen.',
+'img-lang-go' => 'Lass',
+
# Table pager
'ascending_abbrev' => 'erop',
'descending_abbrev' => 'erof',
# Special:ComparePages
'comparepages' => 'Säite vergläichen',
-'compare-selector' => 'Versioune vu Säite vergläichen',
'compare-page1' => 'Säit 1',
'compare-page2' => 'Säit 2',
'compare-rev1' => 'Versioun 1',
'rotate-comment' => 'Bild ëm $1 {{PLURAL:$1|Grad}} an der Richtung vun der Auer gedréint',
# Limit report
+'limitreport-title' => 'Profilingdate vum Parser:',
'limitreport-cputime' => 'CPU-Zäit-Notzung',
'limitreport-cputime-value' => '$1 {{PLURAL:$1|Sekonn|Sekonnen}}',
'limitreport-walltime' => 'Echtzäitnotzung',
'nstab-main' => 'Ччин',
'nstab-user' => 'Уртахдин ччин',
'nstab-media' => 'Медиа ччин',
-'nstab-special' => 'Квимекдин ччин',
+'nstab-special' => 'Куьмекдин ччин',
'nstab-project' => 'Проектдин ччин',
'nstab-image' => 'Файл',
'nstab-mediawiki' => 'Малумат',
'gender-male' => 'итимдин',
'gender-female' => 'папарин',
'email' => 'E-mail',
-'prefs-help-email' => 'Электрон почтунин адрес кхьи мажбури туш, амма куьне парол рикIелай ракъурдатIа, ам герек жеда.',
+'prefs-help-email' => 'Электрон почтунин адрес кхьин мажбури туш, амма куьне парол рикIелай ракъурдатIа, ам герек жеда.',
'prefs-help-email-others' => 'Квевай куь уртахдин, ва я куь веревирдрин ччина элячIун къалурна муькуь уртахар галаз электрон почтадин куькмедалди алакъа хуьз жеда.
-Квез электрондин чар кхьидайла муькуь уртахриз куь электрондин почтадин адрес аквадач.',
+Квез электрон чар кхьидайла муькуь уртахриз куь электрон почтадин адрес аквадач.',
'prefs-advancedediting' => 'Гегьенш низамарунар',
'prefs-advancedrc' => 'Гегьенш низамарунар',
'prefs-advancedrendering' => 'Гегьенш низамарунар',
'recentchanges-label-minor' => 'Им гъвечlи дуьзар хъувун я',
'recentchanges-label-bot' => 'И дуьзар хъувун ботди авунвайд я',
'recentchanges-label-unpatrolled' => 'И дуьзар хъувундин винел патрулвал авунвач',
-'rcnote' => "$5, $4 чIавун кьатIдиз талукь {{PLURAL:$2|югъ|'''$2''' йикъар}} къене{{PLURAL:$1|эхиримжи'''1''' масакIавал|эхиримжи '''$1''' масакIавилер}}",
'rcnotefrom' => "Агъадихъ '''$2'''-ай эгечIна масакIавилер къалурнава ( '''$1''' кьван къалурнава).",
'rclistfrom' => '$1-й эгечIна цIийи масакIавилер къалурун',
'rcshowhideminor' => '$1 гъвечlи дуьзар хъувунар',
'img-auth-accessdenied' => 'Гьахьун къадагъа авунва',
'license' => 'Лицензиярун',
-'license-header' => 'Ð\9bиÑ\86инзиярун',
+'license-header' => 'Ð\9bиÑ\86ензиярун',
'nolicense' => 'ЗатIни хкягънавач',
'license-nopreview' => '(Сифтедин килигун авайд ттуш)',
'upload_source_file' => ' (куь компьютерда авай файл)',
'undeletebtn' => 'ТуьхкIуьрун',
'undeletelink' => 'Килигун/гуьнгуьна хтун',
'undeleteviewlink' => 'Килигун',
-'undeletereset' => 'Алудна гадрун',
'undeletecomment' => 'Кар',
'undelete-search-submit' => 'Жагъурун',
'undelete-show-file-submit' => 'Э',
'watchlistall2' => 'вири',
'namespacesall' => 'вири',
'monthsall' => 'вири',
-'limitall' => 'вири',
# action=purge
'confirm_purge_button' => 'ЭХь',
'feedback-cancel' => 'Гьич авун',
'feedback-close' => 'Авунва',
+# Special:ExpandTemplates
+'expand_templates_xml_output' => 'XML акъудун',
+'expand_templates_ok' => 'ОК',
+'expand_templates_remove_comments' => 'Баянар алудун',
+
);
'tog-minordefault' => 'Marca costumal tota editas como minor',
'tog-previewontop' => 'Mostra la previde ante la caxa de editas',
'tog-previewonfirst' => 'Mostra la previde a la edita prima',
-'tog-nocache' => 'Desengana la reserva de pajes',
'tog-enotifwatchlistpages' => 'Envia un eposta a me cuando un paje ce me oserva es cambiada',
'tog-enotifusertalkpages' => 'Envia me un eposta cuando me paje de discutes es cambiada',
'tog-enotifminoredits' => 'Ance envia un eposta a me con edita minor de pajes',
'recentchanges' => 'Cambias resente',
'recentchanges-summary' => 'Asi la lista de cambias resente en la vici.',
'recentchanges-feed-description' => 'Seque la cambias plu resente a la vici en esta flue.',
-'rcnote' => 'Su es {{PLURAL:$1|cambia|cambias}} en la presedente {{PLURAL:$2|dia|dias}}, en $5, $4.',
'rcnotefrom' => "A su es la cambias de '''$2''' (asta '''$1''' es mostrada).",
'rclistfrom' => 'Mostra cambias nova, comensante de $1',
'rcshowhideminor' => '$1 editas minor',
'tog-minordefault' => "Bulijjo, enkyukakyuka z'okola zirambibwe nti ntono",
'tog-previewontop' => "Okulagako kubeerenga waggulu w'ekifo w'owandikira",
'tog-previewonfirst' => 'Buli lwensooka okukyusa olupapula, ndagangako byenkoze',
-'tog-nocache' => "Ekyandaaza kiremenga kutereka koppi z'empapula z'okebera",
'tog-enotifwatchlistpages' => "Nsindikiranga 'E-mail' empapula zengoberera buli lwe zikolebwako enkyukakyuka",
'tog-enotifusertalkpages' => "Nsindikiranga 'E-mail' olupapula lwange olwa 'Yogera nange' buli lwe lukyusibwamu",
'tog-enotifminoredits' => "Nsindikiranga 'E-mail' enkyukakyuka ne bwe ziba ntono",
'recentchanges-legend' => "Awategekerwa endaga y'ebyakakyusibwa",
'recentchanges-summary' => "Goberera enkyukakyuka empya ez'oku lupapula luno",
'recentchanges-feed-description' => "Kozesa omukutu guno okugoberera enkyukakyuka empya ez'oku wiki",
-'rcnote' => "Wano olaba {{PLURAL:$1|olukyukakyuka '''1''' olukoledwawo|enkyukakyuka '''$1''' ezikoledwawo}} mu {{PLURAL:$2|lunaku olwakayita|naku '''$2''' ezaakayita}}. Bino byategeerese ku ssaawa $5 nga $4.",
'rclistfrom' => 'Laga enkyukakyuka empya ezikoledwa okuva $1',
'rcshowhideminor' => '$1 nkyukakyuka ntono',
'rcshowhidebots' => '$1 ebya bboti',
'tog-minordefault' => 'Markeer sjtanderd alle bewirkinge es klein',
'tog-previewontop' => 'Veurvertuin baove bewèrkingsveld tuine',
'tog-previewonfirst' => 'Preview laote zien bie de ierste bewirking',
-'tog-nocache' => 'Zèt de browserpaginacaching oet',
'tog-enotifwatchlistpages' => "Versjik 'ne e-mail nao mich bie bewirkinge van pagina's en bestenj op mien volglies",
'tog-enotifusertalkpages' => "'ne E-mail nao mich versjikke es emes mien euverlèkpagina verangert",
'tog-enotifminoredits' => "Versjik mich 'ne e-mail bie klein bewirkinge op pagina's en bestenj op mien volglies",
'recentchanges-label-bot' => "Dees bewirking is oetgeveurd door 'ne bot",
'recentchanges-label-unpatrolled' => 'Dees bewirking is nog neet gekónterleerd',
'recentchanges-legend-newpage' => '$1 - Nuuj pagina',
-'rcnote' => "Hiejónger {{PLURAL:$1|steit de lètste bewirking|staon de lètste '''$1''' bewirkinge}} van de aafgeloupe {{PLURAL:$2|daag|'''$2''' daag}}, op $4, um $5.",
'rcnotefrom' => "Verangeringe sins <b>$2</b> (mit 'n maximum van <b>$1</b> verangeringe).",
'rclistfrom' => 'Tuin de verangeringe vanaaf $1',
'rcshowhideminor' => '$1 klein bewèrkinge',
'undeletebtn' => 'Trökzètte',
'undeletelink' => 'bekieke/trökzètte',
'undeleteviewlink' => 'Bekiek',
-'undeletereset' => 'Reset',
'undeleteinvert' => 'Ómgedriejde selectie',
'undeletecomment' => 'Reeje:',
'undeletedrevisions' => '$1 {{PLURAL:$1|versie|versies}} truukgeplaatsj',
'block' => 'Blok gebroeker',
'unblock' => 'Deblokkeer IP adres',
'blockip' => 'Blokkeer dit IP-adres',
-'blockip-title' => 'Blok gebroeker',
'blockip-legend' => "'ne Gebroeker of IP-adres blokkere",
'blockiptext' => "Gebroek 't óngerstjaondj formeleer óm sjrieftoegank van e zeker IP-adres te verbeje. Dit maag allein gedaon weure om vandalisme te veurkómme en in euvereinkóms mitte [[{{MediaWiki:Policy-url}}|beleid]]. Gaef hiejónger de raeje óp (bv. inkel vandaliseerdje paazjes).",
'ipadressorusername' => 'IP-adres of gebroekersnaam',
'ipbexpiry' => "Verlöp (maak 'n keuze)",
'ipbreason' => 'Reeje:',
-'ipbreasonotherlist' => 'Angere reje',
'ipbreason-dropdown' => '*Väöl veurkommende rejer veur blokkaazjes
** Foutieve informatie inveure
** Verwiedere van informatie oet artikele
'ipbsubmit' => 'Blokkeer dit IP-adres',
'ipbother' => 'Anger verloup',
'ipboptions' => '2 oer:2 hours,1 daag:1 day,3 daag:3 days,1 waek:1 week,2 waek:2 weeks,1 maondj:1 month,3 maondj:3 months,6 maondj:6 months,1 jaor:1 year,veur iwweg:infinite',
-'ipbotheroption' => 'anger verloup',
-'ipbotherreason' => 'Angere/eventuele rejer:',
'ipbhidename' => 'Verberg gebroekersnaam van liester èn bewèrkinger',
'ipbwatchuser' => 'Gebroekerspazjena en euverlèkpazjena op vólglies plaatse',
'ipb-disableusertalk' => 'Veurkóm det deze gebroeker tiedes de blok de eige euverlègkpagina kin bewirke',
'proxyblockreason' => "Dien IP-adres is geblokkeerd ómdat 't 'n aope proxy is. Contacteer estebleef diene internet service provider of technische óngersjteuning en informeer ze euver dit serjeus veiligheidsprebleem.",
'sorbsreason' => 'Dien IP-adres is opgenaome in de DNS-blacklist es open proxyserver, dae {{SITENAME}} gebroek.',
'sorbs_create_account_reason' => 'Dien IP-adres is opgenómme in de DNS-blacklist es open proxyserver, dae {{SITENAME}} gebroek. De kèns gein gebroekersaccount aanmake.',
-'cant-block-while-blocked' => 'De kins anger gebroekers neet blokkere terwiel se zelf geblokkeerd bös.',
'cant-see-hidden-user' => 'De gebroeker dae se perbeers te blokke is al geblok en verbórge.
Ómdes se \'t rèch "hideuser" neet höbs, kèns se de blok neet bekieke of bewerke.',
'ipbblocked' => 'Doe kèns gein anger gebroekers (ónt)blokke, ómdet se zèlf geblók bös.',
'watchlistall2' => 'al',
'namespacesall' => 'alle',
'monthsall' => 'al',
-'limitall' => 'al',
# Email address confirmation
'confirmemail' => 'Bevèstig e-mailadres',
'confirmemail_needlogin' => 'Doe mós $1 óm dien e-mailadres te bevestige.',
'confirmemail_success' => 'Dien e-mailadres is bevesteg. De kins noe inlogke en van de wiki genete.',
'confirmemail_loggedin' => 'Dien e-mailadres is noe vasgelag.',
-'confirmemail_error' => "Bie 't opsjlaon van eur bevèstiging is get fout gegange.",
'confirmemail_subject' => 'Bevèstiging e-mailadres veur {{SITENAME}}',
'confirmemail_body' => "Emes, waorsjienlik doe vanaaf 't IP-adres $1, heet 'n account $2
aangemaak mit dit e-mailadres op {{SITENAME}}.
# Special:ComparePages
'comparepages' => "Vergeliek pazjena's",
-'compare-selector' => 'Vergeliek pazjenaversies',
'compare-page1' => 'Paasj 1',
'compare-page2' => 'Paasj 2',
'compare-rev1' => 'Versie 1',
'tog-minordefault' => 'Indica de longo comme menô e modiffiche',
'tog-previewontop' => "Veddi l'anteprimma de d'äto a-o spaçio pe cangiâ",
'tog-previewonfirst' => "Veddi l'anteprimma a-o primmo cangiamento",
-'tog-nocache' => 'Disabilita a cache de pagine do navegatô',
'tog-enotifwatchlistpages' => "Famme savéi via e-mail quande 'na paggina o in file inti mæ osservæ a ven cangiâ.",
'tog-enotifusertalkpages' => "Màndime un messaggio e-mail se gh'é de-e modìffiche inta pagina de discuscion da mæ pagina d'utente.",
'tog-enotifminoredits' => 'Inviami una email pe e modifiche menoî ascì de pagine e di file',
'recentchanges-label-minor' => 'Cangiamento minô (m)',
'recentchanges-label-bot' => "Sto cangiaménto o l'à fæto in bot",
'recentchanges-label-unpatrolled' => "Sto cangiaménto o no l'é stæto ancón verificòu",
-'rcnote' => "Chì sotta {{PLURAL:$1|l'é elencou o cangiaménto ciù reçente|son elencæ i '''$1''' cangiaménti ciù reçenti}} a-o scîto {{PLURAL:$2|inte ùrtime 24 ôe|inti ùrtimi '''$2''' giorni}}; i dæti son agiornæ a-e $5 do $4.",
'rcnotefrom' => "Chì sotta gh'è i cangiamenti fæti comensando da '''$2''' (scin a '''$1''').",
'rclistfrom' => 'Fanni vedde e modiffiche apportæ partindo da $1',
'rcshowhideminor' => '$1 cangiaménti minoi',
'recentchanges-label-minor' => 'Se um ikš piški parāmtimi',
'recentchanges-label-bot' => 'Sīe mõitõks tei ikš robot',
'recentchanges-label-unpatrolled' => 'Se mõitõks tēji vȯļ ikš robot',
-'rcnote' => "Allõ-pūol um andtõd {{PLURAL:$1| '''1''' mõitõks|'''$1''' mõitõks}} perīz {{PLURAL:$2|pǟva|'''$2''' pǟva}}, āigal kēratõd $5 kīela $4.",
'rcnotefrom' => "Allõ-pūol um tūodõd mõitõkst '''$2''' sōņõst: (nägţõbõd amā jemīņ '''$1''' mõitõkst)",
'rclistfrom' => 'Nägţ mõitõkši sōņõst: $1',
'rcshowhideminor' => '$1 piškizt parāmtimizt',
'tog-minordefault' => 'Marca tücc i mudifegh cume piscinìn',
'tog-previewontop' => "Fá vidé un'anteprima anaanz dala finèstra da redatazziún",
'tog-previewonfirst' => "Fá vidé l'anteprima ala prima redatazziún",
-'tog-nocache' => 'DIsativa la "cache" per i paginn',
'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",
'recentchanges-label-bot' => "Quela mudifega chì l'ha fada un bot",
'recentchanges-label-unpatrolled' => "Quela mudifega chì a l'è stada mimga anmò verificada.",
'recentchanges-legend-newpage' => '$1 - pagina növa',
-'rcnote' => "Chì de sota {{PLURAL:$1|gh'è '''1''' mudifega|a hinn i ültim '''$1''' mudifegh}} in di ültim {{PLURAL:$2|dì|'''$2''' dì}}, a partì dai $5 del $4.",
'rcnotefrom' => "Chì de sota gh'è la lista di mudifegh de <b>$2</b> (fina a <b>$1</b>).",
'rclistfrom' => 'Fà vidè i cambiament növ a partì de $1',
'rcshowhideminor' => '$1 i mudifegh piscinín',
# Block/unblock
'blockip' => 'Bloca el dovrat',
-'blockip-title' => "Bloca 'l druvadur",
'blockip-legend' => "Bloca 'l druvadur",
'blockiptext' => "Druvee 'l mòdul chì de suta per blucà l'acess cun dirit de scritüra a un indirizz IP specifegh o a un druvadur registraa.
El bloch gh'è de druvàl dumà per evità el vandalism e in acord cun i [[{{MediaWiki:Policy-url}}|regulament de {{SITENAME}}]].
'ipadressorusername' => 'Indirizz IP o nom del druvdur:',
'ipbexpiry' => 'Fina al:',
'ipbreason' => 'Reson:',
-'ipbreasonotherlist' => 'Alter mutiv',
'ipbreason-dropdown' => "*Mutiv püssee cumün per i blòch
** Avè caregaa di infurmazión fals
** Avè töt via del cuntegnüü dai paginn
'ipbsubmit' => 'Blòca quel druvàt chì',
'ipbother' => 'Altra dürada:',
'ipboptions' => '2 ur:2 hours,1 dì:1 day,3 dì:3 days,1 semana:1 week,2 semann:2 weeks,1 mes:1 month,3 mes:3 months,6 mes:6 months,1 ann:1 year,infinii:infinite',
-'ipbotheroption' => 'Alter',
-'ipbotherreason' => 'Alter resón/spiegazión',
'ipbhidename' => "Scund 'l nom del druvat dai mudifegh e da i list.",
'ipbwatchuser' => "Tegn d'ögg i paginn duvrat e de discüssión de quel duvrat chì",
'ipb-change-block' => 'Blocà ancamò el duvrat cun quij impustazión chì',
'tog-minordefault' => 'ຖ້າບໍ່ມີການຕັ້ງ ກຳໜົດໃຫ້ທຸກໆການດັດແກ້ ເປັນ ການດັດແກ້ເລັກນ້ອຍ',
'tog-previewontop' => 'ສະແດງ ຜົນການດັດແກ້ ເທິງ ຊ່ອງດັດແກ້',
'tog-previewonfirst' => 'ສະແດງ ຜົນການດັດແກ້ ໃນ ເວລາດັດແກ້ເທື່ອທຳອິດ',
-'tog-nocache' => 'ບໍ່ບັນທຶກ ຂໍ້ມູນບົດຄວາມ ໄວ້ໃນຄອມພິວເຕີ',
'tog-enotifwatchlistpages' => 'ສົ່ງອີເມລມາໃຫ້ຂ້ອຍ ເມື່ອ ໜ້າທີ່ຂ້ອຍຕິດຕາມໄດ້ຖືກປ່ຽນແປງ',
'tog-enotifusertalkpages' => 'ສົ່ງ ອີເມລ ມາໃຫ້ ຂ້ອຍ ເວລາ ໜ້າສົນທະນາຂ້ອຍ ມີການປ່ຽນແປງ',
'tog-enotifminoredits' => 'ສົ່ງ ອີເມລ ໃຫ້ຂ້ອຍ ເວລາມີການດັດແກ້ເລັກນ້ອຍນຳ',
'recentchanges' => 'ການດັດແກ້ຫຼ້າສຸດ',
'recentchanges-summary' => 'ເບິ່ງ ການປ່ຽນແປງ ຫຼ້າສຸດ ຢູ່ ໜ້າວິກີນີ້.',
'recentchanges-feed-description' => 'ນຳເບິ່ງການປ່ຽນແປງຫຼ້າສຸດຢູ່ ວິກິນີ້ ໃນ ຟີດ',
-'rcnote' => "ທາງລຸ່ມ {{PLURAL:$1|ແມ່ນ'''1''' ການປ່ຽນແປງ|ແມ່ນ '''$1''' ການປ່ຽນແປງຫຼ້າສຸດ}} ໃນ {{PLURAL:$2|ມື້|'''$2''' ມື້}}, ເມື່ອ $3.",
'rclistfrom' => 'ສະແດງ ການປ່ຽນແປງ ເລີ່ມແຕ່ $1',
'rcshowhideminor' => '$1 ການດັດແກ້ເລັກນ້ອຍ',
'rcshowhidebots' => '$1 ບອທ໌',
'confirmemail_needlogin' => 'ທ່ານ ຈະຕ້ອງ $1 ເພື່ອ ຢືນຢັນ ທີ່ຢູ່ ອີເມລ ຂອງ ທ່ານ.',
'confirmemail_success' => 'ທີ່ຢູ່ ອີເມລ ຂອງ ທ່ານ ໄດ້ຮັບການຢືນຢັນແລ້ວ. ທ່ານ ສາມາດ ເຊັນເຂົ້າ ແລະ ມ່ວນຊື່ນກັບ ວີກີ ໄດ້.',
'confirmemail_loggedin' => 'ທີ່ຢູ່ ອີເມລ ຂອງ ທ່ານໄດ້ຖືກຢືນຢັນແລ້ວ.',
-'confirmemail_error' => 'ມີອັນໃດອັນໜຶ່ງຜິດພາດ ໃນ ເວລາບັນທຶກ ການຢືນຢັນຂອງທ່ານ.',
'confirmemail_subject' => '{{SITENAME}} ຢືນຢັນ ທີ່ຢູ່ ອີເມລ',
# Delete conflict
'tog-watchdeletion' => 'Pusize petulo a afi kulobala di zwa mukoloko di kentezi',
'tog-previewontop' => "Kamukile PendiBe pre boks di hloli ye ng'i",
'tog-previewonfirst' => 'Kamukile PendiBe kwa afi 1',
-'tog-nocache' => 'Amutembwe petulo kahili',
'tog-enotifwatchlistpages' => 'Meli di zwa di petulo a kentezi sa petuhisize',
'tog-enotifusertalkpages' => 'Meli di zwa di zwa bulelezi sa petuhisize',
'tog-enotifrevealaddr' => 'Kamukile zwa adress di meli di xete peson kwa melina notifikasyona',
'nchanges' => '$1 {{PLURAL:$1|petuho|petuho}}',
'recentchanges' => 'Petuho nca',
'recentchanges-feed-description' => 'Kamukile petuho nca di wiki kwa bye feed.',
-'rcnote' => "Bye {{PLURAL:$1|sa '''1''' petuho|sa pu-lila '''$1''' petuhoni}} kwa pu-lila {{PLURAL:$2|dia|'''$2''' dia}}, di $3.",
'rcnotefrom' => "Bye sa petuho di '''$2''' (di '''$1''' sa kamukile).",
'rclistfrom' => 'Kamukile nca petuho di $1',
'rcshowhideminor' => '$1 pili kenki',
'undelete' => 'Kamukile afi kulobala petulo',
'viewdeletedpage' => 'Kamukile afi kulobala petulo',
'undeletebtn' => 'Ati-afi kulobala',
-'undeletereset' => 'Lisetize',
'undeletecomment' => 'Lyangutukezi:',
'undelete-search-box' => 'Fatukile afi kulobala petulo',
'undelete-search-prefix' => 'Kamukile petulo di:',
'recentchanges-label-minor' => 'يه ويرايشت كؤچكيه',
'recentchanges-label-bot' => 'ای ويرايشت نه يه بوت انجوم ديئه',
'recentchanges-label-unpatrolled' => 'ای ويرايشت هنی تيه واداشت نبيه',
-'rcnote' => "د هار{{جمی:$1|هئ'''1''' آلشت|آخری هئ ن '''$1'''آلشتیا}}د آخر{{جمی:$2|رو|'''$2''' روزیا}}, چی $5, $4.",
'rcnotefrom' => 'د هار آلشتیا د $2 هیئن(د بال د $1 نشون دئه بیه)',
'rclistfrom' => 'آلشتیا تازه ایی که وا $1 شرو بیه نشونش بئه',
'rcshowhideminor' => 'ويرايشتيا کؤچک $1',
'tog-minordefault' => 'Pagal nutylėjimą pažymėti redagavimus kaip smulkius',
'tog-previewontop' => 'Rodyti peržiūrą virš redagavimo lauko',
'tog-previewonfirst' => 'Rodyti peržiūrą pirmą kartą pakeitus',
-'tog-nocache' => 'Išjungti interneto naršyklės puslapių podėlį',
'tog-enotifwatchlistpages' => 'Siųsti man laišką, kai pakeičiamas puslapis, kurį stebiu',
'tog-enotifusertalkpages' => 'Siųsti man laišką, kai pakeičiamas mano naudotojo aptarimo puslapis',
'tog-enotifminoredits' => 'Siųsti man laišką, kai puslapio keitimas yra smulkus',
'recentchanges-label-bot' => 'Šį keitimą atliko automatinė programa',
'recentchanges-label-unpatrolled' => 'Šis keitimas dar nebuvo patikrintas',
'recentchanges-legend-newpage' => '$1 - naujas puslapis',
-'rcnote' => "Žemiau yra {{PLURAL:$1|'''1''' pakeitimas|paskutiniai '''$1''' pakeitimai|paskutinių '''$1''' pakeitimų}} per {{PLURAL:$2|dieną|paskutiniąsias '''$2''' dienas|paskutiniųjų '''$2''' dienų}} skaičiuojant nuo $5, $4.",
'rcnotefrom' => "Žemiau yra pakeitimai pradedant '''$2''' (rodoma iki '''$1''' pakeitimų).",
'rclistfrom' => 'Rodyti naujus pakeitimus pradedant $1',
'rcshowhideminor' => '$1 smulkius keitimus',
'undeletebtn' => 'Atkurti',
'undeletelink' => 'žiūrėti/atkurti',
'undeleteviewlink' => 'žiūrėti',
-'undeletereset' => 'Iš naujo',
'undeleteinvert' => 'Žymėti priešingai',
'undeletecomment' => 'Priežastis:',
'undeletedrevisions' => '{{PLURAL:$1|atkurta $1 versija|atkurtos $1 versijos|atkurta $1 versijų}}',
'block' => 'Blokuoti naudotoją',
'unblock' => 'Atblokuoti naudotoją',
'blockip' => 'Blokuoti naudotoją',
-'blockip-title' => 'Blokuoti naudotoją',
'blockip-legend' => 'Blokuoti naudotoją',
'blockiptext' => 'Naudokite šią formą, kad uždraustumėte redagavimo prieigą pasirinktam IP adresui ar naudotojui. Tai turėtų būti atliekama tik tam, kad sustabdytumėte vandalizmą, ir neprieštarauti [[{{MediaWiki:Policy-url}}|projekte galiojančioms taisyklėms]].
Žemiau pateikite tikslią priežastį (pavyzdžiui, nurodydami sugadintus puslapius).',
'ipadressorusername' => 'IP adresas arba naudotojo vardas',
'ipbexpiry' => 'Galiojimo laikas',
'ipbreason' => 'Priežastis:',
-'ipbreasonotherlist' => 'Kita priežastis',
'ipbreason-dropdown' => '*Bendrosios blokavimo priežastys
** Klaidingos informacijos įterpimas
** Turinio šalinimas iš puslapių
'ipbsubmit' => 'Blokuoti šį naudotoją',
'ipbother' => 'Kitoks laikas',
'ipboptions' => '2 valandos:2 hours,1 diena:1 day,3 dienos:3 days,1 savaitė:1 week,2 savaitės:2 weeks,1 mėnesis:1 month,3 mėnesiai:3 months,6 mėnesiai:6 months,1 metai:1 year,neribotai:infinite',
-'ipbotheroption' => 'kita',
-'ipbotherreason' => 'Kita/papildoma priežastis',
'ipbhidename' => 'Slėpti naudotojo vardą keitimuose bei sąrašuose',
'ipbwatchuser' => 'Stebėti šio naudotojo puslapį ir jo aptarimų puslapį',
'ipb-disableusertalk' => 'Neleisti redaguoti savo naudotojo aptarimo puslapio',
'proxyblockreason' => 'Jūsų IP adresas yra užblokuotas, nes jis yra atvirasis tarpinis serveris. Prašome susisiekti su savo interneto paslaugų tiekėju ar technine pagalba ir praneškite jiems apie šią svarbią saugumo problemą.',
'sorbsreason' => 'Jūsų IP adresas yra įtrauktas į atvirųjų tarpinių serverių DNSBL sąrašą, naudojamą šios svetainės.',
'sorbs_create_account_reason' => 'Jūsų IP adresas yra įtrauktas į atvirųjų tarpinių serverių DNSBL sąrašą, naudojamą šios svetainės. Jūs negalite sukurti paskyros',
-'cant-block-while-blocked' => 'Jūs negalite blokuoti kitų naudotojų, pats būdamas užblokuotas.',
'cant-see-hidden-user' => 'Naudotojas, kurį bandote užblokuoti, jau yra užblokuotas arba paslėptas.
Kadangi jūs neturi hideuser teisės, jūs negalite pamatyti arba pakeisti naudotojo blokavimo.',
'ipbblocked' => 'Jūs negalite blokuoti ar atblokuoti kitų naudotojų, nes pats esate užblokuotas',
'watchlistall2' => 'visus',
'namespacesall' => 'visos',
'monthsall' => 'visi',
-'limitall' => 'visi',
# Email address confirmation
'confirmemail' => 'Patvirtinkite el. pašto adresą',
'confirmemail_needlogin' => 'Jums reikia $1, kad patvirtintumėte savo el. pašto adresą.',
'confirmemail_success' => 'Jūsų el. pašto adresas patvirtintas. Dabar galite prisijungti ir mėgautis projektu.',
'confirmemail_loggedin' => 'Jūsų el. pašto adresas patvirtintas.',
-'confirmemail_error' => 'Patvirtinimo metu įvyko neatpažinta klaida.',
'confirmemail_subject' => '{{SITENAME}} el. pašto adreso patvirtinimas',
'confirmemail_body' => 'Kažkas, tikriausiai jūs IP adresu $1, užregistravo
paskyrą „$2“ susietą su šiuo el. pašto adresu projekte {{SITENAME}}.
# Special:ComparePages
'comparepages' => 'Palyginti puslapius',
-'compare-selector' => 'Palyginti puslapio keitimus',
'compare-page1' => 'Puslapis 1',
'compare-page2' => 'Puslapis 2',
'compare-rev1' => 'Pirma versija',
'recentchanges' => 'Nasenejis puormejis',
'recentchanges-legend' => 'Pādejūs izmaiņu īspiejis',
'recentchanges-feed-description' => 'Redzit jaunuokuos wiki izmainis ar itīm pādim.',
-'rcnote' => 'Tagad ir {{PLURAL:$1|radzama pādejuo <strong>$1</strong> izmaiņa, kas izdareita|redzamys pādejuos <strong>$1</strong> izmainis, kas izdareitys}} {{PLURAL:$2|pādejā|pādejuos}} <strong>$2</strong> {{PLURAL:$2|dīnā|dīnuos}} (da $4, $5).',
'rclistfrom' => 'Paruodeit jaunys izmainis nu $1',
'rcshowhideminor' => '$1 nasvareigūs',
'rcshowhidebots' => '$1 robotprogramys',
# Block/unblock
'blockip' => 'Nūblokēt lītuotuoju',
'ipboptions' => '2 stuņdis:2 hours,1 dīna:1 day,3 dīnys:3 days,1 nedeļa:1 week,2 nedelis:2 weeks,1 mieness:1 month,3 mieneši:3 months,6 mieneši:6 months,1 gods:1 year,iz nanūsokamu laiku:infinite',
-'ipbotheroption' => 'cyts',
'ipb-blocklist-contribs' => '$1 devīņs',
'ipblocklist' => 'Nūblokēti lītuotuoji',
'blocklink' => 'nūblokēt',
'watchlistall2' => 'vysys',
'namespacesall' => 'vysys',
'monthsall' => 'vysi',
-'limitall' => 'vysys',
# Watchlist editing tools
'watchlisttools-view' => 'Apsavērt atbylstūšuos izmainis',
'tog-minordefault' => "Siamţhat tawh phawt chu 'tenau'-ah dah vek rawh",
'tog-previewontop' => 'Siamţhatna bawm hmaah endikna dah rawh',
'tog-previewonfirst' => 'Siamţhat vawi khatnaah endikna tilang rawh',
-'tog-nocache' => 'Fanna-in phêk a cache tur veng rawh',
'tog-enotifwatchlistpages' => 'Ka ralvèn zinga phêk emaw taksa pakhat tihdanglam a nih apiangin e-lehkha min thawn rawh',
'tog-enotifusertalkpages' => 'Ka hmangtu-sawihona phêk tihdanglam a nihin e-lehkha min thawn rawh',
'tog-enotifminoredits' => 'Phêk leh taksa siamţhat tenauah pawh e-lehkha min thawn tho rawh',
'recentchanges-label-minor' => 'Hei hi siamţhatna tenau a ni',
'recentchanges-label-bot' => 'He siamţhat hi khawlmi tih a ni',
'recentchanges-label-unpatrolled' => 'He siamţhat hi viltu la nei lo a ni',
-'rcnote' => "Ni $4, dar $5-a a landàna ni {{PLURAL:$2|khat|'''$2'''}} kaltaa tihdanglamna {{PLURAL:$1|'''1'''|thar ber ber '''$1'''}} a hnuaiah khuan kan rawn chhawp chhuak e.",
'rcnotefrom' => "'''$2''' hnua tihdanglamna zawng zawng a hnuaiah khuan kan rawn tilang e ('''$1''' thleng chauh tihlan a ni).",
'rclistfrom' => '$1 hnu lama tihdanglama tihlanna',
'rcshowhideminor' => 'siamţhat tenau $1',
# Block/unblock
'blockip' => 'Hmangtu dangbet rawh',
-'blockip-title' => 'Hmangtu dangbet rawh',
'blockip-legend' => 'Hmangtu dangbet rawh',
'ipadressorusername' => 'Chenhmun-IP emaw hmangtuhming:',
'ipbexpiry' => 'Tawphun:',
'ipbreason' => 'Chhan:',
-'ipbreasonotherlist' => 'Chhan dang',
'ipbsubmit' => 'Hmangtu dangbet rawh',
'ipboptions' => 'darkar 2:2 hours, ni 1:1 day, ni 3:3 days, kar 1:1 week, kar 2:2 weeks, thla 1:1 month, thla 3:3 months, thla 6:6 months, kum 1:1 year, tiam chin awm lo:infinite',
'ipb-blockingself' => 'Nangmah leh nangmah i indäl dáwn! I duh chiah maw?',
'tog-minordefault' => 'Atzīmēt visus labojumus jau sākotnēji par maznozīmīgiem',
'tog-previewontop' => 'Parādīt priekšskatījumu virs rediģēšanas lauka, nevis zem',
'tog-previewonfirst' => 'Parādīt priekšskatījumu jau uzsākot rediģēšanu',
-'tog-nocache' => 'Atslēgt pārlūka lapu saglabāšanu kešatmiņā',
'tog-enotifwatchlistpages' => 'Paziņot pa e-pastu par izmaiņām uzraugāmo rakstu sarakstā esošos rakstos un failos',
'tog-enotifusertalkpages' => 'Paziņot pa e-pastu par izmaiņām manā diskusiju lapā',
'tog-enotifminoredits' => 'Paziņot pa e-pastu arī par maznozīmīgiem labojumiem rakstos un failos',
'recentchanges-label-bot' => 'Šī ir bota veikta izmaiņa',
'recentchanges-label-unpatrolled' => 'Šis labojums vēl nav pārbaudīts',
'recentchanges-legend-newpage' => '$1 - jauna lapa',
-'rcnote' => 'Šobrīd ir {{PLURAL:$1|redzama pēdējā <strong>$1</strong> izmaiņa, kas izdarīta|redzamas pēdējās <strong>$1</strong> izmaiņas, kas izdarītas}} {{PLURAL:$2|pēdējā|pēdējās}} <strong>$2</strong> {{PLURAL:$2|dienā|dienās}} (līdz $4, $5).',
'rcnotefrom' => "Šobrīd redzamas izmaiņas kopš '''$2''' (parādītas ne vairāk par '''$1''').",
'rclistfrom' => 'Parādīt jaunas izmaiņas kopš $1',
'rcshowhideminor' => '$1 maznozīmīgos',
'editcomment' => "Attiecīgās izmaiņas kopsavilkums bija: \"''\$1''\".",
'revertpage' => 'Novērsu izmaiņas, ko izdarīja [[Special:Contributions/$2|$2]] ([[User talk:$2|Diskusija]]), atjaunoju versiju, ko saglabāja [[User:$1|$1]]',
'revertpage-nouser' => 'Novērsu (lietotājvārds slēpts) izmaiņas, atjaunoju [[User:$1|$1]] versiju.',
-'rollback-success' => 'Tika novērstas $1 izdarītās izmaiņas;
-un tika atjaunota iepriekšējā versija, kuru bija izveidojis $2.',
+'rollback-success' => 'Novērsu izmaiņas, ko izdarīja $1;
+atjaunoju versiju, ko saglabāja $2.',
# Edit tokens
'sessionfailure-title' => 'sesijas kļūda',
'undeletebtn' => 'Atjaunot!',
'undeletelink' => 'apskatīt/atjaunot',
'undeleteviewlink' => 'skatīt',
-'undeletereset' => 'Notīrīt',
'undeleteinvert' => 'Izvēlēties pretēji',
'undeletecomment' => 'Iemesls:',
'undeletedrevisions' => '$1 {{PLURAL:$1|versija|versijas}} {{PLURAL:$1|atjaunota|atjaunotas}}',
'block' => 'Bloķēt lietotāju',
'unblock' => 'Atbloķēt lietotāju',
'blockip' => 'Bloķēt lietotāju',
-'blockip-title' => 'Bloķēt lietotāju',
'blockip-legend' => 'Bloķēt lietotāju',
'blockiptext' => 'Šo veidni izmanto, lai bloķētu kādas IP adreses vai lietotājvārda piekļuvi wiki lapu saglabāšanai. Dari to tikai, lai novērstu vandālismu atbilstoši [[{{MediaWiki:Policy-url}}|noteikumiem]].
Norādi konkrētu iemeslu (piemēram, linkus uz vandalizētajām lapām).',
'ipadressorusername' => 'IP adrese vai lietotājvārds',
'ipbexpiry' => 'Termiņš',
'ipbreason' => 'Iemesls:',
-'ipbreasonotherlist' => 'Cits iemesls',
'ipbreason-dropdown' => '*Biežākie bloķēšanas iemesli
** Ievieto nepatiesu informāciju
** Dzēš lapu saturu
'ipbsubmit' => 'Bloķēt šo lietotāju',
'ipbother' => 'Cits laiks',
'ipboptions' => '2 stundas:2 hours,1 diena:1 day,3 dienas:3 days,1 nedēļa:1 week,2 nedēļas:2 weeks,1 mēnesis:1 month,3 mēneši:3 months,6 mēneši:6 months,1 gads:1 year,uz nenoteiktu laiku:infinite',
-'ipbotheroption' => 'cits',
-'ipbotherreason' => 'Cits/papildu iemesls:',
'ipbhidename' => "Slēpt lietot'javārdu no labojumiem un sarakstiem",
'ipbwatchuser' => 'Uzraudzīt šī lietotāja lapu un lietotāja diskusijas lapu',
'ipb-change-block' => 'Pārbloķēt ar šiem uzstādījumiem',
Tā ir bloķēta kā daļa no IP adrešu diapazona $2, kuru var atbloķēt.',
'ip_range_invalid' => 'Nederīgs IP diapazons',
'proxyblocker' => 'Starpniekservera bloķētājs',
-'cant-block-while-blocked' => 'Tu nevari bloķēt citus lietotājus, kamēr pats esi bloķēts.',
'ipbblocked' => 'Tu nevar bloķēt vai atbloķēt lietotājus, jo Tu pats esi bloķēts',
'ipbnounblockself' => 'Tev nav atļauts sevi atbloķēt',
'pagemovedsub' => 'Pārvietošana notikusi veiksmīgi',
'movepage-moved' => '\'\'\'"$1" tika pārvietots uz "$2"\'\'\'',
'movepage-moved-redirect' => 'Tika izveidota pāradresācija.',
+'movepage-moved-noredirect' => 'Netika izveidota pāradresācija.',
'articleexists' => 'Lapa ar tādu nosaukumu jau pastāv vai arī tevis izvēlētais nosaukums ir nederīgs. Lūdzu, izvēlies citu nosaukumu.',
'cantmove-titleprotected' => 'Tu nevari pārvietot lapu uz šo nosaukumu, tāpēc, ka jaunais nosaukums (lapa) ir aizsargāta pret izveidošanu',
'movetalk' => 'Pārvietot arī diskusiju lapu, ja tāda ir.',
'watchlistall2' => 'visas',
'namespacesall' => 'visas',
'monthsall' => 'visi',
-'limitall' => 'visas',
# Email address confirmation
'confirmemail' => 'Apstiprini e-pasta adresi',
'confirmemail_success' => 'Tava e-pasta adrese ir apstiprināta.
Tagad vari [[Special:UserLogin|doties iekšā]] ar savu lietotājvārdu un pilnvērtīgi izmantot wiki iespējas.',
'confirmemail_loggedin' => 'Tava e-pasta adrese tagad ir apstiprināta.',
-'confirmemail_error' => 'Notikusi kāda kļūme ar tava apstiprinājuma saglabāšanu.',
'confirmemail_subject' => 'E-pasta adreses apstiprinajums no {{grammar:ģenitīvs|{{SITENAME}}}}',
'confirmemail_body' => 'Kads, iespejams, tu pats, no IP adreses $1 ir registrejis {{grammar:ģenitīvs|{{SITENAME}}}} lietotaja vardu "$2" ar so e-pasta adresi.
# Special:ComparePages
'comparepages' => 'Salīdzināt lapas',
-'compare-selector' => 'Salīdzināt lapu versijas',
'compare-page1' => '1. lapa',
'compare-page2' => '2. lapa',
'compare-rev1' => '1. versija',
* @author Simon Shek
* @author StephDC
* @author Super Wang
+ * @author Xiaomingyan
* @author Yanteng3
*/
'tog-minordefault' => '慣為校',
'tog-previewontop' => '頂草覽',
'tog-previewonfirst' => '覽首修',
-'tog-nocache' => '莫謄文',
'tog-enotifwatchlistpages' => '哨新,遣函',
'tog-enotifusertalkpages' => '議新,遣函',
'tog-enotifminoredits' => '校新,遣函',
'saveprefs' => '儲',
'restoreprefs' => '重修',
'prefs-editing' => '在修',
-'rows' => '行:',
-'columns' => '列:',
+'rows' => '行數:',
+'columns' => '列數:',
'searchresultshead' => '尋',
'resultsperpage' => '頁示尋',
'stub-threshold' => '<a href="#" class="stub">短頁連</a>格式門檻(位元組):',
'recentchanges-label-bot' => '此乃機纂',
'recentchanges-label-unpatrolled' => '是纂未巡',
'recentchanges-legend-newpage' => '$1 - 新頁',
-'rcnote' => "下為自$4$5起,'''$2'''日內'''$1'''近易也。",
'rcnotefrom' => "下為自'''$2'''至'''$1'''之易也。",
'rclistfrom' => '自$1起之易也',
'rcshowhideminor' => '$1校',
'undeletebtn' => '還',
'undeletelink' => '察焉,以定還否',
'undeleteviewlink' => '察',
-'undeletereset' => '歸白',
'undeleteinvert' => '反相',
'undeletecomment' => '因:',
'undeletedrevisions' => '$1審已還',
# Block/unblock
'blockip' => '禁簿',
-'blockip-title' => '禁簿',
'blockip-legend' => '禁簿',
'blockiptext' => '函下禁纂,簿、址明判;[[{{MediaWiki:Policy-url}}|秉據]]如斯,立法克亂。指罪證行,了冤無憾。',
'ipadressorusername' => 'IP或簿名',
'ipbexpiry' => '限期',
'ipbreason' => '指證',
-'ipbreasonotherlist' => '常犯',
'ipbreason-dropdown' => '*如下道:
** 造假報
** 毀文貌
'ipbsubmit' => '禁簿',
'ipbother' => '別期',
'ipboptions' => '二時:2 hours,一日:1 day,三日:3 days,一週:1 week,二週:2 weeks,一月:1 month,三月:3 months,六月:6 months,一年:1 year,永如:infinite',
-'ipbotheroption' => '它',
-'ipbotherreason' => '補證、加證曰',
'ipbhidename' => '簿名隱乎纂與表',
'ipbwatchuser' => '哨該簿之齋與議',
'ipb-change-block' => '用此設重禁此簿',
'ip_range_invalid' => 'IP址圍不格',
'ip_range_toolarge' => '大於 /$1 之禁段乃無容也。',
'proxyblocker' => '禁Proxy',
-'cant-block-while-blocked' => '爾然被禁,勿施於人。',
'cant-see-hidden-user' => '簿禁或藏矣。
爾無藏之權,無視纂禁也。',
'ipbblocked' => '爾無鎖或鎖他簿,因你自封也',
'watchlistall2' => '全',
'namespacesall' => '全',
'monthsall' => '全',
-'limitall' => '全',
# Email address confirmation
'confirmemail' => '核郵驛',
# Special:ComparePages
'comparepages' => '較頁',
-'compare-selector' => '較頁之審',
'compare-page1' => '頁一',
'compare-page2' => '頁二',
'compare-rev1' => '審一',
'tog-minordefault' => 'हमर सभ सम्पादन पूर्वन्यस्त रूपेँ मामूली कहू',
'tog-previewontop' => 'संपादन पेटीक ऊपर दृश्य देखाऊ',
'tog-previewonfirst' => 'पहिल सम्पादनक बाद पूर्वावलोकन देखाउ',
-'tog-nocache' => 'गवेषक पृष्ठ उपस्मृति अशक्त करू',
'tog-enotifwatchlistpages' => 'जौं हमर ध्यानसूचीक कोनो पन्नामे परिवर्तन हुअए तँ हमरा ई-पत्र पठाउ',
'tog-enotifusertalkpages' => 'हमर सदस्य वार्ता पृष्ठ पर भेल परिवर्त्तनक हेतु हमरा ई-मेल करथि',
'tog-enotifminoredits' => 'छोट परिवर्त्तनक हेतु सेहो हमरा ई-मेल पठाऊ',
'recentchanges-label-minor' => 'ई एकटा लघु सम्पादन छी',
'recentchanges-label-bot' => 'ई सम्पादन यांत्रिक छल।',
'recentchanges-label-unpatrolled' => 'ऐ सम्पादनक पुनरीक्षण अखन धरि नै कएल गेल अछि।',
-'rcnote' => "$5, $4 तक पहिलुका {{PLURAL:$2|'''१''' दिन|'''$2''' दिन}}मे {{PLURAL:$1|भेल '''१''' अंतिम परिवर्तन एना अछि| भेल '''$1''' परिवर्तन एना अछि}}।",
'rcnotefrom' => "नीचाँमे '''$2''' सँ भेल परिवर्तन अछि ('''$1''' धरि देखाएल)।",
'rclistfrom' => '$1 सँ शुरू भेल नव परिवर्तन देखू',
'rcshowhideminor' => '$1 अल्प संपादन',
'undeletebtn' => 'घुराउ',
'undeletelink' => 'देखू/ पहिने जकाँ',
'undeleteviewlink' => 'देखू',
-'undeletereset' => 'फेरसँ शुरू करू',
'undeleteinvert' => 'उनटा चयन',
'undeletecomment' => 'कारण:',
'undeletedrevisions' => '{{PLURAL:$1|1 revision|$1 revisions}} घुराएल',
'block' => 'प्रयोक्ताकेँ प्रतिबन्धित करू',
'unblock' => 'प्रयोक्ताकेँ प्रतिबन्धसँ हटाउ',
'blockip' => 'प्रयोक्ताकेँ प्रतिबन्धित करू',
-'blockip-title' => 'प्रयोक्ताकेँ प्रतिबन्धित करू',
'blockip-legend' => 'प्रयोक्ताकेँ प्रतिबन्धित करू',
'blockiptext' => 'नीचाँक आवेदनक प्रयोग कोनो खास अनिकेत वा प्रयोक्तानामक लिखैक प्रवेशकेँ प्रतिबन्धित करबा लेल करू।
ई अतत्तः करैबलाक विरुद्ध प्रयुक्त हुअए, आ एकर अनुसार [[{{MediaWiki:Policy-url}}|policy]]।
'ipadressorusername' => 'अनिकेत संकेत वा प्रयोक्तानाम:',
'ipbexpiry' => 'खतम हएत:',
'ipbreason' => 'कारण:',
-'ipbreasonotherlist' => 'दोसर कारण',
'ipbreason-dropdown' => '*सामान्य प्रतिबन्ध कारण
** गलत सूचना घुसेनाइ
** पन्ना सभसँ पाठ हटेनाइ
'ipbsubmit' => 'ऐ प्रयोक्ताकेँ रोकू',
'ipbother' => 'दोसर समए:',
'ipboptions' => '2 घण्टा:2 hours,1 दिन:1 day,3 दिन:3 days,1 सप्ताह:1 week,2 सप्ताह:2 weeks,1 मास:1 month,3 मास:3 months,6 मास:6 months,1 साल:1 year,अनिश्चित:infinite',
-'ipbotheroption' => 'आन',
-'ipbotherreason' => 'दोसर/ अतिरिक्त कारण:',
'ipbhidename' => 'प्रयोक्तानामकेँ सम्पादन आ सूचीसँ हटाउ',
'ipbwatchuser' => 'ऐ प्रयोक्ताक अपन आ वार्ता पन्नापर नजरि राखू',
'ipb-disableusertalk' => 'ऐ प्रयोक्ताकेँ प्रतिबन्ध अवधिमे अपन वार्ता पन्नाक सम्पादनसँ रोकू।',
अहाँ अपन अन्तर्जाल सेवा दाता वा तकनीकी सहायकसँ सम्पर्क करू आ ऐ गम्भीर सुरक्षा समस्याक सूचना दिअ।',
'sorbsreason' => 'अहाँक अनिकेत सूचित अछि सोझे-सोझ दोसराइतक रूपमे {{जालस्थल}} क डी.एन.एस.बी.एल.मे।',
'sorbs_create_account_reason' => 'अहाँक अनिकेत एतए सूचित अछि खुजल दोसराइत सन डी.एन.बी.एस.एल. मे जे प्रयोग कएल जाइए {{अन्तर्जाल}} द्वारा।',
-'cant-block-while-blocked' => 'अहाँ जाधरि स्वयं प्रतिबन्धित छी दोसराकेँ प्रतिबन्धित नै कऽ सकै छी।',
'cant-see-hidden-user' => 'जै प्रयोक्ताकेँ अहाँ प्रतिबन्धित करऽ चाहै छी से पहिनहियेसँ प्रतिबन्धित आ अदृश्य अछि।
कारण अहाँ लग प्रयोक्ताकेँ अदृश्य करबाक अधिकार नै अछि, अहाँ प्रयोक्ताक प्रतिबन्धकेँ देख वा सम्पादित नै कऽ सकै छी।',
'ipbblocked' => 'अहाँ दोसर प्रयोक्ताकेँ प्रतिबन्धित वा अप्रतिबन्धित नै कऽ सकै छी, कारण अहाँ स्वयं प्रतिबन्धित छी',
'watchlistall2' => 'सभ',
'namespacesall' => 'सभटा',
'monthsall' => 'सभ',
-'limitall' => 'सभटा',
# Email address confirmation
'confirmemail' => ' ई-पत्र सत्यापित करू',
'confirmemail_success' => 'अहाँक ई-पत्र संकेत सत्यापित कएल गेल।
अहाँ आब [[Special:UserLogin|सम्प्रवेश]]आ विकीक प्रयोग करू।',
'confirmemail_loggedin' => 'अहाँक ई-पत्र संकेत आब सत्यापित भऽ गेल।',
-'confirmemail_error' => 'सत्यापित करबा काल किछु गड़बड़ भऽ गेल।',
'confirmemail_subject' => '{{जालस्थल}} ई-पत्र संकेत सत्यापन',
'confirmemail_body' => 'कियो, सम्भवतः अहाँ, अनिकेत $1 सँ,
खाता "$2" पंजीकृत करबेने छथि ऐ ई-पत्र संकेतसँ {{जालस्थल}} पर।
# Special:ComparePages
'comparepages' => 'पन्ना सभक तुलना करू',
-'compare-selector' => 'पन्ना सभक संशोधनक तुलना करू',
'compare-page1' => 'पन्ना १',
'compare-page2' => 'पन्ना २',
'compare-rev1' => 'संशोधन १',
'tog-minordefault' => 'Otomatis nandani kabeh suntingan dadi suntingan cilik',
'tog-previewontop' => 'Tidokna pratayang sedurunge kotak sunting',
'tog-previewonfirst' => 'Tidokna pratayang nang suntingan sing pertama',
-'tog-nocache' => 'Nonaktifna penyinggahan kaca peramban',
'tog-enotifwatchlistpages' => 'Kirimna imel maring inyong angger kaca awa berkas utsing mlebu daptar pangawasanne inyong diowaih',
'tog-enotifusertalkpages' => 'Kirimna imel maring inyong angger kaca dhiskusine inyong owah',
'tog-enotifminoredits' => 'Kirimna imel maring inyong uga nek ana suntingan cilik nang kaca lan berkas',
'recentchanges-label-minor' => 'Kiye suntingan cilik',
'recentchanges-label-bot' => 'Suntingan iki dilakokna déning bot',
'recentchanges-label-unpatrolled' => 'Suntingan kiye durung dipatroli',
-'rcnote' => "Sing ana nang ngisor kiye kuwe {{PLURAL:$1|'''1'''|'''$1'''}} owahan anyar nang {{PLURAL:$2|dina|'''$2''' dina}} pungkasan kiye, nganti tanggal $4, jam $5.",
'rcnotefrom' => 'Nang ngisor kiye owah-owahan wiwit <strong>$2</strong> (kapacak nganti <strong>$1</strong> owah-owahan).',
'rclistfrom' => 'Tidokna owahan anyar molai sekang tanggal $1',
'rcshowhideminor' => '$1 suntingan cilik',
'tog-minordefault' => 'Тяшксемс сембе петема анцяйнятне мъзярс илякс изь мярьгов',
'tog-previewontop' => 'Няфтемс сёрматфть васень няфтемать петемань седяфксть инголе',
'tog-previewonfirst' => 'Васень няфтема васенце петнемада меле',
-'tog-nocache' => 'Кардамс интернетс вятиенди эслек ванфневи файлхнень тиема',
'tog-enotifwatchlistpages' => 'Кучт тейне е-сёрма мзярда монь мельгеваномаста лопат илякстоптовихть',
'tog-enotifusertalkpages' => 'Кучемс электрононь сёрма монь тиить корхтама лопанц илякстоптомада меле',
'tog-enotifminoredits' => 'Кучт тейне е-сёрма нъльне мъзярда лопат эди файлхт аф ламне видептевихть',
'recentchanges-label-minor' => 'Тя ёмланя видептема',
'recentchanges-label-bot' => 'Тя видептемась тизе кона-бди робот програм',
'recentchanges-label-unpatrolled' => 'Тя видептемась ашесь пова патруль ала ни',
-'rcnote' => "Ала {{PLURAL:$1|мекольце '''1''' полафнема|мекольце '''$1''' полафнемат}} '''$2''' ётай {{PLURAL:$2|шис|шис}}, $5, $4ста.",
'rcnotefrom' => "Ала няфтезь полафнематне '''$2'''-ста ('''$1'''-с).",
'rclistfrom' => 'Няфтемс од полафнематне $1-ста ушедомс',
'rcshowhideminor' => '$1 ёмланя видептемат',
'undeletebtn' => 'Мърдафтомс',
'undeletelink' => 'ваномс/мърдафтомс',
'undeleteviewlink' => 'ваномс',
-'undeletereset' => 'Валхтомс',
'undeleteinvert' => 'Валхтомс кочкама',
'undeletecomment' => 'Мяльполаткс:',
'undeletedrevisions' => '{{PLURAL:$1|1 верзие|$1 верзиет}} мърдафтфт',
'ipadressorusername' => 'IP адрес эли тиить лемоц:',
'ipbexpiry' => 'Сирелгоды:',
'ipbreason' => 'Туфтал:',
-'ipbreasonotherlist' => 'Иля туфтал',
'ipbreason-dropdown' => '* Кърдань сёлгома туфталхт
** Аф виде информациень путнема
** Лопаста сёрматфть нардама
'ipbsubmit' => 'Сёлгомс тя тиить',
'ipbother' => 'Иля пинге:',
'ipboptions' => '2 ойхть (част):2 hours,1 ши:1 day,3 шит:3 days,1 тарга (недля):1 week,2 таргат (недлят):2 weeks,1 ков:1 month,3 кофт:3 months,6 кофт:6 months,1 киза:1 year,пефтома:infinite',
-'ipbotheroption' => 'иля',
-'ipbotherreason' => 'Иля/поладомань туфтал:',
'ipbhidename' => 'Кяшемс тиить лемоц петнемада ди лувомада',
'ipbwatchuser' => 'Ваномс тя тиить лопанц ди сонь корхнема лопанц мельге.',
'ipb-change-block' => 'Сёлгомс одукс тя тиить ня латцематнень коряс',
'sorbsreason' => 'Тонь IP адресце лувови панжада ётка якай сервероннекс DNSBL-са, конась нолдаф тевс {{SITENAME}}са.',
'sorbs_create_account_reason' => 'Тонь IP адресце лувови панжада ётка якань сервероннекс DNSBL-са конась нолнезь тевс {{SITENAME}}са.
Тондейть аш кода сёрматфтомать тиемс',
-'cant-block-while-blocked' => 'Тондейть аш кода сёлгомс иля тиихнень мъзярс тон тонць сёлкф.',
# Developer tools
'lockdb' => 'Пякстамс датабазать',
'confirmemail_success' => 'Тонь электрононь адресце кемокстафоль.
Тондейть тяни ули кода сувамс Викис.',
'confirmemail_loggedin' => 'Тонь электрононь адресце тяни кемокстаф.',
-'confirmemail_error' => 'Мезеге мольсь аф лац тонь кемокстаманц ванфтомать ёткста.',
'confirmemail_subject' => '{{SITENAME}} электрононь адресть кемокстамась',
'confirmemail_body' => 'Кати-кие, улема, тон $1 IP адресста ушедсь сёрматфтомась "$2" тя электрононь адресть мархта {{SITENAME}}-са.
'tog-minordefault' => 'Mariho ho madinika foana aloha ny fanovana rehetra',
'tog-previewontop' => "Asehoy alohan'ny boaty fanovana ny tsipalotra",
'tog-previewonfirst' => "Asehoy ny tsipalotra amin'ny fanovana voalohany",
-'tog-nocache' => 'Tsy alefa ny fanehoana ny pejy voasitriky ny mpitety',
'tog-enotifwatchlistpages' => 'Andefasana imailaka rehefa voaova ny pejy na ny rakitra arahako',
'tog-enotifusertalkpages' => 'Andefaso imailaka aho rehefa miova ny pejin-dresako',
'tog-enotifminoredits' => "Andefasana imailaka na dia fanovana madinika aza no atao amin'ny pejy sy ny rakitra",
'recentchanges-label-bot' => "Nataon'ny rôbô ity fanovana ity.",
'recentchanges-label-unpatrolled' => 'Ity fanovana ity dia mbola tsy voamarina',
'recentchanges-legend-newpage' => '$1 - pejy vaovao',
-'rcnote' => "!Ity ny {{PLURAL:$1|fanovàna farany|fanovàna farany}} $1 natao nandritra ny <b>$2</b> andro, hatramin'ny $4 tamin'ny ora faha $5.",
'rcnotefrom' => "Ity eto ambany ity ny lisitry ny vao niova manomboka ny <b>$2</b> (hatramin'ny <b>$1</b> no miseho).",
'rclistfrom' => 'Asehoy izay vao niova manomboka ny $1',
'rcshowhideminor' => '$1 ny fanovàna kely',
'undeletebtn' => 'Avereno!',
'undeletelink' => 'Topi-maso/averina',
'undeleteviewlink' => 'hijery',
-'undeletereset' => 'Hamerina',
'undeleteinvert' => 'Hampifamaidika ny safidy',
'undeletecomment' => 'Antony :',
'undeletedrevisions' => 'voaverina ny {{PLURAL:$1|fanovana|fanovana}} $1',
'block' => 'Hanakana ilay mpikambana',
'unblock' => "Hanala ny sakan'ilay mpikambana",
'blockip' => 'Sakano ny mpikambana',
-'blockip-title' => 'Hanakana ilay mpikambana',
'blockip-legend' => 'Sakano ny mpikambana',
'blockiptext' => "Ampiasao ity formulaire ity hisakanana ny fahazoan-dàlana hanoratra
ananan'ny adiresy IP iray na solonanarana iray.
'ipadressorusername' => 'Adiresy IP na solonanarana',
'ipbexpiry' => 'Fahataperana',
'ipbreason' => 'Antony :',
-'ipbreasonotherlist' => 'Antony hafa',
'ipb-hardblock' => 'Hanakana ny mpikambana nisoratra anarana mampiasa ity adiresy IP ity',
'ipbcreateaccount' => 'Hanakana ny fanokafana kaonty',
'ipbemailban' => 'Hanakana ny fandefasana imailaka',
'ipbsubmit' => 'Sakano',
'ipbother' => 'Hafa',
'ipboptions' => '2 ora:2 hours,1 andro:1 day,3 andro:3 days,1 herinandro:1 week,2 herinandro:2 weeks,1 volana:1 month,3 volana:3 months,6 volana:6 months,1 taona:1 year,mandrakizay:infinite',
-'ipbotheroption' => 'hafa',
-'ipbotherreason' => 'Antony hafa na fanampiny :',
'ipbhidename' => "Hanitrika ny anaram-pikambana anatin'ny fanovana sy anaty lisitra",
'ipbwatchuser' => "Hanaraka ny pejim-pikambana sy pejin-dresak'ity mpikambana ity",
'ipb-disableusertalk' => 'Manakana ilay mpikambana hanova ny pejin-dresany mandritry ny sakana',
'proxyblockreason' => "Voasakana ny adiresy IP-nao satria adiresy proxy malalaka izy io. Azafady mba lazao amin'ny mpanome internet anao io olana io.",
'sorbsreason' => "Voasokokajin'ny DNSBL ho ao anatin'ny proxy midanadana ny adiresy IP-nao.",
'sorbs_create_account_reason' => "Voasokajy ho isan'ny proxy midanadana ao amin'ny DNSBL ny adiresy IP-nao. Ireo IP ireo dia ahiana ho fitaovana azon'ny mpandefa spam ampiasaina. Tsy afaka manokatra kaonty ianao.",
-'cant-block-while-blocked' => 'Tsy azo sakananao ny mpikambana hafa raha mbola voasakana ianao.',
'cant-see-hidden-user' => "Ny mpikambana andramanao sakanana dia efa nosakanana ary nasitrika.
Noho ianao tsy manana ny zon'ny mpanitrika mpikambana (''hideuser''), tsy azonao jerena na ovaina ny sakan'ity mpikambana ity.",
'ipbblocked' => "Tsy afaka manala ny sakan'ny mpikambana hafa ianao, satria voasakana koa ianao",
'watchlistall2' => 'rehetra',
'namespacesall' => 'rehetra',
'monthsall' => 'rehetra',
-'limitall' => 'rehetra',
# Email address confirmation
'confirmemail' => 'Fanamarinana adiresy imailaka.',
'confirmemail_needlogin' => 'Mila $1 ianao raha hanamarina ny adiresy imailakao.',
'confirmemail_success' => 'Voamarina ny adiresy imailakao. Afaka [[Special:UserLogin|miditra]] ianao ankehitriny ary mankafia ny wiki.',
'confirmemail_loggedin' => 'Voamarina ny adiresy imailakao ankehitriny.',
-'confirmemail_error' => 'Nisy tsy fetezana nandritra ny fanamarinana adiresy imailaka.',
'confirmemail_subject' => "Fanamarinana adiresy imailaka avy amin'ny sehatra {{SITENAME}}",
'confirmemail_body' => 'Nisy olona, izay ianao ihany angamba, avy tamin\'ny adiresy IP $1, nanokatra kaonty
"$2" tamin\'ity adiresy imailaka ity tao amin\'ny sehatra {{SITENAME}}.
# Special:ComparePages
'comparepages' => 'Hampitaha pejy',
-'compare-selector' => 'Hampitaha ny santiôm-pejy',
'compare-page1' => 'Pejy 1',
'compare-page2' => 'Pejy 2',
'compare-rev1' => 'Santiôna 1',
'tog-extendwatchlist' => 'Чыла вашталтышым, а пытартыш гына огылым ончыкташлан эскерыме лӱмерым кугемдаш',
'tog-usenewrc' => 'У тӧрлатымаш саемдыме лӱмерым кучылташ (JavaScript кӱлеш)',
'tog-numberheadings' => 'Вуймутым автоматик йӧн дене радамлаш',
-'tog-showtoolbar' => 'Тӧрлатымаш ӱзгараҥам ончыкташ (JavaScript кӱлеш)',
+'tog-showtoolbar' => 'Тӧрлатымаш ӱзгараҥам ончыкташ',
'tog-showtoc' => 'Вуймут радамым ончыкташ (3 деч шуко вуймутан лаштык-влаклан)',
'tog-rememberpassword' => 'Тиде компьютерышто мыйын шолыпмутым шарнаш (эн шуко $1 {{PLURAL:$1|кечылын|кечылан}})',
'tog-watchcreations' => 'Мыйын ыштыме лаштык-влакым эскерыме лӱмерыш ешараш',
'tog-minordefault' => 'Посна каласыме огыл гын, чыла тӧрлатымашым изи тӧрлатымаш гай палемдаш',
'tog-previewontop' => 'Тӧрлатымаш тӧрза деч ончыч ончылгоч ончымашым шындаш',
'tog-previewonfirst' => 'Ончылгоч ончымашым икымше тӧрлатымаш годым ончыкташ',
-'tog-nocache' => 'Лаштыкым кешироватлымым чараш',
'tog-enotifwatchlistpages' => 'Мыйын эскерыме лӱмер гыч лаштыкыште тӧрлатымыш нерген электрон почто гоч шижтараш',
'tog-enotifusertalkpages' => 'Мыйын каҥашымаш лаштыкыште тӧрлатымыш нерген электрон почто гоч шижтараш',
'tog-oldsig' => 'Кызытсе кидпале',
'previewnote' => "'''Тиде ончылгоч ончымаш гына;
вашталтыш-влакым эше аралыме огыл!'''",
'editing' => 'Тӧрлаталтеш $1',
+'creating' => '$1 лаштыкым ыштемаш',
'editingsection' => 'Тӧрлаталтеш $1 (ужаш)',
'yourtext' => 'Тендан текст',
'yourdiff' => 'Ойыртем',
'recentchanges-label-bot' => 'Тиде тӧрлатымашым бот ыштен',
'recentchanges-label-unpatrolled' => 'Тиде тӧрлатымашым нигӧ терген огыл',
'recentchanges-legend-newpage' => '$1 - у лаштык',
-'rcnote' => "Ӱлнӧ {{PLURAL:$1|'''1'''|'''$1'''}} вашталтыш пытартыш {{PLURAL:$2||'''$2'''}} кечылан, $5-лан, $4-лан.",
'rcnotefrom' => "Ниже перечислены изменения с '''$2''' (не более '''$1''').",
'rclistfrom' => '$1 гыч тӱҥалын у вашталтымашым ончыкташ',
'rcshowhideminor' => 'Изи тӧрлатымашым $1',
# Block/unblock
'blockip' => 'Пайдаланышылан йӧным петыраш',
'ipbreason' => 'Амал:',
-'ipbreasonotherlist' => 'Вес амал',
'ipboptions' => '2 жап:2 hours,1 кече:1 day,3 кече:3 days,1 арня:1 week,2 арня:2 weeks,1 тылзе:1 month,3 тылзе:3 months,6 тылзе:6 months,1 ий:1 year,нимучашдымылык:infinite',
-'ipbotherreason' => 'Вес/ешартыш амал:',
'ipblocklist' => 'Блокироватлыме пайдаланыше-влак',
'ipblocklist-submit' => 'Кычал',
'blocklink' => 'йӧным петыраш',
'tog-minordefault' => 'Tandoi kasado suntiangan sabagai suntiangan ketek sacaro baku',
'tog-previewontop' => 'Tunjuakan pratonton sabalun kotak suntiang',
'tog-previewonfirst' => 'Tunjuakan pratonton pado suntiangan patamo',
-'tog-nocache' => 'Matikan panyinggahan laman paramban',
'tog-enotifwatchlistpages' => 'Kiriman surel, kok laman atau gambar pado daftar pantau Ambo barubah',
'tog-enotifusertalkpages' => 'Kiriman surel, koq laman maota Ambo barubah',
'tog-enotifminoredits' => 'Kirimkan surel juo untuk saketek suntingan pado laman jo gambar',
'recentchanges-label-minor' => 'Iko suntiangan ketek',
'recentchanges-label-bot' => 'Suntiang ko dibuek dek bot',
'recentchanges-label-unpatrolled' => 'Suntiangan ko alun dipatroli',
-'rcnote' => "Berikuik ko {{PLURAL:$1|'''$1'''}} parubahan dalam {{PLURAL:$2|'''$2''' hari}} tarakhia, sampai $4, pukul $5.",
'rcnotefrom' => "Di bawah ko ado parubahan mulai dari '''$2''' (sampai '''$1''' parubahan).",
'rclistfrom' => 'Tunjuakan parubahan baru mulai dari tanggal $1',
'rcshowhideminor' => '$1 suntiangan ketek',
'block' => 'Sakek pangguno',
'unblock' => 'Lapeh sakek',
'blockip' => 'Sakek pangguno',
-'blockip-title' => 'Sakek pangguno',
'blockip-legend' => 'Sakek pangguno',
'blockiptext' => 'Gunoan formulir di bawah ko untuak manyakek akses dari sabuah alamaik IP atau pangguno.
Iko hanyo buliah dilakuan untuak mancagah vandal, dan sajalan jo [[{{MediaWiki:Policy-url}}|kabijakan]].
'ipadressorusername' => 'Alamaik IP atau namo pangguno:',
'ipbexpiry' => 'Sampai:',
'ipbreason' => 'Alasan:',
-'ipbreasonotherlist' => 'Alasan lain',
'ipbreason-dropdown' => '*Alasan umum sakek
** Marusak (vandal)
** Mangagiah informasi palsu
'ipbsubmit' => 'Sakek pangguno ko',
'ipbother' => 'Salamo:',
'ipboptions' => '2 jam:2 hours,1 ari:1 day,3 ari:3 days,1 pakan:1 week,2 pakan:2 weeks,1 bulan:1 month,3 bulan:3 months,6 bulan:6 months,1 taun:1 year,salamonyo:infinite',
-'ipbotheroption' => 'lainnyo',
-'ipbotherreason' => 'Alasan lain/tambahan:',
'ipbhidename' => 'Suruakan namo pangguno dari daftar jo suntiangan',
'ipbwatchuser' => 'Pantau laman pangguno ko jo laman rundiangnyo',
'ipb-disableusertalk' => 'Halang pangguno ko manyuntiang laman diskusinyo wakatu disakek',
'watchlistall2' => 'kasadonyo',
'namespacesall' => 'sadonyo',
'monthsall' => 'sadonyo',
-'limitall' => 'sadonyo',
# Table pager
'table_pager_limit_label' => 'Item per laman:',
# Special:ComparePages
'comparepages' => 'Bandiangkan laman',
-'compare-selector' => 'Bandiangkan revisi laman',
'compare-page1' => 'Laman 1',
'compare-page2' => 'Laman 2',
'compare-rev1' => 'Revisi 1',
'tog-minordefault' => 'Обележувај ги сите уредувања како ситни по основно',
'tog-previewontop' => 'Прикажи го прегледот пред кутијата за уредување',
'tog-previewonfirst' => 'Прикажи преглед на првото уредување',
-'tog-nocache' => 'Оневозможи кеширање на страниците во прелистувачот',
'tog-enotifwatchlistpages' => 'Испраќај ми е-пошта при промена на страница или податотека од мојот список на набљудувања',
'tog-enotifusertalkpages' => 'Испраќај ми е-пошта при промена на мојата страница за разговор',
'tog-enotifminoredits' => 'Испраќај ми е-пошта и за ситни промени во страниците и податотеките',
'recentchanges-label-plusminus' => 'Промена на големината на страницата во бајти',
'recentchanges-legend-newpage' => '(погл. и [[Special:NewPages|списокот на нови страници]])',
'recentchanges-legend-plusminus' => "(''±123'')",
-'rcnote' => "Подолу {{PLURAL:$1|е прикажана '''1''' промена|се прикажани последните '''$1''' промени}} {{PLURAL:$2|за денес|во последниве '''$2''' дена}}, заклучно со $5, $4.",
'rcnotefrom' => 'Подолу се промените од <b>$2</b> (се прикажуваат до <b>$1</b>).',
'rclistfrom' => 'Прикажи нови промени почнувајќи од $1',
'rcshowhideminor' => '$1 ситни промени',
'special-categories-sort-abc' => 'подреди азбучно',
# Special:DeletedContributions
-'deletedcontributions' => 'Ð\98збÑ\80иÑ\88ани коÑ\80иÑ\81ниÑ\87ки пÑ\80идонеÑ\81и',
-'deletedcontributions-title' => 'Ð\98збÑ\80иÑ\88ани коÑ\80иÑ\81ниÑ\87ки пÑ\80идонеÑ\81и',
+'deletedcontributions' => 'Ð\98збÑ\80иÑ\88ани пÑ\80идонеÑ\81и на коÑ\80иÑ\81никоÑ\82',
+'deletedcontributions-title' => 'Ð\98збÑ\80иÑ\88ани пÑ\80идонеÑ\81и на коÑ\80иÑ\81никоÑ\82',
'sp-deletedcontributions-contribs' => 'придонеси',
# Special:LinkSearch
'undeletebtn' => 'Врати',
'undeletelink' => 'погледај/врати',
'undeleteviewlink' => 'преглед',
-'undeletereset' => 'Одново',
'undeleteinvert' => 'Обратен избор',
'undeletecomment' => 'Причина:',
'undeletedrevisions' => '{{PLURAL:$1|1 измена е обновена|$1 измени се обновени}}',
'blanknamespace' => '(Главен)',
# Contributions
-'contributions' => '{{GENDER:$1|Ð\9aоÑ\80иÑ\81ниÑ\87ки}} пÑ\80идонеÑ\81и',
+'contributions' => '{{GENDER:$1|Ð\9fÑ\80идонеÑ\81и на коÑ\80иÑ\81никоÑ\82}}',
'contributions-title' => 'Придонеси на корисникот $1',
'mycontris' => 'придонеси',
'contribsub2' => 'За {{GENDER:$3|$1}} ($2)',
'sp-contributions-newbies-sub' => 'За нови кориснички сметки',
'sp-contributions-newbies-title' => 'Придонеси на нови корисници',
'sp-contributions-blocklog' => 'Дневник на блокирања',
-'sp-contributions-deleted' => 'избÑ\80иÑ\88ани коÑ\80иÑ\81ниÑ\87ки пÑ\80идонеÑ\81и',
+'sp-contributions-deleted' => 'избÑ\80иÑ\88ани пÑ\80идонеÑ\81и на коÑ\80иÑ\81никоÑ\82',
'sp-contributions-uploads' => 'подигања',
'sp-contributions-logs' => 'дневници',
'sp-contributions-talk' => 'разговор',
'block' => 'Блокирај корисник',
'unblock' => 'Одблокирај корисник',
'blockip' => 'Блокирај корисник',
-'blockip-title' => 'Блокирај корисник',
'blockip-legend' => 'Блокирај корисник',
'blockiptext' => 'Користете го долниот образец за да го забраните пристапот за пишување од одредена IP-адреса или корисничко име.
Ова единствено треба да се прави за да се спречи вандализам, во согласност со [[{{MediaWiki:Policy-url}}|правилата на Википедија]].
'ipadressorusername' => 'IP-адреса или корисничко име:',
'ipbexpiry' => 'Истек на рокот:',
'ipbreason' => 'Причина:',
-'ipbreasonotherlist' => 'Друга причина',
'ipbreason-dropdown' => '*Вообичаени причини за блокирање
** Вметнување лажни информации
** Бришење на содржини од страниците
'ipbsubmit' => 'Блокирај го овој корисник',
'ipbother' => 'Друг рок:',
'ipboptions' => '2 часа:2 hours,1 ден:1 day,3 дена:3 days,1 недела:1 week,2 недели:2 weeks,1 месец:1 month,3 месеци:3 months,6 месеци:6 months,1 година:1 year,бесконечно:infinite',
-'ipbotheroption' => 'друго',
-'ipbotherreason' => 'Друга, дополнителна причина:',
'ipbhidename' => 'Скриј го корисничкото име во уредувањата и списоците',
'ipbwatchuser' => 'Набљудувај ја корисничката страница и страницата за разговор на овој корисник',
'ipb-disableusertalk' => 'Спречи го корисников да ја уредува неговата страница за разговор додека е блокиран',
'sorbs_create_account_reason' => 'Вашата IP-адреса е наведена како отворен застапникот (proxy) во DNSBL користена од {{SITENAME}}.
Не можете да создадете корисничка сметка.',
'xffblockreason' => 'Блокирана е IP-адреса присутна во заглавието X-Forwarded-For, која е ваша или на застапничкиот опслужувач што го користите. Наведеното образложение гласи: $1',
-'cant-block-while-blocked' => 'Не можете да блокирате други корисници додека и вие самите сте блокирани.',
'cant-see-hidden-user' => 'Корисникот кој се обидувате да го блокирате е веќе блокиран и сокриен. Бидејќи вие немате права за сокривање на корисник, не можете да ги видите или уредувате корисничките блокирања.',
'ipbblocked' => 'Не можете да блокирате или одблокирате други корисници бидејќи и самите сте блокирани',
'ipbnounblockself' => 'Не е дозволено да се одблокирате самите себеси',
'exif-whitebalance-0' => 'Автоматска рамнотежа на бело',
'exif-whitebalance-1' => 'Рачна рамнотежа на бело',
-'exif-scenecapturetype-0' => 'СÑ\82андаÑ\80дно',
+'exif-scenecapturetype-0' => 'СÑ\82андаÑ\80ден',
'exif-scenecapturetype-1' => 'Пејзаж',
'exif-scenecapturetype-2' => 'Портрет',
-'exif-scenecapturetype-3' => 'Ноќна сцена',
+'exif-scenecapturetype-3' => 'Ноќна снимка',
'exif-gaincontrol-0' => 'Нема',
'exif-gaincontrol-1' => 'Мало зголемување',
'watchlistall2' => 'сите',
'namespacesall' => 'сите',
'monthsall' => 'сите',
-'limitall' => 'сите',
# Email address confirmation
'confirmemail' => 'Потврда на е-поштенска адреса',
'confirmemail_success' => 'Вашата е-поштенска адреса е потврдена.
Сега можете да се [[Special:UserLogin|најавите]]. Ви посакуваме пријатни мигови на викито!',
'confirmemail_loggedin' => 'Вашата е-поштенска адреса сега е потврдена.',
-'confirmemail_error' => 'Нешто тргна наопаку при снимањето на вашата потврда.',
'confirmemail_subject' => '{{SITENAME}} — Потврда на е-поштенска адреса',
'confirmemail_body' => 'Некој, веројатно Вие, од IP-адресата $1,
на {{SITENAME}} ја регистрирал сметката „$2“ со оваа е-поштенска адреса .
'imgmultigo' => 'Оди!',
'imgmultigoto' => 'Оди на страница $1',
+# Language selector for translatable SVGs
+'img-lang-default' => '(стандарден јазик)',
+'img-lang-info' => 'Испиши ја сликата на $1 $2.',
+'img-lang-go' => 'Прикажи',
+
# Table pager
'ascending_abbrev' => 'раст',
'descending_abbrev' => 'опаѓ',
# Special:ComparePages
'comparepages' => 'Спореди страници',
-'compare-selector' => 'Споредба на ревизии на страници',
'compare-page1' => 'Страница 1',
'compare-page2' => 'Страница 2',
'compare-rev1' => 'Ревизија 1',
'tog-minordefault' => 'എല്ലാ തിരുത്തലുകളും സ്വതേ ചെറുതിരുത്തലുകളായി അടയാളപ്പെടുത്തുക',
'tog-previewontop' => 'തിരുത്തൽ പെട്ടിക്കു മുകളിൽ പ്രിവ്യൂ കാണിക്കുക',
'tog-previewonfirst' => 'ആദ്യത്തെ തിരുത്തലിന്റെ പ്രിവ്യൂ കാണിക്കുക',
-'tog-nocache' => 'ബ്രൗസറിൽ താളുകൾ തദ്ദേശീയമായി സംഭരിച്ചുവയ്ക്കുന്നത് നിർജ്ജീവമാക്കുക',
'tog-enotifwatchlistpages' => 'ഞാൻ ശ്രദ്ധിക്കുന്ന താളുകൾക്കോ പ്രമാണങ്ങൾക്കോ മാറ്റം സംഭവിച്ചാൽ എനിക്കു ഇമെയിൽ അയക്കുക',
-'tog-enotifusertalkpages' => 'à´\8eà´¨àµ\8dà´±àµ\86 à´¸à´\82â\80\8cവാദà´\82 താളിനു മാറ്റം സംഭവിച്ചാൽ ഇമെയിൽ അയക്കുക',
+'tog-enotifusertalkpages' => 'à´\8eà´¨àµ\8dà´±àµ\86 à´¸à´\82â\80\8cവാദതàµ\8dതാളിനു മാറ്റം സംഭവിച്ചാൽ ഇമെയിൽ അയക്കുക',
'tog-enotifminoredits' => 'ചെറുതിരുത്തലുകൾക്കും എനിക്ക് ഇമെയിൽ അയയ്ക്കുക',
'tog-enotifrevealaddr' => 'വിജ്ഞാപന മെയിലുകളിൽ എന്റെ ഇമെയിൽ വിലാസം വെളിവാക്കാൻ അനുവദിക്കുക',
'tog-shownumberswatching' => 'ശ്രദ്ധിക്കുന്ന ഉപയോക്താക്കളുടെ എണ്ണം കാണിക്കുക',
'morenotlisted' => 'ഈ പട്ടിക പൂർണ്ണമല്ല.',
'mypage' => 'താൾ',
'mytalk' => 'സംവാദത്താൾ',
-'anontalk' => 'à´\88 à´\90.പി.à´¯àµ\81à´\9fàµ\86 à´¸à´\82â\80\8cവാദà´\82 താൾ',
+'anontalk' => 'à´\88 à´\90.പി.à´¯àµ\81à´\9fàµ\86 à´¸à´\82â\80\8cവാദതàµ\8dതാൾ',
'navigation' => 'ഉള്ളടക്കം',
'and' => ' ഒപ്പം',
'recentchanges-label-newpage' => 'ഒരു പുതിയ താൾ സൃഷ്ടിച്ചിരിക്കുന്നു',
'recentchanges-label-minor' => 'ഇതൊരു ചെറിയ തിരുത്താണ്',
'recentchanges-label-bot' => 'ഇത് യന്ത്രം ചെയ്ത തിരുത്താണ്',
-'recentchanges-label-unpatrolled' => 'ഇതുവരെ റോന്തു ചുറ്റപ്പെടാത്ത ഒരു തിരുത്താണിത്',
+'recentchanges-label-unpatrolled' => 'ഇതുവരെ റോന്തുചുറ്റപ്പെടാത്ത തിരുത്ത്',
'recentchanges-label-plusminus' => 'താളിന്റെ വലിപ്പം ഇത്രയും ബൈറ്റുകൾ മാറിയിരിക്കുന്നു',
'recentchanges-legend-newpage' => '([[Special:NewPages|പുതിയ താളുകളുടെ പട്ടികയും]] കാണുക)',
-'rcnote' => "കഴിഞ്ഞ {{PLURAL:$2|ദിവസം|'''$2''' ദിവസങ്ങൾക്കുള്ളിൽ}} സംഭവിച്ച, {{PLURAL:$1|'''1''' തിരുത്തൽ|'''$1''' തിരുത്തലുകൾ}} താഴെക്കാണാം. ശേഖരിച്ച സമയം: $4, $5.",
'rcnotefrom' => '<b>$2</b> മുതലുള്ള മാറ്റങ്ങൾ (<b>$1</b> എണ്ണം വരെ കാണാം).',
'rclistfrom' => '$1 മുതലുള്ള മാറ്റങ്ങൾ പ്രദർശിപ്പിക്കുക',
'rcshowhideminor' => 'ചെറുതിരുത്തലുകൾ $1',
'minoreditletter' => '(ചെ.)',
'newpageletter' => '(പു.)',
'boteditletter' => '(യ.)',
+'unpatrolledletter' => '(!)',
'number_of_watching_users_pageview' => '[{{PLURAL:$1|ഒരു ഉപയോക്താവ്|$1 ഉപയോക്താക്കൾ}} ഈ താൾ ശ്രദ്ധിക്കുന്നുണ്ട്]',
'rc_categories' => 'വർഗ്ഗങ്ങളുടെ പരിധി ("|" ഉപയോഗിച്ച് പിരിക്കുക)',
'rc_categories_any' => 'ഏതും',
'statistics-header-hooks' => 'മറ്റു സ്ഥിതിവിവരക്കണക്കുകൾ',
'statistics-articles' => 'ലേഖനങ്ങൾ',
'statistics-pages' => 'താളുകൾ',
-'statistics-pages-desc' => 'à´¸à´\82â\80\8cവാദà´\82 താളുകൾ, തിരിച്ചുവിടലുകൾ തുടങ്ങിയവയടക്കം വിക്കിയിലെ എല്ലാ താളുകളും.',
+'statistics-pages-desc' => 'à´¸à´\82â\80\8cവാദതàµ\8dതാളുകൾ, തിരിച്ചുവിടലുകൾ തുടങ്ങിയവയടക്കം വിക്കിയിലെ എല്ലാ താളുകളും.',
'statistics-files' => 'അപ്ലോഡ് ചെയ്തിട്ടുള്ള പ്രമാണങ്ങൾ',
'statistics-edits' => '{{SITENAME}} സംരംഭത്തിന്റെ തുടക്കം മുതലുള്ള തിരുത്തലുകൾ',
'statistics-edits-average' => 'ഒരു താളിലെ ശരാശരി തിരുത്തലുകൾ',
'unwatchthispage' => 'ശ്രദ്ധിക്കുന്നത് അവസാനിപ്പിക്കുക',
'notanarticle' => 'ലേഖന താൾ അല്ല',
'notvisiblerev' => 'മറ്റൊരു ഉപയോക്താവ് സൃഷ്ടിച്ച അവസാനത്തെ നാൾപ്പതിപ്പ് മായ്ച്ചിരിക്കുന്നു',
-'watchlist-details' => 'à´¸à´\82â\80\8cവാദà´\82 താളുകൾ ഉൾപ്പെടുത്താതെ {{PLURAL:$1|ഒരു താൾ|$1 താളുകൾ}} താങ്കൾ ശ്രദ്ധിക്കുന്നവയുടെ പട്ടികയിലുണ്ട്.',
+'watchlist-details' => 'à´¸à´\82â\80\8cവാദതàµ\8dതാളുകൾ ഉൾപ്പെടുത്താതെ {{PLURAL:$1|ഒരു താൾ|$1 താളുകൾ}} താങ്കൾ ശ്രദ്ധിക്കുന്നവയുടെ പട്ടികയിലുണ്ട്.',
'wlheader-enotif' => 'ഇമെയിൽ അറിയിപ്പുകൾ സജ്ജമാക്കിയിരിക്കുന്നു.',
'wlheader-showupdated' => "താങ്കളുടെ അവസാന സന്ദർശനത്തിനു ശേഷം മാറ്റം വന്ന താളുകൾ '''കടുപ്പിച്ച്''' കാണിച്ചിരിക്കുന്നു",
'watchmethod-recent' => 'ശ്രദ്ധിക്കുന്ന താളുകൾക്കുവേണ്ടി പുതിയ മാറ്റങ്ങൾ പരിശോധിക്കുന്നു',
'undeletebtn' => 'പുനഃസ്ഥാപിക്കുക',
'undeletelink' => 'കാണുക/പുനഃസ്ഥാപിക്കുക',
'undeleteviewlink' => 'കാണുക',
-'undeletereset' => 'പുനഃക്രമീകരിക്കുക',
'undeleteinvert' => 'വിപരീതം തിരഞ്ഞെടുക്കുക',
'undeletecomment' => 'കാരണം:',
'undeletedrevisions' => '{{PLURAL:$1|ഒരു പതിപ്പ്|$1 പതിപ്പുകൾ}} പുനഃസ്ഥാപിച്ചിരിക്കുന്നു',
'sp-contributions-submit' => 'തിരയൂ',
# What links here
-'whatlinkshere' => 'à´\85à´¨àµ\81ബനàµ\8dà´§കണ്ണികൾ',
+'whatlinkshere' => 'à´\88 താളിലàµ\87à´\95àµ\8dà´\95àµ\81à´³àµ\8dà´³ കണ്ണികൾ',
'whatlinkshere-title' => '"$1" എന്ന താളിലേക്കുള്ള കണ്ണികൾ',
'whatlinkshere-page' => 'താൾ:',
'linkshere' => "താഴെക്കൊടുത്തിരിക്കുന്ന താളുകളിൽ നിന്നും '''[[:$1]]''' എന്ന താളിലേക്ക് കണ്ണികളുണ്ട്:",
'block' => 'ഉപയോക്താവിനെ തടയുക',
'unblock' => 'ഉപയോക്താവിനുള്ള തടയൽ നീക്കുക',
'blockip' => 'ഉപയോക്താവിനെ തടയുക',
-'blockip-title' => 'ഉപയോക്താവിനെ തടയുക',
'blockip-legend' => 'ഉപയോക്താവിനെ തടയുക',
'blockiptext' => 'ഏതെങ്കിലും ഐ.പി. വിലാസത്തേയോ ഉപയോക്താവിനേയോ തടയുവാൻ താഴെയുള്ള ഫോം ഉപയോഗിക്കുക.
[[{{MediaWiki:Policy-url}}|വിക്കിയുടെ നയം]] അനുസരിച്ച് നശീകരണപ്രവർത്തനം തടയാൻ മാത്രമേ ഇതു ചെയ്യാവൂ.
'ipadressorusername' => 'ഐ.പി. വിലാസം അല്ലെങ്കിൽ ഉപയോക്തൃനാമം:',
'ipbexpiry' => 'കാലാവധി:',
'ipbreason' => 'കാരണം:',
-'ipbreasonotherlist' => 'മറ്റു കാരണം',
'ipbreason-dropdown' => '*തടയലിനു യോഗ്യമായ കാരണങ്ങൾ
** തെറ്റായ വിവരങ്ങൾ ചേർക്കുക
** താളിൽ നിന്നു വിവരങ്ങൾ മായ്ക്കുക
'ipbsubmit' => 'ഈ ഉപയോക്താവിനെ തടയുക',
'ipbother' => 'മറ്റ് കാലാവധി:',
'ipboptions' => '2 മണിക്കൂർ:2 hours,1 ദിവസം:1 day,3 ദിവസം:3 days,1 ആഴ്ച:1 week,2 ആഴ്ച:2 weeks,1 മാസം:1 month,3 മാസം:3 months,6 മാസം:6 months,1 വർഷം:1 year,അനന്തകാലം:infinite',
-'ipbotheroption' => 'മറ്റുള്ളവ',
-'ipbotherreason' => 'മറ്റ്/കൂടുതൽ കാരണം:',
'ipbhidename' => 'തിരുത്തലുകൾ, പട്ടികകൾ എന്നിവയിൽ നിന്നും ഉപയോക്തൃനാമം മറയ്ക്കുക',
'ipbwatchuser' => 'ഈ ഉപയോക്താവിന്റെ താളും സംവാദം താളും ശ്രദ്ധിക്കുക',
'ipb-disableusertalk' => 'തടയപ്പെട്ടിരിക്കുമ്പോൾ സ്വന്തം സംവാദം താൾ തിരുത്തുന്നതിൽ നിന്നും ഈ ഉപയോക്താവിനെ തടയുക',
'sorbsreason' => '{{SITENAME}} ഉപയോഗിക്കുന്ന DNSBL ൽ താങ്കളുടെ ഐ.പി. വിലാസം ഒരു ഓപ്പൺ പ്രോക്സിയായാണു രേഖപ്പെടുത്തിട്ടുള്ളത്.',
'sorbs_create_account_reason' => '{{SITENAME}} ഉപയോഗിക്കുന്ന DNSBL ൽ താങ്കളുടെ ഐ.പി. വിലാസം ഒരു ഓപ്പൺ പ്രോക്സിയായാണു രേഖപ്പെടുത്തിട്ടുള്ളത്. താങ്കൾക്ക് അംഗത്വമെടുക്കാൻ സാദ്ധ്യമല്ല.',
'xffblockreason' => 'എക്സ്-ഫോർവേഡഡ്-ഫോർ ഹെഡറിലെ ഒരു ഐ.പി. വിലാസം, താങ്കളുടേതോ താങ്കൾ ഉപയോഗിക്കുന്ന പ്രോക്സി സെർവറിലേതോ ആകാം, തടയപ്പെട്ടിരിക്കുന്നതാണ്. തടയലിന്റെ കാരണം: $1',
-'cant-block-while-blocked' => 'താങ്കൾ തടയപ്പെട്ടിരിക്കുമ്പോൾ മറ്റുപയോക്താക്കളെ തടയാൻ താങ്കൾക്ക് സാധിക്കില്ല.',
'cant-see-hidden-user' => 'താങ്കൾ തടയാൻ ശ്രമിക്കുന്ന ഉപയോക്താവ് മുമ്പേ തടയപ്പെടുകയും മറയ്ക്കപ്പെടുകയും ചെയ്യപ്പെട്ടതാണ്. താങ്കൾക്ക് ഉപയോക്താവിനെ മറയ്ക്കാനുള്ള അവകാശം ഇല്ലെങ്കിൽ, ഉപയോക്താവിനെതിരെ ഉള്ള തടയൽ കാണാനോ തിരുത്താനോ കഴിയുന്നതല്ല.',
'ipbblocked' => 'മറ്റുള്ളവരെ തടയാനോ അവരുടെ തടയൽ നീക്കാനോ താങ്കൾക്ക് കഴിയില്ല. കാരണം താങ്കൾ തന്നെ തടയപ്പെട്ടിരിക്കുകയാണ്',
'ipbnounblockself' => 'താങ്കൾക്ക് സ്വന്തം തടയൽ നീക്കാൻ അനുമതിയില്ല',
'''മുന്നറിയിപ്പ്!:'''
ഈ പ്രവൃത്തി ഒരു നല്ലതാളിൽ അപ്രതീക്ഷിതവും, ഉഗ്രവുമായ ഫലങ്ങൾ സൃഷ്ടിച്ചേക്കാം.
മുന്നോട്ടു പോകുന്നതിനു മുമ്പ് താങ്കൾ ചെയ്യുന്നതെന്താണെന്ന് വ്യക്തമായി മനസ്സിലാക്കുക.",
-'movepagetalktext' => "'''ബനàµ\8dധപàµ\8dà´ªàµ\86à´\9fàµ\8dà´\9f à´¸à´\82â\80\8cവാദà´\82 താളàµ\81à´\82 സ്വയം മാറ്റപ്പെടാതിരിക്കാനുള്ള കാരണങ്ങൾ'''
-*à´\85à´¤àµ\87 à´ªàµ\87രിൽ തനàµ\8dà´¨àµ\86 à´¶àµ\82à´¨àµ\8dയമലàµ\8dലാതàµ\8dà´¤ à´\92à´°àµ\81 à´¸à´\82â\80\8cവാദà´\82 താൾ നിലവിലുണ്ടെങ്കിൽ
+'movepagetalktext' => "'''ബനàµ\8dധപàµ\8dà´ªàµ\86à´\9fàµ\8dà´\9f à´¸à´\82â\80\8cവാദതàµ\8dതാൾ സ്വയം മാറ്റപ്പെടാതിരിക്കാനുള്ള കാരണങ്ങൾ'''
+*à´\85à´¤àµ\87 à´ªàµ\87രിൽ തനàµ\8dà´¨àµ\86 à´¶àµ\82à´¨àµ\8dയമലàµ\8dലാതàµ\8dà´¤ à´\92à´°àµ\81 à´¸à´\82â\80\8cവാദതàµ\8dതാൾ നിലവിലുണ്ടെങ്കിൽ
*താങ്കൾ താഴെയുള്ള ചെൿബോക്സ് ഉപയോഗിച്ചിട്ടില്ലെങ്കിൽ
-à´\85à´¤àµ\8dതരà´\82 സനàµ\8dദർà´à´\99àµ\8dà´\99ളിൽ à´¸à´\82â\80\8cവാദà´\82 താളുകൾ താങ്കൾ സ്വയം കൂട്ടിച്ചേർക്കേണ്ടതാണ്.",
+à´\85à´¤àµ\8dതരà´\82 സനàµ\8dദർà´à´\99àµ\8dà´\99ളിൽ à´¸à´\82â\80\8cവാദതàµ\8dതാളുകൾ താങ്കൾ സ്വയം കൂട്ടിച്ചേർക്കേണ്ടതാണ്.",
'movearticle' => 'മാറ്റേണ്ട താൾ',
'moveuserpage-warning' => "'''മുന്നറിയിപ്പ്:''' ഉപയോക്താവിനുള്ള താളാണ് താങ്കൾ മാറ്റാൻ പോകുന്നത്. താൾ മാത്രമേ മാറുകയുള്ളു എന്നും ഉപയോക്താവിന്റെ പേര് ''മാറുകയില്ലെന്നും'' ദയവായി ഓർക്കുക.",
'movenologintext' => 'തലക്കെട്ടു മാറ്റാനുള്ള അനുമതി കൈവരിക്കാൻ താങ്കൾ ഒരു രജിസ്റ്റേർഡ് ഉപയോക്താവായിരിക്കുകയും [[Special:UserLogin|ലോഗിൻ ചെയ്തിരിക്കുകയും]] ചെയ്യേണ്ടത് അത്യന്താപേക്ഷിതമാണ്.',
'movepage-moved-noredirect' => 'തിരിച്ചുവിടലിന്റെ സൃഷ്ടി ഒതുക്കിയിരിക്കുന്നു.',
'articleexists' => 'ഈ പേരിൽ മറ്റൊരു താൾ ഉള്ളതായി കാണുന്നു, അല്ലെങ്കിൽ താങ്കൾ തിരഞ്ഞെടുത്ത തലക്കെട്ട് സ്വീകാര്യമല്ല. ദയവായി മറ്റൊരു തലക്കെട്ട് തിരഞ്ഞെടുക്കുക.',
'cantmove-titleprotected' => 'താൾ സൃഷ്ടിക്കുന്നതിനു നിരോധനം ഏർപ്പെടുത്തിയിട്ടുള്ള ഒരു തലക്കെട്ടു താങ്കൾ തിരഞ്ഞെടുത്ത കാരണം താങ്കൾക്ക് താൾ ആ സ്ഥാനത്തേക്കു മാറ്റുവാൻ സാധിക്കില്ല.',
-'movetalk' => 'ബനàµ\8dധപàµ\8dà´ªàµ\86à´\9fàµ\8dà´\9f à´¸à´\82â\80\8cവാദà´\82 താളും കൂടെ നീക്കുക',
+'movetalk' => 'ബനàµ\8dധപàµ\8dà´ªàµ\86à´\9fàµ\8dà´\9f à´¸à´\82â\80\8cവാദതàµ\8dതാളും കൂടെ നീക്കുക',
'move-subpages' => 'ഉപതാളുകൾ മാറ്റുക ( $1 വരെ)',
'move-talk-subpages' => 'സംവാദം താളിന്റെ ഉപതാളുകൾ മാറ്റുക ($1 എണ്ണം)',
'movepage-page-exists' => '$1 എന്ന താൾ നിലനിൽക്കുന്നുണ്ട്, അതിനു മുകളിൽ സൃഷ്ടിക്കാൻ സ്വതേ കഴിയില്ല.',
'watchlistall2' => 'എല്ലാം',
'namespacesall' => 'എല്ലാം',
'monthsall' => 'എല്ലാം',
-'limitall' => 'എല്ലാം',
# Email address confirmation
'confirmemail' => 'ഇമെയിൽ വിലാസം സ്ഥിരീകരിക്കൽ',
'confirmemail_needlogin' => 'ഇ-മെയിൽ വിലാസം സ്ഥിരീകരിക്കാൻ താങ്കൾ $1 ചെയ്തിരിക്കണം.',
'confirmemail_success' => 'താങ്കളുടെ ഇ-മെയിൽ വിലാസം സ്ഥിരീകരിക്കപ്പെട്ടിരിക്കുന്നു. താങ്കൾക്ക് ഇനി [[Special:UserLogin|ലോഗിൻ ചെയ്ത്]] വിക്കി ആസ്വദിക്കാം.',
'confirmemail_loggedin' => 'താങ്കളുടെ ഇ-മെയിൽ വിലാസം സ്ഥിരീകരിക്കപ്പെട്ടിരിക്കുന്നു.',
-'confirmemail_error' => 'താങ്കളുടെ സ്ഥിരീകരണം സൂക്ഷിച്ചുവയ്ക്കാനുള്ള ശ്രമത്തിനിടയ്ക്ക് എന്തോ പിഴവ് സംഭവിച്ചു.',
'confirmemail_subject' => '{{SITENAME}} ഇ-മെയിൽ വിലാസ സ്ഥിരീകരണം',
'confirmemail_body' => '$1 എന്ന ഐ.പി. വിലാസത്തിൽ നിന്നു (ഒരു പക്ഷെ താങ്കളായിരിക്കാം), "$2" എന്ന പേരോടു കൂടിയും ഈ ഇ-മെയിൽ വിലാസത്തോടു കൂടിയും {{SITENAME}} സംരംഭത്തിൽ ഒരു അംഗത്വം സൃഷ്ടിച്ചിരിക്കുന്നു.
'lag-warn-high' => 'ഡേറ്റാബേസ് സെർവറിന്റെ കൂടിയ താമസം മൂലം, {{PLURAL:$1|ഒരു സെക്കന്റിൽ|$1 സെക്കന്റുകളിൽ}} നടന്ന മാറ്റങ്ങൾ പട്ടികയിൽ കാണണമെന്നില്ല.',
# Watchlist editor
-'watchlistedit-numitems' => 'താà´\99àµ\8dà´\95ൾ à´¸à´\82â\80\8cവാദà´\82 താളുകൾ ഒഴിച്ച് {{PLURAL:$1|ഒരു താൾ|$1 താളുകൾ}} ശ്രദ്ധിക്കുന്നുണ്ട്.',
+'watchlistedit-numitems' => 'താà´\99àµ\8dà´\95ൾ à´¸à´\82â\80\8cവാദതàµ\8dതാളുകൾ ഒഴിച്ച് {{PLURAL:$1|ഒരു താൾ|$1 താളുകൾ}} ശ്രദ്ധിക്കുന്നുണ്ട്.',
'watchlistedit-noitems' => 'താങ്കൾ നിലവിൽ ഒരു താളും ശ്രദ്ധിക്കുന്നില്ല.',
'watchlistedit-normal-title' => 'ശ്രദ്ധിക്കുന്ന താളുകളുടെ പട്ടിക തിരുത്തുക',
'watchlistedit-normal-legend' => 'ശ്രദ്ധിക്കുന്ന താളുകളുടെ പട്ടികയിൽ നിന്നും ഒഴിവാക്കുക',
# Special:ComparePages
'comparepages' => 'താളുകൾ താരതമ്യപ്പെടുത്തുക',
-'compare-selector' => 'താളിന്റെ നാൾപ്പതിപ്പുകൾ താരതമ്യപ്പെടുത്തുക',
'compare-page1' => 'താൾ 1',
'compare-page2' => 'താൾ 2',
'compare-rev1' => 'നാൾപ്പതിപ്പ് 1',
'tog-minordefault' => 'Бүх засваруудаа бага зэргийн гэж автоматаар тэмдэглэх',
'tog-previewontop' => 'Засварлах талбарын өмнө урьдчилж харсан байдлыг үзүүлэх',
'tog-previewonfirst' => 'Эхний засварын үед урьдчилж харсан байдлыг үзүүлэх',
-'tog-nocache' => 'Вэб хөтөчийн хуудасны кешингийг болиулах',
'tog-enotifwatchlistpages' => 'Миний хянах жагсаалт дахь хуудас өөрчлөгдсөн бол и-мэйл явуулах',
'tog-enotifusertalkpages' => 'Миний хэлэлцүүлгийн хуудас өөрчлөгдөхөд и-мэйл явуулах',
'tog-enotifminoredits' => 'Хуудасны өнгөц өөрчлөлтийг мөн и-мейлээр явуул.',
'recentchanges-label-bot' => 'Энэ засварыг бот гүйцэтгэсэн байна',
'recentchanges-label-unpatrolled' => 'Энэ засварыг одоогийн байдлаар манаагүй байна',
'recentchanges-legend-newpage' => '([[Special:NewPages|Шинэ хуудсуудын жагсаалтыг]] бас үзнэ үү.',
-'rcnote' => "Доорх нь $5, $4-ий байдлаарх сүүлийн '''$2''' өдрийн турших '''$1''' засвар юм.",
'rcnotefrom' => "Доорх нь '''$2'''-с хойших өөрчлөлтүүд ('''$1''' хүртэлхийг харуулав) юм.",
'rclistfrom' => '$1-с хойших шинэ засваруудыг үзүүлэх',
'rcshowhideminor' => 'Бага зэргийн засваруудыг $1',
'undeletebtn' => 'Сэргээх',
'undeletelink' => 'үзэх/сэргээх',
'undeleteviewlink' => 'харах',
-'undeletereset' => 'Дахин эхлүүлэх',
'undeleteinvert' => 'Эсрэгээр нь болгох',
'undeletecomment' => 'Шалтгаан:',
'undeletedrevisions' => '{{PLURAL:$1|1 хувилбар|$1 хувилбар}} сэргээгдлээ',
'block' => 'Хэрэглэгчийг блок хийх',
'unblock' => 'Хэрэглэгчийг блокоос гаргах',
'blockip' => 'Хэрэглэгчийг түгжих',
-'blockip-title' => 'Хэрэглэгчийг түгжих',
'blockip-legend' => 'Хэрэглэгчийг түгжих',
'blockiptext' => 'Доорх маягтыг ашиглан тодорхой IP хаяг эсвэл хэрэглэгчийн нэрийг засвар хийхээс түгжинэ үү.
Энэ нь зөвхөн вандализм үйлдэх явдлаас сэргийлэхийн тулд, [[{{MediaWiki:Policy-url}}|бодлого, баримтлалын]] дагуу хийгдэх ёстой.
'ipadressorusername' => 'IP хаяг буюу хэрэглэгчийн нэр',
'ipbexpiry' => 'Түгжээ нь нээгдэх хугацаа',
'ipbreason' => 'Шалтгаан:',
-'ipbreasonotherlist' => 'Өөр шалтгаан',
'ipbreason-dropdown' => '*Ерөнхий түгжих шалтгаанууд
** Худал мэдээлэл оруулсан
** Хуудаснуудаас агуулга устгасан
'ipbsubmit' => 'Энэ хэрэглэгчийг түгжих',
'ipbother' => 'Өөр хугацаа:',
'ipboptions' => '2 цаг:2 hours,1 хоног:1 day,3 хоног:3 days,1 долоо хоног:1 week,2 долоо хоног:2 weeks,1 сар:1 month,3 сар:3 months,6 сар:6 months,1 жил:1 year,хязгааргүй:infinite',
-'ipbotheroption' => 'бусад',
-'ipbotherreason' => 'Өөр/нэмэлт шалтгаан:',
'ipbhidename' => 'Хэрэглэгчийн нэрийг жагсаалт болон өөрчлөлтөөс нуух',
'ipbwatchuser' => 'Энэ хэрэглэгчийн хэрэглэгчийн ба ярианы хуудсуудыг хянах',
'ipb-disableusertalk' => 'Энэ хэрэглэгчийг блоклогдсон үедээ өөрийн ярианы хуудсыг янзлахаас зайлс хийлгэх',
'sorbsreason' => '{{SITENAME}}-н хэрэглэдэг DNSBL-д таны IP хаягийг чөлөөт прокси хэмээн тодорхойлсон байна.',
'sorbs_create_account_reason' => '{{SITENAME}}-н хэрэглэдэг DNSBL-д таны IP хаягийг чөлөөт прокси гэж тэмдэглэсэн байна.
Та бүртгэл үүсгэх боломжгүй.',
-'cant-block-while-blocked' => 'Өөрөө түгжигдсэн үед бусад хэрэглэгчдийг түгжих боломжгүй.',
'cant-see-hidden-user' => 'Таны түгжих гэж оролдож буй хэрэглэгчийг аль хэдийнээ түгжиж, нуусан байна.
Таньд хэрэглэгчийг нуух эрх байхгүй тул та хэрэглэгчийн түгжээг харах буюу засварлах боломжгүй.',
'ipbblocked' => 'Та өөрөө түгжигдсэн тул бусад хэрэглэгчдийг түгжих буюу тэдний түгжээг тайлах эрхгүй',
'watchlistall2' => 'бүгдийг',
'namespacesall' => 'бүгдийг',
'monthsall' => 'бүгдийг',
-'limitall' => 'бүгдийг',
# Email address confirmation
'confirmemail' => 'Мэйл хаягийг баталгаажуулах',
'confirmemail_success' => 'Таны мэйл хаяг баталгаажлаа.
Та одоо викид [[Special:UserLogin|нэвтэрч]] үйлдэл хийх боломжтой',
'confirmemail_loggedin' => 'Таны мэйл хаяг баталгаажлаа.',
-'confirmemail_error' => 'Таны баталгаажуулалтыг хадгалах үед ямар нэг алдаа гарлаа.',
'confirmemail_subject' => '{{SITENAME}}-н мэйл хаягийн баталгаажуулалт',
'confirmemail_body' => 'Хэн нэгэн, магадгүй та $1 IP хаягнаас $2 гэсэн нэрээр энэ мэйл хаягтайгаар {{SITENAME}} хуудсанд данс нээсэн байна.
# Special:ComparePages
'comparepages' => 'Хуудсуудыг харьцуулах',
-'compare-selector' => 'Хуудасны засваруудыг харьцуулах',
'compare-page1' => 'Нэгдүгээр хуудас',
'compare-page2' => 'Хоёрдугаар хуудас',
'compare-rev1' => 'Нэгдүгээр засвар',
'tog-minordefault' => "सर्व संपादने 'छोटा बदल' म्हणून आपोआप जतन करा.",
'tog-previewontop' => 'झलक संपादन खिडकीच्या आधी दाखवा',
'tog-previewonfirst' => 'पहिल्या संपादनानंतर झलक दाखवा',
-'tog-nocache' => 'न्याहाळकाची पान-सय (कॅशिंग) अक्षम (निकामी) करा',
'tog-enotifwatchlistpages' => 'माझ्या निरीक्षणसूचीत असलेल्या पानांमध्ये अथवा संचिकेत बदल झाल्यास मला विपत्र (ई-मेल) पाठवा.',
'tog-enotifusertalkpages' => 'माझ्या चर्चा पानावर बदल झाल्यास मला विरोप (ई-मेल) पाठवा',
'tog-enotifminoredits' => 'मला पानांच्या आणि संचिकांच्या छोट्या बदलांकरीता सुद्धा विरोप पाठवा',
'recentchanges-label-bot' => 'हे संपादन एका सांगकाम्याकडून केले गेले आहे',
'recentchanges-label-unpatrolled' => 'हे संपादन अजून तपासल्या गेले नाही',
'recentchanges-legend-newpage' => '([[Special:NewPages|नविन पानांची यादी]] हेही पाहा)',
-'rcnote' => "खाली $4, $5 पर्यंतचे गेल्या {{PLURAL:$2|'''१''' दिवसातील|'''$2''' दिवसांतील}} {{PLURAL:$1|शेवटचा '''1''' बदल|शेवटचे '''$1''' बदल}} दिलेले आहेत.",
'rcnotefrom' => "खाली <b>$2</b> पासूनचे ('''$1''' पर्यंत) बदल दाखविले आहेत.",
'rclistfrom' => '$1 नंतर केले गेलेले बदल दाखवा.',
'rcshowhideminor' => 'छोटे बदल $1',
'undeletebtn' => 'वगळण्याची क्रिया रद्द करा',
'undeletelink' => 'पहा/पुनर्स्थापित करा',
'undeleteviewlink' => 'पहा',
-'undeletereset' => 'पूर्ववत',
'undeleteinvert' => 'निवड उलट करा',
'undeletecomment' => 'प्रतिक्रिया:',
'undeletedrevisions' => '{{PLURAL:$1|1 आवर्तन|$1 आवर्तने}} पुनर्स्थापित',
'block' => 'सदस्यास प्रतिबंध करा',
'unblock' => 'सदस्य सोडवा',
'blockip' => 'हा अंकपत्ता अडवा',
-'blockip-title' => 'सदस्यास प्रतिबंध करा',
'blockip-legend' => 'सदस्यास प्रतिबंध करा',
'blockiptext' => 'एखाद्या विशिष्ट अंकपत्त्याची किंवा सदस्याची लिहिण्याची क्षमता प्रतिबंधित करण्याकरिता खालील सारणी वापरा.
हे केवळ उच्छेद टाळण्याच्याच दृष्टीने आणि [[{{MediaWiki:Policy-url}}|निती]]स अनुसरून केले पाहिजे.
'ipadressorusername' => 'अंकपत्ता किंवा सदस्यनाम:',
'ipbexpiry' => 'समाप्ति:',
'ipbreason' => 'कारण:',
-'ipbreasonotherlist' => 'इतर कारण',
'ipbreason-dropdown' => '*प्रतिबंधनाची सामान्य कारणे
** चुकीची माहिती भरणे
** पानांवरील मजकूर काढणे
'ipbsubmit' => 'हा पत्ता अडवा',
'ipbother' => 'इतर वेळ:',
'ipboptions' => '२ तास:2 hours,१ दिवस:1 day,३ दिवस:3 days,१ आठवडा:1 week,२ आठवडे:2 weeks,१ महिना:1 month,३ महिने:3 months,६ महिने:6 months,१ वर्ष:1 year,अनंत:infinite',
-'ipbotheroption' => 'इतर',
-'ipbotherreason' => 'इतर/अजून कारण:',
'ipbhidename' => 'सदस्य नाम प्रतिबंधन नोंदी, प्रतिबंधनाची चालू यादी आणि सदस्य यादी इत्यादीतून लपवा',
'ipbwatchuser' => 'या सदस्याच्या सदस्य तसेच चर्चा पानावर पहारा ठेवा',
'ipb-disableusertalk' => 'सदस्यास स्वत:चे चर्चापान संपादण्यापासून प्रतिबंधित करा',
'sorbsreason' => '{{SITENAME}}ने वापरलेल्या DNSBL मध्ये तुमच्या अंकपत्त्याची नोंद उघड-उघड प्रतिनिधी म्हणून सूचित केली आहे.',
'sorbs_create_account_reason' => '{{SITENAME}}च्या DNSBLने तुमचा अंकपत्ता उघड-उघड प्रतिनिधी म्हणून सूचित केला आहे.तुम्ही खाते उघडू शकत नाही',
'xffblockreason' => '(X-Forwarded-For header) मधील अंकपत्ता,आपला किंवा आपण वापरत असलेल्या सर्व्हरचा,प्रतिबंधित केल्या गेला आहे.प्रतिबंधित करण्याचे मुळ कारण होते:$1',
-'cant-block-while-blocked' => 'तुम्ही स्वतः प्रतिबंधित असताना इतरांना प्रतिबंधित करू शकत नाही.',
'cant-see-hidden-user' => 'तुम्ही प्रतिब्ंधकरण्याचा प्रयत्न करत असलेले सदस्य खाते आधीपासूनच प्रतिबंधित आणि लपविले गेले आहे.
तुमच्याकडे सदस्य लपविण्याचे अधिकार नसल्यामुळे , तुम्ही सदस्य प्रतिबंधन पाहू अथवा संपादित करू शकत नाही',
'ipbblocked' => 'तुमचे स्वत:चेच खाते प्रतिबंधित असल्यामुळे तुम्ही इतर सदस्यांना प्रतिबंधित किंवा अप्रतिबंधीत करू शकत नाही',
'watchlistall2' => 'सर्व',
'namespacesall' => 'सर्व',
'monthsall' => 'सर्व',
-'limitall' => 'सर्व',
# Email address confirmation
'confirmemail' => 'ई-मेल पत्ता पडताळून पहा',
'confirmemail_needlogin' => 'तुमचा विपत्रपत्ता प्रमाणित करण्यासाठी तुम्ही $1 करावयास हवे.',
'confirmemail_success' => 'तुमचा विपत्र (ई-मेल) पत्ता प्रमाणित झाला आहे.तुम्ही आता [[Special:UserLogin|दाखल]] होऊ शकता आणि विकिचा आनंद घेऊ शकता.',
'confirmemail_loggedin' => 'तुमचा विपत्र (ई-मेल) पत्ता आता प्रमाणित झाला आहे.',
-'confirmemail_error' => 'तुमची निश्चिती जतन करताना काही तरी चूकले',
'confirmemail_subject' => '{{SITENAME}} विपत्र (ई-मेल) पत्ता प्रमाणित',
'confirmemail_body' => 'कुणीतरी, बहुतेक तुम्ही, $1 या पत्त्यावारून, "$2" खाते हा ईमेल पत्ता वापरून {{SITENAME}} या संकेतस्थळावर उघडले आहे.
# Special:ComparePages
'comparepages' => 'पानांची तुलना करा',
-'compare-selector' => 'पानांच्या आवर्तनांची तुलना करा',
'compare-page1' => 'पान १',
'compare-page2' => 'पान २',
'compare-rev1' => 'आवर्तन १',
'tog-minordefault' => 'Tandakan semua suntingan sebagai kecil secara asali',
'tog-previewontop' => 'Tunjukkan pralihat di atas kotak sunting',
'tog-previewonfirst' => 'Tunjukkan pralihat pada suntingan pertama',
-'tog-nocache' => 'Lumpuhkan pengagregatan laman',
'tog-enotifwatchlistpages' => 'E-mel kepada saya tentang perubahan pada halaman-halaman dan fail-fail dalam senarai pantau saya',
'tog-enotifusertalkpages' => 'E-melkan saya apabila berlaku perubahan pada laman perbincangan saya',
'tog-enotifminoredits' => 'Juga e-mel kepada saya tentang suntingan kecil pada halaman-halaman dan fail-fail',
'recentchanges-label-bot' => 'Suntingan ini dilakukan oleh bot',
'recentchanges-label-unpatrolled' => 'Suntingan ini belum dirondai',
'recentchanges-legend-newpage' => '$1 - laman baru',
-'rcnote' => "Yang berikut ialah '''$1''' perubahan terakhir sejak '''$2''' hari yang lalu sehingga $5, $4.",
'rcnotefrom' => 'Yang berikut ialah semua perubahan sejak <b>$2</b> (sehingga <b>$1</b>).',
'rclistfrom' => 'Papar perubahan sejak $1',
'rcshowhideminor' => '$1 suntingan kecil',
'undeletebtn' => 'Pulihkan',
'undeletelink' => 'lihat/pulihkan',
'undeleteviewlink' => 'papar',
-'undeletereset' => 'Set semula',
'undeleteinvert' => 'Kecualikan pilihan',
'undeletecomment' => 'Sebab:',
'undeletedrevisions' => '$1 semakan dipulihkan',
'block' => 'Sekat pengguna',
'unblock' => 'Nyahsekat pengguna',
'blockip' => 'Sekat pengguna',
-'blockip-title' => 'Sekat pengguna',
'blockip-legend' => 'Sekat pengguna',
'blockiptext' => 'Gunakan borang di bawah untuk menyekat
penyuntingan daripada alamat IP atau pengguna tertentu.
'ipadressorusername' => 'Alamat IP atau nama pengguna:',
'ipbexpiry' => 'Tamat:',
'ipbreason' => 'Sebab:',
-'ipbreasonotherlist' => 'Lain-lain',
'ipbreason-dropdown' => '*Sebab lazim
** Memasukkan maklumat palsu
** Membuang kandungan daripada laman
'ipbsubmit' => 'Sekat pengguna ini',
'ipbother' => 'Waktu lain:',
'ipboptions' => '2 jam:2 hours,1 hari:1 day,3 hari:3 days,1 minggu:1 week,2 minggu:2 weeks,1 bulan:1 month,3 bulan:3 months,6 bulan:6 months,1 tahun:1 year,selama-lamanya:infinite',
-'ipbotheroption' => 'lain',
-'ipbotherreason' => 'Sebab tambahan/lain:',
'ipbhidename' => 'Sembunyikan nama pengguna daripada senarai suntingan dan pengguna',
'ipbwatchuser' => 'Pantau laman pengguna dan laman perbincangan bagi pengguna ini',
'ipb-disableusertalk' => 'Halang pengguna ini daripada menyunting laman perbincangan sendiri apabila disekat',
'sorbsreason' => 'Alamat IP anda telah disenaraikan sebagai proksi terbuka dalam DNSBL yang digunakan oleh {{SITENAME}}.',
'sorbs_create_account_reason' => 'Alamat IP anda telah disenaraikan sebagai proksi terbuka dalam DNSBL yang digunakan oleh {{SITENAME}}. Oleh itu, anda tidak dibenarkan membuka akaun baru.',
'xffblockreason' => 'Alamat IP yang terdapat dalam pengepala X-Forwarded-For, sama ada milik anda ataupun pelayan proksi yang anda gunakan, telah disekat. Sebab asal sekatan adalah: $1',
-'cant-block-while-blocked' => 'Anda tidak boleh menyekat orang lain sedangkan anda disekat.',
'cant-see-hidden-user' => 'Pengguna yang anda cuba sekat telahpun disekat dan tersorok.
Memandangkan anda tidak mempunyai hak untuk menyorokkan pengguna, anda tidak boleh melihat atau menyunting sekatan pengguna tersebut.',
'ipbblocked' => 'Anda tidak boleh menyekat atau menyahsekat pengguna lain kerana anda sendiri telah disekat',
'watchlistall2' => 'semua',
'namespacesall' => 'semua',
'monthsall' => 'semua',
-'limitall' => 'semua',
# Email address confirmation
'confirmemail' => 'Sahkan alamat e-mel',
'confirmemail_needlogin' => 'Anda perlu $1 terlebih dahulu untuk mengesahkan alamat e-mel anda.',
'confirmemail_success' => 'Alamat e-mel anda telah disahkan. Sekarang anda boleh melog masuk dan berseronok di wiki ini.',
'confirmemail_loggedin' => 'Alamat e-mel anda telah disahkan.',
-'confirmemail_error' => 'Sesuatau yang tidak kena berlaku ketika kami menyimpan pengesahan anda.',
'confirmemail_subject' => 'Pengesahan alamat e-mel di {{SITENAME}}',
'confirmemail_body' => 'Seseorang, barangkali anda, dari alamat IP $1, telah mendaftarkan akaun "$2" dengan alamat e-mel ini di {{SITENAME}}.
# Special:ComparePages
'comparepages' => 'Perbandingan laman',
-'compare-selector' => 'Bandingkan semakan laman',
'compare-page1' => 'Laman 1',
'compare-page2' => 'Laman 2',
'compare-rev1' => 'Semakan 1',
'tog-minordefault' => 'Immarka awtomatikament kull modifika bħala waħda minuri',
'tog-previewontop' => 'Uri dehra proviżorja tal-paġna fuq il-kaxxa tal-immodifikar',
'tog-previewonfirst' => 'Uri dehra proviżorja mal-ewwel modifika',
-'tog-nocache' => 'Iddiżattiva l-cache tal-paġni tal-browser',
'tog-enotifwatchlistpages' => "Ibgħatli ittre kull meta sseħħ modifika fuq paġna jew fajl li jinsab fil-lista ta' osservazzjoni tiegħi",
'tog-enotifusertalkpages' => "Ibgħatli ittra-e kull meta l-paġna ta' diskussjoni tiegħi tiġi modifikata",
'tog-enotifminoredits' => 'Ibgħatli wkoll ittra-e għall-modifiki minuri fuq paġni u fajls',
'recentchanges-label-bot' => 'Din il-modifika ġiet effettwata minn bot',
'recentchanges-label-unpatrolled' => 'Din il-modifika għadha ma ġietx verifikata',
'recentchanges-legend-newpage' => '$1 - paġna ġdida',
-'rcnote' => "Hawn taħt {{PLURAL:$1|tinsab l-aktar modifika riċenti|jinsabu l-'''$1''' modifiki riċenti}} għas-sit fl-aħħar {{PLURAL:$2|24 siegħa|'''$2''' ġranet}}, id-dati ġew aġġornati fil-$5 ta' $4.",
'rcnotefrom' => "Ħawn taħt jinsabu l-modifiki minn '''$2''' (sa '''$1''').",
'rclistfrom' => 'Uri l-modifiki ġodda jibdew minn $1',
'rcshowhideminor' => '$1 modifiki żgħar',
'undeletebtn' => 'Irkupra',
'undeletelink' => 'uri/irkupra',
'undeleteviewlink' => 'uri',
-'undeletereset' => 'Irrisettja',
'undeleteinvert' => 'Inverti s-selezzjoni',
'undeletecomment' => 'Raġuni:',
'undeletedrevisions' => '{{PLURAL:$1|reviżjoni irkuprata|$1 reviżjonijiet irkuprati}}',
'block' => 'Imblokka utent',
'unblock' => 'Żblokka utent',
'blockip' => 'Imblokka lil utent',
-'blockip-title' => "Imblokka 'l-utent",
'blockip-legend' => "Imblokka 'l-utent",
'blockiptext' => "Uża l-formola t'hawn taħt sabiex biex tibblokkja l-aċċess tal-kitba lil IP speċifiku jew utent.
Il-blokk irid ikun użat biss sabiex jitnaqqas iċ-ċans ta' vandaliżmu, u għandu josservja b'mod strett il-[[{{MediaWiki:Policy-url}}|politika ta' {{SITENAME}}]].
'ipadressorusername' => 'Indirizz tal-IP jew isem tal-utent:',
'ipbexpiry' => 'Skadenza tal-imblokk:',
'ipbreason' => 'Raġuni:',
-'ipbreasonotherlist' => 'Raġuni oħra',
'ipbreason-dropdown' => "*Raġunijiet komuni dwar blokki
** Iddaħħal informazzjoni falza
** Tneħħi kontenut mill-paġni
'ipbsubmit' => 'Imblokka lil dan l-utent',
'ipbother' => 'Ħin ieħor:',
'ipboptions' => 'sagħtejn:2 hours,ġurnata 1:1 day,3 ġranet:3 days,ġimgħa 1:1 week,ġimgħatejn:2 weeks,xahar 1:1 month,3 xhur:3 months,6 xhur:6 months,sena 1:1 year,infinita:infinite',
-'ipbotheroption' => 'ieħor',
-'ipbotherreason' => 'Raġunijiet oħra/addizzjonali:',
'ipbhidename' => 'Aħbi l-isem tal-utent mill-modifiki u mill-elenki.',
'ipbwatchuser' => "Osserva l-paġni u d-diskussjonijiet ta' dan l-utent",
'ipb-disableusertalk' => "Ipprevjeni dan l-utent milli jimmodifika l-paġna ta' diskussjoni personali waqt li hu mblukkat.",
'proxyblockreason' => "L-indirizz IP tiegħek ġie imblukkat peress li huwa proxy miftuħ. Jekk jogħġbok, ikkuntattja lill-provdituri tas-servizz tal-internet (ISP) jew lis-''support'' tekniku tiegħek u infurmahom b'din il-problema serja ta' sigurtà.",
'sorbsreason' => 'L-indirizz IP tiegħek huwa mniżżel bħala proxy miftuħ fid-DNSBL użat minn {{SITENAME}}.',
'sorbs_create_account_reason' => 'L-indirizz IP tiegħek huwa mniżżel bħala proxy miftuħ fid-DNSBL użat minn {{SITENAME}}. Ma tistax toħloq kont.',
-'cant-block-while-blocked' => 'Ma tistax timblokka lil utenti oħra waqt li inti mblukkat.',
'cant-see-hidden-user' => 'L-utent li qiegħed tipprova timblokka diġà ġie imblukkat u moħbi.
Minħabba li inti m\'għandikx id-dritt li "taħbi \'l-utent", ma tistax tara jew timmodifika l-blokk tal-utent.',
'ipbblocked' => 'Ma tistax timblokka jew tiżblokka utenti oħra, minħabba li inti stess tinsab imblukkat',
'watchlistall2' => 'kollha',
'namespacesall' => 'kollha',
'monthsall' => 'kollha',
-'limitall' => 'kollha',
# Email address confirmation
'confirmemail' => 'Ikkonferma l-indirizz tal-posta elettronika',
'confirmemail_needlogin' => 'Huwa neċessarju $1 biex tikkonferma l-indirizz propju tal-posta elettronika.',
'confirmemail_success' => "L-indirizz tal-posta elettronika tiegħek ġie konfermat. Issa tista' [[Special:UserLogin|tidħol fil-kont tiegħek]] u tgawdi bis-sħiħ din il-wiki.",
'confirmemail_loggedin' => 'L-indirizz tal-posta elettronika tiegħek ġie ikkonfermat.',
-'confirmemail_error' => 'Problema fis-salvataġġ tal-konferma.',
'confirmemail_subject' => '{{SITENAME}}: rikjesta tal-konferma tal-indirizz',
'confirmemail_body' => 'Xi ħadd, probabbilment int, mill-indirizz tal-IP $1,
irreġistra l-kont "$2" b\'dan l-indirizz tal-posta elettronika fuq {{SITENAME}}.
# Special:ComparePages
'comparepages' => 'Qabbel il-paġni',
-'compare-selector' => "Ikkumpara reviżjonijiet ta' paġna",
'compare-page1' => 'Paġna 1',
'compare-page2' => 'Paġna 2',
'compare-rev1' => 'Reviżjoni 1',
'tog-minordefault' => 'Por oumisson, marcar todas las eidiçones cumo menores',
'tog-previewontop' => "Amostrar l'antebison antes de la caixa d'eidiçon",
'tog-previewonfirst' => "Amostrar l'antebison na purmeira eidiçon",
-'tog-nocache' => 'Zatibar caching de páiginas',
'tog-enotifwatchlistpages' => 'Notificar-me por correio eiletrónico quando ua páigina begiada ye altarada',
'tog-enotifusertalkpages' => 'Abisar -me por correio eiletrónico quando la mie páigina de çcusson ye eiditada',
'tog-enotifminoredits' => 'Abisar-me por correio eiletrónico tamien quando las eidiçones fúren pequeinhas',
'recentchanges-legend' => 'Oupçones de las redadeiras altaraçones',
'recentchanges-feed-description' => 'Acumpanha las redadeiras altaraçones de l biqui por esta semiente.',
'recentchanges-legend-newpage' => '$1 - nuoba páigina',
-'rcnote' => "A seguir {{PLURAL:$1|stá listada '''ua''' altaraçon feita|stan '''$1''' altaraçones feitas}} {{PLURAL:$2|ne l redadeiro die|ne ls redadeiros '''$2''' dies}}, a partir de las $5 de $4.",
'rcnotefrom' => 'Alteraçones feitas zde <b>$2</b> (amostradas até <b>$1</b>).',
'rclistfrom' => 'Amostrar las noubas altaraçones a partir de $1',
'rcshowhideminor' => '$1 eidiçones pequerrixas',
'tog-minordefault' => 'တည်းဖြတ်မှုအားလုံးသည် အရေးမကြီးသော တည်းဖြတ်မှုဟု ပုံသေသတ်မှတ်ရန်',
'tog-previewontop' => 'တည်းဖြတ်သည့်အကွက်မတိုင်မီ နမူနာကို ပြရန်',
'tog-previewonfirst' => 'ပထမတည်းဖြတ်မှုတွင် နမူနာကို ပြရန်',
-'tog-nocache' => 'ဘရောက်ဇာ၏ page caching သိမ်းဆည်းမှုကို ပိတ်ထားရန်',
'tog-enotifwatchlistpages' => 'ကျွန်ုပ်၏စောင့်ကြည့်စာရင်းမှ စာမျက်နှာတစ်ခု သို့မဟုတ် ဖိုင်တစ်ခုကို ပြောင်းလဲလိုက်ပါက ကျွနုပ်ဆီ အီးမေးပို့ရန်',
'tog-enotifusertalkpages' => 'ကျွန်ုပ်၏ဆွေးနွေးချက်စာမျက်နှာ ပြောင်းလဲမှုရှိပါက ကျွန်ုပ်ထံ အီးမေးပို့ရန်',
'tog-enotifminoredits' => 'စာမျက်နှာများနှင့် ဖိုင်များ၏ အရေးမကြီးသော တည်းဖြတ်မှုများကိုလည်း အီးမေးပို့ရန်',
'recentchanges-label-minor' => 'အရေးမကြီးသော ပြင်ဆင်မှု ဖြစ်သည်',
'recentchanges-label-bot' => 'ဤတည်းဖြတ်မှုကို ဘော့က လုပ်ဆောင်သွားသည်။',
'recentchanges-label-unpatrolled' => 'ဤတည်းဖြတ်မှုကို မစောင့်ကြပ်မစစ်ဆေးရသေးပါ',
-'rcnote' => "အောက်ပါတို့သည် ပြီးခဲ့သော {{PLURAL:$2|ရက်|'''$2''' ရက်}}, $5, $4 ရက်စွဲအရ နောက်ဆုံး{{PLURAL:$1|ပြောင်းလဲမှု '''တစ်''' ခု|ပြောင်းလဲမှု '''$1''' ခု}}ဖြစ်သည်။",
'rcnotefrom' => "အောက်ပါတို့သည် '''$2''' ကတည်းက အပြောင်းအလဲများ ြဖစ်သည် ('''$1''' ခု ြပထားသည်)။",
'rclistfrom' => '$1 မှစသော အပြောင်းအလဲအသစ်များကို ပြရန်',
'rcshowhideminor' => 'အရေးမကြီးသော ပြင်ဆင်မှု $1ရန်',
'undeletebtn' => 'ပြန်လည် ထိန်းသိမ်းရန်',
'undeletelink' => 'စောင့်ကြည့်ရန်/ပြန်လည်ထိန်းသိမ်းရန်',
'undeleteviewlink' => 'ကြည့်ရန်',
-'undeletereset' => 'Reset ချရန်',
'undeleteinvert' => 'selection ကို ပြောင်းပြန်လှန်ရန်',
'undeletecomment' => 'အကြောင်းပြချက် -',
'undeletedrevisions' => '{{PLURAL:$1|မူတစ်ခု|မူ $1 ခု}} ကိုပြန်လည် ထိန်းသိမ်းပြီး',
# Block/unblock
'blockip' => 'အသုံးပြုသူကို ပိတ်ပင်ရန်',
-'blockip-title' => 'အသုံးပြုသူကို ပိတ်ပင်ရန်',
'blockip-legend' => 'အသုံးပြုသူကို ပိတ်ပင်ရန်',
'ipadressorusername' => 'အိုင်ပီလိပ်စာ သို့ အသုံးပြုသူအမည် -',
'ipbexpiry' => 'သက်တမ်းကုန်လွန်ရက် -',
'ipbreason' => 'အကြောင်းပြချက်:',
-'ipbreasonotherlist' => 'အခြား အကြောင်းပြချက်',
'ipbcreateaccount' => 'အကောင့်အသစ်ပြုလုပ်ခြင်းကို တားဆီးရန်',
'ipbemailban' => 'အီးမေးပို့ခြင်းမှ အသုံးပြုသူကို တားဆီးရန်',
'ipbsubmit' => 'ဤအသုံးပြုသူကို ပိတ်ပင်ရန်',
'ipbother' => 'အခြားအချိန်:',
'ipboptions' => '၂ နာရီ:2 hours,၁ ရက်:1 day,၃ ရက်:3 days,၁ ပတ်:1 week,၂ ပတ်:2 weeks,၁ လ:1 month,၃ လ:3 months,၆ လ:6 months,၁ နှစ်:1 year,အနန္တ:infinite',
-'ipbotheroption' => 'အခြား',
-'ipbotherreason' => 'အခြားသော/နောက်ထပ် အကြောင်းပြချက် -',
'ipbhidename' => 'အသုံးပြုသူအမည်ကို တည်းဖြတ်မှုများနှင့် စာရင်းမှထဲတွင် ဝှက်ထားရန်',
'ipbwatchuser' => 'ဤအသုံးပြုသူ၏စာမျက်နှနှင့် ဆွေးနွေးချက်တို့ကို စောင့်ကြည့်ရန်',
'badipaddress' => 'တရားမဝင်သော IP address',
'watchlistall2' => 'အားလုံး',
'namespacesall' => 'အားလုံး',
'monthsall' => 'အားလုံး',
-'limitall' => 'အားလုံး',
# Email address confirmation
'confirmemail' => 'အီးမေးကိုအတည်ပြုပါ',
# Special:ComparePages
'comparepages' => 'စာမျက်နှာများကို နှုိင်းယှဉ်ရန်',
-'compare-selector' => 'စာမျက်နှာမူများကို နှုိင်းယှဉ်ရန်',
'compare-page1' => 'စာမျက်နှာတစ်',
'compare-page2' => 'စာမျက်နှာနှစ်',
'compare-rev1' => 'မူ တစ်',
'tog-minordefault' => 'Тешкстамс витевкстнэнь апокшкэкс, бути лиякс апак ёвта',
'tog-previewontop' => 'Невтемс сёрмадовксонть васнянь невтевксэнь вальманть витеманьседенть икеле',
'tog-previewonfirst' => 'Васнянь невтевкс васенцеде витнемстэ-петнемстэ',
-'tog-nocache' => 'Лоткавтомс браузерэнь лопань кешировамонть',
'tog-enotifwatchlistpages' => 'Кучомс тень ёндол-сёрмине, зярдо ванстнема лемрисьмень лопатнес-керьмазтнэс теевить лиякстомтомат',
'tog-enotifusertalkpages' => 'Пачтямс е-сёрма теицянь ванома лемрисьмесэнь теезь лиякстомтоматнеде',
'tog-enotifminoredits' => 'Кучомс тень ёндол-сёрмине сестэяк, зярдо апокшкыне витнемат-петнемат теевить монь ванстевть лопатнесэ-керьмазтнэсэ',
'recentchanges-label-bot' => 'Те витнеманть-петнеманть теизе кона-кона бот',
'recentchanges-label-unpatrolled' => '',
'recentchanges-legend-newpage' => '(вантаять [[Special:NewPages|од лопань лемрисьме]])',
-'rcnote' => "$5, $4 шканть коряс муят алдо {{PLURAL:$1|Меельсе '''1''' лиякстомтоманть|Меельсе '''$1''' лиякстомтоматнень}} меельсе {{PLURAL:$2|чинть|'''$2''' читнень}} шкасто.",
'rcnotefrom' => "Ало невтезь '''$2''' лиякстомтомасто саезь ('''$1''' видс).",
'rclistfrom' => 'Невтемс од витьнематнень $1-нть эйстэ саезь.',
'rcshowhideminor' => '$1 апокшкэ витнемат-петнемат',
'block' => 'Аравтомс теицянть саймас',
'unblock' => 'Нолдамс теицянть саймасто',
'blockip' => 'Аравтомс теицянть саймас',
-'blockip-title' => 'Аравтомс теицянть саймас',
'blockip-legend' => 'Аравтомс теицянть саймас',
'ipadressorusername' => 'IP адрес эли теицянь лем:',
'ipbexpiry' => 'Таштомома шказо:',
'ipbreason' => 'Тувталось:',
-'ipbreasonotherlist' => 'Лия тувтал',
'ipbsubmit' => 'Озавтомс те теицянть саймес',
'ipbother' => 'Лия шка:',
'ipboptions' => '2 част:2 hours,1 чи:1 day,3 чить:3 days,1 тарго:1 week,2 таргот:2 weeks,1 ков:1 month,3 ковт:3 months,6 ковт:6 months,1 ие:1 year,певтеме:infinite',
-'ipbotheroption' => 'лия',
-'ipbotherreason' => 'Лия/поладкс тувтал:',
'ipb-confirm' => 'Кемекстамс саймес саеманть',
'badipaddress' => 'Амаштовикс IP адрес',
'blockipsuccesssub' => 'Саймес озавтовсь',
'watchlistall2' => 'весе',
'namespacesall' => 'весе',
'monthsall' => 'весе',
-'limitall' => 'весе',
# Email address confirmation
'confirmemail' => 'Кемекстамс е-почтань сёрмапаргот',
'confirmemail_send' => 'Кучомс е-сёрмасо кемекстамонь код',
'confirmemail_loggedin' => 'Е-сёрма паргот апак кемекста.',
-'confirmemail_error' => 'Кемекстамот ванстомсто мезе-бути лиссь.',
# Scary transclusion
'scarytranscludetoolong' => '[URL пек кувака]',
'tog-minordefault' => 'همه صفحهئون دچیه ره جزئی پیشگامون دار',
'tog-previewontop' => 'نمایش پیشنمایش قبل از دچیین ِجعبه(نا قبل از وه).',
'tog-previewonfirst' => 'پیش نیمایش زمون اولین دچیین',
-'tog-nocache' => 'حافظهٔ نهونی مرورگر از کار دمبداء بوو',
'tog-enotifwatchlistpages' => 'اگه منه پگریئون ره تغییر هدانه مسّه ایمیل بزن',
'tog-enotifusertalkpages' => 'هر گادر منه کاروری صفخهی گپ دله ات چی بنویشنه مه سّه ایمیل بزن',
'tog-enotifminoredits' => 'هرگادر صحه ها دله اتا خورد چی ره عوض هکردنه مه وسّه ایمیل بزن',
'recentchanges-label-newpage' => 'اینتا ویرایش اته نو صفحه ایجاد هاکرده',
'recentchanges-label-minor' => 'اینتا ویرایش خله جزئی بیه',
'recentchanges-label-bot' => 'اینتا ویرایشره اته ربات انجام هدائه',
-'rcnote' => "اینجه {{PLURAL:$1|دگاردستهیی|'''$1''' دگاردستهئونی}} که $4، $5 جه، '''$2''' روز پیشتر دچییه بینه ره اشنّی",
'rclistfrom' => 'نِمایش تازهدگاردستهئون با شروع از $1',
'rcshowhideminor' => 'پچیک دچییهئون $1',
'rcshowhidebots' => 'ربوتئون $1',
# Block/unblock
'blockip' => 'کارور ره دَوستن',
-'blockip-title' => 'کارور ره دَوستن',
'blockip-legend' => 'کارور ره دَوستن',
'ipbsubmit' => 'ای کارور دأبهس بأوه',
'ipboptions' => '۲ ساعت:2 hours,۱ روز:1 day,۳ روز:3 days,۱ هفته:1 week,۲ هفته:2 weeks,۱ ماه:1 month,۳ ماه:3 months,۶ ماه:6 months,۱ سال:1 year,بیپایون:infinite',
'recentchanges-summary' => 'Xiquinttāz in achi yancuīc ahmo occequīntīn tlapatlaliztli huiquipan inīn zāzanilpan.',
'recentchanges-label-newpage' => 'Inīn tlapatlaliztli ōquiyōcox cē yancuīc āmatl',
'recentchanges-label-minor' => 'Inīn tlapatlaliztli tepitōn',
-'rcnote' => "Nicān {{PLURAL:$1|cah '''1''' tlapatlaliaztli|cateh in xōcoyōc '''$1''' tlapatlaliztli}} īpan xōcoyōc {{PLURAL:$2|tōnalli|'''$2''' tōnaltin}} īhuīcpa $5, $4.",
'rclistfrom' => 'Xiquinttāz yancuīc tlapatlaliztli īhuīcpa $1',
'rcshowhideminor' => '$1 tlapatlalitzintli',
'rcshowhidebots' => '$1 tepoztlācah',
'ipadressorusername' => 'IP nozo tlatequitiltilīlli ītōcā:',
'ipbexpiry' => 'Motlamia:',
'ipbreason' => 'Īxtlamatiliztli:',
-'ipbreasonotherlist' => 'Occē īxtlamatiliztli',
'ipbsubmit' => 'Tiquitzacuilīz inīn tlatequitiltilīlli',
'ipbother' => 'Occē cāuhpan:',
'ipboptions' => '2 cāhuitl:2 hours,1 tōnalli:1 day,3 tōnaltin:3 days,1 chicuēyilhuitl:1 week,2 chicuēyilhuitl:2 weeks,1 mētztli:1 month,3 mētztli:3 months,6 mētztli:6 months,1 xihuitl:1 year,mochipa:infinite',
-'ipbotheroption' => 'occē',
-'ipbotherreason' => 'Occē īxtlamatiliztli:',
'ipbwatchuser' => 'Tiquinchiyāz inīn tlatequitiltilīlli in ītlatequitiltilīlzāzanil auh in ītēixnāmiquiliz',
'badipaddress' => 'Ahcualli IP',
'blockipsuccesssub' => 'Cualli tlatzacuiliztli',
'watchlistall2' => 'mochīntīn',
'namespacesall' => 'mochīntīn',
'monthsall' => '(mochīntīn)',
-'limitall' => 'mochi',
# Email address confirmation
'confirmemail' => 'Ticchicāhuāz e-mail',
'confirmemail_success' => 'Mocorreo ōmotlahtōlneltilih
Niman tihuelīti [[Special:UserLogin|timocalaqui]] auh ticpactiāz huiquitica.',
'confirmemail_loggedin' => 'Mo e-mailcān ōmochicāuh.',
-'confirmemail_error' => 'Achi ōcatcah ahcualli mochicāhualiztechcopa.',
'confirmemail_subject' => 'e-mailcān {{SITENAME}} ītlachicāhualiz',
# Scary transclusion
'tog-minordefault' => 'Chiām-tēng bī-lâi ê siu-kái lóng sī sió-siu-ká',
'tog-previewontop' => 'Sûn-khoàⁿ ê lōe-iông tī pian-chi̍p keh-á thâu-chêng',
'tog-previewonfirst' => 'Thâu-pái pian-chi̍p seng khoàⁿ-māi',
-'tog-nocache' => 'Koaiⁿ-tiāu ia̍h ê cache',
'tog-enotifwatchlistpages' => 'Kam-sī-tuann ū ē bûn-tsiunn nā ū kái-piàn, kià tiān-tsú-phue hōo guá.',
'tog-enotifusertalkpages' => 'Guá ê thó-lūn ia̍h nā ū lâng kái, kià tiān-tsú-phue hōo guá.',
'tog-enotifminoredits' => 'Sió pian-chi̍p mā kià tiān-tsú-phue hōo guá.',
'watchlistall2' => 'choân-pō͘',
'namespacesall' => 'choân-pō·',
'monthsall' => 'choân-pō͘',
-'limitall' => '全部',
# Email address confirmation
'confirmemail' => 'Khak-jīn e-mail chū-chí',
'confirmemail_invalid' => 'Bô-hāu ê khak-jīn pian-bé. Pian-bé khó-lêng í-keng kòe-kî.',
'confirmemail_success' => 'í ê e-mail chū-chí khak-jīn oân-sêng. Lí ē-sái teng-ji̍p, khai-sí hiáng-siū chit ê wiki.',
'confirmemail_loggedin' => 'Lí ê e-mail chū-chí í-keng khak-jīn ū-hāu.',
-'confirmemail_error' => 'Pó-chûn khak-jīn chu-sìn ê sî-chūn hoat-seng būn-tê.',
'confirmemail_subject' => '{{SITENAME}} e-mail chu-chi khak-jin phoe',
'confirmemail_body' => 'Ū lâng (IP $1, tāi-khài sī lí pún-lâng) tī {{SITENAME}} ēng chit-ê e-mail chū-chí chù-chheh 1 ê kháu-chō "$2".
'tog-minordefault' => 'Merk i utgangspunktet alle redigeringer som mindre',
'tog-previewontop' => 'Vis forhåndsvisningen over redigeringsboksen',
'tog-previewonfirst' => 'Vis forhåndsvisning når du begynner å redigere',
-'tog-nocache' => 'Deaktiver nettlesermellomlagring av sider («caching»)',
'tog-enotifwatchlistpages' => 'Send meg en e-post når sider og filer på overvåkningslisten min blir endret',
'tog-enotifusertalkpages' => 'Send meg en e-post når brukerdiskusjonssiden min endres',
'tog-enotifminoredits' => 'Send meg e-post også ved mindre endringer av sider og filer',
'recentchanges-label-bot' => 'Denne redigeringen ble gjort av en bot',
'recentchanges-label-unpatrolled' => 'Denne redigeringen har ikke blitt patruljert ennå',
'recentchanges-legend-newpage' => '$1 – ny side',
-'rcnote' => "Nedenfor vises {{PLURAL:$1|'''1''' endring|de siste '''$1''' endringene}} fra {{PLURAL:$2|det siste døgnet|de siste '''$2''' døgnene}}, per $5 $4.",
'rcnotefrom' => "Nedenfor er endringene siden '''$2''' (opp til '''$1''' vises).",
'rclistfrom' => 'Vis nye endringer med start fra $1',
'rcshowhideminor' => '$1 mindre endringer',
'undeletebtn' => 'Gjenopprett',
'undeletelink' => 'vis/gjenopprett',
'undeleteviewlink' => 'vis',
-'undeletereset' => 'Nullstill',
'undeleteinvert' => 'Inverter valg',
'undeletecomment' => 'Årsak:',
'undeletedrevisions' => '{{PLURAL:$1|Én revisjon|$1 revisjoner}} gjenopprettet',
'block' => 'Blokker bruker',
'unblock' => 'Fjern blokkering av bruker',
'blockip' => 'Blokker bruker',
-'blockip-title' => 'Blokker bruker',
'blockip-legend' => 'Blokker bruker',
'blockiptext' => 'Bruk skjemaet under for å blokkere en IP-adresses tilgang til å redigere artikler. Dette må kun gjøres for å forhindre hærverk, og i overensstemmelse med [[{{MediaWiki:Policy-url}}|retningslinjene]]. Fyll ut en spesiell begrunnelse under.',
'ipadressorusername' => 'IP-adresse eller brukernavn',
'ipbexpiry' => 'Varighet:',
'ipbreason' => 'Årsak:',
-'ipbreasonotherlist' => 'Annen grunn',
'ipbreason-dropdown' => '*Vanlige blokkeringsgrunner
** Legger inn feilinformasjon
** Fjerner innhold fra sider
'ipbsubmit' => 'Blokker denne brukeren',
'ipbother' => 'Annen tid',
'ipboptions' => '2 timer:2 hours,1 dag:1 day,3 dager:3 days,1 uke:1 week,2 uker:2 weeks,1 måned:1 month,3 måneder:3 months,6 måneder:6 months,1 år:1 year,uendelig:infinite',
-'ipbotheroption' => 'annet',
-'ipbotherreason' => 'Annen/utdypende grunn:',
'ipbhidename' => 'Skjul brukernavn fra endringer og lister',
'ipbwatchuser' => 'Overvåk brukerens brukerside og diskusjonsside',
'ipb-disableusertalk' => 'Hindre denne brukeren i å redigere sin egen diskusjonsside mens han/hun er blokkert',
'sorbsreason' => 'Din IP-adresse angis som en åpen proxy i DNSBL-en brukt av {{SITENAME}}.',
'sorbs_create_account_reason' => 'Din IP-adresse angis som en åpen proxy i DNSBL-en brukt av {{SITENAME}}. Du kan ikke opprette en konto',
'xffblockreason' => 'En IP-adresse som er tilstede i X-Forwarded-For-headeren, enten din eller en som tilhører en proxyserver du bruker, har blitt blokkert. Den opprinnelige blokkeringsgrunnen var: $1',
-'cant-block-while-blocked' => 'Du kan ikke blokkere andre mens du selv er blokkert.',
'cant-see-hidden-user' => 'Brukeren du prøver å blokkere har allerede blitt blokkert og skjult. Ettersom du ikke har rett til å skjule brukere (hideuser), kan du ikke se eller endre brukerens blokkering.',
'ipbblocked' => 'Du kan ikke blokkere eller avblokkere andre brukere, siden du selv er blokkert',
'ipbnounblockself' => 'Du har ikke tillatelse til å avblokkere deg selv',
'watchlistall2' => 'alle',
'namespacesall' => 'alle',
'monthsall' => 'alle',
-'limitall' => 'alle',
# Email address confirmation
'confirmemail' => 'Bekreft e-postadresse',
'confirmemail_needlogin' => 'Du må $1 for å bekrefte e-postadressen din.',
'confirmemail_success' => 'Din e-postadresse er nå bekreftet. Du kan nå logge inn og nyte wikien.',
'confirmemail_loggedin' => 'E-postadressen din er bekreftet.',
-'confirmemail_error' => 'Noe gikk galt under lagringen av din bekreftelse.',
'confirmemail_subject' => 'Bekreftelsesmelding fra {{SITENAME}}',
'confirmemail_body' => 'Noen, antageligvis deg, har registrert kontoen «$2» på {{SITENAME}}, fra IP-adressen $1.
# Special:ComparePages
'comparepages' => 'Sammenlign sider',
-'compare-selector' => 'Sammenlign siderevisjoner',
'compare-page1' => 'Side 1',
'compare-page2' => 'Side 2',
'compare-rev1' => 'Revisjon 1',
'tog-minordefault' => 'Alle Ännern as lütt markeern',
'tog-previewontop' => 'Vörschau vör dat Editeerfinster wiesen',
'tog-previewonfirst' => "Vörschau bi'n eersten Ännern wiesen",
-'tog-nocache' => 'Twischenspieker vun’n Webkieker utstellen',
'tog-enotifwatchlistpages' => 'Schriev mi en Nettbreef, wenn ene Siet, op de ik oppass, ännert warrt',
'tog-enotifusertalkpages' => 'Schriev mi en Nettbreef, wenn ik ne’e Narichten heff',
'tog-enotifminoredits' => 'Schriev mi en Nettbreef, ok wenn dat blots en lütte Ännern weer',
'recentchanges-label-minor' => 'Dat is en lütte Ännern',
'recentchanges-label-bot' => 'Düsse Ännern worr maakt vun en Bot',
'recentchanges-label-unpatrolled' => 'Düsse Ännern is noch nich kontrolleert worrn',
-'rcnote' => "Hier sünd de letzten '''$1''' Ännern vun {{PLURAL:$2|den letzten Dag|de letzten '''$2''' Daag}} (Stand $5, $4). ('''N''' - Ne’e Sieden; '''L''' - Lütte Ännern)",
'rcnotefrom' => 'Dit sünd de Ännern siet <b>$2</b> (bet to <b>$1</b> wiest).',
'rclistfrom' => 'Wies ne’e Ännern siet $1',
'rcshowhideminor' => '$1 lütte Ännern',
'undeletebtn' => 'Wedderhalen!',
'undeletelink' => 'ankieken/wedderhalen',
'undeleteviewlink' => 'bekieken',
-'undeletereset' => 'Afbreken',
'undeleteinvert' => 'Utwahl ümkehrn',
'undeletecomment' => 'Grund:',
'undeletedrevisions' => '{{PLURAL:$1|ene Version|$1 Versionen}} wedderhaalt',
'block' => 'Bruker blocken',
'unblock' => 'Bruker freegeven',
'blockip' => 'IP-Adress blocken',
-'blockip-title' => 'Bruker sperren',
'blockip-legend' => 'Bruker blocken',
'blockiptext' => 'Bruuk dat Formular, ene IP-Adress to blocken.
Dit schall blots maakt warrn, Vandalismus to vermasseln, aver jümmer in Övereenstimmen mit uns [[{{MediaWiki:Policy-url}}|Leidlienen]].
'ipadressorusername' => 'IP-Adress oder Brukernaam:',
'ipbexpiry' => 'Aflooptiet',
'ipbreason' => 'Grund:',
-'ipbreasonotherlist' => 'Annern Grund',
'ipbreason-dropdown' => '* Allgemene Sperrgrünn
** Tofögen vun verkehrte Infos
** Leddigmaken vun Sieden
'ipbsubmit' => 'Adress blocken',
'ipbother' => 'Annere Tiet:',
'ipboptions' => '2 Stünnen:2 hours,1 Dag:1 day,3 Daag:3 days,1 Week:1 week,2 Weken:2 weeks,1 Maand:1 month,3 Maand:3 months,6 Maand:6 months,1 Johr:1 year,ahn Enn:infinite',
-'ipbotheroption' => 'Annere Duer',
-'ipbotherreason' => 'Annern Grund:',
'ipbhidename' => 'Brukernaam narms mehr wiesen',
'ipbwatchuser' => 'Op Brukersiet un Brukerdiskuschoon oppassen',
'ipb-change-block' => 'Mit disse Sperrparameters noch wedder nee sperren',
Kontakteer dien Provider oder diene Systemtechnik un informeer se över dat möögliche Sekerheitsproblem.',
'sorbsreason' => 'Diene IP-Adress steiht in de DNSBL vun {{SITENAME}} as apen PROXY.',
'sorbs_create_account_reason' => 'Diene IP-Adress steiht in de DNSBL vun {{SITENAME}} as apen PROXY. Du kannst keen Brukerkonto nee opstellen.',
-'cant-block-while-blocked' => 'Du kannst kene annern Brukers sperren, wenn du sülvst sperrt büst.',
# Developer tools
'lockdb' => 'Datenbank sparren',
'watchlistall2' => 'alle',
'namespacesall' => 'alle',
'monthsall' => 'alle',
-'limitall' => 'all',
# Email address confirmation
'confirmemail' => 'Nettbreefadress bestätigen',
'confirmemail_needlogin' => 'Du musst $1, dat diene Nettbreefadress bestätigt warrt.',
'confirmemail_success' => 'Diene Nettbreefadress is nu bestätigt.',
'confirmemail_loggedin' => 'Diene Nettbreefadress is nu bestätigt.',
-'confirmemail_error' => 'Dat Spiekern vun diene Bestätigung hett nich klappt.',
'confirmemail_subject' => '{{SITENAME}} Nettbreefadress-Bestätigung',
'confirmemail_body' => 'Een, villicht du vun de IP-Adress $1 ut, hett dat Brukerkonto „$2“ mit disse Nettbreefadress op {{SITENAME}} anmellt.
# Special:ComparePages
'comparepages' => 'Sieden verglieken',
-'compare-selector' => 'Siedenversionen verglieken',
'compare-page1' => 'Sied 1',
'compare-page2' => 'Sied 2',
'compare-rev1' => 'Version 1',
'tog-minordefault' => "Markeer alle veraanderingen as 'kleine wieziging'",
'tog-previewontop' => 'De naokiekzied boven t bewarkingsveld zetten',
'tog-previewonfirst' => 'Naokieken bie eerste wieziging',
-'tog-nocache' => 'De tussenopslag van de webkieker uutzetten',
'tog-enotifwatchlistpages' => 'Stuur mien n berichjen over zied- of bestaandswiezigingen uut mien volglieste.',
'tog-enotifusertalkpages' => 'Stuur mien n berichjen as mien overlegzied ewiezigd is.',
'tog-enotifminoredits' => 'Stuur mien oek n berichjen bie kleine bewarkingen van ziejen en bestaanden',
'recentchanges-label-bot' => 'Disse bewarking is uutevoerd deur n bot',
'recentchanges-label-unpatrolled' => 'Disse bewarking is nog niet nao-ekeken',
'recentchanges-legend-newpage' => '$1 - nieje pagina',
-'rcnote' => "Hieronder {{PLURAL:$1|steet de leste bewarking|staon de leste '''$1''' bewarkingen}} van de aofgeleupen {{PLURAL:$2|dag|'''$2''' dagen}} (per: $5, $4).",
'rcnotefrom' => 'Dit bin de wiezigingen sinds <b>$2</b> (maximum van <b>$1</b> wiezigingen).',
'rclistfrom' => 'Bekiek wiezigingen vanaof $1',
'rcshowhideminor' => '$1 kleine wiezigingen',
'undeletebtn' => 'Weerummeplaotsen',
'undeletelink' => 'bekiek/weerummeplaotsen',
'undeleteviewlink' => 'bekieken',
-'undeletereset' => 'Herstel',
'undeleteinvert' => 'Seleksie ummekeren',
'undeletecomment' => 'Reden:',
'undeletedrevisions' => '$1 {{PLURAL:$1|versie|versies}} weerummeplaotst',
'block' => 'Gebruker blokkeren',
'unblock' => 'Gebruker deblokkeren',
'blockip' => 'Gebruker blokkeren',
-'blockip-title' => 'Gebruker blokkeren',
'blockip-legend' => 'n Gebruker of IP-adres blokkeren',
'blockiptext' => 'Gebruuk dit formulier um n IP-adres of gebrukersnaam te blokkeren.
t Is bedoeld um vandalisme te veurkoemen en mut akkederen mit t [[{{MediaWiki:Policy-url}}|beleid]].
'ipadressorusername' => 'IP-adres of gebrukersnaam',
'ipbexpiry' => 'Verlöp nao',
'ipbreason' => 'Reden:',
-'ipbreasonotherlist' => 'aandere reden',
'ipbreason-dropdown' => '*Algemene redens veur t blokkeren
** verkeerde informasie invoeren
** ziejen leegmaken
'ipbsubmit' => 'adres blokkeren',
'ipbother' => 'Aandere tied',
'ipboptions' => '2 uren:2 hours,1 dag:1 day,3 dagen:3 days,1 weke:1 week,2 weken:2 weeks,1 maond:1 month,3 maonden:3 months,6 maonden:6 months,1 jaor:1 year,onbeparkt:infinite',
-'ipbotheroption' => 'aanders',
-'ipbotherreason' => 'Aandere/extra reden:',
'ipbhidename' => 'Verbarg de gebrukersnaam in bewarkingen en liesten',
'ipbwatchuser' => 'Gebrukerszied en overlegzied op volglieste zetten',
'ipb-disableusertalk' => 'Veurkoemen dat disse gebruker tiejens de blokkering de eigen overlegzied kan bewarken',
'sorbs_create_account_reason' => "Joew IP-adres is op-eneumen as open proxyserver in de zwarte lieste van DNS, die'w veur {{SITENAME}} gebruken.
Je kunnen gien gebrukerszied anmaken.",
'xffblockreason' => "n IP-adres dat jie gebruken is eblokkeerd. Dit steet in de kop 'X-Forwarded-For'. De oorspronkelike reden veur de blokkerings is: $1",
-'cant-block-while-blocked' => "Je kunnen aandere gebrukers niet blokkeren a'j zelf oek eblokkeerd bin.",
'cant-see-hidden-user' => "De gebruker die'j proberen te blokkeren is al eblokkeerd en verbörgen.
Umda'j gien rech hebben um gebrukers te verbargen, ku'j de blokkering van de gebruker niet bekieken of bewarken.",
'ipbblocked' => "Je kunnen gien aandere gebrukers (de)blokkeren, umda'j zelf eblokkeerd bin",
'watchlistall2' => 'alles',
'namespacesall' => 'alles',
'monthsall' => 'alles',
-'limitall' => 'alles',
# Email address confirmation
'confirmemail' => 'Bevestig netpostadres',
'confirmemail_needlogin' => 'Je mutten $1 um joew netpostadres te bevestigen.',
'confirmemail_success' => 'Joew netpostadres is bevestigd. Je kunnen noen [[Special:UserLogin|anmelden]] en {{SITENAME}} gebruken.',
'confirmemail_loggedin' => 'Joew netpostadres is noen bevestig.',
-'confirmemail_error' => 'Der is iets fout egaon bie t opslaon van joew bevestiging.',
'confirmemail_subject' => 'Bevestiging netpostadres veur {{SITENAME}}',
'confirmemail_body' => 'Ene mit IP-adres $1, warschienlik jie zelf, hef zien eigen mit dit netpostadres eregistreerd as de gebruker "$2" op {{SITENAME}}.
# Special:ComparePages
'comparepages' => 'Ziejen vergelieken',
-'compare-selector' => 'Ziedversies vergelieken',
'compare-page1' => 'Zied 1',
'compare-page2' => 'Zied 2',
'compare-rev1' => 'Versie 1',
'tog-minordefault' => 'सबै सम्पादनहरुलाई पूर्वनिर्धारित रुपमा सामान्य चिनो लगाउने',
'tog-previewontop' => 'सम्पादन सन्दुक अगि पूर्वरुप देखाउने',
'tog-previewonfirst' => 'पहिलो सम्पादनमा पूर्वरुप देखाउने',
-'tog-nocache' => 'ब्राउजर पृष्ठ क्यासिङ्ग निस्क्रिय पार्ने',
'tog-enotifwatchlistpages' => 'मेरो निगरानी सूचीमा रहेका पृष्ठ अथवा फाइलहरु परिवर्तन गरिए मलाई ई-मेल गरियोस्',
'tog-enotifusertalkpages' => 'मेरो प्रयोगकर्ता वार्ता पृष्ठ परिवर्तन गरिए मलाई ई-मेल गर्ने',
'tog-enotifminoredits' => 'पृष्ठहरु र फाइलहरुको सामान्य सम्पादन भएमा पनि मलाई ई-मेल गरियोस्',
'namespaceprotected' => " '''$1''' नेमस्पेसमा रहेका पृष्ठहरु सम्पादन गर्ने अनुमति यहाँलाई छैन ।",
'customcssprotected' => 'तपाईलाई यस पृष्ठ सम्पादन गर्ने अनुमति छैन, किनकी यसमा कुनै अर्को प्रयोगकर्ताको व्यक्तिगत अभिरुचीहरु संग्रहित छन् ।',
'customjsprotected' => 'तपाईलाई यस जाभास्कृप्ट पृष्ठ सम्पादन गर्ने अनुमति छैन, किनकी यसमा कुनै अर्को प्रयोगकर्ताको व्यक्तिगत अभिरुचीहरु संग्रहित छन् ।',
+'mycustomcssprotected' => 'यस CSSपृष्ठ सम्पादन गर्नको लागि लागि तपाईँलाई अनुमति छैन ।',
+'mycustomjsprotected' => 'यस JavaScript पृष्ठ सम्पादन गर्नको लागि लागि तपाईँलाई अनुमति छैन ।',
'ns-specialprotected' => 'विशेष पृष्ठ सम्पादन गर्न सकिदैन ।',
'titleprotected' => ' [[User:$1|$1]]द्वारा यो शीर्षक निर्माणहुनबाट जोगाइएको छ।
कारण "\'\'$2\'\'" हो ।',
'gotaccount' => "के तपाईँसँग पहिले देखि नै खाता छ ? '''$1''' ।",
'gotaccountlink' => 'लग इन',
'userlogin-resetlink' => 'प्रवेश सम्बन्धी विवरणहरु बिर्सनु भयो?',
-'userlogin-resetpassword-link' => 'पासवरà¥\8dड परिवरà¥\8dतन à¤\97रà¥\8dनà¥\81हà¥\8bसà¥\8d',
+'userlogin-resetpassword-link' => 'पासवरà¥\8dड à¤à¥\81लà¥\8dनà¥\81à¤à¤¯à¥\8b?',
'userlogin-createanother' => 'अर्को खाता खोल्नुहोस्',
'createacct-join' => 'तपाईँका जानकारीहरू तल थप्नुहोस् ।',
'createacct-another-join' => 'नयाँ खाताको जानकारी तल थप्नुहोस ।',
'createacct-another-submit' => 'अर्को खाता सिर्जना गर्नुहोस्',
'createacct-benefit-heading' => '{{SITENAME}} तपाईँ जस्तै मानिसहरूद्वारा सिर्जना गरिएको हो ।',
'createacct-benefit-body1' => '{{PLURAL:$1|सम्पादन|सम्पादनहरू}}',
+'createacct-benefit-body2' => '{{PLURAL:$1|पृष्ठ|पृष्ठहरू}}',
+'createacct-benefit-body3' => 'हालैका {{PLURAL:$1|योगदान कर्ता|योगदान कर्ताहरू}}',
'badretype' => 'तपाईंले दिनुभएको पासवर्ड मिल्दैन।',
'userexists' => 'तपाईले प्रविष्ट गर्नुभएको प्रयोगकर्ताको नाम पहिले देखिनै प्रयोगमा छ ।
कृपया फरक नाम छान्नुहोस् ।',
'loginerror' => 'प्रवेश त्रुटि',
+'createacct-error' => 'खाता बनाउँदा त्रुटि',
'createaccounterror' => 'खाता बनाउन सकिएन: $1',
'nocookiesnew' => 'तपाईँको खाता बनाइयो, तर तपाईँ प्रवेश गर्नुभएको छैन ।
{{SITENAME}} ले प्रयोगकर्ता प्रवेश गराउन कुकीहरू प्रयोग गर्छ ।
'changeemail-submit' => 'इमेल परिवर्तन गर्ने',
'changeemail-cancel' => 'रद्द गर्ने',
+# Special:ResetTokens
+'resettokens' => 'टोकन पूर्वरुपमा फर्काउने',
+'resettokens-no-tokens' => 'पूर्वरुपमा फर्काउन कुनै पनि टोकन छैन ।',
+'resettokens-legend' => 'टोकनहरू पूर्वरुपमा फर्काउने',
+'resettokens-tokens' => 'टोकनहरू:',
+
# Edit page toolbar
'bold_sample' => 'गाढा अक्षर',
'bold_tip' => 'गाढा अक्षर',
यो मेटिएको जस्तो देखिन्छ ।',
'edit-conflict' => 'द्वन्द्व सम्पादन गर्ने ।',
'edit-no-change' => 'तपाईँको सम्पादन वेवास्ता गरियो, किनकि कुनै पनि पाठ परिवर्तन गरिएन ।',
+'postedit-confirmation' => 'तपाईंको सम्पादन संग्रह गरिएको थियो ।',
'edit-already-exists' => 'नयाँ पृष्ठ बनाउन सकिएन ।
यो पहिले देखि नै रहेको छ।',
+'defaultmessagetext' => 'डिफल्ट सन्देश पाठ',
+'invalid-content-data' => 'अमान्य सामग्री डेटा',
# Content models
'content-model-wikitext' => 'विकिपाठ',
'revdelete-hide-user' => 'सम्पादकको प्रयोगकर्ता नाम/IP लुकाउने',
'revdelete-hide-restricted' => 'प्रवन्धक वा अरुबाट डेटा कम लिने',
'revdelete-radio-same' => '(परिवर्तन नगर्नुहोस्)',
-'revdelete-radio-set' => 'हà¥\81नà¥\8dà¤\9b',
-'revdelete-radio-unset' => 'हà¥\81à¤\81दà¥\88न',
+'revdelete-radio-set' => 'लà¥\81à¤\95ाà¤\87à¤\8fà¤\95à¥\8b',
+'revdelete-radio-unset' => 'दà¥\87à¤\96िनà¥\87',
'revdelete-suppress' => 'प्रवन्धक वा अरुबाट डेटा कम लिने',
'revdelete-unsuppress' => 'पुनर्स्थापित पुनरावृत्तिबाट बन्देज हटाउने',
'revdelete-log' => 'कारण :',
'recentchanges-label-bot' => 'यो सम्पादन बोट द्वारा गरिएको थियो',
'recentchanges-label-unpatrolled' => 'यो सम्पादन अहिले सम्म पट्रोल गरिएको छैन',
'recentchanges-legend-newpage' => '$1 - नयाँ पृष्ठ',
-'rcnote' => "तल पछिल्ला {{PLURAL:$2|day|'''$2''' दिनहरु}} मा $5, $4 सम्म भएका {{PLURAL:$1|is '''1''' change|पछिल्ला '''$1''' परिवर्तनहरु}} देखाइएको छ ।",
+'recentchanges-legend-plusminus' => "(''±१२३'')",
'rcnotefrom' => "'''$2''' देखिका परिवर्तनहरु तल ('''$1''' सम्मका देखाइन्छ)।",
'rclistfrom' => '$1 देखिका नयाँ परिवर्तनहरू देखाउनु',
'rcshowhideminor' => '$1 सामान्य सम्पादन',
'rc-change-size' => '$1',
'rc-change-size-new' => 'परिवर्तनपछि $1 {{PLURAL:$1|बाइट|बाइट}}',
'newsectionsummary' => '/* $1 */ नयाँ खण्ड',
-'rc-enhanced-expand' => 'à¤\9cानà¤\95ारà¥\80 दà¥\87à¤\96ाà¤\89नà¥\87( à¤\9cाà¤à¤¾ सà¥\8dà¤\95à¥\8dरिपà¥\8dà¤\9f à¤\9aाहिनà¥\87)',
+'rc-enhanced-expand' => 'विसà¥\8dतà¥\83त à¤\9cानà¤\95ारà¥\80 हà¥\87रà¥\8dनà¥\87',
'rc-enhanced-hide' => 'जानकारी लुकाउने',
'rc-old-title' => 'मौलिक तौरमा "$1" रुपमा बनाइएको',
'randompage' => 'कुनै एक लेख',
'randompage-nopages' => '{{PLURAL:$2| $1 नाम भएको कुनै पृष्ट छैन|$1 नाम भएका कुनै पृष्टहरु छैनन्}}',
+# Random page in category
+'randomincategory-selectcategory-submit' => 'जाने',
+
# Random redirect
'randomredirect' => 'कुनै एउटा अनुप्रेषितमा जाने',
'randomredirect-nopages' => '"$1" नामस्थानमा अनुप्रेषित छैन।',
'undeletebtn' => 'पूर्वावस्थामा ल्याउनुहोस्',
'undeletelink' => 'हेर्ने/पूर्वरुपमा फर्काउने',
'undeleteviewlink' => 'अवलोकन',
-'undeletereset' => 'रिसेट गर्नुहोस्',
'undeleteinvert' => ' चयन उल्ट्याउने',
'undeletecomment' => 'कारण :',
'undeletedrevisions' => '{{PLURAL:$1|एउटा संशोधन|$1 संशोधनहरु}} पुनर्स्थापित गरियो',
'undeletedpage' => "'''$1लाई पूर्वावस्थामा ल्याइयो'''
भर्खरै मेटाइएको रिकर्डहरु र पुनर्स्थापनाहरु हेर्न [[Special:Log/delete|मेटाइएको लग]]मा जानुहोस्।",
'undelete-header' => 'भर्खर मेटिएका पृष्ठहरु हेर्न [[Special:Log/delete|मेटाइएका लग]]मा जानुहोस्।',
+'undelete-search-title' => 'मेटिएका पृष्ठहरु खोज्नुहोस',
'undelete-search-box' => 'मेटिएका पृष्ठहरु खोज्नुहोस',
'undelete-search-prefix' => 'बाट सुरु हुने पृष्ठहरु देखाउनुहोस :',
'undelete-search-submit' => 'खोजी गर्नुहोस्',
'undelete-cleanup-error' => 'प्रोगमा नआएको "$1" अभिलेख फाइल मेट्दा त्रुटी',
'undelete-missing-filearchive' => 'फाइल अभिलेख आइडी $1 पुन:स्थापित गर्दा त्रुटी किनकी यो डेटाबेसमा छैन।
यो पहिले नै पुन: स्थापित गरिसकिएको हुनछक्छ ।',
+'undelete-error' => 'पृष्ठ मेट्दा त्रुटि भयो',
'undelete-error-short' => '$1 मेटाएको रद्द गर्दा त्रुटी भयो',
'undelete-error-long' => 'फाइल $1 मेट्दै गर्दा त्रुटि आइलाग्यो।',
'undelete-show-file-confirm' => 'के तपाईंले $3 मा $2 बाट मेटिएको "<nowiki>$1</nowiki>" फाइलको मेटिएको संस्करण हेर्ने निश्चय लिनु भएकै हो?',
'contributions' => '{{GENDER:$1|प्रयोगकर्ता}}का योगदानहरू',
'contributions-title' => '$1को प्रयोगकर्ता योगदानहरु',
'mycontris' => 'योगदानहरु',
-'contribsub2' => ' $1 ($2)को लागि',
+'contribsub2' => ' {{GENDER:$3|$1}} ($2)को लागि',
'nocontribs' => 'यस मापदण्ड अनुसार परिवर्त पाइएन।',
'uctop' => '(वर्तमान)',
'month' => 'महिना देखि (र पहिले):',
'block' => 'प्रयोगकर्तालाई रोकलगाउने',
'unblock' => 'प्रयोगकर्ता माथिको प्रतिबन्ध हटाउने',
'blockip' => 'प्रयोगकर्तालाइ निषेध गर्ने',
-'blockip-title' => 'प्रयोगकर्तालाई रोक लगाउनुहोस्',
'blockip-legend' => 'प्रयोगकर्ता रोक्नुहोस',
'blockiptext' => 'विशेष IP ठेगाना अथवा प्रयोगकर्तालाई रोक लगाउन निम्न प्रपत्र (form) प्रयोग गर्नुहोस्।
यसो गर्नुको कारण [[{{MediaWiki:Policy-url}}|नीति]] अनुरुप विकिमा गरिने बर्बरताका कार्य रोक्नु मात्र हो।
'ipadressorusername' => ' ip ठेगाना या प्रयोगकर्ता नाम :',
'ipbexpiry' => 'समाप्ति:',
'ipbreason' => 'कारण:',
-'ipbreasonotherlist' => 'अन्य कारण',
'ipbreason-dropdown' => '*रोक लगाउनुका समान्य कारणहरु
** झूटो सूचना दिइएको
** पृष्ठहरुबाट सामाग्रीहरु हटाइएको
'ipbsubmit' => 'यो प्रयोगकर्तालाई रोक्नुहोस',
'ipbother' => 'अरु समय:',
'ipboptions' => '२ घण्टाहरु:2 hours,१ दिन :1 day,३ दिनहरु:3 days,१ हप्ता:1 week,२ हप्ताहरु:2 weeks,१ महिना:1 month,३ महिनाहरु:3 months,६ महिनाहरु:6 months,१ वर्ष:1 year,अनगिन्ती:infinite',
-'ipbotheroption' => 'अन्य',
-'ipbotherreason' => 'अन्य / थप कारणहरु:',
'ipbhidename' => 'प्रयोगकर्ताको नाम सम्पादनबाट र सूचीबाट हटाउने',
'ipbwatchuser' => 'यो प्रयोगकर्ताको प्रयपोगकर्ता र वार्तलाप पृष्ठ हेर्नुहोस्',
'ipb-disableusertalk' => 'यस प्रयोगकर्तालाई निषेधित समयमा आफ्नै वार्तालाप पृष्ठ सम्पादन गर्न नदिने',
'sorbsreason' => 'तपाईको IP ठेगाना खुल्ला प्रोक्सीको रुपमा DNSBL मा सुचीकरण गरिएको छ यसलाई{{SITENAME}}ले प्रयोगमा ल्याएको छ।',
'sorbs_create_account_reason' => 'तपाईको IP ठेगाना खुल्ला प्रोक्सीको रुपमा DNSBL मा सुचीकरण गरिएको छ यसलाई{{SITENAME}}ले प्रयोगमा ल्याएको छ।
तपाईले खाता खोल्न सक्नुहुन्न ।',
-'cant-block-while-blocked' => 'तपाईलाई रोक लागेको बेला अर्को प्रयोगकर्ताहरुलाई रोक लगाउन सक्नुहुन्न ।',
'cant-see-hidden-user' => 'तपाईले रोक लगाउन खोज्नु भएको प्रयोगकर्ता पहिले नै रोकलगाइ लुकाइ सकिएको छ ।
तपाईसँग hideuser अधिकार नभएकोले यसलाई हेर्ना या सम्पादन गर्न सक्नुहुन्न ।',
'ipbblocked' => 'तपाईंले अरु प्रयोगकर्ताहरुलाई प्रतिबन्धित गर्न वा उनीहरुको प्रतिबन्ध खोल्न सक्नुहुन्न किनभनें तपाईं आफैं प्रतिबन्धित हुनुहुन्छ।',
# Info page
'pageinfo-title' => ' "$1"को लागि जाकारी',
-'pageinfo-header-edits' => 'सम्पादनहरु',
+'pageinfo-header-basic' => 'साधारण जानकारी',
+'pageinfo-header-edits' => 'सम्पादन इतिहास',
+'pageinfo-header-restrictions' => 'पृष्ठ सुरक्षा',
+'pageinfo-header-properties' => 'पृष्ठ गुणहरू',
+'pageinfo-display-title' => 'प्रदर्शन शिर्षक',
'pageinfo-views' => 'अवलोकन संख्या',
'pageinfo-watchers' => 'निगरानी कर्ताहरुको संख्या',
'pageinfo-edits' => 'सम्पादन संख्या',
'pageinfo-authors' => 'फरक सम्पादकरुको संख्या',
+'pageinfo-redirectsto-info' => 'जानकारी',
+'pageinfo-contentpage-yes' => 'हो',
+'pageinfo-protect-cascading-yes' => 'हो',
# Skin names
'skinname-cologneblue' => 'कोलोग्ने निलो',
'days' => '{{PLURAL:$1|$1 दिन|$1 दिनहरु}}',
'ago' => '$1 पहिले',
+# Human-readable timestamps
+'monday-at' => 'सोमबार $1 मा',
+'tuesday-at' => 'मङ्गलबार $1मा',
+'wednesday-at' => 'बुधबार $1मा',
+'thursday-at' => 'बिहिबार $1मा',
+'friday-at' => 'शुक्रबार $1मा',
+'saturday-at' => 'शनिबार $1मा',
+'sunday-at' => 'आइतबार $1मा',
+'yesterday-at' => 'हिजो $1मा',
+
# Bad image list
'bad_image_list' => '(* बाट शुरु हुने पंक्ति)को विषय सूची मात्र मान्य छ। पंक्तिको पहिलो लिङ्क नराम्रो फाइलसित लिङ्क हुनैपर्छ । एउटै पंक्तिमा कुनै पछिबाट हुने लिंकलाई अपवाद मानिनेछ अर्थात् जुन पृष्ठमा फाइल इन-लाइन हुनसक्छ।',
'watchlistall2' => 'सबै',
'namespacesall' => 'सबै',
'monthsall' => 'सबै',
-'limitall' => 'सबै',
# Email address confirmation
'confirmemail' => 'इमेल ठेगाना पक्का गर्नुहोस्',
'confirmemail_success' => 'तपाईको इमेल ठेगाना प्रमाणिकरण गरिएको छ।
तपाई [[Special:UserLogin|प्रवेश गरी]] विकिको मजा लिन सक्नुहुन्छ ।',
'confirmemail_loggedin' => 'तपाईको इमेल ठेगाना प्रमाणित भयो।',
-'confirmemail_error' => 'तपाईंको निश्चयलाई संग्रह गर्दा केहि त्रुटि भएकोछ।',
'confirmemail_subject' => '{{SITENAME}} ई मेलl ठेगानाको पुष्टि',
'confirmemail_body' => 'कसैले, सायद तपाईंले, आई पी ठेगाना $1बाट,
{{SITENAME}}मा एउटा खाता "$2"को नाममा यस ई मेल ठेगानामा पञ्जीकरण गरेकोछ।
# Special:ComparePages
'comparepages' => 'पृष्ठहरु दाज्ने',
-'compare-selector' => 'पृष्ठ संस्करणहरु दाज्ने',
'compare-page1' => 'पृष्ठ 1',
'compare-page2' => 'पृष्ठ 2',
'compare-rev1' => 'संशोधन 1',
'tog-minordefault' => 'Mijn bewerkingen als ‘klein’ markeren',
'tog-previewontop' => 'Voorvertoning boven bewerkingsveld weergeven',
'tog-previewonfirst' => 'Voorvertoning bij eerste bewerking weergeven',
-'tog-nocache' => "Cachen van pagina's door de browser uitschakelen",
'tog-enotifwatchlistpages' => 'Mij e-mailen bij bewerkingen van pagina’s of bestanden op mijn volglijst',
'tog-enotifusertalkpages' => 'Mij e-mailen als iemand mijn overlegpagina wijzigt',
'tog-enotifminoredits' => 'Mij e-mailen bij kleine bewerkingen van pagina’s en bestanden op mijn volglijst',
'recentchanges-label-plusminus' => 'Deze paginagrootte is met dit aantal bytes gewijzigd',
'recentchanges-legend-newpage' => "Zie ook de [[Special:NewPages|Lijst met nieuwe pagina's]].",
'recentchanges-legend-plusminus' => "(''±123'')",
-'rcnote' => "Hieronder {{PLURAL:$1|staat de laatste bewerking|staan de laatste '''$1''' bewerkingen}} in de laatste {{PLURAL:$2|dag|'''$2''' dagen}}, op $4 om $5.",
'rcnotefrom' => "Wijzigingen sinds '''$2''' (met een maximum van '''$1''' wijzigingen).",
'rclistfrom' => 'Wijzigingen bekijken vanaf $1',
'rcshowhideminor' => 'Kleine wijzigingen $1',
'undeletebtn' => 'Terugplaatsen',
'undeletelink' => 'bekijken/terugplaatsen',
'undeleteviewlink' => 'bekijken',
-'undeletereset' => 'Formulier wissen',
'undeleteinvert' => 'Selectie omkeren',
'undeletecomment' => 'Reden:',
'undeletedrevisions' => '$1 {{PLURAL:$1|versie|versies}} teruggeplaatst',
'block' => 'Gebruiker blokkeren',
'unblock' => 'Gebruiker deblokkeren',
'blockip' => 'Gebruiker blokkeren',
-'blockip-title' => 'Gebruiker blokkeren',
'blockip-legend' => 'Gebruiker blokkeren',
'blockiptext' => "Gebruik het onderstaande formulier om schrijftoegang voor een gebruiker of IP-adres in te trekken.
Doe dit alleen als bescherming tegen vandalisme en in overeenstemming met het [[{{MediaWiki:Policy-url}}|beleid]].
'ipadressorusername' => 'IP-adres of gebruikersnaam:',
'ipbexpiry' => 'Vervalt (maak een keuze):',
'ipbreason' => 'Reden:',
-'ipbreasonotherlist' => 'Andere reden',
'ipbreason-dropdown' => "*Veel voorkomende redenen voor blokkades
** Foutieve informatie invoeren
** Verwijderen van informatie uit pagina's
'ipbsubmit' => 'Deze gebruiker blokkeren',
'ipbother' => 'Andere duur:',
'ipboptions' => '2 uur:2 hours,1 dag:1 day,3 dagen:3 days,1 week:1 week,2 weken:2 weeks,1 maand:1 month,3 maanden:3 months,6 maanden:6 months,1 jaar:1 year,onbepaald:infinite',
-'ipbotheroption' => 'ander verval',
-'ipbotherreason' => 'Andere/extra reden:',
'ipbhidename' => 'Gebruiker in bewerkingen en lijsten verbergen',
'ipbwatchuser' => 'Gebruikerspagina en overlegpagina op volglijst plaatsen',
'ipb-disableusertalk' => 'Voorkomen dat deze gebruiker tijdens de blokkade de eigen overlegpagina kan bewerken',
'sorbs_create_account_reason' => 'Uw IP-adres staat bekend als open proxyserver in de DNS-blacklist die {{SITENAME}} gebruikt.
U kunt geen gebruiker registreren.',
'xffblockreason' => 'Een IP-adres dat u gebruikt is geblokkeerd. Dit staat de X-Forwarded-For van de header. De oorspronkelijke blokkadereden is: $1',
-'cant-block-while-blocked' => 'U kunt andere gebruikers niet blokkeren terwijl u zelf geblokkeerd bent.',
'cant-see-hidden-user' => 'De gebruiker die u probeert te blokken is al geblokkeerd en verborgen.
Omdat u het recht "hideuser" niet hebt, kunt u de blokkade van de gebruiker niet bekijken of bewerken.',
'ipbblocked' => 'U kunt geen andere gebruikers (de)blokkeren, omdat u zelf geblokkeerd bent',
'watchlistall2' => 'alles',
'namespacesall' => 'alle',
'monthsall' => 'alle',
-'limitall' => 'alle',
# Email address confirmation
'confirmemail' => 'E-mailadres bevestigen',
'confirmemail_success' => 'Uw e-mailadres is bevestigd.
U kunt zich nu [[Special:UserLogin|aanmelden]] en de wiki gebruiken.',
'confirmemail_loggedin' => 'Uw e-mailadres is nu bevestigd.',
-'confirmemail_error' => 'Er is iets verkeerd gegaan tijdens het opslaan van uw bevestiging.',
'confirmemail_subject' => 'Bevestiging e-mailadres voor {{SITENAME}}',
'confirmemail_body' => 'Iemand, waarschijnlijk u, met het IP-adres $1,
heeft zich met dit e-mailadres geregistreerd als gebruiker "$2" op {{SITENAME}}.
# Special:ComparePages
'comparepages' => "Pagina's vergelijken",
-'compare-selector' => 'Paginaversies vergelijken',
'compare-page1' => 'Pagina 1',
'compare-page2' => 'Pagina 2',
'compare-rev1' => 'Versie 1',
'tog-minordefault' => 'Merk endringar som «småplukk» som standard',
'tog-previewontop' => 'Vis førehandsvisinga før endringsboksen',
'tog-previewonfirst' => 'Førehandsvis første endring',
-'tog-nocache' => 'Deaktiver nettlesaren sitt mellomlager («cache»)',
'tog-enotifwatchlistpages' => 'Send meg ein e-post når ei side eller ei fil på overvakingslista mi vert endra',
'tog-enotifusertalkpages' => 'Send e-post når brukarsida mi vert endra',
'tog-enotifminoredits' => 'Send meg e-post sjølv for mindre endringar på sider og filer',
'recentchanges-label-bot' => 'Denne endringa vart gjort av ein bot',
'recentchanges-label-unpatrolled' => 'Endringa er ikkje patruljert enno',
'recentchanges-legend-newpage' => '$1 – ny side',
-'rcnote' => "Nedanfor er {{PLURAL:$1|den siste endringa gjord|dei siste '''$1''' endringane gjorde}} {{PLURAL:$2|den siste dagen|dei siste '''$2''' dagane}}, for $4, kl. $5.",
'rcnotefrom' => "Nedanfor vert opp til '''$1''' endringar sidan ''' $2''' viste.",
'rclistfrom' => 'Vis nye endringar sidan $1',
'rcshowhideminor' => '$1 småplukk',
'undeletebtn' => 'Attopprett',
'undeletelink' => 'sjå/attopprett',
'undeleteviewlink' => 'syn',
-'undeletereset' => 'Nullstill',
'undeleteinvert' => 'Inverter val',
'undeletecomment' => 'Årsak:',
'undeletedrevisions' => '{{PLURAL:$1|Éin versjon|$1 versjonar}} attoppretta.',
'block' => 'Blokker brukar',
'unblock' => 'Opphev blokkeringa av brukaren',
'blockip' => 'Blokker brukar',
-'blockip-title' => 'Blokker brukar',
'blockip-legend' => 'Blokker brukar',
'blockiptext' => 'Bruk skjemaet nedanfor for å blokkere skrivetilgangen frå ei spesifikk IP-adresse eller brukarnamn. Dette bør berre gjerast for å hindre hærverk, og i samsvar med [[{{MediaWiki:Policy-url}}|retningslinene]].',
'ipadressorusername' => 'IP-adresse eller brukarnamn',
'ipbexpiry' => 'Opphøyrstid:',
'ipbreason' => 'Årsak:',
-'ipbreasonotherlist' => 'Annan grunn',
'ipbreason-dropdown' => '*Vanlege grunnar for blokkering
** Legg inn usann tekst/tull
** Fjernar innhald frå sider
'ipbsubmit' => 'Blokker brukaren',
'ipbother' => 'Anna tid',
'ipboptions' => '2 timar:2 hours,1 dag:1 day,3 dagar:3 days,1 veke:1 week,2 veker:2 weeks,1 månad:1 month,3 månader:3 months,6 månader:6 months,1 år:1 year,endelaus:infinite',
-'ipbotheroption' => 'anna tid',
-'ipbotherreason' => 'Annan grunn/tilleggsgrunn:',
'ipbhidename' => 'Gøym brukarnamnet frå endringar og lister',
'ipbwatchuser' => 'Overvak brukarsida og diskusjonssida til brukaren',
'ipb-disableusertalk' => 'Hindra brukaren i å endra eiga diskusjonsside medan blokkeringa gjeld',
'sorbsreason' => 'IP-adressa di er lista som ein open mellomtenar i DNSBL.',
'sorbs_create_account_reason' => 'IP-adressa di er lista som ein open mellomtenar i DNSBL, og difor får du ikkje registrert deg.',
'xffblockreason' => 'Ei IP-adresse i X-Forwarded-For-tittelen, anten di eller den som høyrer til ein proksytenar du nyttar, er blokkert. Den opphavlege blokkeringsgrunnen var: $1',
-'cant-block-while-blocked' => 'Du kan ikkje blokkere andre medan du sjølv er blokkert.',
'cant-see-hidden-user' => 'Brukaren du prøver å blokkera har allereie vorte blokkert og skjult. Sidan du ikkje har rett til å skjula brukarar, kan du ikkje sjå eller endra blokkeringa til brukaren.',
'ipbblocked' => 'Du kan ikkje blokkera eller avblokkera andre brukarar sidan du sjølv er blokkert',
'ipbnounblockself' => 'Du kan ikkje avblokkera deg sjølv',
'watchlistall2' => 'alle',
'namespacesall' => 'alle',
'monthsall' => 'alle',
-'limitall' => 'alle',
# Email address confirmation
'confirmemail' => 'Stadfest e-postadresse',
'confirmemail_needlogin' => 'Du må $1 for å stadfeste e-postadressa di.',
'confirmemail_success' => 'E-postadressa di er stadfest. Du kan no logge inn og kose deg med {{SITENAME}}.',
'confirmemail_loggedin' => 'E-postadressa di er stadfest.',
-'confirmemail_error' => 'Noko gjekk gale når stadfestinga di skulle lagrast.',
'confirmemail_subject' => 'Stadfesting av e-postadresse frå {{SITENAME}}',
'confirmemail_body' => 'Nokon, truleg du, frå IP-adressa $1, har registrert kontoen «$2» med di e-postadresse på {{SITENAME}}.
# Special:ComparePages
'comparepages' => 'Samanlikna sider',
-'compare-selector' => 'Samanlikn sideversjonar',
'compare-page1' => 'Side 1',
'compare-page2' => 'Side 2',
'compare-rev1' => 'Versjon 1',
'tog-minordefault' => 'Swaya diphetogo ka moka bjalo ka diphetogo tše nnyenyane',
'tog-previewontop' => 'Bontšha Ponopele pele ga lepokisi la diphetogo',
'tog-previewonfirst' => 'Bontšha Ponopeleka phetogo ya pele',
-'tog-nocache' => "Thibela go tsenya matlakala go segakolodi (''cache'')",
'tog-enotifwatchlistpages' => 'Nthomele molaetša ge letlaka leo ke le tlhapetšego le eba le diphetogo',
'tog-enotifusertalkpages' => 'Nromele molaetša ge letlakala la Dipoledišano laka le fetoga',
'tog-enotifminoredits' => 'Ethomele e-mail ge goba le diphetogo tše nnyenyane go matlakala',
'recentchanges-label-minor' => 'Ye ke phetogo ye nnyenyane',
'recentchanges-label-bot' => 'Phetogo ye e dirilwe ke "bot"',
'recentchanges-label-unpatrolled' => 'Phetogo ye ga ese e "patrollwe"',
-'rcnote' => "Go latela {{PLURAL:$1|phetogo ye '''1'''|diphetogo tša bofelo tše '''$1'''}} ka {{PLURAL:$2|letšatši|matšatši a '''$2'''}} a go feta, go tloga $4, $5.",
'rcnotefrom' => "Tlase ke diphetogo go tloga ka '''$2''' (go fihla ka '''$1''').",
'rclistfrom' => 'Laêtša dipheto tše mfsa go thoma go $1',
'rcshowhideminor' => '$1 ya diphetogo tše nnyenyane',
'blockip' => 'Thibela mošomiši go tsena',
'ipbexpiry' => 'Fetatšatši:',
'ipbreason' => 'Lebaka:',
-'ipbreasonotherlist' => 'Lebaka le lengwe',
'ipbsubmit' => 'Thiba mošomiši yo',
'ipbother' => 'Nako yengwe:',
'ipboptions' => '2 diiri:2 hours,1 letšatši:1 day,3 matšatši:3 days,1 beke:1 week,2 dibeke:2 weeks,1 kgwedi:1 month,3 digkwedi:3 months,6 dikgwedi:6 months,1 ngwaga:1 year,ga efele:infinite',
-'ipbotheroption' => 'yengwe',
'ipblocklist' => "Bašumiši bao bathibilwego(''blocked'')",
'ipblocklist-submit' => 'Fetleka',
'emailblock' => 'e-mail e thibilwe',
'tog-minordefault' => 'Considerar mas modificacions coma menoras per defaut',
'tog-previewontop' => 'Far veire la previsualizacion al dessús de la zòna de modificacion',
'tog-previewonfirst' => 'Far veire la previsualizacion al moment de la primièra edicion',
-'tog-nocache' => "Desactivar l'escondedor de las paginas pel navigador",
'tog-enotifwatchlistpages' => 'M’avertir per corrièr electronic quand una pagina o un fichièr de ma lista de seguiment es modificat',
'tog-enotifusertalkpages' => 'M’avertir per corrièr electronic en cas de modificacion de ma pagina de discussion',
'tog-enotifminoredits' => 'M’avertir per corrièr electronic quitament en cas de modificacions menoras de las paginas o dels fichièrs',
'recentchanges-label-bot' => 'Aqueste cambiament es estat efectuat per un bòt.',
'recentchanges-label-unpatrolled' => 'Aqueste cambiament es pas estat verificat encara.',
'recentchanges-legend-newpage' => '$1 - pagina novèla',
-'rcnote' => 'Vaquí {{PLURAL:$1|lo darrièr cambiament|los $1 darrièrs cambiaments}} dempuèi {{PLURAL:$2|lo darrièr jorn|los <b>$2</b> darrièrs jorns}}, determinat{{PLURAL:$1||s}} lo $4, a $5.',
'rcnotefrom' => "Vaquí los cambiaments efectuats dempuèi lo '''$2''' ('''$1''' al maximum).",
'rclistfrom' => 'Afichar las modificacions novèlas dempuèi lo $1.',
'rcshowhideminor' => '$1 los cambiaments menors',
'undeletebtn' => 'Restablir',
'undeletelink' => 'veire/restablir',
'undeleteviewlink' => 'veire',
-'undeletereset' => 'Reïnicializar',
'undeleteinvert' => 'Inversar la seleccion',
'undeletecomment' => 'Motiu :',
'undeletedrevisions' => '{{PLURAL:$1|1 revision restablida|$1 revisions restablidas}}',
'block' => 'Blocar un utilizaire',
'unblock' => 'Desblocar un utilizaire',
'blockip' => 'Blocar en escritura',
-'blockip-title' => 'Blocar l’utilizaire',
'blockip-legend' => 'Blocar en escritura',
'blockiptext' => "Utilizatz lo formulari çaijós per blocar l'accès a las modificacions a partir d'una adreça IP especifica o d'un nom d'utilizaire.
Una tala mesura deu pas èsser presa pas que per empachar lo vandalisme e en acòrdi amb las [[{{MediaWiki:Policy-url}}|règlas intèrnas]].
'ipadressorusername' => 'Adreça IP o nom d’utilizaire :',
'ipbexpiry' => 'Durada del blocatge :',
'ipbreason' => 'Motiu :',
-'ipbreasonotherlist' => 'Autre motiu',
'ipbreason-dropdown' => '* Motius de blocatge mai frequents
** Vandalisme
** Insercion d’informacions faussas
'ipbsubmit' => 'Blocar aqueste utilizaire',
'ipbother' => 'Autra durada',
'ipboptions' => '2 oras:2 hours,1 jorn:1 day,3 jorns:3 days,1 setmana:1 week,2 setmanas:2 weeks,1 mes:1 month,3 meses:3 months,6 meses:6 months,1 an:1 year,indefinidament:infinite',
-'ipbotheroption' => 'autre',
-'ipbotherreason' => 'Motiu diferent o suplementari',
'ipbhidename' => 'Amagar lo nom d’utilizaire de las modificacions e de las listas',
'ipbwatchuser' => "Seguir las paginas d'utilizaire e de discussion d'aqueste utilizaire",
'ipb-disableusertalk' => "Empachar l'utilizaire de modificar sa pagina de discussion pendent lo blocatge",
'sorbsreason' => 'Vòstra adreça IP es listada en tant que mandatari (proxy) dobèrt DNSBL per {{SITENAME}}.',
'sorbs_create_account_reason' => 'Vòstra adreça IP es listada en tant que mandatari (proxy) dobèrt DNSBL per {{SITENAME}}.
Podètz pas crear un compte',
-'cant-block-while-blocked' => "Podètz pas blocar d'autres utilizaires pendent que sètz blocat(ada).",
'cant-see-hidden-user' => "L'utilizaire qu'ensajatz de blocar es ja estat blocat e amagat. Sens lo drech hideuser, podètz pas veire o modificar lo blocatge de l'utilizaire.",
'ipbblocked' => "Podètz pas blocar o desblocar d'autres utilizaire, perque vos {{GENDER:|meteis|meteissa|meteis}} sètz {{GENDER:|blocat|blocada|blocat}}.",
'ipbnounblockself' => 'Sètz pas autorizat a vos desblocar vos meteis',
'watchlistall2' => 'tot',
'namespacesall' => 'Totes',
'monthsall' => 'totes',
-'limitall' => 'totes',
# Email address confirmation
'confirmemail' => "Confirmar l'adreça de corrièr electronic",
'confirmemail_needlogin' => 'Vos cal vos $1 per confirmar vòstra adreça de corrièr electronic.',
'confirmemail_success' => 'Vòstra adreça de corrièr electronic es confirmada. Ara, vos podètz connectar e aprofechar del wiki.',
'confirmemail_loggedin' => 'Ara, vòstra adreça es confirmada',
-'confirmemail_error' => "Un problèma s'es produch en volent enregistrar vòstra confirmacion.",
'confirmemail_subject' => 'Confirmacion d’adreça de corrièr electronic per {{SITENAME}}',
'confirmemail_body' => "Qualqu’un, probablament vos,e amb l’adreça IP $1, a enregistrat un compte « $2 » amb aquesta adreça de corrièr electronic sul site {{SITENAME}}.
# Special:ComparePages
'comparepages' => 'Comparar de paginas',
-'compare-selector' => 'Comparar las versions de las paginas',
'compare-page1' => 'Pagina 1',
'compare-page2' => 'Pagina 2',
'compare-rev1' => 'Version 1',
'tog-minordefault' => 'ସବୁଯାକ ସମ୍ପାଦନାକୁ ଛାଏଁ ଛୋଟ ବଦଳ ଭାବରେ ସୂଚିତ କରିବେ',
'tog-previewontop' => 'ଏଡ଼ିଟ ବାକ୍ସ ଆଗରୁ ଦେଖଣା ଦେଖାଇବେ',
'tog-previewonfirst' => 'ପ୍ରଥମ ବଦଳର ଦେଖଣା ଦେଖାଇବେ',
-'tog-nocache' => 'ବ୍ରାଉଜର ପୃଷ୍ଠା ସାଇତିବାକୁ ଅକାମୀ କରନ୍ତୁ',
'tog-enotifwatchlistpages' => 'ମୋ ଦେଖଣାତାଲିକାରେ ଥିବା ପୃଷ୍ଠା ବା ଫାଇଲରେ କିଛି ବଦଳ ହେଲେ ମୋତେ ଇମେଲ କରିବେ',
'tog-enotifusertalkpages' => 'ମୋର ଆଲୋଚନା ପୃଷ୍ଠାରେ କିଛି ବଦଳ ହେଲେ ମୋତେ ଇ-ମେଲ କରିବେ',
'tog-enotifminoredits' => 'ପୃଷ୍ଠାରେ ଏବଂ ଫାଇଲଗୁଡିକରେ ଛୋଟ ଛୋଟ ବଦଳ ହେଲେ ବି ମୋତେ ଇ-ମେଲ କରିବେ',
'recentchanges-label-minor' => 'ଏହା ଗୋଟିଏ ଛୋଟ ବଦଳ',
'recentchanges-label-bot' => "ଏହି ବଦଳଟି ଜଣେ '''ବଟ'''ଙ୍କ ଦେଇ କରାଯାଇଥିଲା",
'recentchanges-label-unpatrolled' => 'ଏହି ବଦଳଟିକୁ ଏ ଯାଏଁ ପରଖା ଯାଇନାହିଁ',
-'rcnote' => "ଗତ $5, $4 ସୁଦ୍ଧା {{PLURAL:$2|ଦିନ|'''$2''' ଦିନ}}ରେ ତଳ {{PLURAL:$1|'''ଗୋଟିଏ''' ବଦଳ|'''$1'''ଟି ଶେଷ ବଦଳ}} ହୋଇଅଛି ।",
'rcnotefrom' => "'''$2''' ପରର ବଦଳସବୁ ତଳେ ଦିଆଗଲା ('''$1''' ଯାଏଁ ଦେଖାଯାଇଛି) ।",
'rclistfrom' => '$1ରୁ ଆରମ୍ଭ କରି ନୂଆ ବଦଳଗୁଡ଼ିକ ଦେଖାଇବେ',
'rcshowhideminor' => '$1 ଟି ଛୋଟମୋଟ ବଦଳ',
'undeletebtn' => 'ପୁନଃସ୍ଥାପନ',
'undeletelink' => 'ଦେଖିବା/ପୁନଃସ୍ଥାପନ',
'undeleteviewlink' => 'ଦେଖଣା',
-'undeletereset' => 'ପୁନସ୍ଥାପନ',
'undeleteinvert' => 'ବଛାଯାଇଥିବା ଲେଖାକୁ ଓଲଟେଇଦେବେ',
'undeletecomment' => 'କାରଣ:',
'undeletedrevisions' => '{{PLURAL:$1|ଗୋଟିଏ ସଂକଳନ|$1 ଗୋଟି ସଂକଳନ}} ପୁନସ୍ଥାପନ କରାଗଲା',
'block' => 'ସଭ୍ୟଙ୍କୁ ଅଟକାଇବେ',
'unblock' => 'ବାସନ୍ଦ ହୋଇଥିବା ସଭ୍ୟଙ୍କୁ ମୁକୁଳାଇବେ',
'blockip' => 'ସଭ୍ୟଙ୍କୁ ଅଟକାଇବେ',
-'blockip-title' => 'ସଭ୍ୟଙ୍କୁ ବାସନ୍ଦ କରିବେ',
'blockip-legend' => 'ସଭ୍ୟଙ୍କୁ ବାସନ୍ଦ କରିବେ',
'blockiptext' => 'ଏକ ନିର୍ଦିଷ୍ଟ IP ଠିକଣା ବା ବ୍ୟବହାରକାରୀଙ୍କ ଲେଖିବା ସୁବିଧାକୁ ବାରାଁ କରିବା ନିମନ୍ତେ ଏହି ତଳ ଫର୍ମଟି ବ୍ୟବହାର କରନ୍ତୁ ।
ଏହା କେବଳ ଅପବ୍ୟବହାରକୁ ରୋକିବା ନିମନ୍ତେ କରାଯାଇଥାଏ, ଏହା [[{{MediaWiki:Policy-url}}|ନୀତି]] ଅନୁସାରେ କରାଯାଇଥାଏ ।
'ipadressorusername' => 'ବ୍ୟବହାରକାରୀଙ୍କର IP ଠିକଣା ବା ଇଉଜର ନାମ:',
'ipbexpiry' => 'ମିଆଦ:',
'ipbreason' => 'କାରଣ:',
-'ipbreasonotherlist' => 'ଅଲଗା କାରଣ',
'ipbreason-dropdown' => '*ସାଧାରଣ ଅଟକ କାରଣ
** ଭୁଲ ବିବରଣୀ ଦେବା
** ପୃଷ୍ଠାରୁ ବିବରଣୀ କାଢିବା
'ipbsubmit' => 'ସଭ୍ୟଙ୍କୁ ଅଟକାଇଦେବେ',
'ipbother' => 'ବାକି ସମୟ:',
'ipboptions' => '୨ ଘଣ୍ଟା:2 hours,୧ ଦିନ:1 day,୩ ଦିନ:3 days,୧ ସପ୍ତାହ:1 week,୨ ସପ୍ତାହ:2 weeks,୧ ମାସ:1 month,୩ ମାସ:3 months,୬ ମାସ:6 months,୧ ବର୍ଷ:1 year,ଅସିମୀତ କାଳ:infinite',
-'ipbotheroption' => 'ବାକି',
-'ipbotherreason' => 'ବାକି/ଅଧିକ କାରଣ:',
'ipbhidename' => 'ଇଉଜର ନାମକୁ ସମ୍ପାଦନା ଓ ତାଲିକାରୁ ଲୁଚାଇବେ',
'ipbwatchuser' => 'ସଭ୍ୟଙ୍କ ପୃଷ୍ଠା ଓ ତାହାଙ୍କର ଆଲୋଚନା ପୃଷ୍ଠକୁ ଦେଖିବେ',
'ipb-disableusertalk' => 'ଅଟକାଯାଇଥିବା ବେଳେ ଏହି ସଭ୍ୟଙ୍କୁ ତାହାଙ୍କ ନିଜ ଆଲୋଚନା ପୃଷ୍ଠାକୁ ବଦଳାଇବାକୁ ବାରଣ କରନ୍ତୁ',
'sorbsreason' => '{{SITENAME}} ଦେଇ ଆପଣଙ୍କ IP ଠିକଣାଟି DNSBL ଭିତରେ ଏକ ଖୋଲା ପ୍ରକ୍ସି ଭାବରେ ନଥିଭୁକ୍ତ ହୋଇଅଛି ।',
'sorbs_create_account_reason' => '{{SITENAME}} ଦେଇ ଆପଣଙ୍କ IP ଠିକଣାଟି DNSBL ଭିତରେ ଏକ ଖୋଲା ପ୍ରକ୍ସି ଭାବରେ ନଥିଭୁକ୍ତ ହୋଇଅଛି ।
ଆପଣ ନୂଆ ଖାତାଟିଏ ଖୋଲି ପାରିବେ ନାହିଁ',
-'cant-block-while-blocked' => 'ଆପଣ ନିଜେ ଅଟକାଯାଇଥିବା ଯାଏଁ କେବେ ଅନ୍ୟମାନଙ୍କୁ ଅଟକାଇପାରିବେ ନାହିଁ ।',
'cant-see-hidden-user' => 'ଆପଣ ଅଟକାଇବାକୁ ଚାହୁଁଥିବା ସଭ୍ୟଜଣକ ଆଗରୁ ଅଟକାଯାଇଛନ୍ତି ଓ ଲୁଚାଯାଇଛନ୍ତି ।
ଯେହେତୁ ଆପଣଙ୍କ ପାଖରେ ସଭ୍ୟଙ୍କୁ ଲୁଚାଇବା ଅଧିକାର ନାହୀଁ, ଆପଣ ସଭ୍ୟଙ୍କର ଅଟକକୁ ଦେଖିପାରିବେ ବା ବଦଳାଇପାରିବେ ନାହିଁ ।',
'ipbblocked' => 'ଯେହେତୁ ଆପଣଙ୍କୁ ଅଟକାଯାଇଛି ଆପଣ ବାକି ସଭ୍ୟମାନଙ୍କୁ ଅଟକାଇ ବା ଅଟକରୁ ଛାଡ଼ କରିପାରିବେ ନାହିଁ ।',
'watchlistall2' => 'ସବୁ',
'namespacesall' => 'ସବୁ',
'monthsall' => 'ସବୁ',
-'limitall' => 'ସବୁ',
# Email address confirmation
'confirmemail' => 'ଆପଣଙ୍କ ଇମେଲ ଠିକଣା ଟି ଠିକ ବୋଲି ଥୟ କରନ୍ତୁ',
'confirmemail_success' => 'ଆପଣଙ୍କ ଇମେଲଟି ଠିକ ବୋଲି ନିଶ୍ଚିତ ହୋଇଗଲା ।
ଆପଣ ଏବେ [[Special:UserLogin|ଲଗ ଇନ]] କରି ଏହି ଉଇକିକୁ ଉପଭୋଗ କରିପାରନ୍ତି ।',
'confirmemail_loggedin' => 'ଆପଣଙ୍କ ଇମେଲ ଠିକଣା ସଠିକ ବୋଲି ପରଖାଗଲା ।',
-'confirmemail_error' => 'ଆପଣ ନିଶ୍ଚିତ କରିଲା ବେଳେ କେଉଁ ଏକ ଅଘଟଣ ଘଟିଲା ।',
'confirmemail_subject' => '{{SITENAME}} ଇମେଲ ଠିକଣା ନିଶ୍ଚିତ କରିବା',
'confirmemail_body' => 'କେହିଜଣେ, ବୋଧହୁଏ ଆପଣ ହିଁ $1 ଆଇ.ପି. ଠିକଣାରୁ,
ଏହି ଇ-ମେଲ ଆଇ.ଡି.ରେ "$2" ନାଆଁରେ {{SITENAME}} ଠାରେ ଖାତାଟିଏ ଖୋଲିଛନ୍ତି ।
# Special:ComparePages
'comparepages' => 'ବଦଳ ତୁଳନା କରିବେ',
-'compare-selector' => 'ପୃଷ୍ଠା ସଂସ୍କରଣ ତୁଳନା କରିବେ',
'compare-page1' => 'ପୃଷ୍ଠା ୧',
'compare-page2' => 'ପୃଷ୍ଠା ୨',
'compare-rev1' => 'ପୁନରାବୃତ୍ତି୧',
'tog-minordefault' => 'Æппæт ивддзинæдтæ банысан кæн куыд чысылтæ',
'tog-previewontop' => 'Разæркасты рудзынг ивыны рудзынджы уæлдæр',
'tog-previewonfirst' => 'Æвдисын иу разæркаст фыццаг ивды рæстæджы',
-'tog-nocache' => 'Ахицæн кæнын браузеры кешкæнынад',
'tog-enotifwatchlistpages' => 'Æз цы фæрстæм æмæ цы файлтæм дарын мæ цæст, уыдонæй иу ивд куы æрцæуа, уæд-иу мæм E-mail æрцæуæд',
'tog-enotifusertalkpages' => 'Электронон постæй мæм хъуысынгæнинаг æрвыст уа, мæ тæрхоны фарс куы ивд æрцæуа, уæд',
'tog-enotifminoredits' => 'Фарс кæнæ файлы ивд чысыл куы уа, уæддæр-иу мæм E-mail æрбацæуæт',
'recentchanges-label-minor' => 'Ай у чысыл ивд',
'recentchanges-label-bot' => 'Ацы ивд бот сарызта',
'recentchanges-label-unpatrolled' => 'Ацы ивд нырмæ нæу фидар гонд',
-'rcnote' => 'Дæлдæр нымад сты афæстаг <strong>$2</strong> боны дæргъы конд <strong>{{PLURAL:$1|иу ивд|$1 ивды}}</strong>, $5, $4 уавæрмæ гæсгæ.',
'rcnotefrom' => "Бындæр сты æвдыст ивдтытæ '''$2'''-æй ('''{{grammar:genitive|$1}}''' йонг).",
'rclistfrom' => 'Равдисын ивдтытæ амæй фæстæ: $1',
'rcshowhideminor' => '$1 чысыл ивдтытæ',
# Block/unblock
'block' => 'Архайæгыл хъоды кæнын',
'blockip' => 'Бахъоды кæнын',
-'blockip-title' => 'Архайæгыл хъоды',
'blockip-legend' => 'Архайæгыл хъоды кæнын',
'ipadressorusername' => 'IP адрис кæнæ фæсномыг:',
'ipbexpiry' => 'Фæуыны афон:',
'ipbreason' => 'Аххос:',
-'ipbreasonotherlist' => 'Æндæр тыххæй',
'ipboptions' => '2 сахаты:2 hours,1 бон:1 day,3 боны:3 days,1 къуыри:1 week,2 къуырийы:2 weeks,1 мæй:1 month,3 мæййы:3 months,6 мæййы:6 months,1 аз:1 year,нæбæрæг:infinite',
-'ipbotheroption' => 'æндæр',
-'ipbotherreason' => 'Æндæр кæнæ уæлæмхасæн аххос:',
'blockipsuccesstext' => '[[Special:Contributions/$1|$1]] хъодыгонд æрцыд.<br />
Кæс [[Special:Ipblocklist|хъодыгонд IP-адристы номхыгъд]].',
'ipb-blocklist' => 'Актуалон хъоды равдис',
'watchlistall2' => 'иууылдæр',
'namespacesall' => 'иууылдæр',
'monthsall' => 'иууылдæр',
-'limitall' => 'иууылдæр',
# action=purge
'confirm_purge_button' => 'Афтæ уæд!',
'tog-minordefault' => 'ਸਾਰੀਆਂ ਸੋਧਾਂ ’ਤੇ ਮੂਲ ਰੂਪ ਵਿਚ ਛੋਟੇ ਹੋਣ ਦਾ ਨਿਸ਼ਾਨ ਲਾਓ',
'tog-previewontop' => 'ਸੋਧ ਬਕਸੇ ਤੋਂ ਪਹਿਲਾਂ ਝਲਕ ਵਖਾਓ',
'tog-previewonfirst' => 'ਪਹਿਲੀ ਸੋਧ ਉੱਤੇ ਝਲਕ ਵਖਾਓ',
-'tog-nocache' => 'ਬਰਾਊਜ਼ਰ ਸਫ਼ਾ ਕੈਸ਼ ਕਰਨਾ ਬੰਦ ਕਰੋ',
'tog-enotifwatchlistpages' => 'ਜਦੋਂ ਮੇਰੀ ਨਿਗਰਾਨੀ-ਲਿਸਟ ਵਿੱਚ ਦਰਜ ਕੋਈ ਸਫ਼ਾ ਜਾਂ ਫ਼ਾਈਲ ਬਦਲੀ ਜਾਵੇ ਤਾਂ ਮੈਨੂੰ ਈਮੇਲ ਭੇਜੋ',
'tog-enotifusertalkpages' => 'ਜਦੋਂ ਮੇਰਾ ਗੱਲ-ਬਾਤ ਸਫ਼ਾ ਬਦਲਿਆ ਜਾਵੇ ਤਾਂ ਮੈਨੂੰ ਈ-ਮੇਲ ਭੇਜੋ',
'tog-enotifminoredits' => 'ਸਫ਼ਿਆਂ ਅਤੇ ਫ਼ਾਈਲਾਂ ਦੀਆਂ ਛੋਟੀਆਂ ਤਬਦੀਲੀਆਂ ਲਈ ਵੀ ਮੈਨੂੰ ਈ-ਮੇਲ ਭੇਜੋ',
'recentchanges-label-unpatrolled' => 'ਇਹ ਫੇਰ-ਬਦਲ ਹਾਲੇ ਵੇਖਿਆ ਨਹੀਂ ਗਿਆ',
'recentchanges-legend-newpage' => '$1 - ਨਵਾਂ ਸਫ਼ਾ',
'recentchanges-legend-plusminus' => "(''±੧੨੩'')",
-'rcnote' => "$4, $5 ਤੱਕ ਆਖਰੀ {{PLURAL:$2|ਦਿਨ|'''$2''' ਦਿਨਾਂ}} ਵਿੱਚ {{PLURAL:$1|'''1''' ਬਦਲੀ ਹੋਈ ਹੈ।|'''$1''' ਬਦਲੀਆਂ ਹੋਈਆਂ ਹਨ।}}",
'rcnotefrom' => "'''$2''' ਤੱਕ ('''$1''' ਤੱਕ ਦਿੱਸਦੇ) ਬਦਲਾਵ ਹੇਠ ਦਿੱਤੀਆਂ ਹਨ।",
'rclistfrom' => '$1 ਤੋਂ ਸ਼ੁਰੂ ਕਰਕੇ ਨਵੀਆਂ ਸੋਧਾਂ ਵਖਾਓ',
'rcshowhideminor' => 'ਛੋਟੀਆਂ ਤਬਦੀਲੀਆਂ $1',
'undeletebtn' => 'ਮੁੜ-ਸਟੋਰ',
'undeletelink' => 'ਵੇਖੋ/ਮੁੜ ਬਹਾਲ ਕਰੋ',
'undeleteviewlink' => 'ਵੇਖੋ',
-'undeletereset' => 'ਮੁੜ-ਸੈੱਟ',
'undeletecomment' => 'ਕਾਰਨ:',
'undelete-header' => 'ਤਾਜ਼ੇ ਹਟਾਏ ਗਏ ਪੰਨਿਆਂ ਲਈ [[Special:Log/delete|ਹਟਾਇਆ ਚਿੱਠਾ]] ਵੇਖੋ।',
'undelete-search-title' => 'ਮਿਟਾਏ ਹੋਏ ਸਫ਼ੇ ਖੋਜੋ',
'block' => "ਵਰਤੋਂਕਾਰ 'ਤੇ ਪਾਬੰਦੀ ਲਾਓ",
'unblock' => "ਵਰਤੋਂਕਾਰ 'ਤੇ ਲੱਗੀ ਪਾਬੰਦੀ ਹਟਾਓ",
'blockip' => 'ਵਰਤੋਂਕਾਰ ’ਤੇ ਪਾਬੰਦੀ ਲਾਓ',
-'blockip-title' => "ਵਰਤੋਂਕਾਰ 'ਤੇ ਪਾਬੰਦੀ ਲਾਓ",
'blockip-legend' => "ਵਰਤੋਂਕਾਰ 'ਤੇ ਪਾਬੰਦੀ ਲਾਓ",
'ipadressorusername' => 'IP ਐਡਰੈਸ ਜਾਂ ਯੂਜ਼ਰ ਨਾਂ:',
'ipbexpiry' => 'ਮਿਆਦ:',
'ipbreason' => 'ਕਾਰਨ:',
-'ipbreasonotherlist' => 'ਹੋਰ ਕਾਰਨ',
'ipbcreateaccount' => "ਖਾਤਾ ਬਣਾਉਣ 'ਤੇ ਰੋਕ ਲਾਓ",
'ipbemailban' => 'ਵਰਤੋਂਕਾਰ ਉੱਤੇ ਈਮੇਲ ਭੇਜਣ ਦੀ ਰੋਕ ਲਾਓ',
'ipbsubmit' => 'ਇਹ ਯੂਜ਼ਰ ਲਈ ਪਾਬੰਦੀ',
'ipbother' => 'ਹੋਰ ਟਾਈਮ:',
'ipboptions' => '2 ਘੰਟੇ:2 hours, 1 ਦਿਨ:1 day, 3 ਦਿਨ:3 days, 1 ਹਫ਼ਤਾ:1 week, 2 ਹਫ਼ਤੇ:2 weeks, 2 ਮਹੀਨਾ:1 month, 3 ਮਹੀਨੇ:3 months, 6 ਮਹੀਨੇ:6 months, 1 ਸਾਲ:1 year, ਹਮੇਸ਼ਾਂ ਲਈ:infinite',
-'ipbotheroption' => 'ਹੋਰ',
-'ipbotherreason' => 'ਹੋਰ/ਆਮ ਕਾਰਨ:',
'ipbhidename' => 'ਸੋਧਾਂ ਅਤੇ ਕੜੀਆਂ ਤੋਂ ਵਰਤੋਂਕਾਰ ਦਾ ਨਾਂ ਲੁਕਾਓ',
'ipbwatchuser' => 'ਇਸ ਵਰਤੋਂਕਾਰ ਦੇ ਵਰਤੋਂਕਾਰ ਅਤੇ ਗੱਲ-ਬਾਤ ਸਫ਼ਿਆਂ ਤੇ ਨਜ਼ਰ ਰੱਖੋ',
'ipb-confirm' => 'ਪਾਬੰਦੀ ਤਸਦੀਕ ਕਰੋ',
'ipb-otherblocks-header' => 'ਹੋਰ {{PLURAL:$1|ਪਾਬੰਦੀ|ਪਾਬੰਦੀਆਂ}}',
'unblock-hideuser' => 'ਤੁਸੀਂ ਇਸ ਮੈਂਬਰ ’ਤੇ ਪਾਬੰਦੀ ਨਹੀਂ ਲਾ ਸਕਦੇ ਕਿਉਂਕਿ ਇਸਦਾ ਮੈਂਬਰ-ਨਾਂ ਲੁਕਾਇਆ ਹੋਇਆ ਹੈ।',
'ipb_cant_unblock' => 'ਗ਼ਲਤੀ: ਪਾਬੰਦੀ ਪਤਾ $1 ਨਹੀਂ ਲੱਭਿਆ। ਸ਼ਾਇਦ ਇਹ ਪਹਿਲਾਂ ਹੀ ਪਾਬੰਦੀ-ਮੁਕਤ ਹੋ ਚੁੱਕਾ ਹੈ।',
-'cant-block-while-blocked' => 'ਤੁਸੀਂ ਦੂਜੇ ਮੈਂਬਰਾਂ ’ਤੇ ਪਾਬੰਦੀ ਨਹੀਂ ਲਾ ਸਕਦੇ ਜਦੋਂ ਤੁਸੀਂ ਖ਼ੁਦ ਪਾਬੰਦੀਸ਼ੁਦਾ ਹੋ।',
'ipbblocked' => 'ਤੁਸੀਂ ਦੂਜੇ ਮੈਂਬਰਾਂ ਨੂੰ ਪਾਬੰਦੀਸ਼ੁਦਾ ਜਾਂ ਪਾਬੰਦੀ-ਮੁਕਤ ਨਹੀਂ ਕਰ ਸਕਦੇ ਕਿਉਂਕਿ ਤੁਸੀਂ ਖ਼ੁਦ ਪਾਬੰਦੀਸ਼ੁਦਾ ਹੋ',
'ipbnounblockself' => 'ਤੁਹਾਨੂੰ ਖ਼ੁਦ ਨੂੰ ਪਾਬੰਦੀ-ਮੁਕਤ ਕਰਨ ਦੀ ਇਜਾਜ਼ਤ ਨਹੀਂ ਹੈ',
'watchlistall2' => 'ਸਭ',
'namespacesall' => 'ਸਭ',
'monthsall' => 'ਸਭ',
-'limitall' => 'ਸਭ',
# Email address confirmation
'confirmemail' => 'ਈ-ਮੇਲ ਪਤਾ ਤਸਦੀਕ ਕਰੋ',
# Special:ComparePages
'comparepages' => 'ਸਫ਼ੇ ਮਿਲਾਓ',
-'compare-selector' => 'ਸਫ਼ੇ ਦੀਆਂ ਰਿਵੀਜਨਾਂ ਮਿਲਾਓ',
'compare-page1' => 'ਸਫ਼ਾ ੧',
'compare-page2' => 'ਸਫ਼ਾ ੨',
'compare-rev1' => 'ਰਿਵੀਜਨ 1',
'tog-minordefault' => 'Tambing lang tatakan a malati (minor) deng edit a e mimarkan.',
'tog-previewontop' => 'Pakit ya ing preview bayu ing kahun nung nu mag-edit (edit box)',
'tog-previewonfirst' => 'Pakit ya ing preview keng mumunang pamag-edit',
-'tog-nocache' => 'Patdan ya ing page caching (pamag-simpan kareng bulung)',
'tog-enotifwatchlistpages' => 'I e-mail mu ku ustung ing bulung a babanten ku meyalili ya',
'tog-enotifusertalkpages' => 'E-mail mu ku ustung ing kanakung gamit talamitam meyalili ya',
'tog-enotifminoredits' => 'E-mail mu ku kareng mangalating alili da reng bulung',
'recentchanges-legend' => 'Pipamilinan kareng bayung mengayalili',
'recentchanges-summary' => 'Talukyan mo reng tawling diling mengayalilan king bulung a ini.',
'recentchanges-feed-description' => 'Talukian mo reng bayung diling mengayalili king wiki king feed a ini.',
-'rcnote' => "King lalam {{PLURAL:$1|is '''1''' change|ding tauling '''$1''' pamagbayu}} aniang tauling {{PLURAL:$2|day|'''$2''' aldo}}, aniang $5, $4.",
'rcnotefrom' => 'Atilu king lalam deng miyalilan manibat anyang <b>$2</b> (angga king <b>$1</b> makalto).',
'rclistfrom' => 'Pakit la reng bayung miyalilan manibat anyang $1',
'rcshowhideminor' => '$1 malating edit',
'undeletebtn' => 'Ibálik yang pasibayu',
'undeletelink' => 'lon/ibalik',
'undeleteviewlink' => '↓lawen',
-'undeletereset' => 'Isubli king sadia (reset)',
'undeletecomment' => 'Komentu:',
'undeletedrevisions' => '{{PLURAL:$1|1 pamagbayung|$1 pamagbayung}} misubli',
'undeletedrevisions-files' => '{{PLURAL:$1|1 pamagbayung|$1 pamagbayung}} ampong {{PLURAL:$2|1 simpan|$2 simpan}} a misubli',
'ipadressorusername' => 'IP Address o lagyungtalagamit (username):',
'ipbexpiry' => 'Mayari:',
'ipbreason' => 'Sangkan:',
-'ipbreasonotherlist' => 'Aliwang sangkan',
'ipbreason-dropdown' => '*Keraklan a sangkan king pamaniabat
** Mangibiling e tutung impormasiun
** Maglakong laman kareng bulung
'ipbsubmit' => 'Sabatan ya ing talagamit a ini',
'ipbother' => 'Keng tutuki',
'ipboptions' => '2 oras:2 hours,metung a yaldo:1 day,3ng aldo:3 days,paruminggu:1 week,2ng duminggu:2 weeks,pabulan:1 month,3ng bulan:3 months,6 a bulan:6 months,pabanua:1 year,alang kapupusan:infinite',
-'ipbotheroption' => 'aliwa',
-'ipbotherreason' => 'Karagdagang/aliuang sangkan:',
'ipbhidename' => 'Isalikut ya ing lagyungtalagamit (username) king tala ring mesabat (block log), tala ring makasabat (active block list), ampong tala ring talagamit (user list)',
'badipaddress' => 'E matatanggap ing IP address',
'blockipsuccesssub' => 'Ing sabat migtagumpe ya',
'confirmemail_success' => 'Mekumpirma ne ing kekang e-mail address.
Maliari na kang mag-login at gumamit king wiki.',
'confirmemail_loggedin' => 'Mekumpirma ne ing kekang e-mail address.',
-'confirmemail_error' => 'E melaus ing pamag-save ning kekang pamipatutu (confirmation).',
'confirmemail_subject' => 'Pamagkumpirma na king e-mail address ning {{SITENAME}}',
'confirmemail_body' => 'Ating tau, mapaliaring ika, ibat king IP address $1,
ing migrehistrung account a "$2" a maki e-mail address a anti kaniti king {{SITENAME}}.
'recentchanges-label-minor' => "C'est un tiot canjemint",
'recentchanges-label-bot' => 'Chol modificacion ale o té foaite pèr un robot.',
'recentchanges-label-unpatrolled' => 'Chol modificacion ale n’o poin coèr té controlée.',
-'rcnote' => "Vlo {{PLURAL:$1|ech darin canjemint foait|chés $1 darins canjemints foaits}} din {{PLURAL:$2|l'darinne jornèe|chés <b>$2</b> darins jours}} dusque l' $4 à $5.",
'rcnotefrom' => "Vlo chés modificacions foaites édpuis l' '''$2''' (dousqu'à '''$1''' au plus).",
'rclistfrom' => "Montrer chés nouvieus cangemints d'puis $1",
'rcshowhideminor' => '$1 tiotes éditions',
# Block/unblock
'block' => "Blotcher l'uzeu",
'blockip' => "Blotcher l'uzeu",
-'blockip-title' => "Blotcher l'uzeu",
'blockip-legend' => "Blotcher l'uzeu",
'blockiptext' => "Uzer dech teske-lo pour blotcher l’ahérse aux canjemints foaits dpui eune adrèche IP éspéchifique o bin d’un nom d’uzeu.
I feut l'foaire seleumint pour inréyer ech vindalime et pi i feut ète acordant aveuc chés [[{{MediaWiki:Policy-url}}|usages intérnes]].
Donner apré ch'motif (pèr egzimpe chiter chés paches qu'ont té vindalisées).",
'ipboptions' => '2 heures:2 hours,1 jour:1 day,3 jours:3 days,1 ésminne:1 week,2 ésminnes:2 weeks,1 moés:1 month,3 moés:3 months,6 moés:6 months,1 an:1 year,infini:infinite',
-'ipbotheroption' => 'eute',
'blocklist' => 'Uzeus blotchés',
'ipblocklist' => 'Uzeus blotchés',
'blocklink' => 'blotcher',
# Special:ComparePages
'comparepages' => 'Compérer dés paches',
-'compare-selector' => 'Compérer chés vèrsions dés paches',
'compare-page1' => 'Pache 1',
'compare-page2' => 'Pache 2',
'compare-rev1' => 'Canjemint 1',
'tog-underline' => 'Gleecher unnerleine:',
'tog-hideminor' => 'Gleene Enneringe verschwinne losse',
'tog-watchdefault' => 'Vun mir gennerte Ardickele watsche',
-'tog-nocache' => 'Bledder-Scheier ausmache',
'tog-watchlisthideown' => 'Mei Ardickele vun mei Watsch-Lischt verschwinne losse',
'tog-watchlisthidebots' => 'Enneringe vun Bots vun mei Watsch-Lischt verschwinne losse',
'tog-watchlisthideminor' => 'Gleene Enneringe vun mei Watsch-Lischt verschwinne losse',
# Block/unblock
'block' => 'Yuuser aabinne',
'blockip' => 'Yuuser aabinne',
-'blockip-title' => 'Yuuser aabinne',
'blockip-legend' => 'Yuuser aabinne',
'ipadressorusername' => 'IP-Adress odder Yuusernaame:',
'ipbreason' => 'Grund:',
-'ipbreasonotherlist' => 'Annerer Grund',
'ipbsubmit' => 'Daen Yuuser aabinne',
'ipbother' => 'Annere Zeit (englisch):',
'ipboptions' => '2 Schtund:2 hours,1 Daag:1 day,3 Daag:3 days,1 Woch:1 week,2 Woche:2 weeks,1 Munet:1 month,3 Munede:3 months,6 Monate:6 months,1 Yaar:1 year,Fer immer:infinite',
-'ipbotheroption' => 'Anneres',
-'ipbotherreason' => 'Annerer Grund:',
'blocklist-reason' => 'Grund',
'ipblocklist-submit' => 'Guck uff',
'infiniteblock' => 'fer immer',
'watchlistall2' => 'all',
'namespacesall' => 'all',
'monthsall' => 'all',
-'limitall' => 'all',
# Scary transclusion
'scarytranscludetoolong' => '[URL iss zu lang]',
'recentchanges-label-minor' => "S'ische glenni Beawaidung",
'recentchanges-label-bot' => 'Ännarunge duaschn Bod',
'recentchanges-label-unpatrolled' => 'Die Ännarung isch noch nedd iwwabriefd worre',
-'rcnote' => "Õgzaischd {{PLURAL:$1|werd '''1''' Ännarung|werren die ledschde '''$1''' Ännarunge}} {{PLURAL:$2|vum ledschde Daach|inde ledschde '''$2''' Daache}} (Schdond: $4, $5)",
'rcnotefrom' => "Unne sinn Ännarunge said '''$2''' (bis '''$1''').",
'rclistfrom' => 'Zaisch die ledschde Ännarunge ab $1',
'rcshowhideminor' => 'Glenni Ännarunge $1',
'undeletebtn' => 'Widderherschdelle',
'undeletelink' => 'õgugge/widda herschdelle',
'undeleteviewlink' => 'Õgugge',
-'undeletereset' => 'Zuriggsedze',
'undelete-show-file-submit' => 'Ja',
# Namespace form on various pages
'blockip' => 'Middawaida bloggiere',
'ipbsubmit' => 'Middawaida bloggiere',
'ipboptions' => '2 Schdunne:2 hours,1 Daach:1 day,3 Daach:3 days,1 Woch:1 week,2 Woche:2 weeks,1 Monad:1 month,3 Monad:3 months,6 Monad:6 months,1 Johr:1 year,Fa imma:infinite',
-'ipbotheroption' => 'onnari',
'ipusubmit' => 'Die Adreß fraigewwe',
'ipblocklist' => 'Gschberrdi IP-Adress un Middawaidanõme',
'infiniteblock' => 'ubgrensd',
'tog-minordefault' => 'Wszystkie edycje domyślnie oznaczaj jako drobne',
'tog-previewontop' => 'Pokazuj podgląd powyżej obszaru edycji',
'tog-previewonfirst' => 'Pokazuj podgląd strony podczas pierwszej edycji',
-'tog-nocache' => 'Wyłącz pamięć podręczną przeglądarki',
'tog-enotifwatchlistpages' => 'Wyślij do mnie e‐mail, gdy strona lub plik z mojej listy obserwowanych zostaną zmodyfikowane',
'tog-enotifusertalkpages' => 'Wyślij do mnie e‐mail, gdy moja strona dyskusji zostanie zmodyfikowana',
'tog-enotifminoredits' => 'Wyślij e‐mail także w przypadku drobnych zmian na stronach lub w plikach',
'sectioneditnotsupported-text' => 'Edycja sekcji na tej stronie nie jest obsługiwana.',
'permissionserrors' => 'Błąd uprawnień',
'permissionserrorstext' => 'Nie masz uprawnień do tego działania z {{PLURAL:$1|następującej przyczyny|następujących przyczyn}}:',
-'permissionserrorstext-withaction' => 'Nie masz uprawnień do $2, z {{PLURAL:$1|następującego powodu|następujących powodów}}:',
+'permissionserrorstext-withaction' => 'Nie masz uprawnień do $2 z {{PLURAL:$1|następującego powodu|następujących powodów}}:',
'recreate-moveddeleted-warn' => "'''Uwaga! Zamierzasz utworzyć stronę, która została wcześniej usunięta.'''
Upewnij się, czy ponowne utworzenie tej strony jest uzasadnione.
'recentchanges-label-unpatrolled' => 'Ta edycja nie została jeszcze sprawdzona',
'recentchanges-label-plusminus' => 'Zmieniony rozmiar strony (liczba bajtów)',
'recentchanges-legend-newpage' => '(zobacz też [[Special:NewPages|listę nowych stron]])',
-'rcnote' => "Poniżej {{PLURAL:$1|znajduje się '''1''' ostatnia zmiana wykonana|znajdują się ostatnie '''$1''' zmiany wykonane|znajduje się ostatnich '''$1''' zmian wykonanych}} w ciągu {{PLURAL:$2|ostatniego dnia|ostatnich '''$2''' dni}}, licząc od $5 dnia $4.",
'rcnotefrom' => "Poniżej pokazano zmiany wykonane po '''$2''' (nie więcej niż '''$1''' pozycji).",
'rclistfrom' => 'Pokaż nowe zmiany od $1',
'rcshowhideminor' => '$1 drobne zmiany',
'undeletebtn' => 'Odtwórz',
'undeletelink' => 'pokaż lub odtwórz',
'undeleteviewlink' => 'pokaż',
-'undeletereset' => 'Wyczyść',
'undeleteinvert' => 'Odwróć zaznaczenie',
'undeletecomment' => 'Powód',
'undeletedrevisions' => 'odtworzono {{PLURAL:$1|1 wersję|$1 wersje|$1 wersji}}',
'block' => 'Zablokuj użytkownika',
'unblock' => 'Odblokuj użytkownika',
'blockip' => 'Zablokuj użytkownika',
-'blockip-title' => 'Zablokowanie użytkownika',
'blockip-legend' => 'Zablokuj użytkownika',
'blockiptext' => 'Użyj poniższego formularza do zablokowania możliwości edycji spod określonego adresu IP lub konkretnemu użytkownikowi.
Blokować należy jedynie po to, by zapobiec wandalizmom, zgodnie z [[{{MediaWiki:Policy-url}}|przyjętymi zasadami]].
'ipadressorusername' => 'Adres IP lub nazwa użytkownika',
'ipbexpiry' => 'Upływa',
'ipbreason' => 'Powód',
-'ipbreasonotherlist' => 'Inny powód',
'ipbreason-dropdown' => '*Najczęstsze przyczyny blokad
** Ataki na innych użytkowników
** Naruszenie praw autorskich
'ipbsubmit' => 'Zablokuj użytkownika',
'ipbother' => 'Inny okres',
'ipboptions' => '2 godziny:2 hours,1 dzień:1 day,3 dni:3 days,1 tydzień:1 week,2 tygodnie:2 weeks,1 miesiąc:1 month,3 miesiące:3 months,6 miesięcy:6 months,1 rok:1 year,na zawsze:infinite',
-'ipbotheroption' => 'inny okres',
-'ipbotherreason' => 'Inne lub dodatkowy powód',
'ipbhidename' => 'Ukryj nazwę użytkownika w edycjach i listach',
'ipbwatchuser' => 'Obserwuj stronę osobistą i stronę dyskusji tego użytkownika',
'ipb-disableusertalk' => 'Zablokuj możliwość edytowania przez tego użytkownika własnej strony dyskusji w czasie trwania blokady.',
'sorbs_create_account_reason' => 'Twój adres IP znajduje się na liście serwerów open proxy w DNSBL, używanej przez {{GRAMMAR:B.lp|{{SITENAME}}}}.
Nie możesz utworzyć konta',
'xffblockreason' => 'Adres IP obecny w nagłówku X-Forwarded-For – twój lub serwera proxy, z którego korzystasz – został zablokowany. Powód blokady to: $1',
-'cant-block-while-blocked' => 'Nie możesz zablokować innych użytkowników, kiedy sam jesteś zablokowany.',
'cant-see-hidden-user' => 'Konto użytkownika, które próbujesz zablokować, zostało już zablokowane oraz ukryte. Bez uprawnienia do ukrywania kont nie możesz zobaczyć oraz modyfikować blokady tego użytkownika.',
'ipbblocked' => 'Nie możesz blokować i odblokowywać innych użytkowników, ponieważ sam jesteś zablokowany',
'ipbnounblockself' => 'Nie możesz odblokować samego siebie',
'watchlistall2' => 'wszystkie',
'namespacesall' => 'wszystkie',
'monthsall' => 'wszystkie',
-'limitall' => 'wszystkie',
# Email address confirmation
'confirmemail' => 'Potwierdzanie adresu e‐mail',
'confirmemail_success' => 'Adres e‐mail został potwierdzony.
Możesz [[Special:UserLogin|zalogować się]] i korzystać z szerszego wachlarza funkcji wiki.',
'confirmemail_loggedin' => 'Twój adres email został zweryfikowany.',
-'confirmemail_error' => 'Pojawiły się błędy przy zapisywaniu potwierdzenia.',
'confirmemail_subject' => '{{SITENAME}} – weryfikacja adresu e‐mail',
'confirmemail_body' => 'Ktoś łącząc się z komputera o adresie IP $1
zarejestrował w {{GRAMMAR:MS.lp|{{SITENAME}}}} konto „$2”, podając niniejszy adres e‐mail.
'imgmultigo' => 'Przejdź',
'imgmultigoto' => 'Idź do $1 strony',
+# Language selector for translatable SVGs
+'img-lang-default' => '(język domyślny)',
+
# Table pager
'ascending_abbrev' => 'rosn.',
'descending_abbrev' => 'mal.',
# Special:ComparePages
'comparepages' => 'Porównanie stron',
-'compare-selector' => 'Porównanie wersji stron',
'compare-page1' => 'Strona 1',
'compare-page2' => 'Strona 2',
'compare-rev1' => 'Wersja 1',
'tog-minordefault' => 'Marché tute le modìfiche coma cite coma predefinission',
'tog-previewontop' => 'Smon-e la preuva dzora al quàder ëd modìfica dël test e nen sota',
'tog-previewonfirst' => 'Smon-e na preuva la prima vira che as fa na modìfica',
-'tog-nocache' => 'Disabilité la memòria local ëd le pàgine dël navigador',
'tog-enotifwatchlistpages' => "Mandeme un mëssagi an pòsta eletrònica quand a-i son dle modìfiche a le pàgine ch'im ten-o sot-euj",
'tog-enotifusertalkpages' => 'Mandeme un mëssagi ëd pòsta eletrònica quand a-i son dle modìfiche a mia pàgina dle ciaciarade',
'tog-enotifminoredits' => "Mandeme un mëssagi an pòsta eletrònica bele che për le modìfiche cite dle pàgine o dj'archivi",
'recentchanges-label-plusminus' => "La taja dla pàgina a l'é cangià d'un nùmer ëd bytes",
'recentchanges-legend-newpage' => '(vëdde ëdcò [[Special:NewPages|lista dle pàgine neuve]])',
'recentchanges-legend-plusminus' => "(''±123'')",
-'rcnote' => "Ambelessì sota a-i {{PLURAL:$1|é '''1''' modìfica|son j'ùltime '''$1''' modìfiche}} ant j'ùltim {{PLURAL:$2|di|'''$2''' di}}, a parte da $5 dël $4.",
'rcnotefrom' => ' Ambelessì sota a-i é la lista dle modìfiche da <b>$2</b> (fin-a a <b>$1</b>).',
'rclistfrom' => 'Mostré le modìfiche a parte da $1',
'rcshowhideminor' => '$1 le modìfiche cite',
'undeletebtn' => 'Ripristiné',
'undeletelink' => 'vëdde/ripristiné',
'undeleteviewlink' => 'vëdde',
-'undeletereset' => "Buté torna tut tanme 'l sòlit",
'undeleteinvert' => 'Anvertì la selession',
'undeletecomment' => 'Rason:',
'undeletedrevisions' => '{{PLURAL:$1|Na revision pijàita|$1 revision pijàite}} andré',
'block' => "Bloché l'utent",
'unblock' => "Dësbloché l'utent",
'blockip' => "Bloché l'utent",
-'blockip-title' => "Bloché l'utent",
'blockip-legend' => "Bloché l'utent",
'blockiptext' => "Che a deuvra ël mòdulo ëd domanda 'd blocagi ambelessì sota për bloché l'acess con drit dë scritura da chèich adrëssa IP o stranòm.<br />
Ës blocagi-sì as dev dovresse MACH për evité dij comportament vandàlich, ën strèita osservansa ëd tùit ij prinsipi dle [[{{MediaWiki:Policy-url}}|régole ëd {{SITENAME}}]].<br />
'ipadressorusername' => 'Adrëssa IP ò stranòm',
'ipbexpiry' => 'Fin-a al',
'ipbreason' => 'Rason:',
-'ipbreasonotherlist' => 'Àotr motiv',
'ipbreason-dropdown' => "*Motiv sòlit për ij blocagi
** Avej butà d'anformassion fàosse
** Avej gavà dël contnù da 'nt le pàgine
'ipbsubmit' => "Bloché st'utent-sì",
'ipbother' => "N'àutra durà",
'ipboptions' => "2 ore:2 hours,1 di:1 day,3 di:3 days,na sman-a:1 week,2 sman-e:2 weeks,1 mèis:1 month,3 mèis:3 months,6 mèis:6 months,n'ann:1 year,për sempe:infinite",
-'ipbotheroption' => "d'àutr",
-'ipbotherreason' => 'Àotri motiv/spiegon',
'ipbhidename' => "Stërmé lë stranòm da 'nt le modìfiche e da 'nt j'elench",
'ipbwatchuser' => "Ten-e d'euj le pàgine utent e ëd discussion dë st'utent-sì",
'ipb-disableusertalk' => "Proibì a st'utent ëd modifiché soa pàgina ëd discussion quand a l'é blocà",
'sorbsreason' => "Soa adrëssa IP a l'é listà coma arpetitor duvert (open proxy) ansima al DNSBL dovrà da {{SITENAME}}.",
'sorbs_create_account_reason' => "Soa adrëssa IP a l'é listà coma arpetitor duvèrt (open proxy) ansima al DNSBL dovrà da {{SITENAME}}. A peul nen creésse un cont.",
'xffblockreason' => "N'adrëssa IP ant l'antestassion X-Forwarded-For, la soa o cola d'un servent fantasma che chiel a deuvra, a l'é stàita blocà. La rason dël blocagi inissial a l'era: $1",
-'cant-block-while-blocked' => "A peul pa bloché d'àutri utent antramentre che chiel a l'é blocà.",
'cant-see-hidden-user' => "L'utent ch'a l'é an camin ch'a preuva a bloché a l'é già stàit blocà e stërmà. Da già ch'a l'ha pa ël drit hideuser, a peul pa vëdde o modifiché ël blocagi ëd cost utent.",
'ipbblocked' => "A peul pa bloché o dësbloché d'àutri utent, përchè a l'é blocà chiel-midem",
'ipbnounblockself' => "A l'é nen autorisà a dësblochesse da sol",
'watchlistall2' => 'tute',
'namespacesall' => 'tùit',
'monthsall' => 'tuti',
-'limitall' => 'tùit',
# Email address confirmation
'confirmemail' => "Confermé l'adrëssa postal",
'confirmemail_needlogin' => 'A venta $1 për confermé soa adrëssa ëd pòsta eletrònica.',
'confirmemail_success' => "Soa adrëssa a l'é stàita confermà, adess a peul [[Special:UserLogin|rintré ant ël sistema]] e i-j auguroma da fessla bin ant la wiki!",
'confirmemail_loggedin' => "Motobin mersì. Soa adrëssa ëd pòsta eletrònica adess a l'é confermà.",
-'confirmemail_error' => "Cheicòs a l'é andà mal ën salvand soa conferma.",
'confirmemail_subject' => "Conferma dl'adrëssa postal da 'nt la {{SITENAME}}",
'confirmemail_body' => "Cheidun, a l'é belfé che a sia stàit pròpe chiel, da 'nt l'adrëssa IP $1,
a l'ha duvertà un cont utent «$2» ansima a {{SITENAME}}, lassand-ne st'adrëssa ëd pòsta eletrònica-sì.
'imgmultigo' => 'Andé!',
'imgmultigoto' => 'Andé a la pàgina $1',
+# Language selector for translatable SVGs
+'img-lang-default' => '(lenga predefinìa)',
+'img-lang-info' => 'Rende costa plancia an $1 $2.',
+'img-lang-go' => 'Andé',
+
# Table pager
'ascending_abbrev' => 'a chërse',
'descending_abbrev' => 'a calé',
# Special:ComparePages
'comparepages' => 'Confronté dle pàgine',
-'compare-selector' => 'Confronté le revision dle pàgine',
'compare-page1' => 'Pàgina 1',
'compare-page2' => 'Pàgina 2',
'compare-rev1' => 'Revision 1',
'tog-minordefault' => 'ساریاں تبدیلیاں نوں نکا ڈیفالٹ نال دسو۔',
'tog-previewontop' => 'ایڈٹ باکس توں پہلے پریویو وکھاؤ',
'tog-previewonfirst' => 'پہلی تبدیلی تے پریویو وکھاؤ',
-'tog-nocache' => 'براؤزر چ صفحے دی کیشنگ روک دیو',
'tog-enotifwatchlistpages' => 'اگر میری اکھ تھلیاں صفحیاں چوں کسے چ تبدیلی ہوۓ، تے مینوں ای میل کر دیو',
'tog-enotifusertalkpages' => 'اگر میرے گلاں باتاں آلے صفحے چ کوئی تبدیلی کرے، تے مینوں ای میل کر دیو',
'tog-enotifminoredits' => 'صفحیاں چ چھوٹیاں موٹیاں تبدیلیاں تے وی مینوں ای میل کر دیو',
'recentchanges-label-minor' => 'اے اک چھوٹی تبدیلی اے۔',
'recentchanges-label-bot' => 'ایس تبدیلی نوں بوٹ نے کیتا اے۔',
'recentchanges-label-unpatrolled' => 'ایس تبدیلی تے ہلے گشت نئیں ہوئی۔',
-'rcnote' => "تھلے $5،$4 تک {{PLURAL:$2|آخری '''$2''' دناں دی }} {{PLURAL:$1|'''$1''' تبدیلیاں نیں}}۔",
'rcnotefrom' => "ہلے تک '''$2''' توں '''$1''' تبدیلیاں تھلے دتیاں گئیاں نیں۔",
'rclistfrom' => '$1 توں ہونے آلیاں نویاں تبدیلیاں وکھاؤ',
'rcshowhideminor' => '$1 معمولی تبدیلیاں',
'undeletebtn' => 'بحال کرو',
'undeletelink' => 'ویکھو/بحال کرو',
'undeleteviewlink' => 'وکھالہ',
-'undeletereset' => 'پہلی حالت تے لے آؤ',
'undeleteinvert' => 'وچوں چناؤ',
'undeletecomment' => 'وجہ',
'undeletedrevisions' => '{{PLURAL:$1|1 ریوین|$1 ریویناں}} واپس',
'block' => 'ورتن آلے نوں روکو',
'unblock' => 'ورتن آلے تے روک بند کرو',
'blockip' => 'اس ورتن والے نو روکو',
-'blockip-title' => 'ورتن آلے نوں روکو',
'blockip-legend' => 'ورتن آلے نوں روکو',
'blockiptext' => 'تھلے دتا گیا فارم ورتو کسے خاص آئی پی پتے یا ورتن ناں نوں لکھن روک لئی۔ ایہ صرف ونڈالزم توں بچن لئی اے، تے [[{{MediaWiki:Policy-url}}|policy]] دے نال اے۔
تھلے خاص وجہاں دسو (ادھارن لئی خاص صفیاں دی دس دیو جیہڑے خراب کیتے گۓ۔)',
'ipadressorusername' => 'آئی پی پتہ یا ورتن آلے دا ناں:',
'ipbexpiry' => 'انت:',
'ipbreason' => 'وجہ:',
-'ipbreasonotherlist' => 'ہور وجہ',
'ipbreason-dropdown' => '*روکن دیاں عام وجہاں
** غلط جانکاری دینا
** صفیاں توں مواد مٹانا
'ipbsubmit' => 'اس ورتن آلے نوں روکو',
'ipbother' => 'دوجے ویلے:',
'ipboptions' => 'دو کینٹے:2 hours,1 دن:1 day,3 دن:3 days,1 ہفتہ:1 week,2 ہفتے:2 weeks,1 مہینہ:1 month,3 مہینے:3 months,6 مہینے:6 months,1 سال:1 year,بے انت:infinite',
-'ipbotheroption' => 'دوجا',
-'ipbotherreason' => 'دوجیاں ہور وجہ:',
'ipbhidename' => 'ورتن ناں نوں تبدیلیاں تے لسٹاں توں بچاؤ',
'ipbwatchuser' => 'ایس ورتن والے دے ورتن تے گل بات صفے تے اکھ رکھو۔',
'ipb-disableusertalk' => 'ایس ورتن والے نوں جدوں تک ایدے تے روک اے اپنے گلبات صفے چ تبدیلی کرن توں روکو',
'sorbsreason' => 'تیرا آئی پی پتہ اک کھلی پراکسی وانگوں دتا گیا اے ڈی این ایس بی ایل چ {{سائیٹناں}} نے۔',
'sorbs_create_account_reason' => 'تواڈا پتہ اک کھلا پراکسی لسٹ چ اے ڈی این ایس بی ایل نال {{سائیٹناں}} چ۔
تسیں اک کھاتہ نئیں کھول سکدے۔',
-'cant-block-while-blocked' => 'جدوں تواڈے تے روک لگی ہووے تے تسیں دوجیاں تے روک نئیں لاسکدے۔',
'cant-see-hidden-user' => 'جس ورتن والے تے تسیں روک لارۓ اوہ اوہ پہلے روکیا جا چکیا اے تے لکیا اے۔
کیوں جے تواڈے کول لکن ورتن والے دے ح نئیں تسیں ورتن والے دے روک ناں ویکھ سکدے او ناں بدل سکدے او۔',
'ipbblocked' => 'تسیں دوجے ورتن والیاں تے ناں ای روک لا سکدے اوہ تے ناں ای دوجیاں دی روک کھول سکدے او، کیوں جے تسیں آپ ای روکے ہووے اوہ۔',
'watchlistall2' => 'سارے',
'namespacesall' => 'سارے',
'monthsall' => 'سارے',
-'limitall' => 'سارے',
# Email address confirmation
'confirmemail' => 'ای میل پتہ پکا کرو',
'confirmemail_success' => 'تھواڈا ای-میل پتہ پکا ہوچکیا اے۔
تسی ہن [[Special:UserLogin|لاگان]] ہوسکدے اے تے وکی دے مزے کن سکدے او۔',
'confirmemail_loggedin' => 'تھواڈا ای-میل پتہ ہن پکا ہوچکیا اے۔',
-'confirmemail_error' => 'تھواڈی کنفرمیشن نوں بچاندیاں ہویاں کوئی چیز غلط ہوگئی اے۔',
'confirmemail_subject' => '{{SITENAME}} ای-میل پتہ کنفرمیشن',
'confirmemail_body' => 'کسے نیں خبرے تساں ای آئی پی پتے $1 توں،
اک کھاتہ "$2" ایس ای میل پتے نال {{SITENAME}} تے بنایا اے۔
# Special:ComparePages
'comparepages' => 'صفے سامنے کرو',
-'compare-selector' => 'صفیاں تے دوبارہ ویکھ دیکھو',
'compare-page1' => 'صفہ 1',
'compare-page2' => 'صفہ 2',
'compare-rev1' => 'دوبارہ وکھالہ 1',
'recentchanges' => 'Υστερνά αλλαγάς',
'recentchanges-legend' => 'Επιλογάς υστερνιδίων αλλαγίων',
'recentchanges-feed-description' => "Τ' ασ' όλεα καινούρεα αλλαγάς τη wiki ωρία σ' αβούτεν την περίληψην.",
-'rcnote' => "Αφκά {{PLURAL:$1|έχ' '''1''' αλλαγήν|έχ' τα '''$1''' τελευταία αλλαγάς}} τη {{PLURAL:$2|τελευταίας ημέρας|τελευταίων '''$2''' ημερίων}}, σα $5, $4.",
'rcnotefrom' => "Αφκά καικά ευρίουνταν τ' αλλαγάς ασό <b>$2</b> (εμφάνιση <b>$1</b> αλλαγίων max).",
'rclistfrom' => "Δείξον τ' αλλαγάς ασα $1 μαναχόν",
'rcshowhideminor' => '$1 τα μικρά αλλαγάς',
'blockip-legend' => 'Ασπάλισον το χρήστ',
'ipbexpiry' => 'Τέλεμαν:',
'ipbreason' => 'Αιτία:',
-'ipbreasonotherlist' => 'Άλλον αιτία',
'ipbsubmit' => 'Ασπάλισον τον χρήστεν',
'ipbother' => 'Άλλον ώρα:',
'ipboptions' => '2 ώρας:2 hours,1 ημέρα:1 day,3 ημέρας:3 days,1 εβδομάδα:1 week,2 εβδομάδας:2 weeks,1 μήνα:1 month,3 μήνας:3 months,6 μήνας:6 months,1 χρόνο:1 year,αόριστα:infinite',
-'ipbotheroption' => "άλλ'",
-'ipbotherreason' => 'Άλλον/κιάλλον αιτία:',
'badipaddress' => 'Άχρηστον IP',
'blockipsuccesssub' => "Τ' ασπάλιγμαν εγέντον",
'ipb-edit-dropdown' => 'Άλλαξον αιτίας ασπαλιγματί',
'tog-minordefault' => 'Ebzentlis auprestaminai wissans kitawidīnsnans kāigi malkans',
'tog-previewontop' => 'Waidinnais pirmādiran pirzdau redigīsnas laūkan',
'tog-previewonfirst' => 'Waidinnais pirmādiran prei pirman redigīsenin',
-'tog-nocache' => 'Izklaūjais rānkas minīsnan',
'tog-enotifwatchlistpages' => 'Tenginnais mi e-mail, ik pāusan iz majjan listin stēisan nadirītan ast kitawīdintan',
'tog-enotifusertalkpages' => 'Iztenginnais mi e-mail, ik majjan diskusiōnis pāusan wīrst būwun kitawīdintan',
'tog-enotifminoredits' => 'Tenginnais mi e-mail dīgi kaddan kitawīdinsnas as malkan',
'recentchanges-label-bot' => 'Sta ast redigīsenis segītan pra bōtan',
'recentchanges-label-unpatrolled' => 'Šis redigīsenis ni ast dabber izbandātan',
'recentchanges-legend-newpage' => '$1 - nāunan pāusan',
-'rcnote' => "Zemmais ast {{PLURAL:$1|'''1''' kitawīdinsna segīta|panzdaumas '''$1''' kitawīdinsnas segītas}} en panzdaumamans {{PLURAL:$2|dēinan|'''$2''' dēinans}}, gīrbawintei ezze $5, $4.",
'rcnotefrom' => "Zemmais ast kitawīdisnas ezze '''$2''' (ērgi '''$1''' waidīntan).",
'rclistfrom' => 'Waidinnais nāunans kitawīdinsnans pagaūnintei ezze $1',
'rcshowhideminor' => '$1 malkas kitawīdisnas',
'undeletebtn' => 'Etwārtai wartinnais',
'undeletelink' => 'wīdais/etwārtai wartinnais',
'undeleteviewlink' => 'wīdais',
-'undeletereset' => 'Etkraūneis',
'undeleteinvert' => 'Etwartinnais pazentlisenin',
'undeletecomment' => 'Kumentārs:',
'undeletedrevisions' => '{{PLURAL:$1|1 wersiōni|$1 wersiōnis}} etwārtai wartīntan',
# Block/unblock
'blockip' => 'Blōkis tērpautajan',
-'blockip-title' => 'Blōkis tērpautajan',
'blockip-legend' => 'Blōkis tērpautajan',
'blockiptext' => 'Tērpaus zemmaisin fōrmularan, kāi blōkilai enpeisāsenes mazīngiskwan iz kōnkretai IP adressin anga kōnkretasmu tērpautajan.
Blōkitun prawerru tēr kāi ebsergītun ezze wandalisman be preitarīngi sen [[{{MediaWiki:Policy-url}}|pōlitikin]].
'ipadressorusername' => 'IP adressi anga tērpautajas pabilisnā:',
'ipbexpiry' => 'Blōkisenis wanginna:',
'ipbreason' => 'Brewīnsli:',
-'ipbreasonotherlist' => 'Kitā brewīnsli',
'ipbcreateaccount' => 'Ebsergēis ezze rekkenas teīkseņu',
'ipbemailban' => 'Ebsergēis ezze e-mailas tengīnsnas mazīngiskwai',
'ipbenableautoblock' => 'Blōkis panzdauman šisse tērpautajas IP adressin be autōmatiskai wissans ripīntins, iz kawīdans tāns wīrst bandāwuns redigītun',
'ipbsubmit' => 'Blōkis šin tērpautajan',
'ipbother' => 'Kitā kerdā',
'ipboptions' => '2 stūndis:2 hours, 1 deinā:1 day,3 dēinas:3 days,1 sawaīti:1 week,2 sawaītis:2 weeks,1 mīnss:1 month,3 mīnsei:3 months,6 mīnsei:6 months,1 mettan:1 year,bewangiskai:infinite',
-'ipbotheroption' => 'kits',
-'ipbotherreason' => 'Kitā/papilnimina brewīnsli:',
'ipbhidename' => 'Kliptinais tērpautajas pabilīsnan en redigīsenimans be listimans',
'ipbwatchuser' => 'Nadirēis šisse tērpautajas persōniskan pāusan be diskusiōnis pāusan',
'ipb-change-block' => 'Kitawīdinais blōkisenes ensadīnsenins',
'sorbsreason' => 'Twajā IP adressi ast en listei stēisan open proxy sērwerin en DBSBL, tērpautan pra {{SITENAME}}.',
'sorbs_create_account_reason' => 'Twajā IP adressi ast en listei stēisan open proxy sērwerin en DBSBL, tērpautan pra {{SITENAME}}.
Tū ni mazzi teīktun rekkenan',
-'cant-block-while-blocked' => 'Tū ni mazzi blōkitun kittan tērpautajans, kaddan subs assei blōkitan.',
# Developer tools
'lockdb' => 'Izklaūjais dātanbazin',
'watchlistall2' => 'wisāi',
'namespacesall' => 'wisāi',
'monthsall' => 'wisāi',
-'limitall' => 'wisāi',
# Email address confirmation
'confirmemail' => 'Padrūktinais e-mail adressin',
'confirmemail_success' => 'Twajā e-mail adressi pastāi padrūktintan.
Tu mazzi jāu [[Special:UserLogin|enēitwei]] be tuldītun si sen wiki.',
'confirmemail_loggedin' => 'Twajā e-mail adressi pastāi padrūktintan.',
-'confirmemail_error' => 'Tikka blāndas prei twāise padrūktinsnas enpeisāsnan.',
'confirmemail_subject' => '{{SITENAME}} e-mail adressis',
'confirmemail_invalidated' => 'E-mailas adressis padrūktinsna naikīntan',
'invalidateemail' => 'Naikinnais e-mail padrūktinsnan',
'tog-minordefault' => 'په تلواليزه توگه ټول سمونونه واړه په نخښه کول',
'tog-previewontop' => 'د سمون بکس نه دمخه مخکتنه ښکاره کول',
'tog-previewonfirst' => 'په لومړي سمون کې مخکتنه ښکاره کول',
-'tog-nocache' => 'د کتنمل د مخ ياده ساتنې چار ناچارندول',
'tog-enotifwatchlistpages' => 'کله چې زما د کتنلړ په يوې دوتنې يا يو مخ کې بدلون راځي نو ما ته دې د بدلون په اړه برېښليک راشي',
'tog-enotifusertalkpages' => 'کله چې زما د خبرو اترو په مخ کې بدلون پېښېږي نو ما ته دې يو برېښليک ولېږلی شي.',
'tog-enotifminoredits' => 'کله چې په مخونو او دوتنو کې وړې سمونې کېږي نو ماته دې د بدلون په اړه برېښليک راشي',
'recentchanges-label-bot' => 'دغه سمون د يو روباټ لخوا ترسره شوی',
'recentchanges-label-unpatrolled' => 'دغه سمون تر اوسه پورې نه دی څارل شوی',
'recentchanges-legend-newpage' => '(دا هم وگورۍ [[Special:NewPages|د نويو مخونو لړليک]])',
-'rcnote' => "دلته لاندې {{PLURAL:$1|وروستی '''1''' بدلون دی|وروستي '''$1''' بدلونونه دي}} چې په {{PLURAL:$2| يوې ورځ|'''$2''' ورځو}} کې تر $4 نېټې او $5 بجو پېښ شوي.",
'rcnotefrom' => "په همدې ځای کې لاندې هغه بدلونونه دي چې د '''$2''' نه راپدېخوا پېښ شوي (تر '''$1''' پورې ښکاره شوي).",
'rclistfrom' => 'هغه نوي بدلونونه ښکاره کول چې له $1 نه پيلېږي',
'rcshowhideminor' => 'وړې سمونې $1',
'undeletebtn' => 'بيازېرمل',
'undeletelink' => 'کتل/بيازېرمل',
'undeleteviewlink' => 'کتل',
-'undeletereset' => 'بياايښودل',
'undeleteinvert' => 'ټاکنې سرچپه کول',
'undeletecomment' => 'سبب:',
'undeletedfiles' => '{{PLURAL:$1|1 دوتنه بيازېرمه شوه|$1 دوتنې بيازېرمه شوې}}',
'block' => 'په کارن بنديز لگول',
'unblock' => 'کارن له بنديزه وېستل',
'blockip' => 'په کارن بنديز لگول',
-'blockip-title' => 'په کارن بنديز لگول',
'blockip-legend' => 'په کارن بنديز لگول',
'ipadressorusername' => 'IP پته يا کارن نوم',
'ipbexpiry' => 'د پای نېټه:',
'ipbreason' => 'سبب:',
-'ipbreasonotherlist' => 'بل لامل',
'ipbreason-dropdown' => '*د بنديز ټولگړي سببونه
** د ناسمو مالوماتو خپرول
** د مخونو د مېنځپانگې ړنگول
'ipbsubmit' => 'په دې کارن بنديز لگول',
'ipbother' => 'بل وخت:',
'ipboptions' => '2 ساعتونه:2 hours,1 ورځ:1 day,3 ورځې:3 days,1 اوونۍ:1 week,2 اوونۍ:2 weeks,1 مياشت:1 month,3 مياشتې:3 months,6 مياشتې:6 months,1 کال:1 year,لامحدوده:infinite',
-'ipbotheroption' => 'نور',
-'ipbotherreason' => 'بل/اضافه سبب:',
'ipbhidename' => 'کارن-نوم له سمون او لړليکونو پټول',
'ipb-confirm' => 'د بنديز تاييد',
'badipaddress' => 'ناسمه IP پته',
'watchlistall2' => 'ټول',
'namespacesall' => 'ټول',
'monthsall' => 'ټول',
-'limitall' => 'ټول',
# Email address confirmation
'confirmemail' => 'د برېښليک پتې پخلی وکړی',
که تاسې غونډال ته ورننوځی نو تاسې دې کوډ ته اړتيا نه لرۍ، خو تاسې هغه وخت همدې درلېږل شوي کوډ ته اړتيا لرۍ، کله چې په ويکي کې د برېښليک پر بنسټ نورې کړنې چارنول غواړی.',
'confirmemail_needlogin' => 'ددې لپاره چې ستاسې د برېښليک پتې پخلی وشي، تاسې ته پکار ده چې $1.',
'confirmemail_loggedin' => 'اوس ستاسې د برېښليک پتې پخلی وشو.',
-'confirmemail_error' => 'ستاسې د برېښليک پتې د تاييد په خوندي کولو کې يوه ستونزه رامېنڅ ته شوه.',
'confirmemail_subject' => 'د {{SITENAME}} د برېښليک پتې تاييد',
'confirmemail_body' => 'يو چا او يا هم کيدای شي چې تاسې پخپله، د $1 IP پتې نه،
د "$2" په نامه يو گڼون په همدې بريښليک پتې د {{SITENAME}} په وېبځي کې ثبت کړی.
# Special:ComparePages
'comparepages' => 'مخونه پرتلل',
-'compare-selector' => 'د مخ بڼې سره پرتلل',
'compare-page1' => '۱ مخ',
'compare-page2' => '۲ مخ',
'compare-rev1' => '۱ بڼه',
'tog-minordefault' => 'Por omissão, marcar todas as edições como menores',
'tog-previewontop' => 'Mostrar a antevisão antes da caixa de edição',
'tog-previewonfirst' => 'Mostrar a antevisão na primeira edição',
-'tog-nocache' => 'Desativar a cache de páginas do browser',
'tog-enotifwatchlistpages' => 'Notificar-me por correio electrónico quando uma página ou ficheiro vigiado for alterado',
'tog-enotifusertalkpages' => 'Notificar-me por correio electrónico quando a minha página de discussão é editada',
'tog-enotifminoredits' => 'Notificar-me por correio electrónico também sobre edições menores de páginas ou ficheiros',
'wednesday' => 'quarta-feira',
'thursday' => 'quinta-feira',
'friday' => 'sexta-feira',
-'saturday' => 'Sábado',
-'sun' => 'Dom',
-'mon' => 'Seg',
-'tue' => 'Ter',
-'wed' => 'Qua',
-'thu' => 'Qui',
-'fri' => 'Sex',
-'sat' => 'Sáb',
+'saturday' => 'sábado',
+'sun' => 'dom',
+'mon' => 'seg',
+'tue' => 'ter',
+'wed' => 'qua',
+'thu' => 'qui',
+'fri' => 'sex',
+'sat' => 'sáb',
'january' => 'janeiro',
'february' => 'fevereiro',
'march' => 'março',
'october' => 'outubro',
'november' => 'novembro',
'december' => 'dezembro',
-'january-gen' => 'Janeiro',
-'february-gen' => 'Fevereiro',
+'january-gen' => 'janeiro',
+'february-gen' => 'fevereiro',
'march-gen' => 'Março',
-'april-gen' => 'Abril',
-'may-gen' => 'Maio',
-'june-gen' => 'Junho',
-'july-gen' => 'Julho',
-'august-gen' => 'Agosto',
-'september-gen' => 'Setembro',
-'october-gen' => 'Outubro',
-'november-gen' => 'Novembro',
-'december-gen' => 'Dezembro',
+'april-gen' => 'abril',
+'may-gen' => 'maio',
+'june-gen' => 'junho',
+'july-gen' => 'julho',
+'august-gen' => 'agosto',
+'september-gen' => 'setembro',
+'october-gen' => 'outubro',
+'november-gen' => 'novembro',
+'december-gen' => 'dezembro',
'jan' => 'Jan.',
'feb' => 'Fev.',
'mar' => 'Mar.',
'passwordtooshort' => 'A palavra-chave deve ter no mínimo $1 {{PLURAL:$1|carácter|caracteres}}.',
'password-name-match' => 'A sua palavra-chave tem de ser diferente do seu nome de utilizador.',
'password-login-forbidden' => 'Foi proibido o uso deste nome de utilizador e palavra-chave.',
-'mailmypassword' => 'Enviar uma palavra-chave nova por correio electrónico',
+'mailmypassword' => 'Reiniciar a palavra-chave',
'passwordremindertitle' => 'Nova palavra-chave temporária na {{SITENAME}}',
'passwordremindertext' => 'Alguém (provavelmente você, a partir do endereço IP $1) solicitou uma palavra-chave nova para a sua conta na {{SITENAME}} ($4).
Foi criada a palavra-chave temporária "$3" para o utilizador "$2".
# Special:PasswordReset
'passwordreset' => 'Repor palavra-chave',
'passwordreset-text-one' => 'Preencha este formulário para repor a sua palavra-passe.',
-'passwordreset-text-many' => '{{PLURAL:$1|Preencha um dos campos para redefinir sua senha.}}',
+'passwordreset-text-many' => '{{PLURAL:$1|Preencha um dos campos para redefinir sua senha via correio eletrónico.}}',
'passwordreset-legend' => 'Reiniciar a palavra-chave',
'passwordreset-disabled' => 'O reinício da palavra-chave foi impossibilitado nesta wiki.',
'passwordreset-emaildisabled' => 'Recursos de e-mail foram desativados neste wiki.',
'prefs-tokenwatchlist' => 'Chave',
'prefs-diffs' => 'Diferenças',
'prefs-help-prefershttps' => 'Esta preferência terá efeito no seu próximo início de sessão.',
+'prefs-tabs-navigation-hint' => 'Dica: Você pode utilizar as setas direita-esquerda do teclado para navegar entre as guias na lista.',
# User preference: email validation using jQuery
'email-address-validity-valid' => 'Parece válido',
'recentchanges-label-minor' => 'Esta é uma edição menor',
'recentchanges-label-bot' => 'Esta edição foi feita por um robô',
'recentchanges-label-unpatrolled' => 'Esta edição ainda não foi patrulhada',
+'recentchanges-label-plusminus' => 'Alteração no tamanho da página, em bytes',
'recentchanges-legend-newpage' => '(ver também a [[Special:NewPages|lista de páginas novas]])',
-'rcnote' => "A seguir {{PLURAL:$1|está listada '''uma''' alteração ocorrida|estão listadas '''$1''' alterações ocorridas}} {{PLURAL:$2|no último dia|nos últimos '''$2''' dias}}, a partir das $5 de $4.",
'rcnotefrom' => 'Abaixo estão as mudanças desde <b>$2</b> (mostradas até <b>$1</b>).',
'rclistfrom' => 'Mostrar as novas mudanças a partir das $1',
'rcshowhideminor' => '$1 edições menores',
'undeletebtn' => 'Restaurar',
'undeletelink' => 'ver/restaurar',
'undeleteviewlink' => 'ver',
-'undeletereset' => 'Limpar',
'undeleteinvert' => 'Inverter seleção',
'undeletecomment' => 'Motivo:',
'undeletedrevisions' => '$1 {{PLURAL:$1|edição restaurada|edições restauradas}}',
'block' => 'Bloquear utilizador',
'unblock' => 'Desbloquear utilizador',
'blockip' => 'Bloquear utilizador',
-'blockip-title' => 'Bloquear utilizador',
'blockip-legend' => 'Bloquear utilizador',
'blockiptext' => 'Utilize o formulário abaixo para bloquear o acesso de escrita a um endereço IP específico ou a um nome de utilizador.
Isto só deve ser feito para prevenir vandalismo e de acordo com a [[{{MediaWiki:Policy-url}}|política]]. Indique a seguir um motivo de bloqueio específico (por exemplo, indicando as páginas que foram alvo de vandalismo).',
'ipadressorusername' => 'Endereço IP ou nome de utilizador:',
'ipbexpiry' => 'Expiração:',
'ipbreason' => 'Motivo:',
-'ipbreasonotherlist' => 'Outro motivo',
'ipbreason-dropdown' => '*Razões comuns para um bloqueio
** Inserção de informações falsas
** Remoção de conteúdos de páginas
'ipbsubmit' => 'Bloquear este utilizador',
'ipbother' => 'Outro período:',
'ipboptions' => '2 horas:2 hours,1 dia:1 day,3 dias:3 days,1 semana:1 week,2 semanas:2 weeks,1 mês:1 month,3 meses:3 months,6 meses:6 months,1 ano:1 year,indefinido:infinite',
-'ipbotheroption' => 'outro',
-'ipbotherreason' => 'Outro motivo/motivo adicional:',
'ipbhidename' => 'Ocultar nome de utilizador nas edições e listas',
'ipbwatchuser' => 'Vigiar as páginas de utilizador e de discussão deste utilizador',
'ipb-disableusertalk' => 'Impedir que este utilizador edite a sua página de discussão enquanto estiver bloqueado',
'sorbsreason' => "O seu endereço IP encontra-se listado como ''proxy'' aberto na DNSBL utilizada pela {{SITENAME}}.",
'sorbs_create_account_reason' => "O seu endereço IP encontra-se listado como ''proxy'' aberto na DNSBL utilizada pela {{SITENAME}}. Não pode criar uma conta",
'xffblockreason' => 'Um endereço IP presente no cabeçalho X-Forwarded-For, seja seu ou de um servidor de proxy que estiver a usar, foi bloqueado. A razão do bloqueio original foi: $1',
-'cant-block-while-blocked' => 'Não pode bloquear outros utilizadores enquanto estiver bloqueado.',
'cant-see-hidden-user' => "O utilizador que está tentando bloquear já está bloqueado e oculto.
Como não tem o privilégio para ocultar utilizadores ''(hideuser)'', não pode ver ou editar o bloqueio deste utilizador.",
'ipbblocked' => 'Não pode bloquear ou desbloquear outros, porque está bloqueado',
Permite colocar uma justificação no resumo da edição.',
'tooltip-preferences-save' => 'Gravar preferências',
'tooltip-summary' => 'Introduza um resumo breve',
+'interlanguage-link-title' => '$1 — $2',
# Stylesheets
'common.css' => '/* Código CSS colocado aqui será aplicado a todos os temas */',
'pageinfo-length' => 'Tamanho da página (em bytes)',
'pageinfo-article-id' => 'ID da página',
'pageinfo-language' => 'Idioma do conteúdo da página',
+'pageinfo-content-model' => 'Modelo de conteúdo de página',
'pageinfo-robot-policy' => 'Indexação por robôs',
'pageinfo-robot-index' => 'Permitida',
'pageinfo-robot-noindex' => 'Não permitida',
'watchlistall2' => 'todas',
'namespacesall' => 'todos',
'monthsall' => 'todos',
-'limitall' => 'tudo',
# Email address confirmation
'confirmemail' => 'Confirmar endereço de correio electrónico',
'confirmemail_success' => 'O seu endereço de correio electrónico foi confirmado.
Pode agora [[Special:UserLogin|autenticar-se]] e desfrutar da wiki.',
'confirmemail_loggedin' => 'O seu endereço de correio electrónico foi confirmado.',
-'confirmemail_error' => 'Alguma coisa correu mal ao gravar a sua confirmação.',
'confirmemail_subject' => 'Confirmação de endereço de correio electrónico da {{SITENAME}}',
'confirmemail_body' => 'Alguém, provavelmente você a partir do endereço IP $1,
registrou uma conta "$2" com este endereço de correio eletrónico na {{SITENAME}}.
'imgmultigo' => 'Ir!',
'imgmultigoto' => 'Ir para a página $1',
+# Language selector for translatable SVGs
+'img-lang-default' => '(língua padrão)',
+'img-lang-info' => 'Renderizar essa imagem em $1 $2.',
+'img-lang-go' => 'Ir',
+
# Table pager
'ascending_abbrev' => 'asc',
'descending_abbrev' => 'desc',
# Special:ComparePages
'comparepages' => 'Comparar páginas',
-'compare-selector' => 'Comparar edições da página',
'compare-page1' => 'Página 1',
'compare-page2' => 'Página 2',
'compare-rev1' => 'Edição 1',
# Limit report
'limitreport-title' => 'Dados de perfis do analisador:',
+'limitreport-cputime' => 'Tempo de utilização da CPU',
'limitreport-cputime-value' => '$1 {{PLURAL:$1|segundo|segundos}}',
+'limitreport-walltime' => 'Tempo real de utilização',
'limitreport-walltime-value' => '$1 {{PLURAL:$1|segundo|segundos}}',
'limitreport-postexpandincludesize-value' => '$1/$2 {{PLURAL:$2|byte|bytes}}',
'limitreport-templateargumentsize' => 'Tamanho dos argumentos da predefinição',
* @author McDutchie
* @author MetalBrasil
* @author MisterSanderson
+ * @author Mordecaista
* @author Nemo bis
* @author OTAVIO1981
* @author Opraco
'tog-minordefault' => 'Marcar todas as edições como menores por padrão',
'tog-previewontop' => 'Mostrar previsão antes da caixa de edição',
'tog-previewonfirst' => 'Mostrar previsão na primeira edição',
-'tog-nocache' => 'Desativar o cache de páginas do navegador',
'tog-enotifwatchlistpages' => 'Notificar-me por email quando uma página ou arquivo vigiado for alterado',
'tog-enotifusertalkpages' => 'Receber email quando minha página de discussão for editada',
'tog-enotifminoredits' => 'Notificar-me por email também sobre edições menores de páginas ou arquivos',
'youhavenewmessages' => 'Você tem $1 ($2).',
'youhavenewmessagesfromusers' => 'Você tem $1 de {{PLURAL:$3|outro usuário|$3 usuários}} ($2)',
'youhavenewmessagesmanyusers' => 'Você tem $1 de muitos usuários ($2).',
-'newmessageslinkplural' => '{{PLURAL:$1|uma mensagem nova|mensagens novas}}',
-'newmessagesdifflinkplural' => '{{PLURAL:$1|última alteração|últimas alterações}}',
+'newmessageslinkplural' => '{{PLURAL:$1|uma mensagem nova|999=mensagens novas}}',
+'newmessagesdifflinkplural' => 'último {{PLURAL:$1|mudança|999=mudanças}}',
'youhavenewmessagesmulti' => 'Você tem novas mensagens em $1',
'editsection' => 'editar',
'editold' => 'editar',
'invalidtitle-knownnamespace' => 'Título inválido para o espaço nominal "$2" e texto "$3"',
'invalidtitle-unknownnamespace' => 'Título inválido para o espaço nominal de número desconhecido ($1) e texto "$2"',
'exception-nologin' => 'Não está autenticado',
-'exception-nologin-text' => 'Esta página ou ação requer que você esteja autenticado neste wiki.',
+'exception-nologin-text' => 'Por favor clique [[Special:Userlogin|log in]] para poder acessar esta página ou ação',
+'exception-nologin-text-manual' => 'Por favor clique $1 para poder acessar essa página ou ação.',
# Virus scanner
'virus-badscanner' => "Má configuração: antivírus desconhecido: ''$1''",
'passwordtooshort' => 'As senhas devem ter no mínimo {{PLURAL:$1|1 caractere|$1 caracteres}}.',
'password-name-match' => 'A sua senha deve ser diferente do seu nome de usuário.',
'password-login-forbidden' => 'O uso deste nome de usuário e senha foi desautorizado.',
-'mailmypassword' => 'Enviar uma nova senha por e-mail',
+'mailmypassword' => 'Redefinir senha',
'passwordremindertitle' => 'Nova senha temporária em {{SITENAME}}',
'passwordremindertext' => 'Alguém (provavelmente você, a partir do endereço de IP $1) solicitou uma nova senha para {{SITENAME}} ($4). Foi criada uma senha temporária para o usuário "$2", sendo ela "$3". Se esta era sua intenção, você precisará se autenticar e escolher uma nova senha agora.
A sua senha temporária expirará em {{PLURAL:$5|um dia|$5 dias}}.
'acct_creation_throttle_hit' => 'Visitantes deste wiki utilizando o seu endereço IP criaram {{PLURAL:$1|1 conta|$1 contas}} no último dia, o que é o máximo permitido neste período de tempo.
Como resultado, visitantes que usam este endereço IP não podem criar mais nenhuma conta no momento.',
'emailauthenticated' => 'O seu endereço de e-mail foi autenticado às $3 de $2.',
-'emailnotauthenticated' => 'O seu endereço de e-mail ainda não foi autenticado. Não lhe será enviado nenhum e-mail sobre nenhuma das seguintes funcionalidades.',
+'emailnotauthenticated' => 'O seu endereço de e-mail ainda não foi autenticado.
+Não lhe será enviado nenhum e-mail sobre nenhuma das seguintes funcionalidades.',
'noemailprefs' => 'Especifique um endereço de e-mail para que os seguintes recursos funcionem.',
'emailconfirmlink' => 'Confirme o seu endereço de e-mail',
'invalidemailaddress' => "O endereço de ''e-mail'' não pode ser aceite devido a talvez possuir um formato inválido. Por favor, introduza um endereço bem formatado ou esvazie o campo.",
Você só deve reiniciá-los se compartilhou-os com alguém ou se a sua conta foi comprometida.',
'resettokens-no-tokens' => 'Não existem tokens para reiniciar.',
'resettokens-legend' => 'Reiniciar tokens',
+'resettokens-tokens' => 'Símbolos:',
'resettokens-token-label' => '$1 (valor atual: $2)',
'resettokens-watchlist-token' => 'Tokens para o feed da web (Atom/RSS) das [[Special:Watchlist|mudanças de páginas em sua lista de páginas vigiadas]]',
'resettokens-done' => 'Tokens reiniciados.',
Outros administradores no {{SITENAME}} continuarão podendo acessar ao conteúdo escondido e restaurá-lo através desta mesma ''interface'', a menos que uma restrição adicional seja definida.",
'revdelete-confirm' => 'Por favor confirme que pretende executar esta ação, que compreende as suas consequências e que o faz em concordância com as [[{{MediaWiki:Policy-url}}|políticas e recomendações]].',
'revdelete-suppress-text' => "A supressão deverá ser usada '''apenas''' para os seguintes casos:
+* Informação potencialmente difamatória
* Informação pessoal inapropriada
*: ''endereços de domicílio e números de telefone, números da segurança social, etc''",
'revdelete-legend' => 'Definir restrições de visualização',
-'revdelete-hide-text' => 'Ocultar texto da edição',
+'revdelete-hide-text' => 'Texto de revisão',
'revdelete-hide-image' => 'Ocultar conteúdos do arquivo',
'revdelete-hide-name' => 'Ocultar ação e alvo',
'revdelete-hide-comment' => 'Sumário de edição',
'preferences' => 'Preferências',
'mypreferences' => 'Preferências',
'prefs-edits' => 'Número de edições:',
+'prefsnologintext2' => 'Por favor clique $1 para alterar suas preferências',
'prefs-skin' => 'Tema',
'skin-preview' => 'Pré-visualização',
'datedefault' => 'Sem preferência',
'recentchanges-label-minor' => 'Esta é uma edição menor',
'recentchanges-label-bot' => 'Esta edição foi feita por um robô',
'recentchanges-label-unpatrolled' => 'Esta edição ainda não foi patrulhada',
-'recentchanges-legend-newpage' => '$1 - nova página',
-'rcnote' => "A seguir {{PLURAL:$1|está listada '''uma''' alteração ocorrida|estão listadas '''$1''' alterações ocorridas}} {{PLURAL:$2|no último dia|nos últimos '''$2''' dias}}, a partir das $5 de $4.",
+'recentchanges-label-plusminus' => 'Alteração no tamanho da página, em bytes',
+'recentchanges-legend-newpage' => '(também veja [[Special:NewPages|lista de novas páginas]])',
'rcnotefrom' => "Seguem as alterações desde as '''$4''' de '''$3''' (limitadas a '''$1''').",
'rclistfrom' => 'Mostrar as novas alterações a partir das $1',
'rcshowhideminor' => '$1 edições menores',
'pageswithprop-text' => 'Esta página lista as páginas que usam uma determinada propriedade de página.',
'pageswithprop-prop' => 'Nome da propriedade:',
'pageswithprop-submit' => 'Ir',
+'pageswithprop-prophidden-long' => 'Longa propriedade de texto oculta ($1)',
+'pageswithprop-prophidden-binary' => 'Valor de propriedade binária oculta ($1)',
'doubleredirects' => 'Redirecionamentos duplos',
'doubleredirectstext' => 'Esta página lista as páginas que redirecionam para outros redirecionamentos.
'undeletebtn' => 'Restaurar',
'undeletelink' => 'ver/restaurar',
'undeleteviewlink' => 'visualizar',
-'undeletereset' => 'Limpar',
'undeleteinvert' => 'Inverter seleção',
'undeletecomment' => 'Motivo:',
'undeletedrevisions' => '$1 {{PLURAL:$1|edição restaurada|edições restauradas}}',
'block' => 'Bloquear usuário',
'unblock' => 'Desbloquear usuário',
'blockip' => 'Bloquear usuário',
-'blockip-title' => 'Bloquear usuário',
'blockip-legend' => 'Bloquear usuário',
'blockiptext' => 'Utilize o formulário abaixo para bloquear o acesso à escrita de um endereço específico de IP ou nome de usuário.
Isto só deve ser feito para prevenir vandalismo, e de acordo com a [[{{MediaWiki:Policy-url}}|política]]. Preencha com um motivo específico a seguir (por exemplo, citando páginas que sofreram vandalismo).',
'ipadressorusername' => 'Endereço de IP ou nome de usuário:',
'ipbexpiry' => 'Expiração:',
'ipbreason' => 'Motivo:',
-'ipbreasonotherlist' => 'Outro motivo',
'ipbreason-dropdown' => '*Razões comuns para um bloqueio
** Inserindo informações falsas
** Removendo o conteúdo de páginas
'ipbsubmit' => 'Bloquear este usuário',
'ipbother' => 'Outro período:',
'ipboptions' => '2 horas:2 hours,1 dia:1 day,3 dias:3 days,1 semana:1 week,2 semanas:2 weeks,1 mês:1 month,3 meses:3 months,6 meses:6 months,1 ano:1 year,indefinido:infinite',
-'ipbotheroption' => 'outro',
-'ipbotherreason' => 'Outro motivo/motivo adicional:',
'ipbhidename' => 'Ocultar nome de usuário em edições e listas',
'ipbwatchuser' => 'Vigiar a página de usuário e a página de discussão deste usuário',
'ipb-disableusertalk' => 'Impedir que este usuário edite a sua página de discussão enquanto estiver bloqueado',
'sorbsreason' => 'O seu endereço IP encontra-se listado como proxy aberto pela DNSBL utilizada por {{SITENAME}}.',
'sorbs_create_account_reason' => 'O seu endereço de IP encontra-se listado como proxy aberto na DNSBL utilizada por {{SITENAME}}. Você não pode criar uma conta',
'xffblockreason' => 'Um endereço IP presente no cabeçalho X-Forwarded-For, seu ou do servidor proxy que está usando, foi bloqueado. O motivo original do bloqueio foi: $1',
-'cant-block-while-blocked' => 'Você não pode bloquear outros usuários enquanto estiver bloqueado.',
'cant-see-hidden-user' => 'O usuário que você está tentando bloquear já está bloqueado ou oculto. Como você não possui privilégio de ocultar usuários, você não pode ver ou editar o bloqueio desse usuário.',
'ipbblocked' => 'Não é possível que você bloqueie ou desbloqueie outros usuários, já que você se encontra bloqueado',
'ipbnounblockself' => 'Não é permitido que você se desbloqueie',
'pageinfo-length' => 'Tamanho da página (em bytes)',
'pageinfo-article-id' => 'ID da página',
'pageinfo-language' => 'Idioma do conteúdo da página',
+'pageinfo-content-model' => 'Modelo de conteúdo de página',
'pageinfo-robot-policy' => 'Indexado por robôs',
'pageinfo-robot-index' => 'Autorizado',
'pageinfo-robot-noindex' => 'Desautorizado',
'svg-long-desc' => 'arquivo SVG, de $1 × $2 pixels, tamanho: $3',
'svg-long-desc-animated' => 'arquivo SVG animado, de $1 × $2 pixels e de tamanho: $3',
'svg-long-error' => 'Arquivo SVG inválido: $1',
-'show-big-image' => 'Resolução original',
+'show-big-image' => 'Arquivo original',
'show-big-image-preview' => 'Tamanho desta previsualização: $1.',
'show-big-image-other' => '{{PLURAL:$2|Outra resolução|Outras resoluções}}: $1.',
'show-big-image-size' => '$1 × $2 pixels',
'watchlistall2' => 'todas',
'namespacesall' => 'todos',
'monthsall' => 'todos',
-'limitall' => 'todas',
# Email address confirmation
'confirmemail' => 'Confirmar endereço de E-mail',
'confirmemail_needlogin' => 'Precisa de $1 para confirmar o seu endereço de e-mail.',
'confirmemail_success' => 'O seu endereço de e-mail foi confirmado. Pode agora se ligar.',
'confirmemail_loggedin' => 'O seu endereço de e-mail foi agora confirmado.',
-'confirmemail_error' => 'Alguma coisa correu mal ao guardar a sua confirmação.',
'confirmemail_subject' => '{{SITENAME}} confirmação de endereço de e-mail',
'confirmemail_body' => 'Alguém, provavelmente você, com o endereço de IP $1,
registrou uma conta "$2" com este endereço de e-mail em {{SITENAME}}.
'imgmultigo' => 'Ir!',
'imgmultigoto' => 'Ir para a página $1',
+# Language selector for translatable SVGs
+'img-lang-default' => '(Idioma padrão)',
+'img-lang-info' => 'Renderizar essa imagem em $1 $2',
+'img-lang-go' => 'Ir',
+
# Table pager
'ascending_abbrev' => 'asc',
'descending_abbrev' => 'desc',
# Special:Redirect
'redirect' => 'Redirecionar por arquivo, usuário ou ID de revisão',
'redirect-legend' => 'Redirecionar para um arquivo ou página',
-'redirect-summary' => 'Esta página especial redireciona a um arquivo (dado o nome do arquivo), a uma página (dado um ID de revisão) ou a uma página de usuário (dado o ID do usuário).',
+'redirect-summary' => 'Esta página especial redireciona a um arquivo (dado o nome do arquivo), a uma página (dado um ID de revisão) ou a uma página de usuário (dado o ID do usuário). Uso: [[{{#Special:Redirect}}/file/Example.jpg]], [[{{#Special:Redirect}}/revision/328429]], ou [[{{#Special:Redirect}}/user/101]].',
'redirect-submit' => 'Ir',
'redirect-lookup' => 'Buscar',
'redirect-value' => 'Valor:',
# Special:ComparePages
'comparepages' => 'Comparar páginas',
-'compare-selector' => 'Comparar edições da página',
'compare-page1' => 'Página 1',
'compare-page2' => 'Página 2',
'compare-rev1' => 'Edição 1',
'tog-minordefault' => "[[Special:Preferences]], tab 'Edit'. Offers user to mark all edits minor by default. {{Gender}}",
'tog-previewontop' => 'Toggle option used in [[Special:Preferences]]. {{Gender}}',
'tog-previewonfirst' => 'Toggle option used in [[Special:Preferences]]. {{Gender}}',
-'tog-nocache' => "[[Special:Preferences]], tab 'Misc.'. Offers the user the option of disabling caching of pages in the browser. {{Gender}}",
'tog-enotifwatchlistpages' => 'Option in [[Special:Preferences]] > {{int:prefs-personal}} > {{int:email}}. {{Gender}}',
'tog-enotifusertalkpages' => 'Option in [[Special:Preferences]] > {{int:prefs-personal}} > {{int:email}}. {{Gender}}',
'tog-enotifminoredits' => 'Option in [[Special:Preferences]] > {{int:prefs-personal}} > {{int:email}}. {{Gender}}
'gotaccountlink' => 'Since 1.22 no longer used in core, but may be used by some extensions. DEPRECATED.
{{Identical|Log in}}',
'userlogin-resetlink' => 'Since 1.22 no longer used in core, but may be used by some extensions. DEPRECATED.',
-'userlogin-resetpassword-link' => 'Used as link text on login form.
+'userlogin-resetpassword-link' => 'Used as link text in the login form.
-The link points to the local [[Special:PasswordReset]].
+The link points to the local page [[Special:PasswordReset]].
See example: [[Special:UserLogin]]
'resetpass_submit' => 'Submit button on [[Special:ChangePassword]]',
'changepassword-success' => 'Used in [[Special:ChangePassword]].',
'resetpass_forbidden' => "Used as error message in changing password. Maybe the external auth plugin won't allow local password changes.",
-'resetpass-no-info' => 'Error message for [[Special:ChangePassword]].',
+'resetpass-no-info' => 'Error message for [[Special:ChangePassword]].
+
+Parameters:
+* $1 (unused) - a link to [[Special:UserLogin]] with {{msg-mw|loginreqlink}} as link description',
'resetpass-submit-loggedin' => 'Button on [[Special:ResetPass]] to submit new password.
{{Identical|Change password}}',
'changeemail' => 'Title of [[Special:ChangeEmail|special page]].',
'changeemail-header' => 'Header on [[Special:ChangeEmail]].',
'changeemail-text' => 'Text of [[Special:ChangeEmail]].',
-'changeemail-no-info' => 'Error message for [[Special:ChangeEmail]].',
+'changeemail-no-info' => 'Error message for [[Special:ChangeEmail]].
+
+Parameters:
+* $1 (unused) - a link to [[Special:UserLogin]] with {{msg-mw|loginreqlink}} as link description',
'changeemail-oldemail' => 'Label for e-mail address field in [[Special:ChangeEmail]].',
'changeemail-newemail' => 'Label for e-mail address field in [[Special:ChangeEmail]].',
'changeemail-none' => "Probably appears in 'Current E-mail address' field when no address held, in [[Special:ChangeEmail]].
{{Identical|Login required}}',
'loginreqlink' => 'Take a look on inflection. Used as <code>$1</code> in the following messages:
* {{msg-mw|loginreqpagetext}}
+* {{msg-mw|exception-nologin-text-manual}}
* {{msg-mw|whitelistedittext}}
* {{msg-mw|Uploadnologintext}}
-* {{msg-mw|watchlistanontext}}
-* {{msg-mw|Confirmemail needlogin}}
+* {{msg-mw|watchlistanontext}}
+* {{msg-mw|confirmemail_needlogin}}
+* {{msg-mw|changeemail-no-info}}
+* {{msg-mw|resetpass-no-info}}
+* {{msg-mw|prefsnologintext2}}
{{Identical|Log in}}',
'loginreqpagetext' => 'This message is displayed if an anonymous reader attempts to access a page which is only available to logged-in users.
'searchmenu-exists' => 'An option shown in a menu beside search form offering a link to the existing page having the specified title (when using the default MediaWiki search engine).
Parameters:
-* $1 - page title',
+* $1 - page title
+* $2 - the number of search results found',
'searchmenu-new' => 'An option shown in a menu beside search form offering a red link to the not yet existing page having the specified title (when using the default MediaWiki search engine).
Parameters:
-* $1 - page title',
+* $1 - page title
+* $2 - the number of search results found',
'searchprofile-articles' => "A quick link in the advanced search box on [[Special:Search]]. Clicking on this link starts a search in the content pages of the wiki.
A 'content page' is a page that forms part of the purpose of the wiki. It includes the main page and pages in the main namespace and any other namespaces that are included when the wiki is customised. For example on Wikimedia Commons 'content pages' include pages in the file and category namespaces. On Wikinews 'content pages' include pages in the Portal namespace. For technical definition of 'content namespaces' see [[mw:Manual:Using_custom_namespaces#Content_namespaces|MediaWiki]].
The checkbox has the label {{msg-mw|Tog-prefershttps}}.
See example: [[mw:Special:Preferences]].',
+'prefs-tabs-navigation-hint' => 'Hint message that explains the arrow key navigation for the tabs on Special:Preferences to screenreader users.',
# User preference: email validation using jQuery
'email-address-validity-valid' => 'Used as hint for {{msg-mw|changeemail-newemail}} field in [[Special:ChangeEmail]], when the provided E-mail address is valid.',
Preceded by legend example {{msg-mw|Recentchanges-legend-plusminus}}.',
'recentchanges-legend-newpage' => 'Used as legend in [[Special:RecentChanges]]. Preceded by {{msg-mw|Recentchanges-label-newpage}}.',
'recentchanges-legend-plusminus' => 'A plus/minus sign with a number for the legend.',
-'rcnote' => 'Used on [[Special:RecentChanges]].
-
-Similar to {{msg-mw|wlnote}} which is used on [[Special:Watchlist]].
-
-Parameters:
-* $1 - the number of changes shown
-* $2 - the number of days for which the changes are shown
-* $3 - (Unused) a date and time
-* $4 - a date alone
-* $5 - a time alone
-
- <!--Example: "\'\'Below are the last 50 changes in the last 7 days, as of 14:48, 24 January 2008.\'\'"-->
- Example: "\'\'{{int:rcnote/en|50|7||24 January 2008|14:48}}\'\'"
-See also:
-* {{msg-mw|Rcnotefrom}}',
'rcnotefrom' => 'This message is displayed at [[Special:RecentChanges]] when viewing recentchanges from some specific time.
The corresponding message is {{msg-mw|Rclistfrom}} (without split of date and time, [[bugzilla:19104|Bug 19104]]).
'undeleteviewlink' => 'First part of {{msg-mw|undeletelink}}.
Display name of link to view a deleted page used on [[Special:Log/delete]].
{{Identical|View}}',
-'undeletereset' => 'Shown on [[Special:Undelete]] as button caption.
-{{Identical|Reset}}',
'undeleteinvert' => '{{Identical|Invert selection}}',
'undeletecomment' => '{{Identical|Reason}}',
'undeletedrevisions' => 'Used as reason in the log entry. Parameters:
'blockip' => 'The title of the special page [[Special:BlockIP]].
{{Identical|Block user}}',
-'blockip-title' => '{{Identical|Block user}}',
'blockip-legend' => 'Legend/Header for the fieldset around the input form of [[Special:Block]].
{{Identical|Block user}}',
'ipbreason' => 'Label of the block reason dropdown in [[Special:BlockIP]] and the unblock reason textfield in [{{fullurl:Special:IPBlockList|action=unblock}} Special:IPBlockList?action=unblock].
{{Identical|Reason}}',
-'ipbreasonotherlist' => '{{Identical|Other reason}}',
'ipbreason-dropdown' => 'Used as item list for dropdown on [[Special:Block]].
The label for this dropdown is {{msg-mw|Ipbreason}}.',
'ipboptions' => "{{doc-important|Be careful: '''1 translation:1 english''', so the first part is the translation and the second part should stay in English.}}
Options for the duration of the block. Example: See e.g. [[MediaWiki:Ipboptions/nl]] if you still don't know how to do it.
{{Identical|Infinite}}",
-'ipbotheroption' => '{{Identical|Other}}',
-'ipbotherreason' => '{{Identical|Other/additional reason}}',
'ipbhidename' => 'This is the label for a checkbox in the user block form on [[Special:Block]].
See also:
{{Identical|All}}',
'monthsall' => 'Used in a drop-down box on [[Special:Contributions]] as an option for "all months". See also {{msg-mw|Month}}.
-{{Identical|All}}',
-'limitall' => 'Used on [[Special:AllMessages]] (and potentially other TablePager based tables) to display "all" the messages.
-
{{Identical|All}}',
# Email address confirmation
* {{msg-mw|Confirmemail oncreate}}',
'confirmemail_invalid' => 'Error message on [[Special:ConfirmEmail]] on error of confirmation.',
'confirmemail_needlogin' => 'Used on [[Special:ConfirmEmail]] when you are logged out.
-* $1 is a link to [[Special:UserLogin]] with {{msg-mw|loginreqlink}} as link description',
+
+Parameters:
+* $1 - a link to [[Special:UserLogin]] with {{msg-mw|loginreqlink}} as link description',
'confirmemail_success' => 'Explanation on [[Special:ConfirmEmail]] on completion of confirmation.',
'confirmemail_loggedin' => 'Explanation on [[Special:ConfirmEmail]] on completion of confirmation.',
-'confirmemail_error' => 'Error message on [[Special:ConfirmEmail]]',
'confirmemail_subject' => 'Subject of the e-mail sent to user during e-mail address confirmation
{{Identical|SITENAME e-mail address confirmation}}',
'confirmemail_body' => 'Body of the email sent to user when their account is created or they confirm their email address.
* {{msg-mw|Imgmultigo|Submit button text}}',
# Language selector for translatable SVGs
-'img-lang-opt' => '{{optional}} Items in the language drop down on the image page for a translated SVG file. For an example see [[:File:Gerrit patchset 25838 test.svg]]. See also {{msg-mw|img-lang-info}}
+'img-lang-opt' => '{{optional}}
+Items in the language drop down on the image page for a translated SVG file. For an example see [[:File:Gerrit patchset 25838 test.svg]].
-* $1 Language code
-* $2 Language name (Either in the language in question, or the name of that language translated to the current users interface language)',
-'img-lang-default' => 'An option in the drop down of a translatable file. For example see [[:File:Gerrit patchset 25838 test.svg]]. Used when it cannot be determined what the default fallback language is. However it should be noted that most of the time, the content displayed for this option would be in English.',
+Parameters:
+* $1 - language code
+* $2 - language name (Either in the language in question, or the name of that language translated to the current users interface language)
+See also:
+* {{msg-mw|Img-lang-info}}',
+'img-lang-default' => 'An option in the drop down of a translatable file. For example see [[:File:Gerrit patchset 25838 test.svg]].
+
+Used when it cannot be determined what the default fallback language is.
+
+However it should be noted that most of the time, the content displayed for this option would be in English.
+{{Identical|Default language}}',
'img-lang-info' => 'Label for drop down box. Appears underneath the image on the image description page. See [[:File:Gerrit patchset 25838 test.svg]] for an example.
-* $1 is a drop down box with language options (See also {{msg-mw|img-lang-opt}})
-* $2 is a submit button, which uses the text from {{msg-mw|img-lang-go}}',
-'img-lang-go' => 'Go button for the language select for translatable files. See [[:File:Gerrit patchset 25838 test.svg]] for an example. See {{msg-mw|img-lang-info}}.',
+Parameters:
+* $1 - a drop down box with language options, uses the following messages:
+** {{msg-mw|Img-lang-default}}
+** {{msg-mw|Img-lang-opt}}. e.g. "English (en)", "日本語 (ja)"
+* $2 - a submit button, which uses the text from {{msg-mw|Img-lang-go}}',
+'img-lang-go' => 'Go button for the language select for translatable files. See [[:File:Gerrit patchset 25838 test.svg]] for an example.
+
+See also:
+* {{msg-mw|img-lang-info}}
+{{Identical|Go}}',
# Table pager
'ascending_abbrev' => 'Abbreviation of ascending order.
# Special:Tags
'tags' => "Shown on [[Special:Specialpages]] for page listing the tags that the software may mark an edit with, and their meaning. For more information on tags see [[mw:Manual:Tags|MediaWiki]].
-It appears that the word 'valid' describes 'tags', not 'change'. It also appears that you could use the term 'defined' instead of 'valid', or perhaps use a phrase meaning 'Change tags in use'.",
+It appears that the word 'valid' describes 'tags', not 'change'. It also appears that you could use the term 'defined' instead of 'valid', or perhaps use a phrase meaning 'The change tags that are in use'.",
'tag-filter' => 'Caption of a filter shown on lists of changes (e.g. [[Special:Log]], [[Special:Contributions]], [[Special:Newpages]], [[Special:Recentchanges]], [[Special:Recentchangeslinked]], page histories)',
'tag-filter-submit' => 'Caption of the submit button displayed next to the tag filter on lists of changes (e.g. [[Special:Log]], [[Special:Contributions]], [[Special:Newpages]], [[Special:Recentchanges]], [[Special:Recentchangeslinked]], page histories)
# Special:ComparePages
'comparepages' => 'The title of [[Special:ComparePages]]',
-'compare-selector' => 'Header of the form on [[Special:ComparePages]]',
'compare-page1' => 'Label for the field of the 1st page in the comparison for [[Special:ComparePages]]
{{Identical|Page}}',
'compare-page2' => 'Label for the field of the 2nd page in the comparison for [[Special:ComparePages]]
'tog-minordefault' => 'Tukuy hukchasqakunata kikinmanta aslla nispa sananchay',
'tog-previewontop' => "Rikch'ay qhawana ñawpaqman, ama qhipanpi kachunchu",
'tog-previewonfirst' => "Manaraq llamk'apuspa rikch'ayta qhaway",
-'tog-nocache' => "Llika wamp'unap ''cache'' nisqa paki hallch'anman ama niy",
'tog-enotifwatchlistpages' => "Watiqasqay p'anqa icha willañiqi hukchasqa kaptinqa, e-chaskita kachamuway",
'tog-enotifusertalkpages' => "Rimachinay p'anqa hukchasqa kaptinqa, e-chaskita kachamuway",
'tog-enotifminoredits' => "P'anqapi icha willañiqipi uchuy hukchasqamantapas willawaspa e-chaskita kachamuway",
'recentchanges-label-bot' => "Kayqa rurana antachap llamk'apusqanmi",
'recentchanges-label-unpatrolled' => "Kay llamk'apusqaqa manaraqmi patrullasqachu",
'recentchanges-legend-newpage' => "$1 - musuq p'anqa",
-'rcnote' => "Kay qatiqpiqa qhipaq {{PLURAL:$1|'''1''' hukchasqam|'''$1''' hukchasqakunam}} qhipaq {{PLURAL:$2|p'unchawpi|'''$2''' p'unchawkunapi}}, musuqchasqa $5, $4.",
'rcnotefrom' => "Kay qatiqpiqa '''$2'''-mantapacha ('''$1'''-kama) hukchasqakunatam rikunki.",
'rclistfrom' => '$1-manta musuq hukchasqakunata rikuchiy',
'rcshowhideminor' => "$1 uchuylla llamk'apusqakunata",
'undeletebtn' => 'Paqarichiy!',
'undeletelink' => 'qhaway/paqarichiy',
'undeleteviewlink' => 'qhaway',
-'undeletereset' => 'Mana imapas',
'undeleteinvert' => "Akllasqantinta t'ikrachiy",
'undeletecomment' => 'Kayrayku:',
'undeletedrevisions' => "{{PLURAL:$1|Huk paqarichisqa llamk'apusqa|$1 paqarichisqa llamk'apusqakuna}}",
'block' => "Ruraqta hark'ay",
'unblock' => "Hark'asqa ruraqta qispichiy",
'blockip' => "Ruraqta hark'ay",
-'blockip-title' => "Ruraqta hark'ay",
'blockip-legend' => "Ruraqta hark'ay",
'blockiptext' => "Kay qatiq hunt'ana p'anqata llamk'achiy huk sapaq IP huchhamanta icha ruraqpa rakiqunanmanta qillqay atiyta hark'anapaq.
Kayqa rurasqa kachun wandalismullatam hark'anapaq, [[{{MediaWiki:Policy-url}}|{{SITENAME}}pa kawpayninkamallam]].
'ipadressorusername' => 'IP huchha icha ruraqpa sutin',
'ipbexpiry' => "Hark'ay kaykama:",
'ipbreason' => 'Kayrayku:',
-'ipbreasonotherlist' => 'Huk rayku',
'ipbreason-dropdown' => "*Hark'anapaq sapsi raykukuna
** Llulla willayta qillqamuy
** P'anqata samiqninmanta ch'usaqchay
'ipbsubmit' => "Kay ruraqta hark'ay",
'ipbother' => 'Huk puchukana pacha:',
'ipboptions' => "2 ura:2 hours,1 p'unchaw:1 day,3 p'unchaw:3 days,1 simana:1 week,2 simana:2 weeks,1 killa:1 month,3 killa:3 months,6 killa:6 months,1 wata:1 year,Wiña-wiñaypaq:infinite",
-'ipbotheroption' => 'huk',
-'ipbotherreason' => 'Huk/aswan rayku:',
'ipbhidename' => "Ruraqpa sutinta llamk'apusqakunamanta, sutisuyukunamantapas pakay",
'ipbwatchuser' => "Kay ruraqpa p'anqanta rimachinantapas watiqay",
'ipb-disableusertalk' => "Kay ruraq hark'asqa kaspa kikinpa rimanakuy p'anqanta ama llamk'apuchunchu",
'proxyblockreason' => "IP huchhaykiqa hark'asqam kichasqa proxy kaptinmi. Ama hina kaspa, internet mink'aqniykiman icha allwiya yanapaqniykiman kay hatun qasi sasachakuymanta willay.",
'sorbsreason' => 'IP huchhaykiqa kichasqa proxy nispa {{SITENAME}}pi DNSBL nisqapi qillqasqam.',
'sorbs_create_account_reason' => 'IP huchhaykiqa kichasqa proxy nispa {{SITENAME}}pi DNSBL nisqapi qillqasqam. Manam atinkichu rakiqunata kichayta',
-'cant-block-while-blocked' => "Kikiyki hark'asqa kaspaykiqa, manam huk ruraqkunata hark'ayta atinkichu.",
'cant-see-hidden-user' => "Hark'aykachasqayki ruraqqa pipapas hark'asqanñam pakasqanñapas. Ruraqta pakay hayñiyuq mana kaspaykim, manam atinkichu ruraqpaq hark'ay hallch'asqata rikuyta icha hukchasqayta.",
'ipbblocked' => "Kikiyki hark'asqa kaspaykim, manam hukkunata hark'ayta icha hark'asqa kaymanta qispichiyta atinkichu",
'ipbnounblockself' => "Kikiykitaqa manam hark'asqa kaymanta qispikuyta atinkichu",
'watchlistall2' => 'lliw',
'namespacesall' => 'tukuy',
'monthsall' => '(tukuy)',
-'limitall' => 'tukuy',
# Email address confirmation
'confirmemail' => 'E-chaski imamaytaykita takyachiy',
'confirmemail_success' => 'E-chaski imamaytaykiqa takyachisqañam.
Kunanqa wikiman [[Special:UserLogin|yaykamuspayki]] ayniytam atinki.',
'confirmemail_loggedin' => 'E-chaski imamaytaykiqa takyachisqañam.',
-'confirmemail_error' => 'Ima pantasqapas tukurqan takyachinaykita waqaychaypi.',
'confirmemail_subject' => '{{SITENAME}} e-chaski imamayta takyachina',
'confirmemail_body' => 'Pipas (qamchiki, $1 IP huchhayuq tiyaymanta) kicharirqan {{SITENAME}}paq "$2" sutiyuq rakiqunatam, kay e-chaski imamaytayuq.
# Special:ComparePages
'comparepages' => "P'anqakunata wakichay",
-'compare-selector' => 'Musuqchasqakunata wakichay',
'compare-page1' => "P'anqa 1",
'compare-page2' => "P'anqa 2",
'compare-rev1' => 'Musuqchasqa 1',
'tog-watchdeletion' => 'Ñukapak pichashka pankakunata rikuna',
'tog-minordefault' => 'Nimata nikpika, ñukapak killkaykunata uchillami nina',
'tog-previewontop' => 'Ñauwpak rikuchik pankata killkana pankapak hawapi churana',
-'tog-nocache' => 'Wampunapi ama rikushka pankakunata yuyana',
'tog-enotifwatchlistpages' => 'Shuk rikushka pankata shukchishka kakpika, e-chaskita kachamushpami willaway',
'tog-enotifusertalkpages' => 'Ñukapak rimana pankapi mushuk killkayta tiyakpi, e-chaskiwan willaway',
'tog-enotifminoredits' => 'Mushuk killkayta uchilla kakpipash e-chaskiwan willaway',
'recentchanges-label-minor' => 'Kay killkayka uchillami kan',
'recentchanges-label-bot' => 'Kay killkata shuk killkachik-antakami rurarka',
'recentchanges-label-unpatrolled' => 'Chay killkayka mana kutin rikushkachu kan',
-'rcnote' => "Kay uraypi {{PLURAL:$1|'''1''' mushuk killkay|'''$1''' mushuk killkaykuna}} kipak {{PLURAL:$2|punchapi|'''$2''' punchakunapi}} ($5, $4 rurashka).",
'rcnotefrom' => "Katikka tukuy '''$2''' manta mushuk killkaykunata rikuchinchik ('''$1'''-kamanlla)",
'rclistfrom' => '$1-manta mushuk killkaykunata rikuchiy',
'rcshowhideminor' => 'uchilla killkaykunata $1',
'tog-minordefault' => 'Marcar tut las modificaziuns per ordinari sco pitschnas',
'tog-previewontop' => "Mussar la prevista sur il champ d'endatziun",
'tog-previewonfirst' => "Adina mussar la prevista suenter l'emprima modificaziun",
-'tog-nocache' => 'Impedir che tes navigatur memorisescha las paginas en il cache',
'tog-enotifwatchlistpages' => "Ma trametter in e-mail sch'ina pagina u ina datoteca sin mia glista d'observaziun vegn midada",
'tog-enotifusertalkpages' => "Trametta in e-mail sch'i ha dà midadas sin mia pagina da discussiun.",
'tog-enotifminoredits' => 'Era ma trametter in e-mail en cas da midadas pitschnas vid paginas u datotecas',
'recentchanges-label-bot' => 'Questa modificaziun è vegnida exequida dad in bot',
'recentchanges-label-unpatrolled' => "Questa midada n'è anc betg vegnida controllada",
'recentchanges-legend-newpage' => '$1 - nova pagina',
-'rcnote' => "Sutvart {{PLURAL:$1|è '''ina''' midada|èn las ultimas '''$1''' midadass}} {{PLURAL:$2|da l'ultim di|dals ultims '''$2''' dis}}, versiun dals $4 $5.",
'rcnotefrom' => "Midadas dapi '''$2''' (maximalmain '''$1''' vegnan mussads).",
'rclistfrom' => 'Mussar las novas midadas entschavend cun $1',
'rcshowhideminor' => '$1 midadas pitschnas',
'undeletebtn' => 'restituir',
'undeletelink' => 'mussar/restituir',
'undeleteviewlink' => 'contemplar',
-'undeletereset' => 'Redefinir',
'undeleteinvert' => 'Invertar la selecziun',
'undeletecomment' => 'Motiv:',
'undeletedrevisions' => 'Restituì {{PLURAL:$1|1 versiun|$1 versiuns}}',
'block' => "Bloccar l'utilisader",
'unblock' => 'Debloccar in utilisader',
'blockip' => "Bloccar l'utilisader",
-'blockip-title' => "Bloccar l'utilisader",
'blockip-legend' => "Bloccar l'utilisader",
'blockiptext' => "Utilisescha il formular sutvart per bloccar ina adressa IP u in utilisader uschia ch'el na po betg pli far midadas.
Ti duessas be far quai per impedir vandalissem e en ina moda confurma a las [[{{MediaWiki:Policy-url}}|directivas]].
'ipadressorusername' => "Adressa IP u num d'utilisader:",
'ipbexpiry' => 'Bloccà enfin:',
'ipbreason' => 'Motiv:',
-'ipbreasonotherlist' => 'Auter motiv',
'ipbreason-dropdown' => "*Motivs generals per bloccar
** Inserir infurmaziuns faussas
** Stizzar cuntegn da paginas
'ipbsubmit' => 'Bloccar quest utilisader',
'ipbother' => 'Auter temp:',
'ipboptions' => '2 uras:2 hours,1 di:1 day,3 dis:3 days,1 emna:1 week,2 emnas:2 weeks,1 mais:1 month,3 mais:3 months,6 mais:6 months,1 onn:1 year,permanent:infinite',
-'ipbotheroption' => 'auter',
-'ipbotherreason' => 'Auter/ulteriur motiv:',
'ipbhidename' => "Zuppentar il num d'utilisader en las modicaziuns e glistas",
'ipbwatchuser' => "Observar las paginas d'utilisader e da discussiun da quest utilisader",
'ipb-disableusertalk' => "Evitar che quest utilisader po modifitgar sia pagina da discussiun durant ch'el è bloccà.",
'sorbsreason' => 'Tia adressa IP fa part da la glista da proxys averts da DNSBL che vegn utilisada da {{SITENAME}}.',
'sorbs_create_account_reason' => "Tia adressa IP fa part da la glista da proxys averts da DNSBL che vegn utilisada da {{SITENAME}}.
Ti na pos betg crear in conto d'utilisader.",
-'cant-block-while-blocked' => 'Ti na pos betg bloccar auters utilisaders durant che ti es sez bloccà',
'cant-see-hidden-user' => "L'utilisader che ti emprovas da bloccar è gia bloccà e zuppentà.
Perquai che ti h'has betg il dretg «hideuser» na pos ti betg vesair u modifitgar la bloccada da l'utilisader.",
'ipbblocked' => 'Ti na pos betg bloccar u debloccar auters utilisaders perquai che ti es sez bloccà',
'watchlistall2' => 'tut',
'namespacesall' => 'tuts',
'monthsall' => 'tuts',
-'limitall' => 'tuts',
# Email address confirmation
'confirmemail' => "Confermar l'adressa dad e-mail",
'confirmemail_success' => "Tia adressa dad e-mail è vegnida confermada.
Ussa pos ti [[Special:UserLogin|t'annunziar]] ed utilisar la wiki.",
'confirmemail_loggedin' => 'Tia adressa dad e-mail è ussa vegnida confermada.',
-'confirmemail_error' => 'Insatge è crappà cun tes mail da confermaziun. Stgisa foll!',
'confirmemail_subject' => "{{SITENAME}} - Confermaziun da l'adressa dad e-mail",
'confirmemail_body' => 'Insatgi cun l\'adressa dad IP $1, probablamain ti,
ha creà il conto "$2" sin {{SITENAME}} cun questa adressa dad e-mail.
# Special:ComparePages
'comparepages' => 'Cumparegliar paginas',
-'compare-selector' => "Cumparegliar versiuns d'ina pagina",
'compare-page1' => 'Pagina 1',
'compare-page2' => 'Pagina 2',
'compare-rev1' => 'Versiun 1',
'tog-minordefault' => 'Marchează din oficiu toate modificările ca fiind minore',
'tog-previewontop' => 'Arată previzualizarea deasupra căsuței de modificare',
'tog-previewonfirst' => 'Arată previzualizarea la prima modificare',
-'tog-nocache' => 'Dezactivează opțiunea navigatorului de memorare în cache a paginilor',
'tog-enotifwatchlistpages' => 'Trimite-mi un e-mail atunci când o pagină sau un fișier din lista mea de pagini urmărite suferă modificări',
'tog-enotifusertalkpages' => 'Trimite-mi un email când pagina mea de discuții este modificată',
'tog-enotifminoredits' => 'Trimite-mi, de asemenea, un e-mail în caz de modificări minore asupra paginilor și fișierelor',
'recentchanges-label-plusminus' => 'Dimensiunea paginii s-a modificat corespunzător acestui număr de octeți',
'recentchanges-legend-newpage' => '(vezi și [[Special:NewPages|lista cu pagini noi]])',
'recentchanges-legend-plusminus' => "(''±123'')",
-'rcnote' => "Mai jos se află {{PLURAL:\$|ultima modificare|ultimele '''\$1''' modificări|ultimele '''\$1''' de modificări}} din {{PLURAL:\$2|ultima zi|ultimele '''\$2''' zile|ultimele '''\$2''' de zile}}, începând cu \$5, \$4.",
'rcnotefrom' => 'Dedesubt sunt modificările de la <b>$2</b> (maxim <b>$1</b> de modificări sunt afișate - schimbă numărul maxim de linii alegând altă valoare mai jos).',
'rclistfrom' => 'Se arată modificările începând cu $1',
'rcshowhideminor' => '$1 modificările minore',
'undeletebtn' => 'Recuperează',
'undeletelink' => 'vizualizare/recuperare',
'undeleteviewlink' => 'vezi',
-'undeletereset' => 'Resetează',
'undeleteinvert' => 'Exclude spațiul',
'undeletecomment' => 'Motiv:',
'undeletedrevisions' => '{{PLURAL:$1|o versiune restaurată|$1 versiuni restaurate|$1 de versiuni restaurate}}',
'block' => 'Blocare utilizator',
'unblock' => 'Deblocare utilizator',
'blockip' => 'Blocare utilizator',
-'blockip-title' => 'Blocare utilizator',
'blockip-legend' => 'Blocare utilizator/adresă IP',
'blockiptext' => "Pentru a bloca un utilizator completați rubricile de mai jos.<br />
'''Respectați [[{{MediaWiki:Policy-url}}|politica de blocare]].'''<br />
'ipadressorusername' => 'Adresă IP sau nume de utilizator',
'ipbexpiry' => 'Expiră',
'ipbreason' => 'Motiv:',
-'ipbreasonotherlist' => 'Alt motiv',
'ipbreason-dropdown' => '*Motivele cele mai frecvente
** Introducere de informații false
** Ștergere conținut fără explicații
'ipbsubmit' => 'Blochează acest utilizator',
'ipbother' => 'Alt termen:',
'ipboptions' => '2 ore:2 hours,1 zi:1 day,3 zile:3 days,1 săptămână:1 week,2 săptămâni:2 weeks,1 lună:1 month,3 luni:3 months,6 luni:6 months,1 an:1 year,infinit:infinite',
-'ipbotheroption' => 'altul',
-'ipbotherreason' => 'Motiv diferit/adițional:',
'ipbhidename' => 'Ascunde numele de utilizator la editare și afișare',
'ipbwatchuser' => 'Urmărește pagina sa de utilizator și de discuții',
'ipb-disableusertalk' => 'Se interzice acestui utilizator modificarea propriei pagini de discuții în timpul blocării',
'sorbs_create_account_reason' => 'Adresa dumneavoastră IP este listată ca un proxy deschis în lista neagră DNS.
Nu vă puteți crea un cont',
'xffblockreason' => 'O adresă IP prezentă în antetul X-Forwarded-For — fie a dumneavoastră, fie a serverului proxy pe care îl folosiți — a fost blocată. Motivul original al blocării a fost: $1',
-'cant-block-while-blocked' => 'Nu puteți bloca alți utilizatori în timp ce sunteți dumneavoastră înșivă blocat.',
'cant-see-hidden-user' => 'Utilizatorul pe care încercați să îl blocați este deja blocat și ascuns. Atata timp cât nu aveți drept de hideuser, nu puteți vedea sau modifica blocarea acestuia.',
'ipbblocked' => 'Nu puteți bloca sau debloca alți utilizatori în timp ce sunteți dumneavoastră înșivă blocat.',
'ipbnounblockself' => 'Nu aveți permisiunea de a vă debloca singur',
'watchlistall2' => 'toate',
'namespacesall' => 'toate',
'monthsall' => 'toate',
-'limitall' => 'toate',
# Email address confirmation
'confirmemail' => 'Confirmare adresă e-mail',
'confirmemail_needlogin' => 'Trebuie să vă $1 pentru a vă confirma adresa de e-mail.',
'confirmemail_success' => 'Adresa de e-mail a fost confirmată. Acum vă puteți [[Special:UserLogin|autentifica]] și bucura de wiki.',
'confirmemail_loggedin' => 'Adresa de e-mail a fost confirmată.',
-'confirmemail_error' => 'Ceva nu a funcționat la salvarea confirmării.',
'confirmemail_subject' => 'Confirmarea adresei de e-mail la {{SITENAME}}',
'confirmemail_body' => 'Cineva, probabil dumneavoastră de la adresa IP $1, și-a înregistrat la {{SITENAME}} contul „$2” cu această adresă de e-mail.
'imgmultigo' => 'Du-te!',
'imgmultigoto' => 'Du-te la pagina $1',
+# Language selector for translatable SVGs
+'img-lang-opt' => '$2 ($1)',
+'img-lang-default' => '(limba implicită)',
+'img-lang-info' => 'Randează această imagine în $1 $2.',
+'img-lang-go' => 'Du-te',
+
# Table pager
'ascending_abbrev' => 'cresc',
'descending_abbrev' => 'desc',
# Special:ComparePages
'comparepages' => 'Comparație între pagini',
-'compare-selector' => 'Comparație între versiuni',
'compare-page1' => 'Pagina 1',
'compare-page2' => 'Pagina 2',
'compare-rev1' => 'Versiunea 1',
'tog-minordefault' => 'Pe convenzione signe tutte le cangiaminde cumme stuédeche',
'tog-previewontop' => "Fa vedè l'andeprime apprime d'a caselle de le cangiaminde",
'tog-previewonfirst' => "Fà vedè l'andeprime sus a 'u prime cangiamende",
-'tog-nocache' => "Disabbilite 'u caching d'a pàgene sfogliate",
'tog-enotifwatchlistpages' => "Manneme 'na mail quanne 'a pàgene ca stoche a condrolle ha cangiate",
'tog-enotifusertalkpages' => "Manneme 'na mail quanne 'a pàgene de le 'ngazzaminde ha cangiate",
'tog-enotifminoredits' => "Manneme 'na mail quanne onne state fatte cangiaminde stuèdeche sus a le pàggene",
'recentchanges-label-bot' => "Stu cangiamende ha state fatte da 'nu bot",
'recentchanges-label-unpatrolled' => "Stu cangiamende non g'à state angore condrollate",
'recentchanges-legend-newpage' => '$1 - pàgena nove',
-'rcnote' => "Sotte {{PLURAL:$1|jè '''1''' cangiamende|sonde le urteme '''$1''' cangiaminde}} jndr'à l'urteme{{PLURAL:$2|sciurne|'''$2''' sciurne}}, jndr'à $5, $4.",
'rcnotefrom' => "Sotte stonne le cangiaminde da '''$2''' (fine a '''$1''' mustrete).",
'rclistfrom' => 'Fà vedè le urteme cangiaminde partenne da $1',
'rcshowhideminor' => '$1 cangiaminde stuèdeche',
'undeletebtn' => 'Repristine',
'undeletelink' => 'vide/repristine',
'undeleteviewlink' => 'vide',
-'undeletereset' => 'Azzere',
'undeleteinvert' => 'Selezione a smerse',
'undeletecomment' => 'Mutive:',
'undeletedrevisions' => '{{PLURAL:$1|1 revisione|$1 revisiune}} ripristinete',
'block' => "Bluècche l'utende",
'unblock' => "Sbluècche l'utende",
'blockip' => "Blocche l'utende",
-'blockip-title' => "Bluecche l'utende",
'blockip-legend' => "Bluecche l'utende",
'blockiptext' => "Ause 'a schermata de sotte pe bloccà l'accesse in scritture de 'nu specifiche indirizze IP o utende.
Quiste avessa essere fatte sulamende pe prevenìe 'u vandalisme e in accorde cu [[{{MediaWiki:Policy-url}}|le reghele]].
'ipadressorusername' => "Indirizze IP o nome de l'utende:",
'ipbexpiry' => 'More:',
'ipbreason' => 'Mutive:',
-'ipbreasonotherlist' => 'Otre mutive',
'ipbreason-dropdown' => "*Mutive comune de blocche
** Inzerimende de 'mbormaziune fause
** Scangellamende de condenute da le vôsce
'ipbsubmit' => "Blocche st'utende",
'ipbother' => 'Otre orarie:',
'ipboptions' => '2 ore:2 hours,1 giurne:1 day,3 giurne:3 days,1 sumane:1 week,2 sumane:2 weeks,1 mese:1 month,3 mise:3 months,6 mise:6 months,1 anne:1 year,infinite:infinite',
-'ipbotheroption' => 'otre',
-'ipbotherreason' => 'Otre mutive:',
'ipbhidename' => 'Scunne le nome utinde da le cangiaminde e da le liste',
'ipbwatchuser' => "Vide a pàgena utende e quedde de le 'ngazzaminde de stu utende",
'ipb-disableusertalk' => "Non ge face cangià a stu utende 'a pàgena de le 'ngazzaminde sue fine ca jè bloccate",
'sorbs_create_account_reason' => "L'indirizze IP tue jè elegate cumme a 'nu proxy apirte jndr'à DNSBL ausate da {{SITENAME}}.
Tu nonge puè ccrejà 'nu cunde utende",
'xffblockreason' => "'N'indirizze IP presende jndr'à testate X-Forwarded-For, tutte e doje le tune o 'nu server proxy ca ste ause, onne state bloccate. 'U mutive d'u blocche origgenale ere: $1",
-'cant-block-while-blocked' => 'Tu non ge puè bloccà otre utinde quanne tu si blocchete.',
'cant-see-hidden-user' => "L'utende ca tu ste pruève a bloccà ha state già bloccate e scunnute. Ce tu non ge tine le deritte ''hideuser'', tu non ge puè vedè o cangià 'u blocche de l'utende.",
'ipbblocked' => 'Tu non ge puè bloccà o sbloccà otre utinde, purcé tu sì ppure bloccate',
'ipbnounblockself' => "Non ge t'è permesse de sbloccarte da sule",
'watchlistall2' => 'tutte',
'namespacesall' => 'tutte',
'monthsall' => 'tutte',
-'limitall' => 'tutte',
# Email address confirmation
'confirmemail' => "Conferme l'indirizze e-mail",
'confirmemail_success' => "L'indirizze e-mail tue ha state confermate.
Tu, mò te puè [[Special:UserLogin|collegà]] e te puè devertì sus 'a Uicchipèdie.",
'confirmemail_loggedin' => "L'indirizze e-mail tue ha state confermate.",
-'confirmemail_error' => "Quacchedune ha sbagliate reggistranne 'a conferma toje.",
'confirmemail_subject' => 'Indirizze email de conferme pe {{SITENAME}}',
'confirmemail_body' => "Quacchedune, pò essere tu, fa l'indirizze IP \$1,
ha reggistrate 'nu cunde utende \"\$2\" cu st'indirizze email sus a {{SITENAME}}.
# Special:ComparePages
'comparepages' => 'Combronde le pàggene',
-'compare-selector' => "Combronde le revisiune d'à pàgene",
'compare-page1' => 'Pàgene 1',
'compare-page2' => 'Pàgene 2',
'compare-rev1' => 'Revisione 1',
'tog-minordefault' => 'Помечать по умолчанию правки как малозначимые',
'tog-previewontop' => 'Помещать предпросмотр перед окном редактирования',
'tog-previewonfirst' => 'Показывать предпросмотр при переходе к редактированию',
-'tog-nocache' => 'Отключить кэширование страниц в браузере',
'tog-enotifwatchlistpages' => 'Уведомлять по эл. почте об изменениях страниц и файлов из списка наблюдения',
'tog-enotifusertalkpages' => 'Уведомлять по эл. почте об изменении персональной страницы обсуждения',
'tog-enotifminoredits' => 'Уведомлять даже при незначительных изменениях страниц и файлов',
'recentchanges-label-plusminus' => 'Размер страницы изменился на данное количество байт',
'recentchanges-legend-newpage' => '(см. также [[Special:NewPages|список новых страниц]])',
'recentchanges-legend-plusminus' => "(''±123'')",
-'rcnote' => "{{PLURAL:$1|Последнее '''$1''' изменение|Последние '''$1''' изменения|Последние '''$1''' изменений}} за '''$2''' {{PLURAL:$2|день|дня|дней}}, на момент времени $5 $4.",
'rcnotefrom' => "Ниже перечислены изменения с '''$2''' (не более '''$1''').",
'rclistfrom' => 'Показать изменения с $1.',
'rcshowhideminor' => '$1 малые правки',
'undeletebtn' => 'Восстановить',
'undeletelink' => 'просмотреть/восстановить',
'undeleteviewlink' => 'просмотреть',
-'undeletereset' => 'Очистить',
'undeleteinvert' => 'Обратить выделение',
'undeletecomment' => 'Причина:',
'undeletedrevisions' => '$1 {{PLURAL:$1|изменение|изменения|изменений}} восстановлено',
'block' => 'Блокировка участника',
'unblock' => 'Разблокировка участника',
'blockip' => 'Заблокировать',
-'blockip-title' => 'Блокирование участника',
'blockip-legend' => 'Блокировка участника',
'blockiptext' => 'Используйте форму ниже, чтобы заблокировать возможность записи с определённого IP-адреса.
Это может быть сделано только для предотвращения вандализма и только в соответствии с [[{{MediaWiki:Policy-url}}|правилами]].
'ipadressorusername' => 'IP-адрес или имя участника:',
'ipbexpiry' => 'Закончится через:',
'ipbreason' => 'Причина:',
-'ipbreasonotherlist' => 'Другая причина',
'ipbreason-dropdown' => '* Стандартные причины блокировок
** Вставка ложной информации
** Удаление содержимого страниц
'ipbsubmit' => 'Заблокировать этот адрес/участника',
'ipbother' => 'Другое время:',
'ipboptions' => '2 часа:2 hours,1 день:1 day,3 дня:3 days,1 неделя:1 week,2 недели:2 weeks,1 месяц:1 month,3 месяца:3 months,6 месяцев:6 months,1 год:1 year,бессрочно:infinite',
-'ipbotheroption' => 'другое',
-'ipbotherreason' => 'Другая причина / дополнение:',
'ipbhidename' => 'Скрыть имя участника из правок и списков',
'ipbwatchuser' => 'Добавить в список наблюдения личную страницу участника и его страницу обсуждения',
'ipb-disableusertalk' => 'Запретить этому участнику редактировать свою страницу обсуждения во время блокировки',
'sorbsreason' => 'Ваш IP-адрес числится как открытый прокси в DNSBL.',
'sorbs_create_account_reason' => 'Ваш IP-адрес числится как открытый прокси в DNSBL. Вы не можете создать учётную запись.',
'xffblockreason' => 'Был заблокирован IP-адрес, присутствующий в заголовке X-Forwarded-For и принадлежащий либо вам, либо используемому вами прокси-серверу. Первоначальная причина блокировки была следующей: $1',
-'cant-block-while-blocked' => 'Вы не можете блокировать других участников, пока вы сами заблокированы.',
'cant-see-hidden-user' => 'Участник, которого вы пытаетесь заблокировать, уже заблокирован и скрыт. Поскольку у вас нет разрешения на работу по сокрытию участников, вы не можете просмотреть или изменить данную блокировку.',
'ipbblocked' => 'Вы не можете блокировать или разблокировать других участников, так как вы сами заблокированы',
'ipbnounblockself' => 'Вы не можете разблокировать самого себя',
'watchlistall2' => 'все',
'namespacesall' => 'все',
'monthsall' => 'все',
-'limitall' => 'все',
# Email address confirmation
'confirmemail' => 'Подтверждение адреса электронной почты',
'confirmemail_needlogin' => 'Вы должны $1 для подтверждения вашего адреса электронной почты.',
'confirmemail_success' => 'Ваш адрес электронной почты подтверждён.',
'confirmemail_loggedin' => 'Ваш адрес электронной почты подтверждён.',
-'confirmemail_error' => 'Во время процедуры подтверждения адреса электронной почты произошла ошибка.',
'confirmemail_subject' => '{{SITENAME}}:Запрос на подтверждение адреса электронной почты',
'confirmemail_body' => 'Кто-то (возможно вы) с IP-адресом $1 зарегистрировал
на сервере проекта {{SITENAME}} учётную запись «$2»,
'imgmultigo' => 'Перейти!',
'imgmultigoto' => 'Перейти на страницу $1',
+# Language selector for translatable SVGs
+'img-lang-default' => '(язык по умолчанию)',
+'img-lang-info' => 'Преобразовать это изображение на $1 $2.',
+'img-lang-go' => 'Перейти',
+
# Table pager
'ascending_abbrev' => 'возр',
'descending_abbrev' => 'убыв',
# Special:ComparePages
'comparepages' => 'Сравнение страниц',
-'compare-selector' => 'Сравнение версий страниц',
'compare-page1' => 'Первая страница',
'compare-page2' => 'Вторая страница',
'compare-rev1' => 'Первая версия',
'tog-minordefault' => 'Імпліцітно позначіти вшыткы зміны як малы',
'tog-previewontop' => 'Вказовати нагляд перед окном едітованя (не за ним)',
'tog-previewonfirst' => 'Вказати нагляд при першій едітації',
-'tog-nocache' => 'Выпнути кешованя сторінок бровсером',
'tog-enotifwatchlistpages' => 'Послати електронічну пошту, кідь ся змінила сторінка або файл з мого списку слїдованя',
'tog-enotifusertalkpages' => 'Послати електронічну пошту при змінї моёй діскузной сторінкы',
'tog-enotifminoredits' => 'Послати електронічну пошту і про меншы едітованя сторінок і файлів',
'recentchanges-label-bot' => 'Тото едітованя зроблене ботом',
'recentchanges-label-unpatrolled' => 'Тота зміна дотеперь не была патролёвана.',
'recentchanges-legend-newpage' => '$1 — нова сторінка',
-'rcnote' => "{{PLURAL:$1|Послїдня '''$1''' зміна|Послїднї '''$1''' зміны|Послїднїх '''$1''' змін}} за '''$2''' {{PLURAL:$2|день|днї|днїв}}, на час $5, $4.",
'rcnotefrom' => 'Ниже {{PLURAL:$1|є|суть|є}} найвеце <b>$1</b> {{PLURAL:$1|зміна|зміны|змін}} од <b>$2</b>.',
'rclistfrom' => 'Вказати едітованя почінаючі з $1.',
'rcshowhideminor' => '$1 маленькы едітованя',
'undeletebtn' => 'Обновити',
'undeletelink' => 'видїти/обновити',
'undeleteviewlink' => 'видїти',
-'undeletereset' => 'Ресетовати',
'undeleteinvert' => 'Інвертовати селекцію',
'undeletecomment' => 'Причіна:',
'undeletedrevisions' => '{{PLURAL:$1|Обновлена $1 верзія|Обновлены $1 верзії|Обновленых $1 верзій}}',
'block' => 'Заблоковати хоснователя',
'unblock' => 'Одблоковати хоснователя',
'blockip' => 'Заблоковати хоснователя',
-'blockip-title' => 'Блокованя хоснователя',
'blockip-legend' => 'Блокованя хоснователя',
'blockiptext' => 'Тот формуларь служыть про заблокованя едітованя з конкретной IP адресы або мена хоснователя.
Тото бы мало быти хосноване лем в згодї з [[{{MediaWiki:Policy-url}}|правилами]].
'ipadressorusername' => 'IP-адреса або мено хоснователя:',
'ipbexpiry' => 'Кінчіть:',
'ipbreason' => 'Причіна:',
-'ipbreasonotherlist' => 'Інша причіна',
'ipbreason-dropdown' => '*Часты причіны блокованя
** Вкладаня неправдивых інформацій
** Одстранёваня обсягу сторінок
'ipbsubmit' => 'Заблоковати',
'ipbother' => 'Іншый час:',
'ipboptions' => '2 годины:2 hours,1 день:1 day,3 днї:3 days,1 тыждень:1 week,2 тыжднї:2 weeks,1 місяць:1 month,3 місяцї:3 months,6 місяцїв:6 months,1 рік:1 year,неограніченї:infinite',
-'ipbotheroption' => 'іншый',
-'ipbotherreason' => 'Інша/додаткова причіна:',
'ipbhidename' => 'Сховати мено хоснователя в едітованях і списках',
'ipbwatchuser' => 'Слїдовати хосновательску і діскузну сторінку того хоснователя',
'ipb-disableusertalk' => 'Заборонити тому хоснователёви едітовати властну хосновательску діскузію по час блокованя',
'sorbsreason' => 'Ваша IP-адреса є веджена як отвореный проксі в DNSBL.',
'sorbs_create_account_reason' => 'Ваша IP-адреса є веджена як одкрытый проксі в DNSBL. З той адресы собі не можете створити конто.',
'xffblockreason' => 'IP адреса написана в голові X-Forwarded-For, ці уж ваша, або проксі сервера, што хоснуєете, была заблокована. Оріґінална прічіна того блокованя: $1',
-'cant-block-while-blocked' => 'Не можете блоковати іншых хоснователїв, кідь сьте сам заблокованый(а).',
'cant-see-hidden-user' => 'Хоснователь, котрого хочете заблоковати, уж быв заблокованый і схованый. Кідьже не маєте права hideuser, не можете собі наставлїня блокованя того хоснователя посмотрити ани го змінити.',
'ipbblocked' => 'Не можете блоковати або одблоковати іншых хоснователїв, {{GENDER:|сам|сама|сам}} сьте {{GENDER:|заблокованый|заблокована|заблокованый}}',
'ipbnounblockself' => 'Не маєте дозволене одблоковати {{GENDER:|сам|сама|сам}} себе',
'watchlistall2' => 'вшыткы',
'namespacesall' => 'вшыткы',
'monthsall' => 'вшыткы',
-'limitall' => 'вшыткы',
# Email address confirmation
'confirmemail' => 'Потверджіня адресы ел. пошты',
'confirmemail_needlogin' => 'Про потверджіня своёй адрес ел. пошты ся мусите $1.',
'confirmemail_success' => 'Ваша адреса ел. пошты была потверджена. Нынї ся можете [[Special:UserLogin|приголосити]] і хосновати вікі.',
'confirmemail_loggedin' => 'Ваша адреса ел. пошты была потверджена.',
-'confirmemail_error' => 'Не вдало ся уложыти ваше потверджіня.',
'confirmemail_subject' => 'Потверджіня адресы ел. пошты про {{grammar:4sg|{{SITENAME}}}}',
'confirmemail_body' => 'Хтось (асі вы, з IP адресы $1) собі реґістровав конто з меном "$2" і тов адресов ел. пошты на {{grammar:6sg|{{SITENAME}}}}.
# Special:ComparePages
'comparepages' => 'Порівнаня сторінок',
-'compare-selector' => 'Порівнаня ревізій сторінок',
'compare-page1' => 'Сторінка 1',
'compare-page2' => 'Сторінка 2',
'compare-rev1' => 'Ревізія 1',
मम सर्वाणि सम्पादनानि लघुत्वेन वर्त्यन्ताम्।',
'tog-previewontop' => 'सम्पादनात् पूर्वं प्राग्दृश्यं दर्श्यताम्।',
'tog-previewonfirst' => 'प्रथमसम्पादनस्य प्राग्दृश्यं दर्श्यताम्।',
-'tog-nocache' => 'पृष्ठ धारक-ब्राउजरं निस्क्रियतु ।',
'tog-enotifwatchlistpages' => 'मम अवेक्षणसूच्यां विद्यमाने पृष्ठे परिवर्तिते सति ईपत्रद्वारा ज्ञाप्यताम्।',
'tog-enotifusertalkpages' => 'मम योजकसंभाषणपृष्ठे परिवर्तिते सति ईपत्रद्वारा ज्ञाप्यताम्',
'tog-enotifminoredits' => 'लघुपरिवर्तनेषु सत्सु अपि ईपत्रद्वारा ज्ञाप्यताम्',
'recentchanges-label-minor' => 'इदं लघु परिवर्तनम्',
'recentchanges-label-bot' => 'एतद् यन्त्रेण कृतं सम्पादनम् आसीत्',
'recentchanges-label-unpatrolled' => 'एतद् सम्पादनम् एतावता परिशीलितं नास्ति ।',
-'rcnote' => "अधस्तात् {{PLURAL:$1|'''1''' परिवर्तनमस्ति|अन्तिमानि '''$1''' परिवर्तनानि सन्ति}},{{PLURAL:$2|गते दिवसे|'''$2''' गतेषु दिवसेषु}}, $5, $4 इति समये।",
'rcnotefrom' => "अधः '''$2''' तः ('''$1''' पर्यन्तं) परिवर्तनानि दर्शितानि सन्ति ।",
'rclistfrom' => '$1 तः जातानि नूतनानि परिवर्तनानि दर्श्यताम्',
'rcshowhideminor' => '$1 लघूनि सम्पादनानि',
'undeletebtn' => 'पुन्थापयतु ।',
'undeletelink' => 'दृश्यताम्/प्रत्यानीयताम्',
'undeleteviewlink' => 'दृश्यताम्',
-'undeletereset' => 'पुनर्योजयतु ।',
'undeleteinvert' => 'चयनं परिवर्तयतु ।',
'undeletecomment' => 'कारणम् :',
'undeletedrevisions' => '{{PLURAL:$1| पुनरावृत्तिः पुनस्थापिता|$1 पुनरावृत्तयः पुनस्थापिताः}} अस्ति|सन्ति ।',
'block' => 'योजकम् अवरुणद्धु ।',
'unblock' => 'योजकम् अनवरुणद्धु ।',
'blockip' => 'प्रयोक्तारं निरुध्नातु',
-'blockip-title' => 'योजकम् अवरुणद्धु ।',
'blockip-legend' => 'योजकम् अवरुणद्धु ।',
'blockiptext' => 'विशिष्टं IP सङ्केतम् अथवा योजकनाम लेखानाधिकारस्य प्राप्तये निम्नदत्तपत्रस्य उपयोगं करोतु ।
केवलं नाशकत्वम् अवरोद्धुं एतस्य उपयोगं करोतु । [[{{MediaWiki:Policy-url}}|नीतिः]] इत्यानुसारं करणीयम् ।
'ipadressorusername' => 'आइ.पी.सङ्केतः अथवा योजकनाम :',
'ipbexpiry' => 'समाप्तिः :',
'ipbreason' => 'कारणम् :',
-'ipbreasonotherlist' => 'अन्यत् कारणम्',
'ipbreason-dropdown' => '* अवरोधस्य सामान्यानि कारणानि ।
** मिथ्या योजकनाम ।
** एकाधिकयोजकस्थानं निर्मीय तेषां दुरुपयोगः ।
'ipbsubmit' => 'एतं योजकम् अवरुणद्धु ।',
'ipbother' => 'अन्यः समयः ।',
'ipboptions' => '२ होराः:2 hours,१ दिनम्:1 day,३ दिनानि:3 days,१ सप्ताहः:1 week,२ सप्ताहौ:2 weeks,१ मासः:1 month,३ मासाः:3 months,६ मासाः:6 months,१ वर्षः:1 year,अनन्तम्:infinite',
-'ipbotheroption' => 'अन्य',
-'ipbotherreason' => 'अपरं/अतिरिक्तं कारणम् :',
'ipbhidename' => 'सम्पादनेभ्यः आवलीभ्यः च योजकनाम सङ्गोपयतु ।',
'ipbwatchuser' => 'अस्य योजकस्य योजकपुटानि सम्भाषणपुटानि च अवलोकयतु ।',
'ipb-disableusertalk' => 'एतं योजकम् अवरोधकाले स्वस्य सम्भाषणपुटस्य सम्पानात् निवारयतु ।',
अन्तर्जालसेवादायकं सम्पर्कयतु गभीरायाः सुरक्षासमस्यायाः विषये सूचयतु च',
'sorbsreason' => 'DNSBL उपयोगः {{SITENAME}} कृतस्य भवतः ऐपिसङ्केतः मुक्तप्रतिहस्तकः इति आवलीगतः',
'sorbs_create_account_reason' => 'DNSBL उपयुक्तः {{SITENAME}} अतः भवतः ऐपिसङ्केतः अवरुद्धः यतः अयं मुक्तप्रतिहस्तकः इति आवलीगतः । अतः भवान् योजकस्थानं निर्मातुं न शक्नोति ।',
-'cant-block-while-blocked' => 'अन्ययोजकान् अवरोद्धुं भवान् नैव शक्नोति यतः भवान् अवरुद्धः ।',
'cant-see-hidden-user' => 'यं योजकः अवरोद्धं भवान् प्रयतमानः सः पूर्वमेव अवरुद्धः सङ्गुप्तः च ।
भवान् तु योजकसङ्गोपनाधिकारयुक्तः न । अतः भवान् योजकावरोधं दृष्टुं सम्पादयितुं वा न शक्नोति ।',
'ipbblocked' => 'भवान् अन्ययोजकान् अवरोद्धुम् विमोचयितुं वा न शक्नोति । यतः भवान् तु अवरुद्धः अस्ति ।',
'watchlistall2' => 'सर्वाणि',
'namespacesall' => 'सर्वाणि',
'monthsall' => 'सर्वाणि',
-'limitall' => 'सर्वाणि',
# Email address confirmation
'confirmemail' => 'ईपत्रसङ्केतः प्रमाणीक्रियताम्',
'confirmemail_success' => 'भवतः विद्युन्मानपत्रसङ्केतः इदानीं दृढीकृतः अस्ति । [[Special:UserLogin|log in]]
अधुना भवान् नामाभिलेखेन विकिविहरस्य आनन्दम् अनुभवितुं शक्नोति ।',
'confirmemail_loggedin' => 'भवतः विद्युन्मानपत्रसङ्केतः दृढीकृतः ।',
-'confirmemail_error' => 'भवतः दृढीकरणावसरे काचित् समस्या उत्पन्ना ।',
'confirmemail_subject' => '{{SITENAME}}विद्युन्मानपत्रसङ्केतस्य दृढीकरणम् ।',
'confirmemail_body' => 'कोऽपि अथवा भवान् $1 इति ऐपिसङ्केतद्वारा {{SITENAME}}इत्यस्मिन् "$2" इति नाम्ना योजकस्थाननिर्माणार्थम् अभ्यर्थनं दत्तवान् ।
एतत् योजकस्थानं भवतः एव अपि च {{SITENAME}} इत्यस्मिन् उलब्धे विद्युन्मानपत्रसङ्केतः ।
# Special:ComparePages
'comparepages' => 'पृष्ठानि तोल्यन्ताम्',
-'compare-selector' => 'पृष्ठसंस्करणानि तोलयतु',
'compare-page1' => 'पृष्ठम् १',
'compare-page2' => 'पृष्ठम् २',
'compare-rev1' => 'संस्करणम् 1',
'tog-minordefault' => 'Уларытыылары атын этиллибэтэҕинэ кыра уларытыы курдук бэлиэтээ',
'tog-previewontop' => 'Хайдах буоларын уларытар түннүк үрдүнэн (иннигэр) көрдөр',
'tog-previewonfirst' => 'Хайдах буоларын тута көрдөр',
-'tog-nocache' => 'Браузерга сирэйи кэштыыры араар',
'tog-enotifwatchlistpages' => 'Кэтиир сирэйдэрим уонна билэлэрим уларыйдахтарына e-mail көмөтүнэн биллэр',
'tog-enotifusertalkpages' => 'Ырытар сирэйим уларыйдаҕына эл. почтанан биллэр',
'tog-enotifminoredits' => 'Кыра да уларытыы киирдэҕинэ эл. почтанан биллэрээр',
'recentchanges-label-bot' => 'Бу уларытыыны робот оҥорбут',
'recentchanges-label-unpatrolled' => 'Бу уларытыы өссө ботурууллана илик',
'recentchanges-legend-newpage' => '$1 — саҥа сирэй',
-'rcnote' => "{{PLURAL:$2|хонук|'''$2''' хонуктар}} иһинэн бүтэһик {{PLURAL:$1|'''1''' уларыйыы|'''$1''' уларыйыылар}}, $5, $4.",
'rcnotefrom' => "Мантан '''$2''' маныаха '''$1''' дылы уларыыйылар көрдөрүлүннүлэр.",
'rclistfrom' => 'Бу кэм $1 кэнниттэн оҥоһуллубуттары көрдөр',
'rcshowhideminor' => '$1 кыра уларыйыылары',
'undeletebtn' => 'Төннөр',
'undeletelink' => 'көрүү/төннөрүү',
'undeleteviewlink' => 'көрүү',
-'undeletereset' => 'Саҥаттан',
'undeleteinvert' => 'Хараардыллыбыты инверсиялаа',
'undeletecomment' => 'Төрүөтэ:',
'undeletedrevisions' => '{{PLURAL:$1|1 уларытыы|$1 уларытыы}} төннөрүлүннэ',
'block' => 'Кыттааччыны хааччахтааһын',
'unblock' => 'Кытааччы хааччаҕын устуу',
'blockip' => 'IP аадырыстан киириини бобуу',
-'blockip-title' => 'Кыттааччыны бобуу',
'blockip-legend' => 'Кыттааччыны хааччахтааһын',
'blockiptext' => 'Ханнык эмит IP-ттан суруйары манна баар форманы туһанан боп.
Вандализмы утаран уонна [[{{MediaWiki:Policy-url}}]]
'ipadressorusername' => 'IP аадырыһа эбэтэр кыттааччы аата:',
'ipbexpiry' => 'Түмүктэниэ:',
'ipbreason' => 'Төрүөтэ:',
-'ipbreasonotherlist' => 'Атын биричиинэ',
'ipbreason-dropdown' => '* Бобуу сүрүн биричиинэлэрэ
** Сымыйаны суруйуу
** Сирэй иһинээҕитин суох оҥоруу
'ipbsubmit' => 'Бу кыттааччыны тохтот',
'ipbother' => 'Атын кэм:',
'ipboptions' => '2 чаас:2 hours,1 күн:1 day,3 күн:3 days,1 нэдиэлэ:1 week,2 нэдиэлэ:2 weeks,1 ый:1 month,3 ый:3 months,6 ый:6 months,1 сыл:1 year,больдьоҕо суох:infinite',
-'ipbotheroption' => 'атын',
-'ipbotherreason' => 'Атын/эбии биричиинэлэр:',
'ipbhidename' => 'Кыттааччы аатын көннөрүүлэргэ уонна испииһэктэргэ көрдөрүмэ',
'ipbwatchuser' => 'Кыттааччы бэйэтин туһунан сирэйин уонна ырытыытын сирэйин кэтииргэ',
'ipb-disableusertalk' => 'Бу кыттааччы бэйэтин ырытыы сирэйигэр суруйарын хааччахтааһын',
'sorbsreason' => 'Эн IP-ҥ {{SITENAME}} саайт DNSBL-гар аһаҕас прокси быһыытынан сылдьар.',
'sorbs_create_account_reason' => 'Эн IP-ҥ {{SITENAME}} саайт DNSBL-гар аһаҕас прокси быһыытынан сылдьар. Саҥаттан бэлиэтэнэр кыаҕыҥ суох.',
'xffblockreason' => 'X-Forwarded-For баһыгар баар IP-аадырыс бобуллубут. Бу IP Эйиэнэ эбэтэр туһанар проксиҥ гиэнэ буолуон сөп. Бобуу төрүөтэ маннык эбит: $1',
-'cant-block-while-blocked' => 'Бэйэҥ хааччахтаммыт кэмҥэр атын кыттааччылары хааччахтыыр кыаҕыҥ суох.',
'cant-see-hidden-user' => 'Эн хааччахтаары гыммыт кыттааччыҥ урут хааччахтаммыт уонна кистэммит эбит. Кыттааччылары кистиир кыаҕыҥ суох буолан ол туһунан суругу көрөр да уларытар да быраабыҥ суох.',
'ipbblocked' => 'Атын кыттааччылары хааччахтыыр да, хааччахтарын да устар кыаҕыҥ суох, тоҕо диэтэххэ бэйэҥ хааччахтааххын',
'ipbnounblockself' => 'Эн бэйэҥ хааччаххын кыайан устубаккын',
'watchlistall2' => 'бары',
'namespacesall' => 'бары',
'monthsall' => 'бары',
-'limitall' => 'бары',
# Email address confirmation
'confirmemail' => 'Электроннай аадырыһы бигэргэтии',
'confirmemail_success' => 'Электроннай аадырыһыҥ бигэргэтилиннэ.
[[Special:UserLogin|Ааккын этэн]] биикигэ киириэххин сөп.',
'confirmemail_loggedin' => 'Электроннай почтаҥ аадырыһа бигэргэтилиннэ.',
-'confirmemail_error' => 'Бигэргэтии кэмигэр моһол таҕыста.',
'confirmemail_subject' => '{{SITENAME}}: эл. почта аадырыһын бигэргэтии',
'confirmemail_body' => 'Ким эрэ, баҕар эн буолуо бу IP-ттан: $1, {{SITENAME}} сиэрбэригэр
«$2» диэн ааты бэлиэтээтэ уонна бу электроннай аадырыһы ыйда.
# Special:ComparePages
'comparepages' => 'Сирэйдэри тэҥнииргэ',
-'compare-selector' => 'Сирэйдэр барылларын тэҥнииргэ',
'compare-page1' => 'Бастакы сирэй',
'compare-page2' => 'Иккис сирэй',
'compare-rev1' => 'Бастакы барыл',
'tog-minordefault' => 'Etohoṕre sanam joṛao purạoanaḱko do bekor unuduḱ lekate cinhạkma',
'tog-previewontop' => 'Joṛao bakso purạo lahare unuduḱ hoyoḱma',
'tog-previewonfirst' => 'Pạhil joṛao purạore unuduḱ hoyoḱma',
-'tog-nocache' => 'Brajar sakam reaḱ kasiṅ bondoemẽ',
'tog-enotifwatchlistpages' => 'E-mailạńme one tinre in̕aḱ n̕eloḱ tạlika do bodolok',
'tog-enotifusertalkpages' => 'E-mailạn̕me one tinre in̕aḱ roṛaḱ laṛcaṛ sakam do bodoloḱa',
'tog-enotifminoredits' => 'E-mailạn̕me arhõ one tinre in̕aḱ sakamre huḍiń kạmi hoyoḱ',
'recentchanges-label-minor' => 'Noado hudiń mạchi sompadonkana',
'recentchanges-label-bot' => 'Noa sompadon do bot darate purauena',
'recentchanges-label-unpatrolled' => 'Noa sompadon do ńit́ hạbić baṅ ńel ńamakana',
-'rcnote' => "Latar reaḱ {{PLURAL:$2 dinre '''$2''' dinre}} hoyena {{PLURAL:$1 '''1''' '''$1'''}}gan bodol latare uduḱena ((okare nitaḱ okte ar tạrikh do $5, $4).",
'rcnotefrom' => '$2 habić bodolak ko do latare ńeloḱkana',
'rclistfrom' => 'Nãwã bodolko uduḱme $1 khon ehoṕkate',
'rcshowhideminor' => '$1 kaṭic culuń tońge',
# Block/unblock
'block' => 'Beoharić esedem',
'blockip' => 'Beoharić esedem',
-'blockip-title' => 'Beoharić esedem',
'blockip-legend' => 'Beoharić esedem',
'ipboptions' => '2 Ghonṭa : 2 hours, 1 maha:1 day, 3 maha : 3 days,1 hapta :1 week, 2 hapta : 2 weeks, 1 cando :1 month, 3 cando : 3 months,6 cando :6 months, 1 serma :1 year, Aemamaha : infinite',
'ipblocklist' => 'Beoharic esetgeyay',
'tog-minordefault' => 'Signa totu is acontzos comente minores pro difetu',
'tog-previewontop' => "Ammustra s'antiprima a subra sa casella de acontzu e no a suta",
'tog-previewonfirst' => "Ammustra s'antiprima pro su primu acontzu",
-'tog-nocache' => "Disativa sa ''cache'' pro is pàginas de su ''browser''",
'tog-enotifwatchlistpages' => 'Spedi·mi una missada eletrònica cando una pàgina de sa watchlist mea est acontzada',
'tog-enotifusertalkpages' => 'Spedi·mi una missada eletrònica cando sa pàgina de is cuntierras mias est acontzada',
'tog-enotifminoredits' => 'Spedi·mi una missada eletrònica fintzas pro is acontzos minores de is pàginas',
'recentchanges-label-minor' => 'Custu est unu acontzu minore',
'recentchanges-label-bot' => 'Custu acontzu est stadu fatu dae unu bot',
'recentchanges-legend-newpage' => '$1 - pàgina noa',
-'rcnote' => "Inoghe sighende {{PLURAL:$1|b'est s'ùrtima mudàntzia|bi sunt is ùrtimas '''$1''' mudàntzias}} {{PLURAL:$2|in s'ùrtima die|in is ùrtimas '''$2''' dies}}; is datos sunt agiornados a $5, $4.",
'rcnotefrom' => "Sas chi sighint sunt sas mudàntzias dae '''$2''' (fintzas a '''$1''').",
'rclistfrom' => 'Ammustra mudàntzias dae $1',
'rcshowhideminor' => '$1 acontzos minores',
# Block/unblock
'blockip' => 'Blocca usuàriu',
-'blockip-title' => 'Blocca usuàriu',
'blockip-legend' => 'Blocca usuàriu',
'blockiptext' => "Usa il modulo sottostante per bloccare l'accesso con diritto di scrittura da uno specifico indirizzo IP. Questo blocco deve essere operato SOLO per prevenire atti di vandalismo, ed in stretta osservanza dei principi tutti della [[{{MediaWiki:Policy-url}}|policy di {{SITENAME}}]]. Il blocco non può in nessun caso essere applicato per motivi ideologici.
Scrivi un motivo specifico per il quale questo indirizzo IP dovrebbe a tuo avviso essere bloccato (per esempio, cita i titoli di pagine eventualmente già oggetto di vandalismo editoriale).",
'ipadressorusername' => 'Indiritzu IP o nùmene usuàriu:',
'ipbexpiry' => 'Scadèntzia:',
'ipbreason' => 'Motivu:',
-'ipbreasonotherlist' => 'Àteru motivu',
'ipbsubmit' => 'Blocca custu usuàriu',
'ipbother' => 'Àteru perìodu:',
'ipboptions' => '2 oras:2 hours,1 die:1 day,3 dies:3 days,1 chida:1 week,2 chidas:2 weeks,1 mese:1 month,3 meses:3 months,6 meses:6 months,1 annu:1 year,infinidu:infinite',
-'ipbotheroption' => 'àteru',
'badipaddress' => "S'indiritzu IP indicadu non est currègidu.",
'blockipsuccesssub' => 'Bloccu esecutivu',
'blockipsuccesstext' => '[[Special:Contributions/$1|$1]] è stadu bloccadu. <br />
'watchlistall2' => 'totu',
'namespacesall' => 'totu',
'monthsall' => 'totu',
-'limitall' => 'totu',
# Email address confirmation
'confirmemail' => "Cunfirma s'indiritzu e-mail",
'tog-minordefault' => 'Ìndica ogni canciamentu comu nicu (sulu comu pridifinitu)',
'tog-previewontop' => "Ammustra l'antiprima prima dâ casella di canciamentu e nun doppu",
'tog-previewonfirst' => "Ammustra l'antiprima supra lu primu canciamentu",
-'tog-nocache' => 'Disabbìlita la cache dî pàggini dû navigaturi',
'tog-enotifwatchlistpages' => 'Mànnami na e-mail siddu la pàggina subbisci canciamenti',
'tog-enotifusertalkpages' => 'Mànnimi nu missaggiu email quannu la mè pàggina di discussioni è canciata',
'tog-enotifminoredits' => 'Mànnami na e-mail macari pi li canciamenti nichi di sta pàggina',
'recentchanges-label-bot' => 'Stu canciamentu fu fattu dû bot',
'recentchanges-label-unpatrolled' => 'Stu canciamentu nun havi ancora statu virificatu',
'recentchanges-legend-newpage' => '$1 - pàggina nova',
-'rcnote' => "Ccà sutta {{PLURAL:$1|c'è lu canciamentu cchiù ricenti appurtatu|cci sunnu l'ùrtimi '''$1''' canciamenti appurtati}} ô situ {{PLURAL:$2|nta l'ùrtimi 24 uri|nta l'ùrtimi '''$2''' giorni}}; li dati sunnu aggiurnati ê $5 dû $4.",
'rcnotefrom' => 'Ccà sutta cci sunnu li canciamenti a pàrtiri dû <b>$2</b> (ammustrati nzinu ô <b>$1</b>).',
'rclistfrom' => 'Ammustra li canciamenti novi a pàrtiri di $1',
'rcshowhideminor' => '$1 li canciamenti nichi',
'undeletebtn' => 'Riprìstina!',
'undeletelink' => 'riprìstina',
'undeleteviewlink' => 'talìa',
-'undeletereset' => 'Rimposta',
'undeleteinvert' => 'Scancia la silizzioni',
'undeletecomment' => 'Cummentu:',
'undeletedrevisions' => '$1 rivisioni ricupirat{{PLURAL:$1|a|i}}',
'ipadressorusername' => 'Ndirizzu IP o nomu utenti:',
'ipbexpiry' => 'Durata dû bloccu:',
'ipbreason' => 'Mutivu:',
-'ipbreasonotherlist' => 'Àutru mutivu',
'ipbreason-dropdown' => '*Mutivi cchiù cumuni pî blocchi
** Nzerimentu di nformazziuni falsi
** Cancillazzioni di cuntinuti dê pàggini
'ipbsubmit' => "Blocca st'utenti",
'ipbother' => 'Durata nun n alencu',
'ipboptions' => '2 uri:2 hours,1 jornu:1 day,3 jorna:3 days,1 simana:1 week,2 simani:2 weeks,1 misi:1 month,3 misi:3 months,6 misi:6 months,1 annu:1 year,nfinitu:infinite',
-'ipbotheroption' => 'àutru',
-'ipbotherreason' => 'Àutri mutivi/dittagghi:',
'ipbhidename' => 'Ammuccia lu nomu utenti dê canciamenti e dê listi',
'ipbwatchuser' => "Talìa li pàggini e li discussioni utenti di st'utenti",
'ipb-disableusertalk' => 'Nun pirmettiri a stu utilizzaturi di canciari la sò pàggina di discussioni na mentri ca è bluccatu',
'proxyblockreason' => "Lu tò ndirizzu IP hà statu bluccatu pirchì è un open proxy. Pi favuri cuntatta lu tò furnituri d'accessu a Internet o lu supportu tècnicu e nfòrmali di stu gravi prubbrema di sicurizza.",
'sorbsreason' => 'Lu tò ndirizzu IP è alincatu comu proxy apertu ntâ lista DNSBL.',
'sorbs_create_account_reason' => 'Lu tò ndirizzu IP è alincatu comu open proxy ntâ DNSBL. Nun poi criari un utenti.',
-'cant-block-while-blocked' => 'Nun putiti bluccari àutri utenti ntô mentri ca vui stissi siti bluccati.',
# Developer tools
'lockdb' => 'Blocca lu database',
'confirmemail_needlogin' => 'È nicissariu $1 pi cunfirmari lu propiu ndirizzu e-mail.',
'confirmemail_success' => "Lu ndirizzu e-mail è cunfirmatu. Ora è pussìbbili esèquiri l'accessu e fari chinu usu dû situ.",
'confirmemail_loggedin' => 'Lu tò nnirizzu email fu ora cunfirmatu.',
-'confirmemail_error' => 'Erruri ntô sarvataggiu dâ cunferma.',
'confirmemail_subject' => '{{SITENAME}}: richiesta di cunferma di lu ndirizzu',
'confirmemail_body' => 'Quarcunu, prubbabbirmenti tu stissu di lu ndirizzu IP $1, hà riggistratu l\'account "$2" supra {{SITENAME}} ndicannu stu ndirizzu e-mail.
'tog-minordefault' => 'Mairk aa edits "smaa" bi defaut',
'tog-previewontop' => 'Shaw scance afore edit box an no efter it',
'tog-previewonfirst' => 'Shaw scance on first edit',
-'tog-nocache' => 'Disable page cachin',
'tog-enotifwatchlistpages' => 'Send me an email on page chynges',
'tog-enotifusertalkpages' => 'Send me an email whan ma uiser collogue page is chynged',
'tog-enotifminoredits' => 'Send me an email for smaa edits o pages an aa',
'recentchanges-label-minor' => 'This is a smaa edit',
'recentchanges-label-bot' => 'This edit wis performed by a bot',
'recentchanges-label-unpatrolled' => 'This edit haes nae yet bin patrolled',
-'rcnote' => "Below {{PLURAL:$1|is '''1''' change|are the last '''$1''' chynges}} in the last {{PLURAL:$2|day|'''$2''' days}}, as of $5, $4.",
'rcnotefrom' => 'Ablo is the chynges syne <b>$2</b> (up tae <b>$1</b> shawn).',
'rclistfrom' => 'Shaw new chynges stertin frae $1',
'rcshowhideminor' => '$1 smaa edits',
'ipbsubmit' => 'Block this uiser',
'ipbother' => 'Ither time',
'ipboptions' => '2 hours:2 hours,1 day:1 day,3 days:3 days,1 week:1 week,2 weeks:2 weeks,1 month:1 month,3 months:3 months,6 months:6 months,1 year:1 year,indefinite:infinite',
-'ipbotheroption' => 'ither',
'badipaddress' => 'That IP address is nae guid',
'blockipsuccesssub' => 'Block succeedit',
'blockipsuccesstext' => '[[Special:Contributions/$1|$1]] haes been blockit.
'watchlistall2' => 'aw',
'namespacesall' => 'aa',
'monthsall' => 'aw',
-'limitall' => 'aw',
# Email address confirmation
'confirmemail_noemail' => 'Ye dinna hae a valid email address set in yer [[Special:Preferences|uiser preferences]].',
'confirmemail_needlogin' => 'Ye maun $1 for tae confirm yer email address.',
'confirmemail_success' => 'Yer e-mail address haes been confirmed. Ye can nou log in an enjoy the wiki.',
'confirmemail_loggedin' => 'Yer e-mail address haes noo been confirmed.',
-'confirmemail_error' => 'Something gaed agley hainin yer confirmation.',
'confirmemail_body' => 'A bodie, maist likely you frae IP address $1, haes registert an
accoont "$2" wi this e-mail address on {{SITENAME}}.
'nchanges' => '$1 {{PLURAL:$1|تبديلي|تبديليون}}',
'recentchanges' => 'تازيون تبديليون',
'recentchanges-feed-description' => 'ۡهن روان رسد ۾ آيل تازيون تبديليون لهو',
-'rcnote' => "پوين {{PLURAL:$2|ڏينهن|'''$2''' ڏينهن}} ۾، يعني $3 تائين آيل {{PLURAL:$1| '''1''' تبديلي|'''$1''' تبديليون}} هيٺ پيش ڪجن ٿيون.",
'rcnotefrom' => "هيٺ '''$2''' کان ٿيندڙ تبديليون پيش ڪجن ٿيون ('''$1''' تائين ڏيکارجن ٿيون).",
'rclistfrom' => '$1 کان شروع ٿيندڙ نيون تبديليون',
'rcshowhideminor' => '$1 معمولي ترميمون',
'tog-minordefault' => "Indica tutti li mudìfigghi cumenti 'minori' in otomàtiggu",
'tog-previewontop' => "Musthra l'antiprimma sobra la casella di mudìfigga",
'tog-previewonfirst' => "Musthra l'antiprimma pa la primma mudìfigga",
-'tog-nocache' => 'Disattiba la mimória cache pa li pàgini',
'tog-enotifwatchlistpages' => 'Signàrami pa postha erettrònica li mudìfigghi a li pàgini abbaidaddi',
'tog-enotifusertalkpages' => "Signàrami pa postha erettrònica li mudìfigghi a la me' pàgina di dischussioni",
'tog-enotifminoredits' => 'Signàrami pa postha erettrònica puru li mudìfigghi minori',
'recentchanges-legend' => 'Opzioni ulthimi mudifigghi',
'recentchanges-summary' => 'Chistha pàgina prisinta li mudìfigghi più rizzenti a li cuntinuddi di lu situ.',
'recentchanges-feed-description' => 'Chisthu feed cunteni li mudìfigghi più rizzenti a li cuntinuddi di lu situ.',
-'rcnote' => "Inogghi {{PLURAL:$1|è erencadda la mudìfigga più rizzenti arriggadda|so erencaddi li '''$1''' mudìfigghi più rizzenti arriggaddi}} a lu situ {{PLURAL:$2|i' l'ulthimi 24 ori|i' li '''$2''' dì passaddi}}; i dati so aggiornaddi a li $5 di lu $4.",
'rcnotefrom' => "Inogghi so erencaddi li mudìfigghi arriggaddi a parthì da '''$2''' (finz'a '''$1''').",
'rclistfrom' => 'Musthra li mudìfigghi arriggaddi à partì da $1',
'rcshowhideminor' => '$1 li mudìfigghi minori',
'undelete-nodiff' => 'Nò è isthadda acciappadda nisciuna ribisioni prizzidenti.',
'undeletebtn' => 'Turra che primma',
'undeletelink' => 'visuarizza/rimpustha',
-'undeletereset' => 'Rimpustha',
'undeletecomment' => 'Cummentu:',
'undeletedrevisions' => '{{PLURAL:$1|Una ribisioni ricuparadda|$1 ribisioni ricuparaddi}}',
'undeletedrevisions-files' => '{{PLURAL:$1|Una ribisioni|$1 ribisioni}} e {{PLURAL:$2|un file ricuparaddu|$2 file ricuparaddi}}',
'ipadressorusername' => 'Indirizzu IP o innòmu utenti:',
'ipbexpiry' => 'Ischadènzia di lu broccu:',
'ipbreason' => 'Mutibu di lu broccu:',
-'ipbreasonotherlist' => 'Althra mutibazioni',
'ipbcreateaccount' => "Impidisci la criazioni d'althri registhrazioni",
'ipbemailban' => "Impidisci a l'utenti l'inviu di postha erettrònica",
'ipbenableautoblock' => "Brocca automatiggamenti l'ulthimu indirizzu IP usaddu da l'utenti e l'althri chi zerchani di fà mudìfigghi",
'ipbsubmit' => "Brocca l'utenti",
'ipbother' => 'Duradda nò in erencu:',
'ipboptions' => '2 ori:2 hours,1 dì:1 day,3 dì:3 days,1 chedda:1 week,2 cheddi:2 weeks,1 mesi:1 month,3 mesi:3 months,6 mesi:6 months,1 anni:1 year,infiniddu:infinite',
-'ipbotheroption' => 'althru',
-'ipbotherreason' => 'Althri dettàgli/rasgioni aggiuntiba:',
'ipbhidename' => "Cua l'innòmu utenti da lu rigisthru di li brocchi, da l'erencu di li brocci attibi e da l'erencu utenti.",
'badipaddress' => 'Indirizzu IP invàriddu',
'blockipsuccesssub' => 'Broccu eseguiddu',
'confirmemail_needlogin' => 'È nezzessàriu $1 pa cunfèimmà lu propriu indirizzu di postha erettrònica.',
'confirmemail_success' => "L'indirizzu di postha erettrònica è cunfèimmaddu. Abà è pussìbiri eseguì l'intradda e si godì lu situ.",
'confirmemail_loggedin' => "L'indirizzu di postha erettrònica è isthaddu cunfèimmaddu.",
-'confirmemail_error' => 'Errori i lu saivvamentu di la cunfèimma.',
'confirmemail_subject' => "{{SITENAME}}: prigonta di cunfèimma di l'indirizzu di postha erettrònica",
'confirmemail_body' => "Calchunu, forsi tu cu' l'indirizzu IP \$1,
s'è rigisthraddu cumenti \"\$2\" i' {{SITENAME}} cun chisthu indirizzu di postha erettrònica.
'tog-minordefault' => 'Rievdadusat leat unnit, jus ii eará álmmuhuvvo',
'tog-previewontop' => 'Čájet siidduid rievdadusaid ovddalgihtii geahččama ođasmahttin lođá bajábealde',
'tog-previewonfirst' => 'Čájehišgoađe siidduid rievdadusaid ovddalgihtii, go siiddu rievdadeapmi álggahuvvo',
-'tog-nocache' => 'Ále vurke siidduid gaskaboddasašmuitui',
'tog-enotifwatchlistpages' => 'Sádde dieđu e-poasttain go mu čuovvunlistui gullevaš siidu rievdaduvvo',
'tog-enotifusertalkpages' => 'Sádde e-poasta, go geavaheaddjisiiddu ságastallansiidu rievdaduvvo',
'tog-enotifminoredits' => 'Sádde dieđu e-poasttain maid unna rievdadusaid birra',
'recentchanges' => 'Varas rievdadusat',
'recentchanges-summary' => 'Dán siiddus sáhtát čuovvut varas rievdadusaid {{SITENAME}}s.',
'recentchanges-feed-description' => 'Dán siiddus sáhtat čuovvut varas {{GRAMMAR:illative|{{SITENAME}}}} rievdadusaid.',
-'rcnote' => 'Vuollin {{PLURAL:$1|lea okta rievdadus|leat $1 varas rievdadusa}} {{PLURAL:$2|ovtta beaivvi|$2 maŋimus jándora}} áigge gitta $3 rádjái.',
'rcnotefrom' => "Vuolábealde leat rievdadusat '''$2''' rájes. Eanemusta '''$1''' mearkkastaga čájehuvvo.",
'rclistfrom' => 'Čájet ođđa rievdadusat $1 rájes',
'rcshowhideminor' => '$1 unna rievdádusat',
'viewdeletedpage' => 'Sihkojuvvon siidduid bláđen',
'undeleterevisions' => '{{PLURAL:$1|Okta veršuvdna|$1 veršuvnna}} lasihuvvon arkiivii.',
'undeletebtn' => 'Máhcat',
-'undeletereset' => 'Gurre',
'undeletecomment' => 'Kommeanta:',
'undeletedrevisions' => '$1 veršuvnna máhcahuvvui',
'undeletedrevisions-files' => '$1 veršuvnna ja $2 fiilla máhcahuvvui',
# Block/unblock
'block' => 'Hehtte geavaheaddji',
'blockip' => 'Hehtte rievdadeamis',
-'blockip-title' => 'Cagge geavaheaddji',
'blockip-legend' => 'Cagge geavaheaddji',
'ipadressorusername' => 'IP-čujuhus dahje geavaheaddjidovddaldat',
'ipbexpiry' => 'Guhkkodat',
'ipbreason' => 'Sivva',
-'ipbreasonotherlist' => 'Eará sivva',
'ipbreason-dropdown' => '*Dábálas cakkastallansivat
** Boasto dieđuid lasiheapmi
** Sisdoalu sihkkun
'ipbsubmit' => 'Hehtte dán geavaheaddji',
'ipbother' => 'Eará áigi',
'ipboptions' => '2 diimma:2 hours,1 beaivi:1 day,3 beaivve:3 days,1 vahkku:1 week,2 vahkku:2 weeks,1 mánotbádji:1 month,3 mánotbaji:3 months,6 mánotbaji:6 months,1 jahki:1 year,bissovaš:infinite',
-'ipbotheroption' => 'eará',
-'ipbotherreason' => 'Eará sivva',
'badipaddress' => 'IP-čujuhus lea boastut.',
'blockipsuccesssub' => 'Hehtten lihkosmuvai',
'blockipsuccesstext' => "Geavaheaddji dahje IP-čujuhus '''$1''' lea eston.<br />Dálá easttut gávdnot [[Special:BlockList|easttolisttus]].",
'tog-minordefault' => 'Jömde ticpatlöx coccebj bajlöxamde auto',
'tog-previewontop' => "Cohuatlöx cuáxiit boxde ticpatlöx 'pre",
'tog-previewonfirst' => 'Cohuatlöx cuáxiitde 1. ticpatlöx',
-'tog-nocache' => 'Necoccebj cachede páhinám',
'tog-enotifwatchlistpages' => 'E-iitom he páhina he cáminot coccebj quiih',
'tog-enotifusertalkpages' => 'E-iitom he czaxö páhina he cáminot coccebj quiih',
'tog-enotifminoredits' => 'E-iitom hede ticpatlöx bajlöxde páhinám',
'recentchanges' => 'Camjöx cmaa',
'recentchanges-summary' => 'Caitom camjöx cmaa quiíx zode Wiki zo jan páhina iti.',
'recentchanges-feed-description' => 'Caitom camjöx cmaa quiíx zode Wiki zo jan fiiyt iti.',
-'rcnote' => "!-cmaa coccebj {{PLURAL:$1|'''1''' quiixde|'''$1''' hunquiíxde}} {{PLURAL:$2|'''1''' hunzaah|'''$2''' hunixaáp}} zo iti, $3 'de.",
'rcnotefrom' => "!-cmaa coccebj quiíx zode '''$2''' (plusöxiti '''$1''' visi).",
'rclistfrom' => "Cohuatlöx hunquiix startom $1 'de",
'rcshowhideminor' => '$1 editám bajlöxám',
'restriction-move' => 'Yacom',
# Undelete
-'undeletereset' => "Reset'",
'undeletecomment' => 'Commentua:',
'undelete-search-box' => 'Yahöx páhinám delatám',
'undelete-search-submit' => 'Yahöx',
'blockip' => 'Block caitom',
'ipadressorusername' => 'Addressade IP jöx caitom ID:',
'ipbreason' => 'Ra:',
-'ipbreasonotherlist' => "Ra pac'de",
'ipbsubmit' => 'Block jan caitom',
'ipbother' => "Pac'de xepe:",
-'ipbotheroption' => "pac'de",
-'ipbotherreason' => "Pac'de rae (addicionale):",
'badipaddress' => 'Addressade IP invalida',
'ipb-edit-dropdown' => 'Blockde ticpatlöx rá',
'ipb-unblock-addr' => 'Diiblockom $1',
'tog-minordefault' => 'Palē nutīliejėma pažīmietė redagavėmus kāp mažus',
'tog-previewontop' => 'Ruodītė parvaiza vėrš redagavėma lauka',
'tog-previewonfirst' => 'Ruodītė straipsnė parvėiza pėrmu redagavėmu',
-'tog-nocache' => "Nenauduotė poslapiu kaupėma (''caching'')",
'tog-enotifwatchlistpages' => 'Siōstė mon gromata, kūmet pakeitams poslapis, katra stebiu',
'tog-enotifusertalkpages' => 'Siōstė mon gromata, kūmet pakaitams mona nauduotuojė aptarėma poslapis',
'tog-enotifminoredits' => 'Siōstė mon gromata, kūmet poslapė keitėms īr mažos',
'recentchanges-label-minor' => 'Tas īr mažos pataisīms',
'recentchanges-label-bot' => 'Šėta keitėma padėrba autuomatėnė pruograma',
'recentchanges-label-unpatrolled' => 'Tas keitėms da nebova patikrints',
-'rcnote' => "Žemiau īr '''$1''' {{PLURAL:$1|paskotinis pakeitims|paskotinē pakeitimā|paskotiniu pakeitimu}} par $2 {{PLURAL:$2|paskotinė̅jė dėina|paskotėniasės '''$2''' dėinas|paskotėniuju '''$2''' dėinū}} skaitlioujant nū $4, $5.",
'rcnotefrom' => 'Žemiau īr pakeitėma pradedant nū <b>$2</b> (ruodom lėgė <b>$1</b> pakeitėmu).',
'rclistfrom' => 'Ruodītė naujus pakeitėmus pradedant nū $1',
'rcshowhideminor' => '$1 mažus pakeitėmus',
'undeletebtn' => 'Atkortė',
'undeletelink' => 'veizietė/atstatītė',
'undeleteviewlink' => 'veizietė',
-'undeletereset' => 'Ėš naujė',
'undeleteinvert' => 'Žīmietė prīšėngā',
'undeletecomment' => 'Kuomentars:',
'undeletedrevisions' => 'atkorta $1 {{PLURAL:$1|versėjė|versėjės|versėju}}',
'ipadressorusername' => 'IP adresos a nauduotuojė vards',
'ipbexpiry' => 'Galiuojėma čiesos',
'ipbreason' => 'Prīžastis:',
-'ipbreasonotherlist' => 'Kėta prīžastis',
'ipbreason-dropdown' => '*Dažniausės bluokavėma prižastīs
** Melagėngas infuormacėjės rašīms
** Torėnė trīnims ėš poslapiu
'ipbsubmit' => 'Blokoutė šėta nauduotuoja',
'ipbother' => 'Kėtuoks čiesos',
'ipboptions' => '2 adīnas:2 hours,1 dėina:1 day,3 dėinas:3 days,1 nedielė:1 week,2 nedielės:2 weeks,1 mienou:1 month,3 mienesē:3 months,6 mienesē:6 months,1 metā:1 year,omžėms:infinite',
-'ipbotheroption' => 'kėta',
-'ipbotherreason' => 'Kėta/papėlduoma prižastis',
'ipbwatchuser' => 'Keravuotė tuo nauduotuojė poslapi ėr anuo aptarėma poslapi',
'ipb-change-block' => 'Parblokoutė ta nauduotuoja so šėtās nustatīmās',
'badipaddress' => 'Nelaistėns IP adresos',
'tog-minordefault' => 'Označi da su sve izmjene u pravilu manje',
'tog-previewontop' => 'Prikaži pretpregled prije kutije za uređivanje',
'tog-previewonfirst' => 'Prikaži pretpregled na prvoj izmjeni',
-'tog-nocache' => 'Onemogući keš (cache) stranica u pregledniku',
'tog-enotifwatchlistpages' => 'Pošalji mi e-mail kada se promijeni stranica ili datoteka na mom spisku praćenja',
'tog-enotifusertalkpages' => 'Pošalji mi e-poštu kad se promijeni moja korisnička stranica za razgovor',
'tog-enotifminoredits' => 'Pošalji mi e-mail i kod manjih izmjena stranica i datoteka',
'recentchanges-label-bot' => 'Ovu je izmjenu učinio bot',
'recentchanges-label-unpatrolled' => 'Ova izmjena još nije patrolirana',
'recentchanges-legend-newpage' => '$1 - nova stranica',
-'rcnote' => "Ispod {{PLURAL:$1|je '''$1''' promjena|su '''$1''' zadnje promjene|su '''$1''' zadnjih promjena}} u {{PLURAL:$2|posljednjem '''$2''' danu|posljednja '''$2''' dana|posljednjih '''$2''' dana}}, od $4, $5.",
'rcnotefrom' => "Ispod {{PLURAL:$1|je '''$1''' izmjena|su '''$1''' zadnje izmjene|su '''$1''' zadnjih izmjena}} u {{PLURAL:$2|posljednjem '''$2''' danu|posljednja '''$2''' dana|posljednjih '''$2''' dana}}, od $4, $5.",
'rclistfrom' => 'Prikaži nove izmjene počevši od $1',
'rcshowhideminor' => '$1 male izmjene',
'undeletebtn' => 'Vrati',
'undeletelink' => 'pogledaj/vrati',
'undeleteviewlink' => 'pogledaj',
-'undeletereset' => 'Očisti',
'undeleteinvert' => 'Sve osim odabranog',
'undeletecomment' => 'Razlog:',
'undeletedrevisions' => '{{PLURAL:$1|$1 revizija vraćena|$1 revizije vraćene|$1 revizija vraćeno}}',
'block' => 'Blokiraj korisnika',
'unblock' => 'Odblokiraj korisnika',
'blockip' => 'Blokiraj korisnika',
-'blockip-title' => 'Blokiraj korisnika',
'blockip-legend' => 'Blokiranje korisnika',
'blockiptext' => 'Upotrebite donji upitnik da biste uklonili prava pisanja sa određene IP adrese ili korisničkog imena.
Ovo bi trebalo da bude urađeno samo da bi se spriječio vandalizam, i u skladu sa [[{{MediaWiki:Policy-url}}|smjernicama]].
'ipadressorusername' => 'IP adresa ili korisničko ime:',
'ipbexpiry' => 'Ističe:',
'ipbreason' => 'Razlog:',
-'ipbreasonotherlist' => 'Ostali razlog/zi',
'ipbreason-dropdown' => '*Najčešći razlozi blokiranja
**Unošenje netačnih informacija
**Uklanjanje sadržaja stranica
'ipbsubmit' => 'Blokirajte ovog korisnika',
'ipbother' => 'Ostali period:',
'ipboptions' => '2 sata:2 hours,1 dan:1 day,3 dana:3 days,1 sedmica:1 week,2 sedmice:2 weeks,1 mjesec:1 month,3 mjeseca:3 months,6 mjeseci:6 months,1 godine:1 year,zauvijek:infinite',
-'ipbotheroption' => 'ostalo',
-'ipbotherreason' => 'Ostali/dodatni razlog/zi:',
'ipbhidename' => 'Sakrij korisničko ime iz uređivanja i spiskova',
'ipbwatchuser' => 'Prati korisničku stranicu i stranicu za razgovor ovog korisnika',
'ipb-disableusertalk' => 'Onemogući ovog korisnika da uređuje svoju vlastitu stranicu za razgovor dok je blokiran',
'sorbs_create_account_reason' => 'Vaša IP adresa je prikazana kao otvoreni proxy u DNSBL korišten od {{SITENAME}}.
Ne možete napraviti račun',
'xffblockreason' => 'IP adresa koja postoji u zagljavlju X-Forwarded-For, ili Vaša ili od proxy servera koji koristite, je blokirana. Originalni razlog za blokiranje je bio: $1',
-'cant-block-while-blocked' => 'Ne možete blokirati druge korisnike dok ste blokirani.',
'cant-see-hidden-user' => 'Korisnik kojeg pokušavate blokirati je već blokiran i sakriven.
Pošto nemate prava hideuser (sakrivanje korisnika), ne možete vidjeti ni urediti korisnikovu blokadu.',
'ipbblocked' => 'Ne možete blokirati ili deblokirati druge korisnike, jer ste i sami blokirani',
'watchlistall2' => 'sve',
'namespacesall' => 'sve',
'monthsall' => 'sve',
-'limitall' => 'sve',
# Email address confirmation
'confirmemail' => 'Potvrdite adresu e-pošte',
'confirmemail_success' => 'Adresa vaše e-pošte je potvrđena.
Možete sad da se [[Special:UserLogin|prijavite]] i uživate u viki.',
'confirmemail_loggedin' => 'Adresa Vaše e-pošte je potvrđena.',
-'confirmemail_error' => 'Nešto je pošlo krivo prilikom snimanja vaše potvrde.',
'confirmemail_subject' => '{{SITENAME}} adresa e-pošte za potvrdu',
'confirmemail_body' => 'Neko, vjerovatno Vi, je sa IP adrese $1 registrovao nalog "$2" sa ovom adresom e-pošte na {{SITENAME}}.
# Special:ComparePages
'comparepages' => 'Usporedi stranice',
-'compare-selector' => 'Usporedi revizije stranica',
'compare-page1' => 'Stranica 1',
'compare-page2' => 'Stranica 2',
'compare-rev1' => 'Ispravljanje 1',
'tog-minordefault' => 'Rcm kullu iẓṛign li fssusni sɣiklli gan.',
'tog-previewontop' => 'Mel iẓri amzwaru ɣ uflla ɣ taɣzut n imbddln',
'tog-previewonfirst' => 'Ml imzray n imbdln imzwura',
-'tog-nocache' => 'ador itsjjal lmtasaffih tawriqt ad',
'tog-enotifwatchlistpages' => 'sifd yi tabrat igh ibdl kra yat twriqt ghomdfor inu',
'tog-enotifusertalkpages' => 'sifd yi tabrat igh tbdl tawriqt ohokko-no',
'tog-enotifminoredits' => 'sifd yi tabrat i ibdln mziynin',
'recentchanges-label-minor' => 'Imbddl ifssusn',
'recentchanges-label-bot' => 'Ambddl ad iskr robot',
'recentchanges-label-unpatrolled' => 'Ambddl ad ura jju ittmẓra',
-'rcnote' => 'Γid {{PLURAL:$1|ambddl amggaru lli ittuysgarn| $1 Imbddln imggura lli ittuyskarn}} ɣ {{PLURAL:$2|was amggaru| <b>$2</b> Ussan imggura}} ar $5 n $4.',
'rcnotefrom' => "Had imbddln lli ittuyskarn z '''$2''' ('''$1''' ɣ uggar).",
'rclistfrom' => 'Mel imbdeltn imaynutn z $1',
'rcshowhideminor' => '$1 iẓṛign fssusnin',
# Block/unblock
'blockip' => 'Qn f umsqdac',
'ipboptions' => '2 ikudn:2 hours,1 as:1 day,3 ussan:3 days,1 imalas:1 week,2 imalasn:2 weeks,1 ayur:1 month,3 irn:3 months,6 irn:6 months,1 asggas:1 year,tusut ur iswuttan:infinite',
-'ipbotheroption' => 'wayya',
'ipbhidename' => 'ḥbu assaɣ n umsqdac ɣ imbdln d umuɣn',
'ipbwatchuser' => 'Tfr tisniwin d imsgdaln n umqdac',
'ipblocklist' => 'Imsqdacn ttuẓnin',
'watchlistall2' => 'kraygat (kullu)',
'namespacesall' => 'kullu',
'monthsall' => 'kullu',
-'limitall' => 'Kullu',
# Delete conflict
'recreate' => 'awd skr',
# Special:ComparePages
'comparepages' => 'qarnn tiwriqin',
-'compare-selector' => 'qarn lmorajaa ntwriqin',
'compare-page1' => 'tawriqt 1',
'compare-page2' => 'tawriqt 2',
'compare-rev1' => 'morajaa 1',
'tog-minordefault' => 'සියළු සංස්කරණයන් පෙර-නිමියෙන් සුළු-සංස්කරණ ලෙස සලකුණු කරන්න',
'tog-previewontop' => 'සංස්කරණ කොටුවට ඉදිරියෙන් පෙර-දසුන පෙන්වන්න',
'tog-previewonfirst' => 'පළමු සංස්කරණයෙහිදී පෙර-දසුන පෙන්වන්න',
-'tog-nocache' => 'ගවේශක පිටු මතක තබා ගැනීම අක්රීය කරන්න',
'tog-enotifwatchlistpages' => 'මාගේ මුර ලැයිස්තුවෙහි පිටුවක් හෝ ගොනුවක් හෝ වෙනස්වූ විට මා හට විද්යුත් තැපැල් පණිවුඩයක් එවන්න',
'tog-enotifusertalkpages' => 'මගේ පරිශීලක සාකච්ඡා පිටුව වෙනස් වූ විට මා හට විද්යුත්-තැපෑලක් එවන්න',
'tog-enotifminoredits' => 'පිටුවල හෝ ගොනුවල හෝ සුළු-සංස්කරණයකදී පවා මට විද්යුත් තැපැල් පණිවුඩයක් එවන්න',
'recentchanges-label-bot' => 'මෙය රොබෝවක් විසින් කරන ලද සංස්කරණයකි',
'recentchanges-label-unpatrolled' => 'මෙම සංස්කරණය තවම විමර්ශනය කර නොමැත',
'recentchanges-legend-newpage' => '$1 - නව පිටුව',
-'rcnote' => "$4 දින, $5 වන තෙක්, අවසන් {{PLURAL:$2|දිනදී|දින '''$2''' තුලදී}} සිදුවී ඇති, {{PLURAL:$1| '''1''' ක් වෙනස|අවසන් වෙනස්වීම් '''$1'''}} පහත දැක්වේ.",
'rcnotefrom' => "'''$2''' න් පසු සිදුවී ඇති වෙනස්කම් මෙහි පහත දැක්වේ ('''$1''' ක ප්රමාණයක උපරිමයක් පෙන්වා ඇත).",
'rclistfrom' => '$1 සිට බලපැවැත්වෙන මෑත වෙනස්වීම් පෙන්වන්න',
'rcshowhideminor' => 'සුළු සංස්කරණ $1',
'undeletebtn' => 'යලි පිහිටුවන්න',
'undeletelink' => 'නරඹන්න/ප්රත්යර්පණය',
'undeleteviewlink' => 'නරඹන්න',
-'undeletereset' => 'ප්රත්යාරම්භ කරන්න',
'undeleteinvert' => 'තෝරාගැනුම කණපිට පෙරලන්න',
'undeletecomment' => 'හේතුව:',
'undeletedrevisions' => '{{PLURAL:$1|සංශෝධනයක්|සංශෝධන $1 ක්}} ප්රතිෂ්ඨාපනය කරන ලදි',
'block' => 'පරිශීලකයා වාරණය කරන්න',
'unblock' => 'පරිශීලකයාගේ වාරණය අත්හිටුවන්න',
'blockip' => 'පරිශීලකයා වාරණය කරන්න',
-'blockip-title' => 'පරිශීලකයා වාරණය කරන්න',
'blockip-legend' => 'වාරණයකල පරිශීලක',
'blockiptext' => 'විශේෂිත අන්තර්ජාල ලිපිනයකින් හෝ ප්රතිශීලක නාමයකින් ලිවීම් ප්රවේශය වාරණය කෙරුමට පහත ආකෘති පත්රය භාවිතා කරන්න.
වන්ධල්යය වැලැක්වීමේ හුදු අභිලාෂයෙන් හා, [[{{MediaWiki:Policy-url}}|ප්රතිපත්ති]] ප්රකාරව මෙය සිදුකල යුත්තේය.
'ipadressorusername' => 'පරිශීලක නාමය හෝ IP ලිපිනය:',
'ipbexpiry' => 'කල් ඉකුත්වීම:',
'ipbreason' => 'හේතුව:',
-'ipbreasonotherlist' => 'අනෙකුත් හේතුව',
'ipbreason-dropdown' => '*සාමාන්ය වාරණ හේතූන්
** සාවද්ය තොරතුරු බහාලීම
** පිටුවලින් අන්තර්ගතය ඉවත්කිරීම
'ipbsubmit' => 'මෙම පරිශීලක වාරණය කරන්න',
'ipbother' => 'අනෙකුත් වේලාව:',
'ipboptions' => 'පැය 2:2 hours,දින 1:1 day,දින 3:3 days,සති 1:1 week,සති 2:2 weeks,මාස 1:1 month,මාස 3:3 months,මාස 6:6 months,වසර 1:1 year,අනන්තය:infinite',
-'ipbotheroption' => 'අනෙකුත්',
-'ipbotherreason' => 'අනෙකුත්/අමතර හේතුව:',
'ipbhidename' => 'පරිශීලක-නාමය සංස්තරණයන් ගෙන් හා ලැයිස්තු වලින් සඟවන්න',
'ipbwatchuser' => 'මෙම පරිශීලකයාගේ පරිශීලක හා සාකච්ඡා පිටු මුර-කරන්න',
'ipb-disableusertalk' => 'මෙම පරිශීලකයා වාරණය කර තැබෙන විට ඔවුන්ගේම සාකච්ඡා පිටුව සංස්කරණය කිරීම වලක්වන්න',
'sorbsreason' => 'ඔබගේ අන්තර්ජාල ලිපිනය, {{SITENAME}} විසින් භාවිත වන DNSBL හි විවෘත නියුතුවක් (ප්රොක්සියක්) ලෙස ලැයිස්තුගත කොට ඇත.',
'sorbs_create_account_reason' => 'ඔබගේ අන්තර්ජාල ලිපිනය, {{SITENAME}} විසින් භාවිත වන DNSBL හි විවෘත නියුතුවක් (ප්රොක්සියක්) ලෙස ලැයිස්තුගත කොට ඇත.
ඔබ හට ගිණුමක් තැනිය නොහැක',
-'cant-block-while-blocked' => 'ඔබ වාරණයට ලක්ව සිටින අතරතුර අනෙක් පරිශීලකයන් වාරණය කිරීමට ඔබ හට නොහැක.',
'cant-see-hidden-user' => 'අවහිර කිරීමට උත්සාහ කරන පරිශීලකයා දැනටමත් අවහිර කර සඟවා ඇත.පරිශීලක සැඟවුම් අයිතිය ඔබ සතු නොවන බැවින් ,ඔබට පරිශීලක අවහිරය නැරඹීමට හෝ සංස්කරණය කිරීමට නොහැකිය.',
'ipbblocked' => 'ඔබද වාරණය කොට ඇති බැවින් අනෙකුත් පරිශීලකයන් වාරණය කිරීම හෝ වාරණයෙන් මුදවීම ඔබ හට කල නොහැක',
'ipbnounblockself' => 'ඔබ විසින්ම ඔබගේ වාරණයෙන් බැහැර වීමට ඉඩදෙනු නොලැබේ',
'watchlistall2' => 'සියල්ල',
'namespacesall' => 'සියල්ල',
'monthsall' => 'සියළු',
-'limitall' => 'සියල්ලම',
# Email address confirmation
'confirmemail' => 'විද්යුත්-තැපැල් ලිපිනය තහවුරු කරන්න',
'confirmemail_success' => 'ඔබගේ විද්යුත්-තැපැල් ලිපිනය තහවුරුකොට ඇත.
ඔබහට දැන් [[Special:UserLogin|පුවිෂ්ට වී]] විකිය භුක්තිවිඳිය හැක.',
'confirmemail_loggedin' => 'ඔබගේ විද්යුත්-තැපැල් ලිපිනය දැන් තහවුරුකොට ඇත.',
-'confirmemail_error' => 'ඔබගේ තහවුරුකිරීම සුරැකීමට උත්සාහ කිරීමේදී යම් ගැටළුවක් පැනනැගුණි.',
'confirmemail_subject' => '{{SITENAME}} විද්යුත්-තැපැල් ලිපිනය තහවුරුකිරීම',
'confirmemail_body' => 'යම් අයෙකු, අන්තර්ජාල ලිපිනය $1 මගින්, සමහර විට ඔබ,
{{SITENAME}} හි "$2" නමැති ගිණුමක් මෙම විද්යුත්-තැපැල් ලිපිනය සහිතව ලියාපදිංචි කර ඇත .
# Special:ComparePages
'comparepages' => 'පිටු සසඳන්න',
-'compare-selector' => 'පිටුවේ සංශෝධන සසඳන්න',
'compare-page1' => 'පිටුව 1',
'compare-page2' => 'පිටුව 2',
'compare-rev1' => '1වන සංශෝධනය',
'tog-minordefault' => 'Označovať všetky zmeny štandardne ako drobné',
'tog-previewontop' => 'Zobrazovať náhľad pred textovým poľom úprav, nie až za ním',
'tog-previewonfirst' => 'Zobraziť náhľad pred prvou úpravou',
-'tog-nocache' => 'Zakázať ukladanie stránok do vyrovnávacej pamäte prehliadača',
'tog-enotifwatchlistpages' => 'Upozorniť ma emailom, keď sa zmení stránka alebo súbor z môjho zoznamu sledovaných',
'tog-enotifusertalkpages' => 'Upozorniť ma emailom po zmene mojej používateľskej diskusnej stránky',
'tog-enotifminoredits' => 'Upozorniť ma emailom aj na drobné úpravy stránok a súborov',
'recentchanges-label-bot' => 'Túto úpravy vykonal robot',
'recentchanges-label-unpatrolled' => 'Táto úprava zatiaľ nebola strážená',
'recentchanges-legend-newpage' => '(pozri tiež [[Special:NewPages|zoznam nových stránok]])',
-'rcnote' => "Tu {{PLURAL:$1|je posledná úprava|sú posledné '''$1''' úpravy|je posledných '''$1''' úprav}} počas {{PLURAL:$2|posledného dňa|posledných '''$2''' dní}} z $4, $5.",
'rcnotefrom' => "Nižšie sú zobrazené úpravy od '''$2''' (do '''$1''').",
'rclistfrom' => 'Zobraziť nové úpravy počnúc od $1',
'rcshowhideminor' => '$1 drobné úpravy',
'undeletebtn' => 'Obnoviť!',
'undeletelink' => 'zobraziť/obnoviť',
'undeleteviewlink' => 'zobraziť',
-'undeletereset' => 'Reset',
'undeleteinvert' => 'Invertovať výber',
'undeletecomment' => 'Dôvod:',
'undeletedrevisions' => '{{PLURAL:$1|jedna verzia bola obnovená|$1 verzie boli obnovené|$1 verzií bolo obnovených}}',
'block' => 'Zablokovať používateľa',
'unblock' => 'Odblokovať používateľa',
'blockip' => 'Zablokovať používateľa',
-'blockip-title' => 'Zablokovať používateľa',
'blockip-legend' => 'Zablokovať používateľa',
'blockiptext' => 'Použite tento formulár na zablokovanie možnosti zápisov uskutočnených z konkrétnej IP adresy alebo od používateľa.
Mali by ste to urobiť len v prípade bránenia vandalizmu a v súlade so [[{{MediaWiki:Policy-url}}|zásadami a smernicami {{GRAMMAR:genitív|{{SITENAME}}}}]].
'ipadressorusername' => 'IP adresa/meno používateľa:',
'ipbexpiry' => 'Ukončenie:',
'ipbreason' => 'Dôvod:',
-'ipbreasonotherlist' => 'Iný dôvod',
'ipbreason-dropdown' => '* Bežné dôvody blokovania
** Zámerné vkladanie chybných informácií
** Mazanie obsahu stránok
'ipbsubmit' => 'Zablokovať tohto používateľa',
'ipbother' => 'Iný čas',
'ipboptions' => '2 hodiny:2 hours,1 deň:1 day,3 dni:3 days,1 týždeň:1 week,2 týždne:2 weeks,1 mesiac:1 month,3 mesiace:3 months,6 mesiacov:6 months,1 rok:1 year,na neurčito:infinite',
-'ipbotheroption' => 'iný čas',
-'ipbotherreason' => 'Iný/ďalší dôvod',
'ipbhidename' => 'Skryť meno používateľa z úprav a zoznamov',
'ipbwatchuser' => 'Sledovať používateľskú a diskusnú stránku tohto používateľa',
'ipb-disableusertalk' => 'Zabrániť tomuto používateľovi upravovať vlastnú diskusnú stránku, kým je zablokovaný',
'sorbsreason' => 'Vaša IP adresa je vedená ako nezabezpečený proxy server v DNSBL.',
'sorbs_create_account_reason' => 'Vaša IP adresa je vedená ako nezabezpečený proxy server v databáze DNSBL, ktorú používa {{SITENAME}}. Nemôžete si vytvoriť účet.',
'xffblockreason' => 'IP adresa prítomná v hlavičke X-Forwarded-For patriaca buď vám alebo proxy serveru, ktorý používate, je zablokovaná. Pôvodný dôvod zablokovania bol: $1',
-'cant-block-while-blocked' => 'Nemôžete blokovať iných používateľov, kým ste zablokovaný.',
'cant-see-hidden-user' => 'Používateľ, ktorého sa pokúšate zablokovať už bol zablokovaný a skrytý. Pretože nemáte právo hideuser, nemôžete vidieť ani upravovať blokovanie používateľa.',
'ipbblocked' => 'Nemôžete zablokovať ani odblokovať iných používateľov, pretože ste sami zablokovaní',
'ipbnounblockself' => 'Nie je povolené, aby ste sa sami odblokovali',
'watchlistall2' => 'všetky',
'namespacesall' => 'všetky',
'monthsall' => 'všetky',
-'limitall' => 'všetky',
# Email address confirmation
'confirmemail' => 'Potvrdiť e-mailovú adresu',
'confirmemail_needlogin' => 'Musíte sa $1 na potvrdenie vašej emailovaj adresy.',
'confirmemail_success' => 'Vaša e-mailová adresa bola potvrdená. Môžete sa prihlásiť a využívať wiki.',
'confirmemail_loggedin' => 'Vaša e-mailová adresa bola potvrdená.',
-'confirmemail_error' => 'Niečo sa pokazilo pri ukladaní vášho potvrdenia.',
'confirmemail_subject' => '{{SITENAME}} - potvrdenie e-mailovej adresy',
'confirmemail_body' => 'Niekto, pravdepodobne vy z IP adresy $1, zaregistroval účet
„$2“ s touto e-mailovou adresou na {{GRAMMAR:lokál|{{SITENAME}}}}.
# Special:ComparePages
'comparepages' => 'Porovnať stránky',
-'compare-selector' => 'Porovnať revízie stránky',
'compare-page1' => 'Stránka 1',
'compare-page2' => 'Stránka 2',
'compare-rev1' => 'Revízia 1',
'tog-minordefault' => 'Vsa urejanja označi kot manjša',
'tog-previewontop' => 'Prikaži predogled pred urejevalnim poljem',
'tog-previewonfirst' => 'Ob začetku urejanja prikaži predogled',
-'tog-nocache' => 'Onemogoči predpomnenje strani v brskalniku',
'tog-enotifwatchlistpages' => 'Ob spremembah strani ali datotek mi pošlji e-pošto',
'tog-enotifusertalkpages' => 'Pošlji e-pošto ob spremembah moje pogovorne strani',
'tog-enotifminoredits' => 'Pošlji e-pošto tudi za manjše spremembe strani in datotek',
# Edit pages
'summary' => 'Povzetek urejanja:',
'subject' => 'Zadeva/naslov:',
-'minoredit' => 'Manjše urejanje',
+'minoredit' => 'manjše urejanje',
'watchthis' => 'Opazuj članek',
'savearticle' => 'Shrani stran',
'preview' => 'Predogled',
'recentchanges-summary' => 'Na tej strani lahko spremljate najnovejše spremembe wikija.',
'recentchanges-noresult' => 'V podanem obdobju nobena sprememba ne ustreza tem merilom.',
'recentchanges-feed-description' => 'Spremljajte zadnje spremembe wikija prek tega vira.',
-'recentchanges-label-newpage' => 'S tem urejanjem je uporabnik ustvaril novo stran',
-'recentchanges-label-minor' => 'Manjše urejanje',
-'recentchanges-label-bot' => 'Urejanje je izvedel bot',
+'recentchanges-label-newpage' => 's tem urejanjem je uporabnik ustvaril novo stran',
+'recentchanges-label-minor' => 'manjše urejanje',
+'recentchanges-label-bot' => 'urejanje je izvedel bot',
'recentchanges-label-unpatrolled' => 'Urejanje še ni bilo pregledano',
-'recentchanges-label-plusminus' => 'Uporabnik je velikost strani spremenil za tolikšno število bajtov.',
+'recentchanges-label-plusminus' => 'uporabnik je velikost strani spremenil za tolikšno število bajtov',
'recentchanges-legend-newpage' => '(glej tudi [[Special:NewPages|seznam novih strani]])',
-'rcnote' => "Prikazujem {{PLURAL:$1|zadnjo spremembo|zadnji '''$1''' spremembi|zadnje '''$1''' spremembe|zadnjih '''$1''' sprememb|zadnjih '''$1''' sprememb}} v {{PLURAL:$2|zadnjem|zadnjih|zadnjih|zadnjih|zadnjih}} '''$2''' {{PLURAL:$2|dnevu|dneh|dneh|dneh|dneh}}, od $5, $4.",
'rcnotefrom' => "Navedene so spremembe od '''$2''' dalje (prikazujem jih do '''$1''').",
'rclistfrom' => 'Prikaži spremembe od $1 naprej',
'rcshowhideminor' => '$1 manjša urejanja',
'rclinks' => 'Prikaži zadnjih $1 sprememb v zadnjih $2 dneh<br />$3',
'diff' => 'prim',
'hist' => 'zgod',
-'hide' => 'Skrij',
-'show' => 'Prikaži',
+'hide' => 'skrij',
+'show' => 'prikaži',
'minoreditletter' => 'm',
'newpageletter' => 'N',
'boteditletter' => 'b',
Prosimo, preverite delovanje strani, počakajte kratek čas in poskusite ponovno.
Morda želite poskusiti ob času manjše zasedenosti.',
-'license' => 'Licenciranje:',
+'license' => 'Licenca:',
'license-header' => 'Licenca',
'nolicense' => 'Nobeno',
'license-nopreview' => '(Predogled ni na voljo)',
'undeletebtn' => 'Obnovi',
'undeletelink' => 'poglej/obnovi',
'undeleteviewlink' => 'ogled',
-'undeletereset' => 'Ponastavi',
'undeleteinvert' => 'Obrni izbor',
'undeletecomment' => 'Razlog:',
'undeletedrevisions' => '{{PLURAL:$1|obnovljena $1 redakcija|obnovljeni $1 redakciji|obnovljene $1 redakcije|obnovljenih $1 redakcij}}',
# Namespace form on various pages
'namespace' => 'Imenski prostor:',
-'invert' => 'Obrni izbor',
+'invert' => 'obrni izbor',
'tooltip-invert' => 'Označite to polje, da skrijete spremembe v izbranem imenskem prostoru (in povezanih imenskih prostorih, če je označeno)',
-'namespace_association' => 'Povezan imenski prostor',
+'namespace_association' => 'povezan imenski prostor',
'tooltip-namespace_association' => 'Označite to polje, da vključite tudi pogovor ali predmetni imenski prostor, povezan z izbranim imenskim prostorom',
'blanknamespace' => '(Osnovno)',
'block' => 'Blokiraj uporabnika',
'unblock' => 'Odblokiraj uporabnika',
'blockip' => 'Blokiranje IP-naslova ali uporabniškega imena',
-'blockip-title' => 'Blokiraj uporabnika',
'blockip-legend' => 'Blokiraj uporabnika',
'blockiptext' => "Naslednji obrazec vam omogoča, da določenemu IP-naslovu ali uporabniškemu imenu preprečite urejanje.
To storimo le zaradi zaščite pred nepotrebnim uničevanjem in po [[{{MediaWiki:Policy-url}}|pravilih]].
'ipadressorusername' => 'IP-naslov ali uporabniško ime',
'ipbexpiry' => 'Pretek',
'ipbreason' => 'Razlog:',
-'ipbreasonotherlist' => 'Drug razlog',
'ipbreason-dropdown' => '*Razlogi za blokado
** vandalizem
** dodajanje napačnih/lažnih podatkov
'ipbsubmit' => 'Blokiraj naslov',
'ipbother' => 'Drugačen čas',
'ipboptions' => '2 uri:2 hours,1 dan:1 day,3 dni:3 days,1 teden:1 week,2 tedna:2 weeks,1 mesec:1 month,3 mesece:3 months,6 mesecev:6 months,1 leto:1 year,neomejeno dolgo:infinite',
-'ipbotheroption' => 'drugo',
-'ipbotherreason' => 'Drug/dodaten razlog:',
'ipbhidename' => 'Skrij uporabniško ime iz urejanja in seznamov',
'ipbwatchuser' => 'Nadzoruj uporabnikovo uporabniško in pogovorno stran',
'ipb-disableusertalk' => 'Med blokado prepreči temu uporabniku urejati lastno pogovorno stran',
'sorbs_create_account_reason' => 'Vaš IP-naslov je v DNSBL, ki ga uporablja {{GRAMMAR:tožilnik|{{SITENAME}}}}, naveden kot odprti posredniški strežnik (proxy).
Računa žal ne morete ustvariti.',
'xffblockreason' => 'IP-naslov, prisoten v glavi X-Forwarded-For, ali vaš ali od strežnika proxy, ki ga uporabljate, je blokiran. Izvirni razlog za blokado: $1',
-'cant-block-while-blocked' => 'Ne morete blokirati drugih uporabnikove, medtem ko ste sami blokirani.',
'cant-see-hidden-user' => 'Uporabnik, ki ga poskušate blokirate, je že blokiran in skrit.
Ker nimate pravice hideuser, si ne morete ogledati ali urejati uporabnikove blokade.',
'ipbblocked' => 'Ne morete blokirati ali deblokirati drugih uporabnikov, saj ste sami blokirani',
'watchlistall2' => 'vse',
'namespacesall' => 'vse',
'monthsall' => 'vse',
-'limitall' => 'vse',
# Email address confirmation
'confirmemail' => 'Potrditev naslova elektronske pošte',
'confirmemail_needlogin' => 'Za potrditev svojega e-poštnega naslova se morate $1.',
'confirmemail_success' => 'Vaš e-poštni naslov je potrjen. Zdaj se lahko prijavite in uporabljate wiki.',
'confirmemail_loggedin' => 'Svoj elektronski naslov ste uspešno potrdili.',
-'confirmemail_error' => 'Vaša potrditev se žal ni shranila.',
'confirmemail_subject' => 'Potrditev e-poštnega naslova',
'confirmemail_body' => 'Nekdo, verjetno vi, z IP-naslovom $1,
je v {{GRAMMAR:dajalnik|{{SITENAME}}}} ustvaril račun »$2« in zanj vpisal ta elektronski naslov.
Lahko tudi [[Special:EditWatchlist/raw|uredite gol spisek]].',
'watchlistedit-normal-submit' => 'Odstrani strani',
'watchlistedit-normal-done' => 'Z vašega spiska nadzorov {{PLURAL:$1|je bila odstranjena $1 stran|sta bili odstranjeni $1 strani|so bile odstranjene $1 strani|je bilo odstranjenih $1 strani}}:',
-'watchlistedit-raw-title' => 'Uredi gol spisek nadzorov',
+'watchlistedit-raw-title' => 'urejanje golega spiska nadzorov',
'watchlistedit-raw-legend' => 'Uredi gol spisek nadzorov',
'watchlistedit-raw-explain' => 'Strani na vašem spisku nadzorov so prikazane spodaj in jih lahko urejate z dodajanjem in odstranjevanjem s seznama; vsak naslov je v svoji vrstici.
Ko končate, kliknite »{{int:Watchlistedit-raw-submit}}«.
'watchlistedit-raw-removed' => '{{PLURAL:$1|Odstranjena je bila $1 stran|Odstranjeni sta bili 2 strani|Odstranjene so bile $1 strani|Odstranjenih je bilo $1 strani}}:',
# Watchlist editing tools
-'watchlisttools-view' => 'Oglej si ustrezne spremembe',
-'watchlisttools-edit' => 'Poglej in uredi spisek nadzorov',
+'watchlisttools-view' => 'oglej si ustrezne spremembe',
+'watchlisttools-edit' => 'prikaz in urejanje spiska nadzorov',
'watchlisttools-raw' => 'Uredi gol spisek nadzorov',
# Signatures
# Special:ComparePages
'comparepages' => 'Primerjaj strani',
-'compare-selector' => 'Primerjaj redakcije strani',
'compare-page1' => 'Stran 1',
'compare-page2' => 'Stran 2',
'compare-rev1' => 'Redakcija 1',
'tog-minordefault' => 'Eegene Änderunga standardmäßig als geringfiegich markiern',
'tog-previewontop' => 'Vurschau uberhoalb voo dam Beoarbeetungsfanster oazäan',
'tog-previewonfirst' => 'Beim erschta Bearbta emmer de Vurschau oazeiga',
-'tog-nocache' => 'Zwischaspeicharn derr Seite (eim cache) deaktiviern',
'tog-enotifwatchlistpages' => 'Bei Änderunga voo beobachteta Seyta mer an E-mail schicka',
'tog-enotifusertalkpages' => 'Bei Änderunga oa menner Benutzer-Dischkurseite E-mail oa mich schicka',
'tog-enotifminoredits' => 'Au bei klenn Änderunga E-mail oa mich schicka',
'recentchanges-label-bot' => "Änderung durch an'n Bot",
'recentchanges-label-unpatrolled' => 'Nicht-kontrollierte Änderung',
'recentchanges-legend-newpage' => '$1 - neue Seite',
-'rcnote' => "Oagezeegt {{PLURAL:$1|wird '''1''' Ännerong|waan de letzta '''$1''' Änneronga}} {{PLURAL:$2|des letzta Taages|dar letzta '''$2''' Taage}}. Stand: $4, $5. (<b><tt>N</tt></b> – neuer Eentrag; <b><tt>K</tt></b> – kleene Ännerong; <b><tt>B</tt></b> – Ännerong dorch eena Bot; ''(± Zoahl)'' – Greeßaännerong ei Byte)",
'rcnotefrom' => "Oagezeigt waan de Änderunga seit '''$2''' (max. '''$1''' Einträge).",
'rclistfrom' => 'Oack Änneronga seit $1 zeiga.',
'rcshowhideminor' => 'Klenne Änderunga $1',
Bitte gib dann Grund fier de Sperre oa.",
'ipadressorusername' => 'IP-Atresse oder Benutzernoame:',
'ipbreason' => 'Begriendung:',
-'ipbreasonotherlist' => 'Andere Begrindung',
'ipbreason-dropdown' => '* Allgemeene Sperrgrinde
** Eenfiega foalscher Informationen
** Laara vu Seita
'ipbsubmit' => 'IP-Atresse/Benutzer sperra',
'ipbother' => 'Ondere Dauer (englsch):',
'ipboptions' => '2 Stonda:2 hours,1 Taag:1 day,3 Taage:3 days,1 Wuche:1 week,2 Wucha:2 weeks,1 Moonat:1 month,3 Moonate:3 months,6 Moonate:6 months,1 Joahr:1 year,Unbeschränkt:infinite',
-'ipbotheroption' => 'Oandere Dauer',
-'ipbotherreason' => 'Andere/ergänzende Begrindung:',
'ipbhidename' => 'Nutzernoame ei Beoarbeetunga und Listen verstecka',
'ipbwatchuser' => 'Nutzer(dischkur)seite beobachta',
'ipb-change-block' => 'Sperre miet diesen Sperrparametern erneuern',
'proxyblockreason' => 'Denne IP-Atresse wurde gesperrt, do se a offener Proxy ies. Bitte kontaktiere denn Internet-Provider oder denne Systemadministratoren und informiere se ieber dieses meegliche Sicherheetsproblem.',
'sorbsreason' => 'De IP-Atresse ies ei dar DNSBL vu {{SITENAME}} ols offener PROXY gelistet.',
'sorbs_create_account_reason' => 'De IP-Atresse ies ei dar DNSBL vu {{SITENAME}} ols offener PROXY gelistet. Doas Oalega neuer Nutzer ies ne meeglich.',
-'cant-block-while-blocked' => 'Du koast kenne andern Nutzer sperra, während du selbst gesperrt best',
# Developer tools
'lockdb' => 'Datenbank sperra',
'watchlistall2' => 'olle',
'namespacesall' => 'olle',
'monthsall' => 'olle',
-'limitall' => 'olle',
# Email address confirmation
'confirmemail' => 'E-Mail-Atresse bestätiga (Authentifizierung)',
'confirmemail_needlogin' => 'Du musst diech $1, im denne E-Mail-Atresse zu bestätiga.',
'confirmemail_success' => 'Denne E-Mail-Atresse wurde erfolgreich bestätigt. Du koast diech jitz [[Special:UserLogin|oamelda]].',
'confirmemail_loggedin' => 'Denne E-Mail-Atresse wurde erfolgreich bestätigt.',
-'confirmemail_error' => "Is gab an'n Fahler bei dar Bestätigung denner E-Mail-Atresse.",
'confirmemail_subject' => '[{{SITENAME}}] - Bestätigung dar E-Mail-Atresse',
'confirmemail_body' => 'Hallo,
'tog-minordefault' => 'Isbedelada yaryar marwalba calaamadey',
'tog-previewontop' => 'Itus horfiirinta kahor sanduuqa wax ka bedelida',
'tog-previewonfirst' => 'Horfiirinta itus marka ugu horeeyso oo aan wax ka bedelo',
-'tog-nocache' => 'Dami browsaha maqaalada duubo',
'tog-enotifwatchlistpages' => 'E-mail ii soo dir markii wax laga badalo maqaalada ku jira liiskayga waardiyaha',
'tog-enotifusertalkpages' => 'E-mail ii soo dir markii boggayga wadahadalka oo isbedelo',
'tog-enotifminoredits' => 'E-mail Ii soo dir xataa markii bedelo yar lagu sameeyo bogyada',
'recentchanges-label-minor' => 'Kan waa bedel yar',
'recentchanges-label-bot' => 'Badalkaan waxaa sameeyay bot',
'recentchanges-label-unpatrolled' => 'bedelkaan hadda wali lama waardiyeen',
-'rcnote' => "Hoostaan {{PLURAL:$1|waa '''1''' badalkii| '''$1''' ee ugu danbeeyay}} oo dhacay wixii ka danbeeyay {{PLURAL:$2|maalin|'''$2''' maalmood}}, marka ee eheed $5, $4.",
'rcnotefrom' => "Hoostaan waa isbedaladii dhacay '''$2''' (waxaad arkoosaa ilaa '''$1''' ).",
'rclistfrom' => 'Itusi isbedelada cusub oo ka bilaabaneyso $1',
'rcshowhideminor' => '$1 bedelada yar',
'undeletebtn' => 'Sooceli',
'undeletelink' => 'fiiri/mar kale sameey',
'undeleteviewlink' => 'itusi',
-'undeletereset' => 'Dib u habeey',
'undeletedrevisions' => '$1 {{PLURAL:$1|revision|revisions}} restored',
'undeletedrevisions-files' => '$1 {{PLURAL:$1|revision|revisions}} and $2 {{PLURAL:$2|file|files}} restored',
'undeletedfiles' => '$1 {{PLURAL:$1|file|files}} restored',
'tog-minordefault' => 'Shëno të gjitha redaktimet si të vogla automatikisht',
'tog-previewontop' => 'Vendose kutinë e bocetit sipër kutisë së redaktimeve',
'tog-previewonfirst' => 'Tregoje bocetin në redaktimin e parë',
-'tog-nocache' => "Ç'aktivizo ruajtjen e faqeve të vizituara",
'tog-enotifwatchlistpages' => 'Më njofto me e-mail kur ndryshohet një faqe apo skedaë nga lista ime e faqeve nën mbikqyrje',
'tog-enotifusertalkpages' => 'Më njofto me e-mail kur faqja ime e dikutimeve të përdoruesit ndryshohet',
'tog-enotifminoredits' => 'Më njofto me e-mail edhe kur ka redaktime të vogla në faqe dhe skedave',
'recentchanges-label-bot' => 'Ky editim është kryer nga një bot',
'recentchanges-label-unpatrolled' => 'Ky editim ende nuk është patrolluar',
'recentchanges-legend-newpage' => '$1 - faqe të re',
-'rcnote' => "Më poshtë {{PLURAL:$1|është '''1''' ndryshim| janë '''$1''' ndryshime}} së fundmi gjatë <strong>$2</strong> ditëve sipas të dhënave nga $4, $5.",
'rcnotefrom' => 'Më poshtë janë ndryshime së fundmi nga <b>$2</b> (treguar deri në <b>$1</b>).',
'rclistfrom' => 'Tregon ndryshime së fundmi duke filluar nga $1',
'rcshowhideminor' => '$1 redaktimet e vogla',
'undeletebtn' => 'Restauro!',
'undeletelink' => 'shiko/rikthe',
'undeleteviewlink' => 'Pamje',
-'undeletereset' => 'Boshatis',
'undeleteinvert' => 'Selektim anasjelltas',
'undeletecomment' => 'Arsyeja:',
'undeletedrevisions' => '$1 {{PLURAL:$1|version u restaurua|versione u restauruan}}',
'block' => 'Blloko përdoruesin',
'unblock' => 'Zhblloko përdoruesin',
'blockip' => 'Blloko përdorues',
-'blockip-title' => 'Përdorues i Bllokuar',
'blockip-legend' => 'Blloko përdoruesin',
'blockiptext' => 'Përdorni formularin e mëposhtëm për të hequr lejen e shkrimit për një përdorues ose IP specifike.
Kjo duhet bërë vetëm në raste vandalizmi, dhe në përputhje me [[{{MediaWiki:Policy-url}}|rregullat e {{SITENAME}}-s]].
'ipadressorusername' => 'Adresë IP ose emër përdoruesi',
'ipbexpiry' => 'Afati',
'ipbreason' => 'Arsyeja:',
-'ipbreasonotherlist' => 'Arsye tjetër',
'ipbreason-dropdown' => '*Arsyet më të shpeshta të bllokimit
** Postimi i informacioneve të rreme
** Largimi i përmbajtjes së faqes
'ipbsubmit' => 'Blloko këtë përdorues',
'ipbother' => 'Kohë tjetër',
'ipboptions' => '2 Orë:2 hours,1 Ditë:1 day,3 Ditë:3 days,1 Javë:1 week,2 Javë:2 weeks,1 Muaj:1 month,3 Muaj:3 months,6 Muaj:6 months,1 Vjet:1 year,Pa kufi:infinite',
-'ipbotheroption' => 'tjetër',
-'ipbotherreason' => 'Arsye tjetër/shtesë',
'ipbhidename' => 'Fshih emrat e përdorueseve nga redaktimet dhe listat',
'ipbwatchuser' => 'Shiko faqen e prezantimit dhe diskutimit të këtij përdoruesi',
'ipb-disableusertalk' => 'Parandalo këtë përdorues për të redaktuar faqe-diskutimin e tyre përderisa janë të bllokkuar',
'proxyblockreason' => 'IP adresa juaj është bllokuar sepse është një ndërmjetëse e hapur. Ju lutem lidhuni me kompaninë e shërbimeve të Internetit që përdorni dhe i informoni për këtë problem sigurije.',
'sorbsreason' => 'Adresa IP e juaj është radhitur si ndërmjetëse e hapur tek lista DNSBL.',
'sorbs_create_account_reason' => 'Adresa IP e juaj është radhitur si ndërmjetëse e hapur tek lista DNSBL që përdoret nga {{SITENAME}}. Nuk ju lejohet të hapni një llogari.',
-'cant-block-while-blocked' => 'Ju nuk mund të bllokoni përdorues të tjerë ndërkohë që jeni i bllokuar.',
'cant-see-hidden-user' => 'Përdoruesi që po përpiqeni të bllokoni është i bllokuar dhe i fshehur.
Përderisa ju nuk keni të drejtën e fshehjes së përdoruesve, ju nuk mund të shikoni ose redaktoni bllokimet e përdoruesit.',
'ipbblocked' => 'Ju nuk mund të bllokoni ose zhbllokoni përdoruesit e tjerë, sepse jeni për vete i bllokuar',
'watchlistall2' => 'të gjitha',
'namespacesall' => 'të gjitha',
'monthsall' => 'të gjitha',
-'limitall' => 'Të gjitha',
# Email address confirmation
'confirmemail' => 'Vërtetoni adresën tuaj',
'confirmemail_needlogin' => 'Ju duhet të $1 për ta konfirmuar email-adresën',
'confirmemail_success' => 'Adresa juaj është vërtetuar. Mund të hyni brënda dhe të përdorni wiki-n.',
'confirmemail_loggedin' => 'Adresa juaj është vërtetuar.',
-'confirmemail_error' => 'Pati gabim gjatë ruajtjes së vërtetimit tuaj.',
'confirmemail_subject' => 'Vërtetim adrese nga {{SITENAME}}',
'confirmemail_body' => 'Dikush, me gjasë ju, nga IP adresa $1,
ka regjistruar një llogari "$2" me këtë e-mail adresë në {{SITENAME}}.
# Special:ComparePages
'comparepages' => 'Krahasoni faqet',
-'compare-selector' => 'Krahasoni versionet e faqeve',
'compare-page1' => 'Faqe 1',
'compare-page2' => 'Faqe 2',
'compare-rev1' => 'Version 1',
'tog-minordefault' => 'Означавај све измене као мање',
'tog-previewontop' => 'Прикажи преглед пре оквира за уређивање',
'tog-previewonfirst' => 'Прикажи преглед на првој измени',
-'tog-nocache' => 'Онемогући привремено меморисање страница',
'tog-enotifwatchlistpages' => 'Пошаљи ми е-поруку када се промени страница или датотека коју надгледам',
'tog-enotifusertalkpages' => 'Пошаљи ми е-поруку када се промени моја страница за разговор',
'tog-enotifminoredits' => 'Пошаљи ми е-поруку и за мање измене у страницама и датотекама',
'mainpage' => 'Главна страна',
'mainpage-description' => 'Главна страна',
'policy-url' => 'Project:Правила',
-'portal' => 'РадиониÑ\86а',
+'portal' => 'Ð\9fоÑ\80Ñ\82ал заÑ\98едниÑ\86е',
'portal-url' => 'Project:Радионица',
'privacy' => 'Политика приватности',
'privacypage' => 'Project:Политика приватности',
'image_tip' => 'Уграђена датотека',
'media_sample' => 'Пример.ogg',
'media_tip' => 'Веза',
-'sig_tip' => 'Ð\9fоÑ\82пиÑ\81 Ñ\81 тренутним временом',
+'sig_tip' => 'Ð\92аÑ\88 поÑ\82пиÑ\81 Ñ\81а тренутним временом',
'hr_tip' => 'Водоравна линија (користити ретко)',
# Edit pages
Покушајте да [[Special:Search|претражите вики]] за сличне странице.',
# Revision deletion
-'rev-deleted-comment' => '(опиÑ\81 измене Ñ\98е Ñ\83клоÑ\9aен)',
+'rev-deleted-comment' => '(опис измене уклоњен)',
'rev-deleted-user' => '(корисничко име је уклоњено)',
'rev-deleted-event' => '(историја је уклоњена)',
'rev-deleted-user-contribs' => '[корисничко име или ИП адреса је уклоњена – измена је сакривена са списка доприноса]',
'recentchanges-label-bot' => 'Ову измену је направио бот',
'recentchanges-label-unpatrolled' => 'Ова измена још није прегледана',
'recentchanges-legend-newpage' => '(такође погледајте [[Special:NewPages|списак нових страница]])',
-'rcnote' => "Испод {{PLURAL:$1|је '''1''' измена|су последње '''$1''' измене|су последњих '''$1''' измена}} {{PLURAL:$2|претходни дан|у последњa '''$2''' дана|у последњих '''$2''' дана}}, од $4; $5.",
'rcnotefrom' => 'Испод су измене од <b>$3; $4</b> (до <b>$1</b> измена).',
'rclistfrom' => 'Прикажи нове измене почев од $1',
'rcshowhideminor' => '$1 мање измене',
* '''<code><nowiki>[[</nowiki>{{ns:file}}<nowiki>:Слика.jpg]]</nowiki></code>''' за верзију слике у пуној величини
* '''<code><nowiki>[[</nowiki>{{ns:file}}<nowiki>:Слика.png|200п|мини|лево|опис]]</nowiki></code>''' за верзију слике с величином од 200 пиксела која је приказана у засебном оквиру, заједно с описом.
* '''<code><nowiki>[[</nowiki>{{ns:media}}<nowiki>:Датотека.ogg]]</nowiki></code>''' за директно повезивање с датотеком без њеног приказивања",
-'upload-permitted' => 'Ð\94озвоÑ\99ене вÑ\80Ñ\81Ñ\82е датотека: $1.',
-'upload-preferred' => 'Пожељне врсте датотека: $1.',
-'upload-prohibited' => 'Ð\97абÑ\80аÑ\9aене вÑ\80Ñ\81Ñ\82е датотека: $1.',
+'upload-permitted' => 'Ð\94озвоÑ\99ени Ñ\82ипови датотека: $1.',
+'upload-preferred' => 'Препоручени типови датотека: $1.',
+'upload-prohibited' => 'Ð\97абÑ\80аÑ\9aени Ñ\82ипови датотека: $1.',
'uploadlog' => 'дневник отпремања',
'uploadlogpage' => 'Дневник отпремања',
'uploadlogpagetext' => 'Испод је списак скорашњих слања.
'statistics-views-total' => 'Укупно прегледа',
'statistics-views-total-desc' => 'Прегледи непостојећих и посебних страница нису укључени',
'statistics-views-peredit' => 'Прегледа по измени',
-'statistics-users' => 'УпиÑ\81ани коÑ\80иÑ\81ниÑ\86и ([[Special:ListUsers|Ñ\81пиÑ\81ак Ñ\87ланова]])',
+'statistics-users' => 'РегиÑ\81Ñ\82Ñ\80овани [[Special:ListUsers|коÑ\80иÑ\81ниÑ\86и]]',
'statistics-users-active' => 'Активни корисници',
'statistics-users-active-desc' => 'Корисници који су извршили бар једну радњу {{PLURAL:$1|претходни дан|у последња $1 дана|у последњих $1 дана}}',
'statistics-mostpopular' => 'Најпосећеније странице',
'lonelypages' => 'Сирочићи',
'lonelypagestext' => 'Следеће странице нису повезане с другим страницама, нити су укључене трансклузијом у друге странице.',
'uncategorizedpages' => 'Некатегорисане странице',
-'uncategorizedcategories' => 'Некатегорисане странице',
+'uncategorizedcategories' => 'Некатегорисане категорије',
'uncategorizedimages' => 'Датотеке без категорија',
'uncategorizedtemplates' => 'Некатегорисани шаблони',
'unusedcategories' => 'Некоришћене категорије',
'editcomment' => "Опис измене: \"''\$1''\".",
'revertpage' => 'Враћене измене [[Special:Contributions/$2|$2]] ([[User talk:$2|разговор]]) на последњу измену корисника [[User:$1|$1]]',
'revertpage-nouser' => 'Враћене су измене скривеног корисника на последњу измену {{GENDER:$1|корисника|кориснице}} [[User:$1|$1]]',
-'rollback-success' => 'Враћене су измене {{GENDER:$1|корисника|кориснице|корисника}} $1
-на последњу измену {{GENDER:$2|корисника|кориснице|корисника}} $2.',
+'rollback-success' => 'Враћене су измене {{GENDER:$1|корисника|кориснице}} $1
+на последњу измену {{GENDER:$2|корисника|кориснице}} $2.',
# Edit tokens
'sessionfailure-title' => 'Сесија је окончана',
Вратите се на претходну страницу, поново је учитајте и покушајте поново.',
# Protect
-'protectlogpage' => 'Дневник заштите',
+'protectlogpage' => 'Дневник закључавања',
'protectlogtext' => 'Испод је списак измена у виду заштите страница.
Погледајте [[Special:ProtectedPages|списак заштићених страница]] за више детаља.',
'protectedarticle' => '{{GENDER:|је заштитио|је заштитила|је заштитио}} „[[$1]]“',
'modifiedarticleprotection' => '{{GENDER:|је променио|је променила|је променио}} степен заштите за „[[$1]]“',
-'unprotectedarticle' => '{{GENDER:|је уклонио|је уклонила|је уклонио}} заштиту са странице „[[$1]]“',
+'unprotectedarticle' => '{{GENDER:|је уклонио|је уклонила}} заштиту са странице „[[$1]]“',
'movedarticleprotection' => '{{GENDER:|је преместио|је преместила|је преместио}} поставке заштите са „[[$2]]“ на „[[$1]]“',
'protect-title' => 'Степен заштите за „$1“',
'protect-title-notallowed' => 'Преглед степена заштите за „$1“',
'undeletebtn' => 'Врати',
'undeletelink' => 'погледај/врати',
'undeleteviewlink' => 'погледај',
-'undeletereset' => 'Поништи',
'undeleteinvert' => 'Обрни избор',
'undeletecomment' => 'Разлог:',
'undeletedrevisions' => '{{PLURAL:$1|Измена је враћена|$1 измене су враћене|$1 измена је враћено}}',
'block' => 'Блокирај корисника',
'unblock' => 'Деблокирај корисника',
'blockip' => 'Блокирај корисника',
-'blockip-title' => 'Блокирање корисника',
'blockip-legend' => 'Блокирај корисника',
'blockiptext' => 'Користите доњи образац да бисте забранили приступ за писање с одређене ИП адресе или корисничког имена.
Ово би требало да вршите само ради спречавања вандализма, у складу са [[{{MediaWiki:Policy-url}}|смерницама]].
'ipadressorusername' => 'ИП адреса или корисничко име:',
'ipbexpiry' => 'Истиче:',
'ipbreason' => 'Разлог:',
-'ipbreasonotherlist' => 'Други разлог',
'ipbreason-dropdown' => '*Најчешћи разлози за блокирање
** Уношење лажних информација
** Уклањање садржаја са страница
'ipbsubmit' => 'Блокирај овог корисника',
'ipbother' => 'Друго време:',
'ipboptions' => '2 сата:2 hours,1 дан:1 day,3 дана:3 days,1 недеља:1 week,2 недеље:2 weeks,1 месец:1 month,3 месеца:3 months,6 месеци:6 months,1 година:1 year,трајно:infinite',
-'ipbotheroption' => 'друго',
-'ipbotherreason' => 'Други/додатни разлог:',
'ipbhidename' => 'Сакриј корисничко име са измена и спискова',
'ipbwatchuser' => 'Надгледај корисничке странице и странице за разговор овог корисника',
'ipb-disableusertalk' => 'Забрани овом кориснику да уређује своју страницу за разговор док је блокиран',
Историја блокирања се налази испод:',
'blocklog-showsuppresslog' => '{{GENDER:|Овај корисник је раније блокиран и сакривен|Ова корисница је раније блокирана и сакривена|Овај корисник је раније блокиран и сакривен}}.
Историја сакривања се налази испод:',
-'blocklogentry' => '{{GENDER:|је блокирао|је блокирала|је блокирао}} „[[$1]]” с роком истицања од $2 $3',
+'blocklogentry' => '{{GENDER:|је блокирао|је блокирала}} [[$1]] с роком истицања од $2 $3',
'reblock-logentry' => '{{GENDER:|је променио|је променила|је променио}} подешавања за блокирање {{GENDER:$1|корисника|кориснице|корисника}} [[$1]] с роком истека од $2 ($3)',
'blocklogtext' => 'Ово је дневник блокирања и деблокирања корисника.
Аутоматски блокиране ИП адресе нису наведене.
Текуће забране и блокирања можете наћи [[Special:BlockList|овде]].',
-'unblocklogentry' => '{{GENDER:|је деблокирао|је деблокирала|је деблокирао}} „$1“',
+'unblocklogentry' => '{{GENDER:|је деблокирао|је деблокирала}} $1',
'block-log-flags-anononly' => 'само анонимни корисници',
'block-log-flags-nocreate' => 'онемогућено отварање налога',
'block-log-flags-noautoblock' => 'аутоматско блокирање је онемогућено',
'sorbsreason' => 'Ваша ИП адреса је наведена као отворени посредник у DNSBL-у који користи {{SITENAME}}.',
'sorbs_create_account_reason' => 'Ваша ИП адреса је наведена као отворени посредник у DNSBL-у који користи {{SITENAME}}.
Не можете да отворите налог.',
-'cant-block-while-blocked' => 'Не можете да блокирате друге кориснике док сте и сами блокирани.',
'cant-see-hidden-user' => 'Члан коме желите да забраните приступ је већ блокиран и сакривен.
С обзиром на то да немате права за сакривање корисника, не можете да видите нити измените забрану.',
'ipbblocked' => 'Не можете забранити или вратити приступ другим корисницима јер сте и сами блокирани',
'watchlistall2' => 'све',
'namespacesall' => 'све',
'monthsall' => 'све',
-'limitall' => 'све',
# Email address confirmation
'confirmemail' => 'Потврда е-адресе',
'confirmemail_success' => 'Ваша е-адреса је потврђена.
Сада можете да се [[Special:UserLogin|пријавите]]. Желимо вам пријатан боравак на викију.',
'confirmemail_loggedin' => 'Ваша е-адреса је сада потврђена.',
-'confirmemail_error' => 'Нешто је кренуло наопако при чувању ваше потврде.',
'confirmemail_subject' => '{{SITENAME}} – потврда е-адресе',
'confirmemail_body' => 'Неко, вероватно ви, са ИП адресе $1 је отворио налог „$2“ на викију {{SITENAME}}, наводећи ову е-адресу.
# Special:ComparePages
'comparepages' => 'Упоређивање страница',
-'compare-selector' => 'Упоређивање измена странице',
'compare-page1' => 'Страница 1',
'compare-page2' => 'Страница 2',
'compare-rev1' => 'Измена 1',
'tog-minordefault' => 'Označavaj sve izmene kao manje',
'tog-previewontop' => 'Prikaži pregled pre okvira za uređivanje',
'tog-previewonfirst' => 'Prikaži pregled na prvoj izmeni',
-'tog-nocache' => 'Onemogući privremeno memorisanje stranica',
'tog-enotifwatchlistpages' => 'Pošalji mi e-poruku kada se promeni stranica ili datoteka koju nadgledam',
'tog-enotifusertalkpages' => 'Pošalji mi e-poruku kada se promeni moja stranica za razgovor',
'tog-enotifminoredits' => 'Pošalji mi e-poruku i za manje izmene u stranicama i datotekama',
'mainpage' => 'Glavna strana',
'mainpage-description' => 'Glavna strana',
'policy-url' => 'Project:Pravila',
-'portal' => 'Radionica',
+'portal' => 'Portal zajednice',
'portal-url' => 'Project:Radionica',
'privacy' => 'Politika privatnosti',
'privacypage' => 'Project:Politika privatnosti',
'image_tip' => 'Ugrađena datoteka',
'media_sample' => 'Primer.ogg',
'media_tip' => 'Veza',
-'sig_tip' => 'Potpis s trenutnim vremenom',
+'sig_tip' => 'Vaš potpis sa trenutnim vremenom',
'hr_tip' => 'Vodoravna linija (koristiti retko)',
# Edit pages
Pokušajte da [[Special:Search|pretražite viki]] za slične stranice.',
# Revision deletion
-'rev-deleted-comment' => '(opis izmene je uklonjen)',
+'rev-deleted-comment' => '(opis izmene uklonjen)',
'rev-deleted-user' => '(korisničko ime je uklonjeno)',
'rev-deleted-event' => '(istorija je uklonjena)',
'rev-deleted-user-contribs' => '[korisničko ime ili IP adresa je uklonjena – izmena je sakrivena sa spiska doprinosa]',
'recentchanges-label-bot' => 'Ovu izmenu je napravio bot',
'recentchanges-label-unpatrolled' => 'Ova izmena još nije pregledana',
'recentchanges-legend-newpage' => '$1 - nova stranica',
-'rcnote' => "Ispod {{PLURAL:$1|je '''1''' izmena|su poslednje '''$1''' izmene|su poslednjih '''$1''' izmena}} {{PLURAL:$2|prethodni dan|u poslednja '''$2''' dana|u poslednjih '''$2''' dana}}, od $4; $5.",
'rcnotefrom' => 'Ispod su izmene od <b>$3; $4</b> (do <b>$1</b> izmena).',
'rclistfrom' => 'Prikaži nove izmene počev od $1',
'rcshowhideminor' => '$1 manje izmene',
* '''<code><nowiki>[[</nowiki>{{ns:file}}<nowiki>:Slika.jpg]]</nowiki></code>''' za verziju slike u punoj veličini
* '''<code><nowiki>[[</nowiki>{{ns:file}}<nowiki>:Slika.png|200p|mini|levo|opis]]</nowiki></code>''' za verziju slike s veličinom od 200 piksela koja je prikazana u zasebnom okviru, zajedno s opisom.
* '''<code><nowiki>[[</nowiki>{{ns:media}}<nowiki>:Datoteka.ogg]]</nowiki></code>''' za direktno povezivanje s datotekom bez njenog prikazivanja",
-'upload-permitted' => 'Dozvoljene vrste datoteka: $1.',
-'upload-preferred' => 'Poželjne vrste datoteka: $1.',
-'upload-prohibited' => 'Zabranjene vrste datoteka: $1.',
+'upload-permitted' => 'Dozvoljeni tipovi datoteka: $1.',
+'upload-preferred' => 'Preporučeni tipovi datoteka: $1.',
+'upload-prohibited' => 'Zabranjeni tipovi datoteka: $1.',
'uploadlog' => 'dnevnik otpremanja',
'uploadlogpage' => 'Dnevnik otpremanja',
'uploadlogpagetext' => 'Ispod je spisak skorašnjih slanja.
'statistics-views-total' => 'Ukupno pregleda',
'statistics-views-total-desc' => 'Pregledi nepostojećih i posebnih stranica nisu uključeni',
'statistics-views-peredit' => 'Pregleda po izmeni',
-'statistics-users' => 'Upisani korisnici ([[Special:ListUsers|spisak članova]])',
+'statistics-users' => 'Registrovani [[Special:ListUsers|korisnici]]',
'statistics-users-active' => 'Aktivni korisnici',
'statistics-users-active-desc' => 'Korisnici koji su izvršili bar jednu radnju {{PLURAL:$1|prethodni dan|u poslednja $1 dana|u poslednjih $1 dana}}',
'statistics-mostpopular' => 'Najposećenije stranice',
'lonelypages' => 'Siročići',
'lonelypagestext' => 'Sledeće stranice nisu povezane s drugim stranicama, niti su uključene transkluzijom u druge stranice.',
'uncategorizedpages' => 'Nekategorisane stranice',
-'uncategorizedcategories' => 'Nekategorisane stranice',
+'uncategorizedcategories' => 'Nekategorisane kategorije',
'uncategorizedimages' => 'Datoteke bez kategorija',
'uncategorizedtemplates' => 'Nekategorisani šabloni',
'unusedcategories' => 'Nekorišćene kategorije',
'linksearch-pat' => 'Obrazac pretrage:',
'linksearch-ns' => 'Imenski prostor:',
'linksearch-ok' => 'Pretraži',
-'linksearch-text' => 'Mogu se koristiti džokeri poput „*.wikipedia.org“.<br />
+'linksearch-text' => 'Mogu se koristiti džokeri poput „*.wikipedia.org“.
Potreban je najviši domen, kao „*.org“.<br />
{{PLURAL:$2|Podržan protokol|Podržani protokoli}}: <code>$1</code> (zadaje http:// ako ne navedete protokol).',
'linksearch-line' => '$1 veza u $2',
'editcomment' => "Opis izmene: \"''\$1''\".",
'revertpage' => 'Vraćene izmene [[Special:Contributions/$2|$2]] ([[User talk:$2|razgovor]]) na poslednju izmenu korisnika [[User:$1|$1]]',
'revertpage-nouser' => 'Vraćene su izmene skrivenog korisnika na poslednju izmenu {{GENDER:$1|korisnika|korisnice}} [[User:$1|$1]]',
-'rollback-success' => 'Vraćene su izmene {{GENDER:$1|korisnika|korisnice|korisnika}} $1
-na poslednju izmenu {{GENDER:$2|korisnika|korisnice|korisnika}} $2.',
+'rollback-success' => 'Vraćene su izmene {{GENDER:$1|korisnika|korisnice}} $1
+na poslednju izmenu {{GENDER:$2|korisnika|korisnice}} $2.',
# Edit tokens
'sessionfailure-title' => 'Sesija je okončana',
Vratite se na prethodnu stranicu, ponovo je učitajte i pokušajte ponovo.',
# Protect
-'protectlogpage' => 'Dnevnik zaštite',
+'protectlogpage' => 'Dnevnik zaključavanja',
'protectlogtext' => 'Ispod je spisak izmena u vidu zaštite stranica.
Pogledajte [[Special:ProtectedPages|spisak zaštićenih stranica]] za više detalja.',
'protectedarticle' => '{{GENDER:|je zaštitio|je zaštitila|je zaštitio}} „[[$1]]“',
'modifiedarticleprotection' => '{{GENDER:|je promenio|je promenila|je promenio}} stepen zaštite za „[[$1]]“',
-'unprotectedarticle' => '{{GENDER:|je uklonio|je uklonila|je uklonio}} zaštitu sa stranice „[[$1]]“',
+'unprotectedarticle' => '{{GENDER:|je uklonio|je uklonila}} zaštitu sa stranice „[[$1]]“',
'movedarticleprotection' => '{{GENDER:|je premestio|je premestila|je premestio}} postavke zaštite sa „[[$2]]“ na „[[$1]]“',
'protect-title' => 'Stepen zaštite za „$1“',
'protect-title-notallowed' => 'Pregled stepena zaštite za „$1“',
'undeletebtn' => 'Vrati',
'undeletelink' => 'pogledaj/vrati',
'undeleteviewlink' => 'pogledaj',
-'undeletereset' => 'Poništi',
'undeleteinvert' => 'Obrni izbor',
'undeletecomment' => 'Razlog:',
'undeletedrevisions' => '{{PLURAL:$1|Izmena je vraćena|$1 izmene su vraćene|$1 izmena je vraćeno}}',
'block' => 'Blokiraj korisnika',
'unblock' => 'Deblokiraj korisnika',
'blockip' => 'Blokiraj korisnika',
-'blockip-title' => 'Blokiranje korisnika',
'blockip-legend' => 'Blokiraj korisnika',
'blockiptext' => 'Koristite donji obrazac da biste zabranili pristup za pisanje s određene IP adrese ili korisničkog imena.
Ovo bi trebalo da vršite samo radi sprečavanja vandalizma, u skladu sa [[{{MediaWiki:Policy-url}}|smernicama]].
'ipadressorusername' => 'IP adresa ili korisničko ime:',
'ipbexpiry' => 'Ističe:',
'ipbreason' => 'Razlog:',
-'ipbreasonotherlist' => 'Drugi razlog',
'ipbreason-dropdown' => '*Najčešći razlozi za blokiranje
** Unošenje lažnih informacija
** Uklanjanje sadržaja sa stranica
'ipbsubmit' => 'Blokiraj ovog korisnika',
'ipbother' => 'Drugo vreme:',
'ipboptions' => '2 sata:2 hours,1 dan:1 day,3 dana:3 days,1 nedelja:1 week,2 nedelje:2 weeks,1 mesec:1 month,3 meseca:3 months,6 meseci:6 months,1 godina:1 year,trajno:infinite',
-'ipbotheroption' => 'drugo',
-'ipbotherreason' => 'Drugi/dodatni razlog:',
'ipbhidename' => 'Sakrij korisničko ime sa izmena i spiskova',
'ipbwatchuser' => 'Nadgledaj korisničke stranice i stranice za razgovor ovog korisnika',
'ipb-disableusertalk' => 'Zabrani ovom korisniku da uređuje svoju stranicu za razgovor dok je blokiran',
Istorija blokiranja se nalazi ispod:',
'blocklog-showsuppresslog' => '{{GENDER:|Ovaj korisnik je ranije blokiran i sakriven|Ova korisnica je ranije blokirana i sakrivena|Ovaj korisnik je ranije blokiran i sakriven}}.
Istorija sakrivanja se nalazi ispod:',
-'blocklogentry' => '{{GENDER:|je blokirao|je blokirala|je blokirao}} „[[$1]]” s rokom isticanja od $2 $3',
+'blocklogentry' => '{{GENDER:|je blokirao|je blokirala}} [[$1]] s rokom isticanja od $2 $3',
'reblock-logentry' => '{{GENDER:|je promenio|je promenila|je promenio}} podešavanja za blokiranje {{GENDER:$1|korisnika|korisnice|korisnika}} [[$1]] s rokom isteka od $2 ($3)',
'blocklogtext' => 'Ovo je dnevnik blokiranja i deblokiranja korisnika.
Automatski blokirane IP adrese nisu navedene.
Tekuće zabrane i blokiranja možete naći [[Special:BlockList|ovde]].',
-'unblocklogentry' => '{{GENDER:|je deblokirao|je deblokirala|je deblokirao}} „$1“',
+'unblocklogentry' => '{{GENDER:|je deblokirao|je deblokirala}} $1',
'block-log-flags-anononly' => 'samo anonimni korisnici',
'block-log-flags-nocreate' => 'onemogućeno otvaranje naloga',
'block-log-flags-noautoblock' => 'automatsko blokiranje je onemogućeno',
'sorbsreason' => 'Vaša IP adresa je navedena kao otvoreni posrednik u DNSBL-u koji koristi {{SITENAME}}.',
'sorbs_create_account_reason' => 'Vaša IP adresa je navedena kao otvoreni posrednik u DNSBL-u koji koristi {{SITENAME}}.
Ne možete da otvorite nalog.',
-'cant-block-while-blocked' => 'Ne možete da blokirate druge korisnike dok ste i sami blokirani.',
'cant-see-hidden-user' => 'Član kome želite da zabranite pristup je već blokiran i sakriven.
S obzirom na to da nemate prava za sakrivanje korisnika, ne možete da vidite niti izmenite zabranu.',
'ipbblocked' => 'Ne možete zabraniti ili vratiti pristup drugim korisnicima jer ste i sami blokirani',
'watchlistall2' => 'sve',
'namespacesall' => 'sve',
'monthsall' => 'sve',
-'limitall' => 'sve',
# Email address confirmation
'confirmemail' => 'Potvrda e-adrese',
'confirmemail_success' => 'Vaša e-adresa je potvrđena.
Sada možete da se [[Special:UserLogin|prijavite]]. Želimo vam prijatan boravak na vikiju.',
'confirmemail_loggedin' => 'Vaša e-adresa je sada potvrđena.',
-'confirmemail_error' => 'Nešto je krenulo naopako pri čuvanju vaše potvrde.',
'confirmemail_subject' => '{{SITENAME}} – potvrda e-adrese',
'confirmemail_body' => 'Neko, verovatno vi, sa IP adrese $1 je otvorio nalog „$2“ na vikiju {{SITENAME}}, navodeći ovu e-adresu.
# Special:ComparePages
'comparepages' => 'Upoređivanje stranica',
-'compare-selector' => 'Upoređivanje izmena stranice',
'compare-page1' => 'Stranica 1',
'compare-page2' => 'Stranica 2',
'compare-rev1' => 'Izmena 1',
'tog-minordefault' => "Marki ala mi kenki leki 'pikin'",
'tog-previewontop' => 'Fusi hey opo mi kenkibox libi si',
'tog-previewonfirst' => 'Sori wan Si-na-fesi na a fosi kenki',
-'tog-nocache' => 'No kebroiki cache',
'tog-enotifwatchlistpages' => 'Seni mi wan E-mail te papira ini mi "Tan luku" rey kenki',
'tog-enotifusertalkpages' => 'Seni mi wan E-mail te mi Taki papira kenki',
'tog-enotifminoredits' => 'E-mail mi fu pikin kenki fu peprewoysi opo mi sirey',
'nchanges' => '$1 {{PLURAL:$1|kenki|kenki}}',
'recentchanges' => 'Laste kenki',
'recentchanges-feed-description' => 'Nanga a feed disi yu kan luku den moro nyun kenki fu a wiki disi.',
-'rcnote' => "Dya na ondrosey {{PLURAL:$1|'''1''' kenki|den '''$1''' laste kenki}} ini {{PLURAL:$2|a dei|den '''$2''' dei}} na fesi de fu si, tapu $4 na $5.",
'rcnotefrom' => "Kenki fu '''$2''' (e sori te go miti '''$1''' kenki).",
'rclistfrom' => 'Sori nyun kenki, bigin fu $1',
'rcshowhideminor' => '$1 den pikin kenki',
'tog-minordefault' => 'Alle Annerengen as littek markierje',
'tog-previewontop' => 'Foarbekiek buppe dät Beoarbaidengsfinster anwiese',
'tog-previewonfirst' => 'Bie dät eerste Beoarbaidjen altied dän Foarbekiek anwiese',
-'tog-nocache' => 'Siedencache fon dän Browser deaktivierje',
'tog-enotifwatchlistpages' => 'Bie Annerengen an bekiekede Sieden E-Mails seende.',
'tog-enotifusertalkpages' => 'Bie Annerengen an mien Benutser-Diskussionssiede E-Mails seende.',
'tog-enotifminoredits' => 'Uk bie litje Annerengen an do Sieden E-Mails seende.',
'recentchanges-label-bot' => 'Annerenge truch n Bot',
'recentchanges-label-unpatrolled' => 'Nit-kontrollierde Annerenge',
'recentchanges-legend-newpage' => '$1 - näie Siede',
-'rcnote' => "Anwiesd {{PLURAL:$1|wäd '''1''' Annerenge|wäide do lääste '''$1''' Annerengen}} in {{PLURAL:$2|dän lääste Dai|do lääste '''$2''' Deege}} siet $5, $4.",
'rcnotefrom' => "Anwiesd wäide do Annerengen siet '''$2''' (max. '''$1''' Iendraage).",
'rclistfrom' => 'Bloot näie Annerengen siet $1 wiese.',
'rcshowhideminor' => 'Litje Annerengen $1',
'undeletebtn' => 'Wier häärstaale',
'undeletelink' => 'bekiekje/wier häärstaale',
'undeleteviewlink' => 'bekiekje',
-'undeletereset' => 'Oubreeke',
'undeleteinvert' => 'Uutwoal uumekiere',
'undeletecomment' => 'Gruund:',
'undeletedrevisions' => '{{PLURAL:$1|1 Version wuude|$1 Versione wuuden}} wier häärstoald',
'block' => 'Benutser speere',
'unblock' => 'Benutser fräireeke',
'blockip' => 'Blokkierje Benutser',
-'blockip-title' => 'Benutser speere',
'blockip-legend' => 'IP-Adresse/Benutser speere',
'blockiptext' => 'Mäd dit Formular speerst du ne IP-Adresse of n Benutsernoome, so dät fon deer neen Annerengen moor foarnuumen wäide konnen.
Dit skuul bloot geböäre, uum Vandalismus tou ferhinnerjen un in Uureenstimmenge mäd do [[{{MediaWiki:Policy-url}}|Gjuchtlienjen]].
'ipadressorusername' => 'IP-Adresse of Benutsernoome:',
'ipbexpiry' => 'Oulooptied (Speerduur):',
'ipbreason' => 'Begruundenge:',
-'ipbreasonotherlist' => 'Uur Begründenge',
'ipbreason-dropdown' => '* Algemeene Speergruunde
** Ienföigjen fon falske Information
** Loosmoakjen fon Sieden
'ipbsubmit' => 'Adrässe blokkierje',
'ipbother' => 'Uur Duur (ängelsk):',
'ipboptions' => '2 Uuren:2 hours,1 Dai:1 day,3 Deege:3 days,1 Wiek:1 week,2 Wieke:2 weeks,1 Mound:1 month,3 Mounde:3 months,6 Mounde:6 months,1 Jier:1 year,Uunbestimd:infinite',
-'ipbotheroption' => 'Uur Duur',
-'ipbotherreason' => 'Uur/additionelle Begründenge:',
'ipbhidename' => 'Benutsernoome in Beoarbaidengen un Liesten ferstopje.',
'ipbwatchuser' => 'Benutser(diskussions)siede beooboachtje',
'ipb-disableusertalk' => 'Dissen Benutser deeran hinderje sien oaine Diskussionssiede tou beoarbaidjen, soloange hie speerd is',
'proxyblockreason' => 'Jou IP-Adrässe wuude speerd, deer ju n eepenen Proxy is. Kontaktierje jädden Jou Provider af Jou Systemtechnik un informierje Jou jou uur dit muugelke Sicherhaidsproblem.',
'sorbsreason' => 'Dien IP-Adrässe is in ju DNSBL fon {{SITENAME}} as eepene PROXY liested.',
'sorbs_create_account_reason' => 'Dien IP-Adrässe is in ju DNSBL fon {{SITENAME}} as eepene PROXY liested. Du koast neen Benutser-Account anlääse.',
-'cant-block-while-blocked' => 'Du duurst neen uur Benutsere speere, wan du sälwen speerd bäst.',
'cant-see-hidden-user' => 'Die Benutser, dän du fersäkst tou speeren, wuud al speerd un ferstat. Deer du dät „hideuser“-Gjucht nit hääst, koast du ju Benutserspeere nit sjo un nit beoarbaidje.',
'ipbblocked' => 'Du koast naan uur Benutser speere of äntspeere, deer du sälwen speerd bäst',
'ipbnounblockself' => 'Du hääst nit ju Begjuchtigenge, die sälwen tou äntspeeren',
'watchlistall2' => 'aal',
'namespacesall' => 'aal',
'monthsall' => 'aal',
-'limitall' => 'aal',
# Email address confirmation
'confirmemail' => 'Email-Adrässe bestäätigje',
'confirmemail_needlogin' => 'Du moast die $1, uum dien E-Mail-Adresse tou bestäätigjen.',
'confirmemail_success' => 'Dien E-Mail-Adresse wuude mäd Ärfoulch bestäätiged. Du koast die nu [[Special:UserLogin|ienlogje]].',
'confirmemail_loggedin' => 'Dien E-Mail-Adresse wuude mäd Ärfoulch bestäätiged.',
-'confirmemail_error' => 'Et roat n Failer bie ju Bestäätigenge fon dien E-Mail-Adresse.',
'confirmemail_subject' => '[{{SITENAME}}] - Bestäätigenge fon ju E-Mail-Adresse',
'confirmemail_body' => 'Moin,
# Special:ComparePages
'comparepages' => 'Sieden ferglieke',
-'compare-selector' => 'Siedeversione ferglieke',
'compare-page1' => 'Siede 1',
'compare-page2' => 'Siede 2',
'compare-rev1' => 'Version 1',
'tog-minordefault' => 'Tandaan sadaya éditan salaku minor luyu jeung ti dituna',
'tog-previewontop' => 'Témbongkeun sawangan méméh kotak édit (lain sanggeusna)',
'tog-previewonfirst' => 'Témbongkeun sawangan dina éditan munggaran',
-'tog-nocache' => "Tumpurkeun ''cache'' kaca dina pangaprak",
'tog-enotifwatchlistpages' => 'Lamun aya kaca atawa berkas anu diawaskeun robah, béjaan ngaliwatan surélék',
'tog-enotifusertalkpages' => 'Mun kaca obrolan kuring robah, béjaan ngaliwatan surélék',
'tog-enotifminoredits' => 'Béjaan ogé (ngaliwatan surélék) lamun aya parobahan leutik dina kaca jeung berkasna',
'recentchanges-label-bot' => 'Ieu parobahan dijieun ku bot',
'recentchanges-label-unpatrolled' => 'Ieu éditan can karoris',
'recentchanges-legend-newpage' => '$1 - kaca anyar',
-'rcnote' => "Di handap ieu {{PLURAL:$1|'''1''' parobahan| '''$1''' parobahan anyar}} dina {{PLURAL:$2|poé|'''$2''' poé}} ahir, nepi $5, $4.",
'rcnotefrom' => 'Di handap ieu parobahan saprak <b>$2</b> (nu ditémbongkeun nepi ka <b>$1</b>).',
'rclistfrom' => 'Témbongkeun nu anyar robah nepi ka $1',
'rcshowhideminor' => '$1 éditan minor',
'block' => 'Peungpeuk kontributor',
'unblock' => 'Buka peungpeuk kontributor',
'blockip' => 'Peungpeuk pamaké',
-'blockip-title' => 'Peungpeuk pamaké',
'blockip-legend' => 'Peungpeuk pamaké',
'blockiptext' => 'Paké formulir di handap pikeun meungpeuk aksés nulis ti alamat IP atawa ngaran pamaké husus. Ieu sakuduna ditujukeun pikeun nyegah vandalisme, sarta saluyu jeung [[{{MediaWiki:Policy-url}}|kawijakan]]. Eusi alesan nu jéntré (misal, ngarujuk kaca tinangtu nu geus diruksak).',
'ipadressorusername' => 'Alamat IP atawa ngaran pamaké',
'ipbexpiry' => 'Kadaluarsa',
'ipbreason' => 'Alesan:',
-'ipbreasonotherlist' => 'Alesan séjén',
'ipbcreateaccount' => 'Tong bisa nyieun rekening',
'ipbemailban' => 'Henteu kaci pamaké ngirimkeun surélék',
'ipbenableautoblock' => 'Peungpeuk sacara otomatis alamat IP anu panungtungan dipaké ku pamaké sarta sakabéh alamat IP anu kungsi dipaké.',
'ipbsubmit' => 'Peungpeuk pamaké ieu',
'ipbother' => 'Waktu séjén',
'ipboptions' => '2 jam:2 hours,sapoé:1 day,3 poé:3 days,saminggu:1 week,2 minggu:2 weeks,sabulan:1 month,3 bulan:3 months,6 bulan:6 months,sataun:1 year,tanpa wates:infinite',
-'ipbotheroption' => 'séjénna',
-'ipbotherreason' => 'Alesan séjén/tambahan',
'ipbhidename' => 'Sumputkeun ngaran pamaké tina éditan jeung daptar pamaké',
'ipbwatchuser' => 'Awaskeun kaca pamaké jeung kaca obrolan pamaké ieu',
'badipaddress' => 'Alamat IP teu sah',
'proxyblockreason' => "Alamat IP anjeun dipeungpeuk sabab mangrupa proxy muka. Mangga tepungan ''Internet service provider'' atanapi ''tech support'' anjeun, béjakeun masalah serius ieu.",
'sorbsreason' => "Alamat IP anjeun kadaptar salaku ''open proxy'' dina DNSBL.",
'sorbs_create_account_reason' => "Alamat IP anjeun kadaptar salaku ''open proxy'' dina DNSBL. Anjeun teu bisa nyieun rekening",
-'cant-block-while-blocked' => 'Lamun keur dipeungpeuk, anjeun teu bisa meungpeuk séjén kontributor.',
'ipbblocked' => 'Anjeun teu bisa meungpeuk atawa muka peungpeuk séjén kontributor ku sabab anjeun sorangan keur dipeungpeuk',
# Developer tools
'watchlistall2' => 'sadaya',
'namespacesall' => 'kabéh',
'monthsall' => 'kabéh',
-'limitall' => 'kabéh',
# Email address confirmation
'confirmemail' => 'Konfirmasi alamat surélék',
'confirmemail_needlogin' => 'Sangkan bisa ngonfirmasi alamat surélék, anjeun kudu $1.',
'confirmemail_success' => 'Alamat surélék anjeun geus dikonfirmasi, ayeuna anjeun geus bisa migunakeun wikina.',
'confirmemail_loggedin' => 'Alamat surélék anjeun geus dikonfirmasi.',
-'confirmemail_error' => 'Aya nu salah nalika nyimpen konfirmasi anjeun.',
'confirmemail_subject' => 'Konfirmasi alamat surélék {{SITENAME}}',
'confirmemail_body' => 'Aya, sigana mah anjeun ti alamat IP $1, geus ngadaptarkeun rekening "$2" maké alamat surélék ieu na {{SITENAME}}.
'tog-minordefault' => 'Markera automatiskt ändringar som mindre',
'tog-previewontop' => 'Visa förhandsgranskningen ovanför redigeringsrutan',
'tog-previewonfirst' => 'Visa förhandsgranskning när redigering påbörjas',
-'tog-nocache' => 'Stäng av cachelagring för sidor',
'tog-enotifwatchlistpages' => 'Skicka e-post till mig när en sida på min bevakningslista ändras',
'tog-enotifusertalkpages' => 'Skicka e-post till mig när något händer på min diskussionssida',
'tog-enotifminoredits' => 'Skicka mig e-post även för mindre ändringar av sidor och filer',
'october' => 'oktober',
'november' => 'november',
'december' => 'december',
-'january-gen' => 'januaris',
-'february-gen' => 'februaris',
+'january-gen' => 'januari',
+'february-gen' => 'februari',
'march-gen' => 'mars',
-'april-gen' => 'aprils',
-'may-gen' => 'majs',
-'june-gen' => 'junis',
-'july-gen' => 'julis',
-'august-gen' => 'augustis',
-'september-gen' => 'septembers',
-'october-gen' => 'oktobers',
-'november-gen' => 'novembers',
-'december-gen' => 'decembers',
+'april-gen' => 'april',
+'may-gen' => 'maj',
+'june-gen' => 'juni',
+'july-gen' => 'juli',
+'august-gen' => 'augusti',
+'september-gen' => 'september',
+'october-gen' => 'oktober',
+'november-gen' => 'november',
+'december-gen' => 'december',
'jan' => 'jan',
'feb' => 'feb',
'mar' => 'mar',
'qbbrowse' => 'Bläddra igenom',
'qbedit' => 'Redigera',
'qbpageoptions' => 'Denna sida',
-'qbmyoptions' => 'Mina inställningar',
+'qbmyoptions' => 'Mina sidor',
'faq' => 'FAQ',
'faqpage' => 'Project:FAQ',
# Short words for each namespace, by default used in the namespace tab in monobook
'nstab-main' => 'Sida',
'nstab-user' => 'Användarsida',
-'nstab-media' => 'Media',
+'nstab-media' => 'Mediasida',
'nstab-special' => 'Specialsida',
'nstab-project' => 'Projektsida',
'nstab-image' => 'Fil',
'databaseerror-function' => 'Funktion: $1',
'databaseerror-error' => 'Fel: $1',
'laggedslavemode' => 'Varning: Sidan kan sakna de senaste uppdateringarna.',
-'readonly' => 'Databasen är skrivskyddad',
-'enterlockreason' => 'Ange varför sidan skrivskyddats, och ge en uppskattning av hur länge skrivskyddet bör behållas.',
+'readonly' => 'Databasen är låst',
+'enterlockreason' => 'Ange varför sidan låsts, och ge en uppskattning av hur länge skrivskyddet bör behållas.',
'readonlytext' => 'Databasen är tillfälligt låst för nya inlägg och andra modifieringar, förmodligen på grund av rutinmässigt underhåll, efter vilket den kommer den att återgå till normalläge.
Den administratör som låste den har angivit följande förklaring: $1',
'createacct-benefit-heading' => '{{SITENAME}} är skapad av människor som dig.',
'createacct-benefit-body1' => '{{PLURAL:$1|redigering|redigeringar}}',
'createacct-benefit-body2' => '{{PLURAL:$1|sida|sidor}}',
-'createacct-benefit-body3' => 'senaste {{PLURAL:$1|bidragsgivare}}',
+'createacct-benefit-body3' => '{{PLURAL:$1|nylig|nyliga}} bidragsgivare',
'badretype' => 'De lösenord du uppgett överensstämmer inte med varandra.',
'userexists' => 'Det valda användarnamnet används redan.
Var god välj ett annat namn.',
'passwordtooshort' => 'Lösenord måste innehålla minst {{PLURAL:$1|$1 tecken}}.',
'password-name-match' => 'Ditt lösenord måste vara olikt ditt användarnamn.',
'password-login-forbidden' => 'Användningen av dessa användarnamn och lösenord har förbjudits.',
-'mailmypassword' => 'Skicka nytt lösenord',
+'mailmypassword' => 'Återställ lösenord',
'passwordremindertitle' => 'Nytt temporärt lösenord från {{SITENAME}}',
'passwordremindertext' => 'Någon (förmodligen du, från IP-adressen $1) har begärt ett nytt lösenord till {{SITENAME}} ($4). Ett tillfälligt lösenordet för användaren "$2" har skapats och det blev "$3". Om detta var vad du önskade, så behöver du nu logga in och välja ett nytt lösenord. Ditt tillfälliga lösenord går ut om {{PLURAL:$5|ett dygn|$5 dygn}}.
Om denna begäran gjordes av någon annan, eller om du har kommit på ditt lösenord,
-och inte längre önskar ändra det, så kan du ignorera detta meddelande och
+och inte längre önskar ändra det, så kan du ignorera detta meddelande. Då kan du
fortsätta använda ditt gamla lösenord.',
'noemail' => 'Användaren "$1" har inte registrerat någon e-postadress.',
'noemailcreate' => 'Du måste ange en giltig e-postadress',
# Special:PasswordReset
'passwordreset' => 'Lösenordsåterställning',
'passwordreset-text-one' => 'Fyll i detta formulär för att återställa ditt lösenord.',
-'passwordreset-text-many' => '{{PLURAL:$1|Fyll i ett av fälten för att återställa ditt lösenord.}}',
+'passwordreset-text-many' => '{{PLURAL:$1|Fyll i ett av fälten för att få ett tillfälligt lösenord via e-post.}}',
'passwordreset-legend' => 'Återställ lösenord',
'passwordreset-disabled' => 'Lösenordsåterställning har inaktiverats på denna wiki.',
'passwordreset-emaildisabled' => 'E-postfunktioner har inaktiverats på denna wiki.',
'recentchanges-label-minor' => 'Detta är en mindre ändring',
'recentchanges-label-bot' => 'Denna redigering gjordes av en bot',
'recentchanges-label-unpatrolled' => 'Denna redigering har inte blivit kontrollerad ännu',
+'recentchanges-label-plusminus' => 'Sidans storlek ändrades med detta antal byte',
'recentchanges-legend-newpage' => '(se även [[Special:NewPages|listan över nya sidor]])',
-'rcnote' => "Nedan visas {{PLURAL:$1|'''1''' ändring|de senaste '''$1''' ändringarna}} från {{PLURAL:$2|det senaste dygnet|de senaste '''$2''' dygnen}}, per $4, kl. $5.",
+'recentchanges-legend-plusminus' => "(''±123'')",
'rcnotefrom' => "Nedan visas ändringar sedan '''$2''' (upp till '''$1''' visas).",
'rclistfrom' => 'Visa ändringar efter $1',
'rcshowhideminor' => '$1 mindre ändringar',
'undeletebtn' => 'Återställ',
'undeletelink' => 'visa/återställ',
'undeleteviewlink' => 'visa',
-'undeletereset' => 'Rensa',
'undeleteinvert' => 'Invertera urval',
'undeletecomment' => 'Anledning:',
'undeletedrevisions' => '{{PLURAL:$1|en version återställd|$1 versioner återställda}}',
'block' => 'Blockera användare',
'unblock' => 'Upphäv blockering av användare',
'blockip' => 'Blockera användare',
-'blockip-title' => 'Blockera användare',
'blockip-legend' => 'Blockera användare',
'blockiptext' => 'Använd formuläret nedan för att blockera möjligheten att redigera sidor från en specifik IP-adress eller ett användarnamn.
Detta bör endast göras för att förhindra vandalisering, och i överensstämmelse med gällande [[{{MediaWiki:Policy-url}}|policy]].
'ipadressorusername' => 'IP-adress eller användarnamn:',
'ipbexpiry' => 'Varaktighet:',
'ipbreason' => 'Anledning:',
-'ipbreasonotherlist' => 'Annan anledning',
'ipbreason-dropdown' => '*Vanliga motiv till blockering
** Infogar falsk information
** Tar bort sidinnehåll
'ipbsubmit' => 'Blockera användaren',
'ipbother' => 'Annan tidsperiod:',
'ipboptions' => '2 timmar:2 hours,1 dygn:1 day,3 dygn:3 days,1 vecka:1 week,2 veckor:2 weeks,1 månad:1 month,3 månader:3 months,6 månader:6 months,1 år:1 year,oändlig:infinite',
-'ipbotheroption' => 'annan tidsperiod',
-'ipbotherreason' => 'Annan/ytterligare anledning:',
'ipbhidename' => 'Dölj användarnamnet från redigeringar och listor',
'ipbwatchuser' => 'Bevaka användarens användarsida och diskussionssida',
'ipb-disableusertalk' => 'Hindra användaren från att redigera sina egna diskussionssida under blockeringen',
'sorbs_create_account_reason' => 'Din IP-adress är listad som en öppen proxy i den DNSBL som används av {{SITENAME}}.
Du får inte skapa ett användarkonto',
'xffblockreason' => 'En IP-adress i sidhuvudet X-Forwarded-For, antingen din adress eller en proxyserver som du använder, har blockerats. Den ursprungliga anledningen till blockeringen var: $1',
-'cant-block-while-blocked' => 'Du kan inte blockera andra användare medan du är blockerad.',
'cant-see-hidden-user' => 'Användaren du försöker blockera är redan blockerad och gömd. Eftersom du inte har hideuser-rättigheter, kan du inte se eller redigera användarens blockering.',
'ipbblocked' => 'Du kan inte blockera eller avblockera andra användare, eftersom du själv är blockerad',
'ipbnounblockself' => 'Du har inte tillåtelse att avblockera dig själv',
'pageinfo-length' => 'Sidlängd (i byte)',
'pageinfo-article-id' => 'Sid-ID',
'pageinfo-language' => 'Språk för sidinnehåll',
+'pageinfo-content-model' => 'Sidinnehållsmodell',
'pageinfo-robot-policy' => 'Indexering av robotar',
'pageinfo-robot-index' => 'Tillåten',
'pageinfo-robot-noindex' => 'Inte tillåten',
'watchlistall2' => 'alla',
'namespacesall' => 'alla',
'monthsall' => 'alla',
-'limitall' => 'alla',
# Email address confirmation
'confirmemail' => 'Bekräfta e-postadress',
'confirmemail_success' => 'Din e-postadress har bekräftats.
Du kan nu [[Special:UserLogin|logga in]] och använda wikin.',
'confirmemail_loggedin' => 'Din e-postadress är nu bekräftad.',
-'confirmemail_error' => 'Någonting gick fel när din bekräftelse skulle sparas.',
'confirmemail_subject' => 'Bekräftelse av e-postadress på {{SITENAME}}',
'confirmemail_body' => 'Någon, troligen du, har från IP-adressen $1 registrerat användarkontot "$2" med denna e-postadress på {{SITENAME}}.
'confirm-unwatch-button' => 'OK',
'confirm-unwatch-top' => 'Ta bort denna sida från din bevakningslista?',
+# Separators for various lists, etc.
+'quotation-marks' => '"$1"',
+
# Multipage image navigation
'imgmultipageprev' => '← föregående sida',
'imgmultipagenext' => 'nästa sida →',
'imgmultigo' => 'Gå',
'imgmultigoto' => 'Gå till sida $1',
+# Language selector for translatable SVGs
+'img-lang-default' => '(standardspråk)',
+'img-lang-info' => 'Rendera bilden i $1 $2.',
+'img-lang-go' => 'Gå',
+
# Table pager
'ascending_abbrev' => 'stigande',
'descending_abbrev' => 'fallande',
# Special:ComparePages
'comparepages' => 'Jämför sidor',
-'compare-selector' => 'Jämför sidversioner',
'compare-page1' => 'Sida 1',
'compare-page2' => 'Sida 2',
'compare-rev1' => 'Version 1',
'tog-extendwatchlist' => 'Tanua orodha ya maangalizi ili kuonyesha mabadiliko yote yaliyofanyika, si hilo la mwisho tu.',
'tog-usenewrc' => 'Mabadiliko ya kundi kwa kurasa kwenye mabadiliko ya karibuni na maangalizi (JavaScript inahitajika)',
'tog-numberheadings' => 'Vichwa vya habari vijipange namba-vyenyewe',
-'tog-showtoolbar' => 'Onyesha mwambaa wa zana za kuhariria (JavaScript)',
+'tog-showtoolbar' => 'Onyesha mwambaa wa zana za kuhariria',
'tog-editondblclick' => 'Hariri ukurasa kwa kubonyeza mara mbili',
'tog-editsection' => 'Wezesha sehemu ya kuandikia kwa kutumia viungo vya [hariri]',
'tog-editsectiononrightclick' => 'Wezesha sehemu ya kuandikia kwa kubonyeza kitufe cha kulia cha puku yako juu ya sehemu ya majina husika (JavaScript)',
'tog-minordefault' => 'Weka alama zote za mabadiliko madogo kama matumizi mbadala',
'tog-previewontop' => 'Onyesha mandhari kabla ya sanduku la kuhariria',
'tog-previewonfirst' => 'Onyesha mandhari unapoanza kuhariri',
-'tog-nocache' => 'Kurasa zisiwekwe katika kache (akiba ya muda) ya kivinjari',
'tog-enotifwatchlistpages' => 'Nitumie barua pepe pale kurasa zilizopo katika maangalizi yangu zinabadilishwa',
'tog-enotifusertalkpages' => 'Nitumie barua pepe pale ukurasa wangu wa majadiliano ukiwa na mabadiliko',
'tog-enotifminoredits' => 'Pia nitumie barua pale mabadiliko ya ukurasa yanapokuwa madogo tu.',
'youhavenewmessages' => 'Una $1 ($2).',
'youhavenewmessagesfromusers' => 'Una $1 kutoka {{PLURAL:$3|another user|$3 users}} ($2)',
'youhavenewmessagesmanyusers' => 'Una $1 kutoka kwa watumiaji wengi $2',
-'newmessageslinkplural' => '{{PLURAL:$1|a new message|ujumbe mpya}}',
-'newmessagesdifflinkplural' => 'last {{PLURAL:$1|change|mabadiliko}}',
+'newmessageslinkplural' => '{{PLURAL:$1|ujumbe mpya|999=jumbe mpya}}',
+'newmessagesdifflinkplural' => '{{PLURAL:$1|badiliko la|999=mabadiliko ya}} mwisho',
'youhavenewmessagesmulti' => 'Umepokea jumbe mpya kule $1',
'editsection' => 'hariri',
'editold' => 'hariri',
'passwordtooshort' => 'Ni lazima neno la siri liwe na {{PLURAL:$1|herufi}} $1 au zaidi.',
'password-name-match' => 'Neno lako la siri lazima liwe tofauti na jina lako la mtumiaji.',
'password-login-forbidden' => 'Utumiaji wa jina hili na neno lake siri imekatazwa.',
-'mailmypassword' => 'Nitume neno la siri jipya kwa barua-pepe',
+'mailmypassword' => 'Nitumie neno la siri jipya kwa barua-pepe',
'passwordremindertitle' => 'Neno la siri jipya la muda kwa ajili ya {{SITENAME}}',
'passwordremindertext' => 'Mtu mmoja (yamkini wewe, kutoka anwani ya IP $1)
ameulizia neno jipya la siri kwa {{SITENAME}} ($4).
Ufunguo: '''({{int:cur}})''' = tofauti na toleo la sasa, '''({{int:last}})''' = tofauti na pitio lililotangulia, '''({{int:minoreditletter}})''' = badiliko dogo.",
'history-fieldset-title' => 'Fungua historia',
'history-show-deleted' => 'Zilizofutwa tu',
-'histfirst' => 'Mwanzoni',
-'histlast' => 'Mwishoni',
+'histfirst' => 'zamani',
+'histlast' => 'mpya',
'historysize' => '({{PLURAL:$1|baiti}}) $1',
'historyempty' => '(tupu)',
'recentchanges-label-bot' => 'Sahihisho hili lilitekelezwa na bot',
'recentchanges-label-unpatrolled' => 'Haririo hili bado halijafanyiwa doria',
'recentchanges-legend-newpage' => '$1 - ukurasa mpya',
-'rcnote' => "{{PLURAL:$1|Linalofuata ni badiliko '''1'''|Yanayofuata ni mabadiliko '''$1''' ya mwisho}} kutoka katika {{PLURAL:$2|siku iliyopita|siku '''$2''' zilizopita}}, hadi saa $5, tarehe $4.",
'rcnotefrom' => "Hapo chini yaonekana mabadiliko tangu '''$2''' (tunaonyesha hadi '''$1''').",
'rclistfrom' => 'Onyesha mabadiliko mapya kuanzia $1',
'rcshowhideminor' => '$1 mabadiliko madogo',
'undeletebtn' => 'Rudisha',
'undeletelink' => 'onyesha/rejesha',
'undeleteviewlink' => 'tazama',
-'undeletereset' => 'Panga upya',
'undeleteinvert' => 'Geuza uteuzi',
'undeletecomment' => 'Sababu:',
'undeletedrevisions' => '{{PLURAL:$1|pitio 1 lilirudishwa|mapitio $1 yalirudishwa}}',
'block' => 'Kumzuia mtumiaji',
'unblock' => 'Kuacha kumzuia mtumiaji',
'blockip' => 'Zuia mtumiaji',
-'blockip-title' => 'Kumzuia mtumiaji',
'blockip-legend' => 'Kumzuia mtumiaji',
'blockiptext' => 'Tumia fomu iliyopo chini kumzuia mtu asihariri kwa kupitia anwani fulani wa IP au kwa kutumia jina fulani la mtumiaji.
Nia ya kumzuia mtu inatakiwa kuwa kuzuia uharibifu tu, na ifanikiwe kutokana na masharti ya [[{{MediaWiki:Policy-url}}|sera]].
'ipadressorusername' => 'Anwani ya IP au jina la mtumiaji:',
'ipbexpiry' => 'Itakwisha:',
'ipbreason' => 'Sababu:',
-'ipbreasonotherlist' => 'Sababu nyingine',
'ipbreason-dropdown' => '*Sababu za kawaida za kuzuia
** Kuingiza habari za uongo
** Kuondosha yaliyomo katika kurasa
'ipbsubmit' => 'Zuia mtumiaji huyu',
'ipbother' => 'Muda mwingine:',
'ipboptions' => 'Masaa 2:2 hours,siku 1:1 day,siku 3:3 days,wiki 1:1 week,wiki 2:2 weeks,mwezi 1:1 month,miezi 3:3 months,miezi 6:6 months,mwaka 1:1 year,milele:infinite',
-'ipbotheroption' => 'engine',
-'ipbotherreason' => 'Engine/sababu ya ziada:',
'ipbhidename' => 'Ficha jina la mtumiaji katika orodha na kuhariri',
'ipbwatchuser' => 'Fuatilia kurasa za mtumiaji na majadiliano ya mtumiaji huyu.',
'ipb-disableusertalk' => 'Kuzuia mtumiaji huu asihariri ukurasa wake mwenyewe wa majadiliano wakati amezuluiwa',
'file-info-size-pages' => 'Piseli $1 × $2, ukubwa wa faili: $3, aina ya MIME: $4, {{PLURAL:$5|ukurasa|kurasa}} $5',
'file-nohires' => 'Hakuna saizi kubwa zaidi.',
'svg-long-desc' => 'faili la SVG, husemwa kuwa piseli $1 × $2, saizi ya faili: $3',
-'show-big-image' => 'Faili lenyewe',
+'show-big-image' => 'Faili halisi',
'show-big-image-preview' => 'Ukubwa wa hakikisho: $1.',
'show-big-image-other' => '{{PLURAL:$2|Ukubwa mwingine|Ukubwa zingine}}: $1.',
'show-big-image-size' => 'piseli $1 × $2',
'watchlistall2' => 'zote',
'namespacesall' => 'zote',
'monthsall' => 'yote',
-'limitall' => 'zote',
# Email address confirmation
'confirmemail' => 'Kuyakinisha anwani ya barua pepe',
'confirmemail_success' => 'Barua pepe yako imethibitishwa.
Sasa unaweza [[Special:UserLogin|kuingia]] na kuifurahia {{SITENAME}}.',
'confirmemail_loggedin' => 'Anwani ya barua pepe yako imethibishwa sasa.',
-'confirmemail_error' => 'Kuna mambo yameenda kombo hifadhi ukamilisho wako.',
'confirmemail_subject' => 'Barua pepe ya uthibitisho ya {{SITENAME}}',
'confirmemail_body' => 'Kuna mtu, huenda ikawa wewe, kutoka anwani ya IP $1, amesajili akaunti "$2" na anwani ya barua pepe hii kwenye {{SITENAME}}.
# Special:ComparePages
'comparepages' => 'Linganisha kurasa',
-'compare-selector' => 'Kulinganisha mapitio',
'compare-page1' => 'Ukurasa wa kwanza',
'compare-page2' => 'Ukurasa wa pili',
'compare-rev1' => 'Pitio la kwanza',
'tog-minordefault' => 'Kożde moje sprowjańy je ńywjelge',
'tog-previewontop' => 'Uobźyrej przed placym sprowjańo',
'tog-previewonfirst' => 'Obźyrej zajta przi pjyrszym sprowjańu',
-'tog-nocache' => 'Wypńij podrynczno pamjyńć',
'tog-enotifwatchlistpages' => 'Wyślij e-brifa, kej ftoś zmjyńi zajta, na kero dowom pozůr',
'tog-enotifusertalkpages' => 'Wyślij e-brifa, kej zajta mojij godki bydźe půmjyńono',
'tog-enotifminoredits' => 'Wyślij e-brifa tyż, kej by szło uo drobne pomjyńańa',
'recentchanges-label-minor' => 'To je ńywjelge sprowjyńy',
'recentchanges-label-bot' => 'To sprowjyńy bůło zrobjůne uod bota',
'recentchanges-label-unpatrolled' => 'To sprowjyńy ńy bůło jeszcze uowjerzůne',
-'rcnote' => "Půńižej {{PLURAL:$1|pokozano uostatńo zmjano dokůnano|pokazano uostatńy '''$1''' zmjany naškryflane|pokozano uostatńich '''$1''' škryflań zrobjůnych}} bez {{PLURAL:$2|uostatńi dźyń|uostatńich '''$2''' dńi}}, začynojůnc uod $5 dńa $4.",
'rcnotefrom' => 'Půńižej pokazano půmjyńańo zrobjůne pů <b>$2</b> (ńy wjyncyj jak <b>$1</b> pozycji).',
'rclistfrom' => 'Ukoż půmjyńańa uod $1',
'rcshowhideminor' => '$1 drobne půmjyńańa',
'undeletebtn' => 'Uodtwůrz',
'undeletelink' => 'ukoż abo uodtwůrz',
'undeleteviewlink' => 'ukoż',
-'undeletereset' => 'Wyčyść',
'undeleteinvert' => 'Zaznocz na uopy',
'undeletecomment' => 'Powůd wćepańo nazod:',
'undeletedrevisions' => 'Wćepano nazod {{PLURAL:$1|1 wersyja|$1 wersyje|$1 wersyji}}',
'ipadressorusername' => 'Adres IP abo mjano użytkowńika',
'ipbexpiry' => 'Wygaso:',
'ipbreason' => 'Čymu:',
-'ipbreasonotherlist' => 'Inkszy powůd',
'ipbreason-dropdown' => '*Nojczynstsze powody zawjerańo uod sprawjyń
** Ataki na inkszych użytkowńikůw
** Naruszyńy praw autorskych
'ipbsubmit' => 'Zawřij uod sprowjyń tygo užytkowńika',
'ipbother' => 'Ikszy czas',
'ipboptions' => '2 godźiny:2 hours,1 dźyń:1 day,3 dńi:3 days,1 tydźyń:1 week,2 tydńe:2 weeks,1 mjeśůnc:1 month,3 mjeśůnce:3 months,6 mjeśůncůw:6 months,1 rok:1 year,nawdy:infinite',
-'ipbotheroption' => 'inkšy',
-'ipbotherreason' => 'Inkšy powůd:',
'ipbhidename' => 'Schrůń mjano użytkowńika/adres IP w rejerze zawarć, na liśće aktywnych zawarć i liśće użytkowńikůw',
'ipbwatchuser' => 'Dowej pozůr na zajta uosobisto i zajta godki tygo užytkowńika',
'ipb-change-block' => 'Zmjyń sztalowańa zawarća uod sprowjyń',
'sorbsreason' => 'Twůj adres IP znojdowo śe na liśće serwerůw open proxy w DNSBL, užywanej bez {{GRAMMAR:B.lp|{{SITENAME}}}}.',
'sorbs_create_account_reason' => 'Twůj adres IP znojdowo śe na liśće serwerůw open proxy w DNSBL, užywanej bez {{GRAMMAR:B.lp|{{SITENAME}}}}.
Ńy možeš utwořić kůnta',
-'cant-block-while-blocked' => 'Ńy możesz zawjyrać uod sprowjyń inkszych użytkowńikůw, jak sam jeżeś uod ńich zawarty.',
# Developer tools
'lockdb' => 'Zawryj baza danych',
'confirmemail_success' => 'Adres e-brif zostou potwjerdzůny.
Možeš śe zalůgować i kořistać s šeršygo wachlařa fůnkcjůnalnośći wiki.',
'confirmemail_loggedin' => 'Twůj adres e-brif zostou zweryfikowany.',
-'confirmemail_error' => 'Wystůmpiuy felery při škryflańu potwjerdzyńo.',
'confirmemail_subject' => '{{SITENAME}} - weryfikacyjo adresa e-brif',
'confirmemail_body' => 'Ktoś, uůnčůnc śe s kůmputra uo adreśe IP $1,
zarejerowoú we {{GRAMMAR:MS.lp|{{SITENAME}}}} kůnto „$2” i podou ńińijšy adres e-mail.
'tog-minordefault' => 'இயல்பிருப்பாக அனைத்து தொகுப்புகளையும் சிறியது எனக் குறித்துக்கொள்.',
'tog-previewontop' => 'தொகுப்புப் பெட்டிக்கு முன்பு முன்தோற்றத்தைக் காட்டு',
'tog-previewonfirst' => 'முதல் தொகுப்பில் முன்தோற்றத்தைக் காட்டு',
-'tog-nocache' => 'உலாவி பக்க இடைமாற்றை முடக்கு',
'tog-enotifwatchlistpages' => 'நான் கவனிக்கும் பக்கம் அல்லது கோப்பு மாற்றப்பட்டால் எனக்கு மின்னஞ்சல் செய்க',
'tog-enotifusertalkpages' => 'என் பயனர் பேச்சுப் பக்கம் மாற்றப்பட்டால் எனக்கு மின்னஞ்சல் செய்',
'tog-enotifminoredits' => 'பக்கம் மற்றும் கோப்புகளுக்கான சிறு தொகுப்புக்கள் குறித்தும் எனக்கு மின்னஞ்சல் செய்யவும்',
'recentchanges-label-bot' => 'இந்த தொகுப்பானது ஒரு தானியங்கியால் செய்யப்பட்டதாகும்',
'recentchanges-label-unpatrolled' => 'இந்த தொகுப்பு இன்னும் ரோந்திடப்படவில்லை',
'recentchanges-legend-newpage' => '$1 - புதிய பக்கம்',
-'rcnote' => "கீழே காணப்படுவது $4 ஆம் தேதி $5 மணிக்கு் உள்ளபடி கடைசி {{PLURAL:$2|24 மணிகளில்|'''$2''' நாட்களில்}} செய்யப்பட்ட {{PLURAL:$1|'''ஒரு''' மாற்றம்|'''$1''' கடைசி மாற்றங்கள்}} ஆகும்.",
'rcnotefrom' => "கீழே காணப்படுவது '''$2''' இலிருந்து செய்யப்பட்ட மாற்றங்களாகும் ('''$1''' வரைக் காட்டப்பட்டுள்ளது).",
'rclistfrom' => '$1 தொடக்கம் செய்யப்பட்ட புதிய மாற்றங்களைக் காட்டவும்',
'rcshowhideminor' => 'சிறிய தொகுப்புகளை $1',
'undeletebtn' => 'மீட்டெடு',
'undeletelink' => 'பார்க்க/மீட்டெடு',
'undeleteviewlink' => 'பார்வையிடு',
-'undeletereset' => 'மீட்டமைக்க',
'undeleteinvert' => 'தேர்வு செய்ததை ரத்து செய்',
'undeletecomment' => 'காரணம்:',
'undeletedrevisions' => '{{PLURAL:$1|1 திருத்தம் மீட்கப்பட்டது|$1 திருத்தங்கள் மீட்கப்பட்டன}}',
'block' => 'பயனரைத் தடைசெய்',
'unblock' => 'பயனர் தடையை நீக்கு',
'blockip' => 'பயனரைத் தடு',
-'blockip-title' => 'பயனரைத் தடு',
'blockip-legend' => 'பயனரைத் தடு',
'blockiptext' => 'ஒரு குறிப்பிட்ட ஐபி முகவரி அல்லது பயனரிடமிருந்து எழுத்து அணுக்கத்தைத் தடுப்பதற்குக் கீழேயுள்ள படிவத்தை உபயோகிக்கவும். இது விசமத்தனத்தைத் தடுப்பதற்கும் [[{{MediaWiki:Policy-url}}|{{SITENAME}} கொள்கை]]க்கு எற்புடைய வகையிலும் மட்டுமே பயன்படுத்தப்பட வேண்டும்.
குறிப்பிட்ட காரணமொன்றைக் கீழே நிரப்புக (எடுத்துக்காட்டாக, விசமத்தனம் செய்யப்பட்ட பக்கங்களை எடுத்துக் காட்டவும்).',
'ipadressorusername' => 'ஐ.பி. அல்லது பயனர் பெயர்:',
'ipbexpiry' => 'காலாவதி:',
'ipbreason' => 'காரணம்:',
-'ipbreasonotherlist' => 'வேறு காரணம்',
'ipbreason-dropdown' => '*பொதுவான தடைக் காரணங்கள்
** பொய்யான தகவல்களை இடல்
** பக்கங்களிலிருந்து உள்ளடக்கங்களை நீக்கல்
'ipbsubmit' => 'இப் பயனரைத் தடு',
'ipbother' => 'வேறு நேரம்:',
'ipboptions' => '2 மணிநேரம்:2 hours,1 நாள்:1 day,3 நாட்கள்:3 days,1 வாரம்:1 week,2 வாரங்கள்:2 weeks,1 மாதம்:1 month,3 மாதங்கள்:3 months,6 மாதங்கள்:6 months,1 ஆண்டு:1 year,முடிவிலி:infinite',
-'ipbotheroption' => 'மற்றவை',
-'ipbotherreason' => 'வேறு மேலதிக காரணம்:',
'ipbhidename' => 'தொகுப்புக்கள் மற்றும் பட்டியல்களிலிருந்து பயனர் பெயரை மறைக்கவும்',
'ipbwatchuser' => 'இந்த பயனர்களின் பயனர் மற்றும் உரையாடல் பங்கங்களை கவனி.',
'ipb-disableusertalk' => 'இந்த பயனர்கள் தடைசெய்யப்பட்டுள்ள போது தங்களுடைய உரையாடல் பக்கத்தைத் தொகுப்பதைத் தடுக்கவும்.',
'sorbsreason' => 'உங்கள் IP முகவரி ஒரு திறந்த பதிலியாக DNSBL பயன்படுத்தப்படுவதாக {{SITENAME}} ல் பட்டியலிடப்பட்டுள்ளது.',
'sorbs_create_account_reason' => 'உங்கள் IP முகவரி ஒரு திறந்த பதிலியாக DNSBL பயன்படுத்தப்படுவதாக {{SITENAME}} ல் பட்டியலிடப்பட்டுள்ளது.
உங்களால் கணக்கை உருவாக்க இயலாது.',
-'cant-block-while-blocked' => 'நீங்கள் தடுக்கப்பட்டுள்ள போது உங்களால் மற்ற பயனர்களை தடுக்க இயலாது.',
'cant-see-hidden-user' => 'நீங்கள் தடுக்க முயலும் பயனர் ஏற்கனவே தடுக்கப்பட்டு,மறைக்கப்பட்டுள்ளார்.
உங்களுக்கு பயனரை மறைக்கும் அதிகாரம் இல்லாததால் உங்களால் இந்த பயனர் தடுப்பை பார்க்கவோ திருத்தவோ இயலாது.',
'ipbblocked' => 'நீங்கள் பயனர்களை தடுக்கவோ தடுத்தல் நீக்கவோ முடியாது,ஏனெனில் நீங்கள் உங்களால் தடுக்கப்பட்டுள்ளீர்கள்.',
'watchlistall2' => 'அனைத்து',
'namespacesall' => 'அனைத்து',
'monthsall' => 'அனைத்து மாதங்களும்',
-'limitall' => 'அனைத்து',
# Email address confirmation
'confirmemail' => 'மின்னஞ்சல் முகவரியை உறுதிப்படுத்துக',
'confirmemail_needlogin' => 'மின்னஞ்சல் முகவரியை உறுதிப்படுத்த நீங்கள் $1 வேண்டும்.',
'confirmemail_success' => 'உங்கள் மின்னஞ்சல் முகவரி உறுதிப்படுத்தப்பட்டது. நீங்கள் இப்போது புகுபதிகை செய்யலாம்.',
'confirmemail_loggedin' => 'உங்கள் மின்னஞ்சல் முகவரி உறுதிப்படுத்தப்பட்டது.',
-'confirmemail_error' => 'உங்கள் உறுத்திபடுத்தல் செயற்பாட்டில் ஏதோ தவறு நடைபெற்றிருக்கிறது.',
'confirmemail_subject' => '{{SITENAME}} தளத்தின் மின்னஞ்சல் உறுதிப்படுத்தல்',
'confirmemail_body' => '$1 என்ற ஐ.பி. முகவரியிலிருந்து ஒருவர், பெரும்பாலும் நீங்களாகவும் இருக்கலாம், {{SITENAME}} தளத்தில் "$2" என்றக் கணக்கை இந்த மின்னஞ்சல் முகவரியுடன் பதிவுச் செய்துள்ளார்.
# Special:ComparePages
'comparepages' => 'பக்கங்களை ஒப்பிடு',
-'compare-selector' => 'பக்க பரிசீலனைகளை ஒப்பிடு',
'compare-page1' => 'பக்கம் 1',
'compare-page2' => 'பக்கம் 2',
'compare-rev1' => 'திருத்தம் 1',
'tog-minordefault' => 'ಪೂರಾ ಸಂಪಾದನೆನ್ಲಾ ಎಲ್ಯ ಪಂಡ್’ದ್ ಗುರ್ತ ಮಲ್ಪುಲೆ',
'tog-previewontop' => 'ಮುನ್ನೋಟನ್ ಸಂಪಾದನೆ ಅಂಕಣದ ಮಿತ್ತ್ ತೊಜ್ಪಾಲೆ',
'tog-previewonfirst' => 'ಶುರುತ ಬದಲಾವಣೆದ ಬೊಕ್ಕ ಮನ್ನೋಟನ್ ತೊಜ್ಪಾಲೆ',
-'tog-nocache' => 'ಪುಟೊತ caching ನ್ ಉಂತಾಲೆ',
'tog-enotifwatchlistpages' => 'ಎನ್ನ ವೀಕ್ಷಣಾಪಟ್ಟಿಡ್ ಉಪ್ಪುನಂಚಿನ ಒವಾಂಡಲ ಪುಟ ಬದಲಾಂಡ ಎಂಕ್ ಇ-ಮೇಲ್ ಮಲ್ಪುಲೆ',
'tog-enotifusertalkpages' => 'ಎನ್ನ ಚರ್ಚೆ ಪುಟ ಬದಲಾಂಡ ಎಂಕ್ ಇ-ಮೇಲ್ ಕಡಪುಡ್ಲೆ',
'tog-enotifminoredits' => 'ಎಲ್ಯೆಲ್ಯ ಬದಲಾವಣೆ ಆಂಡಲ ಎಂಕ್ ಇ-ಮೇಲ್ ಮಲ್ಪುಲೆ',
'recentchanges-feed-description' => 'ಈ ಫೀಡ್’ಡ್ ವಿಕಿಕ್ ಇಂಚಿಪ್ಪ ಆತಿನಂಚಿನ ಬದಲಾವಣೆಲೆನ್ ಟ್ರ್ಯಾಕ್ ಮಲ್ಪುಲೆ.',
'recentchanges-label-newpage' => 'ಇರ್ನ ಈ ಬದಲಾವಣೆ ಪೊಸ ಪುಟೊನು ಸುರು ಮಲ್ಪುಂಡು',
'recentchanges-label-minor' => 'ಉಂದು ಎಲ್ಯ ಬದಲಾವಣೆ',
-'rcnote' => "$4, $5 ಮುಟ್ಟ ದುಂಬುದ {{PLURAL:$2|ದಿನೊಟು|'''$2''' ದಿನೊಲೆಡ್}} ಮಲ್ತ್’ದಿನ {{PLURAL:$1|'''1''' ಬದಲಾವಣೆ|'''$1''' ಬದಲಾವಣೆಲು}} ತಿರ್ತುಂಡು.",
'rclistfrom' => '$1 ರ್ದ್ ಶುರುವಾತಿನ ಪೊಸ ಬದಲಾವಣೆಲೆನ್ ತೊಜ್ಪಾವು',
'rcshowhideminor' => '$1 ಎಲ್ಯೆಲ್ಯ ಬದಲಾವಣೆಲು',
'rcshowhidebots' => '$1 ಬಾಟ್',
'tog-showtoolbar' => 'దిద్దుబాటు పనిముట్ల పట్టీని చూపించు',
'tog-editondblclick' => 'డబుల్ క్లిక్కు చేసినప్పుడు పేజీని మార్చు',
'tog-editsection' => '[మార్చు] లింకు ద్వారా విభాగం మార్పు చేతనం',
-'tog-editsectiononrightclick' => 'విà°à°¾à°\97à°\82 à°ªà±\87à°°à±\81 à°®à±\80à°¦ à°\95à±\81à°¡à°¿ à°\95à±\8dలిà°\95à±\8dà°\95à±\81à°¤à±\8b విà°à°¾à°\97à°\82 మారà±\8dà°ªà±\81 à°\95ావాలి (à°\9cావాసà±\8dà°\95à±\8dà°°à°¿à°ªà±\8dà°\9fà±\81)',
+'tog-editsectiononrightclick' => 'విà°à°¾à°\97ాల à°¶à±\80à°°à±\8dà°·à°¿à°\95à°² à°®à±\80à°¦ à°\95à±\81à°¡à°¿à°¨à±\8aà°\95à±\8dà°\95à±\81à°¤à±\8b విà°à°¾à°\97à°ªà±\81 దిదà±\8dà°¦à±\81బాà°\9fà±\81à°¨à±\81 à°\9aà±\87తనà°\82à°\9aà±\87యి',
'tog-showtoc' => 'విషయసూచిక చూపించు (3 కంటే ఎక్కువ శీర్షికలున్న పేజీలకు)',
'tog-rememberpassword' => 'ఈ విహారిణిలో నా ప్రవేశాన్ని గుర్తుంచుకో (గరిష్ఠంగా $1 {{PLURAL:$1|రోజు|రోజుల}}కి)',
'tog-watchcreations' => 'నేను సృష్టించే పేజీలను మరియు దస్త్రాలను నా వీక్షణ జాబితాకు చేర్చు',
'tog-minordefault' => 'ప్రత్యేకంగా తెలుపనంతవరకూ నా మార్పులను చిన్న మార్పులుగా గుర్తించు',
'tog-previewontop' => 'వ్యాసం మార్పుల మునుచూపు సవరించు పెట్టె పైన చూపు',
'tog-previewonfirst' => 'మొదటి దిద్దుబాటు చేసినపుడు వ్యాసపు మునుచూపు చూపించు',
-'tog-nocache' => 'విహారిణిలో పుటల స్థానికనకలును(కాషింగు) అచేతనం చేయి',
'tog-enotifwatchlistpages' => 'నా వీక్షణాజాబితా లోని పేజీ లేదా దస్త్రం మారినపుడు నాకు ఈ-మెయిలు పంపు',
'tog-enotifusertalkpages' => 'నా చర్చా పేజీలో మార్పులు జరిగినపుడు నాకు ఈ-మెయిలు పంపు',
'tog-enotifminoredits' => 'పేజీలు మరియు దస్త్రాలకు జరిగే చిన్న మార్పులకు కూడా నాకు ఈ-మెయిలును పంపు',
'cascadeprotected' => 'కింది {{PLURAL:$1|పేజీని|పేజీలను}} కాస్కేడింగు ఆప్షనుతో చేసి సంరక్షించారు. ప్రస్తుత పేజీ, ఈ పేజీల్లో ఇంక్లూడు అయి ఉంది కాబట్టి, దిద్దుబాటు చేసే వీలు లేకుండా ఇది కూడా రక్షణలో ఉంది.
$2',
'namespaceprotected' => "'''$1''' నేంస్పేసులో మార్పులు చేయటానికి మీకు అనుమతి లేదు.",
+'mycustomcssprotected' => 'ఈ CSS పేజీని సవరించేందుకు మీకు అనుమతి లేదు.',
+'mycustomjsprotected' => 'ఈ జావాస్క్రిప్టు పేజీని సవరించేందుకు మీకు అనుమతి లేదు.',
+'myprivateinfoprotected' => 'మీ అంతరంగిక సమాచారాన్ని సవరించేందుకు మీకు అనుమతి లేదు.',
+'mypreferencesprotected' => 'మీ అభీష్టాలను సవరించేందుకు మీకు అనుమతి లేదు.',
'ns-specialprotected' => 'ప్రత్యేక పేజీలపై దిద్దుబాట్లు చేయలేరు.',
'titleprotected' => "సభ్యులు [[User:$1|$1]] ఈ పేజీని సృష్టించనివ్వకుండా నిరోదిస్తున్నారు.
అందుకు ఇచ్చిన కారణం: ''$2''.",
'userlogin-resetpassword-link' => 'మీ సంకేతపదాన్ని మర్చిపోయారా?',
'helplogin-url' => 'Help:ప్రవేశించడం',
'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|ప్రవేశించడానికి సహాయం]]',
+'userlogin-createanother' => 'మరొక ఖాతాను సృష్టించండి',
'createacct-join' => 'మీ సమాచారాన్ని క్రింద ఇవ్వండి.',
+'createacct-another-join' => 'కొత్త ఖాతా యొక్క సమాచారాన్ని క్రింద ఇవ్వండి.',
'createacct-emailrequired' => 'ఈమెయిలు చిరునామా',
'createacct-emailoptional' => 'ఈమెయిలు చిరునామా (ఐచ్చికం)',
'createacct-email-ph' => 'మీ ఈమెయిలు చిరునామాను ఇవ్వండి',
'createacct-another-email-ph' => 'ఈమెయిలు చిరునామాను ఇవ్వండి',
-'createaccountmail' => 'తాతà±\8dà°\95ాలిà°\95 యాదà±\83à°\9aà±\8dà°\9aà°¿à°\95 à°¸à°\82à°\95à±\87తపదానà±\8dని వాడి దానà±\8dని à°\88 à°\95à±\8dà°°à°¿à°\82à°¦ à°\87à°\9aà±\8dà°\9aà°¿న ఈమెయిలు చిరునామాకు పంపించు',
+'createaccountmail' => 'à°\8fà°¦à±\8b à°\92à°\95 తాతà±\8dà°\95ాలిà°\95 à°¸à°\82à°\95à±\87తపదానà±\8dని వాడి దానà±\8dని à°ªà±\87à°°à±\8dà°\95à±\8aà°¨à±\8dన ఈమెయిలు చిరునామాకు పంపించు',
'createacct-realname' => 'అసలు పేరు (ఐచ్చికం)',
'createaccountreason' => 'కారణం:',
'createacct-reason' => 'కారణం',
'createacct-captcha' => 'భద్రతా తనిఖీ',
'createacct-imgcaptcha-ph' => 'పైన కనబడే మాటలను ఇక్కడ ఇవ్వండి',
'createacct-submit' => 'మీ ఖాతాను సృష్టించుకోండి',
+'createacct-another-submit' => 'మరొక ఖాతాను సృష్టించు',
'createacct-benefit-heading' => '{{SITENAME}}ను తయారుచేసేది మీలాంటి ప్రజలే.',
'createacct-benefit-body1' => '{{PLURAL:$1|మార్పు|మార్పులు}}',
'createacct-benefit-body2' => '{{PLURAL:$1|పేజీ|పేజీలు}}',
'prefs-email' => 'ఈ-మెయిల్ ఎంపికలు',
'prefs-rendering' => 'రూపురేఖలు',
'saveprefs' => 'భద్రపరచు',
-'restoreprefs' => 'à°¸à±\83à°·à±\8dà°\9fà°¿à°\82à°\9aబడినపà±\8dà°ªà°\9fà°¿ à°\85à°à°¿à°°à±\81à°\9aà±\81à°²à±\81 తిరిà°\97à°¿ à°¤à±\80à°¸à±\81à°\95à±\81à°°à°¾',
+'restoreprefs' => 'à°\85à°ªà±\8dà°°à°®à±\87à°¯ à°\85మరిà°\95లనà±\81 à°ªà±\81à°¨à°\83à°¸à±\8dథాపిà°\82à°\9aà±\81 (à°\85à°¨à±\8dని విà°à°¾à°\97ాలà±\8dà°²à±\8bà°¨à±\82)',
'prefs-editing' => 'మార్పులు',
'rows' => 'వరుసలు',
'columns' => 'వరుసలు:',
'badsig' => 'సంతకాన్ని సరిగ్గా ఇవ్వలేదు; HTML ట్యాగులను ఒకసారి పరిశీలించండి.',
'badsiglength' => 'మీ సంతకం చాలా పెద్దగా ఉంది.
ఇది తప్పనిసరిగా $1 {{PLURAL:$1|అక్షరం|అక్షరాల}} లోపులోనే ఉండాలి.',
-'yourgender' => 'లింగం:',
-'gender-unknown' => 'వెల్లడించకండి',
-'gender-male' => 'పురుషుడు',
-'gender-female' => 'స్త్రీ',
-'prefs-help-gender' => 'ఐచ్ఛికం: లింగ-సమంజసమైన సంబోధనలకు ఈ మృదుఉపకరణం వాడుకుంటుంది. ఈ సమాచారం బహిర్గతమౌతుంది.',
+'yourgender' => 'మిమ్మల్ని ఎలా సంబోధించడానికి ఇష్టపడతారు?',
+'gender-unknown' => 'వెల్లడించడానికి నేను ఇష్టపడట్లేదు',
+'gender-male' => 'అతను వికీ పేజీలను సరిదిద్దుతాడు',
+'gender-female' => 'ఆమె వికీ పేజీలను సరిదిద్దుతుంది',
+'prefs-help-gender' => 'ఈ అభిరుచిని అమర్చుకోవడం ఐచ్చికం.
+మిమ్మల్ని సంబోధించేప్పుడూ మిమ్మల్ని పేర్కొనేప్పుడూ వ్యాకరణపరంగా సరైన లింగాన్ని వాడటానికి ఈ విలువ ఉపయోగపడుతుంది.
+ఈ సమాచారం బహిరంగం.',
'email' => 'ఈ-మెయిలు',
'prefs-help-realname' => 'అసలు పేరు (తప్పనిసరి కాదు), మీ అసలు పేరు ఇస్తేగనక, మీ రచనలన్నీ మీ అసలు పేరుతోనే గుర్తిస్తూ ఉంటారు.',
'prefs-help-email' => 'ఈ-మెయిలు చిరునామా ఐచ్చికం, కానీ మీరు సంకేతపదాన్ని మర్చిపోతే కొత్త సంకేతపదాన్ని మీకు పంపించడానికి అవసరమవుతుంది.',
'prefs-dateformat' => 'తేదీ ఆకృతి',
'prefs-timeoffset' => 'సమయ సవరణ',
'prefs-advancedediting' => 'సాధారణ ఎంపికలు',
+'prefs-editor' => 'కూర్పరి',
+'prefs-preview' => 'మునుజూపు',
'prefs-advancedrc' => 'ఉన్నత ఎంపికలు',
'prefs-advancedrendering' => 'ఉన్నత ఎంపికలు',
'prefs-advancedsearchoptions' => 'ఉన్నత ఎంపికలు',
'userrights-no-interwiki' => 'ఇతర వికీలలో వాడుకరి హక్కులను మార్చడానికి మీకు అనుమతి లేదు.',
'userrights-nodatabase' => '$1 అనే డేటాబేసు లేదు లేదా అది స్థానికం కాదు.',
'userrights-nologin' => 'వాడుకరి హక్కులను ఇవ్వడానికి మీరు తప్పనిసరిగా ఓ నిర్వాహక ఖాతాతో [[Special:UserLogin|లోనికి ప్రవేశించాలి]].',
-'userrights-notallowed' => 'వాడుకరి హక్కులను చేర్చే మరియు తొలగించే అనుమతి మీ ఖాతాకు లేదు.',
+'userrights-notallowed' => 'వాడుకరి హక్కులను చేర్చే మరియు తొలగించే అనుమతి మీకు లేదు.',
'userrights-changeable-col' => 'మీరు మార్చదగిన గుంపులు',
'userrights-unchangeable-col' => 'మీరు మార్చలేని గుంపులు',
+'userrights-removed-self' => 'మీ హక్కులను మీరు విజయవంతంగా తొలగించుకున్నారు. తద్వారా, ఈ పేజీని చూడడానికి మీకు ఇక అనుమతి లేదు.',
# Groups
'group' => 'గుంపు:',
'recentchanges-label-minor' => 'ఇది ఒక చిన్న మార్పు',
'recentchanges-label-bot' => 'ఈ మార్పును ఒక బాటు చేసింది',
'recentchanges-label-unpatrolled' => 'ఈ దిద్దుబాటు మీద నిఘా లేదు',
-'recentchanges-legend-newpage' => '$1 - కొత్త పేజీ',
-'rcnote' => "$4 నాడు $5 సమయానికి, గత {{PLURAL:$2|ఒక్క రోజులో|'''$2''' రోజులలో}} చేసిన చివరి {{PLURAL:$1|ఒక్క మార్పు కింద ఉంది|'''$1''' మార్పులు కింద ఉన్నాయి}}.",
+'recentchanges-legend-newpage' => '([[Special:NewPages|కొత్త పేజీల జాబితా]]ను కూడా చూడండి)',
'rcnotefrom' => '<b>$2</b> నుండి జరిగిన మార్పులు (<b>$1</b> వరకు చూపబడ్డాయి).',
'rclistfrom' => '$1 నుండి జరిగిన మార్పులను చూపించు',
'rcshowhideminor' => 'చిన్న మార్పులను $1',
'listfiles_size' => 'పరిమాణం',
'listfiles_description' => 'వివరణ',
'listfiles_count' => 'కూర్పులు',
+'listfiles-latestversion' => 'ప్రస్తుత కూర్పు',
'listfiles-latestversion-yes' => 'అవును',
'listfiles-latestversion-no' => 'కాదు',
'randompage-nopages' => 'ఈ క్రింది {{PLURAL:$2|పెరుబరిలో|పెరుబరులలో}} పేజీలు ఏమి లేవు:$1',
# Random page in category
+'randomincategory-invalidcategory' => '"$1" అనేది సరైన పర్గం పేరు కాదు.',
+'randomincategory-nopages' => '[[:Category:$1|$1]] వర్గంలో పేజీలేమీ లేవు.',
'randomincategory-selectcategory-submit' => 'వెళ్ళు',
# Random redirect
# Special:ActiveUsers
'activeusers' => 'క్రియాశీల వాడుకరుల జాబితా',
'activeusers-intro' => 'ఇది గత $1 {{PLURAL:$1|రోజులో|రోజులలో}} ఏదైనా కార్యకలాపం చేసిన వాడుకరుల జాబితా.',
-'activeusers-count' => 'à°\97à°¡à°\9aà°¿à°¨ {{PLURAL:$3|à°\92à°\95 à°°à±\8bà°\9cà±\81|$3 à°°à±\8bà°\9cà±\81à°²}}à°²à±\8b $1 {{PLURAL:$1|మారà±\8dà°ªà±\81|మారà±\8dà°ªà±\81లు}}',
+'activeusers-count' => 'à°\97à°¡à°\9aà°¿à°¨ {{PLURAL:$3|à°\92à°\95 à°°à±\8bà°\9cà±\81|$3 à°°à±\8bà°\9cà±\81à°²}}à°²à±\8b $1 {{PLURAL:$1|à°\9aà°°à±\8dà°¯|à°\9aà°°à±\8dà°¯లు}}',
'activeusers-from' => 'వాడుకరులను ఇక్కడ నుండి చూపించు:',
'activeusers-hidebots' => 'బాట్లను దాచు',
'activeusers-hidesysops' => 'నిర్వాహకులను దాచు',
'protect-cascadeon' => 'ఈ పేజీ కాస్కేడింగు రక్షణలో ఉన్న ఈ కింది {{PLURAL:$1|పేజీకి|పేజీలకు}} జతచేయటం వలన, ప్రస్తుతం రక్షణలో ఉంది. మీరు ఈ పేజీ యొక్క రక్షణ స్థాయిన మార్చవచ్చు, దాని వలన కాస్కేడింగు రక్షణకు ఎటువంటి సమస్య ఉండదు.',
'protect-default' => 'అందరు వాడుకరులను అనుమతించు',
'protect-fallback' => '"$1" అనుమతి ఉన్న వాడుకరులను మాత్రమే అనుమతించు',
-'protect-level-autoconfirmed' => 'à°\95à±\8aà°¤à±\8dà°¤ మరియà±\81 నమà±\8bà°¦à±\81à°\95ాని వాడà±\81à°\95à°°à±\81లనà±\81 నిరà±\8bà°§ించు',
+'protect-level-autoconfirmed' => 'à°¸à±\8dవయనà±\8dనిరà±\8dధారిత వాడà±\81à°\95à°°à±\81లనà±\81 మాతà±\8dà°°à°®à±\87 à°\85à°¨à±\81మతించు',
'protect-level-sysop' => 'నిర్వాహకులను మాత్రమే అనుమతించు',
'protect-summary-cascade' => 'కాస్కేడింగు',
'protect-expiring' => '$1 (UTC)న కాలంచెల్లుతుంది',
'undeletebtn' => 'పునఃస్థాపించు',
'undeletelink' => 'చూడండి/పునస్థాపించండి',
'undeleteviewlink' => 'చూడండి',
-'undeletereset' => 'మునుపటి వలె',
'undeleteinvert' => 'ఎంపికని తిరగవెయ్యి',
'undeletecomment' => 'కారణం:',
'undeletedrevisions' => '{{PLURAL:$1|ఒక సంచిక|$1 సంచికల}} పునఃస్థాపన జరిగింది',
'block' => 'వాడుకరి నిరోధం',
'unblock' => 'వాడుకరిపై నిరోధాన్ని తీసెయ్యండి',
'blockip' => 'వాడుకరి నిరోధం',
-'blockip-title' => 'వాడుకరిని నిరోధించు',
'blockip-legend' => 'వాడుకరి నిరోధం',
'blockiptext' => 'ఏదైనా ప్రత్యేక ఐపీ చిరునామానో లేదా వాడుకరిపేరునో రచనలు చెయ్యకుండా నిరోధించాలంటే కింది ఫారాన్ని వాడండి.
కేవలం దుశ్చర్యల నివారణ కోసం మాత్రమే దీన్ని వాడాలి, అదికూడా [[{{MediaWiki:Policy-url}}|విధానాన్ని]] అనుసరించి మాత్రమే.
'ipadressorusername' => 'ఐపీ చిరునామా లేదా వాడుకరిపేరు:',
'ipbexpiry' => 'అంతమయ్యే గడువు',
'ipbreason' => 'కారణం:',
-'ipbreasonotherlist' => 'ఇతర కారణం',
'ipbreason-dropdown' => '*సాధారణ నిరోధ కారణాలు
** తప్పు సమాచారాన్ని చొప్పించడం
** పేజీల్లోని సమాచారాన్ని తీసెయ్యడం
'ipbsubmit' => 'ఈ సభ్యుని నిరోధించు',
'ipbother' => 'వేరే గడువు',
'ipboptions' => '2 గంటలు:2 hours,1 రోజు:1 day,3 రోజులు:3 days,1 వారం:1 week,2 వారాలు:2 weeks,1 నెల:1 month,3 నెలలు:3 months,6 నెలలు:6 months,1 సంవత్సరం:1 year,ఎప్పటికీ:infinite',
-'ipbotheroption' => 'వేరే',
-'ipbotherreason' => 'ఇతర/అదనపు కారణం',
'ipbhidename' => 'మార్పులు మరియు జాబితాల నుండి ఈ వాడుకరిపేరుని దాచు',
'ipbwatchuser' => 'ఈ సభ్యుని సభ్యుని పేజీ, చర్చాపేజీలను వీక్షణలో ఉంచు',
'ipb-disableusertalk' => 'నిరోధంలో ఉండగా ఈ వాడుకరి తన స్వంత చర్చ పేజీలో మార్పుచేర్పులు చెయ్యకుండా నిరోధించు',
'proxyblockreason' => 'మీ ఐపీ అడ్రసు ఒక ఓపెన్ ప్రాక్సీ కాబట్టి దాన్ని నిరోధించాం. మీ ఇంటర్నెట్ సేవాదారుని గానీ, సాంకేతిక సహాయకుని గానీ సంప్రదించి తీవ్రమైన ఈ భద్రతా వైఫల్యాన్ని గురించి తెలపండి.',
'sorbsreason' => '{{SITENAME}} వాడే DNSBLలో మీ ఐపీ అడ్రసు ఒక ఓపెన్ ప్రాక్సీగా నమోదై ఉంది.',
'sorbs_create_account_reason' => 'మీ ఐపీ అడ్రసు DNSBL లో ఓపెను ప్రాక్సీగా నమోదయి ఉంది. మీరు ఎకౌంటును సృష్టించజాలరు.',
-'cant-block-while-blocked' => 'నిరోధంలో ఉన్న మీరు ఇతర వాడుకరులపై నిరోధం అమలుచేయలేరు.',
'cant-see-hidden-user' => 'మీరు నిరోధించదలచిన వాడుకరి ఇప్పటికే నిరోధించబడి, దాచబడి ఉన్నారు. మీకు హక్కు లేదు కాబట్టి, ఆ వాడుకరి నిరోధాన్ని చూడటంగానీ, దాన్ని మార్చడంగానీ చెయ్యలేరు.',
'ipbblocked' => 'మీరు ఇతర వాడుకరులని నిరోధించలేరు లేదా అనిరోధించలేరు, ఎందుకంటే మిమ్మల్ని మీరే నిరోధించుకున్నారు',
'ipbnounblockself' => 'మిమ్మల్ని మీరే అనిరోధించుకునే అనుమతి మీకు లేదు',
'watchlistall2' => 'అన్నీ',
'namespacesall' => 'అన్నీ',
'monthsall' => 'అన్నీ',
-'limitall' => 'అన్నీ',
# Email address confirmation
'confirmemail' => 'ఈ-మెయిలు చిరునామా ధృవీకరించండి',
'confirmemail_success' => 'మీ ఈ-మెయిలు చిరునామా ధృవీకరించబడింది.
ఇక [[Special:UserLogin|లోనికి ప్రవేశించి]] వికీని అస్వాదించండి.',
'confirmemail_loggedin' => 'మీ ఈ-మెయిలు చిరునామా ఇప్పుడు రూఢి అయింది.',
-'confirmemail_error' => 'మీ ధృవీకరణను భద్రపరచడంలో ఏదో లోపం జరిగింది.',
'confirmemail_subject' => '{{SITENAME}} ఈ-మెయిలు చిరునామా ధృవీకరణ',
'confirmemail_body' => '$1 ఐపీ చిరునామా నుండి ఎవరో, బహుశా మీరే,
{{SITENAME}}లో "$2" అనే ఖాతాని ఈ ఈ-మెయిలు చిరునామాతో నమోదుచేసుకున్నారు.
'imgmultigo' => 'వెళ్ళు!',
'imgmultigoto' => '$1వ పేజీకి వెళ్ళు',
+# Language selector for translatable SVGs
+'img-lang-default' => '(అప్రమేయ భాష)',
+'img-lang-go' => 'వెళ్ళు',
+
# Table pager
'ascending_abbrev' => 'ఆరోహణ',
'descending_abbrev' => 'అవరోహణ',
# Special:ComparePages
'comparepages' => 'పుటల పోలిక',
-'compare-selector' => 'పుట కూర్పుల పోలిక',
'compare-page1' => 'పుట 1',
'compare-page2' => 'పుట 2',
'compare-rev1' => 'కూర్పు 1',
'tog-minordefault' => 'Пешфарзи ҳамаи вироишҳоро ҷузъи ишора кунед',
'tog-previewontop' => 'Намоиши пешнамоиши қаблӣ пеш аз қуттии вироиш ва на пас аз он',
'tog-previewonfirst' => 'Нишон додани пешнамоиш дар нахустин вироиш',
-'tog-nocache' => 'Ҳофизаи ниҳонии саҳифа дар мурургар ғайрифаъол шавад',
'tog-enotifwatchlistpages' => 'Агар сафҳа ё парвандае аз феҳристи пайгириҳоям вироиш шуд ба ман номае фиристода шавад',
'tog-enotifusertalkpages' => 'Ҳангоме ки дар саҳифаи корбариам тағйир дода мешавад ба ман тариқи почтаи электронӣ пайём бифиристед.',
'tog-enotifminoredits' => 'Барои тағийроти ҷузъӣ дар сафҳаҳо ва парвандаҳо ҳам ба ман номае фиристода шавад',
'recentchanges-label-minor' => 'Ин вироиши ҷузъи аст',
'recentchanges-label-bot' => 'Ин вироишро робот анҷом додааст',
'recentchanges-label-unpatrolled' => 'Ин вироиш ҳанӯз гаштзанӣ нашудааст',
-'rcnote' => "Дар поён {{PLURAL:$1|'''1''' тағйире аст|'''$1''' тағйирот мебошанд}}, ки дар давоми {{PLURAL:$2|рӯҳ|'''$2''' рӯзҳои}} охир, сар карда аз $5, $4.",
'rcnotefrom' => 'Дар зер тағйиротҳои охирин аз <b>$2</b> (то <b>$1</b> нишон дода шудааст).',
'rclistfrom' => 'Нишон додани тағйиротҳои нав сар карда аз $1',
'rcshowhideminor' => '$1 вироишҳои хурд',
'undeletebtn' => 'Барқарор кардан',
'undeletelink' => 'дидан/барқарор кардан',
'undeleteviewlink' => 'намоиш',
-'undeletereset' => 'Аз нав',
'undeletecomment' => 'Тавзеҳ:',
'undeletedrevisions' => '$1 нусха бақарор {{PLURAL:$1|шуд|шуданд}}',
'undeletedrevisions-files' => '$1 нусха ва $2 парванда барқарор {{PLURAL:$1|шуд|шуданд}}',
'ipadressorusername' => 'IP нишона ё номи корбар:',
'ipbexpiry' => 'Хотима:',
'ipbreason' => 'Сабаб:',
-'ipbreasonotherlist' => 'Дигар далел',
'ipbreason-dropdown' => '*Сабабҳои умумии бастан
** Ворид кардани иттилооти нодуруст
** Пок кардани иттилооти муфид аз саҳифаҳо
'ipbsubmit' => 'Бастани ин корбар',
'ipbother' => 'Дигар вақт:',
'ipboptions' => '2 соат:2 hours,1 рӯз:1 day,3 рӯз:3 days,1 ҳафта:1 week,2 ҳафта:2 weeks,1 моҳ:1 month,3 моҳ:3 months,6 моҳ:6 months,1 сол:1 year,беохир:infinite',
-'ipbotheroption' => 'дигар',
-'ipbotherreason' => 'Далелҳои дигар/изофӣ:',
'ipbhidename' => 'Пинҳони номи корбарӣ аз вироишҳо ва феҳристҳо',
'badipaddress' => 'IP нишонаи номӯътабар',
'blockipsuccesssub' => 'Бастан муваффақ щуд',
'watchlistall2' => 'ҳама',
'namespacesall' => 'ҳама',
'monthsall' => 'ҳама',
-'limitall' => 'ҳама',
# Email address confirmation
'confirmemail' => 'Тасдиқи нишонаи почтаи электронӣ',
'confirmemail_needlogin' => 'Барои тасдиқи почтаи электрониатон ниёз ба $1 доред.',
'confirmemail_success' => 'Нишонаи почтаи электронии шумо тасдиқ шуд. Ҳамакнун метавонед ба систем вуруд карда аз вики лаззат бубаред.',
'confirmemail_loggedin' => 'Нишонаи почтаи электронии шумо тасдиқ шуд.',
-'confirmemail_error' => 'Ҳангоми захираи таъйиди шумо ба мушкилие бархӯрда шуд.',
'confirmemail_subject' => '{{SITENAME}} тасдиқи нишонаи почтаи электронӣ',
'confirmemail_body' => 'Someone, probably you, from IP address $1,
has registered an account "$2" with this e-mail address on {{SITENAME}}.
'tog-minordefault' => "Peşfarzi hamai viroişhoro çuz'i işora kuned",
'tog-previewontop' => 'Namoişi peşnamoişi qablī peş az quttiji viroiş va na pas az on',
'tog-previewonfirst' => 'Nişon dodani peşnamoiş dar naxustin viroiş',
-'tog-nocache' => "Hofizai nihoniji sahifa dar mururgar ƣajrifa'ol şavad",
'tog-enotifwatchlistpages' => 'Agar sahifae mavridi pajgiriji man taƣjir karda şavad ba man tariqi poctai elektronī pajjom bifiristed.',
'tog-enotifusertalkpages' => 'Hangome ki dar sahifai korbariam taƣjir doda meşavad ba man tariqi poctai elektronī pajjom bifiristed.',
'tog-enotifminoredits' => "Baroi taƣjiroti çuz'i ba man tariqi poctai elektronī pajjom bifiristed.",
'recentchanges-legend' => 'Ixtijoroti taƣjiroti oxirin',
'recentchanges-summary' => 'Nazorati taƣjirothoi navtarin dar Vikipedia dar hamin sahifa ast.',
'recentchanges-feed-description' => 'Radjobiji oxirin taƣjiroti in viki dar in xurd.',
-'rcnote' => "Dar pojon {{PLURAL:$1|'''1''' taƣjire ast|'''$1''' taƣjirot meboşand}}, ki dar davomi {{PLURAL:$2|rūh|'''$2''' rūzhoi}} oxir, sar karda az $5, $4.",
'rcnotefrom' => 'Dar zer taƣjirothoi oxirin az <b>$2</b> (to <b>$1</b> nişon doda şudaast).',
'rclistfrom' => 'Nişon dodani taƣjirothoi nav sar karda az $1',
'rcshowhideminor' => '$1 viroişhoi xurd',
'undeletebtn' => 'Barqaror kardan',
'undeletelink' => 'didan/barqaror kardan',
'undeleteviewlink' => 'namoiş',
-'undeletereset' => 'Az nav',
'undeletecomment' => 'Tavzeh:',
'undeletedrevisions' => '$1 nusxa baqaror {{PLURAL:$1|şud|şudand}}',
'undeletedrevisions-files' => '$1 nusxa va $2 parvanda barqaror {{PLURAL:$1|şud|şudand}}',
'ipadressorusername' => 'IP nişona jo nomi korbar:',
'ipbexpiry' => 'Xotima:',
'ipbreason' => 'Sabab:',
-'ipbreasonotherlist' => 'Digar dalel',
'ipbreason-dropdown' => "*Sababhoi umumiji bastan
** Vorid kardani ittilooti nodurust
** Pok kardani ittilooti mufid az sahifaho
'ipbsubmit' => 'Bastani in korbar',
'ipbother' => 'Digar vaqt:',
'ipboptions' => '2 soat:2 hours,1 rūz:1 day,3 rūz:3 days,1 hafta:1 week,2 hafta:2 weeks,1 moh:1 month,3 moh:3 months,6 moh:6 months,1 sol:1 year,beoxir:infinite',
-'ipbotheroption' => 'digar',
-'ipbotherreason' => 'Dalelhoi digar/izofī:',
'ipbhidename' => 'Pinhoni nomi korbarī az viroişho va fehristho',
'badipaddress' => "IP nişonai nomū'tabar",
'blockipsuccesssub' => 'Bastan muvaffaq щud',
'watchlistall2' => 'hama',
'namespacesall' => 'hama',
'monthsall' => 'hama',
-'limitall' => 'hama',
# Email address confirmation
'confirmemail' => 'Tasdiqi nişonai poctai elektronī',
'confirmemail_needlogin' => 'Baroi tasdiqi poctai elektroniaton nijoz ba $1 dored.',
'confirmemail_success' => 'Nişonai poctai elektroniji şumo tasdiq şud. Hamaknun metavoned ba sistem vurud karda az viki lazzat bubared.',
'confirmemail_loggedin' => 'Nişonai poctai elektroniji şumo tasdiq şud.',
-'confirmemail_error' => "Hangomi zaxirai ta'jidi şumo ba muşkilie barxūrda şud.",
'confirmemail_subject' => '{{SITENAME}} tasdiqi nişonai poctai elektronī',
'confirmemail_body' => 'Someone, probably you, from IP address $1,
has registered an account "$2" with this e-mail address on {{SITENAME}}.
'tog-minordefault' => 'กำหนดให้การแก้ไขทุกครั้งเป็นการแก้ไขเล็กน้อยโดยปริยาย',
'tog-previewontop' => 'แสดงตัวอย่างการแก้ไขก่อนกล่องแก้ไข',
'tog-previewonfirst' => 'แสดงตัวอย่างการแก้ไขสำหรับการแก้ไขครั้งแรก',
-'tog-nocache' => 'ปิดใช้งานแคช',
'tog-enotifwatchlistpages' => 'อีเมลหาเมื่อหน้าหรือไฟล์ในรายการเฝ้าดูมีการเปลี่ยนแปลง',
'tog-enotifusertalkpages' => 'อีเมลหาเมื่อหน้าคุยกับผู้ใช้ของฉันมีการเปลี่ยนแปลง',
'tog-enotifminoredits' => 'อีเมลหาเช่นกันสำหรับการแก้ไขหน้าและไฟล์เล็กน้อย',
'recentchanges-label-bot' => 'การแก้ไขนี้กระทำโดยบอต',
'recentchanges-label-unpatrolled' => 'การแก้ไขนี้ยังไม่ได้ตรวจสอบ',
'recentchanges-legend-newpage' => '$1 - หน้าใหม่',
-'rcnote' => "รายการด้านล่างคือการแก้ไข {{PLURAL:$1|'''1''' รายการ|ล่าสุด '''$1''' รายการ}} ในช่วง '''$2''' วันที่ผ่านมา จนถึง $5, $4",
'rcnotefrom' => "ด้านล่างเป็นการเปลี่ยนแปลงตั้งแต่ '''$2''' (มากสุด '''$1''' รายการ)",
'rclistfrom' => 'แสดงการเปลี่ยนแปลงใหม่เริ่มตั้งแต่ $1',
'rcshowhideminor' => '$1การแก้ไขเล็กน้อย',
'undeletebtn' => 'กู้คืน',
'undeletelink' => 'ดู/กู้คืน',
'undeleteviewlink' => 'ดู',
-'undeletereset' => 'ตั้งใหม่',
'undeleteinvert' => 'กลับการเลือก',
'undeletecomment' => 'เหตุผล:',
'undeletedrevisions' => '$1 รุ่นการแก้ไขถูกกู้คืน',
'block' => 'บล็อกผู้ใช้',
'unblock' => 'ปลดบล็อกผู้ใช้',
'blockip' => 'บล็อกผู้ใช้',
-'blockip-title' => 'ระงับผู้ใช้',
'blockip-legend' => 'บล็อกผู้ใช้',
'blockiptext' => 'ใช้แบบด้านล่างเพื่อบล็อกสิทธิเข้าถึงการเขียนของเลขที่อยู่ไอพีหรือชื่อผู้ใช้โดยเจาะจง การบล็อกนี้ควรดำเนินการเพื่อป้องกันการก่อกวนเท่านั้น และให้สอดคล้องกับ[[{{MediaWiki:Policy-url}}|นโยบาย]]
กรอกเหตุผลโดยเจาะจงด้านล่าง (เช่น อ้างถึงหน้าที่ถูกก่อกวน)',
'ipadressorusername' => 'เลขที่อยู่ไอพีหรือชื่อผู้ใช้',
'ipbexpiry' => 'หมดอายุ',
'ipbreason' => 'เหตุผล:',
-'ipbreasonotherlist' => 'เลือกสาเหตุ',
'ipbreason-dropdown' => '*สาเหตุการบล็อกทั่วไป
** ใส่ข้อมูลเท็จ
** ลบเนื้อหาในหน้าออก
'ipbsubmit' => 'บล็อกผู้ใช้นี้',
'ipbother' => 'เวลาอื่น',
'ipboptions' => '2 ชั่วโมง:2 hours,1 วัน:1 day,3 วัน:3 days,1 สัปดาห์:1 week,2 สัปดาห์:2 weeks,1 เดือน:1 month,3 เดือน:3 months,6 เดือน:6 months,1 ปี:1 year,ไม่มีกำหนด:infinite',
-'ipbotheroption' => 'เลือกเวลา',
-'ipbotherreason' => 'เหตุผลอื่น',
'ipbhidename' => 'ซ่อนชื่อผู้ใช้จากปูมและรายการต่าง ๆ',
'ipbwatchuser' => 'เฝ้าดูหน้าผู้ใช้และหน้าคุยกับผู้ใช้ของผู้ใช้รายนี้',
'ipb-disableusertalk' => 'ป้องกันไม่ให้ผู้ใช้นี้แก้ไขหน้าคุยกับผู้ใช้ของตัวเองขณะถูกบล็อก',
'sorbsreason' => 'เลขที่อยู่ไอพีของคุณอยู่ในพร็อกซีเปิดในส่วน DNSBL ที่ {{SITENAME}} ใช้',
'sorbs_create_account_reason' => 'เลขที่อยู่ไอพีของคุณอยู่ในพร็อกซีเปิดในส่วน DNSBL ที่ {{SITENAME}} ใช้
คุณไม่สามารถสร้างบัญชีได้',
-'cant-block-while-blocked' => 'คุณไม่สามารถบล็อกผู้ใช้อื่นในขณะที่คุณกำลังถูกบล็อก',
'cant-see-hidden-user' => 'ผู้ใช้ที่คุณกำลังพยายามระงับนั้นได้ถูกระงับหรือซ่อนเดิมอยู่แล้ว เนื่องจากคุณไม่มีสิทธิซ่อนผู้ใช้ คุณจึงไม่สามารถดูหรือแก้ไขการระงับผู้ใช้ได้',
'ipbblocked' => 'คุณไม่สามารถบล็อกหรือปลดบล็อกผู้ใช้คนอื่น เนื่องจากคุณกำลังถูกบล็อก',
'ipbnounblockself' => 'คุณไม่ได้รับอนุญาตให้ปลดบล็อกตนเอง',
'watchlistall2' => 'ทั้งหมด',
'namespacesall' => 'ทั้งหมด',
'monthsall' => 'ทั้งหมด',
-'limitall' => 'ทั้งหมด',
# Email address confirmation
'confirmemail' => 'ยืนยันอีเมล',
'confirmemail_success' => 'อีเมลคุณได้รับการยืนยันแล้ว
คุณอาจ[[Special:UserLogin|ล็อกอิน]]ตอนนี้และสนุกกับการแก้ไขวิกิ',
'confirmemail_loggedin' => 'อีเมลคุณได้รับการยืนยันแล้ว',
-'confirmemail_error' => 'เกิดปัญหาขณะบันทึกการยืนยันของคุณ',
'confirmemail_subject' => 'การยืนยันที่อยู่อีเมลของ{{SITENAME}}',
'confirmemail_body' => 'ใครบางคน ซึ่งอาจจะเป็นคุณ จากหมายเลขไอพี $1 ได้ลงทะเบียนในชื่อ "$2" โดยใช้อีเมลนี้ที่ {{SITENAME}}
# Special:ComparePages
'comparepages' => 'เปรียบเทียบหน้า',
-'compare-selector' => 'เปรียบเทียบรุ่นของหน้า',
'compare-page1' => 'หน้า 1',
'compare-page2' => 'หน้า 2',
'compare-rev1' => 'รุ่น 1',
'tog-minordefault' => 'Ähli özgerdişleri "ujypsyzja" diýip belle',
'tog-previewontop' => 'Deslapky syny redaktirleme gutusynyň üstünde görkez',
'tog-previewonfirst' => 'Özgerdişde deslapky syny görkez',
-'tog-nocache' => 'Brauzerde sahypa keşirlemegi ýap',
'tog-enotifwatchlistpages' => 'Gözegçilik sanawymdaky sahypa redaktirlenen mahaly maňa e-poçta iber',
'tog-enotifusertalkpages' => 'Ulanyjy sahypamda üýtgeşme bolan mahaly maňa e-poçta iber',
'tog-enotifminoredits' => 'Sahypalardaky ujypsyzja özgerdişlerde-de maňa e-poçta iber',
'recentchanges-label-bot' => 'Bu özgerdiş bir bot tarapyndan amala aşyryldy',
'recentchanges-label-unpatrolled' => 'Bu özgerdişe heniz patrullyk edilmändir',
'recentchanges-legend-newpage' => '$1 - täze sahypa',
-'rcnote' => "Aşakda $5, $4 senesinden başlap, soňky {{PLURAL:$2|1 günde|'''$2''' günde}} edilen {{PLURAL:$1|'''1''' üýtgeşme|'''$1''' üýtgeşme}} görkezilýär.",
'rcnotefrom' => '<b>$2</b> senesinden bäri edilen özgerdişler aşakda görkezilýär (<b>$1</b> sanysyna çenli).',
'rclistfrom' => '$1 senesinden bäri edilen özgerdişleri görkez',
'rcshowhideminor' => 'ujypsyzja özgerdişleri $1',
'undeletebtn' => 'Dikelt',
'undeletelink' => 'görkez/dikelt',
'undeleteviewlink' => 'görkez',
-'undeletereset' => 'Başky ýagdaýa getir',
'undeleteinvert' => 'Saýlanmadyklar',
'undeletecomment' => 'Sebäp:',
'undeletedrevisions' => '{{PLURAL:$1|1 wersiýa|$1 wersiýa}} dikeldildi',
# Block/unblock
'blockip' => 'Ulanyjyny blokirle',
-'blockip-title' => 'Ulanyjyny blokirle',
'blockip-legend' => 'Ulanyjyny blokirle',
'blockiptext' => 'Aşakdaky formdan peýdalanyp, belli bir IP-niň ýa-da ulanyjy adynyň ýazmak hukugyny blokirläp bilersiňiz.
Bu diňe wandalizmiň öňüni almak üçin hem-de [[{{MediaWiki:Policy-url}}|kadalara]] laýyklykda edilmelidir.
'ipadressorusername' => 'IP adresi ýa-da ulanyjy ady:',
'ipbexpiry' => 'Gutarýan wagty:',
'ipbreason' => 'Sebäp:',
-'ipbreasonotherlist' => 'Başga sebäp',
'ipbreason-dropdown' => '*Adaty blokirleme sebäpleri
** Ýalan maglumat girizmek
** Sahypalaryň mazmunyny aýyrmak
'ipbsubmit' => 'Bu ulanyjyny blokirle',
'ipbother' => 'Başga wagt:',
'ipboptions' => '2 sagat:2 hours,1 gün:1 day,3 gün:3 days,1 hepde:1 week,2 hepde:2 weeks,1 aý:1 month,3 aý:3 months,6 aý:6 months,1 ýyl:1 year,möhletsiz:infinite',
-'ipbotheroption' => 'başga',
-'ipbotherreason' => 'Başga/goşmaça sebäp:',
'ipbhidename' => 'Ulanyjynyň adyny özgerdişlerde we sanawlarda gizle',
'ipbwatchuser' => 'Bu ulanyjynyň ulanyjy we çekişme sahypalaryny gözegçilikde sakla',
'ipb-change-block' => 'Bu sazlamalar bilen ulanyjyny gaýtadan blokirle',
'sorbsreason' => 'IP adresiňiz {{SITENAME}} tarapyndan ulanylýan DNSBL-de açyk proksi hökmünde sanawa goşulypdyr.',
'sorbs_create_account_reason' => 'IP adresiňiz {{SITENAME}} tarapyndan ulanylýan DNSBL-de açyk proksi hökmünde sanawa goşulypdyr.
Hasap açyp bilmeýärsiňiz.',
-'cant-block-while-blocked' => 'Özüňiz blokirlengikäňiz başga ulanyjylary blokirläp bilmeýärsiňiz.',
'cant-see-hidden-user' => 'Blokirlejek bolýan ulanyjyňyz eýýäm blokirlenipdir hem-de gizlenilipdir. Ulanyjy gizlemek hukugyňyz ýokdugy sebäpli, ulanyjynyň blokirlemesini görüp ýa-da redaktirläp bilmeýärsiňiz.',
'ipbblocked' => 'Beýleki ulanyjylary blokirläp ýa-da olaryň blokirlemesini aýryp bilmeýärsiňiz, sebäbi özüňiz blokirlenipsiňiz',
'ipbnounblockself' => 'Öz blokirlemäňizi aýyrmagyňyza rugsat berilmeýär',
'watchlistall2' => 'Ählisini görkez',
'namespacesall' => 'ählisi',
'monthsall' => 'ählisi',
-'limitall' => 'ählisi',
# Email address confirmation
'confirmemail' => 'E-poçta adresini tassykla',
'confirmemail_needlogin' => 'E-poçta adresiňizi tassyklamak üçin $1.',
'confirmemail_success' => 'E-poçta adresiňiz tassyklandy. [[Special:UserLogin|Sessiýa açyň-da]] wikini ulanyberiň.',
'confirmemail_loggedin' => 'E-poçta adresiňiz tassyklandy.',
-'confirmemail_error' => 'Tassyklamaňyz ýazdyrylanda bir ýalňyşlyk boldy.',
'confirmemail_subject' => '{{SITENAME}} e-poçta adres tassyklamasy.',
'confirmemail_body' => 'Kimdir biri, ähtimal özüňiz, $1 IP adresinden,
{{SITENAME}} saýtynda bu e-poçta adresi bilen $2 hasabyny açdy.
# Special:ComparePages
'comparepages' => 'Sahypalary deňeşdir',
-'compare-selector' => 'Sahypa wersiýalaryny deňeşdir',
'compare-page1' => 'Sahypa 1',
'compare-page2' => 'Sahypa 2',
'compare-rev1' => 'Wersiýa 1',
'tog-minordefault' => 'Markahan ang lahat ng pagbabago bilang maliit nang nakatakda',
'tog-previewontop' => 'Ipakita ang paunang tingin bago ang kahon ng pagbabago',
'tog-previewonfirst' => 'Ipakita ang paunang tingin sa unang pagbabago',
-'tog-nocache' => 'Huwag paganahin ang pagtatago ng pahinang pantingintingin',
'tog-enotifwatchlistpages' => 'Padalhan ako ng e-liham kapag nabago ang isa sa pahina o talaksang binabantayan ko',
'tog-enotifusertalkpages' => 'Padalhan ako ng e-liham kapag binago ang aking pahina ng usapan',
'tog-enotifminoredits' => 'Padalhan din ako ng e-liham para sa mga maliliit na mga pagbabago ng mga pahina at mga talaksan',
'recentchanges-label-bot' => 'Gawa ng isang bot ang pagbabagong ito',
'recentchanges-label-unpatrolled' => 'Hindi pa napapatrulyahan ang pagbabagong ito',
'recentchanges-legend-newpage' => '$1 - bagong pahina',
-'rcnote' => "Nasa ibaba {{PLURAL:$1|ang '''1''' pagbabago|ang pinakahuling '''$1''' mga pagbabago}} sa huling {{PLURAL:$2|araw|'''$2''' mga araw}}, mula noong $5, $4.",
'rcnotefrom' => "Nasa ibaba ang mga pagbabago mula pa noong '''$2''' (ipinapakita ang magpahanggang sa '''$1''').",
'rclistfrom' => 'Ipakita ang bagong mga pagbabago simula sa $1',
'rcshowhideminor' => '$1 maliliit na mga pagbabago',
'undeletebtn' => 'Ibalik',
'undeletelink' => 'tingnan/ibalik muli',
'undeleteviewlink' => 'tingnan',
-'undeletereset' => 'I-reset',
'undeleteinvert' => 'Baligtarin ang pagpili/pilian',
'undeletecomment' => 'Dahilan:',
'undeletedrevisions' => '{{PLURAL:$1|1 pagbabago|$1 mga pagbabagong}} naibalik na',
'block' => 'Harangin ang tagagamit',
'unblock' => 'Huwag harangin ang tagagamit',
'blockip' => 'Harangin/hadlangan ang tagagamit',
-'blockip-title' => 'Harangin ang tagagamit',
'blockip-legend' => 'Iharang ang tagagamit',
'blockiptext' => 'Gamitin ang mga lahok sa ibaba upang maharang ang akses sa pagsulat mula sa isang espesipikong IP address o bansag.
Gawin lamang ito para maiwasan ang bandalismo, at napapaloob sa [[{{MediaWiki:Policy-url}}|patakaran]].
'ipadressorusername' => 'Direksyong IP o bansag:',
'ipbexpiry' => 'Pagkawalang-bisa:',
'ipbreason' => 'Dahilan:',
-'ipbreasonotherlist' => 'Ibang dahilan',
'ipbreason-dropdown' => '*Mga karaniwang dahilan sa paghaharang
** Pagpasok ng hindi totoong impormasyon
** Pag-alis ng nilalaman mula sa mga pahina
'ipbsubmit' => 'Harangin/hadlangan ang tagagamit na ito',
'ipbother' => 'Ibang oras:',
'ipboptions' => '2 oras:2 hours,1 araw:1 day,3 araw:3 days,1 linggo:1 week,2 linggo:2 weeks,1 buwan:1 month,3 buwan:3 months,6 buwan:6 months,1 taon:1 year,walang hanggan:infinite',
-'ipbotheroption' => 'iba',
-'ipbotherreason' => 'Iba/karagdagang dahilan:',
'ipbhidename' => 'Itago ang pangalan ng tagagamit mula sa pagbabago at mga talaan',
'ipbwatchuser' => 'Bantayan ang pahinang pantagagamit at pahina ng usapan ng tagagamit na ito',
'ipb-disableusertalk' => 'Pigilan ang tagagamit na ito mula sa pamamatnugot ng kanilang pansariling pahina ng usapan habang hinahadlangan',
'sorbsreason' => 'Nakalista ang IP address mo bilang isang bukas na proxy sa DNSBL na ginagamit ng sayt na ito.',
'sorbs_create_account_reason' => 'Nakatala ang iyong IP address bilang open proxy sa DNSBL na ginagamit ng {{SITENAME}}.
Hindi ka makakalikha ng account',
-'cant-block-while-blocked' => 'Hindi mo mahahadlangan/mahaharang ang ibang mga tagagamit habang hinahadlangan ka.',
'cant-see-hidden-user' => 'Ang tagagamit na sinusubukan mong hadlangan ay naharang at naikubli na.
Dahil wala kang karapatang magkubli ng tagagamit, hindi mo makikita o mababago ang paghadlang sa tagagamit.',
'ipbblocked' => 'Hindi mo mahahadlangan o tanggalin ang hadlang ng ibang mga tagagamit, dahil hinadlangan ka rin',
'watchlistall2' => 'lahat',
'namespacesall' => 'lahat',
'monthsall' => 'lahat',
-'limitall' => 'lahat',
# Email address confirmation
'confirmemail' => 'Patotohanan ang adres ng e-liham',
'confirmemail_needlogin' => 'Kailangan mong $1 upang kumpirmahin/mapatotohanan ang iyong adres ng e-liham.',
'confirmemail_success' => 'Nakumpirma/napatotohanan na ang adres ng e-liham mo. Maaari ka ng [[Special:UserLogin|lumagda]] at maglibang sa wiki.',
'confirmemail_loggedin' => 'Natiyak na ngayon ang tirahan ng e-liham mo.',
-'confirmemail_error' => 'May nangyaring kamalian sa pagsasagip ng iyong kumpirmasyon.',
'confirmemail_subject' => 'Kumpirmasyon/pagpapatotoong pang-adres ng e-liham ng {{SITENAME}}',
'confirmemail_body' => 'May isa, maaaring ikaw, na mula sa direksiyong IP na $1,
ang nagtala ng isang kuwentang "$2" na mayroong ganitong direksiyong e-liham sa {{SITENAME}}.
# Special:ComparePages
'comparepages' => 'Paghambingin ang mga pahina',
-'compare-selector' => 'Paghambingin ang mga pahina ng rebisyon',
'compare-page1' => 'Pahina 1',
'compare-page2' => 'Pahina 2',
'compare-rev1' => 'Rebisyon 1',
'recentchanges-label-minor' => 'Ым гадә дәгишије',
'recentchanges-label-bot' => 'Ым дәгиши бот кардәше',
'recentchanges-label-unpatrolled' => 'Im redaktə hələ nəzərədə dəvardəni',
-'rcnote' => "Бә жиј нишо доә быә {{PLURAL:$1|'''1''' дәгиши|'''$1''' дәгиши}}, бә охонә {{PLURAL:$2|ружәдә|'''$2''' ружәдә}}, саат $5, $4.",
'rcnotefrom' => "Бә жиј доә быән дәгишон че вахтику '''$2''' (тосә '''$1''').",
'rclistfrom' => '$1 вахтику дәгишон нишо быдә',
'rcshowhideminor' => '$1 гәдәлијә дәгишон',
# Block/unblock
'ipbreason' => 'Сәбәб:',
'ipboptions' => '2 саат:2 hours,1 руж:1 day,3 руж:3 days,1 һафтә:1 week,2 һафтә:2 weeks,1 манг:1 month,3 манг:3 months,6 манг:6 months,1 сор:1 year,бемыһләт:infinite',
-'ipbotheroption' => 'ҹо',
'ipblocklist' => 'Бастә быә иштирокәкон',
'blocklist-reason' => 'Сәбәб',
'ipblocklist-submit' => 'Нәве',
# Recent changes
'recentchanges' => 'Ngaahi toki liliu',
'recentchanges-summary' => 'Fakatotolo ʻa e ngaahi toki liliu ki he wiki ʻi he pēsí ni.',
-'rcnote' => 'ʻOku ʻasi ʻi lalo ʻa e liliu fakamuimui ʻe <strong>$1</strong> lolotonga ʻa e ʻaho fakamuimui ʻe <strong>$2</strong> mei he taimi: $4, $5',
'rcnotefrom' => "ʻOku ʻasi ʻi lalo ʻa e liliu talu mei '''$2''' (aʻu ki he '''$1''').",
'rclistfrom' => 'ʻAsi mai ha ngaahi liliu foʻou ʻo kamata mei he $1',
'rcshowhideminor' => '$1 fatu siʻi',
'undeleterevisions' => 'Ngaahi paaki ʻe $1 kuo ʻave ki he tauhiʻanga',
'undeletebtn' => 'Fakafoki',
'undeletelink' => 'fakafoki',
-'undeletereset' => 'Fakafoki',
'undeletecomment' => 'Fakamatala:',
'undeletedrevisions' => 'Kuo fakafoki ʻa e paaki ʻe $1',
'undeletedfiles' => 'Kuo fakafoki ʻa e faile ʻe $1',
'ipbcreateaccount' => 'Taʻofia ʻa e fakatupu ʻo ha tohi kau-ki-ai',
'ipbsubmit' => 'Taʻofia ʻa e ʻetitá ni',
'ipbother' => 'Fuoloa kehe',
-'ipbotheroption' => 'kehe',
'badipaddress' => 'Tuʻasila IP taʻeʻaongaʻi',
'blockipsuccesssub' => 'Ola ʻo e taʻofi',
'blockipsuccesstext' => 'Kuo taʻofia ʻa [[Special:Contributions/$1|$1]]
'confirmemail_needlogin' => 'ʻOku pau te ke $1, koeʻuhi ʻe fakamoʻoniʻi ho tuʻasila tohila.',
'confirmemail_success' => 'Kuo fakamoʻoniʻi ho tuʻasila tohila. ʻOku lava ke ke kau-ki-ai pea huaʻia ʻa e wiki.',
'confirmemail_loggedin' => 'He taimí ni kuo fakamoʻoniʻi ho tuʻasila tohila.',
-'confirmemail_error' => 'Ko e meʻa hala ʻi he haofaki ʻo e hoʻo fakamoʻoniʻi tohila.',
'confirmemail_subject' => 'Ko e fakamoʻoniʻi ʻo e tuʻasila tohila ʻo e {{SITENAME}}',
'confirmemail_body' => 'Ko e tokotaha, mahalo pē ko koe mei he tuʻasila IP $1, naʻe lēsisita ia ha tohi kau-ki-ai "$2" mo e tuʻasila tohilá ni ʻi {{SITENAME}}.
'tog-minordefault' => 'Makim ol senis mi wokim olsem ol i liklik, sapos mi no makim',
'tog-previewontop' => 'Soim pes mi senisim (pastaim long raitim) antap long bokis bilong wokim senis',
'tog-previewonfirst' => 'Soim pes mi senisim pastaim long raitim',
-'tog-nocache' => ' Nogat stoa pes long browser',
'tog-enotifwatchlistpages' => 'Salim imel long mi taim wanpela pes mi lukautim i senis',
'tog-enotifusertalkpages' => 'Salim imel long mi wanem taim toktok bilong mi i senis',
'tog-enotifminoredits' => 'Salim imel long mi tasol long liklik senis long pes na fail',
'nchanges' => '$1 senis',
'recentchanges' => 'Nupela senis',
'recentchanges-label-minor' => 'Dispela emi liklik senis',
-'rcnote' => "Ananit yu lukim '''$1 senis''' long '''$2 de''' igo pinis, na i olsem long $3.",
'rcshowhideminor' => '$1 ol liklik senis',
'rcshowhidebots' => '$1 ol bot',
'rcshowhideliu' => '$1 ol yusa',
# Block/unblock
'blockip' => 'Pasim yusa (Block user)',
'ipboptions' => '2 awa:2 hours,1 de:1 day,3 de:3 days,1 wik:1 week,2 wik:2 weeks,1 mun:1 month,3 mun:3 months,6 mun:6 months,1 yia:1 year,oltaim:infinite',
-'ipbotheroption' => 'narapela',
'ipblocklist' => 'Ol IP adres na yusanem i pas',
'ipblocklist-submit' => 'Painim',
'blocklink' => 'pasim',
'watchlistall2' => 'olgeta',
'namespacesall' => 'ol',
'monthsall' => 'olgeta',
-'limitall' => 'olgeta',
# Scary transclusion
'scarytranscludetoolong' => '[URL i longpela tumas]',
'tog-minordefault' => 'Varsayılan olarak bütün düzenlemeleri küçük olarak işaretle',
'tog-previewontop' => 'Ön izlemeyi düzenleme kutusunun üstünde göster',
'tog-previewonfirst' => 'İlk düzenlemede ön izlemeyi göster',
-'tog-nocache' => 'Tarayıcı sayfalarını önbelleğe almayı devre dışı bırak',
'tog-enotifwatchlistpages' => 'İzleme listemdeki bir sayfanın ya da dosyanın değiştirilmesi durumunda bana e-posta gönder',
'tog-enotifusertalkpages' => 'Kullanıcı mesaj sayfamda değişiklik olduğunda bana e-posta gönder',
'tog-enotifminoredits' => 'Sayfalardaki ve dosyalardaki küçük değişikliklerde bana e-posta gönder',
'recentchanges-label-unpatrolled' => 'Bu değişiklik henüz gözlenmemiş',
'recentchanges-label-plusminus' => 'Sayfa boyutu bu bayt sayısı kadar değişti',
'recentchanges-legend-newpage' => '(ayrıca bakınız [[Special:NewPages|yeni sayfalar listesi]])',
-'rcnote' => "$4 tarihi ve saat $5 itibarı ile, son {{PLURAL:$2|1 günde|'''$2''' günde}} yapılan, {{PLURAL:$1|'''1''' değişiklik|'''$1''' değişiklik}}, aşağıdadır.",
'rcnotefrom' => "'''$2''' tarihinden itibaren yapılan değişiklikler aşağıdadır (en fazla <b>$1</b> tanesi gösterilmektedir).",
'rclistfrom' => '$1 tarihinden itibaren yeni değişiklikleri göster',
'rcshowhideminor' => 'Küçük değişiklikleri $1',
'undeletebtn' => 'Geri getir!',
'undeletelink' => 'görüntüle/geri getir',
'undeleteviewlink' => 'görüntüle',
-'undeletereset' => 'Vazgeç',
'undeleteinvert' => 'Seçimi ters çevir',
'undeletecomment' => 'Neden:',
'undeletedrevisions' => 'Toplam {{PLURAL:$1|1 kayıt|$1 kayıt}} geri getirildi.',
'block' => 'Kullanıcıyı engelle',
'unblock' => 'Kullanıcının engelini kaldır',
'blockip' => 'Kullanıcıyı engelle',
-'blockip-title' => 'Kullanıcıyı engelle',
'blockip-legend' => 'Kullanıcıyı engelle',
'blockiptext' => "Aşağıdaki formu kullanarak belli bir IP'nin veya kayıtlı kullanıcının değişiklik yapmasını engelleyebilirsiniz. Bu sadece vandalizmi engellemek için ve [[{{MediaWiki:Policy-url}}|kurallara]] uygun olarak yapılmalı. Aşağıya mutlaka engelleme ile ilgili bir açıklama yazınız. (örnek: -Şu- sayfalarda vandalizm yapmıştır).",
'ipadressorusername' => 'IP adresi veya kullanıcı adı',
'ipbexpiry' => 'Bitiş süresi',
'ipbreason' => 'Neden:',
-'ipbreasonotherlist' => 'Başka neden',
'ipbreason-dropdown' => '*Genel engelleme nedenleri
** Yanlış bilgi eklemek
** Sayfalardan içeriği çıkarmak
'ipbsubmit' => 'Bu kullanıcıyı engelle',
'ipbother' => 'Farklı zaman',
'ipboptions' => '2 saat:2 hours,1 gün:1 day,3 gün:3 days,1 hafta:1 week,2 hafta:2 weeks,1 ay:1 month,3 ay:3 months,6 ay:6 months,1 yıl:1 year,süresiz:infinite',
-'ipbotheroption' => 'farklı',
-'ipbotherreason' => 'Başka/ek sebepler:',
'ipbhidename' => 'Kullanıcı adını katkılarda ve listelerde gizle',
'ipbwatchuser' => 'Bu kullanıcının kullanıcı ve tartışma sayfalarını izle',
'ipb-disableusertalk' => 'Bu kullanıcının engelliyken kendi mesaj sayfasında değişiklik yapmasını önle',
'sorbs_create_account_reason' => "IP adresiniz {{SITENAME}} sitesi tarafından kullanılan DNSBL'de açık proxy olarak listelenmiş.
Hesap oluşturamazsınız",
'xffblockreason' => 'Sizin ya da kullandığınız vekil sunucuya ait bir IP adresi X-Forwarded-For başlığında bulunuyor, ve engellendi. Orjinal engelleme nedeni: $1',
-'cant-block-while-blocked' => 'Siz engelliyken başka kullanıcıları engelleyemezsiniz.',
'cant-see-hidden-user' => 'Engellemek istediğiniz kullanıcı zaten engellenmiş ve gizlenmiş. Kullanıcıgizle yetkiniz olmadığı için, kullanıcının engellenmesini göremez ya da değiştiremezsiniz.',
'ipbblocked' => 'Diğer kullanıcıları engelleyemez ya da engellemesini kaldıramazsınız, çünkü kendiniz engellenmişsiz',
'ipbnounblockself' => 'Kendi engellemenizi kaldırmanıza izniniz yok',
'watchlistall2' => 'Hepsini göster',
'namespacesall' => 'hepsi',
'monthsall' => 'hepsi',
-'limitall' => 'tümü',
# Email address confirmation
'confirmemail' => 'E-posta adresini onayla',
'confirmemail_needlogin' => 'E-posta adresinizi onaylamak için önce $1 yapmalısınız.',
'confirmemail_success' => "E-posta adresiniz doğrulandı. [[Special:UserLogin|Oturum açıp]] Viki'nin keyfini çıkarabilirsiniz.",
'confirmemail_loggedin' => 'E-posta adresiniz onaylandı.',
-'confirmemail_error' => 'Onayınız bilinmeyen bir hata nedeniyle kaydedilemedi.',
'confirmemail_subject' => '{{SITENAME}} e-posta adres onayı.',
'confirmemail_body' => 'Birisi, muhtemelen siz, $1 IP adresinden,
{{SITENAME}} sitesinde bu e-posta adresi ile $2 hesabını açtı.
'imgmultigo' => 'Git!',
'imgmultigoto' => '$1 sayfasına git',
+# Language selector for translatable SVGs
+'img-lang-default' => '(varsayılan dil)',
+'img-lang-info' => 'Bu resmi $1 ile işle $2.',
+'img-lang-go' => 'Gönder',
+
# Table pager
'ascending_abbrev' => 'küçükten büyüğe',
'descending_abbrev' => 'azalan',
# Special:ComparePages
'comparepages' => 'Sayfaları karşılaştır',
-'compare-selector' => 'Sayfa sürümlerini karşılaştır',
'compare-page1' => 'Sayfa 1',
'compare-page2' => 'Sayfa 2',
'compare-rev1' => 'Sürüm 1',
'recentchanges-label-minor' => 'This is a minor edit',
'recentchanges-label-bot' => 'uŞuḥlofano sim muBot.',
'recentchanges-label-unpatrolled' => 'This edit has not yet been patrolled',
-'rcnote' => "Below {{PLURAL:$1|is '''1''' change|are the last '''$1''' changes}} in the last {{PLURAL:$2|day|'''$2''' days}}, as of $5, $4.",
'rcnotefrom' => 'Herke komaḥwın aŞuḥlofe ḥaroye men ""$2"" (hul buSowudo ""$1"").',
'rclistfrom' => 'Maḥway li Şuḥlofe ḥaṭe men $1',
'rcshowhideminor' => '$1 minor edits',
'recentchanges-label-minor' => 'Lowu i ndzulamiso wu tsongo',
'recentchanges-label-bot' => 'Ndzulamiso lowu wu endliwe hi rhobhoto',
'recentchanges-label-unpatrolled' => 'Ndzulamiso lowu awusi languteriwa',
-'rcnote' => "Lha hansi ku kombiwa {{PLURAL:$1|ku cinca|''$1''' wa mindzulamiso}} endzeni ka {{PLURAL:$2|siku|'''$2''' wa masiku}} lamahundzeke, hi $5, $4.",
'rcnotefrom' => "Laha hansi kuxaxametiwe ku cinca kusukela hi '''$2''' (kuya ka '''$1''').",
'rclistfrom' => 'Komba mindzilamiso leyintswa kusukela eka $1',
'rcshowhideminor' => '$1 wa mindzulamiso leyi ntsanana',
'tog-minordefault' => 'Барлык үзгәртүләрне килешү буенча кече дип билгеләнсен',
'tog-previewontop' => 'Үзгәртү тәрәзәсеннән өстәрәк битне алдан карау өлкәсен күрсәтелсен',
'tog-previewonfirst' => 'Үзгәртү битенә күчкәндә башта алдан карау бите күрсәтелсен',
-'tog-nocache' => 'Битләр кэшлауны тыелсын',
'tog-enotifwatchlistpages' => 'Күзәтү исемлегемдәге бит яки файл үзгәртелү турында электрон почтага хәбәр җибәрелсен',
'tog-enotifusertalkpages' => 'Бәхәс битем үзгәртелү турында электрон почтага хәбәр җибәрелсен',
'tog-enotifminoredits' => 'Кече үзгәртүләр турында да электрон почтага хәбәр җибәрелсен',
'recentchanges-label-bot' => 'Бу үзгәртү бот белән эшләнгән иде',
'recentchanges-label-unpatrolled' => 'Үзгәртүне әлегә тикшермәгәннәр',
'recentchanges-legend-newpage' => '$1 — яңа бит',
-'rcnote' => 'Аста $4 $5 вакытынна соңгы {{PLURAL:$2|1|$2}} көн эчендә булган соңгы {{PLURAL:$1|1|$1}} үзгәртмә күрсәтелә:',
'rcnotefrom' => "Астарак '''$2''' башлап ('''$1''' кадәр) үзгәртүләр күрсәтелгән.",
'rclistfrom' => '$1 башлап яңа үзгәртүләрне күрсәт',
'rcshowhideminor' => 'кече үзгәртүләрне $1',
'undeletebtn' => 'Торгызу',
'undeletelink' => 'карау/торгызу',
'undeleteviewlink' => 'карау',
-'undeletereset' => 'Ташлату',
'undeleteinvert' => 'Киресен сайлау',
'undeletecomment' => 'Сәбәп:',
'undeletedrevisions' => '{{PLURAL:$1|1 үзгәртү|$1 үзгәртү}} торгызылды',
# Block/unblock
'blockip' => 'Кулланучыны тыю',
-'blockip-title' => 'Кулланучыны тыю',
'blockip-legend' => 'Кулланучыны тыю',
'ipadressorusername' => 'IP адресы яки кулланучы исеме:',
'ipbexpiry' => 'Бетә:',
'ipbreason' => 'Сәбәп:',
-'ipbreasonotherlist' => 'Башка сәбәп',
'ipbreason-dropdown' => '* Кысуның гадәттәге сәбәпләре
** Ялган мәгълүмат кертү
** Битләрнең эчтәлеген сөртү
'ipbsubmit' => 'Бу кулланучыны тыю',
'ipbother' => 'Башка вакыт:',
'ipboptions' => '2 сәгать:2 hours,1 көн:1 day,3 көн:3 days,1 атна:1 week,2 атна:2 weeks,1 ай:1 month,3ай:3 months,6 ай:6 months,1 ел:1 year,чикләнмәгән:infinite',
-'ipbotheroption' => 'башка',
'badipaddress' => 'Ялгыш IP адресы',
'blockipsuccesssub' => 'Тыю башкарылган',
'ipb-unblock-addr' => '$1 кулланучысын тыюдан азат итү',
'watchlistall2' => 'барлык',
'namespacesall' => 'барлык',
'monthsall' => 'барлык',
-'limitall' => 'барлык',
# Delete conflict
'recreate' => 'Яңадан ясау',
# Special:ComparePages
'comparepages' => 'Битләрне чагыштыру',
-'compare-selector' => 'Битләрнең юрамаларын чагыштыру',
'compare-page1' => 'Беренче сәхифә',
'compare-page2' => 'Икенче сәхифә',
'compare-rev1' => 'Беренче юрама',
'tog-minordefault' => 'Barlıq üzgärtülärne kileşü buyınça keçe dip bilgelänsen',
'tog-previewontop' => 'Üzgärtü täräzäsennän östäräk bitne aldan qaraw ölkäsen kürsätelsen',
'tog-previewonfirst' => 'Üzgärtü bitenä küçkändä başta aldan qaraw bite kürsätelsen',
-'tog-nocache' => 'Bitlär keşlawnı tıyılsın',
'tog-enotifwatchlistpages' => 'Küzätü isemlegemdäge bit üzgärtelü turında elektron poçtağa xäbär cibärelsen',
'tog-enotifusertalkpages' => 'Bäxäs bitem üzgärtelü turında elektron poçtağa xäbär cibärelsen',
'tog-enotifminoredits' => 'Keçe üzgärtülär turında da elektron poçtağa xäbär cibärelsen',
'recentchanges-feed-description' => 'Bu ağımda soñğı üzgärtülärne küzätü.',
'recentchanges-label-newpage' => 'Bu üzgärtü belän yaña bit tözelde',
'recentchanges-label-minor' => 'Bu keçe üzgärtü',
-'rcnote' => 'Asta $4 $5 waqıtınna soñğı {{PLURAL:$2|1|$2}} kön eçendä bulğan soñğı {{PLURAL:$1|1|$1}} üzgärtmä kürsätelä:',
'rcnotefrom' => "Astaraq '''$2''' başlap ('''$1''' qädär) üzgärtülär kürsätelgän.",
'rclistfrom' => '$1 başlap yaña üzgärtülärne kürsät',
'rcshowhideminor' => 'keçe üzgärtülärne $1',
'undeletebtn' => 'Torğızu',
'undeletelink' => 'qaraw/torğızu',
'undeleteviewlink' => 'qaraw',
-'undeletereset' => 'Taşlatu',
'undeleteinvert' => 'Kiresen saylaw',
'undeletecomment' => 'Säbäp:',
'undelete-search-submit' => 'Ezläw',
# Block/unblock
'blockip' => 'Qullanuçını tıyu',
-'blockip-title' => 'Qullanuçını tıyu',
'blockip-legend' => 'Qullanuçını tıyu',
'ipadressorusername' => 'IP adresı yäki qullanuçı iseme:',
'ipbexpiry' => 'Betä:',
'ipbreason' => 'Säbäp:',
-'ipbreasonotherlist' => 'Başqa säbäp',
'ipbreason-dropdown' => '* Qısunıñ ğädättäge säbäpläre
** Yalğan mäğlümat kertü
** Bitlärneñ eçtälegen sörtü
'ipbsubmit' => 'Bu qullanuçını tıyu',
'ipbother' => 'Başqa waqıt:',
'ipboptions' => '2 säğät:2 hours,1 kön:1 day,3 kön:3 days,1 atna:1 week,2 atna:2 weeks,1 ay:1 month,3ay:3 months,6 ay:6 months,1 yıl:1 year,çiklänmägän:infinite',
-'ipbotheroption' => 'başqa',
'badipaddress' => 'Yalğış IP adresı',
'blockipsuccesssub' => 'Tıyu başqarılğan',
'ipb-unblock-addr' => '$1 qullanuçısın tıyudan azat itü',
'watchlistall2' => 'barlıq',
'namespacesall' => 'barlıq',
'monthsall' => 'barlıq',
-'limitall' => 'barlıq',
# Delete conflict
'recreate' => 'Yañadan yasaw',
'recentchanges-label-bot' => 'Бо эдилгени робот күүсеткен.',
'recentchanges-label-unpatrolled' => 'Бо өскертилге истетинмээн (патрульдаттынмаан)',
'recentchanges-legend-newpage' => '$1 — чаа арын',
-'rcnote' => "$4 $5 өйде соңгу '''$2''' {{PLURAL:$2|хонуктуң}} {{PLURAL:$1|сөөлгү '''$1''' '''өскерилгелери'''}} .",
'rcnotefrom' => 'Адаанда <strong>$2</strong> тура (<strong>$1</strong> чедир) өскертилгелерни санаан.',
'rclistfrom' => '$1 тура чаа өскерилгелерни көргүзер',
'rcshowhideminor' => 'Бичии өскерлиишкиннерни $1',
# Block/unblock
'block' => 'Ажыглакчыны кызыгаарлаары',
'blockip' => 'Ажыглакчыны кызыгаарлаары',
-'blockip-title' => 'Ажыглакчыны кызыгаарлаары',
'blockip-legend' => 'Ажыглакчыны кызыгаарлаары',
'ipadressorusername' => 'ИП-адрес азы aжыглaкчының aды',
'ipbreason' => 'Чылдагаан:',
-'ipbreasonotherlist' => 'Өске чылдагаан',
'ipbsubmit' => 'Бо ажыглакчыны кызыгаарлаары',
'ipbother' => 'Өске шак:',
'ipboptions' => '2 шак:2 hours,1 хүн:1 day,3 хүн:3 days,1 чеди-хонук:1 week,2 чеди-хонук:2 weeks,1 ай:1 month,3 ай:3 months,6 ай:6 months,1 чыл:1 year,төнмес-батпас:infinite',
-'ipbotheroption' => 'өске',
-'ipbotherreason' => 'Өске/немелде чылдагаан:',
'badipaddress' => 'Багай ИП-адрес',
'ipblocklist' => 'Kызыгаарлаттынган ажыглакчылар',
'blocklist-reason' => 'Чылдагаан',
'watchlistall2' => 'шупту',
'namespacesall' => 'шупту',
'monthsall' => 'шупту',
-'limitall' => 'шупту',
# Delete conflict
'recreate' => 'Катап чогаадыры',
# Special:ComparePages
'comparepages' => 'Арыннарны дөмейлеп көөрү',
-'compare-selector' => 'Арынның ылгалдарын дөмейлеп көөрү',
'compare-page1' => 'Арын 1',
'compare-page2' => 'Арын 2',
'compare-submit' => 'Дөмейлээри',
'tog-minordefault' => 'ھەممە تەھرىرلەشنى ئازراقلا تەھرىرگە تەڭشە',
'tog-previewontop' => 'تەھرىر رامكىسىنىڭ ئۈستىدە ئالدىن كۆزىتىشنى كۆرسەت',
'tog-previewonfirst' => 'تۇنجى قېتىم تەھرىرلىگەندە ئالدىن كۆزىتىشنى كۆرسەت',
-'tog-nocache' => 'توركۆرگۈ بەت غەملەشنى چەكلە',
'tog-enotifwatchlistpages' => 'كۆزەت تىزىملىكىمدىكى بەت ۋە ھۆججەت ئۆزگەرگەندە ئېلخەت يوللا',
'tog-enotifusertalkpages' => 'مۇنازىرە بېتىم ئۆزگەرگەندە ئېلخەت يوللا',
'tog-enotifminoredits' => 'بەت ۋە ھۆججەت ئازراقلا تەھرىرلەنگەندىمۇ ئېلخەت يوللا',
'recentchanges-label-bot' => 'بۇ تەھرىرنى ماشىنا ئادەم ئېلىپ بارغان',
'recentchanges-label-unpatrolled' => 'بۇ تەھرىر تېخى كۆزىتىلمىگەن',
'recentchanges-legend-newpage' => '$1 - يېڭى بەت',
-'rcnote' => "تۆۋەندىكى $4 $5 يېقىنقى {{PLURAL:$2|كۈن|'''$2''' كۈن}} ئىچىدىكى {{PLURAL:$1| '''1''' ئۆزگەرتىش| '''$1''' ئۆزگەرتىش}} خاتىرىسى",
'rcnotefrom' => "تۆۋەندىكىسى '''$2''' نىڭ ئۆزگەرتىشى (ئەڭ كۆپ بولغاندا '''$1''' كۆرسىتىدۇ )",
'rclistfrom' => '$1 دىن باشلانغان يېڭى ئۆزگەرتىشنى كۆرسەت',
'rcshowhideminor' => '$1 ئازراقلا تەھرىر',
'undeletebtn' => 'ئەسلىگە كەلتۈر',
'undeletelink' => 'كۆرسەت/ئەسلىگە كەلتۈر',
'undeleteviewlink' => 'كۆرۈنۈش',
-'undeletereset' => 'ئەسلىگە قايتۇر',
'undeleteinvert' => 'ئەكسىچە تاللا',
'undeletecomment' => 'سەۋەب:',
'undeletedrevisions' => '{{PLURAL:$1|1 تۈزىتىش|$1 تۈزىتىش}} ئەسلىگە كەلتۈرۈلدى',
'blanknamespace' => '(ئاساسىي)',
# Contributions
-'contributions' => '{{$1:GENDER|ئىشلەتكۈچى}} تۆھپىسى',
+'contributions' => '{{GENDER:$1|ئىشلەتكۈچى}} تۆھپىسى',
'contributions-title' => '$1 نىڭ ئىشلەتكۈچى تۆھپىسى',
'mycontris' => 'تۆھپە',
'contribsub2' => '{{GENDER:$3|$1}} ($2) ئۈچۈن',
'block' => 'ئىشلەتكۈچىنى چەكلە',
'unblock' => 'ئىشلەتكۈچىنى چەكلىمە',
'blockip' => 'چەكلەنگەن ئىشلەتكۈچى',
-'blockip-title' => 'ئىشلەتكۈچى چەكلە',
'blockip-legend' => 'چەكلەنگەن ئىشلەتكۈچى',
'blockiptext' => 'تۆۋەندىكى جەدۋەلنى ئىشلىتىپ بەلگىلىك IP ئادرېس ياكى ئىشلەتكۈچى ئاتىدىن كەلگەن يېزىش زىيارىتىنى چەكلەشكە بولىدۇ.
پەقەت بۇزغۇنچىلىكنىڭ ئالدىنى ئېلىش ھەمدە [[{{MediaWiki:Policy-url}}|تاكتىكا]].
'ipadressorusername' => 'IP ئادرېس ياكى ئىشلەتكۈچى ئاتى:',
'ipbexpiry' => 'مۇددىتى:',
'ipbreason' => 'سەۋەب:',
-'ipbreasonotherlist' => 'باشقا سەۋەب',
'ipbreason-dropdown' => '*ئادەتتىكى چەكلەش سەۋەبى
** ساختا ئۇچۇر قوشۇش
** بەت مەزمۇنىنى چىقىرىۋېتىش
'ipbsubmit' => 'بۇ ئىشلەتكۈچىنى چەكلە',
'ipbother' => 'باشقا ۋاقىت:',
'ipboptions' => '2 سائەت:2 hours,1 كۈن:1 day,3 كۈن:3 days,1 ھەپتە:1 week,2 ھەپتە:2 weeks,1 ئاي:1 month,3 ئاي:3 months,6 ئاي:6 months,1 يىل:1 year,چەكسىز:infinite',
-'ipbotheroption' => 'باشقا',
-'ipbotherreason' => 'باشقا/قوشۇمچە سەۋەب:',
'ipbhidename' => 'تەھرىر ۋە تىزىملىكتىن ئىشلەتكۈچى ئاتىنى يوشۇر',
'ipbwatchuser' => 'بۇ ئىشلەتكۈچىنىڭ ئىشلەتكۈچى بېتى ۋە مۇنازىرە بېتىنى كۆزەت',
'ipb-disableusertalk' => 'چەكلەنگەن ئىشلەتكۈچىنىڭ ئۆزىنىڭ سۆزلىشىش بېتىنى تەھرىرلىشى چەكلىنىدۇ',
'sorbsreason' => 'IP ئادرېسىڭىز {{SITENAME}} دا DNSBL تەرىپىدىن ئوچۇق ۋاكالەتچى تىزىملىكىگە قوشۇلغان.',
'sorbs_create_account_reason' => 'IP ئادرېسىڭىز {{SITENAME}} دا DNSBL تەرىپىدىن ئوچۇق ۋاكالەتچى تىزىملىكىگە قوشۇلغان.
شۇڭا سىز يېڭى ھېسابات قۇرالمايسىز.',
-'cant-block-while-blocked' => 'ئەگەر سىز چەكلەنسىڭىز باشقىلارنى چەكلىيەلمەيسىز.',
'cant-see-hidden-user' => 'سىز چەكلىمەكچى بولغان ئىشلەتكۈچى ئاللىبۇرۇن چەكلىنىپ يوشۇرۇلغان.
ھازىر سىزنىڭ ئىشلەتكۈچى يوشۇرۇش ھوقۇقىڭىز يوق، سىز بۇ چەكلەنگەن ئىشلەتكۈچىنى كۆرسىتىپ ياكى تەھرىرلىيەلمەيسىز.',
'ipbblocked' => 'سىز بااشقا ئىشلەتكۈچىنى چەكلەپ ياكى چەكلەشنى بىكار قىلالمايسىز چۈنكى ئۆزىڭىز چەكلەندىڭىز.',
'watchlistall2' => 'ھەممىسى',
'namespacesall' => 'ھەممىسى',
'monthsall' => 'ھەممىسى',
-'limitall' => 'ھەممىسى',
# Email address confirmation
'confirmemail' => 'جەزملەش ئېلخەت ئادرېسى',
'confirmemail_success' => 'ئېلخەت ئادرېسىڭىز جەزملەندى.
سىز ھازىر [[Special:UserLogin|تىزىمغا كىر]]ىپ، wiki بېكەتنى ئىشلىتەلەيسىز.',
'confirmemail_loggedin' => 'ئېلخەت ئادرېسىڭىز ھازىر جەزملەندى.',
-'confirmemail_error' => 'جەزملەش جەريانىدا خاتالىق كۆرۈلدى.',
'confirmemail_subject' => '{{SITENAME}} ئېلخەت ئادرېس جەزملەش',
'confirmemail_body' => 'IP ئادرېس $1 دىن كەلگەن ئىشلەتكۈچى (بەلكىم سىز بولۇشىڭىز مۇمكىن) {{SITENAME}} دا “$2” ھېسابات قۇردى ھەمدە بۇ ئېلخەت ئادرېسىنى تاپشۇردى.
# Special:ComparePages
'comparepages' => 'بەت سېلىشتۇر',
-'compare-selector' => 'بەتنىڭ تۈزىتىلگەن نەشرىنى سېلىشتۇر',
'compare-page1' => '1- بەت',
'compare-page2' => '2- بەت',
'compare-rev1' => 'تۈزىتىلگەن نەشرى 1',
'tog-minordefault' => 'Спочатку позначати всі зміни незначними',
'tog-previewontop' => 'Показувати попередній перегляд перед вікном редагування, а не після',
'tog-previewonfirst' => 'Показувати попередній перегляд під час першого редагування',
-'tog-nocache' => 'Відключити кешування сторінок браузером',
'tog-enotifwatchlistpages' => 'Повідомляти електронною поштою про зміну сторінки або файлу з мого списку спостереження',
'tog-enotifusertalkpages' => 'Повідомляти електронною поштою про зміну моєї сторінки обговорення',
'tog-enotifminoredits' => 'Надсилати мені електронного листа навіть при незначних редагуваннях сторінок та файлів',
'recentchanges-label-plusminus' => 'Розмір сторінки змінився на таке число байтів',
'recentchanges-legend-newpage' => '(див. також [[Special:NewPages|список нових сторінок]])',
'recentchanges-legend-plusminus' => "(''±123'')",
-'rcnote' => "{{PLURAL:$1|Остання '''$1''' зміна|Останні '''$1''' зміни|Останні '''$1''' змін}} за '''$2''' {{PLURAL:$2|день|дні|днів}}, на час $5, $4.",
'rcnotefrom' => 'Нижче відображені редагування з <strong>$2</strong> (до <strong>$1</strong>).',
'rclistfrom' => 'Показати редагування починаючи з $1.',
'rcshowhideminor' => '$1 незначні редагування',
'undeletebtn' => 'Відновити',
'undeletelink' => 'переглянути/відновити',
'undeleteviewlink' => 'переглянути',
-'undeletereset' => 'Очистити',
'undeleteinvert' => 'Інвертувати виділення',
'undeletecomment' => 'Причина:',
'undeletedrevisions' => '$1 {{PLURAL:$1|редагування|редагування|редагувань}} відновлено',
'block' => 'Заблокувати користувача',
'unblock' => 'Розблокувати користувача',
'blockip' => 'Блокування',
-'blockip-title' => 'Блокування користувача',
'blockip-legend' => 'Блокування користувача',
'blockiptext' => "Використовуйте форму нижче, щоб заблокувати можливість редагування зазначеній IP-адресі або користувачу.
Це слід робити лише для запобігання порушенням і у відповідності до [[{{MediaWiki:Policy-url}}|правил]].
'ipadressorusername' => "IP-адреса або ім'я користувача:",
'ipbexpiry' => 'Термін:',
'ipbreason' => 'Причина:',
-'ipbreasonotherlist' => 'Інша причина',
'ipbreason-dropdown' => "* Типові причини блокування
** Вставка неправильної інформації
** Видалення змісту сторінок
'ipbsubmit' => 'Заблокувати доступ цьому користувачу',
'ipbother' => 'Інший термін',
'ipboptions' => '2 години:2 hours,1 день:1 day,3 дні:3 days,1 тиждень:1 week,2 тижні:2 weeks,1 місяць:1 month,3 місяці:3 months,6 місяців:6 months,1 рік:1 year,назавжди:infinite',
-'ipbotheroption' => 'інший термін',
-'ipbotherreason' => 'Інша/додаткова причина:',
'ipbhidename' => "Приховати ім'я користувача у редагуваннях та списках",
'ipbwatchuser' => 'Додати до списку спостереження сторінку користувача і його обговорення',
'ipb-disableusertalk' => 'Заборонити користувачу редагувати свою сторінку обговорення під час блокування',
'sorbsreason' => 'Ваша IP-адреса числиться як відкритий проксі в DNSBL.',
'sorbs_create_account_reason' => 'Ваша IP-адреса числиться як відкритий проксі в DNSBL. Ви не можете створити обліковий запис.',
'xffblockreason' => 'IP-адреса в X-Forwarded-For полі заголовка, або ваша, або проксі сервера, що використовується вами, заблокована. Початкова причина блокування була:$1',
-'cant-block-while-blocked' => 'Ви не можете блокувати інших користувачів, поки ви самі заблоковані.',
'cant-see-hidden-user' => 'Користувача, якого ви хочете заблокувати, вже заблоковано та приховано. Оскільки у вас немає прав щодо приховання користувачів, ви не можете переглянути або змінити дане блокування.',
'ipbblocked' => 'Ви не можете блокувати чи розблоковувати інших користувачів, оскільки самі заблоковані',
'ipbnounblockself' => 'Ви не можете розблокувати себе',
'watchlistall2' => 'всі',
'namespacesall' => 'всі',
'monthsall' => 'всі',
-'limitall' => 'усі',
# Email address confirmation
'confirmemail' => 'Підтвердження адреси ел. пошти',
'confirmemail_needlogin' => 'Для підтвердження вашої адреси електронної пошти вам необхідно $1.',
'confirmemail_success' => 'Вашу адресу електронної пошти підтверджено.',
'confirmemail_loggedin' => 'Вашу адресу електронної пошти підтверджено.',
-'confirmemail_error' => 'Під час процедури підтвердження адреси електронної пошти сталася помилка.',
'confirmemail_subject' => '{{SITENAME}}:Запит на підтвердження адреси ел. пошти',
'confirmemail_body' => 'Хтось з IP-адресою $1 зареєстрував на сервері проекту {{SITENAME}} обліковий запис
«$2», вказавши вашу адресу електронної пошти.
'imgmultigo' => 'Перейти!',
'imgmultigoto' => 'Перейти на сторінку $1',
+# Language selector for translatable SVGs
+'img-lang-default' => '(типова мова)',
+'img-lang-info' => 'Візуалізувати це зображення у $1 $2.',
+'img-lang-go' => 'Перейти',
+
# Table pager
'ascending_abbrev' => 'зрост',
'descending_abbrev' => 'спад',
# Special:ComparePages
'comparepages' => 'Порівняння сторінок',
-'compare-selector' => 'Порівняння версій сторінок',
'compare-page1' => 'Сторінка 1',
'compare-page2' => 'Сторінка 2',
'compare-rev1' => 'Версія 1',
'tog-minordefault' => 'تمام ترمیمات کو ہمیشہ بطورِ معمولی ترمیم نشانزد کیا کرو',
'tog-previewontop' => 'تدوینی خانہ سے پہلے نمائش دکھاؤ',
'tog-previewonfirst' => 'پہلی ترمیم پر نمائش دکھاؤ',
-'tog-nocache' => 'متصفح کا صفحی ابطن سازی غیرفعال',
'tog-enotifwatchlistpages' => 'جب میری زیرِنظرفہرست پر کوئی صفحہ میں تبدیلی واقع ہو تو مجھے برقی ڈاک بھیجو',
'tog-enotifusertalkpages' => 'جب میرا تبادلۂ خیال صفحہ میں تبدیلی واقع ہو تو مجھے برقی ڈاک بھیجو',
'tog-enotifminoredits' => 'صفحات میں معمولی ترمیمات کے بارے میں بھی مجھے برقی ڈاک بھیجو',
'recentchanges-label-minor' => 'یہ ایک معمولی ترمیم ہے',
'recentchanges-label-bot' => 'یہ ایک روبالہ سے سرانجام شدہ ترمیم ہے',
'recentchanges-label-unpatrolled' => 'اس ترمیم کی اب تک مراجعت نہیں کی گئی',
-'rcnote' => "درج ذیل گزشتہ {{PLURAL:$2|دِن|'''$2''' ایام}} میں ہونے والی {{PLURAL:$1|'''ایک''' تبدیلی ہے|آخری '''$1''' تبدیلیاں ہیں}}، $5، $4.",
'rcnotefrom' => "ذیل میں '''$2''' سے کی گئی تبدیلیاں ہیں ('''$1''' تبدیلیاں دکھائی جارہی ہیں)۔",
'rclistfrom' => '$1 سےنئی تبدیلیاں دکھانا شروع کریں',
'rcshowhideminor' => 'معمولی ترامیم $1',
'tog-minordefault' => 'Sukut boʻyicha barcha tahrirlarimni «kichik tahrir» etib belgilash',
'tog-previewontop' => 'Tahrir oynasi tepasida koʻrib chiqish',
'tog-previewonfirst' => 'Tahrirlashga oʻtiboq koʻrib chiqishni boshlash',
-'tog-nocache' => 'Brauzer sahifalarni kesh xotirasida saqlamasin',
'tog-enotifwatchlistpages' => 'Kuzatuv roʻyxatimdagi sahifa yoki fayllar oʻzgartirilsa, menga bu haqda xat yuborilsin',
'tog-enotifusertalkpages' => 'Munozara sahifam oʻzgartirilsa, menga bu haqda xat yuborilsin',
'tog-enotifminoredits' => 'Kichik tahrir qilinsa ham e-pochtamga bu haqda xat yuborilsin',
'recentchanges-label-minor' => 'Bu kichik tahrir',
'recentchanges-label-bot' => 'Bu tahrirni bot bajardi',
'recentchanges-label-unpatrolled' => 'Bu tahrir hali tekshirilmagan',
-'rcnote' => "Quyida $4, $5 koʻra oxirgi '''$2''' kun ichida sodir boʻlgan {{PLURAL:$1|'''bitta''' oʻzgarish|'''$1''' ta oʻzgarish}} koʻrsatilgan.",
'rcnotefrom' => "Quyida <strong>$2</strong> dan (<strong>$1</strong> gacha) bo'lgan o'zgarishlar keltirilgan.",
'rclistfrom' => '$1 dan boshlab yangi oʻzgarishlarni koʻrsat.',
'rcshowhideminor' => 'Kichik tahrirlarni $1',
'undeletebtn' => 'Tiklash',
'undeletelink' => 'ko‘rib chiqish/tiklash',
'undeleteviewlink' => 'koʻrib chiqish',
-'undeletereset' => 'Tozalash',
'undeleteinvert' => 'Tanlash tartibini almashtirish',
'undeletecomment' => 'Sabab:',
'undelete-search-title' => "O'chirilgan sahifalarni qidirish",
'block' => 'Foydalanuvchini muhosara qilish',
'unblock' => "Foydalanuvchiga yo'l ochish",
'blockip' => 'Foydalanuvchini chetlashtir',
-'blockip-title' => 'Foydalanuvchini muhosara qilish',
'blockip-legend' => 'Foydalanuvchini muhosara qilish',
'ipadressorusername' => 'IP-manzil yoki foydalanuvchi nomi:',
'ipbexpiry' => 'Tugaydi:',
'ipbreason' => 'Sabab:',
-'ipbreasonotherlist' => 'Boshqa sabab',
'ipbreason-dropdown' => "* Chetlashtirishning andazaviy sabablari
** Yolg'on axborot kiritish
** Sahifa matnini o'chirish
'ipbsubmit' => 'Ushbu foydalanuvchini chetlashtirish',
'ipbother' => 'Boshqa vaqt:',
'ipboptions' => '2 soat:2 hours,1 kun:1 day,3 kun:3 days,1 hafta:1 week,2 hafta:2 weeks,1 oy:1 month,3 oy:3 months,6 oy:6 months,1 yil:1 year,cheksiz:infinite',
-'ipbotheroption' => 'boshqa',
-'ipbotherreason' => 'Boshqa/qo‘shimcha sabab',
'ipb-edit-dropdown' => 'Sabablar ro‘yxatini tahrirlash',
'ipb-unblock-addr' => '$1dan toʻsiqni olish',
'unblockip' => 'Foydalanuvchidan to‘siqni olib tashlash',
'tog-minordefault' => 'Segna ogni canbiamento come picenin (solo come predefinìo)',
'tog-previewontop' => "Mostra l'anteprima sora ła caseła de modifega e no soto",
'tog-previewonfirst' => "Mostra l'anteprima par ła prima modifega",
-'tog-nocache' => 'Disativa ła cache par łe pajine del browser',
'tog-enotifwatchlistpages' => "Segnałame via e-mail có vien canbià na pàjina o un file prexente inte ła lista de łe tegnùe d'ocio",
'tog-enotifusertalkpages' => 'Avìseme par e-mail se i scrive su la me pagina de discussion',
'tog-enotifminoredits' => "Avìxeme par e-mail anca pa' i canbiamenti picenini de pàjine e file",
'youhavenewmessages' => 'Te ghè $1 ($2).',
'youhavenewmessagesfromusers' => "Te ghè $1 da {{PLURAL:$3|n'altro utente|$3 utenti}} ($2).",
'youhavenewmessagesmanyusers' => 'Te ghè $1 da vari utenti ($2).',
-'newmessageslinkplural' => '{{PLURAL:$1|un messagio novo|dei messagi novi}}',
-'newmessagesdifflinkplural' => '$1 {{PLURAL:$1|ultimo canbiamento|ultimi canbiamenti}}',
+'newmessageslinkplural' => '{{PLURAL:$1|un messagio novo|999=dei messagi novi}}',
+'newmessagesdifflinkplural' => '$1 {{PLURAL:$1|ultimo canbiamento|999=ultimi canbiamenti}}',
'youhavenewmessagesmulti' => 'Te ghè messagi novi su $1',
'editsection' => 'canbia',
'editold' => 'canbia',
# General errors
'error' => 'Erore',
'databaseerror' => 'Erore del database',
+'databaseerror-function' => 'Funsion: $1',
+'databaseerror-error' => 'Eror: $1',
'laggedslavemode' => "'''Atension:''' ła pajina podaria no riportare i azornamenti pì resenti.",
'readonly' => 'Database blocà',
'enterlockreason' => 'Indicare el motivo del bloco, spesifegando el momento in cui xè presumibiłe che el venga rimoso',
'gotaccount' => "Sito zà iscrito? '''$1'''.",
'gotaccountlink' => 'Entra',
'userlogin-resetlink' => "Desmentegà i to dati d'aceso?",
-'userlogin-resetpassword-link' => 'Reinposta la to password',
+'userlogin-resetpassword-link' => "Te gheto desmentegà ła paroła d'ordine?",
'helplogin-url' => 'Help:Login',
'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|Ajuto col login]]',
'createacct-join' => 'Meti le to informassion qua soto.',
'createacct-emailrequired' => 'Indirisso e-mail',
'createacct-emailoptional' => 'Indiriso e-mail (opsionałe)',
'createacct-email-ph' => 'Inserissi el to indirizo de e-mail',
+'createacct-another-email-ph' => "Inserissi l'indirizo de e-mail",
'createaccountmail' => 'Dopara na password caxuałe tenporanea e inviała al indiriso e-mail spesifegà cuà soto',
'createacct-realname' => 'Nome reale (opsionale)',
'createaccountreason' => 'Motivassion:',
Pararìa che la sìpia stà scancelà.',
'edit-conflict' => 'Conflito de modifica.',
'edit-no-change' => 'La to modifica la xe stà ignorà, parché no ti gà canbià gnente nel testo.',
+'postedit-confirmation' => 'La modifica la xe stà salvà.',
'edit-already-exists' => 'No se pol crear na pagina nova.
La esiste de zà.',
'defaultmessagetext' => 'Testo predefinìo',
'recentchanges-label-minor' => 'Sto qua el xe un canbiamento picenin',
'recentchanges-label-bot' => 'Sta modifica el la ga fata un bot',
'recentchanges-label-unpatrolled' => 'Sta modifica no la xe stà gnancora verificà',
-'recentchanges-legend-newpage' => '$1 - pagina nova',
-'rcnote' => "Qua soto se vede {{PLURAL:$1|l'ultimo canbiamento|i ultimi '''$1''' canbiamenti}} {{PLURAL:$2|in te l'ultimo zorno|in tei ultimi '''$2''' zorni}}, fin a le $5 del $4.",
+'recentchanges-label-plusminus' => 'La dimension de la pagina la xe canbià de sto nùmaro de byte',
+'recentchanges-legend-newpage' => "(varda anca [[Special:NewPages|l'elenco de le pagine nove]])",
'rcnotefrom' => "Qui di seguito sono elencate le modifiche da '''$2''' (fino a '''$1''').",
'rclistfrom' => 'Fà védar i canbiamenti fati dal $1',
'rcshowhideminor' => '$1 i canbiamenti picenini',
'undeletebtn' => 'RIPRISTINA!',
'undeletelink' => 'varda/ripristina',
'undeleteviewlink' => 'varda',
-'undeletereset' => 'Reinposta',
'undeleteinvert' => 'Inverti selession',
'undeletecomment' => 'Motivassion:',
'undeletedrevisions' => '{{PLURAL:$1|Una revision recuperà|$1 revision recuperà}}',
'block' => 'Bloca utente',
'unblock' => 'Sbloca utente',
'blockip' => 'Bloco utente',
-'blockip-title' => "Bloca l'utente",
'blockip-legend' => "Bloca l'utente",
'blockiptext' => "Dòpara el moduło qua soto par blocar l'accesso in scritura a un speçifico utente o indirizo IP. El bloco el gà de èssar operà par prevegner ati de vandalismo e in streta osservansa de ła [[{{MediaWiki:Policy-url}}|policy de {{SITENAME}}]]. Speçifica in detałio el motivo del bloco nel canpo seguente (ad es. indicando i titołi de łe pàxene ogeto de vandalismo).",
'ipadressorusername' => 'Indirizo IP o nome utente',
'ipbexpiry' => 'Scadensa',
'ipbreason' => 'Motivassion:',
-'ipbreasonotherlist' => 'Altra motivazion',
'ipbreason-dropdown' => '*Motivazion piassè comuni par i blocchi
** Inserimento de informazion false
** Rimozion de contenuti da le pagine
'ipbsubmit' => 'Bloca sto indirisso IP',
'ipbother' => 'Altra durata:',
'ipboptions' => '2 ore:2 hours,1 zorno:1 day,3 zorni:3 days,1 setimana:1 week,2 setimane:2 weeks,1 mese:1 month,3 mesi:3 months,6 mesi:6 months,1 ano:1 year,infinìo:infinite',
-'ipbotheroption' => 'altro',
-'ipbotherreason' => 'Altri motivi/detagli:',
'ipbhidename' => 'Scondi el nome utente da le modìfeghe e da i elenchi.',
'ipbwatchuser' => "Tien d'ocio la pagina utente e la pagina de discussion de sto utente",
'ipb-disableusertalk' => "Inpedissi a sto utente de modifegar la propia pajina de discussion mentre l'è blocà",
'sorbsreason' => 'Sto indirizo IP el xe elencà come proxy verto ne la lista nera DNSBL doparà da {{SITENAME}}.',
'sorbs_create_account_reason' => 'No se pol crear acessi novi da sto indirizo IP parché el xe elencà come proxy verto ne la lista nera DNSBL doparà da {{SITENAME}}.',
'xffblockreason' => "Un indiriso IP presente ne l'intestasion X-Forwarded-For, tuo o del server proxy che te sì drio doparar, el xe stà blocà. La motivasion originale del bloco la xe: $1",
-'cant-block-while-blocked' => 'No se pode blocar altri utenti finché se xe blocài.',
'cant-see-hidden-user' => "L'utente che te vol blocar el xe zà stà blocà e sconto. Sicome a no te ghè mia i diriti de hideuser, no te pol mia védar o canbiar el bloco de l'utente.",
'ipbblocked' => 'No te pui blocare o sblocare altri utenti, parché ti steso te si blocà',
'ipbnounblockself' => 'No te pui sblocare ti steso',
'watchlistall2' => 'tute',
'namespacesall' => 'Tuti',
'monthsall' => 'tuti',
-'limitall' => 'tuti quanti',
# Email address confirmation
'confirmemail' => 'Conferma indirisso e-mail',
'confirmemail_needlogin' => 'Xè necessario $1 par confermare el proprio indirisso e-mail.',
'confirmemail_success' => "El to indirisso email l'è stado confermà. Ora te podi loggarte e gòderte la wiki.",
'confirmemail_loggedin' => 'El to indirisso email el xè stà confermà.',
-'confirmemail_error' => "Qualcossa l'è andà storto nel salvar la to conferma.",
'confirmemail_subject' => "{{SITENAME}}: e-mail par la conferma de l'indirisso",
'confirmemail_body' => 'Qualcheduni, probabilmente ti stesso da l\'indirizo IP $1, el ga registrà n\'account "$2" con sto indirizo e-mail su {{SITENAME}}.
# Special:ComparePages
'comparepages' => 'Confronta le pagine',
-'compare-selector' => 'Confronta le revision de na pagina',
'compare-page1' => 'Pagina 1',
'compare-page2' => 'Pagina 2',
'compare-rev1' => 'Revisión 1',
'tog-minordefault' => 'Znamoita äugotižjärgendusen mödhe kaik toižetused penikš',
'tog-previewontop' => 'Panda ezikacund redaktiruindan iknan edehe',
'tog-previewonfirst' => 'Ozutada ezikacund redaktiruindan augotades',
-'tog-nocache' => "Kel'ta lehtpoliden keširuind",
'tog-enotifwatchlistpages' => 'Oigekat minei e-počt, konz lehtpoled minun kaclendnimikirjutesespäi toižetase',
'tog-enotifusertalkpages' => "Oigeta minei e-počt, konz minun lodulehtpol' toižetase",
'tog-enotifminoredits' => 'Oigeta minei e-počt eskai siloi, konz toižetused oma minimaližed',
'recentchanges-label-bot' => 'Necen redakcijan tegi bot',
'recentchanges-label-unpatrolled' => 'Necidä redakcijad ei völ patruliruinugoi',
'recentchanges-legend-newpage' => "$1 - uz' lehtpol'",
-'rcnote' => "Alahan om ozutadud {{PLURAL:$1| '''1''' toižetuz|'''$1''' toižetust}} {{PLURAL:$2|jäl'gmäižes päiväs|jäl'gmäižiš '''$2''' päiviš}}, aigal $5, $4.",
'rcnotefrom' => "Alemba oma anttud toižetused '''$2'''-späi ( '''$1'''-hesai).",
'rclistfrom' => 'Ozutada uded toižetused dataspäi $1 augotaden',
'rcshowhideminor' => '$1 pened redakcijad',
'undeletebtn' => 'Endištada',
'undeletelink' => 'endištada',
'undeleteviewlink' => 'nähta',
-'undeletereset' => 'Puhtastada',
'undeleteinvert' => 'Käta erigoittud sanad vastkarin',
'undeletecomment' => 'Kommentarii:',
'undeletedrevisions' => '{{PLURAL:$1|1 toižetuz|$1 toižetust}} om endištadud',
'block' => 'Kävutajan blokiruind',
'unblock' => 'Heitta blokiruind ühtnijalpäi',
'blockip' => 'Blokiruida kävutajad',
-'blockip-title' => 'Blokiruida kävutajad',
'blockip-legend' => 'Blokiruida kävutajad',
'blockiptext' => 'Kävutagat alemba anttud form, miše blokiruida kirjutandan voimuz märitud IP-adresaspäi.
Nece sab tehta vaiše sen täht, miše borcuidas vandalizmanke, kut om kirjutadud [[{{MediaWiki:Policy-url}}|ohjandimiš]].
'ipadressorusername' => 'IP-adres vai kävutajan nimi:',
'ipbexpiry' => 'Lopindan strok:',
'ipbreason' => 'Sü:',
-'ipbreasonotherlist' => 'Toine sü',
'ipbreason-dropdown' => "*Blokiruindan päsüd
** Väran informacijan andand
** Lehtpoliden südäimišton čudand
'ipbsubmit' => 'Blokiruida nece kävutai',
'ipbother' => 'Toine aig:',
'ipboptions' => "2 časud:2 hours,1 päiv:1 day,3 päiväd:3 days,1 nedal':1 week,2 nedalid:2 weeks,1 ku:1 month,3 kud:3 months,6 kud:6 months,1 voz':1 year,strokuta:infinite",
-'ipbotheroption' => 'toine',
-'ipbotherreason' => 'Toine sü/Ližasü:',
'ipbhidename' => 'Peitta kävutajan nimi redakcijoišpäi da nimikirjutesišpäi',
'ipbwatchuser' => "Kacelta necen kävutajan personališt lehtpol't da lodulehtpol't",
'ipb-change-block' => 'Blokirujda kävutajad udes neniden järgendusidenke',
'proxyblockreason' => 'Teiden IP-adres om blokiruidud, sikš miše se om avoin proksi.
Olgat hüväd, säkat pagin teiden Internet-provaideranke i kirjutagat hänele necen varuitomuden problemas.',
'sorbsreason' => 'Teiden IP-adres om ozutadud kut avaitud proksi {{SITENAME}}-saitan DNSBL-an mustas nimikirjuteses.',
-'cant-block-while-blocked' => 'Teile ei sa blokiruida toižid kävutajid, sikš miše tö iče olet blokiruidud.',
# Developer tools
'lockdb' => 'Luklostada andmusiden baz',
'watchlistall2' => 'kaik',
'namespacesall' => 'kaik',
'monthsall' => 'kaik',
-'limitall' => 'kaik',
# Email address confirmation
'confirmemail' => 'Vahvištoitta e-počtan adres',
'confirmemail_success' => "Teiden e-počtan adres om vahvištoittud.
Nügüd' tö voit [[Special:UserLogin|kirjutadas sistemha]] da rata wikiš.",
'confirmemail_loggedin' => 'Teiden e-počtan adres om vahvištoittud.',
-'confirmemail_error' => 'Teiden e-počtan adresan vahvištoitandan aigan ozaižihe petuz.',
'confirmemail_subject' => '{{SITENAME}}-sait paikičeb teid vahvištoitta teiden e-počtan adres',
'confirmemail_body' => 'Ken-se, voib olda, tö, om sänu "$2"-registracijan {{SITENAME}}-saital. Se ristit om kävutanu IP-adresan "$1" da necen e-počtan adresan.
# Special:ComparePages
'comparepages' => 'Lehtpoliden rindatuz',
-'compare-selector' => 'Lehtpoliden versijoiden rindatuz',
'compare-page1' => "Ezmäine lehtpol'",
'compare-page2' => "Toine lehtpol'",
'compare-rev1' => 'Ezmäine versii',
'tog-minordefault' => 'Mặc định đánh dấu tất cả sửa đổi của tôi là sửa đổi nhỏ',
'tog-previewontop' => 'Hiển thị phần xem trước nằm trên hộp sửa đổi',
'tog-previewonfirst' => 'Hiện xem trước tại lần sửa đầu tiên',
-'tog-nocache' => 'Không lưu trang trong bộ nhớ đệm trình duyệt',
'tog-enotifwatchlistpages' => 'Gửi thư cho tôi khi có thay đổi tại trang hoặc tập tin tôi theo dõi',
'tog-enotifusertalkpages' => 'Gửi thư cho tôi khi có thay đổi tại trang thảo luận của tôi',
'tog-enotifminoredits' => 'Gửi thư cho tôi cả những thay đổi nhỏ trong trang và tập tin',
'recentchanges-label-plusminus' => 'Kích cỡ trang đã thay đổi bằng số byte này',
'recentchanges-legend-newpage' => '(xem thêm [[Special:NewPages|danh sách các trang mới]])',
'recentchanges-legend-plusminus' => "(''±123'')",
-'rcnote' => "Dưới đây là {{PLURAL:$1|thay đổi '''duy nhất'''|'''$1''' thay đổi gần nhất}} trong {{PLURAL:$2|ngày qua|'''$2''' ngày qua}}, tính tới $5 lúc $4.",
'rcnotefrom' => "Thay đổi từ '''$2''' (hiển thị tối đa '''$1''' thay đổi).",
'rclistfrom' => 'Hiển thị các thay đổi từ $1.',
'rcshowhideminor' => '$1 sửa đổi nhỏ',
'undeletebtn' => 'Phục hồi',
'undeletelink' => 'xem lại/phục hồi',
'undeleteviewlink' => 'xem',
-'undeletereset' => 'Tẩy trống',
'undeleteinvert' => 'Đảo sự lựa chọn',
'undeletecomment' => 'Lý do:',
'undeletedrevisions' => '$1 {{PLURAL:$1|bản|bản}} được phục hồi',
'block' => 'Cấm người dùng',
'unblock' => 'Bỏ cấm người dùng',
'blockip' => 'Cấm người dùng',
-'blockip-title' => 'Cấm người dùng',
'blockip-legend' => 'Cấm người dùng',
'blockiptext' => 'Dùng mẫu dưới để cấm một địa chỉ IP hoặc thành viên không được viết trang.
Điều này chỉ nên làm để tránh phá hoại, và phải theo [[{{MediaWiki:Policy-url}}|quy định]].
'ipadressorusername' => 'Địa chỉ IP hay tên thành viên:',
'ipbexpiry' => 'Thời hạn:',
'ipbreason' => 'Lý do:',
-'ipbreasonotherlist' => 'Lý do khác',
'ipbreason-dropdown' => '*Một số lý do cấm thường gặp
** Phá hoại
** Thêm thông tin sai lệch
'ipbsubmit' => 'Cấm',
'ipbother' => 'Thời hạn khác:',
'ipboptions' => '2 giờ:2 hours,1 ngày:1 day,3 ngày:3 days,1 tuần:1 week,2 tuần:2 weeks,1 tháng:1 month,3 tháng:3 months,6 tháng:6 months,1 năm:1 year,vô hạn:infinite',
-'ipbotheroption' => 'khác',
-'ipbotherreason' => 'Lý do khác',
'ipbhidename' => 'Ẩn tên người dùng ra khỏi các sửa đổi và danh sách',
'ipbwatchuser' => 'Theo dõi trang thành viên và thảo luận thành viên của thành viên này',
'ipb-disableusertalk' => 'Không cho người dùng này sửa trang thảo luận thành viên của họ khi bị cấm',
'sorbsreason' => 'Địa chỉ IP của bạn bị liệt kê là một proxy mở trong DNSBL mà {{SITENAME}} đang sử dụng.',
'sorbs_create_account_reason' => 'Địa chỉ chỉ IP của bạn bị liệt kê là một proxy mở trong DNSBL mà {{SITENAME}} đang sử dụng. Bạn không thể mở tài khoản.',
'xffblockreason' => 'Đầu đề X-Forwarded-For chứa một địa chỉ IP đã bị cấm, địa chỉ này hoặc của bạn hoặc của một máy chủ proxy bạn đang sử dụng. Lý do cấm ban đầu là: $1',
-'cant-block-while-blocked' => 'Bạn không thể cấm thành viên khác trong khi bạn đang bị cấm.',
'cant-see-hidden-user' => 'Thành viên bạn muốn cấm đã bị cấm trước đây hoặc đã bị ẩn đi. Vì bạn không có quyền hideuser, bạn không thể xem hoặc thay đổi mức cấm của thành viên.',
'ipbblocked' => 'Bạn không thể cấm hay bỏ cấm người dùng khác vì chính bạn đang bị cấm.',
'ipbnounblockself' => 'Bạn không được bỏ cấm chính mình.',
'watchlistall2' => 'tất cả',
'namespacesall' => 'tất cả',
'monthsall' => 'tất cả',
-'limitall' => 'tất cả',
# Email address confirmation
'confirmemail' => 'Xác nhận thư điện tử',
'confirmemail_needlogin' => 'Bạn cần phải $1 để xác nhận địa chỉ thư điện tử.',
'confirmemail_success' => 'Thư điện tử của bạn đã được xác nhận. Bạn đã có thể đăng nhập và bắt đầu sử dụng wiki.',
'confirmemail_loggedin' => 'Địa chỉ thư điện tử của bạn đã được xác nhận.',
-'confirmemail_error' => 'Có trục trặc khi lưu xác nhận của bạn.',
'confirmemail_subject' => 'Xác nhận thư điện tử tại {{SITENAME}}',
'confirmemail_body' => 'Ai đó, có thể là bạn, từ địa chỉ IP $1,
đã mở tài khoản có tên "$2" với địa chỉ thư điện tử này tại {{SITENAME}}.
'imgmultigo' => 'Xem',
'imgmultigoto' => 'Đi đến trang $1',
+# Language selector for translatable SVGs
+'img-lang-default' => '(ngôn ngữ mặc định)',
+'img-lang-info' => 'Kết xuất hình này trong $1 $2.',
+'img-lang-go' => 'Xem',
+
# Table pager
'ascending_abbrev' => 'tăng',
'descending_abbrev' => 'giảm',
# Special:ComparePages
'comparepages' => 'So sánh trang',
-'compare-selector' => 'So sánh phiên bản trang',
'compare-page1' => 'Trang 1',
'compare-page2' => 'Trang 2',
'compare-rev1' => 'Phiên bản 1',
'tog-minordefault' => 'Ale maj ändrungn soln als glaane geldn',
'tog-previewontop' => 'Foorschau owârhalb un ned undârhalb fom arbajds-fenschdâr',
'tog-previewonfirst' => 'Baj dr ärschdn ändrung imâr ärschd â foorschau ôôdsajchn',
-'tog-nocache' => 'Sajdn-cache ausschaldn',
'tog-enotifwatchlistpages' => 'Ii wil â iimejl griign, wen sich was beoobachdeds ändârd',
'tog-enotifusertalkpages' => 'Ii wil â iimejl griign, wen sich uf majnâr disghusjoons-sajdn was duud',
'tog-enotifminoredits' => 'I wil aa baj bloos glaanân ädrungn â iimejl griign',
'recentchanges-label-minor' => 'Blos a weng wôs is gändârd wôrn',
'recentchanges-label-bot' => 'Ändrung durch an Bot',
'recentchanges-label-unpatrolled' => 'Net-kondrollierde Ändrung',
-'rcnote' => "Des {{Plural:$1|is dii aane ändrung|sin dii '''$1''' ändrunga}}, dii in di {{Plural:$2|ledsdn 24 schdundn|ledsdn '''$2''' doochn}} gmachd wôrn {{Plural:$1|is|sin}}. Schdand is fom $4, $5 uur.",
'rcnotefrom' => "Oozeichd werrn däi Ändrunga seid '''$2''' (max. '''$1''' Eidrääch).",
'rclistfrom' => 'Bloos di ändrunga dsajchn sajd $1',
'rcshowhideminor' => 'Glenâre Ändrungn $1',
# Block/unblock
'blockip' => 'IP-Adressn odr ôôgmeldn aus-schbärn',
-'blockip-title' => 'Bearbajdâr aus-schbärn',
'blockip-legend' => 'IP-Adresn odr Bearbajdâr aus-schbärn',
'ipboptions' => '2 schdund:2 hours,1 dooch:1 day,3 dooch:3 days,1 wochng:1 week,2 wochng:2 weeks,1 moonad:1 month,3 moonad:3 months,6 moonad:6 months,1 jôôr:1 year,oone dsajdschrangng:infinite',
'ipblocklist' => 'Gschberrder Nutzer',
'tog-minordefault' => 'Bepenön redakamis no pebepenölis valikis asä pülikis',
'tog-previewontop' => 'Jonön büologedi bü redakaspad',
'tog-previewonfirst' => 'Jonön büologedi pö redakam balid',
-'tog-nocache' => 'Nejäfidükön el "cache" padas in bevüresodatävöm',
'tog-enotifwatchlistpages' => 'Sedön obe penedi leäktronik ven ek votükon padi u ragivi se galädalised obik',
'tog-enotifusertalkpages' => 'Sedön obe penedi leäktronik ven gebanapad obik pavotükon',
'tog-enotifminoredits' => 'Sedön obe penedi leäktronik igo pö votükams pülik padas e ragivas',
'recentchanges-label-bot' => 'Redakam at pädunon fa el bot',
'recentchanges-label-unpatrolled' => 'Redakam at no nog pekontrolon',
'recentchanges-legend-newpage' => '$1 - pad nulik',
-'rcnote' => "Dono {{PLURAL:$1|binon votükam '''1'''|binons votükams '''$1'''}} lätikün {{PLURAL:$2|dela|delas '''$2'''}} lätikün, pänumädöls tü $5, $4.",
'rcnotefrom' => "Is palisedons votükams sis '''$2''' (jü '''$1''').",
'rclistfrom' => 'Jonön votükamis nulik, primölo tü düp $1',
'rcshowhideminor' => '$1 votükamis pülik',
'undeletebtn' => 'Sädunön moükami',
'undeletelink' => 'logön/sädunön',
'undeleteviewlink' => 'logön',
-'undeletereset' => 'Vagükolöd vali',
'undeleteinvert' => 'Väli güükön',
'undeletecomment' => 'Kod:',
'undeletedrevisions' => 'Moükam {{PLURAL:$1|revida 1 pesädunon|revidas $1 pesädunons}}',
'block' => 'Blokön gebani',
'unblock' => 'Säblokön gebani',
'blockip' => 'Blokön gebani',
-'blockip-title' => 'Blokön gebani',
'blockip-legend' => 'Blokön gebani',
'blockiptext' => 'Gebolös padi at ad blokön redakamagitäti gebananema u ladeta-IP semikas. Atos söton padunön teiko ad vitön vandalimi, e bai [[{{MediaWiki:Policy-url}}|dunalesets {{SITENAME}}]]. Penolös dono kodi patik pro blokam (a. s., mäniotolös padis pedobüköl).',
'ipadressorusername' => 'Ladet-IP u gebananem',
'ipbexpiry' => 'Dü',
'ipbreason' => 'Kod:',
-'ipbreasonotherlist' => 'Kod votik',
'ipbreason-dropdown' => '*Blokamakods suvik:
** Läükam nünas neverätik
** Moükam ninäda se pads
'ipbsubmit' => 'Blokön gebani at',
'ipbother' => 'Dul votik',
'ipboptions' => 'düps 2:2 hours,del 1:1 day,dels 3:3 days,vig 1:1 week,vigs 2:2 weeks,mul 1:1 month,muls 3:3 months,muls 6:6 months,yel 1:1 year,laidüp:infinite',
-'ipbotheroption' => 'dul votik',
-'ipbotherreason' => 'Kod(s) votik',
'ipbhidename' => 'Klänedön gebananemi se redakams e liseds',
'ipbwatchuser' => 'Galädon gebana- e bespikapadis gebana at',
'ipb-change-block' => 'Dönublokön gebani me paramets at',
'sorbsreason' => 'Ladet-IP olik palisedon as pladulöm maifik pö el DNSBL fa {{SITENAME}} pageböl.',
'sorbs_create_account_reason' => 'Ladet-IP olik palisedon as pladulöm maifik pö el DNSBL fa {{SITENAME}} pageböl.
No dalol jafön kali.',
-'cant-block-while-blocked' => 'No dalol blokön gebanis votik bi peblokol it.',
# Developer tools
'lockdb' => 'Lökofärmükön nünodemi',
'watchlistall2' => 'valikis',
'namespacesall' => 'valik',
'monthsall' => 'valik',
-'limitall' => 'valikis',
# Email address confirmation
'confirmemail' => 'Fümedolös ladeti leäktronik',
'confirmemail_needlogin' => 'Nedol $1 ad fümedön ladeti leäktronik ola.',
'confirmemail_success' => 'Ladet leäktronik ola pefümedon. Nu kanol nunädön oli e juitön vüki at.',
'confirmemail_loggedin' => 'Ladeti leäktronik ola nu pefümedon.',
-'confirmemail_error' => 'Bos no eplöpon pö registaram fümedama olik.',
'confirmemail_subject' => 'Fümedam ladeta leäktronik pro: {{SITENAME}}',
'confirmemail_body' => 'Ek, bo ol, se ladet-IP: $1, ejafon kali: „$2‟ me ladeti leäktronik at lä {{SITENAME}}.
'recentchanges-label-minor' => 'Kase on peeni muutuz',
'recentchanges-label-bot' => 'Kase kõrjauz on robotaka lootu',
'recentchanges-label-unpatrolled' => 'Kasta kõrjaussa eb tarkisõtti veel',
-'rcnote' => 'Alla on {{PLURAL:$1|ühsi muutuz|viimeiziit $1 muutussiit}} viimeize {{PLURAL:$2|ühee päivää|$2 päivää}}, $4 $5.',
'rcnotefrom' => 'Alapallõ õlla lugõtõltu muuttamizõd $2-lt ($1-lõssaa)',
'rclistfrom' => 'Näüt uuvvõd muutuhsõd $1 alguss',
'rcshowhideminor' => '$1 peened muutussõd',
'blockip' => 'Piättee cäüttijää',
'ipbreason' => 'Süü:',
'ipboptions' => '2 tunnia:2 hours,1 päivä:1 day,3 päivää:3 days,1 näteľi:1 week,2 näteľiä:2 weeks,1 kuu:1 month,3 kuut:3 months,6 kuut:6 months,1 voosi:1 year,iciin:infinite',
-'ipbotheroption' => 'muu',
'ipblocklist' => 'Piäteltüd IP-adressid ja cäüttijänimed',
'blocklist-reason' => 'Süü',
'ipblocklist-submit' => 'Etsi',
'watchlistall2' => 'koko istori',
'namespacesall' => 'kõik',
'monthsall' => 'kõik',
-'limitall' => 'kõik',
# action=purge
'confirm_purge_button' => 'OK',
'tog-minordefault' => 'Märgiq kõik parandusõq vaikimiisi väikeisis paranduisis',
'tog-previewontop' => 'Näütäq proovikaehust inne, mitte perän toimõnduskasti',
'tog-previewonfirst' => 'Näütäq edimädse toimõndusõ aigo proovikaehust',
-'tog-nocache' => 'Pästku-i lehekülgi võrgokaeja vaihõmällo',
'tog-enotifwatchlistpages' => 'Saadaq mullõ e-kiri, ku muq perräkaetavat lehte vai teedüstüt muudõtas',
'tog-enotifusertalkpages' => 'Saadaq mullõ e-kiri, ku mu arotuslehte muudõtas',
'tog-enotifminoredits' => 'Saadaq mullõ e-kiri ka lehti ja failõ väikeisi muutmiisi kotsilõ',
'recentchanges-label-minor' => 'Taa om väiku parandus',
'recentchanges-label-bot' => "Seo muutmisõ tekk' robot",
'recentchanges-label-unpatrolled' => 'Seod muutmist olõ-õi viil üle kaet',
-'rcnote' => 'Tan ommaq {{PLURAL:$1|üts muutus|$1 viimäst muutmist}}, miä ommaq tettüq {{PLURAL:$2|üte viimädse päävä|$2 viimädse päävä}} seen (kuupääväst $5, $4 lugõma naatõn).',
'rcnotefrom' => "Tan ommaq muutmisõq kuupääväst '''$2''' pääle (näüdätäs kooniq '''$1''' muutmist).",
'rclistfrom' => 'Näütäq muutmiisi kuupääväst $1 pääle',
'rcshowhideminor' => '$1 väikuq parandusõq',
'undeletebtn' => 'Tiiq tagasi',
'undeletelink' => 'kaeq/tiiq tagasi',
'undeleteviewlink' => 'näütäq',
-'undeletereset' => 'Tiiq tühäs',
'undeletecomment' => 'Kommõntaar:',
'undeletedrevisions' => '$1 {{PLURAL:$1|kujo|kujjo}} tagasi tett',
'undeletedrevisions-files' => '$1 {{PLURAL:$1|kujo|kujjo}} ja $2 {{PLURAL:$2|teedüstü|teedüstüt}} tagasi tett',
'ipadressorusername' => 'Puutri võrgoaadrõs vai pruukjanimi',
'ipbexpiry' => 'Tähtaig',
'ipbreason' => 'Põhjus:',
-'ipbreasonotherlist' => 'Muu põhjus',
'ipbreason-dropdown' => "*Hariliguq kinniqpidämise põhjusõq
** Võlss teedüse kirotaminõ
** Lehti sisu ärqkistutaminõ
'ipbsubmit' => 'Piäq taa aadrõs kinniq',
'ipbother' => 'Muu tähtaig',
'ipboptions' => '2 tunni:2 hours,1 päiv:1 day,3 päivä:3 days,1 nätäl:1 week,2 nädälälit:2 weeks,1 kuu:1 month,3 kuud:3 months,6 kuud:6 months,1 aastak:1 year,igävene:infinite',
-'ipbotheroption' => 'Muu tähtaig',
-'ipbotherreason' => 'Muu põhjus',
'ipbhidename' => 'Käkiq pruukjanimi vai puutri võrgoaadrõs ärq kinniqpidämis-, toimõndus-, ja pruukjanimekiräst',
'badipaddress' => 'Puutri võrgoaadrõs om võlssi kirotõt.',
'blockipsuccesssub' => 'Kinniqpidämine läts kõrda',
'confirmemail_needlogin' => 'Uma e-postiaadrõsi kinnütämises $1.',
'confirmemail_success' => 'Su e-postiaadrõs om no ärq kinnütet. Võit nimega sisse minnäq.',
'confirmemail_loggedin' => 'Su e-postiaadrõs om no ärq kinnütet.',
-'confirmemail_error' => "Su e-postiaadrõsi kinnütämisega läts' midägi võlssi.",
'confirmemail_subject' => '{{SITENAME}} e-postiaadrõsi kinnütämine',
'confirmemail_body' => 'Kiäki, arvadaq saq esiq, lõi puutri võrgoaadrõsi $1 päält {{SITENAME}} pruukjanime $2. Ku taa om tõtõstõ suq pruukjanimi, tiiq vallalõ link: $3. Ku taa *olõ-i* suq luud pruukjanimi, sis teku-i midägi. Kinnütüskuud lätt vanas $4.',
'tog-minordefault' => 'Prémete mes candjmints come mineurs',
'tog-previewontop' => "Prévey l' årtike å dzeu del boesse d' aspougnaedje",
'tog-previewonfirst' => "Prévey l' årtike å prumî candjmint",
-'tog-nocache' => "Èn nén eployî d' muchete pol håynaedje des pådjes",
'tog-enotifwatchlistpages' => "M' emiler cwand ene pådje shuvowe candje",
'tog-enotifusertalkpages' => "M' emiler cwand l' pådje di copene da minne candje",
'tog-enotifminoredits' => "M' emiler eto po les ptits candjmints",
'recentchanges-label-minor' => "Ci n' est k' on ptit candjmint",
'recentchanges-label-bot' => 'Ci candjmint la a stî fwait pa on robot',
'recentchanges-label-unpatrolled' => "Ci candjmint la n' a nén co stî patrouyî",
-'rcnote' => "Chal pa dzo {{PLURAL:$1|li dierin candjmint|les '''$1''' dierins candjmints}} {{PLURAL:$2|do dierin djoû|des '''$2''' dierins djoûs}}, disk' å $4 a $5.",
'rcnotefrom' => "Chal pa dzo les candjmints dispoy li '''$2''' (disk' a '''$1''' di mostrés).",
'rclistfrom' => "Mostrer les candjmints k' i gn a yeu a pårti do $1",
'rcshowhideminor' => '$1 candjmints mineurs',
'undeletebtn' => 'Rapexhî',
'undeletelink' => 'vey/rapexhî',
'undeleteviewlink' => 'vey',
-'undeletereset' => 'Netyî',
'undeletecomment' => 'Råjhon:',
'undeletedrevisions' => '{{PLURAL:$1|1 modêye|$1 modêyes}} di rapexheyes',
'undeletedrevisions-files' => '{{PLURAL:$1|1 modêye|$1 modêyes}} et {{PLURAL:$2|1 fitchî|$2 fitchîs}} di rapexhîs',
'ipbsubmit' => 'Bloker cist uzeu',
'ipbother' => 'Ôte termene',
'ipboptions' => '2 eures:2 hours,1 djoû:1 day,3 djoûs:3 days,1 samwinne:1 week,2 samwinnes:2 weeks,1 moes:1 month,3 moes:3 months,6 moes:6 months,1 anêye:1 year,po todi:infinite',
-'ipbotheroption' => 'ôte',
'badipaddress' => "Nol uzeu avou ç' no la, ou adresse IP nén valide",
'blockipsuccesssub' => 'Li blocaedje a stî comifåt',
'blockipsuccesstext' => '«[[Special:Contributions/$1|$1]]» a stî {{GENDER:$1|bloké|blokêye}}.<br />
# Special:ComparePages
'comparepages' => 'Comparer des pådjes',
-'compare-selector' => 'Comparer des modêyes di pådjes',
'compare-page1' => 'Pådje 1',
'compare-page2' => 'Pådje 2',
'compare-rev1' => 'Modêye 1',
'tog-minordefault' => 'Tigamni an ngatanan nga mga pagliwat nga gudti hin default',
'tog-previewontop' => 'Igpakita in prevista o pan-ugsa-nga-lantaw ugsa hiton pagliwat nga kahon',
'tog-previewonfirst' => 'Igpakita in prevista o pan-ugsa-nga-lantaw ha syahan nga pagliwat',
-'tog-nocache' => 'Ayaw patiroka an mga pakli nga pamiling',
'tog-enotifwatchlistpages' => 'Ig-e-mail ako kun may pakli o paypay ha akon gintitiman-an nga gin-iba',
'tog-enotifusertalkpages' => 'Ig-e-mail ako kun may nagbag-o han akon pakli-himangrawon',
'tog-enotifminoredits' => 'Ig-e-mail liwat ako hin mga gudti nga mga pagliwat hin mga pakli ngan mga paypay',
'recentchanges-label-minor' => 'Gutiay ini nga pagliwat',
'recentchanges-label-bot' => 'Ini nga pagliwat in ginbuhat han bot',
'recentchanges-label-unpatrolled' => 'Ini nga pagliwat in diri pa nakapatrol',
-'rcnote' => "An ha ubos {{PLURAL:$1|in '''1''' nga pagbag-o|in kaurhian nga mga '''$1''' nga pagbag-o}} ha kaurhian nga {{PLURAL:$2|ka adlaw|'''$2''' ka mga adlaw}}, han $5, $4.",
'rcnotefrom' => "An ha ubos in mga pagbabag-o tikanng '''\$''' (kutob ngadto ha '''\$1''' nga ginpakita).",
'rclistfrom' => 'Pakit-a an mga ginbag-ohan tikang han $1',
'rcshowhideminor' => '$1 gudti nga mga pagliwat',
# Block/unblock
'block' => 'Pugngi an gumaramit',
'blockip' => 'Pugngi an gumaramit',
-'blockip-title' => 'Pugngi an gumaramit',
'blockip-legend' => 'Pugngi an gumaramit',
'ipadressorusername' => 'IP address o agnay-hit-gumaramit:',
'ipbexpiry' => 'Matitima an dulot:',
'ipbreason' => 'Katadungan:',
-'ipbreasonotherlist' => 'Lain nga katadungan',
'ipbreason-dropdown' => '*Agsob nga mga rason hit pagpugong
** Pagsusuksok hin sayop nga pananabutan
** Pagtatangtang hin sulod tikang ha mga pakli
'ipbsubmit' => 'Pugngi ini nga gumaramit',
'ipbother' => 'Iba nga oras:',
'ipboptions' => '2 ka oras:2 hours,1 ka adlaw:1 day,3 ka adlaw:3 days,1 ka semana:1 week,2 ka semana:2 weeks,1 ka bulan:1 month,3 ka bulan:3 months,6 ka bulan:6 months,1 ka tuig:1 year,waray katapusan:infinite',
-'ipbotheroption' => 'iba',
-'ipbotherreason' => 'Lain/dugang nga katadungan:',
'ipbhidename' => 'Tagoa an agnay-han-gumaramit tikang ha mga pagliwat ngan mga talaan',
'ipb-disableusertalk' => 'Ayaw tugota ini nga gumaramit ha pagliwat han iya kalugaringon nga hiruhimangraw nga pakli samtang nakapugong hiya',
'ipb-change-block' => 'Ig-utro pagpugong an gumaramit upod ini nga mga kahimtang',
'watchlistall2' => 'ngatanan',
'namespacesall' => 'ngatanan',
'monthsall' => 'ngatanan',
-'limitall' => 'ngatanan',
# Email address confirmation
'confirmemail' => 'Igkompirma an e-mail address',
'confirmemail_sent' => 'Ginpadara an kompirmasyon han e-mail.',
'confirmemail_needlogin' => 'Kinahanglanon mo hin $1 para makakompirma han imo e-mail address.',
'confirmemail_loggedin' => 'Ginkompirma na yana an imo e-mail address',
-'confirmemail_error' => 'Mayda diri asya nga nahitabo ha pagtipig ha imo kompirmasyon.',
'confirmemail_subject' => '{{SITENAME}} kompirmasyon han e-mail address',
# Scary transclusion
# Special:ComparePages
'comparepages' => 'Igkumpara an mga pakli',
-'compare-selector' => 'Igkumpara an mga pagliwat han pakli',
'compare-page1' => 'Pakli 1',
'compare-page2' => 'Pakli 2',
'compare-rev1' => 'Pagliwat 1',
'tog-minordefault' => 'jàppe samay coppite ni yu néewal saa su ne',
'tog-previewontop' => 'Tegal wonendi gi ci kaw balaa boyotu coppite bi',
'tog-previewonfirst' => 'wone wonendi gi su dee soppi gu njëkk la',
-'tog-nocache' => 'Doxadil ndenciti xët yi',
'tog-enotifwatchlistpages' => 'Yónne ma ab bataaxal su aw xët wu ne ci sama limu toppte soppikoo',
'tog-enotifusertalkpages' => 'Yónne ma ab bataaxal su ay coppite amee ci sama xëtu waxtaanuwaay',
'tog-enotifminoredits' => 'Yónne ma ab bataaxal donte coppite yu néew lañu',
'recentchanges-label-bot' => 'Coppite bu ab bot def',
'recentchanges-label-unpatrolled' => 'Coppite bii kenn fugloogu ko',
'recentchanges-legend-newpage' => '$1 - xët wu bees',
-'rcnote' => '{{PLURAL:$1|Lii mooy coppite bu mujj bees def|Yii ñooy coppite yu mujj yees def}} ci {{PLURAL:$2|bés bu mujj bi|<b>$2</b> bés yu mujj yi}}; njoxe yi ñoo ngi leen yeesal $5 ci $4.',
'rcnotefrom' => "Yii ñooy coppite yi dalee '''$2''' (ba '''$1''').",
'rclistfrom' => 'Wone coppite yi mujj yi dooree $1.',
'rcshowhideminor' => '$1 Coppite yu néewal',
'undeletebtn' => 'Delloowaat',
'undeletelink' => 'Wone/delloowaat',
'undeleteviewlink' => 'wone',
-'undeletereset' => 'Neenal',
'undeleteinvert' => 'Jallarbi fal gi',
'undeletecomment' => 'Tënk :',
'undeletedrevisions' => '$1 {{PLURAL:$1|delloowaat nañ ab sumb|delloowaat nañ $1 sumb}}',
'ipadressorusername' => 'Màkkaanu IP walla turu jëfandikukat:',
'ipbexpiry' => 'Diiru téye gi',
'ipbreason' => 'Ngirte :',
-'ipbreasonotherlist' => 'Yeneeni ngirte',
'ipbreason-dropdown' => '* Ngirtey téye yi ëpp
** Ag caay-caay
** Dugalub xibaar yu dëgguwul
'ipbsubmit' => 'Téye bii jëfandikukat',
'ipbother' => 'Beneen diir:',
'ipboptions' => '2 waxtu:2 hours,1 fan:1 day,3 fan:3 days,1 ayubés:1 week,2 ayubés:2 weeks,1 weer:1 month,3 weer:3 months,6 weer:6 months,1 at:1 year,ba-faaw:infinite',
-'ipbotheroption' => 'beneen',
-'ipbotherreason' => 'Yeneeni ngirte/faramfacce:',
'ipbhidename' => 'Nëbb turu jëfandikukat bi ci coppite yeek lim yi',
'ipbwatchuser' => 'Topp xëtu jëfandikukat ak bu waxtaanuwaay bu bii jëfandikukat',
'ipb-change-block' => 'Téyewaat bii jëfandikukat ak yii anam',
'proxyblockreason' => 'Dañ téye sa IP ndax dadi ab yóbbantekat bu ubbeeku. Di la ñaan nga jublu ci sa ki la jox internet yegge ko jafe-jafeb kaaraange bi.',
'sorbsreason' => 'Sa màkkaanu IP dañ ko limaale niki ab yóbbantekat bu ubbeeku ci DNSBL bi {{SITENAME}} di jëfandikoo.',
'sorbs_create_account_reason' => 'Sa màkkaanu IP dañ ko limaale niki ab yóbbantekat bu ubbeeku ci DNSBL bi {{SITENAME}} di jëfandikoo. Kon sag mbindu du mana nekk.',
-'cant-block-while-blocked' => 'Manoo di téye yeneen jëfandikukat ci diir bi ñu la téye.',
# Developer tools
'lockdb' => 'Caabi dàttub njoxe bi',
'tog-minordefault' => '默認記全部編都是細個',
'tog-previewontop' => '編寫框頭前顯示先望',
'tog-previewonfirst' => '頭垡編寫顯示先望',
-'tog-nocache' => '弗用流览器页面慢存',
'tog-enotifwatchlistpages' => '我關注表裏個頁要弗文件變脫到用電子信通知我',
'tog-enotifusertalkpages' => '我用戶討論頁變脫到用電子信通知我',
'tog-enotifminoredits' => '頁搭文件細編也用電子信通知我',
'saveprefs' => '保存',
'restoreprefs' => '复原全部默认设定',
'prefs-editing' => '编辑',
-'rows' => '行:',
-'columns' => '列:',
+'rows' => '行数:',
+'columns' => '列数:',
'searchresultshead' => '搜索',
'resultsperpage' => '每页显示链接数:',
'stub-threshold' => '<a href="#" class="stub">短页面链接</a>格式门槛值(字节):',
'recentchanges-feed-description' => '跟踪此订阅垃拉 wiki 高头个最近更改。',
'recentchanges-label-newpage' => '建新页来编',
'recentchanges-label-minor' => '箇是小编写',
-'rcnote' => "下底是垃拉$4 $5,最近'''$2'''日天里向个'''$1'''趟最近更改记录:",
'rclistfrom' => '显示 $1 以来个新改动',
'rcshowhideminor' => '$1小编写',
'rcshowhidebots' => '$1机器人',
'viewdeletedpage' => '望望相删脱个页面',
'undeletelink' => '查看/恢复',
'undeleteviewlink' => '望',
-'undeletereset' => '轉設',
'undeletecomment' => '理由:',
'undelete-search-submit' => '搜尋',
'blockip' => '查封用户',
'ipadressorusername' => 'IP地址或用户名:',
'ipbreason' => '理由:',
-'ipbreasonotherlist' => '其它原因',
'ipbsubmit' => '封杀该个用户',
'ipbother' => '其它时间:',
'ipboptions' => '2个钟头:2 hours,1日:1 day,3日:3 days,1个礼拜:1 week,2个礼拜:2 weeks,1个月日:1 month,3个月日:3 months,6个月日:6 months,1年:1 year,老世:infinite',
'tog-minordefault' => 'Цуг сольлһн баһ чинртә таасн болулх',
'tog-previewontop' => 'Сольлһна теегин өмн хәләвр үзүлх',
'tog-previewonfirst' => 'Сольхла, хәләвр үзүлх.',
-'tog-nocache' => 'Халхин кешлһн браузерт унтрах',
'tog-enotifwatchlistpages' => 'Шинҗлсн халх сольхла, нанд e-mail бичг йовулх',
'tog-enotifusertalkpages' => 'Мини ухалвр халх сольхла, нанд e-mail бичг йовулх',
'tog-enotifminoredits' => 'Баһ сольлһн болв чигн болхла, нанд e-mail бичг йовулх',
'recentchanges-label-minor' => 'Эн баһ чинртә сольлһн',
'recentchanges-label-bot' => 'Эн сольлһн көдлвр (робот) кехв',
'recentchanges-legend-newpage' => '$1 — шин халх',
-'rcnote' => "{{PLURAL:$1|'''$1''' шидрә сольлһн|'''$1''' шидрә сольлһн|'''$1''' шидрә сольлһн}}, '''$2''' өдрә, $5 $4 цагин.",
'rclistfrom' => 'Тер цагас авн сольлһн үзүлх: $1.',
'rcshowhideminor' => 'баһ чикллһиг $1',
'rcshowhidebots' => 'көдлврүдиг $1',
'blockip' => 'Демнчиг бүслх',
'ipadressorusername' => 'IP хайг аль демнчна нернь:',
'ipbreason' => 'Учр:',
-'ipbreasonotherlist' => 'Талдан учр',
'ipboptions' => '2 часуд:2 hours,1 өдр:1 day,3 өдрмүд:3 days,1 долан хонг:1 week,2 долан хонгуд:2 weeks,1 сар:1 month,3 сармуд:3 months,6 сармуд:6 months,1 җил:1 year,мөнк:infinite',
'ipblocklist' => 'Бүслсн болн демнчнр',
'blocklink' => 'бүслх',
'watchlistall2' => 'цуг',
'namespacesall' => 'цуг',
'monthsall' => 'цуг',
-'limitall' => 'цуг',
# action=purge
'confirm_purge_button' => 'Тиим',
'recentchanges-label-minor' => 'თენა რე ციქა რედაქტირაფა',
'recentchanges-label-bot' => 'თე რედაქტირაფა ბოტიშ ნაღოლემი რე',
'recentchanges-label-unpatrolled' => 'თე რედაქტირაფა დიო ხოლო ვა რე პატრულირაფირი',
-'rcnote' => "თუდოლე ძირით ეკონია {{PLURAL:$1|'''1''' თირაფა|$1 თირაფა}} ეკონია {{PLURAL:$2|დღაშ|'''$2''' დღაშ}}, $5, $4 რენჯობათ.",
'rcnotefrom' => 'თუდო მოჸუნაფილიე თირაფეფ, ”’$2””-შე (ძირაფილიე ”’$1”’)',
'rclistfrom' => 'ახალ თირაფეფიშ ძირაფა დოჭყაფილ $1-შე',
'rcshowhideminor' => '$1 ჭიჭე რედაქტირაფეფ',
# Block/unblock
'blockip' => 'მახვარებუშ ბლოკირაფა',
'ipboptions' => '2 საათი:2 hours,1 დღა:1 day,3 დღა:3 days,1 მარა:1 week,2 მარა:2 weeks,1 თუთა:1 month,3 თუთა:3 months,6 თუთა:6 months,1 წანა:1 year,უხურგე ვადათ:infinite',
-'ipbotheroption' => 'შხვა',
'ipblocklist' => 'ბლოკირელ მახვარებუეფჷ',
'ipblocklist-submit' => 'გორუა',
'blocklink' => 'ბლოკირაფა',
'tog-minordefault' => 'באגרענעצן אלע רעדאַקטירונגען גרונטלעך אלס מינערדיק',
'tog-previewontop' => 'צײַג די "פֿאָרויסיגע װײַזונג" גלײַך בײַ דער ערשטער באַאַרבעטונג',
'tog-previewonfirst' => 'ווייזן פֿאראויסדיגע ווייזונג בײַ דער ערשטער רעדאקטירונג',
-'tog-nocache' => 'מבטל זײַן האַלטן בלעטער אין זאַפאַס',
'tog-enotifwatchlistpages' => 'שיקט מיר א בליצבריוו ווען א בלאט וואס איך פאס אויף ווערט געענדערט',
'tog-enotifusertalkpages' => 'שיקט מיר ע-פאסט ווען עס ווערט געענדערט מיין באניצער רעדן בלאט',
'tog-enotifminoredits' => 'שיקט מיר ע-פאסט אויך פֿאַר מינערדיקע רעדאַקטירונגען פֿון בלעטער',
'recentchanges-label-unpatrolled' => 'די רעדאקטירונג איז נאך נישט נאכגעקוקט',
'recentchanges-label-plusminus' => 'בלאט גרייס געענדערט מיט דער אצל בייטן',
'recentchanges-legend-newpage' => '(זעים אויך [[Special:NewPages|די רשימה פון נייע בלעטער]])',
-'rcnote' => "אונטן {{PLURAL:$1|איז '''1''' ענדערונג|זײַנען די לעצטע '''$1''' ענדערונגען}} אין {{PLURAL:$2|דעם לעצטן טאג|די לעצטע $2 טעג}}, ביז $5, $4.",
'rcnotefrom' => "פֿאלגנד זענען די ענדערונגען זײַט '''$2''' (ביז '''$1''')",
'rclistfrom' => 'װײַזן נײַע ענדערונגען פֿון $1',
'rcshowhideminor' => '$1 מינערדיגע ענדערונגען',
'undeletebtn' => 'צוריקשטעלן',
'undeletelink' => 'קוקן/צוריקשטעלן',
'undeleteviewlink' => 'באַקוקן',
-'undeletereset' => 'צוריקשטעלן',
'undeleteinvert' => 'איבערקערן דעם אויסקלויב',
'undeletecomment' => 'אורזאַך:',
'undeletedrevisions' => '{{PLURAL:$1|1 רעוויזיע|$1 רעוויזיעס}} צוריקגעשטעלט',
'block' => 'בלאקירן באַניצער',
'unblock' => 'אויפֿבלאקירן באניצער',
'blockip' => 'בלאקירן באַניצער',
-'blockip-title' => 'בלאקירן באַניצער',
'blockip-legend' => 'בלאקירן באַניצער',
'blockiptext' => "באניצט די פארעם דא אונטן כדי צו בלאקירן שרײַבן רעכטן פֿון איינגעשריבענע באניצער אדער סתם ספעציפישע איי פי אדרעסן.
'ipadressorusername' => 'IP אדרעס אדער באַניצער נאמען:',
'ipbexpiry' => 'אויסגיין:',
'ipbreason' => 'אורזאַך:',
-'ipbreasonotherlist' => 'אנדער סיבה',
'ipbreason-dropdown' => '* פֿארשפרייטע בלאקירן סיבות
** ארײַנלייגן פֿאלשע אינפֿארמאציע
** אויסמעקן אינהאַלט פֿון בלעטער
6 מאָנאַטן:6 months,
1 יאָר:1 year,
אויף אייביק:infinite',
-'ipbotheroption' => 'אַנדער',
-'ipbotherreason' => 'אנדער/נאך א סיבה:',
'ipbhidename' => 'באַהאַלטן באַניצער נאָמען פֿון רעדאַקטירונגען און רשימות',
'ipbwatchuser' => 'אויפֿפאַסן דעם באַניצערס באַניצער און רעדן בלעטער',
'ipb-confirm' => 'באַשטעטיקן בלאָק',
'ip_range_toolarge' => 'אָפשטאַנדן גרעסער ווי /$1 קען מען נישט בלאקירן.',
'proxyblocker' => 'פראקסי בלאקער',
'proxyblockreason' => 'אייער איי.פי. אדרעס איז געווארן געבלאקט צוליב דעם ווייל דאס איז א אפענער פראקסי. ביטע פארבינדט זיך מיט אייער אינטערנעט סערוויס פראוויידער אדער טעקס סאפארט צו אינפארמירן זיי איבער דעם ערענסטן זיכערהייט פראבלעם.',
-'cant-block-while-blocked' => 'איר קען נישט בלאקירן קיין אנדערע באניצער ווען איר זענט אליין בלאקירט.',
'ipbblocked' => 'איר קען נישט בלאקירן אדער אויפבלאקירן אנדערע באניצער, ווייל איר זענט אליין בלאקירט.',
'ipbnounblockself' => 'איר זענט נישט ערלויבט זיך אליין אויסבלאקירן',
'watchlistall2' => 'אַלע',
'namespacesall' => 'אַלע',
'monthsall' => 'אלע',
-'limitall' => 'אַלע',
# Email address confirmation
'confirmemail' => 'באַשטעטיקט בליצפּאָסט אַדרעס',
'confirmemail_success' => 'אײַער בליצפּאָסט אַדרעס איז באַשטעטיקט געװאָרן.
איר קענט איצט [[Special:UserLogin|אַרײַנלאגירן]] און הנאה האָבן פֿון דער וויקי.',
'confirmemail_loggedin' => 'אייער ע־פאסט אדרעס איז איצט געווארן באשטעטיגט.',
-'confirmemail_error' => 'עפעס איז געגאנגען שלעכט מיט אָפּהיטן אײַער באַשטעטיקונג.',
'confirmemail_subject' => '{{SITENAME}} בליצבריװ אדרעס באַשטעטיקונג',
'confirmemail_body' => 'עמעצער, ווארשיינליך איר (פון איי פי אדרעס: $1), האט איינגעשריבן די קונטע: "$2" מיט אט דעם בליצפאסט אדרעס אויף {{SITENAME}}.
# Special:ComparePages
'comparepages' => 'פאַרגלייַכן בלעטער',
-'compare-selector' => 'פאַרגלייַכן בלאַט רעוויזיעס',
'compare-page1' => 'עמוד 1',
'compare-page2' => 'עמוד 2',
'compare-rev1' => 'רעוויזיע 1',
'tog-minordefault' => "Se àmì sí gbogbo àtúnse gẹ́gẹ́ bi kékeré lát'ìbẹ̀rẹ̀.",
'tog-previewontop' => "Se àyẹ̀wò kí ẹ tó s'àtúnṣe",
'tog-previewonfirst' => "S'àfihàn àgbéwò fún àtúnse àkọ́kọ́",
-'tog-nocache' => 'Ìdínà fífi ojúewé pamọ́ sínú cache',
'tog-enotifwatchlistpages' => 'Fi e-mail ránṣẹ́ sí mi tí ojúewé tàbí fáìlì tí mò ún mójútó bá yípadà',
'tog-enotifusertalkpages' => 'Fi e-mail ránṣẹ́ sími tí ojúewé oníṣe mi bá yípadà',
'tog-enotifminoredits' => 'Fi e-mail ránṣẹ́ sí mi bákannà fún àtúnṣe kékékèé sí àwọn ojúewé àti fáìlì',
'recentchanges-label-bot' => 'Rọ́bọ́ọ̀tì ni ó ṣe àtúnṣe yìí',
'recentchanges-label-unpatrolled' => 'Àtúnṣe yìí kò tí ì jẹ́ onísíṣọ́',
'recentchanges-legend-newpage' => '$1 - ojúewé tuntun',
-'rcnote' => "Lábẹ́ ni {{PLURAL:$1|àtúnṣe '''kan'''|àwọn àtúnṣe '''$1''' tí wọn gbẹ̀yìn}} láàrin {{PLURAL:$2|ọjọ́ kan|ọjọ́ '''$2'''}} sẹ́yìn ní ago $5, lọ́jọ́ $4.",
'rcnotefrom' => "Àwọn àtúnṣe láti ''''$2''' (títí dé '''$1''' hàn) lábẹ́.",
'rclistfrom' => 'Àfihàn àwọn àtúnṣe tuntun nípa bíbẹ̀rẹ̀ láti $1',
'rcshowhideminor' => '$1 àwọn àtúnṣe kékéèké',
'undeletebtn' => 'Dápadà',
'undeletelink' => 'wò/dápadà',
'undeleteviewlink' => 'wo',
-'undeletereset' => 'Ìtúnṣètò',
'undeleteinvert' => 'Pàṣípààrọ̀ àsàyàn',
'undeletecomment' => 'Ìdíẹ̀:',
'undeletedrevisions' => '{{PLURAL:$1|Àtúnyẹ̀wò 1|Àwọn àtúnyẹ̀wò $1}} ti jẹ́ dídápadà',
'block' => 'Dínà oníṣe',
'unblock' => 'Ìmúkúrò ìdínà oníṣe',
'blockip' => 'Dínà oníṣe',
-'blockip-title' => 'Ìdínà oníṣẹ',
'blockip-legend' => 'Ìdínà oníṣẹ',
'blockiptext' => 'Ẹ lo fọ́ọ̀mù ìsàlẹ̀ láti dínà ìle kọ láti ọ̀dọ̀ àdírẹ́ẹ̀sì IP pàtó kan tàbí orúkọ oníṣe.
Ẹyí gbọ́dọ̀ jẹ́ síṣe láti dínà ìṣèbàjẹ́ nìkan, àtí gẹ́gẹ́bí [[{{MediaWiki:Policy-url}}|ètò ìsiṣẹ́]].
'ipadressorusername' => 'Àdírẹ́ẹ̀sì IP tàbí orúkọ oníṣe:',
'ipbexpiry' => 'Ìwásópin:',
'ipbreason' => 'Ìdíẹ̀:',
-'ipbreasonotherlist' => 'Ìdí mìíràn',
'ipbreason-dropdown' => '*Àwọn ìdí fún ìdínà
** Àròyé tí kò jẹ́ òtítọ́
** Yíyọ àkóónú kúrò nínú ojúewé
'ipbsubmit' => 'Dínà oníṣe yìí',
'ipbother' => 'Àkókò míràn:',
'ipboptions' => '2 wákàtí:2 hours,1 ọjọ́:1 day,3 ọjọ́:3 days,1 ọ̀ṣẹ̀:1 week,2 ọ̀ṣẹ̀:2 weeks,1 osù:1 month,3 osù:3 months,6 osù:6 months,1 ọdún:1 year,àílópin:infinite',
-'ipbotheroption' => 'òmíràn',
-'ipbotherreason' => 'Ìdí míràn/àfikún:',
'ipbhidename' => 'Ìbómọ́lẹ̀ orúkọ oníṣe nínú àwọn àtúnṣe àti àwọn àkójọ',
'ipbwatchuser' => 'Ìmójútó àwọn ojúewé oníṣe àti ọ̀rọ̀ oníṣe yìí',
'ipb-disableusertalk' => 'Ìdínà oníṣe yìí láti ṣàtúnṣe ojúewé ọ̀rọ̀ wọn lásìkò kannáà tí wọ́n jẹ́ dídílọ́nà',
'sorbsreason' => 'Àdírẹ́ẹ̀sì IP yín jẹ́ títòjọ bíi ẹ̀rọ-ìwọ̀fà ẹlòmíràn àsíílẹ̀ nínú DNSBL tí {{SITENAME}} lò.',
'sorbs_create_account_reason' => 'Àdírẹ́ẹ̀sì IP yín jẹ́ títòjọ bíi ẹ̀rọ-ìwọ̀fà ẹlòmíràn àsíílẹ̀ nínú DNSBL tí {{SITENAME}} lò.
Ẹ kò le dá àpamọ́.',
-'cant-block-while-blocked' => 'Ẹ kò le dínà àwọn oníṣe míràn lásìkò kannáà tí ẹ jẹ́ dídílọ́nà.',
'cant-see-hidden-user' => 'Oníṣe tí ẹ fẹ́ dínà tilẹ̀ ti jẹ́ dídílọ́nà, ó sì jẹ́ bíbòmọ́lẹ̀.
Nítorípé ẹ kò ní ẹ̀tọ́ ìbòmọ́lẹ̀ oníṣe, ẹ kò le rí tàbí ṣàtúnṣe ìdínà oníṣe náà.',
'ipbblocked' => 'Ẹ kò le dínà tàbí ṣe àìdínà àwọn oníṣe míràn nítorípé ẹ̀yin gangan jẹ́ dídínà.',
'watchlistall2' => 'gbogbo',
'namespacesall' => 'gbogbo',
'monthsall' => 'gbogbo',
-'limitall' => 'gbogbo',
# Email address confirmation
'confirmemail' => "Ṣè'múdájú àdírẹ́ẹ̀sì e-mail",
'confirmemail_success' => 'Àdírẹ́ẹ́sì e-mail yín ti jẹ́ mímúdájú.
Ẹ le [[Special:UserLogin|wọlé]] nísìnhin láti gbádùn wiki yìí.',
'confirmemail_loggedin' => 'Àdírẹ́ẹ̀sì e-mail yín ti dájú.',
-'confirmemail_error' => 'Àsìṣe ṣẹlẹ̀ láti fi ìmójútó yín pamọ́.',
'confirmemail_subject' => 'Ìmúdájú àdírẹ́ẹ̀sì e-mail fún {{SITENAME}}',
'confirmemail_body' => 'Ẹnìkan, bóyá ẹ̀yin sì ni, láti àdírẹ́ẹ̀sì IP $1,
ti ṣe ìforúkọsílẹ̀ àpamọ́ kan "$2" pẹ̀lú àdírẹ́ẹ̀sì e-mail yìí lórí {{SITENAME}}.
# Special:ComparePages
'comparepages' => 'Ìfiwéra àwọn ojúewé',
-'compare-selector' => 'Ìfiwéra àwọn àtúnyẹ̀wò ojúewé',
'compare-page1' => 'Ojúewé 1',
'compare-page2' => 'Ojúewé 2',
'compare-rev1' => 'Àtúnyẹ̀wò 1',
* @author Waihorace
* @author William915
* @author Wong128hk
+ * @author Xiaomingyan
* @author Yfdyh000
*/
'tog-minordefault' => '預設全部編輯做小修改',
'tog-previewontop' => '喺修改欄上方顯示預覽',
'tog-previewonfirst' => '第一次修改時顯示預覽',
-'tog-nocache' => '停用瀏覽器頁面快取',
'tog-enotifwatchlistpages' => '當響我張監視清單度嘅頁面有修改時電郵通知我',
'tog-enotifusertalkpages' => '個人留言版有修改時電郵通知我',
'tog-enotifminoredits' => '小修改都要電郵通知我',
'saveprefs' => '儲存',
'restoreprefs' => '恢復全部預設設定',
'prefs-editing' => '編輯中',
-'rows' => '列:',
-'columns' => '行:',
+'rows' => '行數:',
+'columns' => '列數:',
'searchresultshead' => '搵嘢',
'resultsperpage' => '每頁顯示嘅擊中數:',
'stub-threshold' => '<a href="#" class="stub">楔位連結</a>格式門檻 (bytes):',
'recentchanges-label-bot' => '呢次編輯係由機械人進行',
'recentchanges-label-unpatrolled' => '呢次編輯重未巡查過',
'recentchanges-legend-newpage' => '$1 - 新版',
-'rcnote' => "以下係響$4 $5,近'''$2'''日嘅最後'''$1'''次修改。",
'rcnotefrom' => "以下係自'''$2'''嘅更改(顯示到'''$1''')。",
'rclistfrom' => '顯示由$1嘅新更改',
'rcshowhideminor' => '$1小編輯',
'undeletebtn' => '救返',
'undeletelink' => '睇/救',
'undeleteviewlink' => '睇',
-'undeletereset' => '重設',
'undeleteinvert' => '反選',
'undeletecomment' => '原因:',
'undeletedrevisions' => '$1個修訂已經救返',
# Block/unblock
'blockip' => '封鎖用戶',
-'blockip-title' => '封鎖用戶',
'blockip-legend' => '封鎖用戶',
'blockiptext' => '使用以下嘅表格嚟去阻止指定嘅IP地址或用戶名嘅寫權限。
僅當僅當為咗避免有版畀人惡意破壞嘅時候先可以使用,而且唔可以違反[[{{MediaWiki:Policy-url}}|政策]]。
'ipadressorusername' => 'IP地址或用戶名:',
'ipbexpiry' => '期限:',
'ipbreason' => '原因:',
-'ipbreasonotherlist' => '其它原因',
'ipbreason-dropdown' => '*共用封鎖原因
** 插入錯嘅資料
** 響頁面度拎走
'ipbsubmit' => '封鎖呢位用戶',
'ipbother' => '其它時間:',
'ipboptions' => '兩個鐘頭:2 hours,一日:1 day,三日:3 days,一個禮拜:1 week,兩個禮拜:2 weeks,一個月:1 month,三個月:3 months,六個月:6 months,一年:1 year,終身:infinite',
-'ipbotheroption' => '其他',
-'ipbotherreason' => '其它/附加嘅原因:',
'ipbhidename' => '響編輯同名單度隱藏用戶名',
'ipbwatchuser' => '監視呢位用戶嘅用戶頁同埋佢嘅討論頁',
'ipb-change-block' => '用呢啲設定重新封鎖用戶',
'proxyblockreason' => '你嘅IP係一個公開(指任何人都可以用,無須身份認證?)嘅代理地址,因此被封鎖。請聯絡你嘅Internet服務提供商或技術支援,向佢哋報告呢個嚴重嘅安全問題。',
'sorbsreason' => '你嘅IP地址已經畀響{{SITENAME}}度用嘅DNSBL列咗做公開代理。',
'sorbs_create_account_reason' => '你嘅IP地址已經畀響{{SITENAME}}度用嘅DNSBL列咗做公開代理。你唔可以開新戶口。',
-'cant-block-while-blocked' => '當你被封鎖嗰陣唔可以封鎖其他用戶。',
'cant-see-hidden-user' => '你試緊封鎖嘅用戶已經封鎖咗或者隱藏咗。
你而家冇隱藏用戶嘅權限,你唔可以睇或者改呢位用戶嘅封鎖。',
'ipbblocked' => '你唔可以封鎖或者解封其他用戶,因為你自己已經俾人封鎖咗。',
'watchlistall2' => '全部',
'namespacesall' => '全部',
'monthsall' => '全部',
-'limitall' => '全部',
# Email address confirmation
'confirmemail' => '確認電郵地址',
'confirmemail_needlogin' => '你需要先$1去確認你嘅電郵地址。',
'confirmemail_success' => '你嘅電郵地址已經得到確認。你而家可以[[Special:UserLogin|登入]]同盡情享受wiki啦。',
'confirmemail_loggedin' => '你嘅電郵地址現已得到確認。',
-'confirmemail_error' => '儲存你嘅確認資料嘅時候有小小嘢發生咗意外。',
'confirmemail_subject' => '{{SITENAME}}電郵地址確認',
'confirmemail_body' => '有人(好有可能係嚟自你嘅IP地址 $1)已經用呢個電郵地址喺{{SITENAME}}度註冊咗帳戶"$2"。
# Special:ComparePages
'comparepages' => '比較版',
-'compare-selector' => '比較版修訂',
'compare-page1' => '第1版',
'compare-page2' => '第2版',
'compare-rev1' => '修訂1',
'tog-minordefault' => "Al mien bewerkiengen as 'kleine' markeern",
'tog-previewontop' => 'Voevertoônienge boven bewerkiengsveld weerheven',
'tog-previewonfirst' => 'Voevertoônienge bie eêste bewerkieng weerheven',
-'tog-nocache' => "Cach'n van pagina's deur de browser uutzett'n",
'tog-enotifwatchlistpages' => "E-mail me bie bewerkiengen van pagina's op men volglieste",
'tog-enotifusertalkpages' => 'E-mail me wunnir a iemand men overlegpagina wiezig',
'tog-enotifminoredits' => "E-mail me bie kleine bewerkiengen van pahina's op men volglieste",
'recentchanges-label-minor' => 'Dit is een kleine wieziging',
'recentchanges-label-bot' => "Deêze bewarkienge is uutgevoerd deur 'n bot",
'recentchanges-label-unpatrolled' => 'Deêze bewarkienge is nog nie gecontroleerd',
-'rcnote' => "Ieronder {{PLURAL:$1|sti de lèste bewerkieng|staen de lèste '''$1''' bewerkiengen}} in de lèste {{PLURAL:$2|dag|'''$2''' daegen}}, op $4 om $5.",
'rcnotefrom' => "Wiezigiengen sins '''$2''' (mie een maximum van '''$1''' wiezigiengen).",
'rclistfrom' => 'Bekiek de wiezigingen sins $1',
'rcshowhideminor' => '$1 kleine bewerkiengen',
'tog-minordefault' => '默认标记所有编辑为小编辑',
'tog-previewontop' => '在编辑框上方显示预览',
'tog-previewonfirst' => '首次编辑时显示预览',
-'tog-nocache' => '停用浏览器页面缓存',
'tog-enotifwatchlistpages' => '当我的监视列表中的页面或文件更改时发送电子邮件通知我',
'tog-enotifusertalkpages' => '当我的用户讨论页面更改时发送电子邮件通知我',
'tog-enotifminoredits' => '当我的监视列表中的页面和文件有小编辑时也发送电子邮件通知我',
'tog-shownumberswatching' => '显示监视用户数',
'tog-oldsig' => '当前签名:',
'tog-fancysig' => '将签名视为维基文本(不自动生成链接)',
-'tog-uselivepreview' => '使用实时预览(实验)',
+'tog-uselivepreview' => '使用实时预览(实验中)',
'tog-forceeditsummary' => '未输入编辑摘要时提醒我',
'tog-watchlisthideown' => '隐藏监视列表中的我的编辑',
'tog-watchlisthidebots' => '隐藏监视列表中的机器人编辑',
'throttled-mailpassword' => '密码提醒已在最近$1小时内发送。为了安全起见,在每$1小时内只能发送一个密码提醒。',
'mailerror' => '发送邮件错误:$1',
'acct_creation_throttle_hit' => '使用你的IP地址访问本wiki的访客在过去24小时中创建了{{PLURAL:$1|$1个账户}},达到了这段时间所允许的最大值。因此,使用该IP地址的访客现在不能再创建账户。',
-'emailauthenticated' => '您的邮箱地址已经于$3在$2确认。',
+'emailauthenticated' => '你的电子邮件地址已于$2 $3确认。',
'emailnotauthenticated' => '您的邮件地址尚未确认。
您将不会收到以下任何功能的邮件。',
'noemailprefs' => '指定一个电子邮箱地址以使用此功能。',
'revdelete-hide-image' => '隐藏文件内容',
'revdelete-hide-name' => '隐藏动作和目标',
'revdelete-hide-comment' => '编辑摘要',
-'revdelete-hide-user' => 'ç¼\96è¾\91è\80\85ç\9a\84用户名/IP地址',
+'revdelete-hide-user' => 'ç¼\96è\80\85用户名/IP地址',
'revdelete-hide-restricted' => '同时阻止管理员与其他用户查看数据',
'revdelete-radio-same' => '(不更改)',
'revdelete-radio-set' => '隐藏',
'prefs-email' => '电子邮件',
'prefs-rendering' => '显示',
'saveprefs' => '保存',
-'restoreprefs' => '恢复所有默认设置(所有部分)',
+'restoreprefs' => '还原所有默认设置(所有分项)',
'prefs-editing' => '编辑',
-'rows' => '行:',
-'columns' => '列:',
+'rows' => '行数:',
+'columns' => '列数:',
'searchresultshead' => '搜索',
'resultsperpage' => '每页显示链接数:',
'stub-threshold' => '<a href="#" class="stub">短页面链接</a>格式阈值(字节):',
-'stub-threshold-disabled' => 'å·²å\81\9cç\94¨',
+'stub-threshold-disabled' => '停用',
'recentchangesdays' => '最近更改中显示的天数:',
'recentchangesdays-max' => '最多$1天',
'recentchangescount' => '默认显示的编辑数:',
-'prefs-help-recentchangescount' => '这包括近更改、页面历史和日志。',
+'prefs-help-recentchangescount' => '这包括最近更改、页面历史和日志。',
'prefs-help-watchlist-token2' => '这是你的监视列表网页feed的密钥。任何知道它的人均可以阅读你的监视列表,因此不要分享它。[[Special:ResetTokens|如果需要重置它,请点击这里]]。',
'savedprefs' => '你的系统设置已保存。',
'timezonelegend' => '时区:',
'prefs-signature' => '签名',
'prefs-dateformat' => '日期格式',
'prefs-timeoffset' => '时差',
-'prefs-advancedediting' => '一般选项',
+'prefs-advancedediting' => '常规选项',
'prefs-editor' => '编辑',
'prefs-preview' => '预览',
'prefs-advancedrc' => '高级选项',
'recentchanges-feed-description' => '用这个源跟踪本wiki的最近更改。',
'recentchanges-label-newpage' => '该编辑创建了新页面',
'recentchanges-label-minor' => '这是一个小编辑',
-'recentchanges-label-bot' => '该编辑由机器人进行',
+'recentchanges-label-bot' => '该编辑是机器人执行的',
'recentchanges-label-unpatrolled' => '该编辑尚未巡查',
-'recentchanges-label-plusminus' => '页面大小通过该字节数更改',
+'recentchanges-label-plusminus' => '页面大小的更改是该字节数',
'recentchanges-legend-newpage' => '(另见[[Special:NewPages|新页面列表]])',
'recentchanges-legend-plusminus' => "(''±123'')",
-'rcnote' => "下面是过去'''$2'''天的最后'''$1'''个更改,截至$4 $5。",
'rcnotefrom' => "下面是'''$2'''之后的更改(最多显示'''$1'''个)。",
'rclistfrom' => '显示$1之后的新更改',
'rcshowhideminor' => '$1小编辑',
-'rcshowhidebots' => '$1机器人的编辑',
-'rcshowhideliu' => '$1登录用户的编辑',
-'rcshowhideanons' => '$1匿名用户的编辑',
+'rcshowhidebots' => '$1机器人',
+'rcshowhideliu' => '$1登录用户',
+'rcshowhideanons' => '$1匿名用户',
'rcshowhidepatr' => '$1已巡查的编辑',
'rcshowhidemine' => '$1我的编辑',
'rclinks' => '显示最后$2天的最后$1个更改<br />$3',
请确定您要进行此项操作,并且了解其后果,同时您的行为符合[[{{MediaWiki:Policy-url}}]]。',
'actioncomplete' => '操作完成',
'actionfailed' => '操作失败',
-'deletedtext' => '“$1”已经被删除。最近删除的记录请参见$2。',
+'deletedtext' => '“$1”已被删除。最近的删除日志请见$2。',
'dellogpage' => '删除日志',
'dellogpagetext' => '下面是最近的删除的列表。',
-'deletionlog' => '删除记录',
+'deletionlog' => '删除日志',
'reverted' => '恢复到较早的版本',
'deletecomment' => '原因:',
'deleteotherreason' => '其他/附加原因:',
本页最后的编辑者是[[User:$3|$3]]([[User talk:$3|讨论]]{{int:pipe-separator}}[[Special:Contributions/$3|{{int:contribslink}}]])。',
'editcomment' => '编辑摘要:"<i>$1</i>"。',
'revertpage' => '恢复[[Special:Contributions/$2|$2]]([[User talk:$2|讨论]])的编辑至[[User:$1|$1]]的最后版本',
-'revertpage-nouser' => '恢复由隐藏用户的编辑到{{GENDER:$1|[[User:$1|$1]]}}的最后一个修订版本',
+'revertpage-nouser' => '恢复隐藏用户的编辑至{{GENDER:$1|[[User:$1|$1]]}}的最后版本',
'rollback-success' => '已恢复$1的编辑,更改回$2的最后版本。',
# Edit tokens
'undeletebtn' => '还原',
'undeletelink' => '查看/还原',
'undeleteviewlink' => '查看',
-'undeletereset' => '重设',
'undeleteinvert' => '反向选择',
'undeletecomment' => '原因:',
'undeletedrevisions' => '{{PLURAL:$1|$1个版本}}被还原',
'undelete-search-box' => '搜索已删除页面',
'undelete-search-prefix' => '显示页面自:',
'undelete-search-submit' => '搜索',
-'undelete-no-results' => '删除记录里没有符合的结果。',
+'undelete-no-results' => '删除日志中没有匹配的结果。',
'undelete-filename-mismatch' => '不能删除带有时间戳的文件修订$1:文件不匹配',
'undelete-bad-store-key' => '不能删除带有时间戳的文件修订$1:文件在删除前遗失。',
'undelete-cleanup-error' => '删除无用的存档文件“$1”时发生错误。',
'tooltip-invert' => '请选择该框以隐藏指定名字空间(及相关名字空间,若被选择)的页面更改',
'namespace_association' => '相关名字空间',
'tooltip-namespace_association' => '选中此复选框可包括与选定名字空间相关的讨论页或子页面',
-'blanknamespace' => '(主要)',
+'blanknamespace' => '(主)',
# Contributions
'contributions' => '{{GENDER:$1|用户}}贡献',
'block' => '封禁用户',
'unblock' => '解封用户',
'blockip' => '封禁用户',
-'blockip-title' => '封禁用户',
'blockip-legend' => '封禁用户',
'blockiptext' => '使用下方的表单来禁止来自特定IP地址或用户名的写访问。
只有在为了防止破坏,并符合[[{{MediaWiki:Policy-url}}|方针]]的情况下才可采取此行动。
'ipadressorusername' => 'IP地址或用户名:',
'ipbexpiry' => '期限:',
'ipbreason' => '原因:',
-'ipbreasonotherlist' => '其他原因',
'ipbreason-dropdown' => '*常见封禁原因
** 插入虚假信息
** 删除页面内容
'ipbsubmit' => '封禁该用户',
'ipbother' => '其它时间:',
'ipboptions' => '2小时:2 hours,1天:1 day,3天:3 days,1周:1 week,2周:2 weeks,1个月:1 month,3个月:3 months,6个月:6 months,1年:1 year,无限期:infinite',
-'ipbotheroption' => '其他',
-'ipbotherreason' => '其他/附加原因:',
'ipbhidename' => '在编辑及列表中隐藏用户名',
'ipbwatchuser' => '监视该用户的用户页面和讨论页面',
'ipb-disableusertalk' => '阻止用户在封禁期间编辑自己的讨论页面',
'sorbsreason' => '在{{SITENAME}}使用的DNSBL中,您的IP地址被列为公开代理。',
'sorbs_create_account_reason' => '在{{SITENAME}}使用的DNSBL中,您的IP地址被列为公开代理,因此您不能创建新账户。',
'xffblockreason' => '您或您正在使用的代理服务器呈现在X-Forwarded-For数据包头的一个IP地址已被封禁。封禁原因为:$1',
-'cant-block-while-blocked' => '您无法在封禁期内封禁其他用户。',
'cant-see-hidden-user' => '您尝试封禁的用户已被封禁并隐藏。
由于您尚无隐藏用户的权限,您无法查看或编辑此用户的封禁。',
'ipbblocked' => '您无法封禁或解封其他用户,因为您自己已被封禁',
'watchlistall2' => '所有',
'namespacesall' => '全部',
'monthsall' => '全部',
-'limitall' => '全部',
# Email address confirmation
'confirmemail' => '确认邮箱地址',
'confirmemail_invalid' => '无效的确认码,该代码可能已经过期。',
'confirmemail_needlogin' => '您需要$1以确认您的邮箱地址。',
'confirmemail_success' => '您的邮箱已经被确认。您现在可以[[Special:UserLogin|登录]]并使用此网站了。',
-'confirmemail_loggedin' => '您的邮箱地址现在已被确认。',
-'confirmemail_error' => '保存你的确认时出错。',
+'confirmemail_loggedin' => '你的电子邮件地址现在已经确认。',
'confirmemail_subject' => '{{SITENAME}}电子邮件地址确认',
'confirmemail_body' => '来自IP地址$1的用户(可能是您)在{{SITENAME}}上创建了账户“$2”,并提交了您
的电子邮箱地址。
'imgmultigo' => '提交!',
'imgmultigoto' => '到第$1页',
+# Language selector for translatable SVGs
+'img-lang-default' => '(默认语言)',
+'img-lang-info' => '在$1 $2找到此图像。',
+'img-lang-go' => '去',
+
# Table pager
'ascending_abbrev' => '升',
'descending_abbrev' => '降',
# Special:ComparePages
'comparepages' => '对比页面',
-'compare-selector' => '对比页面版本',
'compare-page1' => '页面1',
'compare-page2' => '页面2',
'compare-rev1' => '版本1',
'tog-minordefault' => '預設將所有編輯標記為小修改',
'tog-previewontop' => '在編輯框上方顯示預覽',
'tog-previewonfirst' => '第一次編輯時顯示預覽',
-'tog-nocache' => '停用瀏覽器的頁面快取',
'tog-enotifwatchlistpages' => '當我監視列表中的頁面或檔案有變更時,發送電子郵件通知我',
'tog-enotifusertalkpages' => '我的對話頁有變更時,發送電子郵件通知我',
'tog-enotifminoredits' => '頁面和檔案的小修改也發電子郵件給我',
'saveprefs' => '儲存',
'restoreprefs' => '還原所有預設設定(所有部分)',
'prefs-editing' => '編輯',
-'rows' => '行:',
-'columns' => '列:',
+'rows' => '行數:',
+'columns' => '列數:',
'searchresultshead' => '搜尋',
'resultsperpage' => '每頁顯示連結數:',
'stub-threshold' => '<a href="#" class="stub">短頁面連結</a>格式門檻值 (位元組):',
'recentchanges-label-plusminus' => '通過此處位元組的數位以更改頁面大小',
'recentchanges-legend-newpage' => '(另見[[Special:NewPages|新頁面列表]])',
'recentchanges-legend-plusminus' => "(''±123'')",
-'rcnote' => "以下是在$4 $5,最近 '''$2''' 天內的 '''$1''' 次最近更改記錄。",
'rcnotefrom' => "下面是自'''$2'''(最多顯示'''$1'''):",
'rclistfrom' => '顯示自 $1 以來的新變更',
'rcshowhideminor' => '$1小編輯',
'undeletebtn' => '還原',
'undeletelink' => '檢視/還原',
'undeleteviewlink' => '檢視',
-'undeletereset' => '重設',
'undeleteinvert' => '反向選擇',
'undeletecomment' => '理由:',
'undeletedrevisions' => '$1個修訂版本已經恢復',
'block' => '封禁使用者',
'unblock' => '解封使用者',
'blockip' => '封禁使用者',
-'blockip-title' => '封禁使用者',
'blockip-legend' => '封禁使用者',
'blockiptext' => '用下面的表單來禁止來自某一特定IP地址的修改許可權。
只有在為防止破壞,及符合[[{{MediaWiki:Policy-url}}|守則]]的情況下才可採取此行動。
'ipadressorusername' => 'IP地址或用戶名:',
'ipbexpiry' => '期限:',
'ipbreason' => '原因:',
-'ipbreasonotherlist' => '其它原因',
'ipbreason-dropdown' => '*一般的封禁理由
** 屢次增加不實資料
** 刪除頁面內容
'ipbsubmit' => '查封該地址',
'ipbother' => '其它時間:',
'ipboptions' => '2小時:2 hours,1天:1 day,3天:3 days,1周:1 week,2周:2 weeks,1個月:1 month,3個月:3 months,6個月:6 months,1年:1 year,無限期:infinite',
-'ipbotheroption' => '其他',
-'ipbotherreason' => '其它/附帶原因:',
'ipbhidename' => '在編輯及列表中隱藏用戶名',
'ipbwatchuser' => '監視這位用戶的用戶頁面以及其對話頁面',
'ipb-disableusertalk' => '禁止被封禁用戶編輯自己的討論頁',
'sorbsreason' => '您的IP位址在{{SITENAME}}中被 DNSBL列為屬於開放代理服務器。',
'sorbs_create_account_reason' => '由於您的IP位址在{{SITENAME}}中被 DNSBL列為屬於開放代理服務器,所以您無法建立賬號。',
'xffblockreason' => '您或您使用的代理伺服器X-Forwarded-For字段所包含的一個IP地址已被封禁。原始封禁理由:$1',
-'cant-block-while-blocked' => '當您被封鎖時不可以封鎖其他用戶。',
'cant-see-hidden-user' => '您現正嘗試封鎖的用戶已經被封鎖或隱藏。
您現在沒有隱藏用戶的權限,您不可以檢視或者編輯這位用戶的封鎖。',
'ipbblocked' => '您無法封禁或解封其他用戶,因為您自己已被封禁',
'watchlistall2' => '全部',
'namespacesall' => '全部',
'monthsall' => '全部',
-'limitall' => '全部',
# Email address confirmation
'confirmemail' => '確認郵箱位址',
'confirmemail_needlogin' => '您需要$1以確認您的郵箱位址。',
'confirmemail_success' => '您的郵箱已經被確認。您現在可以[[Special:UserLogin|登錄]]並使用此網站了。',
'confirmemail_loggedin' => '您的郵箱位址現下已被確認。',
-'confirmemail_error' => '{{GENDER:|你|妳|你}}的確認過程發生錯誤。',
'confirmemail_subject' => '{{SITENAME}}郵箱位址確認',
'confirmemail_body' => '擁有IP位址$1的用戶(可能是您)在{{SITENAME}}創建了賬戶"$2",並提交了您的電子郵箱位址。
'imgmultigo' => '確定!',
'imgmultigoto' => '到第$1頁',
+# Language selector for translatable SVGs
+'img-lang-default' => '(預設語言)',
+'img-lang-info' => '於$1 $2呈現此圖像。',
+'img-lang-go' => '走',
+
# Table pager
'ascending_abbrev' => '升',
'descending_abbrev' => '遞減',
# Special:ComparePages
'comparepages' => '比較頁面',
-'compare-selector' => '比較頁面的修訂',
'compare-page1' => '第1頁',
'compare-page2' => '第2頁',
'compare-rev1' => '修訂版本1',
$this->addOption( 'bot', 'Bot edit', false, false, 'b' );
$this->addOption( 'autosummary', 'Enable autosummary', false, false, 'a' );
$this->addOption( 'no-rc', 'Do not show the change in recent changes', false, false, 'r' );
+ $this->addOption( 'nocreate', 'Don\'t create new pages', false, false );
+ $this->addOption( 'createonly', 'Only create new pages', false, false );
$this->addArg( 'title', 'Title of article to edit' );
}
public function execute() {
- global $wgUser, $wgTitle;
+ global $wgUser;
$userName = $this->getOption( 'user', 'Maintenance script' );
$summary = $this->getOption( 'summary', '' );
$wgUser->addToDatabase();
}
- $wgTitle = Title::newFromText( $this->getArg() );
- if ( !$wgTitle ) {
+ $title = Title::newFromText( $this->getArg() );
+ if ( !$title ) {
$this->error( "Invalid title", true );
}
- $context->setTitle( $wgTitle );
+ $context->setTitle( $title );
- $page = WikiPage::factory( $wgTitle );
+ if ( $this->hasOption( 'nocreate' ) && !$title->exists() ) {
+ $this->error( "Page does not exist", true );
+ } elseif ( $this->hasOption( 'createonly' ) && $title->exists() ) {
+ $this->error( "Page already exists", true );
+ }
+
+ $page = WikiPage::factory( $title );
# Read the text
$text = $this->getStdin( Maintenance::STDIN_ALL );
- $content = ContentHandler::makeContent( $text, $wgTitle );
+ $content = ContentHandler::makeContent( $text, $title );
# Do the edit
$this->output( "Saving... " );
'tog-minordefault',
'tog-previewontop',
'tog-previewonfirst',
- 'tog-nocache',
'tog-enotifwatchlistpages',
'tog-enotifusertalkpages',
'tog-enotifminoredits',
'prefs-tokenwatchlist',
'prefs-diffs',
'prefs-help-prefershttps',
+ 'prefs-tabs-navigation-hint',
),
'preferences-email' => array(
'email-address-validity-valid',
parent::__construct();
$this->mDescription = "Send SQL queries to a MediaWiki database";
$this->addOption( 'cluster', 'Use an external cluster by name', false, true );
+ $this->addOption( 'wikidb', 'The database wiki ID to use if not the current one', false, true );
$this->addOption( 'slave', 'Use a slave server (either "any" or by name)', false, true );
}
public function execute() {
+ $wiki = $this->getOption( 'wikidb' ) ?: false;
// Get the appropriate load balancer (for this wiki)
if ( $this->hasOption( 'cluster' ) ) {
- $lb = wfGetLBFactory()->getExternalLB( $this->getOption( 'cluster' ) );
+ $lb = wfGetLBFactory()->getExternalLB( $this->getOption( 'cluster' ), $wiki );
} else {
- $lb = wfGetLB();
+ $lb = wfGetLB( $wiki );
}
// Figure out which server to use
if ( $this->hasOption( 'slave' ) ) {
$index = DB_MASTER;
}
// Get a DB handle (with this wiki's DB selected) from the appropriate load balancer
- $dbw = $lb->getConnection( $index );
- if ( $this->hasOption( 'slave' ) && $dbw->getLBInfo( 'master' ) !== null ) {
- $this->error( "The server selected ({$dbw->getServer()}) is not a slave.", 1 );
+ $db = $lb->getConnection( $index, array(), $wiki );
+ if ( $this->hasOption( 'slave' ) && $db->getLBInfo( 'master' ) !== null ) {
+ $this->error( "The server selected ({$db->getServer()}) is not a slave.", 1 );
}
if ( $this->hasArg( 0 ) ) {
$this->error( "Unable to open input file", true );
}
- $error = $dbw->sourceStream( $file, false, array( $this, 'sqlPrintResult' ) );
+ $error = $db->sourceStream( $file, false, array( $this, 'sqlPrintResult' ) );
if ( $error !== true ) {
$this->error( $error, true );
} else {
# User simply pressed return key
continue;
}
- $done = $dbw->streamStatementEnd( $wholeLine, $line );
+ $done = $db->streamStatementEnd( $wholeLine, $line );
$wholeLine .= $line;
if ( $useReadline ) {
# Delimiter is eated by streamStatementEnd, we add it
# up in the history (bug 37020)
- readline_add_history( $wholeLine . $dbw->getDelimiter() );
+ readline_add_history( $wholeLine . $db->getDelimiter() );
readline_write_history( $historyFile );
}
try {
- $res = $dbw->query( $wholeLine );
- $this->sqlPrintResult( $res, $dbw );
+ $res = $db->query( $wholeLine );
+ $this->sqlPrintResult( $res, $db );
$prompt = $newPrompt;
$wholeLine = '';
} catch ( DBQueryError $e ) {
sleep( 10 );
} while ( !wfGetLB()->pingAll() );
$this->output( "Reconnected\n\n" );
- } else {
- # Commit the results
- $dbw->commit( __METHOD__ );
}
# Wait for the slave to catch up
wfWaitForSlaves();
'skinStyles' => array(
'vector' => 'skins/vector/special.preferences.less',
),
+ 'messages' => array(
+ 'prefs-tabs-navigation-hint',
+ ),
),
'mediawiki.special.recentchanges' => array(
'scripts' => 'resources/mediawiki.special/mediawiki.special.recentchanges.js',
/*
.mw-email-authenticated .mw-input { }
*/
+
+/**
+ * Hide, but keep accessible for screen-readers.
+ * Like .mw-jump, #jump-to-nav from skins/common/shared.css
+ */
+.mw-navigation-hint {
+ overflow: hidden;
+ height: 0;
+ zoom: 1;
+}
*/
jQuery( function ( $ ) {
var $preftoc, $preferences, $fieldsets, $legends,
- hash,
+ hash, labelFunc,
$tzSelect, $tzTextbox, $localtimeHolder, servertime;
- $( '#prefsubmit' ).attr( 'id', 'prefcontrol' );
+ labelFunc = function () {
+ return this.id.replace( /^mw-prefsection/g, 'preftab' );
+ };
- $preftoc = $('<ul id="preftoc"></ul>');
+ $( '#prefsubmit' ).attr( 'id', 'prefcontrol' );
+ $preftoc = $('<ul id="preftoc"></ul>')
+ .attr( 'role', 'tablist' );
$preferences = $( '#preferences' )
.addClass( 'jsprefs' )
.before( $preftoc );
$fieldsets = $preferences.children( 'fieldset' )
.hide()
+ .attr( {
+ role: 'tabpanel',
+ 'aria-hidden': 'true',
+ 'aria-labelledby': labelFunc
+ } )
.addClass( 'prefsection' );
$legends = $fieldsets
.children( 'legend' )
.addClass( 'mainLegend' );
+ // Make sure the accessibility tip is selectable so that screen reader users take notice,
+ // but hide it per default to reduce interface clutter. Also make sure it becomes visible
+ // when selected. Similar to jquery.mw-jump
+ $( '<div>' ).addClass( 'mw-navigation-hint' )
+ .text( mediaWiki.msg( 'prefs-tabs-navigation-hint' ) )
+ .attr( 'tabIndex', 0 )
+ .on( 'focus blur', function( e ) {
+ if ( e.type === 'blur' || e.type === 'focusout' ) {
+ $( this ).css( 'height', '0' );
+ } else {
+ $( this ).css( 'height', 'auto' );
+ }
+ } ).insertBefore( $preftoc );
+
/**
* It uses document.getElementById for security reasons (HTML injections in $()).
*
}
$( window ).scrollTop( scrollTop );
- $preftoc.find( 'li' ).removeClass( 'selected' );
+ $preftoc.find( 'li' ).removeClass( 'selected' )
+ .find( 'a' ).attr( {
+ tabIndex: -1,
+ 'aria-selected': 'false'
+ } );
+
$tab = $( document.getElementById( 'preftab-' + name ) );
if ( $tab.length ) {
- $tab.parent().addClass( 'selected' );
- $preferences.children( 'fieldset' ).hide();
- $( document.getElementById( 'mw-prefsection-' + name ) ).show();
+ $tab.attr( {
+ tabIndex: 0,
+ 'aria-selected': 'true'
+ } )
+ .focus()
+ .parent().addClass( 'selected' );
+
+ $preferences.children( 'fieldset' ).hide().attr( 'aria-hidden', 'true' );
+ $( document.getElementById( 'mw-prefsection-' + name ) ).show().attr( 'aria-hidden', 'false' );
}
}
ident = $legend.parent().attr( 'id' );
$li = $( '<li>' )
+ .attr( 'role', 'presentation' )
.addClass( i === 0 ? 'selected' : '' );
$a = $( '<a>' )
.attr( {
id: ident.replace( 'mw-prefsection', 'preftab' ),
- href: '#' + ident
+ href: '#' + ident,
+ role: 'tab',
+ tabIndex: i === 0 ? 0 : -1,
+ 'aria-selected': i === 0 ? 'true' : 'false',
+ 'aria-controls': ident
} )
.text( $legend.text() );
$li.append( $a );
$preftoc.append( $li );
} );
+ // Enable keyboard users to use left and right keys to switch tabs
+ $preftoc.on( 'keydown', function( event ) {
+ var keyLeft = 37,
+ keyRight = 39,
+ $el;
+
+ if( event.keyCode === keyLeft ) {
+ $el = $( '#preftoc li.selected' ).prev().find( 'a' );
+ } else if ( event.keyCode === keyRight ) {
+ $el = $( '#preftoc li.selected' ).next().find( 'a' );
+ } else {
+ return;
+ }
+ if ( $el.length > 0 ) {
+ switchPrefTab( $el.attr( 'href' ).replace( '#mw-prefsection-', '' ) );
+ }
+ } );
+
// If we've reloaded the page or followed an open-in-new-window,
// make the selected tab visible.
hash = window.location.hash;
/**
* Change the state of one or more modules.
*
- * @param {string|Object} module module name or object of module name/state pairs
- * @param {string} state state name
+ * @param {string|Object} module Module name or object of module name/state pairs
+ * @param {string} state State name
*/
state: function ( module, state ) {
var m;
/**
* Get the state of a module.
*
- * @param {string} module name of module to get state for
+ * @param {string} module Name of module to get state for
*/
getState: function ( module ) {
if ( registry[module] !== undefined && registry[module].state !== undefined ) {
},
/**
- * Initialize the store by retrieving it from localStorage and (if successfully
- * retrieved) decoding the stored JSON value to a plain object.
+ * Initialize the store.
+ *
+ * Retrieves store from localStorage and (if successfully retrieved) decoding
+ * the stored JSON value to a plain object.
*
* The try / catch block is used for JSON & localStorage feature detection.
* See the in-line documentation for Modernizr's localStorage feature detection
- * code for a full account of why we need a try / catch: <http://git.io/4NEwKg>.
+ * code for a full account of why we need a try / catch:
+ * https://github.com/Modernizr/Modernizr/blob/v2.7.1/modernizr.js#L771-L796
*/
init: function () {
var raw, data;
if ( mw.loader.store.enabled !== null ) {
- // #init already ran.
+ // Init already ran
return;
}
if ( !mw.config.get( 'wgResourceLoaderStorageEnabled' ) || mw.config.get( 'debug' ) ) {
- // Disabled by configuration, or because debug mode is set.
+ // Disabled by configuration, or because debug mode is set
mw.loader.store.enabled = false;
return;
}
try {
raw = localStorage.getItem( mw.loader.store.getStoreKey() );
- // If we get here, localStorage is available; mark enabled.
+ // If we get here, localStorage is available; mark enabled
mw.loader.store.enabled = true;
data = JSON.parse( raw );
if ( data && typeof data.items === 'object' && data.vary === mw.loader.store.getVary() ) {
} catch (e) {}
if ( raw === undefined ) {
- mw.loader.store.enabled = false; // localStorage failed; disable store.
+ // localStorage failed; disable store
+ mw.loader.store.enabled = false;
} else {
mw.loader.store.update();
}
get: function ( module ) {
var key;
- if ( mw.loader.store.enabled !== true ) {
+ if ( !mw.loader.store.enabled ) {
return false;
}
set: function ( module, descriptor ) {
var args, key;
- if ( mw.loader.store.enabled !== true ) {
+ if ( !mw.loader.store.enabled ) {
return false;
}
key = mw.loader.store.getModuleKey( module );
- if ( key in mw.loader.store.items ) {
- // Already set; decline to store.
- return false;
- }
-
- if ( descriptor.state !== 'ready' ) {
- // Module failed to load; decline to store.
- return false;
- }
-
- if ( !descriptor.version || $.inArray( descriptor.group, [ 'private', 'user', 'site' ] ) !== -1 ) {
- // Unversioned, private, or site-/user-specific; decline to store.
- return false;
- }
-
- if ( $.inArray( undefined, [ descriptor.script, descriptor.style, descriptor.messages ] ) !== -1 ) {
- // Partial descriptor; decline to store.
+ if (
+ // Already stored a copy of this exact version
+ key in mw.loader.store.items ||
+ // Module failed to load
+ descriptor.state !== 'ready' ||
+ // Unversioned, private, or site-/user-specific
+ ( !descriptor.version || $.inArray( descriptor.group, [ 'private', 'user', 'site' ] ) !== -1 ) ||
+ // Partial descriptor
+ $.inArray( undefined, [ descriptor.script, descriptor.style, descriptor.messages ] ) !== -1
+ ) {
+ // Decline to store
return false;
}
args = [
JSON.stringify( module ),
typeof descriptor.script === 'function' ?
- String( descriptor.script ) : JSON.stringify( descriptor.script ),
+ String( descriptor.script ) :
+ JSON.stringify( descriptor.script ),
JSON.stringify( descriptor.style ),
JSON.stringify( descriptor.messages )
];
- } catch (e) {
+ } catch ( e ) {
return;
}
+
mw.loader.store.items[key] = 'mw.loader.implement(' + args.join(',') + ');';
mw.loader.store.update();
},
prune: function () {
var key, module;
- if ( mw.loader.store.enabled !== true ) {
+ if ( !mw.loader.store.enabled ) {
return false;
}
var timer;
function flush() {
- var data, key = mw.loader.store.getStoreKey();
- if ( mw.loader.store.enabled !== true ) {
+ var data,
+ key = mw.loader.store.getStoreKey();
+
+ if ( !mw.loader.store.enabled ) {
return false;
}
mw.loader.store.prune();
localStorage.removeItem( key );
data = JSON.stringify( mw.loader.store );
localStorage.setItem( key, data );
- } catch (e) {}
+ } catch ( e ) {}
}
return function () {
'transformVia404' => false,
'backend' => new FSFileBackend( array(
'name' => 'local-backend',
- 'lockManager' => 'fsLockManager',
+ 'wikiId' => wfWikiId(),
'containerPaths' => array(
'local-public' => wfTempDir() . '/test-repo/public',
'local-thumb' => wfTempDir() . '/test-repo/thumb',
'transformVia404' => false,
'backend' => new FSFileBackend( array(
'name' => 'local-backend',
- 'lockManager' => 'fsLockManager',
+ 'wikiId' => wfWikiId(),
'containerPaths' => array(
'local-public' => $this->uploadDir,
'local-thumb' => $this->uploadDir . '/thumb',
$testCases = array();
foreach ( array( 'Exception', 'MWException' ) as $exClass ) {
$exTests = array(
- array( 'string', $exClass, 'id' ),
- array( 'string', $exClass, 'file' ),
- array( 'integer', $exClass, 'line' ),
- array( 'string', $exClass, 'message' ),
- array( 'null', $exClass, 'url' ),
+ array( 'string', $exClass, 'id' ),
+ array( 'string', $exClass, 'file' ),
+ array( 'integer', $exClass, 'line' ),
+ array( 'string', $exClass, 'message' ),
+ array( 'null', $exClass, 'url' ),
# Backtrace only enabled with wgLogExceptionBacktrace = true
- array( 'array', $exClass, 'backtrace' ),
+ array( 'array', $exClass, 'backtrace' ),
);
$testCases = array_merge( $testCases, $exTests );
}
+++ /dev/null
-<?php
-
-/**
- * Unit tests for the HTMLCheckMatrix + HTMLFormField
- * @todo the tests for the two classes could be split up
- */
-class HtmlCheckMatrixTest extends MediaWikiTestCase {
- static private $defaultOptions = array(
- 'rows' => array( 'r1', 'r2' ),
- 'columns' => array( 'c1', 'c2' ),
- 'fieldname' => 'test',
- );
-
- /**
- * @covers HTMLCheckMatrix::__construct
- */
- public function testPlainInstantiation() {
- try {
- $form = new HTMLCheckMatrix( array() );
- } catch ( MWException $e ) {
- $this->assertInstanceOf( 'HTMLFormFieldRequiredOptionsException', $e );
- return;
- }
-
- $this->fail( 'Expected MWException indicating missing parameters but none was thrown.' );
- }
-
- /**
- * @covers HTMLCheckMatrix::__construct
- */
- public function testInstantiationWithMinimumRequiredParameters() {
- $form = new HTMLCheckMatrix( self::$defaultOptions );
- $this->assertTrue( true ); // form instantiation must throw exception on failure
- }
-
- /**
- * @covers HTMLFormField::validate
- */
- public function testValidateCallsUserDefinedValidationCallback() {
- $called = false;
- $field = new HTMLCheckMatrix( self::$defaultOptions + array(
- 'validation-callback' => function() use ( &$called ) {
- $called = true;
- return false;
- },
- ) );
- $this->assertEquals( false, $this->validate( $field, array() ) );
- $this->assertTrue( $called );
- }
-
- /**
- * @covers HTMLFormField::validate
- */
- public function testValidateRequiresArrayInput() {
- $field = new HTMLCheckMatrix( self::$defaultOptions );
- $this->assertEquals( false, $this->validate( $field, null ) );
- $this->assertEquals( false, $this->validate( $field, true ) );
- $this->assertEquals( false, $this->validate( $field, 'abc' ) );
- $this->assertEquals( false, $this->validate( $field, new stdClass ) );
- $this->assertEquals( true, $this->validate( $field, array() ) );
- }
-
- /**
- * @covers HTMLFormField::validate
- */
- public function testValidateAllowsOnlyKnownTags() {
- $field = new HTMLCheckMatrix( self::$defaultOptions );
- $this->assertInternalType( 'string', $this->validate( $field, array( 'foo' ) ) );
- }
-
- /**
- * @covers HTMLFormField::validate
- */
- public function testValidateAcceptsPartialTagList() {
- $field = new HTMLCheckMatrix( self::$defaultOptions );
- $this->assertTrue( $this->validate( $field, array() ) );
- $this->assertTrue( $this->validate( $field, array( 'c1-r1' ) ) );
- $this->assertTrue( $this->validate( $field, array( 'c1-r1', 'c1-r2', 'c2-r1', 'c2-r2' ) ) );
- }
-
- /**
- * This form object actually has no visibility into what happens later on, but essentially
- * if the data submitted by the user passes validate the following is run:
- * foreach ( $field->filterDataForSubmit( $data ) as $k => $v ) {
- * $user->setOption( $k, $v );
- * }
- * @covers HTMLFormField::filterDataForSubmit
- */
- public function testValuesForcedOnRemainOn() {
- $field = new HTMLCheckMatrix( self::$defaultOptions + array(
- 'force-options-on' => array( 'c2-r1' ),
- ) );
- $expected = array(
- 'c1-r1' => false,
- 'c1-r2' => false,
- 'c2-r1' => true,
- 'c2-r2' => false,
- );
- $this->assertEquals( $expected, $field->filterDataForSubmit( array() ) );
- }
-
- /**
- * @covers HTMLFormField::filterDataForSubmit
- */
- public function testValuesForcedOffRemainOff() {
- $field = new HTMLCheckMatrix( self::$defaultOptions + array(
- 'force-options-off' => array( 'c1-r2', 'c2-r2' ),
- ) );
- $expected = array(
- 'c1-r1' => true,
- 'c1-r2' => false,
- 'c2-r1' => true,
- 'c2-r2' => false,
- );
- // array_keys on the result simulates submitting all fields checked
- $this->assertEquals( $expected, $field->filterDataForSubmit( array_keys( $expected ) ) );
- }
-
- protected function validate( HTMLFormField $field, $submitted ) {
- return $field->validate(
- $submitted,
- array( self::$defaultOptions['fieldname'] => $submitted )
- );
- }
-}
'transformVia404' => false,
'backend' => new FSFileBackend( array(
'name' => 'local-backend',
- 'lockManager' => 'fsLockManager',
+ 'wikiId' => wfWikiId(),
'containerPaths' => array(
'cont1' => "/testdir/local-backend/tempimages/cont1",
'cont2' => "/testdir/local-backend/tempimages/cont2"
public function testRequireLoginNotAnon() {
$specialPage = new SpecialPage( 'Watchlist', 'viewmywatchlist' );
- $user = User::newFromId( 0 );
- $user->setId( 1 );
+ $user = User::newFromName( "UTSysop" );
$specialPage->getContext()->setUser( $user );
$specialPage->requireLogin();
* this can not really be done now due to use of wfMessage()->plain()
* It is possible to mock such methods but only if namespaces are used
*/
- public function testGetWikiText( Status $status, $expected ) {
- $this->assertEquals( $expected, $status->getWikiText() );
+ public function testGetWikiText( Status $status, $wikitext, $html ) {
+ $this->assertEquals( $wikitext, $status->getWikiText() );
}
/**
* this can not really be done now due to use of $this->getWikiText using wfMessage()->plain()
* It is possible to mock such methods but only if namespaces are used
*/
- public function testGetHtml( Status $status, $expected ) {
- $this->assertEquals( $expected, $status->getHTML() );
+ public function testGetHtml( Status $status, $wikitext, $html) {
+ $this->assertEquals( $html, $status->getHTML() );
}
/**
$testCases[ 'GoodStatus' ] = array(
new Status(),
"Internal error: Status::getWikiText called for a good result, this is incorrect\n",
+ "<p>Internal error: Status::getWikiText called for a good result, this is incorrect\n</p>",
);
$status = new Status();
$testCases[ 'GoodButNoError' ] = array(
$status,
"Internal error: Status::getWikiText: Invalid result object: no error text but not OK\n",
+ "<p>Internal error: Status::getWikiText: Invalid result object: no error text but not OK\n</p>",
);
$status = new Status();
$testCases[ '1StringWarning' ] = array(
$status,
"<fooBar!>",
+ "<p><fooBar!>\n</p>",
);
$status = new Status();
$testCases[ '2StringWarnings' ] = array(
$status,
"* <fooBar!>\n* <fooBar2!>\n",
+ "<ul>\n<li> <fooBar!>\n</li>\n<li> <fooBar2!>\n</li>\n</ul>\n",
);
$status = new Status();
$testCases[ '1MessageWarning' ] = array(
$status,
"<fooBar!>",
+ "<p><fooBar!>\n</p>",
);
$status = new Status();
$testCases[ '2MessageWarnings' ] = array(
$status,
"* <fooBar!>\n* <fooBar2!>\n",
+ "<ul>\n<li> <fooBar!>\n</li>\n<li> <fooBar2!>\n</li>\n</ul>\n",
);
return $testCases;
public function testRequireOnlyOneParameterZero() {
$mock = new MockApi();
$mock->requireOnlyOneParameter(
- array( "filename" => "foo.txt","enablechunks" => 0 ),
+ array( "filename" => "foo.txt", "enablechunks" => 0 ),
"filename", "enablechunks"
);
}
'list' => 'watchlist' ), $data );
$this->assertArrayHasKey( 'query', $data[0] );
$this->assertArrayHasKey( 'watchlist', $data[0]['query'] );
- foreach( $data[0]['query']['watchlist'] as $index => $item ) {
+ foreach ( $data[0]['query']['watchlist'] as $index => $item ) {
// Previous tests may insert an invalid title
// like ":ApiEditPageTest testNonTextEdit", which
// can't be cleared.
- if ( strpos( $item['title'] , ':' ) === 0 ) {
+ if ( strpos( $item['title'], ':' ) === 0 ) {
unset( $data[0]['query']['watchlist'][$index] );
}
}
$useConfig['shardViaHashLevels'] = array( // test sharding
'unittest-cont1' => array( 'levels' => 1, 'base' => 16, 'repeat' => 1 )
);
+ $useConfig['fileJournal'] = FileJournal::factory( $config['fileJournal'], $name );
+ $useConfig['lockManager'] = LockManagerGroup::singleton()->get( $useConfig['lockManager'] );
$class = $useConfig['class'];
self::$backendToUse = new $class( $useConfig );
$this->singleBackend = self::$backendToUse;
} else {
$this->singleBackend = new FSFileBackend( array(
'name' => 'localtesting',
- 'lockManager' => 'fsLockManager',
- #'parallelize' => 'implicit',
- 'wikiId' => wfWikiID() . $uniqueId,
+ 'lockManager' => LockManagerGroup::singleton()->get( 'fsLockManager' ),
+ 'wikiId' => wfWikiID(),
'containerPaths' => array(
'unittest-cont1' => "{$tmpPrefix}-localtesting-cont1",
'unittest-cont2' => "{$tmpPrefix}-localtesting-cont2" )
}
$this->multiBackend = new FileBackendMultiWrite( array(
'name' => 'localtesting',
- 'lockManager' => 'fsLockManager',
+ 'lockManager' => LockManagerGroup::singleton()->get( 'fsLockManager' ),
'parallelize' => 'implicit',
'wikiId' => wfWikiId() . $uniqueId,
'backends' => array(
array(
'name' => 'localmultitesting1',
'class' => 'FSFileBackend',
- 'lockManager' => 'nullLockManager',
'containerPaths' => array(
'unittest-cont1' => "{$tmpPrefix}-localtestingmulti1-cont1",
'unittest-cont2' => "{$tmpPrefix}-localtestingmulti1-cont2" ),
array(
'name' => 'localmultitesting2',
'class' => 'FSFileBackend',
- 'lockManager' => 'nullLockManager',
'containerPaths' => array(
'unittest-cont1' => "{$tmpPrefix}-localtestingmulti2-cont1",
'unittest-cont2' => "{$tmpPrefix}-localtestingmulti2-cont2" ),
'name' => 'FileRepoTestRepository',
'backend' => new FSFileBackend( array(
'name' => 'local-testing',
- 'lockManager' => 'nullLockManager',
+ 'wikiId' => 'test_wiki',
'containerPaths' => array()
) )
) );
$useConfig = $conf;
}
}
+ $useConfig['lockManager'] = LockManagerGroup::singleton()->get( $useConfig['lockManager'] );
+ unset( $useConfig['fileJournal'] );
$useConfig['name'] = 'local-testing'; // swap name
$class = $useConfig['class'];
$backend = new $class( $useConfig );
} else {
$backend = new FSFileBackend( array(
'name' => 'local-testing',
- 'lockManager' => 'nullLockManager',
+ 'wikiId' => wfWikiID(),
'containerPaths' => array(
'unittests-public' => "{$tmpPrefix}-public",
'unittests-thumb' => "{$tmpPrefix}-thumb",
--- /dev/null
+<?php
+
+/**
+ * Unit tests for the HTMLCheckMatrix + HTMLFormField
+ * @todo the tests for the two classes could be split up
+ */
+class HtmlCheckMatrixTest extends MediaWikiTestCase {
+ static private $defaultOptions = array(
+ 'rows' => array( 'r1', 'r2' ),
+ 'columns' => array( 'c1', 'c2' ),
+ 'fieldname' => 'test',
+ );
+
+ /**
+ * @covers HTMLCheckMatrix::__construct
+ */
+ public function testPlainInstantiation() {
+ try {
+ $form = new HTMLCheckMatrix( array() );
+ } catch ( MWException $e ) {
+ $this->assertInstanceOf( 'HTMLFormFieldRequiredOptionsException', $e );
+ return;
+ }
+
+ $this->fail( 'Expected MWException indicating missing parameters but none was thrown.' );
+ }
+
+ /**
+ * @covers HTMLCheckMatrix::__construct
+ */
+ public function testInstantiationWithMinimumRequiredParameters() {
+ $form = new HTMLCheckMatrix( self::$defaultOptions );
+ $this->assertTrue( true ); // form instantiation must throw exception on failure
+ }
+
+ /**
+ * @covers HTMLFormField::validate
+ */
+ public function testValidateCallsUserDefinedValidationCallback() {
+ $called = false;
+ $field = new HTMLCheckMatrix( self::$defaultOptions + array(
+ 'validation-callback' => function() use ( &$called ) {
+ $called = true;
+ return false;
+ },
+ ) );
+ $this->assertEquals( false, $this->validate( $field, array() ) );
+ $this->assertTrue( $called );
+ }
+
+ /**
+ * @covers HTMLFormField::validate
+ */
+ public function testValidateRequiresArrayInput() {
+ $field = new HTMLCheckMatrix( self::$defaultOptions );
+ $this->assertEquals( false, $this->validate( $field, null ) );
+ $this->assertEquals( false, $this->validate( $field, true ) );
+ $this->assertEquals( false, $this->validate( $field, 'abc' ) );
+ $this->assertEquals( false, $this->validate( $field, new stdClass ) );
+ $this->assertEquals( true, $this->validate( $field, array() ) );
+ }
+
+ /**
+ * @covers HTMLFormField::validate
+ */
+ public function testValidateAllowsOnlyKnownTags() {
+ $field = new HTMLCheckMatrix( self::$defaultOptions );
+ $this->assertInternalType( 'string', $this->validate( $field, array( 'foo' ) ) );
+ }
+
+ /**
+ * @covers HTMLFormField::validate
+ */
+ public function testValidateAcceptsPartialTagList() {
+ $field = new HTMLCheckMatrix( self::$defaultOptions );
+ $this->assertTrue( $this->validate( $field, array() ) );
+ $this->assertTrue( $this->validate( $field, array( 'c1-r1' ) ) );
+ $this->assertTrue( $this->validate( $field, array( 'c1-r1', 'c1-r2', 'c2-r1', 'c2-r2' ) ) );
+ }
+
+ /**
+ * This form object actually has no visibility into what happens later on, but essentially
+ * if the data submitted by the user passes validate the following is run:
+ * foreach ( $field->filterDataForSubmit( $data ) as $k => $v ) {
+ * $user->setOption( $k, $v );
+ * }
+ * @covers HTMLFormField::filterDataForSubmit
+ */
+ public function testValuesForcedOnRemainOn() {
+ $field = new HTMLCheckMatrix( self::$defaultOptions + array(
+ 'force-options-on' => array( 'c2-r1' ),
+ ) );
+ $expected = array(
+ 'c1-r1' => false,
+ 'c1-r2' => false,
+ 'c2-r1' => true,
+ 'c2-r2' => false,
+ );
+ $this->assertEquals( $expected, $field->filterDataForSubmit( array() ) );
+ }
+
+ /**
+ * @covers HTMLFormField::filterDataForSubmit
+ */
+ public function testValuesForcedOffRemainOff() {
+ $field = new HTMLCheckMatrix( self::$defaultOptions + array(
+ 'force-options-off' => array( 'c1-r2', 'c2-r2' ),
+ ) );
+ $expected = array(
+ 'c1-r1' => true,
+ 'c1-r2' => false,
+ 'c2-r1' => true,
+ 'c2-r2' => false,
+ );
+ // array_keys on the result simulates submitting all fields checked
+ $this->assertEquals( $expected, $field->filterDataForSubmit( array_keys( $expected ) ) );
+ }
+
+ protected function validate( HTMLFormField $field, $submitted ) {
+ return $field->validate(
+ $submitted,
+ array( self::$defaultOptions['fieldname'] => $submitted )
+ );
+ }
+}
'foo { background: url(red.gif); }',
'foo { background: url(http://localhost/w/red.gif?timestamp); }',
),
+ array(
+ 'Regular file (missing)',
+ 'foo { background: url(theColorOfHerHair.gif); }',
+ 'foo { background: url(http://localhost/w/theColorOfHerHair.gif); }',
+ ),
array(
'Remote URL',
'foo { background: url(http://example.org/w/foo.png); }',
'foo { background: url(http://example.org/w/foo.png); }',
),
+ array(
+ 'Protocol-relative remote URL',
+ 'foo { background: url(//example.org/w/foo.png); }',
+ 'foo { background: url(//example.org/w/foo.png); }',
+ ),
+ array(
+ 'Remote URL with query',
+ 'foo { background: url(http://example.org/w/foo.png?query=yes); }',
+ 'foo { background: url(http://example.org/w/foo.png?query=yes); }',
+ ),
+ array(
+ 'Protocol-relative remote URL with query',
+ 'foo { background: url(//example.org/w/foo.png?query=yes); }',
+ 'foo { background: url(//example.org/w/foo.png?query=yes); }',
+ ),
+ array(
+ 'Domain-relative URL',
+ 'foo { background: url(/static/foo.png); }',
+ 'foo { background: url(http://doc.example.org/static/foo.png); }',
+ ),
+ array(
+ 'Domain-relative URL with query',
+ 'foo { background: url(/static/foo.png?query=yes); }',
+ 'foo { background: url(http://doc.example.org/static/foo.png?query=yes); }',
+ ),
+ array(
+ 'Remote URL (unnecessary quotes not preserved)',
+ 'foo { background: url("http://example.org/w/foo.png"); }',
+ 'foo { background: url(http://example.org/w/foo.png); }',
+ ),
array(
'Embedded file',
'foo { /* @embed */ background: url(red.gif); }',
'foo { background: url( red.gif ); }',
'foo { background: url(http://localhost/w/red.gif?timestamp); }',
),
+ array(
+ '@import rule to local file (should we remap this?)',
+ '@import url(/styles.css)',
+ '@import url(http://doc.example.org/styles.css)',
+ ),
+ array(
+ '@import rule to URL (should we remap this?)',
+ '@import url(//localhost/styles.css?query=yes)',
+ '@import url(//localhost/styles.css?query=yes)',
+ ),
+ );
+ }
+
+ /**
+ * This tests basic functionality of CSSMin::buildUrlValue.
+ *
+ * @dataProvider provideBuildUrlValueCases
+ * @covers CSSMin::buildUrlValue
+ */
+ public function testBuildUrlValue( $message, $input, $expectedOutput ) {
+ $this->assertEquals(
+ $expectedOutput,
+ CSSMin::buildUrlValue( $input ),
+ "CSSMin::buildUrlValue: $message"
+ );
+ }
+
+ public static function provideBuildUrlValueCases() {
+ return array(
+ array(
+ 'Full URL',
+ 'scheme://user@domain:port/~user/fi%20le.png?query=yes&really=y+s',
+ 'url(scheme://user@domain:port/~user/fi%20le.png?query=yes&really=y+s)',
+ ),
+ array(
+ 'data: URI',
+ 'data:image/png;base64,R0lGODlh/+==',
+ 'url(data:image/png;base64,R0lGODlh/+==)',
+ ),
+ array(
+ 'URL with quotes',
+ "https://en.wikipedia.org/wiki/Wendy's",
+ "url(\"https://en.wikipedia.org/wiki/Wendy's\")",
+ ),
+ array(
+ 'URL with parentheses',
+ 'https://en.wikipedia.org/wiki/Boston_(band)',
+ 'url("https://en.wikipedia.org/wiki/Boston_(band)")',
+ ),
);
}
--- /dev/null
+<?php
+/**
+ * @covers DjVuHandler
+ */
+class DjVuTest extends MediaWikiTestCase {
+
+ /**
+ * @var string the directory where test files are
+ */
+ protected $filePath;
+
+ /**
+ * @var FSRepo the repository to use
+ */
+ protected $repo;
+
+ /**
+ * @var DjVuHandler
+ */
+ protected $handler;
+
+ protected function setUp() {
+ global $wgDjvuRenderer, $wgDjvuDump, $wgDjvuToXML;
+ parent::setUp();
+
+ //cli tool setup
+ $wgDjvuRenderer = $wgDjvuRenderer ? $wgDjvuRenderer : '/usr/local/bin/ddjvu';
+ $wgDjvuDump = $wgDjvuDump ? $wgDjvuDump : '/usr/local/bin/djvudump';
+ $wgDjvuToXML = $wgDjvuToXML ? $wgDjvuToXML : '/usr/local/bin/djvutoxml';
+ if (
+ !$this->checkIfToolExists( $wgDjvuRenderer ) ||
+ !$this->checkIfToolExists( $wgDjvuDump ) ||
+ !$this->checkIfToolExists( $wgDjvuToXML )
+ ) {
+ $this->markTestSkipped( 'This test needs the installation of the ddjvu, djvutoxml and djvudump tools' );
+ }
+
+ //file repo setup
+ $this->filePath = __DIR__ . '/../../data/media/';
+ $backend = new FSFileBackend( array(
+ 'name' => 'localtesting',
+ 'wikiId' => wfWikiId(),
+ 'lockManager' => new NullLockManager( array() ),
+ 'containerPaths' => array( 'data' => $this->filePath )
+ ) );
+ $this->repo = new FSRepo( array(
+ 'name' => 'temp',
+ 'url' => 'http://localhost/thumbtest',
+ 'backend' => $backend
+ ) );
+
+ $this->handler = new DjVuHandler();
+ }
+
+ /**
+ * Check if a tool exist
+ *
+ * @param string $path path to the tool
+ * @return bool
+ */
+ protected function checkIfToolExists( $path ) {
+ wfSuppressWarnings();
+ $result = file_exists( $path );
+ wfRestoreWarnings();
+ return $result;
+ }
+
+ protected function dataFile( $name, $type ) {
+ return new UnregisteredLocalFile(
+ false,
+ $this->repo,
+ 'mwstore://localtesting/data/' . $name,
+ $type
+ );
+ }
+
+ public function testGetImageSize() {
+ $this->assertArrayEquals(
+ array( 2480, 3508, 'DjVu', 'width="2480" height="3508"' ),
+ $this->handler->getImageSize( null, $this->filePath . '/LoremIpsum.djvu' ),
+ 'Test file LoremIpsum.djvu should have a size of 2480 * 3508'
+ );
+ }
+
+ public function testInvalidFile() {
+ $this->assertFalse(
+ $this->handler->getMetadata( null, $this->filePath . '/README' ),
+ 'Getting Metadata for an inexistent file should returns false'
+ );
+ }
+
+ public function testPageCount() {
+ $file = $this->dataFile( 'LoremIpsum.djvu', 'image/x.djvu' );
+ $this->assertEquals(
+ 5,
+ $this->handler->pageCount( $file ),
+ 'Test file LoremIpsum.djvu should be detected as containing 5 pages'
+ );
+ }
+
+ public function testGetPageDimensions() {
+ $file = $this->dataFile( 'LoremIpsum.djvu', 'image/x.djvu' );
+ $this->assertArrayEquals(
+ array( 2480, 3508 ),
+ $this->handler->getPageDimensions( $file, 1 ),
+ 'Page 1 of test file LoremIpsum.djvu should have a size of 2480 * 3508'
+ );
+ }
+
+ public function testGetPageText() {
+ $file = $this->dataFile( 'LoremIpsum.djvu', 'image/x.djvu' );
+ $this->assertEquals(
+ "Lorem ipsum \n1 \n",
+ (string) $this->handler->getPageText( $file, 1 ),
+ "Text layer of page 1 of file LoremIpsum.djvu should be 'Lorem ipsum \n1 \n'"
+ );
+ }
+}
'url' => 'http://localhost/thumbtest',
'backend' => new FSFileBackend( array(
'name' => 'localtesting',
- 'lockManager' => 'nullLockManager',
+ 'wikiId' => wfWikiId(),
'containerPaths' => array( 'temp-thumb' => $tmpDir, 'data' => $filePath )
) )
) );
$filePath = __DIR__ . '/../../data/media';
$this->backend = new FSFileBackend( array(
'name' => 'localtesting',
- 'lockManager' => 'nullLockManager',
+ 'wikiId' => wfWikiId(),
'containerPaths' => array( 'data' => $filePath )
) );
$this->repo = new FSRepo( array(
$this->filePath = __DIR__ . '/../../data/media';
$this->backend = new FSFileBackend( array(
'name' => 'localtesting',
- 'lockManager' => 'nullLockManager',
+ 'wikiId' => wfWikiId(),
'containerPaths' => array( 'data' => $this->filePath )
) );
$this->repo = new FSRepo( array(
$this->backend = new FSFileBackend( array(
'name' => 'localtesting',
- 'lockManager' => 'nullLockManager',
+ 'wikiId' => wfWikiId(),
'containerPaths' => array( 'data' => $this->filePath )
) );
$this->repo = new FSRepo( array(
$this->filePath = __DIR__ . '/../../data/media';
$this->backend = new FSFileBackend( array(
'name' => 'localtesting',
- 'lockManager' => 'nullLockManager',
+ 'wikiId' => wfWikiId(),
'containerPaths' => array( 'data' => $this->filePath )
) );
$this->repo = new FSRepo( array(
$this->backend = new FSFileBackend( array(
'name' => 'localtesting',
- 'lockManager' => 'nullLockManager',
+ 'wikiId' => wfWikiId(),
'containerPaths' => array( 'data' => $this->filePath )
) );
$this->repo = new FSRepo( array(
}
}
$useConfig['name'] = 'local-backend'; // swap name
+ unset( $useConfig['lockManager'] );
+ unset( $useConfig['fileJournal'] );
$class = $conf['class'];
self::$backendToUse = new $class( $useConfig );
$backend = self::$backendToUse;
# informations.
$backend = new MockFileBackend( array(
'name' => 'local-backend',
- 'lockManager' => 'nullLockManager',
+ 'wikiId' => wfWikiId(),
'containerPaths' => array(
'local-public' => "$uploadDir",
'local-thumb' => "$uploadDir/thumb",
'transformVia404' => false,
'backend' => new FSFileBackend( array(
'name' => 'local-backend',
- 'lockManager' => 'fsLockManager',
+ 'wikiId' => wfWikiId(),
'containerPaths' => array(
'local-public' => wfTempDir() . '/test-repo/public',
'local-thumb' => wfTempDir() . '/test-repo/thumb',